diff --git a/examples/amm/tealscript_artifacts/ConstantProductAMM.approval.teal b/examples/amm/tealscript_artifacts/ConstantProductAMM.approval.teal index 6508aaf8a..a18b8020f 100644 --- a/examples/amm/tealscript_artifacts/ConstantProductAMM.approval.teal +++ b/examples/amm/tealscript_artifacts/ConstantProductAMM.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/amm/tealscript_artifacts/ConstantProductAMM.arc32.json b/examples/amm/tealscript_artifacts/ConstantProductAMM.arc32.json index 4a30bee76..c2e8a2181 100644 --- a/examples/amm/tealscript_artifacts/ConstantProductAMM.arc32.json +++ b/examples/amm/tealscript_artifacts/ConstantProductAMM.arc32.json @@ -80,7 +80,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyMAoJLy8gdGhpcy5nb3Zlcm5vci52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJYnl0ZSAweDY3IC8vICJnIgoJdHhuIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmRvQ3JlYXRlUG9vbFRva2VuOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjI2CgkvLyByZXR1cm4gc2VuZEFzc2V0Q3JlYXRpb24oewoJLy8gICAgICAgY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUsCgkvLyAgICAgICBjb25maWdBc3NldFVuaXROYW1lOiAnZHB0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyNwoJLy8gY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUKCWJ5dGUgMHg0NDUwNTQyZCAvLyAiRFBULSIKCWZyYW1lX2RpZyAtMSAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRVbml0TmFtZQoJcG9wCgljb25jYXQKCWJ5dGUgMHgyZCAvLyAiLSIKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIGJBc3NldDogQXNzZXRJRAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldFVuaXROYW1lCglwb3AKCWNvbmNhdAoJaXR4bl9maWVsZCBDb25maWdBc3NldE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjgKCS8vIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICdkcHQnCglieXRlIDB4NjQ3MDc0IC8vICJkcHQiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VW5pdE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjkKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWQoJaW50IDEwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzAKCS8vIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMKCWludCAzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0RGVjaW1hbHMKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjMyCgkvLyBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0UmVzZXJ2ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gZG9BeGZlcihyZWNlaXZlcjogQWRkcmVzcywgYXNzZXQ6IEFzc2V0SUQsIGFtb3VudDogdWludDY0KTogdm9pZApkb0F4ZmVyOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjM3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiByZWNlaXZlciwKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzgKCS8vIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcmVjZWl2ZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czozOQoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo0MAoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBkb09wdEluKGFzc2V0OiBBc3NldElEKTogdm9pZApkb09wdEluOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjQ1CgkvLyB0aGlzLmRvQXhmZXIodGhpcy5hcHAuYWRkcmVzcywgYXNzZXQsIDApCglpbnQgMAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJY2FsbHN1YiBkb0F4ZmVyCglyZXRzdWIKCi8vIHRva2Vuc1RvTWludEludGlhbChhQW1vdW50OiB1aW50NjQsIGJBbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb01pbnRJbnRpYWw6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NDkKCS8vIHJldHVybiBzcXJ0KGFBbW91bnQgKiBiQW1vdW50KTsKCWZyYW1lX2RpZyAtMSAvLyBhQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiQW1vdW50OiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gdG9rZW5zVG9NaW50KGlzc3VlZDogdWludDY0LCBhU3VwcGx5OiB1aW50NjQsIGJTdXBwbHk6IHVpbnQ2NCwgYUFtb3VudDogdWludDY0LCBiQW1vdW50OiB1aW50NjQpOiB1aW50NjQKdG9rZW5zVG9NaW50OgoJcHJvdG8gNSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1MwoJLy8gYVJhdGlvID0gd2lkZVJhdGlvKFthQW1vdW50LCBTQ0FMRV0sIFthU3VwcGx5XSkKCWZyYW1lX2RpZyAtNCAvLyBhQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0yIC8vIGFTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMCAvLyBhUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NAoJLy8gYlJhdGlvID0gd2lkZVJhdGlvKFtiQW1vdW50LCBTQ0FMRV0sIFtiU3VwcGx5XSkKCWZyYW1lX2RpZyAtNSAvLyBiQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0zIC8vIGJTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMSAvLyBiUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NgoJLy8gcmF0aW8gPSBhUmF0aW8gPCBiUmF0aW8gPyBhUmF0aW8gOiBiUmF0aW8KCWZyYW1lX2RpZyAwIC8vIGFSYXRpbzogdWludDY0CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoJPAoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgMCAvLyBhUmF0aW86IHVpbnQ2NAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyByYXRpbzogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjU4CgkvLyByZXR1cm4gd2lkZVJhdGlvKFtyYXRpbywgaXNzdWVkXSwgW1NDQUxFXSk7CglmcmFtZV9kaWcgMiAvLyByYXRpbzogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGNvbXB1dGVSYXRpbygpOiB1aW50NjQKY29tcHV0ZVJhdGlvOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjYyCgkvLyByZXR1cm4gd2lkZVJhdGlvKAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRBLnZhbHVlKSwgU0NBTEVdLAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRCLnZhbHVlKV0KCS8vICAgICApOwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJaW50IDEwMDAKCW11bHcKCWludCAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoJcmV0c3ViCgovLyB0b2tlbnNUb0J1cm4oaXNzdWVkOiB1aW50NjQsIHN1cHBseTogdWludDY0LCBhbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb0J1cm46Cglwcm90byAzIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NjkKCS8vIHJldHVybiB3aWRlUmF0aW8oW3N1cHBseSwgYW1vdW50XSwgW2lzc3VlZF0pOwoJZnJhbWVfZGlnIC0yIC8vIHN1cHBseTogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRva2Vuc1RvU3dhcChpbkFtb3VudDogdWludDY0LCBpblN1cHBseTogdWludDY0LCBvdXRTdXBwbHk6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb1N3YXA6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3MwoJLy8gZmFjdG9yID0gU0NBTEUgLSBGRUUKCWludCA5OTUKCWZyYW1lX2J1cnkgMCAvLyBmYWN0b3I6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3NAoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbaW5BbW91bnQsIGZhY3Rvciwgb3V0U3VwcGx5XSwgW2luU3VwcGx5ICogU0NBTEUgKyBpbkFtb3VudCAqIGZhY3Rvcl0pOwoJZnJhbWVfZGlnIC0xIC8vIGluQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIGZhY3RvcjogdWludDY0CgltdWx3CglmcmFtZV9kaWcgLTMgLy8gb3V0U3VwcGx5OiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gaW5TdXBwbHk6IHVpbnQ2NAoJaW50IDEwMDAKCSoKCWZyYW1lX2RpZyAtMSAvLyBpbkFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBmYWN0b3I6IHVpbnQ2NAoJKgoJKwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gc2V0X2dvdmVybm9yKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3NldF9nb3Zlcm5vcjoKCS8vIGdvdmVybm9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGdvdmVybm9yKSBmb3Igc2V0X2dvdmVybm9yIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIHNldF9nb3Zlcm5vcihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgc2V0X2dvdmVybm9yCglpbnQgMQoJcmV0dXJuCgovLyBzZXRfZ292ZXJub3IoZ292ZXJub3I6IEFkZHJlc3MpOiB2b2lkCnNldF9nb3Zlcm5vcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3OAoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NzkKCS8vIHRoaXMuZ292ZXJub3IudmFsdWUgPSBnb3Zlcm5vcgoJYnl0ZSAweDY3IC8vICJnIgoJZnJhbWVfZGlnIC0xIC8vIGdvdmVybm9yOiBBZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYm9vdHN0cmFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc2VlZDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc2VlZCkgZm9yIGJvb3RzdHJhcCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJvb3RzdHJhcChwYXksdWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYm9vdHN0cmFwCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYm9vdHN0cmFwKHNlZWQ6IFBheVR4biwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmJvb3RzdHJhcDoKCXByb3RvIDMgMQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo4MwoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODUKCS8vIGFzc2VydChnbG9iYWxzLmdyb3VwU2l6ZSA9PT0gMikKCWdsb2JhbCBHcm91cFNpemUKCWludCAyCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjg3CgkvLyB2ZXJpZnlQYXlUeG4oc2VlZCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiB7IGdyZWF0ZXJUaGFuRXF1YWxUbzogMzAwXzAwMCB9IH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNlZWQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDMwMF8wMDAKCT49CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzZWVkIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbkVxdWFsVG8iLCJleHBlY3RlZCI6Ij49MzAwXzAwMCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODgKCS8vIGFzc2VydChhQXNzZXQgPCBiQXNzZXQpCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk8Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6OTAKCS8vIHRoaXMuYXNzZXRBLnZhbHVlID0gYUFzc2V0CglieXRlIDB4NjEgLy8gImEiCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5MQoJLy8gdGhpcy5hc3NldEIudmFsdWUgPSBiQXNzZXQKCWJ5dGUgMHg2MiAvLyAiYiIKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjkyCgkvLyB0aGlzLnBvb2xUb2tlbi52YWx1ZSA9IHRoaXMuZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0LCBiQXNzZXQpCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgljYWxsc3ViIGRvQ3JlYXRlUG9vbFRva2VuCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NAoJLy8gdGhpcy5kb09wdEluKGFBc3NldCkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NQoJLy8gdGhpcy5kb09wdEluKGJBc3NldCkKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NwoJLy8gcmV0dXJuIHRoaXMucG9vbFRva2VuLnZhbHVlOwoJYnl0ZSAweDcwIC8vICJwIgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gbWludChheGZlcixheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfbWludDoKCS8vIGJBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYUFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGJYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMyAoYlhmZXIpIGZvciBtaW50IG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYVhmZXI6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDIKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCA0IChhWGZlcikgZm9yIG1pbnQgbXVzdCBiZSBhIGF4ZmVyIHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIG1pbnQoYXhmZXIsYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBtaW50CglpbnQgMQoJcmV0dXJuCgovLyBtaW50KGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBiWGZlcjogQXNzZXRUcmFuc2ZlclR4biwgcG9vbEFzc2V0OiBBc3NldElELCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKbWludDoKCXByb3RvIDUgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gd2VsbCBmb3JtZWQgbWludAoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwMgoJLy8gYXNzZXJ0KGFBc3NldCA9PT0gdGhpcy5hc3NldEEudmFsdWUpCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMDMKCS8vIGFzc2VydChiQXNzZXQgPT09IHRoaXMuYXNzZXRCLnZhbHVlKQoJZnJhbWVfZGlnIC01IC8vIGJBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTA0CgkvLyBhc3NlcnQocG9vbEFzc2V0ID09PSB0aGlzLnBvb2xUb2tlbi52YWx1ZSkKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg3MCAvLyAicCIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgYXNzZXQgQSBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwNwoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihhWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYUFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6ImFBc3NldCJ9Cglhc3NlcnQKCgkvLyB2YWxpZCBhc3NldCBCIGF4ZmVyCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTE1CgkvLyB2ZXJpZnlBc3NldFRyYW5zZmVyVHhuKGJYZmVyLCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgeGZlckFzc2V0OiBiQXNzZXQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCgl0eG4gU2VuZGVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy50eG4uc2VuZGVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldEFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJaW50IDAKCT4KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldEFtb3VudCIsImNvbmRpdGlvbiI6ImdyZWF0ZXJUaGFuIiwiZXhwZWN0ZWQiOiI+MCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRSZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSB4ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTUgLy8gYkFzc2V0OiBBc3NldElECgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InhmZXJBc3NldCIsImV4cGVjdGVkIjoiYkFzc2V0In0KCWFzc2VydAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTIzCgkvLyB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShhQXNzZXQpID09PSBhWGZlci5hc3NldEFtb3VudCAmJgoJLy8gICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYkFzc2V0KSA9PT0gYlhmZXIuYXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJPT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50Cgk9PQoJJiYKCipza2lwX2FuZDA6CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMjYKCS8vIHRoaXMudG9rZW5zVG9NaW50SW50aWFsKGFYZmVyLmFzc2V0QW1vdW50LCBiWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWNhbGxzdWIgdG9rZW5zVG9NaW50SW50aWFsCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTI4CgkvLyB0b01pbnQgPSB0aGlzLnRva2Vuc1RvTWludCgKCS8vICAgICAgICAgVE9UQUxfU1VQUExZIC0gdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSwKCS8vICAgICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYUFzc2V0KSAtIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpIC0gYlhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICAgIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICBiWGZlci5hc3NldEFtb3VudAoJLy8gICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCWludCAxMDAwMDAwMDAwMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCgktCgljYWxsc3ViIHRva2Vuc1RvTWludAoJZnJhbWVfYnVyeSAwIC8vIHRvTWludDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEzNgoJLy8gYXNzZXJ0KHRvTWludCA+IDApCglmcmFtZV9kaWcgMCAvLyB0b01pbnQ6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMzgKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIHBvb2xBc3NldCwgdG9NaW50KQoJZnJhbWVfZGlnIDAgLy8gdG9NaW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKKmlmMF9lbmQ6CglyZXRzdWIKCi8vIGJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2J1cm46CgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gcG9vbEFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBwb29sWGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDMgKHBvb2xYZmVyKSBmb3IgYnVybiBtdXN0IGJlIGEgYXhmZXIgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYnVybihheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGJ1cm4KCWludCAxCglyZXR1cm4KCi8vIGJ1cm4ocG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4sIHBvb2xBc3NldDogQXNzZXRJRCwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiB2b2lkCmJ1cm46Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gd2VsbCBmb3JtZWQgYnVybgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0NAoJLy8gYXNzZXJ0KHBvb2xBc3NldCA9PT0gdGhpcy5wb29sVG9rZW4udmFsdWUpCglmcmFtZV9kaWcgLTIgLy8gcG9vbEFzc2V0OiBBc3NldElECglieXRlIDB4NzAgLy8gInAiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNDUKCS8vIGFzc2VydChhQXNzZXQgPT09IHRoaXMuYXNzZXRBLnZhbHVlKQoJZnJhbWVfZGlnIC0zIC8vIGFBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTQ2CgkvLyBhc3NlcnQoYkFzc2V0ID09PSB0aGlzLmFzc2V0Qi52YWx1ZSkKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgcG9vbCBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0OQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihwb29sWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogcG9vbEFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6InBvb2xBc3NldCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTU2CgkvLyBpc3N1ZWQgPSBUT1RBTF9TVVBQTFkgLSAodGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSAtIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJaW50IDEwMDAwMDAwMDAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCS0KCWZyYW1lX2J1cnkgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNTgKCS8vIGFBbXQgPSB0aGlzLnRva2Vuc1RvQnVybihpc3N1ZWQsIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGFBc3NldCksIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoJY2FsbHN1YiB0b2tlbnNUb0J1cm4KCWZyYW1lX2J1cnkgMSAvLyBhQW10OiB1aW50NjQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYwCgkvLyBiQW10ID0gdGhpcy50b2tlbnNUb0J1cm4oaXNzdWVkLCB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpLCBwb29sWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYkFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDAgLy8gaXNzdWVkOiB1aW50NjQKCWNhbGxzdWIgdG9rZW5zVG9CdXJuCglmcmFtZV9idXJ5IDIgLy8gYkFtdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE2MgoJLy8gdGhpcy5kb0F4ZmVyKHRoaXMudHhuLnNlbmRlciwgYUFzc2V0LCBhQW10KQoJZnJhbWVfZGlnIDEgLy8gYUFtdDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYUFzc2V0OiBBc3NldElECgl0eG4gU2VuZGVyCgljYWxsc3ViIGRvQXhmZXIKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYzCgkvLyB0aGlzLmRvQXhmZXIodGhpcy50eG4uc2VuZGVyLCBiQXNzZXQsIGJBbXQpCglmcmFtZV9kaWcgMiAvLyBiQW10OiB1aW50NjQKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNjUKCS8vIHRoaXMucmF0aW8udmFsdWUgPSB0aGlzLmNvbXB1dGVSYXRpbygpCglieXRlIDB4NzIgLy8gInIiCgljYWxsc3ViIGNvbXB1dGVSYXRpbwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gc3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zd2FwOgoJLy8gYkFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIHN3YXBYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMiAoc3dhcFhmZXIpIGZvciBzd2FwIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzd2FwKGF4ZmVyLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzd2FwCglpbnQgMQoJcmV0dXJuCgovLyBzd2FwKHN3YXBYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKc3dhcDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB3ZWxsIGZvcm1lZCBzd2FwCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTcwCgkvLyBhc3NlcnQoYUFzc2V0ID09PSB0aGlzLmFzc2V0QS52YWx1ZSkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE3MQoJLy8gYXNzZXJ0KGJBc3NldCA9PT0gdGhpcy5hc3NldEIudmFsdWUpCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglieXRlIDB4NjIgLy8gImIiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNzMKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oc3dhcFhmZXIsIHsKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IHsgaW5jbHVkZWRJbjogW2FBc3NldCwgYkFzc2V0XSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN3YXBYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk9PQoJfHwKCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0Ijoic3dhcFhmZXIifSwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbYUFzc2V0LCBiQXNzZXRdIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODAKCS8vIG91dElkID0gc3dhcFhmZXIueGZlckFzc2V0ID09PSBhQXNzZXQgPyBhQXNzZXQgOiBiQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgk9PQoJYnogKnRlcm5hcnkxX2ZhbHNlCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDAgLy8gb3V0SWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODIKCS8vIGluSWQgPSBzd2FwWGZlci54ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9idXJ5IDEgLy8gaW5JZDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE4NAoJLy8gdG9Td2FwID0gdGhpcy50b2tlbnNUb1N3YXAoCgkvLyAgICAgICBzd2FwWGZlci5hc3NldEFtb3VudCwKCS8vICAgICAgIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGluSWQpIC0gc3dhcFhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShvdXRJZCkKCS8vICAgICApCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBpbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgljYWxsc3ViIHRva2Vuc1RvU3dhcAoJZnJhbWVfYnVyeSAyIC8vIHRvU3dhcDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5MAoJLy8gYXNzZXJ0KHRvU3dhcCA+IDApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxOTIKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIG91dElkLCB0b1N3YXApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBkb0F4ZmVyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5yYXRpby52YWx1ZSA9IHRoaXMuY29tcHV0ZVJhdGlvKCkKCWJ5dGUgMHg3MiAvLyAiciIKCWNhbGxzdWIgY29tcHV0ZVJhdGlvCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRfZ292ZXJub3IoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJtaW50KGF4ZmVyLGF4ZmVyLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAic3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NldF9nb3Zlcm5vciAqYWJpX3JvdXRlX2Jvb3RzdHJhcCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9idXJuICphYmlfcm91dGVfc3dhcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyMAoJLy8gdGhpcy5nb3Zlcm5vci52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJYnl0ZSAweDY3IC8vICJnIgoJdHhuIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmRvQ3JlYXRlUG9vbFRva2VuOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjI2CgkvLyByZXR1cm4gc2VuZEFzc2V0Q3JlYXRpb24oewoJLy8gICAgICAgY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUsCgkvLyAgICAgICBjb25maWdBc3NldFVuaXROYW1lOiAnZHB0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyNwoJLy8gY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUKCWJ5dGUgMHg0NDUwNTQyZCAvLyAiRFBULSIKCWZyYW1lX2RpZyAtMSAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRVbml0TmFtZQoJcG9wCgljb25jYXQKCWJ5dGUgMHgyZCAvLyAiLSIKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIGJBc3NldDogQXNzZXRJRAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldFVuaXROYW1lCglwb3AKCWNvbmNhdAoJaXR4bl9maWVsZCBDb25maWdBc3NldE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjgKCS8vIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICdkcHQnCglieXRlIDB4NjQ3MDc0IC8vICJkcHQiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VW5pdE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjkKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWQoJaW50IDEwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzAKCS8vIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMKCWludCAzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0RGVjaW1hbHMKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjMyCgkvLyBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0UmVzZXJ2ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gZG9BeGZlcihyZWNlaXZlcjogQWRkcmVzcywgYXNzZXQ6IEFzc2V0SUQsIGFtb3VudDogdWludDY0KTogdm9pZApkb0F4ZmVyOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjM3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiByZWNlaXZlciwKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzgKCS8vIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcmVjZWl2ZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czozOQoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo0MAoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBkb09wdEluKGFzc2V0OiBBc3NldElEKTogdm9pZApkb09wdEluOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjQ1CgkvLyB0aGlzLmRvQXhmZXIodGhpcy5hcHAuYWRkcmVzcywgYXNzZXQsIDApCglpbnQgMAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJY2FsbHN1YiBkb0F4ZmVyCglyZXRzdWIKCi8vIHRva2Vuc1RvTWludEludGlhbChhQW1vdW50OiB1aW50NjQsIGJBbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb01pbnRJbnRpYWw6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NDkKCS8vIHJldHVybiBzcXJ0KGFBbW91bnQgKiBiQW1vdW50KTsKCWZyYW1lX2RpZyAtMSAvLyBhQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiQW1vdW50OiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gdG9rZW5zVG9NaW50KGlzc3VlZDogdWludDY0LCBhU3VwcGx5OiB1aW50NjQsIGJTdXBwbHk6IHVpbnQ2NCwgYUFtb3VudDogdWludDY0LCBiQW1vdW50OiB1aW50NjQpOiB1aW50NjQKdG9rZW5zVG9NaW50OgoJcHJvdG8gNSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1MwoJLy8gYVJhdGlvID0gd2lkZVJhdGlvKFthQW1vdW50LCBTQ0FMRV0sIFthU3VwcGx5XSkKCWZyYW1lX2RpZyAtNCAvLyBhQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0yIC8vIGFTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMCAvLyBhUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NAoJLy8gYlJhdGlvID0gd2lkZVJhdGlvKFtiQW1vdW50LCBTQ0FMRV0sIFtiU3VwcGx5XSkKCWZyYW1lX2RpZyAtNSAvLyBiQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0zIC8vIGJTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMSAvLyBiUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NgoJLy8gcmF0aW8gPSBhUmF0aW8gPCBiUmF0aW8gPyBhUmF0aW8gOiBiUmF0aW8KCWZyYW1lX2RpZyAwIC8vIGFSYXRpbzogdWludDY0CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoJPAoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgMCAvLyBhUmF0aW86IHVpbnQ2NAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyByYXRpbzogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjU4CgkvLyByZXR1cm4gd2lkZVJhdGlvKFtyYXRpbywgaXNzdWVkXSwgW1NDQUxFXSk7CglmcmFtZV9kaWcgMiAvLyByYXRpbzogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGNvbXB1dGVSYXRpbygpOiB1aW50NjQKY29tcHV0ZVJhdGlvOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjYyCgkvLyByZXR1cm4gd2lkZVJhdGlvKAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRBLnZhbHVlKSwgU0NBTEVdLAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRCLnZhbHVlKV0KCS8vICAgICApOwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJaW50IDEwMDAKCW11bHcKCWludCAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoJcmV0c3ViCgovLyB0b2tlbnNUb0J1cm4oaXNzdWVkOiB1aW50NjQsIHN1cHBseTogdWludDY0LCBhbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb0J1cm46Cglwcm90byAzIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NjkKCS8vIHJldHVybiB3aWRlUmF0aW8oW3N1cHBseSwgYW1vdW50XSwgW2lzc3VlZF0pOwoJZnJhbWVfZGlnIC0yIC8vIHN1cHBseTogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRva2Vuc1RvU3dhcChpbkFtb3VudDogdWludDY0LCBpblN1cHBseTogdWludDY0LCBvdXRTdXBwbHk6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb1N3YXA6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3MwoJLy8gZmFjdG9yID0gU0NBTEUgLSBGRUUKCWludCA5OTUKCWZyYW1lX2J1cnkgMCAvLyBmYWN0b3I6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3NAoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbaW5BbW91bnQsIGZhY3Rvciwgb3V0U3VwcGx5XSwgW2luU3VwcGx5ICogU0NBTEUgKyBpbkFtb3VudCAqIGZhY3Rvcl0pOwoJZnJhbWVfZGlnIC0xIC8vIGluQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIGZhY3RvcjogdWludDY0CgltdWx3CglmcmFtZV9kaWcgLTMgLy8gb3V0U3VwcGx5OiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gaW5TdXBwbHk6IHVpbnQ2NAoJaW50IDEwMDAKCSoKCWZyYW1lX2RpZyAtMSAvLyBpbkFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBmYWN0b3I6IHVpbnQ2NAoJKgoJKwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gc2V0X2dvdmVybm9yKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3NldF9nb3Zlcm5vcjoKCS8vIGdvdmVybm9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGdvdmVybm9yKSBmb3Igc2V0X2dvdmVybm9yIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIHNldF9nb3Zlcm5vcihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgc2V0X2dvdmVybm9yCglpbnQgMQoJcmV0dXJuCgovLyBzZXRfZ292ZXJub3IoZ292ZXJub3I6IEFkZHJlc3MpOiB2b2lkCnNldF9nb3Zlcm5vcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3OAoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NzkKCS8vIHRoaXMuZ292ZXJub3IudmFsdWUgPSBnb3Zlcm5vcgoJYnl0ZSAweDY3IC8vICJnIgoJZnJhbWVfZGlnIC0xIC8vIGdvdmVybm9yOiBBZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYm9vdHN0cmFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc2VlZDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc2VlZCkgZm9yIGJvb3RzdHJhcCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJvb3RzdHJhcChwYXksdWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYm9vdHN0cmFwCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYm9vdHN0cmFwKHNlZWQ6IFBheVR4biwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmJvb3RzdHJhcDoKCXByb3RvIDMgMQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo4MwoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODUKCS8vIGFzc2VydChnbG9iYWxzLmdyb3VwU2l6ZSA9PT0gMikKCWdsb2JhbCBHcm91cFNpemUKCWludCAyCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjg3CgkvLyB2ZXJpZnlQYXlUeG4oc2VlZCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiB7IGdyZWF0ZXJUaGFuRXF1YWxUbzogMzAwXzAwMCB9IH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNlZWQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDMwMF8wMDAKCT49CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzZWVkIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbkVxdWFsVG8iLCJleHBlY3RlZCI6Ij49MzAwXzAwMCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODgKCS8vIGFzc2VydChhQXNzZXQgPCBiQXNzZXQpCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk8Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6OTAKCS8vIHRoaXMuYXNzZXRBLnZhbHVlID0gYUFzc2V0CglieXRlIDB4NjEgLy8gImEiCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5MQoJLy8gdGhpcy5hc3NldEIudmFsdWUgPSBiQXNzZXQKCWJ5dGUgMHg2MiAvLyAiYiIKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjkyCgkvLyB0aGlzLnBvb2xUb2tlbi52YWx1ZSA9IHRoaXMuZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0LCBiQXNzZXQpCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgljYWxsc3ViIGRvQ3JlYXRlUG9vbFRva2VuCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NAoJLy8gdGhpcy5kb09wdEluKGFBc3NldCkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NQoJLy8gdGhpcy5kb09wdEluKGJBc3NldCkKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NwoJLy8gcmV0dXJuIHRoaXMucG9vbFRva2VuLnZhbHVlOwoJYnl0ZSAweDcwIC8vICJwIgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gbWludChheGZlcixheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfbWludDoKCS8vIGJBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYUFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGJYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMyAoYlhmZXIpIGZvciBtaW50IG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYVhmZXI6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDIKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCA0IChhWGZlcikgZm9yIG1pbnQgbXVzdCBiZSBhIGF4ZmVyIHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIG1pbnQoYXhmZXIsYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBtaW50CglpbnQgMQoJcmV0dXJuCgovLyBtaW50KGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBiWGZlcjogQXNzZXRUcmFuc2ZlclR4biwgcG9vbEFzc2V0OiBBc3NldElELCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKbWludDoKCXByb3RvIDUgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gd2VsbCBmb3JtZWQgbWludAoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwMgoJLy8gYXNzZXJ0KGFBc3NldCA9PT0gdGhpcy5hc3NldEEudmFsdWUpCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMDMKCS8vIGFzc2VydChiQXNzZXQgPT09IHRoaXMuYXNzZXRCLnZhbHVlKQoJZnJhbWVfZGlnIC01IC8vIGJBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTA0CgkvLyBhc3NlcnQocG9vbEFzc2V0ID09PSB0aGlzLnBvb2xUb2tlbi52YWx1ZSkKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg3MCAvLyAicCIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgYXNzZXQgQSBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwNwoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihhWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYUFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6ImFBc3NldCJ9Cglhc3NlcnQKCgkvLyB2YWxpZCBhc3NldCBCIGF4ZmVyCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTE1CgkvLyB2ZXJpZnlBc3NldFRyYW5zZmVyVHhuKGJYZmVyLCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgeGZlckFzc2V0OiBiQXNzZXQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCgl0eG4gU2VuZGVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy50eG4uc2VuZGVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldEFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJaW50IDAKCT4KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldEFtb3VudCIsImNvbmRpdGlvbiI6ImdyZWF0ZXJUaGFuIiwiZXhwZWN0ZWQiOiI+MCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRSZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSB4ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTUgLy8gYkFzc2V0OiBBc3NldElECgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InhmZXJBc3NldCIsImV4cGVjdGVkIjoiYkFzc2V0In0KCWFzc2VydAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTIzCgkvLyB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShhQXNzZXQpID09PSBhWGZlci5hc3NldEFtb3VudCAmJgoJLy8gICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYkFzc2V0KSA9PT0gYlhmZXIuYXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJPT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50Cgk9PQoJJiYKCipza2lwX2FuZDA6CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMjYKCS8vIHRoaXMudG9rZW5zVG9NaW50SW50aWFsKGFYZmVyLmFzc2V0QW1vdW50LCBiWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWNhbGxzdWIgdG9rZW5zVG9NaW50SW50aWFsCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTI4CgkvLyB0b01pbnQgPSB0aGlzLnRva2Vuc1RvTWludCgKCS8vICAgICAgICAgVE9UQUxfU1VQUExZIC0gdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSwKCS8vICAgICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYUFzc2V0KSAtIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpIC0gYlhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICAgIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICBiWGZlci5hc3NldEFtb3VudAoJLy8gICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCWludCAxMDAwMDAwMDAwMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCgktCgljYWxsc3ViIHRva2Vuc1RvTWludAoJZnJhbWVfYnVyeSAwIC8vIHRvTWludDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEzNgoJLy8gYXNzZXJ0KHRvTWludCA+IDApCglmcmFtZV9kaWcgMCAvLyB0b01pbnQ6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMzgKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIHBvb2xBc3NldCwgdG9NaW50KQoJZnJhbWVfZGlnIDAgLy8gdG9NaW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKKmlmMF9lbmQ6CglyZXRzdWIKCi8vIGJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2J1cm46CgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gcG9vbEFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBwb29sWGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDMgKHBvb2xYZmVyKSBmb3IgYnVybiBtdXN0IGJlIGEgYXhmZXIgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYnVybihheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGJ1cm4KCWludCAxCglyZXR1cm4KCi8vIGJ1cm4ocG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4sIHBvb2xBc3NldDogQXNzZXRJRCwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiB2b2lkCmJ1cm46Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gd2VsbCBmb3JtZWQgYnVybgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0NAoJLy8gYXNzZXJ0KHBvb2xBc3NldCA9PT0gdGhpcy5wb29sVG9rZW4udmFsdWUpCglmcmFtZV9kaWcgLTIgLy8gcG9vbEFzc2V0OiBBc3NldElECglieXRlIDB4NzAgLy8gInAiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNDUKCS8vIGFzc2VydChhQXNzZXQgPT09IHRoaXMuYXNzZXRBLnZhbHVlKQoJZnJhbWVfZGlnIC0zIC8vIGFBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTQ2CgkvLyBhc3NlcnQoYkFzc2V0ID09PSB0aGlzLmFzc2V0Qi52YWx1ZSkKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgcG9vbCBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0OQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihwb29sWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogcG9vbEFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6InBvb2xBc3NldCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTU2CgkvLyBpc3N1ZWQgPSBUT1RBTF9TVVBQTFkgLSAodGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSAtIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJaW50IDEwMDAwMDAwMDAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCS0KCWZyYW1lX2J1cnkgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNTgKCS8vIGFBbXQgPSB0aGlzLnRva2Vuc1RvQnVybihpc3N1ZWQsIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGFBc3NldCksIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoJY2FsbHN1YiB0b2tlbnNUb0J1cm4KCWZyYW1lX2J1cnkgMSAvLyBhQW10OiB1aW50NjQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYwCgkvLyBiQW10ID0gdGhpcy50b2tlbnNUb0J1cm4oaXNzdWVkLCB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpLCBwb29sWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYkFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDAgLy8gaXNzdWVkOiB1aW50NjQKCWNhbGxzdWIgdG9rZW5zVG9CdXJuCglmcmFtZV9idXJ5IDIgLy8gYkFtdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE2MgoJLy8gdGhpcy5kb0F4ZmVyKHRoaXMudHhuLnNlbmRlciwgYUFzc2V0LCBhQW10KQoJZnJhbWVfZGlnIDEgLy8gYUFtdDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYUFzc2V0OiBBc3NldElECgl0eG4gU2VuZGVyCgljYWxsc3ViIGRvQXhmZXIKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYzCgkvLyB0aGlzLmRvQXhmZXIodGhpcy50eG4uc2VuZGVyLCBiQXNzZXQsIGJBbXQpCglmcmFtZV9kaWcgMiAvLyBiQW10OiB1aW50NjQKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNjUKCS8vIHRoaXMucmF0aW8udmFsdWUgPSB0aGlzLmNvbXB1dGVSYXRpbygpCglieXRlIDB4NzIgLy8gInIiCgljYWxsc3ViIGNvbXB1dGVSYXRpbwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gc3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zd2FwOgoJLy8gYkFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIHN3YXBYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMiAoc3dhcFhmZXIpIGZvciBzd2FwIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzd2FwKGF4ZmVyLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzd2FwCglpbnQgMQoJcmV0dXJuCgovLyBzd2FwKHN3YXBYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKc3dhcDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB3ZWxsIGZvcm1lZCBzd2FwCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTcwCgkvLyBhc3NlcnQoYUFzc2V0ID09PSB0aGlzLmFzc2V0QS52YWx1ZSkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE3MQoJLy8gYXNzZXJ0KGJBc3NldCA9PT0gdGhpcy5hc3NldEIudmFsdWUpCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglieXRlIDB4NjIgLy8gImIiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNzMKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oc3dhcFhmZXIsIHsKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IHsgaW5jbHVkZWRJbjogW2FBc3NldCwgYkFzc2V0XSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN3YXBYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk9PQoJfHwKCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0Ijoic3dhcFhmZXIifSwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbYUFzc2V0LCBiQXNzZXRdIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODAKCS8vIG91dElkID0gc3dhcFhmZXIueGZlckFzc2V0ID09PSBhQXNzZXQgPyBhQXNzZXQgOiBiQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgk9PQoJYnogKnRlcm5hcnkxX2ZhbHNlCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDAgLy8gb3V0SWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODIKCS8vIGluSWQgPSBzd2FwWGZlci54ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9idXJ5IDEgLy8gaW5JZDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE4NAoJLy8gdG9Td2FwID0gdGhpcy50b2tlbnNUb1N3YXAoCgkvLyAgICAgICBzd2FwWGZlci5hc3NldEFtb3VudCwKCS8vICAgICAgIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGluSWQpIC0gc3dhcFhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShvdXRJZCkKCS8vICAgICApCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBpbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgljYWxsc3ViIHRva2Vuc1RvU3dhcAoJZnJhbWVfYnVyeSAyIC8vIHRvU3dhcDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5MAoJLy8gYXNzZXJ0KHRvU3dhcCA+IDApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxOTIKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIG91dElkLCB0b1N3YXApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBkb0F4ZmVyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5yYXRpby52YWx1ZSA9IHRoaXMuY29tcHV0ZVJhdGlvKCkKCWJ5dGUgMHg3MiAvLyAiciIKCWNhbGxzdWIgY29tcHV0ZVJhdGlvCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRfZ292ZXJub3IoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJtaW50KGF4ZmVyLGF4ZmVyLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAic3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NldF9nb3Zlcm5vciAqYWJpX3JvdXRlX2Jvb3RzdHJhcCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9idXJuICphYmlfcm91dGVfc3dhcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/amm/tealscript_artifacts/ConstantProductAMM.arc56_draft.json b/examples/amm/tealscript_artifacts/ConstantProductAMM.arc56_draft.json index 6cf9ba0b4..8ccce85b5 100644 --- a/examples/amm/tealscript_artifacts/ConstantProductAMM.arc56_draft.json +++ b/examples/amm/tealscript_artifacts/ConstantProductAMM.arc56_draft.json @@ -207,4785 +207,4788 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 8, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27 - ] - }, - { - "teal": 13, - "source": 8, - "pc": [ - 28, - 29 - ] - }, - { - "teal": 14, - "source": 8, - "pc": [ - 30 - ] - }, - { - "teal": 15, - "source": 8, - "pc": [ - 31, - 32 - ] - }, - { - "teal": 16, - "source": 8, - "pc": [ - 33 - ] - }, - { - "teal": 17, - "source": 8, - "pc": [ - 34, - 35 - ] - }, - { - "teal": 18, - "source": 8, - "pc": [ - 36 - ] - }, - { - "teal": 19, - "source": 8, - "pc": [ - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 23, - "source": 8, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 63 - ] - }, - { - "teal": 28, - "source": 19, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 29, - "source": 19, - "pc": [ - 67 - ] - }, - { - "teal": 30, - "source": 19, - "pc": [ - 68 - ] - }, - { - "teal": 34, - "source": 19, - "pc": [ - 69, - 70, - 71 - ] - }, - { - "teal": 38, - "source": 20, - "pc": [ - 72 - ] - }, - { - "teal": 39, - "source": 20, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 40, - "source": 20, - "pc": [ - 75 - ] - }, - { - "teal": 41, - "source": 19, - "pc": [ - 76 - ] - }, - { - "teal": 45, - "source": 23, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 56, - "source": 26, - "pc": [ - 80 - ] - }, - { - "teal": 57, - "source": 26, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 58, - "source": 26, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 62, - "source": 27, - "pc": [ - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 63, - "source": 27, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 64, - "source": 27, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 65, - "source": 27, - "pc": [ - 95 - ] - }, - { - "teal": 66, - "source": 27, - "pc": [ - 96 - ] - }, - { - "teal": 67, - "source": 27, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 68, - "source": 27, - "pc": [ - 100 - ] - }, - { - "teal": 69, - "source": 27, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 70, - "source": 27, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 71, - "source": 27, - "pc": [ - 105 - ] - }, - { - "teal": 72, - "source": 27, - "pc": [ - 106 - ] - }, - { - "teal": 73, - "source": 27, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 77, - "source": 28, - "pc": [ - 109, - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 78, - "source": 28, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 82, - "source": 29, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 83, - "source": 29, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 87, - "source": 30, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 88, - "source": 30, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 92, - "source": 31, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 93, - "source": 31, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 97, - "source": 32, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 98, - "source": 32, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 101, - "source": 26, - "pc": [ - 132 - ] - }, - { - "teal": 102, - "source": 26, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 105, - "source": 26, - "pc": [ - 135 - ] - }, - { - "teal": 106, - "source": 26, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 107, - "source": 23, - "pc": [ - 138 - ] - }, - { - "teal": 111, - "source": 36, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 119, - "source": 37, - "pc": [ - 142 - ] - }, - { - "teal": 120, - "source": 37, - "pc": [ - 143 - ] - }, - { - "teal": 121, - "source": 37, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 125, - "source": 38, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 126, - "source": 38, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 130, - "source": 39, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 131, - "source": 39, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 135, - "source": 40, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 136, - "source": 40, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 139, - "source": 37, - "pc": [ - 158 - ] - }, - { - "teal": 140, - "source": 37, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 143, - "source": 37, - "pc": [ - 161 - ] - }, - { - "teal": 144, - "source": 36, - "pc": [ - 162 - ] - }, - { - "teal": 148, - "source": 44, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 152, - "source": 45, - "pc": [ - 166 - ] - }, - { - "teal": 153, - "source": 45, - "pc": [ - 167, - 168 - ] - }, - { - "teal": 154, - "source": 45, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 155, - "source": 45, - "pc": [ - 171, - 172, - 173 - ] - }, - { - "teal": 156, - "source": 44, - "pc": [ - 174 - ] - }, - { - "teal": 160, - "source": 48, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 164, - "source": 49, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 165, - "source": 49, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 166, - "source": 49, - "pc": [ - 182 - ] - }, - { - "teal": 167, - "source": 49, - "pc": [ - 183 - ] - }, - { - "teal": 168, - "source": 48, - "pc": [ - 184 - ] - }, - { - "teal": 172, - "source": 52, - "pc": [ - 185, - 186, - 187 - ] - }, - { - "teal": 175, - "source": 52, - "pc": [ - 188 - ] - }, - { - "teal": 176, - "source": 52, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 180, - "source": 53, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 181, - "source": 53, - "pc": [ - 193 - ] - }, - { - "teal": 182, - "source": 53, - "pc": [ - 194 - ] - }, - { - "teal": 183, - "source": 53, - "pc": [ - 195 - ] - }, - { - "teal": 184, - "source": 53, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 185, - "source": 53, - "pc": [ - 198 - ] - }, - { - "teal": 186, - "source": 53, - "pc": [ - 199 - ] - }, - { - "teal": 187, - "source": 53, - "pc": [ - 200 - ] - }, - { - "teal": 188, - "source": 53, - "pc": [ - 201 - ] - }, - { - "teal": 189, - "source": 53, - "pc": [ - 202 - ] - }, - { - "teal": 192, - "source": 53, - "errorMessage": "wideRatio failed", - "pc": [ - 203 - ] - }, - { - "teal": 193, - "source": 53, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 197, - "source": 54, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 198, - "source": 54, - "pc": [ - 208 - ] - }, - { - "teal": 199, - "source": 54, - "pc": [ - 209 - ] - }, - { - "teal": 200, - "source": 54, - "pc": [ - 210 - ] - }, - { - "teal": 201, - "source": 54, - "pc": [ - 211, - 212 - ] - }, - { - "teal": 202, - "source": 54, - "pc": [ - 213 - ] - }, - { - "teal": 203, - "source": 54, - "pc": [ - 214 - ] - }, - { - "teal": 204, - "source": 54, - "pc": [ - 215 - ] - }, - { - "teal": 205, - "source": 54, - "pc": [ - 216 - ] - }, - { - "teal": 206, - "source": 54, - "pc": [ - 217 - ] - }, - { - "teal": 209, - "source": 54, - "errorMessage": "wideRatio failed", - "pc": [ - 218 - ] - }, - { - "teal": 210, - "source": 54, - "pc": [ - 219, - 220 - ] - }, - { - "teal": 214, - "source": 56, - "pc": [ - 221, - 222 - ] - }, - { - "teal": 215, - "source": 56, - "pc": [ - 223, - 224 - ] - }, - { - "teal": 216, - "source": 56, - "pc": [ - 225 - ] - }, - { - "teal": 217, - "source": 56, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 218, - "source": 56, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 219, - "source": 56, - "pc": [ - 231, - 232, - 233 - ] - }, - { - "teal": 222, - "source": 56, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 225, - "source": 56, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 229, - "source": 58, - "pc": [ - 238, - 239 - ] - }, - { - "teal": 230, - "source": 58, - "pc": [ - 240, - 241 - ] - }, - { - "teal": 231, - "source": 58, - "pc": [ - 242 - ] - }, - { - "teal": 232, - "source": 58, - "pc": [ - 243 - ] - }, - { - "teal": 233, - "source": 58, - "pc": [ - 244 - ] - }, - { - "teal": 234, - "source": 58, - "pc": [ - 245 - ] - }, - { - "teal": 235, - "source": 58, - "pc": [ - 246 - ] - }, - { - "teal": 236, - "source": 58, - "pc": [ - 247 - ] - }, - { - "teal": 237, - "source": 58, - "pc": [ - 248 - ] - }, - { - "teal": 238, - "source": 58, - "pc": [ - 249 - ] - }, - { - "teal": 241, - "source": 58, - "errorMessage": "wideRatio failed", - "pc": [ - 250 - ] - }, - { - "teal": 244, - "source": 52, - "pc": [ - 251, - 252 - ] - }, - { - "teal": 247, - "source": 52, - "pc": [ - 253, - 254 - ] - }, - { - "teal": 248, - "source": 52, - "pc": [ - 255 - ] - }, - { - "teal": 252, - "source": 61, - "pc": [ - 256, - 257, - 258 - ] - }, - { - "teal": 259, - "source": 63, - "pc": [ - 259, - 260 - ] - }, - { - "teal": 260, - "source": 63, - "pc": [ - 261 - ] - }, - { - "teal": 261, - "source": 63, - "pc": [ - 262 - ] - }, - { - "teal": 262, - "source": 63, - "pc": [ - 263, - 264 - ] - }, - { - "teal": 263, - "source": 63, - "pc": [ - 265 - ] - }, - { - "teal": 264, - "source": 63, - "pc": [ - 266 - ] - }, - { - "teal": 265, - "source": 62, - "pc": [ - 267 - ] - }, - { - "teal": 266, - "source": 62, - "pc": [ - 268 - ] - }, - { - "teal": 267, - "source": 64, - "pc": [ - 269, - 270 - ] - }, - { - "teal": 268, - "source": 64, - "pc": [ - 271 - ] - }, - { - "teal": 269, - "source": 64, - "pc": [ - 272 - ] - }, - { - "teal": 270, - "source": 64, - "pc": [ - 273, - 274 - ] - }, - { - "teal": 271, - "source": 64, - "pc": [ - 275 - ] - }, - { - "teal": 272, - "source": 62, - "pc": [ - 276 - ] - }, - { - "teal": 273, - "source": 62, - "pc": [ - 277 - ] - }, - { - "teal": 274, - "source": 62, - "pc": [ - 278 - ] - }, - { - "teal": 275, - "source": 62, - "pc": [ - 279 - ] - }, - { - "teal": 276, - "source": 62, - "pc": [ - 280 - ] - }, - { - "teal": 279, - "source": 62, - "errorMessage": "wideRatio failed", - "pc": [ - 281 - ] - }, - { - "teal": 280, - "source": 61, - "pc": [ - 282 - ] - }, - { - "teal": 284, - "source": 68, - "pc": [ - 283, - 284, - 285 - ] - }, - { - "teal": 288, - "source": 69, - "pc": [ - 286, - 287 - ] - }, - { - "teal": 289, - "source": 69, - "pc": [ - 288, - 289 - ] - }, - { - "teal": 290, - "source": 69, - "pc": [ - 290 - ] - }, - { - "teal": 291, - "source": 69, - "pc": [ - 291 - ] - }, - { - "teal": 292, - "source": 69, - "pc": [ - 292, - 293 - ] - }, - { - "teal": 293, - "source": 69, - "pc": [ - 294 - ] - }, - { - "teal": 294, - "source": 69, - "pc": [ - 295 - ] - }, - { - "teal": 295, - "source": 69, - "pc": [ - 296 - ] - }, - { - "teal": 296, - "source": 69, - "pc": [ - 297 - ] - }, - { - "teal": 297, - "source": 69, - "pc": [ - 298 - ] - }, - { - "teal": 300, - "source": 69, - "errorMessage": "wideRatio failed", - "pc": [ - 299 - ] - }, - { - "teal": 301, - "source": 68, - "pc": [ - 300 - ] - }, - { - "teal": 305, - "source": 72, - "pc": [ - 301, - 302, - 303 - ] - }, - { - "teal": 308, - "source": 72, - "pc": [ - 304 - ] - }, - { - "teal": 312, - "source": 73, - "pc": [ - 305, - 306, - 307 - ] - }, - { - "teal": 313, - "source": 73, - "pc": [ - 308, - 309 - ] - }, - { - "teal": 317, - "source": 74, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 318, - "source": 74, - "pc": [ - 312, - 313 - ] - }, - { - "teal": 319, - "source": 74, - "pc": [ - 314 - ] - }, - { - "teal": 320, - "source": 74, - "pc": [ - 315, - 316 - ] - }, - { - "teal": 321, - "source": 74, - "pc": [ - 317, - 318 - ] - }, - { - "teal": 322, - "source": 74, - "pc": [ - 319, - 320 - ] - }, - { - "teal": 323, - "source": 74, - "pc": [ - 321 - ] - }, - { - "teal": 324, - "source": 74, - "pc": [ - 322, - 323 - ] - }, - { - "teal": 325, - "source": 74, - "pc": [ - 324 - ] - }, - { - "teal": 326, - "source": 74, - "pc": [ - 325, - 326 - ] - }, - { - "teal": 327, - "source": 74, - "pc": [ - 327 - ] - }, - { - "teal": 328, - "source": 74, - "pc": [ - 328 - ] - }, - { - "teal": 329, - "source": 74, - "pc": [ - 329 - ] - }, - { - "teal": 330, - "source": 74, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 331, - "source": 74, - "pc": [ - 332 - ] - }, - { - "teal": 332, - "source": 74, - "pc": [ - 333 - ] - }, - { - "teal": 333, - "source": 74, - "pc": [ - 334, - 335 - ] - }, - { - "teal": 334, - "source": 74, - "pc": [ - 336, - 337 - ] - }, - { - "teal": 335, - "source": 74, - "pc": [ - 338 - ] - }, - { - "teal": 336, - "source": 74, - "pc": [ - 339 - ] - }, - { - "teal": 337, - "source": 74, - "pc": [ - 340 - ] - }, - { - "teal": 338, - "source": 74, - "pc": [ - 341 - ] - }, - { - "teal": 339, - "source": 74, - "pc": [ - 342 - ] - }, - { - "teal": 340, - "source": 74, - "pc": [ - 343 - ] - }, - { - "teal": 341, - "source": 74, - "pc": [ - 344 - ] - }, - { - "teal": 344, - "source": 74, - "errorMessage": "wideRatio failed", - "pc": [ - 345 - ] - }, - { - "teal": 347, - "source": 72, - "pc": [ - 346, - 347 - ] - }, - { - "teal": 348, - "source": 72, - "pc": [ - 348 - ] - }, - { - "teal": 353, - "source": 77, - "pc": [ - 349, - 350, - 351 - ] - }, - { - "teal": 354, - "source": 77, - "pc": [ - 352 - ] - }, - { - "teal": 355, - "source": 77, - "pc": [ - 353 - ] - }, - { - "teal": 356, - "source": 77, - "pc": [ - 354, - 355 - ] - }, - { - "teal": 357, - "source": 77, - "pc": [ - 356 - ] - }, - { - "teal": 360, - "source": 77, - "errorMessage": "argument 0 (governor) for set_governor must be a address", - "pc": [ - 357 - ] - }, - { - "teal": 363, - "source": 77, - "pc": [ - 358, - 359, - 360 - ] - }, - { - "teal": 364, - "source": 77, - "pc": [ - 361 - ] - }, - { - "teal": 365, - "source": 77, - "pc": [ - 362 - ] - }, - { - "teal": 369, - "source": 77, - "pc": [ - 363, - 364, - 365 - ] - }, - { - "teal": 374, - "source": 78, - "pc": [ - 366, - 367 - ] - }, - { - "teal": 375, - "source": 78, - "pc": [ - 368 - ] - }, - { - "teal": 376, - "source": 78, - "pc": [ - 369 - ] - }, - { - "teal": 377, - "source": 78, - "pc": [ - 370 - ] - }, - { - "teal": 380, - "source": 78, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.governor.value\"}", - "pc": [ - 371 - ] - }, - { - "teal": 384, - "source": 79, - "pc": [ - 372 - ] - }, - { - "teal": 385, - "source": 79, - "pc": [ - 373, - 374 - ] - }, - { - "teal": 386, - "source": 79, - "pc": [ - 375 - ] - }, - { - "teal": 387, - "source": 77, - "pc": [ - 376 - ] - }, - { - "teal": 392, - "source": 82, - "pc": [ - 377, - 378, - 379, - 380, - 381, - 382 - ] - }, - { - "teal": 395, - "source": 82, - "pc": [ - 383, - 384, - 385 - ] - }, - { - "teal": 396, - "source": 82, - "pc": [ - 386 - ] - }, - { - "teal": 399, - "source": 82, - "pc": [ - 387, - 388, - 389 - ] - }, - { - "teal": 400, - "source": 82, - "pc": [ - 390 - ] - }, - { - "teal": 403, - "source": 82, - "pc": [ - 391, - 392 - ] - }, - { - "teal": 404, - "source": 82, - "pc": [ - 393 - ] - }, - { - "teal": 405, - "source": 82, - "pc": [ - 394 - ] - }, - { - "teal": 406, - "source": 82, - "pc": [ - 395 - ] - }, - { - "teal": 407, - "source": 82, - "pc": [ - 396, - 397 - ] - }, - { - "teal": 408, - "source": 82, - "pc": [ - 398 - ] - }, - { - "teal": 409, - "source": 82, - "pc": [ - 399 - ] - }, - { - "teal": 412, - "source": 82, - "errorMessage": "argument 2 (seed) for bootstrap must be a pay transaction", - "pc": [ - 400 - ] - }, - { - "teal": 415, - "source": 82, - "pc": [ - 401, - 402, - 403 - ] - }, - { - "teal": 416, - "source": 82, - "pc": [ - 404 - ] - }, - { - "teal": 417, - "source": 82, - "pc": [ - 405 - ] - }, - { - "teal": 418, - "source": 82, - "pc": [ - 406 - ] - }, - { - "teal": 419, - "source": 82, - "pc": [ - 407 - ] - }, - { - "teal": 420, - "source": 82, - "pc": [ - 408 - ] - }, - { - "teal": 424, - "source": 82, - "pc": [ - 409, - 410, - 411 - ] - }, - { - "teal": 429, - "source": 83, - "pc": [ - 412, - 413 - ] - }, - { - "teal": 430, - "source": 83, - "pc": [ - 414 - ] - }, - { - "teal": 431, - "source": 83, - "pc": [ - 415 - ] - }, - { - "teal": 432, - "source": 83, - "pc": [ - 416 - ] - }, - { - "teal": 435, - "source": 83, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.governor.value\"}", - "pc": [ - 417 - ] - }, - { - "teal": 439, - "source": 85, - "pc": [ - 418, - 419 - ] - }, - { - "teal": 440, - "source": 85, - "pc": [ - 420, - 421 - ] - }, - { - "teal": 441, - "source": 85, - "pc": [ - 422 - ] - }, - { - "teal": 442, - "source": 85, - "pc": [ - 423 - ] - }, - { - "teal": 447, - "source": 87, - "pc": [ - 424, - 425 - ] - }, - { - "teal": 448, - "source": 87, - "pc": [ - 426, - 427 - ] - }, - { - "teal": 449, - "source": 87, - "pc": [ - 428, - 429 - ] - }, - { - "teal": 450, - "source": 87, - "pc": [ - 430 - ] - }, - { - "teal": 453, - "source": 87, - "errorMessage": "transaction verification failed: {\"txn\":\"seed\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 431 - ] - }, - { - "teal": 456, - "source": 87, - "pc": [ - 432, - 433 - ] - }, - { - "teal": 457, - "source": 87, - "pc": [ - 434, - 435 - ] - }, - { - "teal": 458, - "source": 87, - "pc": [ - 436, - 437, - 438, - 439 - ] - }, - { - "teal": 459, - "source": 87, - "pc": [ - 440 - ] - }, - { - "teal": 462, - "source": 87, - "errorMessage": "transaction verification failed: {\"txn\":\"seed\",\"field\":\"amount\",\"condition\":\"greaterThanEqualTo\",\"expected\":\">=300_000\"}", - "pc": [ - 441 - ] - }, - { - "teal": 466, - "source": 88, - "pc": [ - 442, - 443 - ] - }, - { - "teal": 467, - "source": 88, - "pc": [ - 444, - 445 - ] - }, - { - "teal": 468, - "source": 88, - "pc": [ - 446 - ] - }, - { - "teal": 469, - "source": 88, - "pc": [ - 447 - ] - }, - { - "teal": 473, - "source": 90, - "pc": [ - 448 - ] - }, - { - "teal": 474, - "source": 90, - "pc": [ - 449, - 450 - ] - }, - { - "teal": 475, - "source": 90, - "pc": [ - 451 - ] - }, - { - "teal": 479, - "source": 91, - "pc": [ - 452 - ] - }, - { - "teal": 480, - "source": 91, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 481, - "source": 91, - "pc": [ - 455 - ] - }, - { - "teal": 485, - "source": 92, - "pc": [ - 456, - 457 - ] - }, - { - "teal": 486, - "source": 92, - "pc": [ - 458, - 459 - ] - }, - { - "teal": 487, - "source": 92, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 488, - "source": 92, - "pc": [ - 462, - 463, - 464 - ] - }, - { - "teal": 489, - "source": 92, - "pc": [ - 465 - ] - }, - { - "teal": 493, - "source": 94, - "pc": [ - 466, - 467 - ] - }, - { - "teal": 494, - "source": 94, - "pc": [ - 468, - 469, - 470 - ] - }, - { - "teal": 498, - "source": 95, - "pc": [ - 471, - 472 - ] - }, - { - "teal": 499, - "source": 95, - "pc": [ - 473, - 474, - 475 - ] - }, - { - "teal": 503, - "source": 97, - "pc": [ - 476, - 477 - ] - }, - { - "teal": 504, - "source": 97, - "pc": [ - 478 - ] - }, - { - "teal": 505, - "source": 82, - "pc": [ - 479 - ] - }, - { - "teal": 510, - "source": 100, - "pc": [ - 480, - 481, - 482 - ] - }, - { - "teal": 511, - "source": 100, - "pc": [ - 483 - ] - }, - { - "teal": 514, - "source": 100, - "pc": [ - 484, - 485, - 486 - ] - }, - { - "teal": 515, - "source": 100, - "pc": [ - 487 - ] - }, - { - "teal": 518, - "source": 100, - "pc": [ - 488, - 489, - 490 - ] - }, - { - "teal": 519, - "source": 100, - "pc": [ - 491 - ] - }, - { - "teal": 522, - "source": 100, - "pc": [ - 492, - 493 - ] - }, - { - "teal": 523, - "source": 100, - "pc": [ - 494 - ] - }, - { - "teal": 524, - "source": 100, - "pc": [ - 495 - ] - }, - { - "teal": 525, - "source": 100, - "pc": [ - 496 - ] - }, - { - "teal": 526, - "source": 100, - "pc": [ - 497, - 498 - ] - }, - { - "teal": 527, - "source": 100, - "pc": [ - 499 - ] - }, - { - "teal": 528, - "source": 100, - "pc": [ - 500 - ] - }, - { - "teal": 531, - "source": 100, - "errorMessage": "argument 3 (bXfer) for mint must be a axfer transaction", - "pc": [ - 501 - ] - }, - { - "teal": 534, - "source": 100, - "pc": [ - 502, - 503 - ] - }, - { - "teal": 535, - "source": 100, - "pc": [ - 504, - 505 - ] - }, - { - "teal": 536, - "source": 100, - "pc": [ - 506 - ] - }, - { - "teal": 537, - "source": 100, - "pc": [ - 507 - ] - }, - { - "teal": 538, - "source": 100, - "pc": [ - 508, - 509 - ] - }, - { - "teal": 539, - "source": 100, - "pc": [ - 510 - ] - }, - { - "teal": 540, - "source": 100, - "pc": [ - 511 - ] - }, - { - "teal": 543, - "source": 100, - "errorMessage": "argument 4 (aXfer) for mint must be a axfer transaction", - "pc": [ - 512 - ] - }, - { - "teal": 546, - "source": 100, - "pc": [ - 513, - 514, - 515 - ] - }, - { - "teal": 547, - "source": 100, - "pc": [ - 516 - ] - }, - { - "teal": 548, - "source": 100, - "pc": [ - 517 - ] - }, - { - "teal": 552, - "source": 100, - "pc": [ - 518, - 519, - 520 - ] - }, - { - "teal": 555, - "source": 100, - "pc": [ - 521 - ] - }, - { - "teal": 560, - "source": 102, - "pc": [ - 522, - 523 - ] - }, - { - "teal": 561, - "source": 102, - "pc": [ - 524 - ] - }, - { - "teal": 562, - "source": 102, - "pc": [ - 525 - ] - }, - { - "teal": 563, - "source": 102, - "pc": [ - 526 - ] - }, - { - "teal": 564, - "source": 102, - "pc": [ - 527 - ] - }, - { - "teal": 568, - "source": 103, - "pc": [ - 528, - 529 - ] - }, - { - "teal": 569, - "source": 103, - "pc": [ - 530 - ] - }, - { - "teal": 570, - "source": 103, - "pc": [ - 531 - ] - }, - { - "teal": 571, - "source": 103, - "pc": [ - 532 - ] - }, - { - "teal": 572, - "source": 103, - "pc": [ - 533 - ] - }, - { - "teal": 576, - "source": 104, - "pc": [ - 534, - 535 - ] - }, - { - "teal": 577, - "source": 104, - "pc": [ - 536, - 537 - ] - }, - { - "teal": 578, - "source": 104, - "pc": [ - 538 - ] - }, - { - "teal": 579, - "source": 104, - "pc": [ - 539 - ] - }, - { - "teal": 580, - "source": 104, - "pc": [ - 540 - ] - }, - { - "teal": 591, - "source": 107, - "pc": [ - 541, - 542 - ] - }, - { - "teal": 592, - "source": 108, - "pc": [ - 543, - 544 - ] - }, - { - "teal": 593, - "source": 108, - "pc": [ - 545, - 546 - ] - }, - { - "teal": 594, - "source": 108, - "pc": [ - 547 - ] - }, - { - "teal": 597, - "source": 108, - "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", - "pc": [ - 548 - ] - }, - { - "teal": 600, - "source": 107, - "pc": [ - 549, - 550 - ] - }, - { - "teal": 601, - "source": 109, - "pc": [ - 551, - 552 - ] - }, - { - "teal": 602, - "source": 109, - "pc": [ - 553 - ] - }, - { - "teal": 603, - "source": 109, - "pc": [ - 554 - ] - }, - { - "teal": 606, - "source": 109, - "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", - "pc": [ - 555 - ] - }, - { - "teal": 609, - "source": 107, - "pc": [ - 556, - 557 - ] - }, - { - "teal": 610, - "source": 110, - "pc": [ - 558, - 559 - ] - }, - { - "teal": 611, - "source": 110, - "pc": [ - 560, - 561 - ] - }, - { - "teal": 612, - "source": 110, - "pc": [ - 562 - ] - }, - { - "teal": 615, - "source": 110, - "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 563 - ] - }, - { - "teal": 618, - "source": 107, - "pc": [ - 564, - 565 - ] - }, - { - "teal": 619, - "source": 111, - "pc": [ - 566, - 567 - ] - }, - { - "teal": 620, - "source": 111, - "pc": [ - 568, - 569 - ] - }, - { - "teal": 621, - "source": 111, - "pc": [ - 570 - ] - }, - { - "teal": 624, - "source": 111, - "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"xferAsset\",\"expected\":\"aAsset\"}", - "pc": [ - 571 - ] - }, - { - "teal": 635, - "source": 115, - "pc": [ - 572, - 573 - ] - }, - { - "teal": 636, - "source": 116, - "pc": [ - 574, - 575 - ] - }, - { - "teal": 637, - "source": 116, - "pc": [ - 576, - 577 - ] - }, - { - "teal": 638, - "source": 116, - "pc": [ - 578 - ] - }, - { - "teal": 641, - "source": 116, - "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", - "pc": [ - 579 - ] - }, - { - "teal": 644, - "source": 115, - "pc": [ - 580, - 581 - ] - }, - { - "teal": 645, - "source": 117, - "pc": [ - 582, - 583 - ] - }, - { - "teal": 646, - "source": 117, - "pc": [ - 584 - ] - }, - { - "teal": 647, - "source": 117, - "pc": [ - 585 - ] - }, - { - "teal": 650, - "source": 117, - "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", - "pc": [ - 586 - ] - }, - { - "teal": 653, - "source": 115, - "pc": [ - 587, - 588 - ] - }, - { - "teal": 654, - "source": 118, - "pc": [ - 589, - 590 - ] - }, - { - "teal": 655, - "source": 118, - "pc": [ - 591, - 592 - ] - }, - { - "teal": 656, - "source": 118, - "pc": [ - 593 - ] - }, - { - "teal": 659, - "source": 118, - "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 594 - ] - }, - { - "teal": 662, - "source": 115, - "pc": [ - 595, - 596 - ] - }, - { - "teal": 663, - "source": 119, - "pc": [ - 597, - 598 - ] - }, - { - "teal": 664, - "source": 119, - "pc": [ - 599, - 600 - ] - }, - { - "teal": 665, - "source": 119, - "pc": [ - 601 - ] - }, - { - "teal": 668, - "source": 119, - "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"xferAsset\",\"expected\":\"bAsset\"}", - "pc": [ - 602 - ] - }, - { - "teal": 674, - "source": 123, - "pc": [ - 603, - 604 - ] - }, - { - "teal": 675, - "source": 123, - "pc": [ - 605, - 606 - ] - }, - { - "teal": 676, - "source": 123, - "pc": [ - 607, - 608 - ] - }, - { - "teal": 677, - "source": 123, - "pc": [ - 609 - ] - }, - { - "teal": 678, - "source": 123, - "pc": [ - 610, - 611 - ] - }, - { - "teal": 679, - "source": 123, - "pc": [ - 612, - 613 - ] - }, - { - "teal": 680, - "source": 123, - "pc": [ - 614 - ] - }, - { - "teal": 681, - "source": 123, - "pc": [ - 615 - ] - }, - { - "teal": 682, - "source": 123, - "pc": [ - 616, - 617, - 618 - ] - }, - { - "teal": 683, - "source": 124, - "pc": [ - 619, - 620 - ] - }, - { - "teal": 684, - "source": 124, - "pc": [ - 621, - 622 - ] - }, - { - "teal": 685, - "source": 124, - "pc": [ - 623, - 624 - ] - }, - { - "teal": 686, - "source": 124, - "pc": [ - 625 - ] - }, - { - "teal": 687, - "source": 124, - "pc": [ - 626, - 627 - ] - }, - { - "teal": 688, - "source": 124, - "pc": [ - 628, - 629 - ] - }, - { - "teal": 689, - "source": 124, - "pc": [ - 630 - ] - }, - { - "teal": 690, - "source": 123, - "pc": [ - 631 - ] - }, - { - "teal": 693, - "source": 122, - "pc": [ - 632, - 633, - 634 - ] - }, - { - "teal": 698, - "source": 126, - "pc": [ - 635, - 636 - ] - }, - { - "teal": 699, - "source": 126, - "pc": [ - 637, - 638 - ] - }, - { - "teal": 700, - "source": 126, - "pc": [ - 639, - 640 - ] - }, - { - "teal": 701, - "source": 126, - "pc": [ - 641, - 642 - ] - }, - { - "teal": 702, - "source": 126, - "pc": [ - 643, - 644, - 645 - ] - }, - { - "teal": 703, - "source": 122, - "pc": [ - 646, - 647, - 648 - ] - }, - { - "teal": 714, - "source": 133, - "pc": [ - 649, - 650 - ] - }, - { - "teal": 715, - "source": 133, - "pc": [ - 651, - 652 - ] - }, - { - "teal": 716, - "source": 132, - "pc": [ - 653, - 654 - ] - }, - { - "teal": 717, - "source": 132, - "pc": [ - 655, - 656 - ] - }, - { - "teal": 718, - "source": 131, - "pc": [ - 657, - 658 - ] - }, - { - "teal": 719, - "source": 131, - "pc": [ - 659, - 660 - ] - }, - { - "teal": 720, - "source": 131, - "pc": [ - 661, - 662 - ] - }, - { - "teal": 721, - "source": 131, - "pc": [ - 663 - ] - }, - { - "teal": 722, - "source": 131, - "pc": [ - 664, - 665 - ] - }, - { - "teal": 723, - "source": 131, - "pc": [ - 666, - 667 - ] - }, - { - "teal": 724, - "source": 131, - "pc": [ - 668 - ] - }, - { - "teal": 725, - "source": 130, - "pc": [ - 669, - 670 - ] - }, - { - "teal": 726, - "source": 130, - "pc": [ - 671, - 672 - ] - }, - { - "teal": 727, - "source": 130, - "pc": [ - 673, - 674 - ] - }, - { - "teal": 728, - "source": 130, - "pc": [ - 675 - ] - }, - { - "teal": 729, - "source": 130, - "pc": [ - 676, - 677 - ] - }, - { - "teal": 730, - "source": 130, - "pc": [ - 678, - 679 - ] - }, - { - "teal": 731, - "source": 130, - "pc": [ - 680 - ] - }, - { - "teal": 732, - "source": 129, - "pc": [ - 681, - 682 - ] - }, - { - "teal": 733, - "source": 129, - "pc": [ - 683, - 684 - ] - }, - { - "teal": 734, - "source": 129, - "pc": [ - 685, - 686 - ] - }, - { - "teal": 735, - "source": 129, - "pc": [ - 687, - 688 - ] - }, - { - "teal": 736, - "source": 129, - "pc": [ - 689 - ] - }, - { - "teal": 737, - "source": 129, - "pc": [ - 690 - ] - }, - { - "teal": 738, - "source": 128, - "pc": [ - 691, - 692, - 693 - ] - }, - { - "teal": 739, - "source": 128, - "pc": [ - 694, - 695 - ] - }, - { - "teal": 743, - "source": 136, - "pc": [ - 696, - 697 - ] - }, - { - "teal": 744, - "source": 136, - "pc": [ - 698 - ] - }, - { - "teal": 745, - "source": 136, - "pc": [ - 699 - ] - }, - { - "teal": 746, - "source": 136, - "pc": [ - 700 - ] - }, - { - "teal": 750, - "source": 138, - "pc": [ - 701, - 702 - ] - }, - { - "teal": 751, - "source": 138, - "pc": [ - 703, - 704 - ] - }, - { - "teal": 752, - "source": 138, - "pc": [ - 705, - 706 - ] - }, - { - "teal": 753, - "source": 138, - "pc": [ - 707, - 708, - 709 - ] - }, - { - "teal": 756, - "source": 100, - "pc": [ - 710 - ] - }, - { - "teal": 761, - "source": 142, - "pc": [ - 711, - 712, - 713 - ] - }, - { - "teal": 762, - "source": 142, - "pc": [ - 714 - ] - }, - { - "teal": 765, - "source": 142, - "pc": [ - 715, - 716, - 717 - ] - }, - { - "teal": 766, - "source": 142, - "pc": [ - 718 - ] - }, - { - "teal": 769, - "source": 142, - "pc": [ - 719, - 720, - 721 - ] - }, - { - "teal": 770, - "source": 142, - "pc": [ - 722 - ] - }, - { - "teal": 773, - "source": 142, - "pc": [ - 723, - 724 - ] - }, - { - "teal": 774, - "source": 142, - "pc": [ - 725 - ] - }, - { - "teal": 775, - "source": 142, - "pc": [ - 726 - ] - }, - { - "teal": 776, - "source": 142, - "pc": [ - 727 - ] - }, - { - "teal": 777, - "source": 142, - "pc": [ - 728, - 729 - ] - }, - { - "teal": 778, - "source": 142, - "pc": [ - 730 - ] - }, - { - "teal": 779, - "source": 142, - "pc": [ - 731 - ] - }, - { - "teal": 782, - "source": 142, - "errorMessage": "argument 3 (poolXfer) for burn must be a axfer transaction", - "pc": [ - 732 - ] - }, - { - "teal": 785, - "source": 142, - "pc": [ - 733, - 734, - 735 - ] - }, - { - "teal": 786, - "source": 142, - "pc": [ - 736 - ] - }, - { - "teal": 787, - "source": 142, - "pc": [ - 737 - ] - }, - { - "teal": 791, - "source": 142, - "pc": [ - 738, - 739, - 740 - ] - }, - { - "teal": 794, - "source": 142, - "pc": [ - 741 - ] - }, - { - "teal": 795, - "source": 142, - "pc": [ - 742, - 743 - ] - }, - { - "teal": 800, - "source": 144, - "pc": [ - 744, - 745 - ] - }, - { - "teal": 801, - "source": 144, - "pc": [ - 746, - 747 - ] - }, - { - "teal": 802, - "source": 144, - "pc": [ - 748 - ] - }, - { - "teal": 803, - "source": 144, - "pc": [ - 749 - ] - }, - { - "teal": 804, - "source": 144, - "pc": [ - 750 - ] - }, - { - "teal": 808, - "source": 145, - "pc": [ - 751, - 752 - ] - }, - { - "teal": 809, - "source": 145, - "pc": [ - 753 - ] - }, - { - "teal": 810, - "source": 145, - "pc": [ - 754 - ] - }, - { - "teal": 811, - "source": 145, - "pc": [ - 755 - ] - }, - { - "teal": 812, - "source": 145, - "pc": [ - 756 - ] - }, - { - "teal": 816, - "source": 146, - "pc": [ - 757, - 758 - ] - }, - { - "teal": 817, - "source": 146, - "pc": [ - 759 - ] - }, - { - "teal": 818, - "source": 146, - "pc": [ - 760 - ] - }, - { - "teal": 819, - "source": 146, - "pc": [ - 761 - ] - }, - { - "teal": 820, - "source": 146, - "pc": [ - 762 - ] - }, - { - "teal": 831, - "source": 149, - "pc": [ - 763, - 764 - ] - }, - { - "teal": 832, - "source": 150, - "pc": [ - 765, - 766 - ] - }, - { - "teal": 833, - "source": 150, - "pc": [ - 767, - 768 - ] - }, - { - "teal": 834, - "source": 150, - "pc": [ - 769 - ] - }, - { - "teal": 837, - "source": 150, - "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", - "pc": [ - 770 - ] - }, - { - "teal": 840, - "source": 149, - "pc": [ - 771, - 772 - ] - }, - { - "teal": 841, - "source": 151, - "pc": [ - 773, - 774 - ] - }, - { - "teal": 842, - "source": 151, - "pc": [ - 775 - ] - }, - { - "teal": 843, - "source": 151, - "pc": [ - 776 - ] - }, - { - "teal": 846, - "source": 151, - "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", - "pc": [ - 777 - ] - }, - { - "teal": 849, - "source": 149, - "pc": [ - 778, - 779 - ] - }, - { - "teal": 850, - "source": 152, - "pc": [ - 780, - 781 - ] - }, - { - "teal": 851, - "source": 152, - "pc": [ - 782, - 783 - ] - }, - { - "teal": 852, - "source": 152, - "pc": [ - 784 - ] - }, - { - "teal": 855, - "source": 152, - "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 785 - ] - }, - { - "teal": 858, - "source": 149, - "pc": [ - 786, - 787 - ] - }, - { - "teal": 859, - "source": 153, - "pc": [ - 788, - 789 - ] - }, - { - "teal": 860, - "source": 153, - "pc": [ - 790, - 791 - ] - }, - { - "teal": 861, - "source": 153, - "pc": [ - 792 - ] - }, - { - "teal": 864, - "source": 153, - "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"xferAsset\",\"expected\":\"poolAsset\"}", - "pc": [ - 793 - ] - }, - { - "teal": 868, - "source": 156, - "pc": [ - 794, - 795 - ] - }, - { - "teal": 869, - "source": 156, - "pc": [ - 796, - 797 - ] - }, - { - "teal": 870, - "source": 156, - "pc": [ - 798, - 799 - ] - }, - { - "teal": 871, - "source": 156, - "pc": [ - 800, - 801 - ] - }, - { - "teal": 872, - "source": 156, - "pc": [ - 802 - ] - }, - { - "teal": 873, - "source": 156, - "pc": [ - 803, - 804 - ] - }, - { - "teal": 874, - "source": 156, - "pc": [ - 805, - 806 - ] - }, - { - "teal": 875, - "source": 156, - "pc": [ - 807 - ] - }, - { - "teal": 876, - "source": 156, - "pc": [ - 808 - ] - }, - { - "teal": 877, - "source": 156, - "pc": [ - 809, - 810 - ] - }, - { - "teal": 881, - "source": 158, - "pc": [ - 811, - 812 - ] - }, - { - "teal": 882, - "source": 158, - "pc": [ - 813, - 814 - ] - }, - { - "teal": 883, - "source": 158, - "pc": [ - 815, - 816 - ] - }, - { - "teal": 884, - "source": 158, - "pc": [ - 817, - 818 - ] - }, - { - "teal": 885, - "source": 158, - "pc": [ - 819, - 820 - ] - }, - { - "teal": 886, - "source": 158, - "pc": [ - 821 - ] - }, - { - "teal": 887, - "source": 158, - "pc": [ - 822, - 823 - ] - }, - { - "teal": 888, - "source": 158, - "pc": [ - 824, - 825, - 826 - ] - }, - { - "teal": 889, - "source": 158, - "pc": [ - 827, - 828 - ] - }, - { - "teal": 893, - "source": 160, - "pc": [ - 829, - 830 - ] - }, - { - "teal": 894, - "source": 160, - "pc": [ - 831, - 832 - ] - }, - { - "teal": 895, - "source": 160, - "pc": [ - 833, - 834 - ] - }, - { - "teal": 896, - "source": 160, - "pc": [ - 835, - 836 - ] - }, - { - "teal": 897, - "source": 160, - "pc": [ - 837, - 838 - ] - }, - { - "teal": 898, - "source": 160, - "pc": [ - 839 - ] - }, - { - "teal": 899, - "source": 160, - "pc": [ - 840, - 841 - ] - }, - { - "teal": 900, - "source": 160, - "pc": [ - 842, - 843, - 844 - ] - }, - { - "teal": 901, - "source": 160, - "pc": [ - 845, - 846 - ] - }, - { - "teal": 905, - "source": 162, - "pc": [ - 847, - 848 - ] - }, - { - "teal": 906, - "source": 162, - "pc": [ - 849, - 850 - ] - }, - { - "teal": 907, - "source": 162, - "pc": [ - 851, - 852 - ] - }, - { - "teal": 908, - "source": 162, - "pc": [ - 853, - 854, - 855 - ] - }, - { - "teal": 912, - "source": 163, - "pc": [ - 856, - 857 - ] - }, - { - "teal": 913, - "source": 163, - "pc": [ - 858, - 859 - ] - }, - { - "teal": 914, - "source": 163, - "pc": [ - 860, - 861 - ] - }, - { - "teal": 915, - "source": 163, - "pc": [ - 862, - 863, - 864 - ] - }, - { - "teal": 919, - "source": 165, - "pc": [ - 865, - 866 - ] - }, - { - "teal": 920, - "source": 165, - "pc": [ - 867, - 868, - 869 - ] - }, - { - "teal": 921, - "source": 165, - "pc": [ - 870 - ] - }, - { - "teal": 922, - "source": 142, - "pc": [ - 871 - ] - }, - { - "teal": 927, - "source": 168, - "pc": [ - 872, - 873, - 874 - ] - }, - { - "teal": 928, - "source": 168, - "pc": [ - 875 - ] - }, - { - "teal": 931, - "source": 168, - "pc": [ - 876, - 877, - 878 - ] - }, - { - "teal": 932, - "source": 168, - "pc": [ - 879 - ] - }, - { - "teal": 935, - "source": 168, - "pc": [ - 880, - 881 - ] - }, - { - "teal": 936, - "source": 168, - "pc": [ - 882 - ] - }, - { - "teal": 937, - "source": 168, - "pc": [ - 883 - ] - }, - { - "teal": 938, - "source": 168, - "pc": [ - 884 - ] - }, - { - "teal": 939, - "source": 168, - "pc": [ - 885, - 886 - ] - }, - { - "teal": 940, - "source": 168, - "pc": [ - 887 - ] - }, - { - "teal": 941, - "source": 168, - "pc": [ - 888 - ] - }, - { - "teal": 944, - "source": 168, - "errorMessage": "argument 2 (swapXfer) for swap must be a axfer transaction", - "pc": [ - 889 - ] - }, - { - "teal": 947, - "source": 168, - "pc": [ - 890, - 891, - 892 - ] - }, - { - "teal": 948, - "source": 168, - "pc": [ - 893 - ] - }, - { - "teal": 949, - "source": 168, - "pc": [ - 894 - ] - }, - { - "teal": 953, - "source": 168, - "pc": [ - 895, - 896, - 897 - ] - }, - { - "teal": 956, - "source": 168, - "pc": [ - 898 - ] - }, - { - "teal": 957, - "source": 168, - "pc": [ - 899, - 900 - ] - }, - { - "teal": 962, - "source": 170, - "pc": [ - 901, - 902 - ] - }, - { - "teal": 963, - "source": 170, - "pc": [ - 903 - ] - }, - { - "teal": 964, - "source": 170, - "pc": [ - 904 - ] - }, - { - "teal": 965, - "source": 170, - "pc": [ - 905 - ] - }, - { - "teal": 966, - "source": 170, - "pc": [ - 906 - ] - }, - { - "teal": 970, - "source": 171, - "pc": [ - 907, - 908 - ] - }, - { - "teal": 971, - "source": 171, - "pc": [ - 909 - ] - }, - { - "teal": 972, - "source": 171, - "pc": [ - 910 - ] - }, - { - "teal": 973, - "source": 171, - "pc": [ - 911 - ] - }, - { - "teal": 974, - "source": 171, - "pc": [ - 912 - ] - }, - { - "teal": 984, - "source": 173, - "pc": [ - 913, - 914 - ] - }, - { - "teal": 985, - "source": 174, - "pc": [ - 915, - 916 - ] - }, - { - "teal": 986, - "source": 174, - "pc": [ - 917 - ] - }, - { - "teal": 987, - "source": 174, - "pc": [ - 918 - ] - }, - { - "teal": 990, - "source": 174, - "errorMessage": "transaction verification failed: {\"txn\":\"swapXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", - "pc": [ - 919 - ] - }, - { - "teal": 993, - "source": 173, - "pc": [ - 920, - 921 - ] - }, - { - "teal": 994, - "source": 175, - "pc": [ - 922, - 923 - ] - }, - { - "teal": 995, - "source": 175, - "pc": [ - 924, - 925 - ] - }, - { - "teal": 996, - "source": 175, - "pc": [ - 926 - ] - }, - { - "teal": 999, - "source": 175, - "errorMessage": "transaction verification failed: {\"txn\":\"swapXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 927 - ] - }, - { - "teal": 1002, - "source": 173, - "pc": [ - 928, - 929 - ] - }, - { - "teal": 1003, - "source": 176, - "pc": [ - 930, - 931 - ] - }, - { - "teal": 1004, - "source": 176, - "pc": [ - 932, - 933 - ] - }, - { - "teal": 1005, - "source": 176, - "pc": [ - 934 - ] - }, - { - "teal": 1008, - "source": 176, - "errorMessage": "transaction verification failed: {\"txn\":\"swapXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", - "pc": [ - 935 - ] - }, - { - "teal": 1011, - "source": 173, - "pc": [ - 936, - 937 - ] - }, - { - "teal": 1012, - "source": 177, - "pc": [ - 938, - 939 - ] - }, - { - "teal": 1013, - "source": 177, - "pc": [ - 940, - 941 - ] - }, - { - "teal": 1014, - "source": 177, - "pc": [ - 942 - ] - }, - { - "teal": 1015, - "source": 173, - "pc": [ - 943, - 944 - ] - }, - { - "teal": 1016, - "source": 177, - "pc": [ - 945, - 946 - ] - }, - { - "teal": 1017, - "source": 177, - "pc": [ - 947, - 948 - ] - }, - { - "teal": 1018, - "source": 177, - "pc": [ - 949 - ] - }, - { - "teal": 1019, - "source": 177, - "pc": [ - 950 - ] - }, - { - "teal": 1022, - "source": 177, - "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"swapXfer\"},\"field\":\"xferAsset\",\"condition\":\"includedIn\",\"expected\":\"[aAsset, bAsset]\"}", - "pc": [ - 951 - ] - }, - { - "teal": 1026, - "source": 180, - "pc": [ - 952, - 953 - ] - }, - { - "teal": 1027, - "source": 180, - "pc": [ - 954, - 955 - ] - }, - { - "teal": 1028, - "source": 180, - "pc": [ - 956, - 957 - ] - }, - { - "teal": 1029, - "source": 180, - "pc": [ - 958 - ] - }, - { - "teal": 1030, - "source": 180, - "pc": [ - 959, - 960, - 961 - ] - }, - { - "teal": 1031, - "source": 180, - "pc": [ - 962, - 963 - ] - }, - { - "teal": 1032, - "source": 180, - "pc": [ - 964, - 965, - 966 - ] - }, - { - "teal": 1035, - "source": 180, - "pc": [ - 967, - 968 - ] - }, - { - "teal": 1038, - "source": 180, - "pc": [ - 969, - 970 - ] - }, - { - "teal": 1042, - "source": 182, - "pc": [ - 971, - 972 - ] - }, - { - "teal": 1043, - "source": 182, - "pc": [ - 973, - 974 - ] - }, - { - "teal": 1044, - "source": 182, - "pc": [ - 975, - 976 - ] - }, - { - "teal": 1052, - "source": 187, - "pc": [ - 977, - 978 - ] - }, - { - "teal": 1053, - "source": 187, - "pc": [ - 979, - 980 - ] - }, - { - "teal": 1054, - "source": 187, - "pc": [ - 981, - 982 - ] - }, - { - "teal": 1055, - "source": 187, - "pc": [ - 983 - ] - }, - { - "teal": 1056, - "source": 186, - "pc": [ - 984, - 985 - ] - }, - { - "teal": 1057, - "source": 186, - "pc": [ - 986, - 987 - ] - }, - { - "teal": 1058, - "source": 186, - "pc": [ - 988, - 989 - ] - }, - { - "teal": 1059, - "source": 186, - "pc": [ - 990 - ] - }, - { - "teal": 1060, - "source": 186, - "pc": [ - 991, - 992 - ] - }, - { - "teal": 1061, - "source": 186, - "pc": [ - 993, - 994 - ] - }, - { - "teal": 1062, - "source": 186, - "pc": [ - 995 - ] - }, - { - "teal": 1063, - "source": 185, - "pc": [ - 996, - 997 - ] - }, - { - "teal": 1064, - "source": 185, - "pc": [ - 998, - 999 - ] - }, - { - "teal": 1065, - "source": 184, - "pc": [ - 1000, - 1001, - 1002 - ] - }, - { - "teal": 1066, - "source": 184, - "pc": [ - 1003, - 1004 - ] - }, - { - "teal": 1070, - "source": 190, - "pc": [ - 1005, - 1006 - ] - }, - { - "teal": 1071, - "source": 190, - "pc": [ - 1007 - ] - }, - { - "teal": 1072, - "source": 190, - "pc": [ - 1008 - ] - }, - { - "teal": 1073, - "source": 190, - "pc": [ - 1009 - ] - }, - { - "teal": 1077, - "source": 192, - "pc": [ - 1010, - 1011 - ] - }, - { - "teal": 1078, - "source": 192, - "pc": [ - 1012, - 1013 - ] - }, - { - "teal": 1079, - "source": 192, - "pc": [ - 1014, - 1015 - ] - }, - { - "teal": 1080, - "source": 192, - "pc": [ - 1016, - 1017, - 1018 - ] - }, - { - "teal": 1084, - "source": 194, - "pc": [ - 1019, - 1020 - ] - }, - { - "teal": 1085, - "source": 194, - "pc": [ - 1021, - 1022, - 1023 - ] - }, - { - "teal": 1086, - "source": 194, - "pc": [ - 1024 - ] - }, - { - "teal": 1087, - "source": 168, - "pc": [ - 1025 - ] - }, - { - "teal": 1090, - "source": 8, - "pc": [ - 1026, - 1027, - 1028, - 1029, - 1030, - 1031 - ] - }, - { - "teal": 1091, - "source": 8, - "pc": [ - 1032, - 1033, - 1034 - ] - }, - { - "teal": 1092, - "source": 8, - "pc": [ - 1035, - 1036, - 1037, - 1038 - ] - }, - { - "teal": 1095, - "source": 8, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 1039 - ] - }, - { - "teal": 1098, - "source": 8, - "pc": [ - 1040, - 1041, - 1042, - 1043, - 1044, - 1045 - ] - }, - { - "teal": 1099, - "source": 8, - "pc": [ - 1046, - 1047, - 1048, - 1049, - 1050, - 1051 - ] - }, - { - "teal": 1100, - "source": 8, - "pc": [ - 1052, - 1053, - 1054, - 1055, - 1056, - 1057 - ] - }, - { - "teal": 1101, - "source": 8, - "pc": [ - 1058, - 1059, - 1060, - 1061, - 1062, - 1063 - ] - }, - { - "teal": 1102, - "source": 8, - "pc": [ - 1064, - 1065, - 1066, - 1067, - 1068, - 1069 - ] - }, - { - "teal": 1103, - "source": 8, - "pc": [ - 1070, - 1071, - 1072 - ] - }, - { - "teal": 1104, - "source": 8, - "pc": [ - 1073, - 1074, - 1075, - 1076, - 1077, - 1078, - 1079, - 1080, - 1081, - 1082, - 1083, - 1084 - ] - }, - { - "teal": 1107, - "source": 8, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 1085 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 8, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + }, + { + "teal": 13, + "source": 8, + "pc": [ + 28, + 29 + ] + }, + { + "teal": 14, + "source": 8, + "pc": [ + 30 + ] + }, + { + "teal": 15, + "source": 8, + "pc": [ + 31, + 32 + ] + }, + { + "teal": 16, + "source": 8, + "pc": [ + 33 + ] + }, + { + "teal": 17, + "source": 8, + "pc": [ + 34, + 35 + ] + }, + { + "teal": 18, + "source": 8, + "pc": [ + 36 + ] + }, + { + "teal": 19, + "source": 8, + "pc": [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 23, + "source": 8, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 63 + ] + }, + { + "teal": 28, + "source": 19, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 29, + "source": 19, + "pc": [ + 67 + ] + }, + { + "teal": 30, + "source": 19, + "pc": [ + 68 + ] + }, + { + "teal": 34, + "source": 19, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 38, + "source": 20, + "pc": [ + 72 + ] + }, + { + "teal": 39, + "source": 20, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 40, + "source": 20, + "pc": [ + 75 + ] + }, + { + "teal": 41, + "source": 19, + "pc": [ + 76 + ] + }, + { + "teal": 45, + "source": 23, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 56, + "source": 26, + "pc": [ + 80 + ] + }, + { + "teal": 57, + "source": 26, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 58, + "source": 26, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 62, + "source": 27, + "pc": [ + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 63, + "source": 27, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 64, + "source": 27, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 65, + "source": 27, + "pc": [ + 95 + ] + }, + { + "teal": 66, + "source": 27, + "pc": [ + 96 + ] + }, + { + "teal": 67, + "source": 27, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 68, + "source": 27, + "pc": [ + 100 + ] + }, + { + "teal": 69, + "source": 27, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 70, + "source": 27, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 71, + "source": 27, + "pc": [ + 105 + ] + }, + { + "teal": 72, + "source": 27, + "pc": [ + 106 + ] + }, + { + "teal": 73, + "source": 27, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 77, + "source": 28, + "pc": [ + 109, + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 78, + "source": 28, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 82, + "source": 29, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 83, + "source": 29, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 87, + "source": 30, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 88, + "source": 30, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 92, + "source": 31, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 93, + "source": 31, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 97, + "source": 32, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 98, + "source": 32, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 101, + "source": 26, + "pc": [ + 132 + ] + }, + { + "teal": 102, + "source": 26, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 105, + "source": 26, + "pc": [ + 135 + ] + }, + { + "teal": 106, + "source": 26, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 107, + "source": 23, + "pc": [ + 138 + ] + }, + { + "teal": 111, + "source": 36, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 119, + "source": 37, + "pc": [ + 142 + ] + }, + { + "teal": 120, + "source": 37, + "pc": [ + 143 + ] + }, + { + "teal": 121, + "source": 37, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 125, + "source": 38, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 126, + "source": 38, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 130, + "source": 39, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 131, + "source": 39, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 135, + "source": 40, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 136, + "source": 40, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 139, + "source": 37, + "pc": [ + 158 + ] + }, + { + "teal": 140, + "source": 37, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 143, + "source": 37, + "pc": [ + 161 + ] + }, + { + "teal": 144, + "source": 36, + "pc": [ + 162 + ] + }, + { + "teal": 148, + "source": 44, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 152, + "source": 45, + "pc": [ + 166 + ] + }, + { + "teal": 153, + "source": 45, + "pc": [ + 167, + 168 + ] + }, + { + "teal": 154, + "source": 45, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 155, + "source": 45, + "pc": [ + 171, + 172, + 173 + ] + }, + { + "teal": 156, + "source": 44, + "pc": [ + 174 + ] + }, + { + "teal": 160, + "source": 48, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 164, + "source": 49, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 165, + "source": 49, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 166, + "source": 49, + "pc": [ + 182 + ] + }, + { + "teal": 167, + "source": 49, + "pc": [ + 183 + ] + }, + { + "teal": 168, + "source": 48, + "pc": [ + 184 + ] + }, + { + "teal": 172, + "source": 52, + "pc": [ + 185, + 186, + 187 + ] + }, + { + "teal": 175, + "source": 52, + "pc": [ + 188 + ] + }, + { + "teal": 176, + "source": 52, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 180, + "source": 53, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 181, + "source": 53, + "pc": [ + 193 + ] + }, + { + "teal": 182, + "source": 53, + "pc": [ + 194 + ] + }, + { + "teal": 183, + "source": 53, + "pc": [ + 195 + ] + }, + { + "teal": 184, + "source": 53, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 185, + "source": 53, + "pc": [ + 198 + ] + }, + { + "teal": 186, + "source": 53, + "pc": [ + 199 + ] + }, + { + "teal": 187, + "source": 53, + "pc": [ + 200 + ] + }, + { + "teal": 188, + "source": 53, + "pc": [ + 201 + ] + }, + { + "teal": 189, + "source": 53, + "pc": [ + 202 + ] + }, + { + "teal": 192, + "source": 53, + "errorMessage": "wideRatio failed", + "pc": [ + 203 + ] + }, + { + "teal": 193, + "source": 53, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 197, + "source": 54, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 198, + "source": 54, + "pc": [ + 208 + ] + }, + { + "teal": 199, + "source": 54, + "pc": [ + 209 + ] + }, + { + "teal": 200, + "source": 54, + "pc": [ + 210 + ] + }, + { + "teal": 201, + "source": 54, + "pc": [ + 211, + 212 + ] + }, + { + "teal": 202, + "source": 54, + "pc": [ + 213 + ] + }, + { + "teal": 203, + "source": 54, + "pc": [ + 214 + ] + }, + { + "teal": 204, + "source": 54, + "pc": [ + 215 + ] + }, + { + "teal": 205, + "source": 54, + "pc": [ + 216 + ] + }, + { + "teal": 206, + "source": 54, + "pc": [ + 217 + ] + }, + { + "teal": 209, + "source": 54, + "errorMessage": "wideRatio failed", + "pc": [ + 218 + ] + }, + { + "teal": 210, + "source": 54, + "pc": [ + 219, + 220 + ] + }, + { + "teal": 214, + "source": 56, + "pc": [ + 221, + 222 + ] + }, + { + "teal": 215, + "source": 56, + "pc": [ + 223, + 224 + ] + }, + { + "teal": 216, + "source": 56, + "pc": [ + 225 + ] + }, + { + "teal": 217, + "source": 56, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 218, + "source": 56, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 219, + "source": 56, + "pc": [ + 231, + 232, + 233 + ] + }, + { + "teal": 222, + "source": 56, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 225, + "source": 56, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 229, + "source": 58, + "pc": [ + 238, + 239 + ] + }, + { + "teal": 230, + "source": 58, + "pc": [ + 240, + 241 + ] + }, + { + "teal": 231, + "source": 58, + "pc": [ + 242 + ] + }, + { + "teal": 232, + "source": 58, + "pc": [ + 243 + ] + }, + { + "teal": 233, + "source": 58, + "pc": [ + 244 + ] + }, + { + "teal": 234, + "source": 58, + "pc": [ + 245 + ] + }, + { + "teal": 235, + "source": 58, + "pc": [ + 246 + ] + }, + { + "teal": 236, + "source": 58, + "pc": [ + 247 + ] + }, + { + "teal": 237, + "source": 58, + "pc": [ + 248 + ] + }, + { + "teal": 238, + "source": 58, + "pc": [ + 249 + ] + }, + { + "teal": 241, + "source": 58, + "errorMessage": "wideRatio failed", + "pc": [ + 250 + ] + }, + { + "teal": 244, + "source": 52, + "pc": [ + 251, + 252 + ] + }, + { + "teal": 247, + "source": 52, + "pc": [ + 253, + 254 + ] + }, + { + "teal": 248, + "source": 52, + "pc": [ + 255 + ] + }, + { + "teal": 252, + "source": 61, + "pc": [ + 256, + 257, + 258 + ] + }, + { + "teal": 259, + "source": 63, + "pc": [ + 259, + 260 + ] + }, + { + "teal": 260, + "source": 63, + "pc": [ + 261 + ] + }, + { + "teal": 261, + "source": 63, + "pc": [ + 262 + ] + }, + { + "teal": 262, + "source": 63, + "pc": [ + 263, + 264 + ] + }, + { + "teal": 263, + "source": 63, + "pc": [ + 265 + ] + }, + { + "teal": 264, + "source": 63, + "pc": [ + 266 + ] + }, + { + "teal": 265, + "source": 62, + "pc": [ + 267 + ] + }, + { + "teal": 266, + "source": 62, + "pc": [ + 268 + ] + }, + { + "teal": 267, + "source": 64, + "pc": [ + 269, + 270 + ] + }, + { + "teal": 268, + "source": 64, + "pc": [ + 271 + ] + }, + { + "teal": 269, + "source": 64, + "pc": [ + 272 + ] + }, + { + "teal": 270, + "source": 64, + "pc": [ + 273, + 274 + ] + }, + { + "teal": 271, + "source": 64, + "pc": [ + 275 + ] + }, + { + "teal": 272, + "source": 62, + "pc": [ + 276 + ] + }, + { + "teal": 273, + "source": 62, + "pc": [ + 277 + ] + }, + { + "teal": 274, + "source": 62, + "pc": [ + 278 + ] + }, + { + "teal": 275, + "source": 62, + "pc": [ + 279 + ] + }, + { + "teal": 276, + "source": 62, + "pc": [ + 280 + ] + }, + { + "teal": 279, + "source": 62, + "errorMessage": "wideRatio failed", + "pc": [ + 281 + ] + }, + { + "teal": 280, + "source": 61, + "pc": [ + 282 + ] + }, + { + "teal": 284, + "source": 68, + "pc": [ + 283, + 284, + 285 + ] + }, + { + "teal": 288, + "source": 69, + "pc": [ + 286, + 287 + ] + }, + { + "teal": 289, + "source": 69, + "pc": [ + 288, + 289 + ] + }, + { + "teal": 290, + "source": 69, + "pc": [ + 290 + ] + }, + { + "teal": 291, + "source": 69, + "pc": [ + 291 + ] + }, + { + "teal": 292, + "source": 69, + "pc": [ + 292, + 293 + ] + }, + { + "teal": 293, + "source": 69, + "pc": [ + 294 + ] + }, + { + "teal": 294, + "source": 69, + "pc": [ + 295 + ] + }, + { + "teal": 295, + "source": 69, + "pc": [ + 296 + ] + }, + { + "teal": 296, + "source": 69, + "pc": [ + 297 + ] + }, + { + "teal": 297, + "source": 69, + "pc": [ + 298 + ] + }, + { + "teal": 300, + "source": 69, + "errorMessage": "wideRatio failed", + "pc": [ + 299 + ] + }, + { + "teal": 301, + "source": 68, + "pc": [ + 300 + ] + }, + { + "teal": 305, + "source": 72, + "pc": [ + 301, + 302, + 303 + ] + }, + { + "teal": 308, + "source": 72, + "pc": [ + 304 + ] + }, + { + "teal": 312, + "source": 73, + "pc": [ + 305, + 306, + 307 + ] + }, + { + "teal": 313, + "source": 73, + "pc": [ + 308, + 309 + ] + }, + { + "teal": 317, + "source": 74, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 318, + "source": 74, + "pc": [ + 312, + 313 + ] + }, + { + "teal": 319, + "source": 74, + "pc": [ + 314 + ] + }, + { + "teal": 320, + "source": 74, + "pc": [ + 315, + 316 + ] + }, + { + "teal": 321, + "source": 74, + "pc": [ + 317, + 318 + ] + }, + { + "teal": 322, + "source": 74, + "pc": [ + 319, + 320 + ] + }, + { + "teal": 323, + "source": 74, + "pc": [ + 321 + ] + }, + { + "teal": 324, + "source": 74, + "pc": [ + 322, + 323 + ] + }, + { + "teal": 325, + "source": 74, + "pc": [ + 324 + ] + }, + { + "teal": 326, + "source": 74, + "pc": [ + 325, + 326 + ] + }, + { + "teal": 327, + "source": 74, + "pc": [ + 327 + ] + }, + { + "teal": 328, + "source": 74, + "pc": [ + 328 + ] + }, + { + "teal": 329, + "source": 74, + "pc": [ + 329 + ] + }, + { + "teal": 330, + "source": 74, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 331, + "source": 74, + "pc": [ + 332 + ] + }, + { + "teal": 332, + "source": 74, + "pc": [ + 333 + ] + }, + { + "teal": 333, + "source": 74, + "pc": [ + 334, + 335 + ] + }, + { + "teal": 334, + "source": 74, + "pc": [ + 336, + 337 + ] + }, + { + "teal": 335, + "source": 74, + "pc": [ + 338 + ] + }, + { + "teal": 336, + "source": 74, + "pc": [ + 339 + ] + }, + { + "teal": 337, + "source": 74, + "pc": [ + 340 + ] + }, + { + "teal": 338, + "source": 74, + "pc": [ + 341 + ] + }, + { + "teal": 339, + "source": 74, + "pc": [ + 342 + ] + }, + { + "teal": 340, + "source": 74, + "pc": [ + 343 + ] + }, + { + "teal": 341, + "source": 74, + "pc": [ + 344 + ] + }, + { + "teal": 344, + "source": 74, + "errorMessage": "wideRatio failed", + "pc": [ + 345 + ] + }, + { + "teal": 347, + "source": 72, + "pc": [ + 346, + 347 + ] + }, + { + "teal": 348, + "source": 72, + "pc": [ + 348 + ] + }, + { + "teal": 353, + "source": 77, + "pc": [ + 349, + 350, + 351 + ] + }, + { + "teal": 354, + "source": 77, + "pc": [ + 352 + ] + }, + { + "teal": 355, + "source": 77, + "pc": [ + 353 + ] + }, + { + "teal": 356, + "source": 77, + "pc": [ + 354, + 355 + ] + }, + { + "teal": 357, + "source": 77, + "pc": [ + 356 + ] + }, + { + "teal": 360, + "source": 77, + "errorMessage": "argument 0 (governor) for set_governor must be a address", + "pc": [ + 357 + ] + }, + { + "teal": 363, + "source": 77, + "pc": [ + 358, + 359, + 360 + ] + }, + { + "teal": 364, + "source": 77, + "pc": [ + 361 + ] + }, + { + "teal": 365, + "source": 77, + "pc": [ + 362 + ] + }, + { + "teal": 369, + "source": 77, + "pc": [ + 363, + 364, + 365 + ] + }, + { + "teal": 374, + "source": 78, + "pc": [ + 366, + 367 + ] + }, + { + "teal": 375, + "source": 78, + "pc": [ + 368 + ] + }, + { + "teal": 376, + "source": 78, + "pc": [ + 369 + ] + }, + { + "teal": 377, + "source": 78, + "pc": [ + 370 + ] + }, + { + "teal": 380, + "source": 78, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.governor.value\"}", + "pc": [ + 371 + ] + }, + { + "teal": 384, + "source": 79, + "pc": [ + 372 + ] + }, + { + "teal": 385, + "source": 79, + "pc": [ + 373, + 374 + ] + }, + { + "teal": 386, + "source": 79, + "pc": [ + 375 + ] + }, + { + "teal": 387, + "source": 77, + "pc": [ + 376 + ] + }, + { + "teal": 392, + "source": 82, + "pc": [ + 377, + 378, + 379, + 380, + 381, + 382 + ] + }, + { + "teal": 395, + "source": 82, + "pc": [ + 383, + 384, + 385 + ] + }, + { + "teal": 396, + "source": 82, + "pc": [ + 386 + ] + }, + { + "teal": 399, + "source": 82, + "pc": [ + 387, + 388, + 389 + ] + }, + { + "teal": 400, + "source": 82, + "pc": [ + 390 + ] + }, + { + "teal": 403, + "source": 82, + "pc": [ + 391, + 392 + ] + }, + { + "teal": 404, + "source": 82, + "pc": [ + 393 + ] + }, + { + "teal": 405, + "source": 82, + "pc": [ + 394 + ] + }, + { + "teal": 406, + "source": 82, + "pc": [ + 395 + ] + }, + { + "teal": 407, + "source": 82, + "pc": [ + 396, + 397 + ] + }, + { + "teal": 408, + "source": 82, + "pc": [ + 398 + ] + }, + { + "teal": 409, + "source": 82, + "pc": [ + 399 + ] + }, + { + "teal": 412, + "source": 82, + "errorMessage": "argument 2 (seed) for bootstrap must be a pay transaction", + "pc": [ + 400 + ] + }, + { + "teal": 415, + "source": 82, + "pc": [ + 401, + 402, + 403 + ] + }, + { + "teal": 416, + "source": 82, + "pc": [ + 404 + ] + }, + { + "teal": 417, + "source": 82, + "pc": [ + 405 + ] + }, + { + "teal": 418, + "source": 82, + "pc": [ + 406 + ] + }, + { + "teal": 419, + "source": 82, + "pc": [ + 407 + ] + }, + { + "teal": 420, + "source": 82, + "pc": [ + 408 + ] + }, + { + "teal": 424, + "source": 82, + "pc": [ + 409, + 410, + 411 + ] + }, + { + "teal": 429, + "source": 83, + "pc": [ + 412, + 413 + ] + }, + { + "teal": 430, + "source": 83, + "pc": [ + 414 + ] + }, + { + "teal": 431, + "source": 83, + "pc": [ + 415 + ] + }, + { + "teal": 432, + "source": 83, + "pc": [ + 416 + ] + }, + { + "teal": 435, + "source": 83, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.governor.value\"}", + "pc": [ + 417 + ] + }, + { + "teal": 439, + "source": 85, + "pc": [ + 418, + 419 + ] + }, + { + "teal": 440, + "source": 85, + "pc": [ + 420, + 421 + ] + }, + { + "teal": 441, + "source": 85, + "pc": [ + 422 + ] + }, + { + "teal": 442, + "source": 85, + "pc": [ + 423 + ] + }, + { + "teal": 447, + "source": 87, + "pc": [ + 424, + 425 + ] + }, + { + "teal": 448, + "source": 87, + "pc": [ + 426, + 427 + ] + }, + { + "teal": 449, + "source": 87, + "pc": [ + 428, + 429 + ] + }, + { + "teal": 450, + "source": 87, + "pc": [ + 430 + ] + }, + { + "teal": 453, + "source": 87, + "errorMessage": "transaction verification failed: {\"txn\":\"seed\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 431 + ] + }, + { + "teal": 456, + "source": 87, + "pc": [ + 432, + 433 + ] + }, + { + "teal": 457, + "source": 87, + "pc": [ + 434, + 435 + ] + }, + { + "teal": 458, + "source": 87, + "pc": [ + 436, + 437, + 438, + 439 + ] + }, + { + "teal": 459, + "source": 87, + "pc": [ + 440 + ] + }, + { + "teal": 462, + "source": 87, + "errorMessage": "transaction verification failed: {\"txn\":\"seed\",\"field\":\"amount\",\"condition\":\"greaterThanEqualTo\",\"expected\":\">=300_000\"}", + "pc": [ + 441 + ] + }, + { + "teal": 466, + "source": 88, + "pc": [ + 442, + 443 + ] + }, + { + "teal": 467, + "source": 88, + "pc": [ + 444, + 445 + ] + }, + { + "teal": 468, + "source": 88, + "pc": [ + 446 + ] + }, + { + "teal": 469, + "source": 88, + "pc": [ + 447 + ] + }, + { + "teal": 473, + "source": 90, + "pc": [ + 448 + ] + }, + { + "teal": 474, + "source": 90, + "pc": [ + 449, + 450 + ] + }, + { + "teal": 475, + "source": 90, + "pc": [ + 451 + ] + }, + { + "teal": 479, + "source": 91, + "pc": [ + 452 + ] + }, + { + "teal": 480, + "source": 91, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 481, + "source": 91, + "pc": [ + 455 + ] + }, + { + "teal": 485, + "source": 92, + "pc": [ + 456, + 457 + ] + }, + { + "teal": 486, + "source": 92, + "pc": [ + 458, + 459 + ] + }, + { + "teal": 487, + "source": 92, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 488, + "source": 92, + "pc": [ + 462, + 463, + 464 + ] + }, + { + "teal": 489, + "source": 92, + "pc": [ + 465 + ] + }, + { + "teal": 493, + "source": 94, + "pc": [ + 466, + 467 + ] + }, + { + "teal": 494, + "source": 94, + "pc": [ + 468, + 469, + 470 + ] + }, + { + "teal": 498, + "source": 95, + "pc": [ + 471, + 472 + ] + }, + { + "teal": 499, + "source": 95, + "pc": [ + 473, + 474, + 475 + ] + }, + { + "teal": 503, + "source": 97, + "pc": [ + 476, + 477 + ] + }, + { + "teal": 504, + "source": 97, + "pc": [ + 478 + ] + }, + { + "teal": 505, + "source": 82, + "pc": [ + 479 + ] + }, + { + "teal": 510, + "source": 100, + "pc": [ + 480, + 481, + 482 + ] + }, + { + "teal": 511, + "source": 100, + "pc": [ + 483 + ] + }, + { + "teal": 514, + "source": 100, + "pc": [ + 484, + 485, + 486 + ] + }, + { + "teal": 515, + "source": 100, + "pc": [ + 487 + ] + }, + { + "teal": 518, + "source": 100, + "pc": [ + 488, + 489, + 490 + ] + }, + { + "teal": 519, + "source": 100, + "pc": [ + 491 + ] + }, + { + "teal": 522, + "source": 100, + "pc": [ + 492, + 493 + ] + }, + { + "teal": 523, + "source": 100, + "pc": [ + 494 + ] + }, + { + "teal": 524, + "source": 100, + "pc": [ + 495 + ] + }, + { + "teal": 525, + "source": 100, + "pc": [ + 496 + ] + }, + { + "teal": 526, + "source": 100, + "pc": [ + 497, + 498 + ] + }, + { + "teal": 527, + "source": 100, + "pc": [ + 499 + ] + }, + { + "teal": 528, + "source": 100, + "pc": [ + 500 + ] + }, + { + "teal": 531, + "source": 100, + "errorMessage": "argument 3 (bXfer) for mint must be a axfer transaction", + "pc": [ + 501 + ] + }, + { + "teal": 534, + "source": 100, + "pc": [ + 502, + 503 + ] + }, + { + "teal": 535, + "source": 100, + "pc": [ + 504, + 505 + ] + }, + { + "teal": 536, + "source": 100, + "pc": [ + 506 + ] + }, + { + "teal": 537, + "source": 100, + "pc": [ + 507 + ] + }, + { + "teal": 538, + "source": 100, + "pc": [ + 508, + 509 + ] + }, + { + "teal": 539, + "source": 100, + "pc": [ + 510 + ] + }, + { + "teal": 540, + "source": 100, + "pc": [ + 511 + ] + }, + { + "teal": 543, + "source": 100, + "errorMessage": "argument 4 (aXfer) for mint must be a axfer transaction", + "pc": [ + 512 + ] + }, + { + "teal": 546, + "source": 100, + "pc": [ + 513, + 514, + 515 + ] + }, + { + "teal": 547, + "source": 100, + "pc": [ + 516 + ] + }, + { + "teal": 548, + "source": 100, + "pc": [ + 517 + ] + }, + { + "teal": 552, + "source": 100, + "pc": [ + 518, + 519, + 520 + ] + }, + { + "teal": 555, + "source": 100, + "pc": [ + 521 + ] + }, + { + "teal": 560, + "source": 102, + "pc": [ + 522, + 523 + ] + }, + { + "teal": 561, + "source": 102, + "pc": [ + 524 + ] + }, + { + "teal": 562, + "source": 102, + "pc": [ + 525 + ] + }, + { + "teal": 563, + "source": 102, + "pc": [ + 526 + ] + }, + { + "teal": 564, + "source": 102, + "pc": [ + 527 + ] + }, + { + "teal": 568, + "source": 103, + "pc": [ + 528, + 529 + ] + }, + { + "teal": 569, + "source": 103, + "pc": [ + 530 + ] + }, + { + "teal": 570, + "source": 103, + "pc": [ + 531 + ] + }, + { + "teal": 571, + "source": 103, + "pc": [ + 532 + ] + }, + { + "teal": 572, + "source": 103, + "pc": [ + 533 + ] + }, + { + "teal": 576, + "source": 104, + "pc": [ + 534, + 535 + ] + }, + { + "teal": 577, + "source": 104, + "pc": [ + 536, + 537 + ] + }, + { + "teal": 578, + "source": 104, + "pc": [ + 538 + ] + }, + { + "teal": 579, + "source": 104, + "pc": [ + 539 + ] + }, + { + "teal": 580, + "source": 104, + "pc": [ + 540 + ] + }, + { + "teal": 591, + "source": 107, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 592, + "source": 108, + "pc": [ + 543, + 544 + ] + }, + { + "teal": 593, + "source": 108, + "pc": [ + 545, + 546 + ] + }, + { + "teal": 594, + "source": 108, + "pc": [ + 547 + ] + }, + { + "teal": 597, + "source": 108, + "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", + "pc": [ + 548 + ] + }, + { + "teal": 600, + "source": 107, + "pc": [ + 549, + 550 + ] + }, + { + "teal": 601, + "source": 109, + "pc": [ + 551, + 552 + ] + }, + { + "teal": 602, + "source": 109, + "pc": [ + 553 + ] + }, + { + "teal": 603, + "source": 109, + "pc": [ + 554 + ] + }, + { + "teal": 606, + "source": 109, + "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", + "pc": [ + 555 + ] + }, + { + "teal": 609, + "source": 107, + "pc": [ + 556, + 557 + ] + }, + { + "teal": 610, + "source": 110, + "pc": [ + 558, + 559 + ] + }, + { + "teal": 611, + "source": 110, + "pc": [ + 560, + 561 + ] + }, + { + "teal": 612, + "source": 110, + "pc": [ + 562 + ] + }, + { + "teal": 615, + "source": 110, + "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 563 + ] + }, + { + "teal": 618, + "source": 107, + "pc": [ + 564, + 565 + ] + }, + { + "teal": 619, + "source": 111, + "pc": [ + 566, + 567 + ] + }, + { + "teal": 620, + "source": 111, + "pc": [ + 568, + 569 + ] + }, + { + "teal": 621, + "source": 111, + "pc": [ + 570 + ] + }, + { + "teal": 624, + "source": 111, + "errorMessage": "transaction verification failed: {\"txn\":\"aXfer\",\"field\":\"xferAsset\",\"expected\":\"aAsset\"}", + "pc": [ + 571 + ] + }, + { + "teal": 635, + "source": 115, + "pc": [ + 572, + 573 + ] + }, + { + "teal": 636, + "source": 116, + "pc": [ + 574, + 575 + ] + }, + { + "teal": 637, + "source": 116, + "pc": [ + 576, + 577 + ] + }, + { + "teal": 638, + "source": 116, + "pc": [ + 578 + ] + }, + { + "teal": 641, + "source": 116, + "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", + "pc": [ + 579 + ] + }, + { + "teal": 644, + "source": 115, + "pc": [ + 580, + 581 + ] + }, + { + "teal": 645, + "source": 117, + "pc": [ + 582, + 583 + ] + }, + { + "teal": 646, + "source": 117, + "pc": [ + 584 + ] + }, + { + "teal": 647, + "source": 117, + "pc": [ + 585 + ] + }, + { + "teal": 650, + "source": 117, + "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", + "pc": [ + 586 + ] + }, + { + "teal": 653, + "source": 115, + "pc": [ + 587, + 588 + ] + }, + { + "teal": 654, + "source": 118, + "pc": [ + 589, + 590 + ] + }, + { + "teal": 655, + "source": 118, + "pc": [ + 591, + 592 + ] + }, + { + "teal": 656, + "source": 118, + "pc": [ + 593 + ] + }, + { + "teal": 659, + "source": 118, + "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 594 + ] + }, + { + "teal": 662, + "source": 115, + "pc": [ + 595, + 596 + ] + }, + { + "teal": 663, + "source": 119, + "pc": [ + 597, + 598 + ] + }, + { + "teal": 664, + "source": 119, + "pc": [ + 599, + 600 + ] + }, + { + "teal": 665, + "source": 119, + "pc": [ + 601 + ] + }, + { + "teal": 668, + "source": 119, + "errorMessage": "transaction verification failed: {\"txn\":\"bXfer\",\"field\":\"xferAsset\",\"expected\":\"bAsset\"}", + "pc": [ + 602 + ] + }, + { + "teal": 674, + "source": 123, + "pc": [ + 603, + 604 + ] + }, + { + "teal": 675, + "source": 123, + "pc": [ + 605, + 606 + ] + }, + { + "teal": 676, + "source": 123, + "pc": [ + 607, + 608 + ] + }, + { + "teal": 677, + "source": 123, + "pc": [ + 609 + ] + }, + { + "teal": 678, + "source": 123, + "pc": [ + 610, + 611 + ] + }, + { + "teal": 679, + "source": 123, + "pc": [ + 612, + 613 + ] + }, + { + "teal": 680, + "source": 123, + "pc": [ + 614 + ] + }, + { + "teal": 681, + "source": 123, + "pc": [ + 615 + ] + }, + { + "teal": 682, + "source": 123, + "pc": [ + 616, + 617, + 618 + ] + }, + { + "teal": 683, + "source": 124, + "pc": [ + 619, + 620 + ] + }, + { + "teal": 684, + "source": 124, + "pc": [ + 621, + 622 + ] + }, + { + "teal": 685, + "source": 124, + "pc": [ + 623, + 624 + ] + }, + { + "teal": 686, + "source": 124, + "pc": [ + 625 + ] + }, + { + "teal": 687, + "source": 124, + "pc": [ + 626, + 627 + ] + }, + { + "teal": 688, + "source": 124, + "pc": [ + 628, + 629 + ] + }, + { + "teal": 689, + "source": 124, + "pc": [ + 630 + ] + }, + { + "teal": 690, + "source": 123, + "pc": [ + 631 + ] + }, + { + "teal": 693, + "source": 122, + "pc": [ + 632, + 633, + 634 + ] + }, + { + "teal": 698, + "source": 126, + "pc": [ + 635, + 636 + ] + }, + { + "teal": 699, + "source": 126, + "pc": [ + 637, + 638 + ] + }, + { + "teal": 700, + "source": 126, + "pc": [ + 639, + 640 + ] + }, + { + "teal": 701, + "source": 126, + "pc": [ + 641, + 642 + ] + }, + { + "teal": 702, + "source": 126, + "pc": [ + 643, + 644, + 645 + ] + }, + { + "teal": 703, + "source": 122, + "pc": [ + 646, + 647, + 648 + ] + }, + { + "teal": 714, + "source": 133, + "pc": [ + 649, + 650 + ] + }, + { + "teal": 715, + "source": 133, + "pc": [ + 651, + 652 + ] + }, + { + "teal": 716, + "source": 132, + "pc": [ + 653, + 654 + ] + }, + { + "teal": 717, + "source": 132, + "pc": [ + 655, + 656 + ] + }, + { + "teal": 718, + "source": 131, + "pc": [ + 657, + 658 + ] + }, + { + "teal": 719, + "source": 131, + "pc": [ + 659, + 660 + ] + }, + { + "teal": 720, + "source": 131, + "pc": [ + 661, + 662 + ] + }, + { + "teal": 721, + "source": 131, + "pc": [ + 663 + ] + }, + { + "teal": 722, + "source": 131, + "pc": [ + 664, + 665 + ] + }, + { + "teal": 723, + "source": 131, + "pc": [ + 666, + 667 + ] + }, + { + "teal": 724, + "source": 131, + "pc": [ + 668 + ] + }, + { + "teal": 725, + "source": 130, + "pc": [ + 669, + 670 + ] + }, + { + "teal": 726, + "source": 130, + "pc": [ + 671, + 672 + ] + }, + { + "teal": 727, + "source": 130, + "pc": [ + 673, + 674 + ] + }, + { + "teal": 728, + "source": 130, + "pc": [ + 675 + ] + }, + { + "teal": 729, + "source": 130, + "pc": [ + 676, + 677 + ] + }, + { + "teal": 730, + "source": 130, + "pc": [ + 678, + 679 + ] + }, + { + "teal": 731, + "source": 130, + "pc": [ + 680 + ] + }, + { + "teal": 732, + "source": 129, + "pc": [ + 681, + 682 + ] + }, + { + "teal": 733, + "source": 129, + "pc": [ + 683, + 684 + ] + }, + { + "teal": 734, + "source": 129, + "pc": [ + 685, + 686 + ] + }, + { + "teal": 735, + "source": 129, + "pc": [ + 687, + 688 + ] + }, + { + "teal": 736, + "source": 129, + "pc": [ + 689 + ] + }, + { + "teal": 737, + "source": 129, + "pc": [ + 690 + ] + }, + { + "teal": 738, + "source": 128, + "pc": [ + 691, + 692, + 693 + ] + }, + { + "teal": 739, + "source": 128, + "pc": [ + 694, + 695 + ] + }, + { + "teal": 743, + "source": 136, + "pc": [ + 696, + 697 + ] + }, + { + "teal": 744, + "source": 136, + "pc": [ + 698 + ] + }, + { + "teal": 745, + "source": 136, + "pc": [ + 699 + ] + }, + { + "teal": 746, + "source": 136, + "pc": [ + 700 + ] + }, + { + "teal": 750, + "source": 138, + "pc": [ + 701, + 702 + ] + }, + { + "teal": 751, + "source": 138, + "pc": [ + 703, + 704 + ] + }, + { + "teal": 752, + "source": 138, + "pc": [ + 705, + 706 + ] + }, + { + "teal": 753, + "source": 138, + "pc": [ + 707, + 708, + 709 + ] + }, + { + "teal": 756, + "source": 100, + "pc": [ + 710 + ] + }, + { + "teal": 761, + "source": 142, + "pc": [ + 711, + 712, + 713 + ] + }, + { + "teal": 762, + "source": 142, + "pc": [ + 714 + ] + }, + { + "teal": 765, + "source": 142, + "pc": [ + 715, + 716, + 717 + ] + }, + { + "teal": 766, + "source": 142, + "pc": [ + 718 + ] + }, + { + "teal": 769, + "source": 142, + "pc": [ + 719, + 720, + 721 + ] + }, + { + "teal": 770, + "source": 142, + "pc": [ + 722 + ] + }, + { + "teal": 773, + "source": 142, + "pc": [ + 723, + 724 + ] + }, + { + "teal": 774, + "source": 142, + "pc": [ + 725 + ] + }, + { + "teal": 775, + "source": 142, + "pc": [ + 726 + ] + }, + { + "teal": 776, + "source": 142, + "pc": [ + 727 + ] + }, + { + "teal": 777, + "source": 142, + "pc": [ + 728, + 729 + ] + }, + { + "teal": 778, + "source": 142, + "pc": [ + 730 + ] + }, + { + "teal": 779, + "source": 142, + "pc": [ + 731 + ] + }, + { + "teal": 782, + "source": 142, + "errorMessage": "argument 3 (poolXfer) for burn must be a axfer transaction", + "pc": [ + 732 + ] + }, + { + "teal": 785, + "source": 142, + "pc": [ + 733, + 734, + 735 + ] + }, + { + "teal": 786, + "source": 142, + "pc": [ + 736 + ] + }, + { + "teal": 787, + "source": 142, + "pc": [ + 737 + ] + }, + { + "teal": 791, + "source": 142, + "pc": [ + 738, + 739, + 740 + ] + }, + { + "teal": 794, + "source": 142, + "pc": [ + 741 + ] + }, + { + "teal": 795, + "source": 142, + "pc": [ + 742, + 743 + ] + }, + { + "teal": 800, + "source": 144, + "pc": [ + 744, + 745 + ] + }, + { + "teal": 801, + "source": 144, + "pc": [ + 746, + 747 + ] + }, + { + "teal": 802, + "source": 144, + "pc": [ + 748 + ] + }, + { + "teal": 803, + "source": 144, + "pc": [ + 749 + ] + }, + { + "teal": 804, + "source": 144, + "pc": [ + 750 + ] + }, + { + "teal": 808, + "source": 145, + "pc": [ + 751, + 752 + ] + }, + { + "teal": 809, + "source": 145, + "pc": [ + 753 + ] + }, + { + "teal": 810, + "source": 145, + "pc": [ + 754 + ] + }, + { + "teal": 811, + "source": 145, + "pc": [ + 755 + ] + }, + { + "teal": 812, + "source": 145, + "pc": [ + 756 + ] + }, + { + "teal": 816, + "source": 146, + "pc": [ + 757, + 758 + ] + }, + { + "teal": 817, + "source": 146, + "pc": [ + 759 + ] + }, + { + "teal": 818, + "source": 146, + "pc": [ + 760 + ] + }, + { + "teal": 819, + "source": 146, + "pc": [ + 761 + ] + }, + { + "teal": 820, + "source": 146, + "pc": [ + 762 + ] + }, + { + "teal": 831, + "source": 149, + "pc": [ + 763, + 764 + ] + }, + { + "teal": 832, + "source": 150, + "pc": [ + 765, + 766 + ] + }, + { + "teal": 833, + "source": 150, + "pc": [ + 767, + 768 + ] + }, + { + "teal": 834, + "source": 150, + "pc": [ + 769 + ] + }, + { + "teal": 837, + "source": 150, + "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", + "pc": [ + 770 + ] + }, + { + "teal": 840, + "source": 149, + "pc": [ + 771, + 772 + ] + }, + { + "teal": 841, + "source": 151, + "pc": [ + 773, + 774 + ] + }, + { + "teal": 842, + "source": 151, + "pc": [ + 775 + ] + }, + { + "teal": 843, + "source": 151, + "pc": [ + 776 + ] + }, + { + "teal": 846, + "source": 151, + "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", + "pc": [ + 777 + ] + }, + { + "teal": 849, + "source": 149, + "pc": [ + 778, + 779 + ] + }, + { + "teal": 850, + "source": 152, + "pc": [ + 780, + 781 + ] + }, + { + "teal": 851, + "source": 152, + "pc": [ + 782, + 783 + ] + }, + { + "teal": 852, + "source": 152, + "pc": [ + 784 + ] + }, + { + "teal": 855, + "source": 152, + "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 785 + ] + }, + { + "teal": 858, + "source": 149, + "pc": [ + 786, + 787 + ] + }, + { + "teal": 859, + "source": 153, + "pc": [ + 788, + 789 + ] + }, + { + "teal": 860, + "source": 153, + "pc": [ + 790, + 791 + ] + }, + { + "teal": 861, + "source": 153, + "pc": [ + 792 + ] + }, + { + "teal": 864, + "source": 153, + "errorMessage": "transaction verification failed: {\"txn\":\"poolXfer\",\"field\":\"xferAsset\",\"expected\":\"poolAsset\"}", + "pc": [ + 793 + ] + }, + { + "teal": 868, + "source": 156, + "pc": [ + 794, + 795 + ] + }, + { + "teal": 869, + "source": 156, + "pc": [ + 796, + 797 + ] + }, + { + "teal": 870, + "source": 156, + "pc": [ + 798, + 799 + ] + }, + { + "teal": 871, + "source": 156, + "pc": [ + 800, + 801 + ] + }, + { + "teal": 872, + "source": 156, + "pc": [ + 802 + ] + }, + { + "teal": 873, + "source": 156, + "pc": [ + 803, + 804 + ] + }, + { + "teal": 874, + "source": 156, + "pc": [ + 805, + 806 + ] + }, + { + "teal": 875, + "source": 156, + "pc": [ + 807 + ] + }, + { + "teal": 876, + "source": 156, + "pc": [ + 808 + ] + }, + { + "teal": 877, + "source": 156, + "pc": [ + 809, + 810 + ] + }, + { + "teal": 881, + "source": 158, + "pc": [ + 811, + 812 + ] + }, + { + "teal": 882, + "source": 158, + "pc": [ + 813, + 814 + ] + }, + { + "teal": 883, + "source": 158, + "pc": [ + 815, + 816 + ] + }, + { + "teal": 884, + "source": 158, + "pc": [ + 817, + 818 + ] + }, + { + "teal": 885, + "source": 158, + "pc": [ + 819, + 820 + ] + }, + { + "teal": 886, + "source": 158, + "pc": [ + 821 + ] + }, + { + "teal": 887, + "source": 158, + "pc": [ + 822, + 823 + ] + }, + { + "teal": 888, + "source": 158, + "pc": [ + 824, + 825, + 826 + ] + }, + { + "teal": 889, + "source": 158, + "pc": [ + 827, + 828 + ] + }, + { + "teal": 893, + "source": 160, + "pc": [ + 829, + 830 + ] + }, + { + "teal": 894, + "source": 160, + "pc": [ + 831, + 832 + ] + }, + { + "teal": 895, + "source": 160, + "pc": [ + 833, + 834 + ] + }, + { + "teal": 896, + "source": 160, + "pc": [ + 835, + 836 + ] + }, + { + "teal": 897, + "source": 160, + "pc": [ + 837, + 838 + ] + }, + { + "teal": 898, + "source": 160, + "pc": [ + 839 + ] + }, + { + "teal": 899, + "source": 160, + "pc": [ + 840, + 841 + ] + }, + { + "teal": 900, + "source": 160, + "pc": [ + 842, + 843, + 844 + ] + }, + { + "teal": 901, + "source": 160, + "pc": [ + 845, + 846 + ] + }, + { + "teal": 905, + "source": 162, + "pc": [ + 847, + 848 + ] + }, + { + "teal": 906, + "source": 162, + "pc": [ + 849, + 850 + ] + }, + { + "teal": 907, + "source": 162, + "pc": [ + 851, + 852 + ] + }, + { + "teal": 908, + "source": 162, + "pc": [ + 853, + 854, + 855 + ] + }, + { + "teal": 912, + "source": 163, + "pc": [ + 856, + 857 + ] + }, + { + "teal": 913, + "source": 163, + "pc": [ + 858, + 859 + ] + }, + { + "teal": 914, + "source": 163, + "pc": [ + 860, + 861 + ] + }, + { + "teal": 915, + "source": 163, + "pc": [ + 862, + 863, + 864 + ] + }, + { + "teal": 919, + "source": 165, + "pc": [ + 865, + 866 + ] + }, + { + "teal": 920, + "source": 165, + "pc": [ + 867, + 868, + 869 + ] + }, + { + "teal": 921, + "source": 165, + "pc": [ + 870 + ] + }, + { + "teal": 922, + "source": 142, + "pc": [ + 871 + ] + }, + { + "teal": 927, + "source": 168, + "pc": [ + 872, + 873, + 874 + ] + }, + { + "teal": 928, + "source": 168, + "pc": [ + 875 + ] + }, + { + "teal": 931, + "source": 168, + "pc": [ + 876, + 877, + 878 + ] + }, + { + "teal": 932, + "source": 168, + "pc": [ + 879 + ] + }, + { + "teal": 935, + "source": 168, + "pc": [ + 880, + 881 + ] + }, + { + "teal": 936, + "source": 168, + "pc": [ + 882 + ] + }, + { + "teal": 937, + "source": 168, + "pc": [ + 883 + ] + }, + { + "teal": 938, + "source": 168, + "pc": [ + 884 + ] + }, + { + "teal": 939, + "source": 168, + "pc": [ + 885, + 886 + ] + }, + { + "teal": 940, + "source": 168, + "pc": [ + 887 + ] + }, + { + "teal": 941, + "source": 168, + "pc": [ + 888 + ] + }, + { + "teal": 944, + "source": 168, + "errorMessage": "argument 2 (swapXfer) for swap must be a axfer transaction", + "pc": [ + 889 + ] + }, + { + "teal": 947, + "source": 168, + "pc": [ + 890, + 891, + 892 + ] + }, + { + "teal": 948, + "source": 168, + "pc": [ + 893 + ] + }, + { + "teal": 949, + "source": 168, + "pc": [ + 894 + ] + }, + { + "teal": 953, + "source": 168, + "pc": [ + 895, + 896, + 897 + ] + }, + { + "teal": 956, + "source": 168, + "pc": [ + 898 + ] + }, + { + "teal": 957, + "source": 168, + "pc": [ + 899, + 900 + ] + }, + { + "teal": 962, + "source": 170, + "pc": [ + 901, + 902 + ] + }, + { + "teal": 963, + "source": 170, + "pc": [ + 903 + ] + }, + { + "teal": 964, + "source": 170, + "pc": [ + 904 + ] + }, + { + "teal": 965, + "source": 170, + "pc": [ + 905 + ] + }, + { + "teal": 966, + "source": 170, + "pc": [ + 906 + ] + }, + { + "teal": 970, + "source": 171, + "pc": [ + 907, + 908 + ] + }, + { + "teal": 971, + "source": 171, + "pc": [ + 909 + ] + }, + { + "teal": 972, + "source": 171, + "pc": [ + 910 + ] + }, + { + "teal": 973, + "source": 171, + "pc": [ + 911 + ] + }, + { + "teal": 974, + "source": 171, + "pc": [ + 912 + ] + }, + { + "teal": 984, + "source": 173, + "pc": [ + 913, + 914 + ] + }, + { + "teal": 985, + "source": 174, + "pc": [ + 915, + 916 + ] + }, + { + "teal": 986, + "source": 174, + "pc": [ + 917 + ] + }, + { + "teal": 987, + "source": 174, + "pc": [ + 918 + ] + }, + { + "teal": 990, + "source": 174, + "errorMessage": "transaction verification failed: {\"txn\":\"swapXfer\",\"field\":\"assetAmount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", + "pc": [ + 919 + ] + }, + { + "teal": 993, + "source": 173, + "pc": [ + 920, + 921 + ] + }, + { + "teal": 994, + "source": 175, + "pc": [ + 922, + 923 + ] + }, + { + "teal": 995, + "source": 175, + "pc": [ + 924, + 925 + ] + }, + { + "teal": 996, + "source": 175, + "pc": [ + 926 + ] + }, + { + "teal": 999, + "source": 175, + "errorMessage": "transaction verification failed: {\"txn\":\"swapXfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 927 + ] + }, + { + "teal": 1002, + "source": 173, + "pc": [ + 928, + 929 + ] + }, + { + "teal": 1003, + "source": 176, + "pc": [ + 930, + 931 + ] + }, + { + "teal": 1004, + "source": 176, + "pc": [ + 932, + 933 + ] + }, + { + "teal": 1005, + "source": 176, + "pc": [ + 934 + ] + }, + { + "teal": 1008, + "source": 176, + "errorMessage": "transaction verification failed: {\"txn\":\"swapXfer\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", + "pc": [ + 935 + ] + }, + { + "teal": 1011, + "source": 173, + "pc": [ + 936, + 937 + ] + }, + { + "teal": 1012, + "source": 177, + "pc": [ + 938, + 939 + ] + }, + { + "teal": 1013, + "source": 177, + "pc": [ + 940, + 941 + ] + }, + { + "teal": 1014, + "source": 177, + "pc": [ + 942 + ] + }, + { + "teal": 1015, + "source": 173, + "pc": [ + 943, + 944 + ] + }, + { + "teal": 1016, + "source": 177, + "pc": [ + 945, + 946 + ] + }, + { + "teal": 1017, + "source": 177, + "pc": [ + 947, + 948 + ] + }, + { + "teal": 1018, + "source": 177, + "pc": [ + 949 + ] + }, + { + "teal": 1019, + "source": 177, + "pc": [ + 950 + ] + }, + { + "teal": 1022, + "source": 177, + "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"swapXfer\"},\"field\":\"xferAsset\",\"condition\":\"includedIn\",\"expected\":\"[aAsset, bAsset]\"}", + "pc": [ + 951 + ] + }, + { + "teal": 1026, + "source": 180, + "pc": [ + 952, + 953 + ] + }, + { + "teal": 1027, + "source": 180, + "pc": [ + 954, + 955 + ] + }, + { + "teal": 1028, + "source": 180, + "pc": [ + 956, + 957 + ] + }, + { + "teal": 1029, + "source": 180, + "pc": [ + 958 + ] + }, + { + "teal": 1030, + "source": 180, + "pc": [ + 959, + 960, + 961 + ] + }, + { + "teal": 1031, + "source": 180, + "pc": [ + 962, + 963 + ] + }, + { + "teal": 1032, + "source": 180, + "pc": [ + 964, + 965, + 966 + ] + }, + { + "teal": 1035, + "source": 180, + "pc": [ + 967, + 968 + ] + }, + { + "teal": 1038, + "source": 180, + "pc": [ + 969, + 970 + ] + }, + { + "teal": 1042, + "source": 182, + "pc": [ + 971, + 972 + ] + }, + { + "teal": 1043, + "source": 182, + "pc": [ + 973, + 974 + ] + }, + { + "teal": 1044, + "source": 182, + "pc": [ + 975, + 976 + ] + }, + { + "teal": 1052, + "source": 187, + "pc": [ + 977, + 978 + ] + }, + { + "teal": 1053, + "source": 187, + "pc": [ + 979, + 980 + ] + }, + { + "teal": 1054, + "source": 187, + "pc": [ + 981, + 982 + ] + }, + { + "teal": 1055, + "source": 187, + "pc": [ + 983 + ] + }, + { + "teal": 1056, + "source": 186, + "pc": [ + 984, + 985 + ] + }, + { + "teal": 1057, + "source": 186, + "pc": [ + 986, + 987 + ] + }, + { + "teal": 1058, + "source": 186, + "pc": [ + 988, + 989 + ] + }, + { + "teal": 1059, + "source": 186, + "pc": [ + 990 + ] + }, + { + "teal": 1060, + "source": 186, + "pc": [ + 991, + 992 + ] + }, + { + "teal": 1061, + "source": 186, + "pc": [ + 993, + 994 + ] + }, + { + "teal": 1062, + "source": 186, + "pc": [ + 995 + ] + }, + { + "teal": 1063, + "source": 185, + "pc": [ + 996, + 997 + ] + }, + { + "teal": 1064, + "source": 185, + "pc": [ + 998, + 999 + ] + }, + { + "teal": 1065, + "source": 184, + "pc": [ + 1000, + 1001, + 1002 + ] + }, + { + "teal": 1066, + "source": 184, + "pc": [ + 1003, + 1004 + ] + }, + { + "teal": 1070, + "source": 190, + "pc": [ + 1005, + 1006 + ] + }, + { + "teal": 1071, + "source": 190, + "pc": [ + 1007 + ] + }, + { + "teal": 1072, + "source": 190, + "pc": [ + 1008 + ] + }, + { + "teal": 1073, + "source": 190, + "pc": [ + 1009 + ] + }, + { + "teal": 1077, + "source": 192, + "pc": [ + 1010, + 1011 + ] + }, + { + "teal": 1078, + "source": 192, + "pc": [ + 1012, + 1013 + ] + }, + { + "teal": 1079, + "source": 192, + "pc": [ + 1014, + 1015 + ] + }, + { + "teal": 1080, + "source": 192, + "pc": [ + 1016, + 1017, + 1018 + ] + }, + { + "teal": 1084, + "source": 194, + "pc": [ + 1019, + 1020 + ] + }, + { + "teal": 1085, + "source": 194, + "pc": [ + 1021, + 1022, + 1023 + ] + }, + { + "teal": 1086, + "source": 194, + "pc": [ + 1024 + ] + }, + { + "teal": 1087, + "source": 168, + "pc": [ + 1025 + ] + }, + { + "teal": 1090, + "source": 8, + "pc": [ + 1026, + 1027, + 1028, + 1029, + 1030, + 1031 + ] + }, + { + "teal": 1091, + "source": 8, + "pc": [ + 1032, + 1033, + 1034 + ] + }, + { + "teal": 1092, + "source": 8, + "pc": [ + 1035, + 1036, + 1037, + 1038 + ] + }, + { + "teal": 1095, + "source": 8, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 1039 + ] + }, + { + "teal": 1098, + "source": 8, + "pc": [ + 1040, + 1041, + 1042, + 1043, + 1044, + 1045 + ] + }, + { + "teal": 1099, + "source": 8, + "pc": [ + 1046, + 1047, + 1048, + 1049, + 1050, + 1051 + ] + }, + { + "teal": 1100, + "source": 8, + "pc": [ + 1052, + 1053, + 1054, + 1055, + 1056, + 1057 + ] + }, + { + "teal": 1101, + "source": 8, + "pc": [ + 1058, + 1059, + 1060, + 1061, + 1062, + 1063 + ] + }, + { + "teal": 1102, + "source": 8, + "pc": [ + 1064, + 1065, + 1066, + 1067, + 1068, + 1069 + ] + }, + { + "teal": 1103, + "source": 8, + "pc": [ + 1070, + 1071, + 1072 + ] + }, + { + "teal": 1104, + "source": 8, + "pc": [ + 1073, + 1074, + 1075, + 1076, + 1077, + 1078, + 1079, + 1080, + 1081, + 1082, + 1083, + 1084 + ] + }, + { + "teal": 1107, + "source": 8, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 1085 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyMAoJLy8gdGhpcy5nb3Zlcm5vci52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJYnl0ZSAweDY3IC8vICJnIgoJdHhuIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmRvQ3JlYXRlUG9vbFRva2VuOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjI2CgkvLyByZXR1cm4gc2VuZEFzc2V0Q3JlYXRpb24oewoJLy8gICAgICAgY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUsCgkvLyAgICAgICBjb25maWdBc3NldFVuaXROYW1lOiAnZHB0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyNwoJLy8gY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUKCWJ5dGUgMHg0NDUwNTQyZCAvLyAiRFBULSIKCWZyYW1lX2RpZyAtMSAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRVbml0TmFtZQoJcG9wCgljb25jYXQKCWJ5dGUgMHgyZCAvLyAiLSIKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIGJBc3NldDogQXNzZXRJRAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldFVuaXROYW1lCglwb3AKCWNvbmNhdAoJaXR4bl9maWVsZCBDb25maWdBc3NldE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjgKCS8vIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICdkcHQnCglieXRlIDB4NjQ3MDc0IC8vICJkcHQiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VW5pdE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjkKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWQoJaW50IDEwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzAKCS8vIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMKCWludCAzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0RGVjaW1hbHMKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjMyCgkvLyBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0UmVzZXJ2ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gZG9BeGZlcihyZWNlaXZlcjogQWRkcmVzcywgYXNzZXQ6IEFzc2V0SUQsIGFtb3VudDogdWludDY0KTogdm9pZApkb0F4ZmVyOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjM3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiByZWNlaXZlciwKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzgKCS8vIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcmVjZWl2ZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czozOQoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo0MAoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBkb09wdEluKGFzc2V0OiBBc3NldElEKTogdm9pZApkb09wdEluOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjQ1CgkvLyB0aGlzLmRvQXhmZXIodGhpcy5hcHAuYWRkcmVzcywgYXNzZXQsIDApCglpbnQgMAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJY2FsbHN1YiBkb0F4ZmVyCglyZXRzdWIKCi8vIHRva2Vuc1RvTWludEludGlhbChhQW1vdW50OiB1aW50NjQsIGJBbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb01pbnRJbnRpYWw6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NDkKCS8vIHJldHVybiBzcXJ0KGFBbW91bnQgKiBiQW1vdW50KTsKCWZyYW1lX2RpZyAtMSAvLyBhQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiQW1vdW50OiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gdG9rZW5zVG9NaW50KGlzc3VlZDogdWludDY0LCBhU3VwcGx5OiB1aW50NjQsIGJTdXBwbHk6IHVpbnQ2NCwgYUFtb3VudDogdWludDY0LCBiQW1vdW50OiB1aW50NjQpOiB1aW50NjQKdG9rZW5zVG9NaW50OgoJcHJvdG8gNSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1MwoJLy8gYVJhdGlvID0gd2lkZVJhdGlvKFthQW1vdW50LCBTQ0FMRV0sIFthU3VwcGx5XSkKCWZyYW1lX2RpZyAtNCAvLyBhQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0yIC8vIGFTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMCAvLyBhUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NAoJLy8gYlJhdGlvID0gd2lkZVJhdGlvKFtiQW1vdW50LCBTQ0FMRV0sIFtiU3VwcGx5XSkKCWZyYW1lX2RpZyAtNSAvLyBiQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0zIC8vIGJTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMSAvLyBiUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NgoJLy8gcmF0aW8gPSBhUmF0aW8gPCBiUmF0aW8gPyBhUmF0aW8gOiBiUmF0aW8KCWZyYW1lX2RpZyAwIC8vIGFSYXRpbzogdWludDY0CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoJPAoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgMCAvLyBhUmF0aW86IHVpbnQ2NAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyByYXRpbzogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjU4CgkvLyByZXR1cm4gd2lkZVJhdGlvKFtyYXRpbywgaXNzdWVkXSwgW1NDQUxFXSk7CglmcmFtZV9kaWcgMiAvLyByYXRpbzogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGNvbXB1dGVSYXRpbygpOiB1aW50NjQKY29tcHV0ZVJhdGlvOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjYyCgkvLyByZXR1cm4gd2lkZVJhdGlvKAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRBLnZhbHVlKSwgU0NBTEVdLAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRCLnZhbHVlKV0KCS8vICAgICApOwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJaW50IDEwMDAKCW11bHcKCWludCAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoJcmV0c3ViCgovLyB0b2tlbnNUb0J1cm4oaXNzdWVkOiB1aW50NjQsIHN1cHBseTogdWludDY0LCBhbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb0J1cm46Cglwcm90byAzIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NjkKCS8vIHJldHVybiB3aWRlUmF0aW8oW3N1cHBseSwgYW1vdW50XSwgW2lzc3VlZF0pOwoJZnJhbWVfZGlnIC0yIC8vIHN1cHBseTogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRva2Vuc1RvU3dhcChpbkFtb3VudDogdWludDY0LCBpblN1cHBseTogdWludDY0LCBvdXRTdXBwbHk6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb1N3YXA6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3MwoJLy8gZmFjdG9yID0gU0NBTEUgLSBGRUUKCWludCA5OTUKCWZyYW1lX2J1cnkgMCAvLyBmYWN0b3I6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3NAoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbaW5BbW91bnQsIGZhY3Rvciwgb3V0U3VwcGx5XSwgW2luU3VwcGx5ICogU0NBTEUgKyBpbkFtb3VudCAqIGZhY3Rvcl0pOwoJZnJhbWVfZGlnIC0xIC8vIGluQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIGZhY3RvcjogdWludDY0CgltdWx3CglmcmFtZV9kaWcgLTMgLy8gb3V0U3VwcGx5OiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gaW5TdXBwbHk6IHVpbnQ2NAoJaW50IDEwMDAKCSoKCWZyYW1lX2RpZyAtMSAvLyBpbkFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBmYWN0b3I6IHVpbnQ2NAoJKgoJKwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gc2V0X2dvdmVybm9yKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3NldF9nb3Zlcm5vcjoKCS8vIGdvdmVybm9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGdvdmVybm9yKSBmb3Igc2V0X2dvdmVybm9yIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIHNldF9nb3Zlcm5vcihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgc2V0X2dvdmVybm9yCglpbnQgMQoJcmV0dXJuCgovLyBzZXRfZ292ZXJub3IoZ292ZXJub3I6IEFkZHJlc3MpOiB2b2lkCnNldF9nb3Zlcm5vcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3OAoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NzkKCS8vIHRoaXMuZ292ZXJub3IudmFsdWUgPSBnb3Zlcm5vcgoJYnl0ZSAweDY3IC8vICJnIgoJZnJhbWVfZGlnIC0xIC8vIGdvdmVybm9yOiBBZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYm9vdHN0cmFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc2VlZDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc2VlZCkgZm9yIGJvb3RzdHJhcCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJvb3RzdHJhcChwYXksdWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYm9vdHN0cmFwCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYm9vdHN0cmFwKHNlZWQ6IFBheVR4biwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmJvb3RzdHJhcDoKCXByb3RvIDMgMQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo4MwoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODUKCS8vIGFzc2VydChnbG9iYWxzLmdyb3VwU2l6ZSA9PT0gMikKCWdsb2JhbCBHcm91cFNpemUKCWludCAyCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjg3CgkvLyB2ZXJpZnlQYXlUeG4oc2VlZCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiB7IGdyZWF0ZXJUaGFuRXF1YWxUbzogMzAwXzAwMCB9IH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNlZWQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDMwMF8wMDAKCT49CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzZWVkIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbkVxdWFsVG8iLCJleHBlY3RlZCI6Ij49MzAwXzAwMCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODgKCS8vIGFzc2VydChhQXNzZXQgPCBiQXNzZXQpCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk8Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6OTAKCS8vIHRoaXMuYXNzZXRBLnZhbHVlID0gYUFzc2V0CglieXRlIDB4NjEgLy8gImEiCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5MQoJLy8gdGhpcy5hc3NldEIudmFsdWUgPSBiQXNzZXQKCWJ5dGUgMHg2MiAvLyAiYiIKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjkyCgkvLyB0aGlzLnBvb2xUb2tlbi52YWx1ZSA9IHRoaXMuZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0LCBiQXNzZXQpCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgljYWxsc3ViIGRvQ3JlYXRlUG9vbFRva2VuCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NAoJLy8gdGhpcy5kb09wdEluKGFBc3NldCkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NQoJLy8gdGhpcy5kb09wdEluKGJBc3NldCkKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NwoJLy8gcmV0dXJuIHRoaXMucG9vbFRva2VuLnZhbHVlOwoJYnl0ZSAweDcwIC8vICJwIgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gbWludChheGZlcixheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfbWludDoKCS8vIGJBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYUFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGJYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMyAoYlhmZXIpIGZvciBtaW50IG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYVhmZXI6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDIKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCA0IChhWGZlcikgZm9yIG1pbnQgbXVzdCBiZSBhIGF4ZmVyIHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIG1pbnQoYXhmZXIsYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBtaW50CglpbnQgMQoJcmV0dXJuCgovLyBtaW50KGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBiWGZlcjogQXNzZXRUcmFuc2ZlclR4biwgcG9vbEFzc2V0OiBBc3NldElELCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKbWludDoKCXByb3RvIDUgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gd2VsbCBmb3JtZWQgbWludAoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwMgoJLy8gYXNzZXJ0KGFBc3NldCA9PT0gdGhpcy5hc3NldEEudmFsdWUpCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMDMKCS8vIGFzc2VydChiQXNzZXQgPT09IHRoaXMuYXNzZXRCLnZhbHVlKQoJZnJhbWVfZGlnIC01IC8vIGJBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTA0CgkvLyBhc3NlcnQocG9vbEFzc2V0ID09PSB0aGlzLnBvb2xUb2tlbi52YWx1ZSkKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg3MCAvLyAicCIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgYXNzZXQgQSBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwNwoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihhWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYUFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6ImFBc3NldCJ9Cglhc3NlcnQKCgkvLyB2YWxpZCBhc3NldCBCIGF4ZmVyCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTE1CgkvLyB2ZXJpZnlBc3NldFRyYW5zZmVyVHhuKGJYZmVyLCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgeGZlckFzc2V0OiBiQXNzZXQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCgl0eG4gU2VuZGVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy50eG4uc2VuZGVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldEFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJaW50IDAKCT4KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldEFtb3VudCIsImNvbmRpdGlvbiI6ImdyZWF0ZXJUaGFuIiwiZXhwZWN0ZWQiOiI+MCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRSZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSB4ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTUgLy8gYkFzc2V0OiBBc3NldElECgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InhmZXJBc3NldCIsImV4cGVjdGVkIjoiYkFzc2V0In0KCWFzc2VydAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTIzCgkvLyB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShhQXNzZXQpID09PSBhWGZlci5hc3NldEFtb3VudCAmJgoJLy8gICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYkFzc2V0KSA9PT0gYlhmZXIuYXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJPT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50Cgk9PQoJJiYKCipza2lwX2FuZDA6CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMjYKCS8vIHRoaXMudG9rZW5zVG9NaW50SW50aWFsKGFYZmVyLmFzc2V0QW1vdW50LCBiWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWNhbGxzdWIgdG9rZW5zVG9NaW50SW50aWFsCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTI4CgkvLyB0b01pbnQgPSB0aGlzLnRva2Vuc1RvTWludCgKCS8vICAgICAgICAgVE9UQUxfU1VQUExZIC0gdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSwKCS8vICAgICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYUFzc2V0KSAtIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpIC0gYlhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICAgIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICBiWGZlci5hc3NldEFtb3VudAoJLy8gICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCWludCAxMDAwMDAwMDAwMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCgktCgljYWxsc3ViIHRva2Vuc1RvTWludAoJZnJhbWVfYnVyeSAwIC8vIHRvTWludDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEzNgoJLy8gYXNzZXJ0KHRvTWludCA+IDApCglmcmFtZV9kaWcgMCAvLyB0b01pbnQ6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMzgKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIHBvb2xBc3NldCwgdG9NaW50KQoJZnJhbWVfZGlnIDAgLy8gdG9NaW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKKmlmMF9lbmQ6CglyZXRzdWIKCi8vIGJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2J1cm46CgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gcG9vbEFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBwb29sWGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDMgKHBvb2xYZmVyKSBmb3IgYnVybiBtdXN0IGJlIGEgYXhmZXIgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYnVybihheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGJ1cm4KCWludCAxCglyZXR1cm4KCi8vIGJ1cm4ocG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4sIHBvb2xBc3NldDogQXNzZXRJRCwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiB2b2lkCmJ1cm46Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gd2VsbCBmb3JtZWQgYnVybgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0NAoJLy8gYXNzZXJ0KHBvb2xBc3NldCA9PT0gdGhpcy5wb29sVG9rZW4udmFsdWUpCglmcmFtZV9kaWcgLTIgLy8gcG9vbEFzc2V0OiBBc3NldElECglieXRlIDB4NzAgLy8gInAiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNDUKCS8vIGFzc2VydChhQXNzZXQgPT09IHRoaXMuYXNzZXRBLnZhbHVlKQoJZnJhbWVfZGlnIC0zIC8vIGFBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTQ2CgkvLyBhc3NlcnQoYkFzc2V0ID09PSB0aGlzLmFzc2V0Qi52YWx1ZSkKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgcG9vbCBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0OQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihwb29sWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogcG9vbEFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6InBvb2xBc3NldCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTU2CgkvLyBpc3N1ZWQgPSBUT1RBTF9TVVBQTFkgLSAodGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSAtIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJaW50IDEwMDAwMDAwMDAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCS0KCWZyYW1lX2J1cnkgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNTgKCS8vIGFBbXQgPSB0aGlzLnRva2Vuc1RvQnVybihpc3N1ZWQsIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGFBc3NldCksIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoJY2FsbHN1YiB0b2tlbnNUb0J1cm4KCWZyYW1lX2J1cnkgMSAvLyBhQW10OiB1aW50NjQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYwCgkvLyBiQW10ID0gdGhpcy50b2tlbnNUb0J1cm4oaXNzdWVkLCB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpLCBwb29sWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYkFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDAgLy8gaXNzdWVkOiB1aW50NjQKCWNhbGxzdWIgdG9rZW5zVG9CdXJuCglmcmFtZV9idXJ5IDIgLy8gYkFtdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE2MgoJLy8gdGhpcy5kb0F4ZmVyKHRoaXMudHhuLnNlbmRlciwgYUFzc2V0LCBhQW10KQoJZnJhbWVfZGlnIDEgLy8gYUFtdDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYUFzc2V0OiBBc3NldElECgl0eG4gU2VuZGVyCgljYWxsc3ViIGRvQXhmZXIKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYzCgkvLyB0aGlzLmRvQXhmZXIodGhpcy50eG4uc2VuZGVyLCBiQXNzZXQsIGJBbXQpCglmcmFtZV9kaWcgMiAvLyBiQW10OiB1aW50NjQKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNjUKCS8vIHRoaXMucmF0aW8udmFsdWUgPSB0aGlzLmNvbXB1dGVSYXRpbygpCglieXRlIDB4NzIgLy8gInIiCgljYWxsc3ViIGNvbXB1dGVSYXRpbwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gc3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zd2FwOgoJLy8gYkFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIHN3YXBYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMiAoc3dhcFhmZXIpIGZvciBzd2FwIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzd2FwKGF4ZmVyLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzd2FwCglpbnQgMQoJcmV0dXJuCgovLyBzd2FwKHN3YXBYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKc3dhcDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB3ZWxsIGZvcm1lZCBzd2FwCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTcwCgkvLyBhc3NlcnQoYUFzc2V0ID09PSB0aGlzLmFzc2V0QS52YWx1ZSkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE3MQoJLy8gYXNzZXJ0KGJBc3NldCA9PT0gdGhpcy5hc3NldEIudmFsdWUpCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglieXRlIDB4NjIgLy8gImIiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNzMKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oc3dhcFhmZXIsIHsKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IHsgaW5jbHVkZWRJbjogW2FBc3NldCwgYkFzc2V0XSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN3YXBYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk9PQoJfHwKCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0Ijoic3dhcFhmZXIifSwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbYUFzc2V0LCBiQXNzZXRdIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODAKCS8vIG91dElkID0gc3dhcFhmZXIueGZlckFzc2V0ID09PSBhQXNzZXQgPyBhQXNzZXQgOiBiQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgk9PQoJYnogKnRlcm5hcnkxX2ZhbHNlCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDAgLy8gb3V0SWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODIKCS8vIGluSWQgPSBzd2FwWGZlci54ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9idXJ5IDEgLy8gaW5JZDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE4NAoJLy8gdG9Td2FwID0gdGhpcy50b2tlbnNUb1N3YXAoCgkvLyAgICAgICBzd2FwWGZlci5hc3NldEFtb3VudCwKCS8vICAgICAgIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGluSWQpIC0gc3dhcFhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShvdXRJZCkKCS8vICAgICApCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBpbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgljYWxsc3ViIHRva2Vuc1RvU3dhcAoJZnJhbWVfYnVyeSAyIC8vIHRvU3dhcDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5MAoJLy8gYXNzZXJ0KHRvU3dhcCA+IDApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxOTIKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIG91dElkLCB0b1N3YXApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBkb0F4ZmVyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5yYXRpby52YWx1ZSA9IHRoaXMuY29tcHV0ZVJhdGlvKCkKCWJ5dGUgMHg3MiAvLyAiciIKCWNhbGxzdWIgY29tcHV0ZVJhdGlvCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRfZ292ZXJub3IoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJtaW50KGF4ZmVyLGF4ZmVyLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAic3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NldF9nb3Zlcm5vciAqYWJpX3JvdXRlX2Jvb3RzdHJhcCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9idXJuICphYmlfcm91dGVfc3dhcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyMAoJLy8gdGhpcy5nb3Zlcm5vci52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJYnl0ZSAweDY3IC8vICJnIgoJdHhuIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmRvQ3JlYXRlUG9vbFRva2VuOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjI2CgkvLyByZXR1cm4gc2VuZEFzc2V0Q3JlYXRpb24oewoJLy8gICAgICAgY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUsCgkvLyAgICAgICBjb25maWdBc3NldFVuaXROYW1lOiAnZHB0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoyNwoJLy8gY29uZmlnQXNzZXROYW1lOiAnRFBULScgKyBhQXNzZXQudW5pdE5hbWUgKyAnLScgKyBiQXNzZXQudW5pdE5hbWUKCWJ5dGUgMHg0NDUwNTQyZCAvLyAiRFBULSIKCWZyYW1lX2RpZyAtMSAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRVbml0TmFtZQoJcG9wCgljb25jYXQKCWJ5dGUgMHgyZCAvLyAiLSIKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIGJBc3NldDogQXNzZXRJRAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldFVuaXROYW1lCglwb3AKCWNvbmNhdAoJaXR4bl9maWVsZCBDb25maWdBc3NldE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjgKCS8vIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICdkcHQnCglieXRlIDB4NjQ3MDc0IC8vICJkcHQiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VW5pdE5hbWUKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MjkKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IFRPVEFMX1NVUFBMWQoJaW50IDEwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzAKCS8vIGNvbmZpZ0Fzc2V0RGVjaW1hbHM6IDMKCWludCAzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0RGVjaW1hbHMKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjMyCgkvLyBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0UmVzZXJ2ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gZG9BeGZlcihyZWNlaXZlcjogQWRkcmVzcywgYXNzZXQ6IEFzc2V0SUQsIGFtb3VudDogdWludDY0KTogdm9pZApkb0F4ZmVyOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjM3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiByZWNlaXZlciwKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MzgKCS8vIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcmVjZWl2ZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czozOQoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo0MAoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBkb09wdEluKGFzc2V0OiBBc3NldElEKTogdm9pZApkb09wdEluOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjQ1CgkvLyB0aGlzLmRvQXhmZXIodGhpcy5hcHAuYWRkcmVzcywgYXNzZXQsIDApCglpbnQgMAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJY2FsbHN1YiBkb0F4ZmVyCglyZXRzdWIKCi8vIHRva2Vuc1RvTWludEludGlhbChhQW1vdW50OiB1aW50NjQsIGJBbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb01pbnRJbnRpYWw6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NDkKCS8vIHJldHVybiBzcXJ0KGFBbW91bnQgKiBiQW1vdW50KTsKCWZyYW1lX2RpZyAtMSAvLyBhQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiQW1vdW50OiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gdG9rZW5zVG9NaW50KGlzc3VlZDogdWludDY0LCBhU3VwcGx5OiB1aW50NjQsIGJTdXBwbHk6IHVpbnQ2NCwgYUFtb3VudDogdWludDY0LCBiQW1vdW50OiB1aW50NjQpOiB1aW50NjQKdG9rZW5zVG9NaW50OgoJcHJvdG8gNSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1MwoJLy8gYVJhdGlvID0gd2lkZVJhdGlvKFthQW1vdW50LCBTQ0FMRV0sIFthU3VwcGx5XSkKCWZyYW1lX2RpZyAtNCAvLyBhQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0yIC8vIGFTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMCAvLyBhUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NAoJLy8gYlJhdGlvID0gd2lkZVJhdGlvKFtiQW1vdW50LCBTQ0FMRV0sIFtiU3VwcGx5XSkKCWZyYW1lX2RpZyAtNSAvLyBiQW1vdW50OiB1aW50NjQKCWludCAxMDAwCgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIC0zIC8vIGJTdXBwbHk6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMSAvLyBiUmF0aW86IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo1NgoJLy8gcmF0aW8gPSBhUmF0aW8gPCBiUmF0aW8gPyBhUmF0aW8gOiBiUmF0aW8KCWZyYW1lX2RpZyAwIC8vIGFSYXRpbzogdWludDY0CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoJPAoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgMCAvLyBhUmF0aW86IHVpbnQ2NAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgMSAvLyBiUmF0aW86IHVpbnQ2NAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyByYXRpbzogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjU4CgkvLyByZXR1cm4gd2lkZVJhdGlvKFtyYXRpbywgaXNzdWVkXSwgW1NDQUxFXSk7CglmcmFtZV9kaWcgMiAvLyByYXRpbzogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGNvbXB1dGVSYXRpbygpOiB1aW50NjQKY29tcHV0ZVJhdGlvOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjYyCgkvLyByZXR1cm4gd2lkZVJhdGlvKAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRBLnZhbHVlKSwgU0NBTEVdLAoJLy8gICAgICAgW3RoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKHRoaXMuYXNzZXRCLnZhbHVlKV0KCS8vICAgICApOwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJaW50IDEwMDAKCW11bHcKCWludCAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoJcmV0c3ViCgovLyB0b2tlbnNUb0J1cm4oaXNzdWVkOiB1aW50NjQsIHN1cHBseTogdWludDY0LCBhbW91bnQ6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb0J1cm46Cglwcm90byAzIDEKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NjkKCS8vIHJldHVybiB3aWRlUmF0aW8oW3N1cHBseSwgYW1vdW50XSwgW2lzc3VlZF0pOwoJZnJhbWVfZGlnIC0yIC8vIHN1cHBseTogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gaXNzdWVkOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRva2Vuc1RvU3dhcChpbkFtb3VudDogdWludDY0LCBpblN1cHBseTogdWludDY0LCBvdXRTdXBwbHk6IHVpbnQ2NCk6IHVpbnQ2NAp0b2tlbnNUb1N3YXA6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3MwoJLy8gZmFjdG9yID0gU0NBTEUgLSBGRUUKCWludCA5OTUKCWZyYW1lX2J1cnkgMCAvLyBmYWN0b3I6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3NAoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbaW5BbW91bnQsIGZhY3Rvciwgb3V0U3VwcGx5XSwgW2luU3VwcGx5ICogU0NBTEUgKyBpbkFtb3VudCAqIGZhY3Rvcl0pOwoJZnJhbWVfZGlnIC0xIC8vIGluQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIGZhY3RvcjogdWludDY0CgltdWx3CglmcmFtZV9kaWcgLTMgLy8gb3V0U3VwcGx5OiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gaW5TdXBwbHk6IHVpbnQ2NAoJaW50IDEwMDAKCSoKCWZyYW1lX2RpZyAtMSAvLyBpbkFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBmYWN0b3I6IHVpbnQ2NAoJKgoJKwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gc2V0X2dvdmVybm9yKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3NldF9nb3Zlcm5vcjoKCS8vIGdvdmVybm9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGdvdmVybm9yKSBmb3Igc2V0X2dvdmVybm9yIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIHNldF9nb3Zlcm5vcihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgc2V0X2dvdmVybm9yCglpbnQgMQoJcmV0dXJuCgovLyBzZXRfZ292ZXJub3IoZ292ZXJub3I6IEFkZHJlc3MpOiB2b2lkCnNldF9nb3Zlcm5vcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo3OAoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6NzkKCS8vIHRoaXMuZ292ZXJub3IudmFsdWUgPSBnb3Zlcm5vcgoJYnl0ZSAweDY3IC8vICJnIgoJZnJhbWVfZGlnIC0xIC8vIGdvdmVybm9yOiBBZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYm9vdHN0cmFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc2VlZDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc2VlZCkgZm9yIGJvb3RzdHJhcCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJvb3RzdHJhcChwYXksdWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYm9vdHN0cmFwCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYm9vdHN0cmFwKHNlZWQ6IFBheVR4biwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiBBc3NldElECmJvb3RzdHJhcDoKCXByb3RvIDMgMQoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo4MwoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuZ292ZXJub3IudmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2NyAvLyAiZyIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5nb3Zlcm5vci52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODUKCS8vIGFzc2VydChnbG9iYWxzLmdyb3VwU2l6ZSA9PT0gMikKCWdsb2JhbCBHcm91cFNpemUKCWludCAyCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjg3CgkvLyB2ZXJpZnlQYXlUeG4oc2VlZCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiB7IGdyZWF0ZXJUaGFuRXF1YWxUbzogMzAwXzAwMCB9IH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNlZWQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzZWVkOiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDMwMF8wMDAKCT49CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzZWVkIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbkVxdWFsVG8iLCJleHBlY3RlZCI6Ij49MzAwXzAwMCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6ODgKCS8vIGFzc2VydChhQXNzZXQgPCBiQXNzZXQpCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk8Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6OTAKCS8vIHRoaXMuYXNzZXRBLnZhbHVlID0gYUFzc2V0CglieXRlIDB4NjEgLy8gImEiCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5MQoJLy8gdGhpcy5hc3NldEIudmFsdWUgPSBiQXNzZXQKCWJ5dGUgMHg2MiAvLyAiYiIKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjkyCgkvLyB0aGlzLnBvb2xUb2tlbi52YWx1ZSA9IHRoaXMuZG9DcmVhdGVQb29sVG9rZW4oYUFzc2V0LCBiQXNzZXQpCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgljYWxsc3ViIGRvQ3JlYXRlUG9vbFRva2VuCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NAoJLy8gdGhpcy5kb09wdEluKGFBc3NldCkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NQoJLy8gdGhpcy5kb09wdEluKGJBc3NldCkKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCWNhbGxzdWIgZG9PcHRJbgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czo5NwoJLy8gcmV0dXJuIHRoaXMucG9vbFRva2VuLnZhbHVlOwoJYnl0ZSAweDcwIC8vICJwIgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gbWludChheGZlcixheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfbWludDoKCS8vIGJBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYUFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGJYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMyAoYlhmZXIpIGZvciBtaW50IG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYVhmZXI6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDIKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCA0IChhWGZlcikgZm9yIG1pbnQgbXVzdCBiZSBhIGF4ZmVyIHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIG1pbnQoYXhmZXIsYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBtaW50CglpbnQgMQoJcmV0dXJuCgovLyBtaW50KGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBiWGZlcjogQXNzZXRUcmFuc2ZlclR4biwgcG9vbEFzc2V0OiBBc3NldElELCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKbWludDoKCXByb3RvIDUgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gd2VsbCBmb3JtZWQgbWludAoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwMgoJLy8gYXNzZXJ0KGFBc3NldCA9PT0gdGhpcy5hc3NldEEudmFsdWUpCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMDMKCS8vIGFzc2VydChiQXNzZXQgPT09IHRoaXMuYXNzZXRCLnZhbHVlKQoJZnJhbWVfZGlnIC01IC8vIGJBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYyIC8vICJiIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTA0CgkvLyBhc3NlcnQocG9vbEFzc2V0ID09PSB0aGlzLnBvb2xUb2tlbi52YWx1ZSkKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg3MCAvLyAicCIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgYXNzZXQgQSBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEwNwoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihhWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYUFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJhWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYVhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImFYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6ImFBc3NldCJ9Cglhc3NlcnQKCgkvLyB2YWxpZCBhc3NldCBCIGF4ZmVyCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTE1CgkvLyB2ZXJpZnlBc3NldFRyYW5zZmVyVHhuKGJYZmVyLCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgeGZlckFzc2V0OiBiQXNzZXQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCgl0eG4gU2VuZGVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy50eG4uc2VuZGVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldEFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJaW50IDAKCT4KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldEFtb3VudCIsImNvbmRpdGlvbiI6ImdyZWF0ZXJUaGFuIiwiZXhwZWN0ZWQiOiI+MCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRSZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6ImJYZmVyIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSB4ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTUgLy8gYkFzc2V0OiBBc3NldElECgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoiYlhmZXIiLCJmaWVsZCI6InhmZXJBc3NldCIsImV4cGVjdGVkIjoiYkFzc2V0In0KCWFzc2VydAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTIzCgkvLyB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShhQXNzZXQpID09PSBhWGZlci5hc3NldEFtb3VudCAmJgoJLy8gICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYkFzc2V0KSA9PT0gYlhmZXIuYXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYUFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJPT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50Cgk9PQoJJiYKCipza2lwX2FuZDA6CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMjYKCS8vIHRoaXMudG9rZW5zVG9NaW50SW50aWFsKGFYZmVyLmFzc2V0QW1vdW50LCBiWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMiAvLyBiWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWNhbGxzdWIgdG9rZW5zVG9NaW50SW50aWFsCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTI4CgkvLyB0b01pbnQgPSB0aGlzLnRva2Vuc1RvTWludCgKCS8vICAgICAgICAgVE9UQUxfU1VQUExZIC0gdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSwKCS8vICAgICAgICAgdGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UoYUFzc2V0KSAtIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpIC0gYlhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICAgIGFYZmVyLmFzc2V0QW1vdW50LAoJLy8gICAgICAgICBiWGZlci5hc3NldEFtb3VudAoJLy8gICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIGJYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIGFYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtNSAvLyBiQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTIgLy8gYlhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC00IC8vIGFBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBhWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCWludCAxMDAwMDAwMDAwMAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCgktCgljYWxsc3ViIHRva2Vuc1RvTWludAoJZnJhbWVfYnVyeSAwIC8vIHRvTWludDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjEzNgoJLy8gYXNzZXJ0KHRvTWludCA+IDApCglmcmFtZV9kaWcgMCAvLyB0b01pbnQ6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxMzgKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIHBvb2xBc3NldCwgdG9NaW50KQoJZnJhbWVfZGlnIDAgLy8gdG9NaW50OiB1aW50NjQKCWZyYW1lX2RpZyAtMyAvLyBwb29sQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKKmlmMF9lbmQ6CglyZXRzdWIKCi8vIGJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2J1cm46CgkvLyBiQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFBc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gcG9vbEFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBwb29sWGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDMgKHBvb2xYZmVyKSBmb3IgYnVybiBtdXN0IGJlIGEgYXhmZXIgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYnVybihheGZlcix1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGJ1cm4KCWludCAxCglyZXR1cm4KCi8vIGJ1cm4ocG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4sIHBvb2xBc3NldDogQXNzZXRJRCwgYUFzc2V0OiBBc3NldElELCBiQXNzZXQ6IEFzc2V0SUQpOiB2b2lkCmJ1cm46Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gd2VsbCBmb3JtZWQgYnVybgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0NAoJLy8gYXNzZXJ0KHBvb2xBc3NldCA9PT0gdGhpcy5wb29sVG9rZW4udmFsdWUpCglmcmFtZV9kaWcgLTIgLy8gcG9vbEFzc2V0OiBBc3NldElECglieXRlIDB4NzAgLy8gInAiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNDUKCS8vIGFzc2VydChhQXNzZXQgPT09IHRoaXMuYXNzZXRBLnZhbHVlKQoJZnJhbWVfZGlnIC0zIC8vIGFBc3NldDogQXNzZXRJRAoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTQ2CgkvLyBhc3NlcnQoYkFzc2V0ID09PSB0aGlzLmFzc2V0Qi52YWx1ZSkKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gdmFsaWQgcG9vbCBheGZlcgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE0OQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bihwb29sWGZlciwgewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogcG9vbEFzc2V0LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwb29sWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InBvb2xYZmVyIiwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJleHBlY3RlZCI6InBvb2xBc3NldCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTU2CgkvLyBpc3N1ZWQgPSBUT1RBTF9TVVBQTFkgLSAodGhpcy5hcHAuYWRkcmVzcy5hc3NldEJhbGFuY2UocG9vbEFzc2V0KSAtIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJaW50IDEwMDAwMDAwMDAwCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBc3NldDogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCS0KCS0KCWZyYW1lX2J1cnkgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNTgKCS8vIGFBbXQgPSB0aGlzLnRva2Vuc1RvQnVybihpc3N1ZWQsIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGFBc3NldCksIHBvb2xYZmVyLmFzc2V0QW1vdW50KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xYZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2RpZyAtMyAvLyBhQXNzZXQ6IEFzc2V0SUQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyBpc3N1ZWQ6IHVpbnQ2NAoJY2FsbHN1YiB0b2tlbnNUb0J1cm4KCWZyYW1lX2J1cnkgMSAvLyBhQW10OiB1aW50NjQKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYwCgkvLyBiQW10ID0gdGhpcy50b2tlbnNUb0J1cm4oaXNzdWVkLCB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShiQXNzZXQpLCBwb29sWGZlci5hc3NldEFtb3VudCkKCWZyYW1lX2RpZyAtMSAvLyBwb29sWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgLTQgLy8gYkFzc2V0OiBBc3NldElECglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDAgLy8gaXNzdWVkOiB1aW50NjQKCWNhbGxzdWIgdG9rZW5zVG9CdXJuCglmcmFtZV9idXJ5IDIgLy8gYkFtdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE2MgoJLy8gdGhpcy5kb0F4ZmVyKHRoaXMudHhuLnNlbmRlciwgYUFzc2V0LCBhQW10KQoJZnJhbWVfZGlnIDEgLy8gYUFtdDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYUFzc2V0OiBBc3NldElECgl0eG4gU2VuZGVyCgljYWxsc3ViIGRvQXhmZXIKCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTYzCgkvLyB0aGlzLmRvQXhmZXIodGhpcy50eG4uc2VuZGVyLCBiQXNzZXQsIGJBbXQpCglmcmFtZV9kaWcgMiAvLyBiQW10OiB1aW50NjQKCWZyYW1lX2RpZyAtNCAvLyBiQXNzZXQ6IEFzc2V0SUQKCXR4biBTZW5kZXIKCWNhbGxzdWIgZG9BeGZlcgoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNjUKCS8vIHRoaXMucmF0aW8udmFsdWUgPSB0aGlzLmNvbXB1dGVSYXRpbygpCglieXRlIDB4NzIgLy8gInIiCgljYWxsc3ViIGNvbXB1dGVSYXRpbwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gc3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zd2FwOgoJLy8gYkFzc2V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhQXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIHN3YXBYZmVyOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMiAoc3dhcFhmZXIpIGZvciBzd2FwIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzd2FwKGF4ZmVyLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzd2FwCglpbnQgMQoJcmV0dXJuCgovLyBzd2FwKHN3YXBYZmVyOiBBc3NldFRyYW5zZmVyVHhuLCBhQXNzZXQ6IEFzc2V0SUQsIGJBc3NldDogQXNzZXRJRCk6IHZvaWQKc3dhcDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB3ZWxsIGZvcm1lZCBzd2FwCgkvLyBleGFtcGxlcy9hbW0vYW1tLmFsZ28udHM6MTcwCgkvLyBhc3NlcnQoYUFzc2V0ID09PSB0aGlzLmFzc2V0QS52YWx1ZSkKCWZyYW1lX2RpZyAtMiAvLyBhQXNzZXQ6IEFzc2V0SUQKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE3MQoJLy8gYXNzZXJ0KGJBc3NldCA9PT0gdGhpcy5hc3NldEIudmFsdWUpCglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECglieXRlIDB4NjIgLy8gImIiCglhcHBfZ2xvYmFsX2dldAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxNzMKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oc3dhcFhmZXIsIHsKCS8vICAgICAgIGFzc2V0QW1vdW50OiB7IGdyZWF0ZXJUaGFuOiAwIH0sCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IHsgaW5jbHVkZWRJbjogW2FBc3NldCwgYkFzc2V0XSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXNzZXRBbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRBbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzd2FwWGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN3YXBYZmVyIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgeGZlckFzc2V0CglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJZnJhbWVfZGlnIC0yIC8vIGFBc3NldDogQXNzZXRJRAoJPT0KCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTMgLy8gYkFzc2V0OiBBc3NldElECgk9PQoJfHwKCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0Ijoic3dhcFhmZXIifSwiZmllbGQiOiJ4ZmVyQXNzZXQiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbYUFzc2V0LCBiQXNzZXRdIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODAKCS8vIG91dElkID0gc3dhcFhmZXIueGZlckFzc2V0ID09PSBhQXNzZXQgPyBhQXNzZXQgOiBiQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgk9PQoJYnogKnRlcm5hcnkxX2ZhbHNlCglmcmFtZV9kaWcgLTIgLy8gYUFzc2V0OiBBc3NldElECgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWZyYW1lX2RpZyAtMyAvLyBiQXNzZXQ6IEFzc2V0SUQKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDAgLy8gb3V0SWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxODIKCS8vIGluSWQgPSBzd2FwWGZlci54ZmVyQXNzZXQKCWZyYW1lX2RpZyAtMSAvLyBzd2FwWGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgWGZlckFzc2V0CglmcmFtZV9idXJ5IDEgLy8gaW5JZDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE4NAoJLy8gdG9Td2FwID0gdGhpcy50b2tlbnNUb1N3YXAoCgkvLyAgICAgICBzd2FwWGZlci5hc3NldEFtb3VudCwKCS8vICAgICAgIHRoaXMuYXBwLmFkZHJlc3MuYXNzZXRCYWxhbmNlKGluSWQpIC0gc3dhcFhmZXIuYXNzZXRBbW91bnQsCgkvLyAgICAgICB0aGlzLmFwcC5hZGRyZXNzLmFzc2V0QmFsYW5jZShvdXRJZCkKCS8vICAgICApCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBpbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgktCglmcmFtZV9kaWcgLTEgLy8gc3dhcFhmZXI6IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIEFzc2V0QW1vdW50CgljYWxsc3ViIHRva2Vuc1RvU3dhcAoJZnJhbWVfYnVyeSAyIC8vIHRvU3dhcDogdWludDY0CgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5MAoJLy8gYXNzZXJ0KHRvU3dhcCA+IDApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJaW50IDAKCT4KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FtbS9hbW0uYWxnby50czoxOTIKCS8vIHRoaXMuZG9BeGZlcih0aGlzLnR4bi5zZW5kZXIsIG91dElkLCB0b1N3YXApCglmcmFtZV9kaWcgMiAvLyB0b1N3YXA6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gb3V0SWQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBkb0F4ZmVyCgoJLy8gZXhhbXBsZXMvYW1tL2FtbS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5yYXRpby52YWx1ZSA9IHRoaXMuY29tcHV0ZVJhdGlvKCkKCWJ5dGUgMHg3MiAvLyAiciIKCWNhbGxzdWIgY29tcHV0ZVJhdGlvCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRfZ292ZXJub3IoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJib290c3RyYXAocGF5LHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJtaW50KGF4ZmVyLGF4ZmVyLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImJ1cm4oYXhmZXIsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAic3dhcChheGZlcix1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NldF9nb3Zlcm5vciAqYWJpX3JvdXRlX2Jvb3RzdHJhcCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9idXJuICphYmlfcm91dGVfc3dhcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/arc58/arc58.algo.ts b/examples/arc58/arc58.algo.ts new file mode 100644 index 000000000..60d957a55 --- /dev/null +++ b/examples/arc58/arc58.algo.ts @@ -0,0 +1,290 @@ +import { Contract } from '../../src/lib'; + +type PluginsKey = { + /** The application containing plugin logic */ + application: AppID; + /** The address that is allowed to initiate a rekey to the plugin */ + allowedCaller: Address; +}; + +type PluginInfo = { + /** The last round at which this plugin can be called */ + lastValidRound: uint64; + /** The number of rounds that must pass before the plugin can be called again */ + cooldown: uint64; + /** The last round the plugin was called */ + lastCalled: uint64; + /** Whether the plugin has permissions to change the admin account */ + adminPrivileges: boolean; +}; + +export class AbstractedAccount extends Contract { + /** Target AVM 10 */ + programVersion = 10; + + /** The admin of the abstracted account. This address can add plugins and initiate rekeys */ + admin = GlobalStateKey
({ key: 'a' }); + + /** The address this app controls */ + controlledAddress = GlobalStateKey
({ key: 'c' }); + + /** + * Plugins that add functionality to the controlledAddress and the account that has permission to use it. + */ + plugins = BoxMap({ prefix: 'p' }); + + /** + * Plugins that have been given a name for discoverability + */ + namedPlugins = BoxMap({ prefix: 'n' }); + + /** + * Ensure that by the end of the group the abstracted account has control of its address + */ + private verifyRekeyToAbstractedAccount(): void { + let rekeyedBack = false; + + for (let i = this.txn.groupIndex; i < this.txnGroup.length; i += 1) { + const txn = this.txnGroup[i]; + + // The transaction is an explicit rekey back + if (txn.sender === this.controlledAddress.value && txn.rekeyTo === this.controlledAddress.value) { + rekeyedBack = true; + break; + } + + // The transaction is an application call to this app's arc58_verifyAuthAddr method + if ( + txn.typeEnum === TransactionType.ApplicationCall && + txn.applicationID === this.app && + txn.numAppArgs === 1 && + txn.applicationArgs[0] === method('arc58_verifyAuthAddr()void') + ) { + rekeyedBack = true; + break; + } + } + + assert(rekeyedBack); + } + + /** + * What the value of this.address.value.authAddr should be when this.controlledAddress + * is able to be controlled by this app. It will either be this.app.address or zeroAddress + */ + private getAuthAddr(): Address { + return this.controlledAddress.value === this.app.address ? Address.zeroAddress : this.app.address; + } + + /** + * Create an abstracted account application. + * This is not part of ARC58 and implementation specific. + * + * @param controlledAddress The address of the abstracted account. If zeroAddress, then the address of the contract account will be used + * @param admin The admin for this app + */ + createApplication(controlledAddress: Address, admin: Address): void { + verifyAppCallTxn(this.txn, { + sender: { includedIn: [controlledAddress, admin] }, + }); + + assert(admin !== controlledAddress); + + this.admin.value = admin; + this.controlledAddress.value = controlledAddress === Address.zeroAddress ? this.app.address : controlledAddress; + } + + /** + * Attempt to change the admin for this app. Some implementations MAY not support this. + * + * @param newAdmin The new admin + */ + arc58_changeAdmin(newAdmin: Address): void { + verifyTxn(this.txn, { sender: this.admin.value }); + this.admin.value = newAdmin; + } + + /** + * Attempt to change the admin via plugin. + * + * @param plugin The app calling the plugin + * @param allowedCaller The address that triggered the plugin + * @param newAdmin The new admin + * + */ + arc58_pluginChangeAdmin(plugin: AppID, allowedCaller: Address, newAdmin: Address): void { + verifyTxn(this.txn, { sender: plugin.address }); + assert(this.controlledAddress.value.authAddr === plugin.address, 'This plugin is not in control of the account'); + + const key: PluginsKey = { application: plugin, allowedCaller: allowedCaller }; + assert( + this.plugins(key).exists && this.plugins(key).value.adminPrivileges, + 'This plugin does not have admin privileges' + ); + + this.admin.value = newAdmin; + } + + /** + * Get the admin of this app. This method SHOULD always be used rather than reading directly from state + * because different implementations may have different ways of determining the admin. + */ + arc58_getAdmin(): Address { + return this.admin.value; + } + + /** + * Verify the abstracted account is rekeyed to this app + */ + arc58_verifyAuthAddr(): void { + assert(this.controlledAddress.value.authAddr === this.getAuthAddr()); + } + + /** + * Rekey the abstracted account to another address. Primarily useful for rekeying to an EOA. + * + * @param addr The address to rekey to + * @param flash Whether or not this should be a flash rekey. If true, the rekey back to the app address must done in the same txn group as this call + */ + arc58_rekeyTo(addr: Address, flash: boolean): void { + verifyAppCallTxn(this.txn, { sender: this.admin.value }); + + sendPayment({ + sender: this.controlledAddress.value, + receiver: addr, + rekeyTo: addr, + note: 'rekeying abstracted account', + }); + + if (flash) this.verifyRekeyToAbstractedAccount(); + } + + private pluginCallAllowed(app: AppID, caller: Address): boolean { + const key: PluginsKey = { application: app, allowedCaller: caller }; + + return ( + this.plugins(key).exists && + this.plugins(key).value.lastValidRound >= globals.round && + globals.round - this.plugins(key).value.lastCalled >= this.plugins(key).value.cooldown + ); + } + + /** + * Temporarily rekey to an approved plugin app address + * + * @param plugin The app to rekey to + */ + arc58_rekeyToPlugin(plugin: AppID): void { + const globalAllowed = this.pluginCallAllowed(plugin, Address.zeroAddress); + + if (!globalAllowed) + assert(this.pluginCallAllowed(plugin, this.txn.sender), 'This sender is not allowed to trigger this plugin'); + + sendPayment({ + sender: this.controlledAddress.value, + receiver: this.controlledAddress.value, + rekeyTo: plugin.address, + note: 'rekeying to plugin app', + }); + + this.plugins({ + application: plugin, + allowedCaller: globalAllowed ? Address.zeroAddress : this.txn.sender, + }).value.lastCalled = globals.round; + + this.verifyRekeyToAbstractedAccount(); + } + + /** + * Temporarily rekey to a named plugin app address + * + * @param name The name of the plugin to rekey to + */ + arc58_rekeyToNamedPlugin(name: string): void { + this.arc58_rekeyToPlugin(this.namedPlugins(name).value.application); + } + + /** + * Add an app to the list of approved plugins + * + * @param app The app to add + * @param allowedCaller The address of that's allowed to call the app + * or the global zero address for all addresses + * @param lastValidRound The round when the permission expires + * @param cooldown The number of rounds that must pass before the plugin can be called again + * @param adminPrivileges Whether the plugin has permissions to change the admin account + */ + arc58_addPlugin( + app: AppID, + allowedCaller: Address, + lastValidRound: uint64, + cooldown: uint64, + adminPrivileges: boolean + ): void { + verifyTxn(this.txn, { sender: this.admin.value }); + const key: PluginsKey = { application: app, allowedCaller: allowedCaller }; + this.plugins(key).value = { + lastValidRound: lastValidRound, + cooldown: cooldown, + lastCalled: 0, + adminPrivileges: adminPrivileges, + }; + } + + /** + * Remove an app from the list of approved plugins + * + * @param app The app to remove + */ + arc58_removePlugin(app: AppID, allowedCaller: Address): void { + verifyTxn(this.txn, { sender: this.admin.value }); + + const key: PluginsKey = { application: app, allowedCaller: allowedCaller }; + this.plugins(key).delete(); + } + + /** + * Add a named plugin + * + * @param app The plugin app + * @param name The plugin name + * @param allowedCaller The address of that's allowed to call the app + * or the global zero address for all addresses + * @param lastValidRound The round when the permission expires + * @param cooldown The number of rounds that must pass before the plugin can be called again + * @param adminPrivileges Whether the plugin has permissions to change the admin account + */ + arc58_addNamedPlugin( + name: string, + app: AppID, + allowedCaller: Address, + lastValidRound: uint64, + cooldown: uint64, + adminPrivileges: boolean + ): void { + verifyTxn(this.txn, { sender: this.admin.value }); + assert(!this.namedPlugins(name).exists); + + const key: PluginsKey = { application: app, allowedCaller: allowedCaller }; + this.namedPlugins(name).value = key; + this.plugins(key).value = { + lastValidRound: lastValidRound, + cooldown: cooldown, + lastCalled: 0, + adminPrivileges: adminPrivileges, + }; + } + + /** + * Remove a named plugin + * + * @param name The plugin name + */ + arc58_removeNamedPlugin(name: string): void { + verifyTxn(this.txn, { sender: this.admin.value }); + + const app = this.namedPlugins(name).value; + this.namedPlugins(name).delete(); + this.plugins(app).delete(); + } +} diff --git a/examples/arc58/artifacts/AbstractedAccount.approval.teal b/examples/arc58/artifacts/AbstractedAccount.approval.teal new file mode 100644 index 000000000..cb66cc01c --- /dev/null +++ b/examples/arc58/artifacts/AbstractedAccount.approval.teal @@ -0,0 +1,1183 @@ +#pragma version 10 + +// This TEAL was generated by TEALScript v0.103.0 +// https://github.com/algorandfoundation/TEALScript + +// This contract is compliant with and/or implements the following ARCs: [ ARC4 ] + +// The following ten lines of TEAL handle initial program flow +// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed +// Here, action refers to the OnComplete in combination with whether the app is being created or called +// Every possible action for this contract is represented in the switch statement +// If the action is not implemented in the contract, its respective branch will be "*NOT_IMPLEMENTED" which just contains "err" +txn ApplicationID +! +int 6 +* +txn OnCompletion ++ +switch *call_NoOp *NOT_IMPLEMENTED *NOT_IMPLEMENTED *NOT_IMPLEMENTED *NOT_IMPLEMENTED *NOT_IMPLEMENTED *create_NoOp *NOT_IMPLEMENTED *NOT_IMPLEMENTED *NOT_IMPLEMENTED *NOT_IMPLEMENTED *NOT_IMPLEMENTED + +*NOT_IMPLEMENTED: + // The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID? + err + +// verifyRekeyToAbstractedAccount(): void +// +// Ensure that by the end of the group the abstracted account has control of its address +verifyRekeyToAbstractedAccount: + proto 0 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + dupn 2 + + // examples/arc58/arc58.algo.ts:45 + // rekeyedBack = false + int 0 + frame_bury 0 // rekeyedBack: bool + + // examples/arc58/arc58.algo.ts:47 + // for (let i = this.txn.groupIndex; i < this.txnGroup.length; i += 1) + txn GroupIndex + frame_bury 1 // i: uint64 + +*for_0: + // examples/arc58/arc58.algo.ts:47 + // i < this.txnGroup.length + frame_dig 1 // i: uint64 + global GroupSize + < + bz *for_0_end + + // examples/arc58/arc58.algo.ts:48 + // txn = this.txnGroup[i] + frame_dig 1 // i: uint64 + frame_bury 2 // txn: txn + + // *if0_condition + // examples/arc58/arc58.algo.ts:51 + // txn.sender === this.controlledAddress.value && txn.rekeyTo === this.controlledAddress.value + frame_dig 2 // txn: txn + gtxns Sender + byte 0x63 // "c" + app_global_get + == + dup + bz *skip_and0 + frame_dig 2 // txn: txn + gtxns RekeyTo + byte 0x63 // "c" + app_global_get + == + && + +*skip_and0: + bz *if0_end + + // *if0_consequent + // examples/arc58/arc58.algo.ts:52 + // rekeyedBack = true + int 1 + frame_bury 0 // rekeyedBack: bool + b *for_0_end + +*if0_end: + // *if1_condition + // examples/arc58/arc58.algo.ts:58 + // txn.typeEnum === TransactionType.ApplicationCall && + // txn.applicationID === this.app && + // txn.numAppArgs === 1 && + // txn.applicationArgs[0] === method('arc58_verifyAuthAddr()void') + frame_dig 2 // txn: txn + gtxns TypeEnum + int appl + == + dup + bz *skip_and1 + frame_dig 2 // txn: txn + gtxns ApplicationID + txna Applications 0 + == + && + +*skip_and1: + dup + bz *skip_and2 + frame_dig 2 // txn: txn + gtxns NumAppArgs + int 1 + == + && + +*skip_and2: + dup + bz *skip_and3 + frame_dig 2 // txn: txn + gtxns ApplicationArgs 0 + method "arc58_verifyAuthAddr()void" + == + && + +*skip_and3: + bz *if1_end + + // *if1_consequent + // examples/arc58/arc58.algo.ts:63 + // rekeyedBack = true + int 1 + frame_bury 0 // rekeyedBack: bool + b *for_0_end + +*if1_end: + +*for_0_continue: + // examples/arc58/arc58.algo.ts:47 + // i += 1 + frame_dig 1 // i: uint64 + int 1 + + + frame_bury 1 // i: uint64 + b *for_0 + +*for_0_end: + // examples/arc58/arc58.algo.ts:68 + // assert(rekeyedBack) + frame_dig 0 // rekeyedBack: bool + assert + retsub + +// getAuthAddr(): Address +// +// What the value of this.address.value.authAddr should be when this.controlledAddress +// is able to be controlled by this app. It will either be this.app.address or zeroAddress +getAuthAddr: + proto 0 1 + + // examples/arc58/arc58.algo.ts:76 + // return this.controlledAddress.value === this.app.address ? Address.zeroAddress : this.app.address; + byte 0x63 // "c" + app_global_get + global CurrentApplicationAddress + == + bz *ternary0_false + global ZeroAddress + b *ternary0_end + +*ternary0_false: + global CurrentApplicationAddress + +*ternary0_end: + retsub + +// createApplication(address,address)void +*abi_route_createApplication: + // admin: address + txna ApplicationArgs 2 + dup + len + int 32 + == + + // argument 0 (admin) for createApplication must be a address + assert + + // controlledAddress: address + txna ApplicationArgs 1 + dup + len + int 32 + == + + // argument 1 (controlledAddress) for createApplication must be a address + assert + + // execute createApplication(address,address)void + callsub createApplication + int 1 + return + +// createApplication(controlledAddress: Address, admin: Address): void +// +// Create an abstracted account application. +// This is not part of ARC58 and implementation specific. +// +// @param controlledAddress The address of the abstracted account. If zeroAddress, then the address of the contract account will be used +// @param admin The admin for this app +createApplication: + proto 2 0 + + // examples/arc58/arc58.algo.ts:87 + // verifyAppCallTxn(this.txn, { + // sender: { includedIn: [controlledAddress, admin] }, + // }) + // verify sender + txn Sender + frame_dig -1 // controlledAddress: Address + == + txn Sender + frame_dig -2 // admin: Address + == + || + + // transaction verification failed: {"txn":{"txnText":"this.txn"},"field":"sender","condition":"includedIn","expected":"[controlledAddress, admin]"} + assert + + // examples/arc58/arc58.algo.ts:91 + // assert(admin !== controlledAddress) + frame_dig -2 // admin: Address + frame_dig -1 // controlledAddress: Address + != + assert + + // examples/arc58/arc58.algo.ts:93 + // this.admin.value = admin + byte 0x61 // "a" + frame_dig -2 // admin: Address + app_global_put + + // examples/arc58/arc58.algo.ts:94 + // this.controlledAddress.value = controlledAddress === Address.zeroAddress ? this.app.address : controlledAddress + byte 0x63 // "c" + frame_dig -1 // controlledAddress: Address + global ZeroAddress + == + bz *ternary1_false + global CurrentApplicationAddress + b *ternary1_end + +*ternary1_false: + frame_dig -1 // controlledAddress: Address + +*ternary1_end: + app_global_put + retsub + +// arc58_changeAdmin(address)void +*abi_route_arc58_changeAdmin: + // newAdmin: address + txna ApplicationArgs 1 + dup + len + int 32 + == + + // argument 0 (newAdmin) for arc58_changeAdmin must be a address + assert + + // execute arc58_changeAdmin(address)void + callsub arc58_changeAdmin + int 1 + return + +// arc58_changeAdmin(newAdmin: Address): void +// +// Attempt to change the admin for this app. Some implementations MAY not support this. +// +// @param newAdmin The new admin +arc58_changeAdmin: + proto 1 0 + + // examples/arc58/arc58.algo.ts:103 + // verifyTxn(this.txn, { sender: this.admin.value }) + // verify sender + txn Sender + byte 0x61 // "a" + app_global_get + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"this.admin.value"} + assert + + // examples/arc58/arc58.algo.ts:104 + // this.admin.value = newAdmin + byte 0x61 // "a" + frame_dig -1 // newAdmin: Address + app_global_put + retsub + +// arc58_pluginChangeAdmin(uint64,address,address)void +*abi_route_arc58_pluginChangeAdmin: + // newAdmin: address + txna ApplicationArgs 3 + dup + len + int 32 + == + + // argument 0 (newAdmin) for arc58_pluginChangeAdmin must be a address + assert + + // allowedCaller: address + txna ApplicationArgs 2 + dup + len + int 32 + == + + // argument 1 (allowedCaller) for arc58_pluginChangeAdmin must be a address + assert + + // plugin: uint64 + txna ApplicationArgs 1 + btoi + + // execute arc58_pluginChangeAdmin(uint64,address,address)void + callsub arc58_pluginChangeAdmin + int 1 + return + +// arc58_pluginChangeAdmin(plugin: AppID, allowedCaller: Address, newAdmin: Address): void +// +// Attempt to change the admin via plugin. +// +// @param plugin The app calling the plugin +// @param allowedCaller The address that triggered the plugin +// @param newAdmin The new admin +arc58_pluginChangeAdmin: + proto 3 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:116 + // verifyTxn(this.txn, { sender: plugin.address }) + // verify sender + txn Sender + frame_dig -1 // plugin: AppID + app_params_get AppAddress + pop + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"plugin.address"} + assert + + // examples/arc58/arc58.algo.ts:117 + // assert(this.controlledAddress.value.authAddr === plugin.address, 'This plugin is not in control of the account') + byte 0x63 // "c" + app_global_get + acct_params_get AcctAuthAddr + pop + frame_dig -1 // plugin: AppID + app_params_get AppAddress + pop + == + + // This plugin is not in control of the account + assert + + // examples/arc58/arc58.algo.ts:119 + // key: PluginsKey = { application: plugin, allowedCaller: allowedCaller } + frame_dig -1 // plugin: AppID + itob + frame_dig -2 // allowedCaller: Address + concat + frame_bury 0 // key: PluginsKey + + // examples/arc58/arc58.algo.ts:120 + // assert( + // this.plugins(key).exists && this.plugins(key).value.adminPrivileges, + // 'This plugin does not have admin privileges' + // ) + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_len + swap + pop + dup + bz *skip_and4 + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_get + + // box value does not exist: this.plugins(key).value + assert + store 255 // full array + load 255 // full array + int 192 + getbit + && + +*skip_and4: + // This plugin does not have admin privileges + assert + + // examples/arc58/arc58.algo.ts:125 + // this.admin.value = newAdmin + byte 0x61 // "a" + frame_dig -3 // newAdmin: Address + app_global_put + retsub + +// arc58_getAdmin()address +*abi_route_arc58_getAdmin: + // The ABI return prefix + byte 0x151f7c75 + + // execute arc58_getAdmin()address + callsub arc58_getAdmin + concat + log + int 1 + return + +// arc58_getAdmin(): Address +// +// Get the admin of this app. This method SHOULD always be used rather than reading directly from state +// because different implementations may have different ways of determining the admin. +arc58_getAdmin: + proto 0 1 + + // examples/arc58/arc58.algo.ts:133 + // return this.admin.value; + byte 0x61 // "a" + app_global_get + retsub + +// arc58_verifyAuthAddr()void +*abi_route_arc58_verifyAuthAddr: + // execute arc58_verifyAuthAddr()void + callsub arc58_verifyAuthAddr + int 1 + return + +// arc58_verifyAuthAddr(): void +// +// Verify the abstracted account is rekeyed to this app +arc58_verifyAuthAddr: + proto 0 0 + + // examples/arc58/arc58.algo.ts:140 + // assert(this.controlledAddress.value.authAddr === this.getAuthAddr()) + byte 0x63 // "c" + app_global_get + acct_params_get AcctAuthAddr + pop + callsub getAuthAddr + == + assert + retsub + +// arc58_rekeyTo(address,bool)void +*abi_route_arc58_rekeyTo: + // flash: bool + txna ApplicationArgs 2 + dup + len + int 1 + == + + // argument 0 (flash) for arc58_rekeyTo must be a bool + assert + int 0 + getbit + + // addr: address + txna ApplicationArgs 1 + dup + len + int 32 + == + + // argument 1 (addr) for arc58_rekeyTo must be a address + assert + + // execute arc58_rekeyTo(address,bool)void + callsub arc58_rekeyTo + int 1 + return + +// arc58_rekeyTo(addr: Address, flash: boolean): void +// +// Rekey the abstracted account to another address. Primarily useful for rekeying to an EOA. +// +// @param addr The address to rekey to +// @param flash Whether or not this should be a flash rekey. If true, the rekey back to the app address must done in the same txn group as this call +arc58_rekeyTo: + proto 2 0 + + // examples/arc58/arc58.algo.ts:150 + // verifyAppCallTxn(this.txn, { sender: this.admin.value }) + // verify sender + txn Sender + byte 0x61 // "a" + app_global_get + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"this.admin.value"} + assert + + // examples/arc58/arc58.algo.ts:152 + // sendPayment({ + // sender: this.controlledAddress.value, + // receiver: addr, + // rekeyTo: addr, + // note: 'rekeying abstracted account', + // }) + itxn_begin + int pay + itxn_field TypeEnum + + // examples/arc58/arc58.algo.ts:153 + // sender: this.controlledAddress.value + byte 0x63 // "c" + app_global_get + itxn_field Sender + + // examples/arc58/arc58.algo.ts:154 + // receiver: addr + frame_dig -1 // addr: Address + itxn_field Receiver + + // examples/arc58/arc58.algo.ts:155 + // rekeyTo: addr + frame_dig -1 // addr: Address + itxn_field RekeyTo + + // examples/arc58/arc58.algo.ts:156 + // note: 'rekeying abstracted account' + byte 0x72656b6579696e672061627374726163746564206163636f756e74 // "rekeying abstracted account" + itxn_field Note + + // Fee field not set, defaulting to 0 + int 0 + itxn_field Fee + + // Submit inner transaction + itxn_submit + + // *if2_condition + // examples/arc58/arc58.algo.ts:159 + // flash + frame_dig -2 // flash: boolean + bz *if2_end + + // *if2_consequent + // examples/arc58/arc58.algo.ts:159 + // this.verifyRekeyToAbstractedAccount() + callsub verifyRekeyToAbstractedAccount + +*if2_end: + retsub + +// pluginCallAllowed(app: AppID, caller: Address): boolean +pluginCallAllowed: + proto 2 1 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:163 + // key: PluginsKey = { application: app, allowedCaller: caller } + frame_dig -1 // app: AppID + itob + frame_dig -2 // caller: Address + concat + frame_bury 0 // key: PluginsKey + + // examples/arc58/arc58.algo.ts:165 + // return ( + // this.plugins(key).exists && + // this.plugins(key).value.lastValidRound >= globals.round && + // globals.round - this.plugins(key).value.lastCalled >= this.plugins(key).value.cooldown + // ); + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_len + swap + pop + dup + bz *skip_and5 + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_get + + // box value does not exist: this.plugins(key).value + assert + store 255 // full array + load 255 // full array + extract 0 8 + btoi + global Round + >= + && + +*skip_and5: + dup + bz *skip_and6 + global Round + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_get + + // box value does not exist: this.plugins(key).value + assert + store 255 // full array + load 255 // full array + extract 16 8 + btoi + - + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_get + + // box value does not exist: this.plugins(key).value + assert + store 255 // full array + load 255 // full array + extract 8 8 + btoi + >= + && + +*skip_and6: + // set the subroutine return value + frame_bury 0 + retsub + +// arc58_rekeyToPlugin(uint64)void +*abi_route_arc58_rekeyToPlugin: + // plugin: uint64 + txna ApplicationArgs 1 + btoi + + // execute arc58_rekeyToPlugin(uint64)void + callsub arc58_rekeyToPlugin + int 1 + return + +// arc58_rekeyToPlugin(plugin: AppID): void +// +// Temporarily rekey to an approved plugin app address +// +// @param plugin The app to rekey to +arc58_rekeyToPlugin: + proto 1 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:178 + // globalAllowed = this.pluginCallAllowed(plugin, Address.zeroAddress) + global ZeroAddress + frame_dig -1 // plugin: AppID + callsub pluginCallAllowed + frame_bury 0 // globalAllowed: bool + + // *if3_condition + // examples/arc58/arc58.algo.ts:180 + // !globalAllowed + frame_dig 0 // globalAllowed: bool + ! + bz *if3_end + + // *if3_consequent + // examples/arc58/arc58.algo.ts:181 + // assert(this.pluginCallAllowed(plugin, this.txn.sender), 'This sender is not allowed to trigger this plugin') + txn Sender + frame_dig -1 // plugin: AppID + callsub pluginCallAllowed + + // This sender is not allowed to trigger this plugin + assert + +*if3_end: + // examples/arc58/arc58.algo.ts:183 + // sendPayment({ + // sender: this.controlledAddress.value, + // receiver: this.controlledAddress.value, + // rekeyTo: plugin.address, + // note: 'rekeying to plugin app', + // }) + itxn_begin + int pay + itxn_field TypeEnum + + // examples/arc58/arc58.algo.ts:184 + // sender: this.controlledAddress.value + byte 0x63 // "c" + app_global_get + itxn_field Sender + + // examples/arc58/arc58.algo.ts:185 + // receiver: this.controlledAddress.value + byte 0x63 // "c" + app_global_get + itxn_field Receiver + + // examples/arc58/arc58.algo.ts:186 + // rekeyTo: plugin.address + frame_dig -1 // plugin: AppID + app_params_get AppAddress + pop + itxn_field RekeyTo + + // examples/arc58/arc58.algo.ts:187 + // note: 'rekeying to plugin app' + byte 0x72656b6579696e6720746f20706c7567696e20617070 // "rekeying to plugin app" + itxn_field Note + + // Fee field not set, defaulting to 0 + int 0 + itxn_field Fee + + // Submit inner transaction + itxn_submit + + // examples/arc58/arc58.algo.ts:190 + // this.plugins({ + // application: plugin, + // allowedCaller: globalAllowed ? Address.zeroAddress : this.txn.sender, + // }).value.lastCalled = globals.round + byte 0x70 // "p" + frame_dig -1 // plugin: AppID + itob + frame_dig 0 // globalAllowed: bool + bz *ternary3_false + global ZeroAddress + b *ternary3_end + +*ternary3_false: + txn Sender + +*ternary3_end: + concat + concat + box_get + + // box value does not exist: this.plugins({ application: plugin, allowedCaller: globalAllowed ? Address.zeroAddress : this.txn.sender, }).value + assert + store 255 // full array + load 255 // full array + int 16 + global Round + itob + byte 0x70 // "p" + frame_dig -1 // plugin: AppID + itob + frame_dig 0 // globalAllowed: bool + bz *ternary5_false + global ZeroAddress + b *ternary5_end + +*ternary5_false: + txn Sender + +*ternary5_end: + concat + concat + cover 2 + box_replace + + // examples/arc58/arc58.algo.ts:195 + // this.verifyRekeyToAbstractedAccount() + callsub verifyRekeyToAbstractedAccount + retsub + +// arc58_rekeyToNamedPlugin(string)void +*abi_route_arc58_rekeyToNamedPlugin: + // name: string + txna ApplicationArgs 1 + extract 2 0 + + // execute arc58_rekeyToNamedPlugin(string)void + callsub arc58_rekeyToNamedPlugin + int 1 + return + +// arc58_rekeyToNamedPlugin(name: string): void +// +// Temporarily rekey to a named plugin app address +// +// @param name The name of the plugin to rekey to +arc58_rekeyToNamedPlugin: + proto 1 0 + + // examples/arc58/arc58.algo.ts:204 + // this.arc58_rekeyToPlugin(this.namedPlugins(name).value.application) + int 0 + int 8 + byte 0x6e // "n" + frame_dig -1 // name: string + concat + cover 2 + box_extract + btoi + callsub arc58_rekeyToPlugin + retsub + +// arc58_addPlugin(uint64,address,uint64,uint64,bool)void +*abi_route_arc58_addPlugin: + // adminPrivileges: bool + txna ApplicationArgs 5 + dup + len + int 1 + == + + // argument 0 (adminPrivileges) for arc58_addPlugin must be a bool + assert + int 0 + getbit + + // cooldown: uint64 + txna ApplicationArgs 4 + btoi + + // lastValidRound: uint64 + txna ApplicationArgs 3 + btoi + + // allowedCaller: address + txna ApplicationArgs 2 + dup + len + int 32 + == + + // argument 3 (allowedCaller) for arc58_addPlugin must be a address + assert + + // app: uint64 + txna ApplicationArgs 1 + btoi + + // execute arc58_addPlugin(uint64,address,uint64,uint64,bool)void + callsub arc58_addPlugin + int 1 + return + +// arc58_addPlugin(app: AppID, allowedCaller: Address, lastValidRound: uint64, cooldown: uint64, adminPrivileges: boolean): void +// +// Add an app to the list of approved plugins +// +// @param app The app to add +// @param allowedCaller The address of that's allowed to call the app +// or the global zero address for all addresses +// @param lastValidRound The round when the permission expires +// @param cooldown The number of rounds that must pass before the plugin can be called again +// @param adminPrivileges Whether the plugin has permissions to change the admin account +arc58_addPlugin: + proto 5 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:224 + // verifyTxn(this.txn, { sender: this.admin.value }) + // verify sender + txn Sender + byte 0x61 // "a" + app_global_get + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"this.admin.value"} + assert + + // examples/arc58/arc58.algo.ts:225 + // key: PluginsKey = { application: app, allowedCaller: allowedCaller } + frame_dig -1 // app: AppID + itob + frame_dig -2 // allowedCaller: Address + concat + frame_bury 0 // key: PluginsKey + + // examples/arc58/arc58.algo.ts:226 + // this.plugins(key).value = { + // lastValidRound: lastValidRound, + // cooldown: cooldown, + // lastCalled: 0, + // adminPrivileges: adminPrivileges, + // } + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + frame_dig -3 // lastValidRound: uint64 + itob + frame_dig -4 // cooldown: uint64 + itob + concat + byte 0x0000000000000000 + concat + byte 0x00 + int 0 + frame_dig -5 // adminPrivileges: boolean + setbit + concat + box_put + retsub + +// arc58_removePlugin(uint64,address)void +*abi_route_arc58_removePlugin: + // allowedCaller: address + txna ApplicationArgs 2 + dup + len + int 32 + == + + // argument 0 (allowedCaller) for arc58_removePlugin must be a address + assert + + // app: uint64 + txna ApplicationArgs 1 + btoi + + // execute arc58_removePlugin(uint64,address)void + callsub arc58_removePlugin + int 1 + return + +// arc58_removePlugin(app: AppID, allowedCaller: Address): void +// +// Remove an app from the list of approved plugins +// +// @param app The app to remove +arc58_removePlugin: + proto 2 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:240 + // verifyTxn(this.txn, { sender: this.admin.value }) + // verify sender + txn Sender + byte 0x61 // "a" + app_global_get + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"this.admin.value"} + assert + + // examples/arc58/arc58.algo.ts:242 + // key: PluginsKey = { application: app, allowedCaller: allowedCaller } + frame_dig -1 // app: AppID + itob + frame_dig -2 // allowedCaller: Address + concat + frame_bury 0 // key: PluginsKey + + // examples/arc58/arc58.algo.ts:243 + // this.plugins(key).delete() + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + box_del + retsub + +// arc58_addNamedPlugin(string,uint64,address,uint64,uint64,bool)void +*abi_route_arc58_addNamedPlugin: + // adminPrivileges: bool + txna ApplicationArgs 6 + dup + len + int 1 + == + + // argument 0 (adminPrivileges) for arc58_addNamedPlugin must be a bool + assert + int 0 + getbit + + // cooldown: uint64 + txna ApplicationArgs 5 + btoi + + // lastValidRound: uint64 + txna ApplicationArgs 4 + btoi + + // allowedCaller: address + txna ApplicationArgs 3 + dup + len + int 32 + == + + // argument 3 (allowedCaller) for arc58_addNamedPlugin must be a address + assert + + // app: uint64 + txna ApplicationArgs 2 + btoi + + // name: string + txna ApplicationArgs 1 + extract 2 0 + + // execute arc58_addNamedPlugin(string,uint64,address,uint64,uint64,bool)void + callsub arc58_addNamedPlugin + int 1 + return + +// arc58_addNamedPlugin(name: string, app: AppID, allowedCaller: Address, lastValidRound: uint64, cooldown: uint64, adminPrivileges: boolean): void +// +// Add a named plugin +// +// @param app The plugin app +// @param name The plugin name +// @param allowedCaller The address of that's allowed to call the app +// or the global zero address for all addresses +// @param lastValidRound The round when the permission expires +// @param cooldown The number of rounds that must pass before the plugin can be called again +// @param adminPrivileges Whether the plugin has permissions to change the admin account +arc58_addNamedPlugin: + proto 6 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:265 + // verifyTxn(this.txn, { sender: this.admin.value }) + // verify sender + txn Sender + byte 0x61 // "a" + app_global_get + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"this.admin.value"} + assert + + // examples/arc58/arc58.algo.ts:266 + // assert(!this.namedPlugins(name).exists) + byte 0x6e // "n" + frame_dig -1 // name: string + concat + box_len + swap + pop + ! + assert + + // examples/arc58/arc58.algo.ts:268 + // key: PluginsKey = { application: app, allowedCaller: allowedCaller } + frame_dig -2 // app: AppID + itob + frame_dig -3 // allowedCaller: Address + concat + frame_bury 0 // key: PluginsKey + + // examples/arc58/arc58.algo.ts:269 + // this.namedPlugins(name).value = key + byte 0x6e // "n" + frame_dig -1 // name: string + concat + frame_dig 0 // key: PluginsKey + box_put + + // examples/arc58/arc58.algo.ts:270 + // this.plugins(key).value = { + // lastValidRound: lastValidRound, + // cooldown: cooldown, + // lastCalled: 0, + // adminPrivileges: adminPrivileges, + // } + byte 0x70 // "p" + frame_dig 0 // key: PluginsKey + concat + frame_dig -4 // lastValidRound: uint64 + itob + frame_dig -5 // cooldown: uint64 + itob + concat + byte 0x0000000000000000 + concat + byte 0x00 + int 0 + frame_dig -6 // adminPrivileges: boolean + setbit + concat + box_put + retsub + +// arc58_removeNamedPlugin(string)void +*abi_route_arc58_removeNamedPlugin: + // name: string + txna ApplicationArgs 1 + extract 2 0 + + // execute arc58_removeNamedPlugin(string)void + callsub arc58_removeNamedPlugin + int 1 + return + +// arc58_removeNamedPlugin(name: string): void +// +// Remove a named plugin +// +// @param name The plugin name +arc58_removeNamedPlugin: + proto 1 0 + + // Push empty bytes after the frame pointer to reserve space for local variables + byte 0x + + // examples/arc58/arc58.algo.ts:284 + // verifyTxn(this.txn, { sender: this.admin.value }) + // verify sender + txn Sender + byte 0x61 // "a" + app_global_get + == + + // transaction verification failed: {"txn":"this.txn","field":"sender","expected":"this.admin.value"} + assert + + // examples/arc58/arc58.algo.ts:286 + // app = this.namedPlugins(name).value + byte 0x6e // "n" + frame_dig -1 // name: string + concat + frame_bury 0 // storage key//app + + // examples/arc58/arc58.algo.ts:287 + // this.namedPlugins(name).delete() + byte 0x6e // "n" + frame_dig -1 // name: string + concat + box_del + + // examples/arc58/arc58.algo.ts:288 + // this.plugins(app).delete() + byte 0x70 // "p" + frame_dig 0 // storage key//app + box_get + + // box value does not exist: this.namedPlugins(name).value + assert + concat + box_del + retsub + +*create_NoOp: + method "createApplication(address,address)void" + txna ApplicationArgs 0 + match *abi_route_createApplication + + // this contract does not implement the given ABI method for create NoOp + err + +*call_NoOp: + method "arc58_changeAdmin(address)void" + method "arc58_pluginChangeAdmin(uint64,address,address)void" + method "arc58_getAdmin()address" + method "arc58_verifyAuthAddr()void" + method "arc58_rekeyTo(address,bool)void" + method "arc58_rekeyToPlugin(uint64)void" + method "arc58_rekeyToNamedPlugin(string)void" + method "arc58_addPlugin(uint64,address,uint64,uint64,bool)void" + method "arc58_removePlugin(uint64,address)void" + method "arc58_addNamedPlugin(string,uint64,address,uint64,uint64,bool)void" + method "arc58_removeNamedPlugin(string)void" + txna ApplicationArgs 0 + match *abi_route_arc58_changeAdmin *abi_route_arc58_pluginChangeAdmin *abi_route_arc58_getAdmin *abi_route_arc58_verifyAuthAddr *abi_route_arc58_rekeyTo *abi_route_arc58_rekeyToPlugin *abi_route_arc58_rekeyToNamedPlugin *abi_route_arc58_addPlugin *abi_route_arc58_removePlugin *abi_route_arc58_addNamedPlugin *abi_route_arc58_removeNamedPlugin + + // this contract does not implement the given ABI method for call NoOp + err \ No newline at end of file diff --git a/examples/arc58/artifacts/AbstractedAccount.arc32.json b/examples/arc58/artifacts/AbstractedAccount.arc32.json new file mode 100644 index 000000000..1df5f4e24 --- /dev/null +++ b/examples/arc58/artifacts/AbstractedAccount.arc32.json @@ -0,0 +1,335 @@ +{ + "hints": { + "createApplication(address,address)void": { + "call_config": { + "no_op": "CREATE" + } + }, + "arc58_changeAdmin(address)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_pluginChangeAdmin(uint64,address,address)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_getAdmin()address": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_verifyAuthAddr()void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_rekeyTo(address,bool)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_rekeyToPlugin(uint64)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_rekeyToNamedPlugin(string)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_addPlugin(uint64,address,uint64,uint64,bool)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_removePlugin(uint64,address)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_addNamedPlugin(string,uint64,address,uint64,uint64,bool)void": { + "call_config": { + "no_op": "CALL" + } + }, + "arc58_removeNamedPlugin(string)void": { + "call_config": { + "no_op": "CALL" + } + } + }, + "bare_call_config": { + "no_op": "NEVER", + "opt_in": "NEVER", + "close_out": "NEVER", + "update_application": "NEVER", + "delete_application": "NEVER" + }, + "schema": { + "local": { + "declared": {}, + "reserved": {} + }, + "global": { + "declared": { + "admin": { + "type": "bytes", + "key": "a" + }, + "controlledAddress": { + "type": "bytes", + "key": "c" + } + }, + "reserved": {} + } + }, + "state": { + "global": { + "num_byte_slices": 2, + "num_uints": 0 + }, + "local": { + "num_byte_slices": 0, + "num_uints": 0 + } + }, + "source": { + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2ZXJpZnlSZWtleVRvQWJzdHJhY3RlZEFjY291bnQoKTogdm9pZAovLwovLyBFbnN1cmUgdGhhdCBieSB0aGUgZW5kIG9mIHRoZSBncm91cCB0aGUgYWJzdHJhY3RlZCBhY2NvdW50IGhhcyBjb250cm9sIG9mIGl0cyBhZGRyZXNzCnZlcmlmeVJla2V5VG9BYnN0cmFjdGVkQWNjb3VudDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjQ1CgkvLyByZWtleWVkQmFjayA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIHJla2V5ZWRCYWNrOiBib29sCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo0NwoJLy8gZm9yIChsZXQgaSA9IHRoaXMudHhuLmdyb3VwSW5kZXg7IGkgPCB0aGlzLnR4bkdyb3VwLmxlbmd0aDsgaSArPSAxKQoJdHhuIEdyb3VwSW5kZXgKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCipmb3JfMDoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6NDcKCS8vIGkgPCB0aGlzLnR4bkdyb3VwLmxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglnbG9iYWwgR3JvdXBTaXplCgk8CglieiAqZm9yXzBfZW5kCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo0OAoJLy8gdHhuID0gdGhpcy50eG5Hcm91cFtpXQoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gdHhuOiB0eG4KCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo1MQoJLy8gdHhuLnNlbmRlciA9PT0gdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZSAmJiB0eG4ucmVrZXlUbyA9PT0gdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZQoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIFNlbmRlcgoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCT09CglkdXAKCWJ6ICpza2lwX2FuZDAKCWZyYW1lX2RpZyAyIC8vIHR4bjogdHhuCglndHhucyBSZWtleVRvCglieXRlIDB4NjMgLy8gImMiCglhcHBfZ2xvYmFsX2dldAoJPT0KCSYmCgoqc2tpcF9hbmQwOgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6NTIKCS8vIHJla2V5ZWRCYWNrID0gdHJ1ZQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyByZWtleWVkQmFjazogYm9vbAoJYiAqZm9yXzBfZW5kCgoqaWYwX2VuZDoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjU4CgkvLyB0eG4udHlwZUVudW0gPT09IFRyYW5zYWN0aW9uVHlwZS5BcHBsaWNhdGlvbkNhbGwgJiYKCS8vICAgICAgICAgdHhuLmFwcGxpY2F0aW9uSUQgPT09IHRoaXMuYXBwICYmCgkvLyAgICAgICAgIHR4bi5udW1BcHBBcmdzID09PSAxICYmCgkvLyAgICAgICAgIHR4bi5hcHBsaWNhdGlvbkFyZ3NbMF0gPT09IG1ldGhvZCgnYXJjNThfdmVyaWZ5QXV0aEFkZHIoKXZvaWQnKQoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIEFwcGxpY2F0aW9uSUQKCXR4bmEgQXBwbGljYXRpb25zIDAKCT09CgkmJgoKKnNraXBfYW5kMToKCWR1cAoJYnogKnNraXBfYW5kMgoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIE51bUFwcEFyZ3MKCWludCAxCgk9PQoJJiYKCipza2lwX2FuZDI6CglkdXAKCWJ6ICpza2lwX2FuZDMKCWZyYW1lX2RpZyAyIC8vIHR4bjogdHhuCglndHhucyBBcHBsaWNhdGlvbkFyZ3MgMAoJbWV0aG9kICJhcmM1OF92ZXJpZnlBdXRoQWRkcigpdm9pZCIKCT09CgkmJgoKKnNraXBfYW5kMzoKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjYzCgkvLyByZWtleWVkQmFjayA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDAgLy8gcmVrZXllZEJhY2s6IGJvb2wKCWIgKmZvcl8wX2VuZAoKKmlmMV9lbmQ6CgoqZm9yXzBfY29udGludWU6CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjQ3CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo2OAoJLy8gYXNzZXJ0KHJla2V5ZWRCYWNrKQoJZnJhbWVfZGlnIDAgLy8gcmVrZXllZEJhY2s6IGJvb2wKCWFzc2VydAoJcmV0c3ViCgovLyBnZXRBdXRoQWRkcigpOiBBZGRyZXNzCi8vCi8vIFdoYXQgdGhlIHZhbHVlIG9mIHRoaXMuYWRkcmVzcy52YWx1ZS5hdXRoQWRkciBzaG91bGQgYmUgd2hlbiB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzCi8vIGlzIGFibGUgdG8gYmUgY29udHJvbGxlZCBieSB0aGlzIGFwcC4gSXQgd2lsbCBlaXRoZXIgYmUgdGhpcy5hcHAuYWRkcmVzcyBvciB6ZXJvQWRkcmVzcwpnZXRBdXRoQWRkcjoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6NzYKCS8vIHJldHVybiB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzLnZhbHVlID09PSB0aGlzLmFwcC5hZGRyZXNzID8gQWRkcmVzcy56ZXJvQWRkcmVzcyA6IHRoaXMuYXBwLmFkZHJlc3M7CglieXRlIDB4NjMgLy8gImMiCglhcHBfZ2xvYmFsX2dldAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CglieiAqdGVybmFyeTBfZmFsc2UKCWdsb2JhbCBaZXJvQWRkcmVzcwoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoKKnRlcm5hcnkwX2VuZDoKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24oYWRkcmVzcyxhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIGFkbWluOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFkbWluKSBmb3IgY3JlYXRlQXBwbGljYXRpb24gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGNvbnRyb2xsZWRBZGRyZXNzOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGNvbnRyb2xsZWRBZGRyZXNzKSBmb3IgY3JlYXRlQXBwbGljYXRpb24gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgY3JlYXRlQXBwbGljYXRpb24oYWRkcmVzcyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgY3JlYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKGNvbnRyb2xsZWRBZGRyZXNzOiBBZGRyZXNzLCBhZG1pbjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ3JlYXRlIGFuIGFic3RyYWN0ZWQgYWNjb3VudCBhcHBsaWNhdGlvbi4KLy8gVGhpcyBpcyBub3QgcGFydCBvZiBBUkM1OCBhbmQgaW1wbGVtZW50YXRpb24gc3BlY2lmaWMuCi8vCi8vIEBwYXJhbSBjb250cm9sbGVkQWRkcmVzcyBUaGUgYWRkcmVzcyBvZiB0aGUgYWJzdHJhY3RlZCBhY2NvdW50LiBJZiB6ZXJvQWRkcmVzcywgdGhlbiB0aGUgYWRkcmVzcyBvZiB0aGUgY29udHJhY3QgYWNjb3VudCB3aWxsIGJlIHVzZWQKLy8gQHBhcmFtIGFkbWluIFRoZSBhZG1pbiBmb3IgdGhpcyBhcHAKY3JlYXRlQXBwbGljYXRpb246Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjg3CgkvLyB2ZXJpZnlBcHBDYWxsVHhuKHRoaXMudHhuLCB7CgkvLyAgICAgICBzZW5kZXI6IHsgaW5jbHVkZWRJbjogW2NvbnRyb2xsZWRBZGRyZXNzLCBhZG1pbl0gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIGNvbnRyb2xsZWRBZGRyZXNzOiBBZGRyZXNzCgk9PQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0yIC8vIGFkbWluOiBBZGRyZXNzCgk9PQoJfHwKCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0IjoidGhpcy50eG4ifSwiZmllbGQiOiJzZW5kZXIiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbY29udHJvbGxlZEFkZHJlc3MsIGFkbWluXSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjkxCgkvLyBhc3NlcnQoYWRtaW4gIT09IGNvbnRyb2xsZWRBZGRyZXNzKQoJZnJhbWVfZGlnIC0yIC8vIGFkbWluOiBBZGRyZXNzCglmcmFtZV9kaWcgLTEgLy8gY29udHJvbGxlZEFkZHJlc3M6IEFkZHJlc3MKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjkzCgkvLyB0aGlzLmFkbWluLnZhbHVlID0gYWRtaW4KCWJ5dGUgMHg2MSAvLyAiYSIKCWZyYW1lX2RpZyAtMiAvLyBhZG1pbjogQWRkcmVzcwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjk0CgkvLyB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzLnZhbHVlID0gY29udHJvbGxlZEFkZHJlc3MgPT09IEFkZHJlc3MuemVyb0FkZHJlc3MgPyB0aGlzLmFwcC5hZGRyZXNzIDogY29udHJvbGxlZEFkZHJlc3MKCWJ5dGUgMHg2MyAvLyAiYyIKCWZyYW1lX2RpZyAtMSAvLyBjb250cm9sbGVkQWRkcmVzczogQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCgk9PQoJYnogKnRlcm5hcnkxX2ZhbHNlCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglmcmFtZV9kaWcgLTEgLy8gY29udHJvbGxlZEFkZHJlc3M6IEFkZHJlc3MKCip0ZXJuYXJ5MV9lbmQ6CglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBhcmM1OF9jaGFuZ2VBZG1pbihhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hcmM1OF9jaGFuZ2VBZG1pbjoKCS8vIG5ld0FkbWluOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKG5ld0FkbWluKSBmb3IgYXJjNThfY2hhbmdlQWRtaW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNThfY2hhbmdlQWRtaW4oYWRkcmVzcyl2b2lkCgljYWxsc3ViIGFyYzU4X2NoYW5nZUFkbWluCglpbnQgMQoJcmV0dXJuCgovLyBhcmM1OF9jaGFuZ2VBZG1pbihuZXdBZG1pbjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQXR0ZW1wdCB0byBjaGFuZ2UgdGhlIGFkbWluIGZvciB0aGlzIGFwcC4gU29tZSBpbXBsZW1lbnRhdGlvbnMgTUFZIG5vdCBzdXBwb3J0IHRoaXMuCi8vCi8vIEBwYXJhbSBuZXdBZG1pbiBUaGUgbmV3IGFkbWluCmFyYzU4X2NoYW5nZUFkbWluOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMDMKCS8vIHZlcmlmeVR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuYWRtaW4udmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5hZG1pbi52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjEwNAoJLy8gdGhpcy5hZG1pbi52YWx1ZSA9IG5ld0FkbWluCglieXRlIDB4NjEgLy8gImEiCglmcmFtZV9kaWcgLTEgLy8gbmV3QWRtaW46IEFkZHJlc3MKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFyYzU4X3BsdWdpbkNoYW5nZUFkbWluKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2FyYzU4X3BsdWdpbkNoYW5nZUFkbWluOgoJLy8gbmV3QWRtaW46IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobmV3QWRtaW4pIGZvciBhcmM1OF9wbHVnaW5DaGFuZ2VBZG1pbiBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYWxsb3dlZENhbGxlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhbGxvd2VkQ2FsbGVyKSBmb3IgYXJjNThfcGx1Z2luQ2hhbmdlQWRtaW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHBsdWdpbjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBhcmM1OF9wbHVnaW5DaGFuZ2VBZG1pbih1aW50NjQsYWRkcmVzcyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYXJjNThfcGx1Z2luQ2hhbmdlQWRtaW4KCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X3BsdWdpbkNoYW5nZUFkbWluKHBsdWdpbjogQXBwSUQsIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MsIG5ld0FkbWluOiBBZGRyZXNzKTogdm9pZAovLwovLyBBdHRlbXB0IHRvIGNoYW5nZSB0aGUgYWRtaW4gdmlhIHBsdWdpbi4KLy8KLy8gQHBhcmFtIHBsdWdpbiBUaGUgYXBwIGNhbGxpbmcgdGhlIHBsdWdpbgovLyBAcGFyYW0gYWxsb3dlZENhbGxlciBUaGUgYWRkcmVzcyB0aGF0IHRyaWdnZXJlZCB0aGUgcGx1Z2luCi8vIEBwYXJhbSBuZXdBZG1pbiBUaGUgbmV3IGFkbWluCmFyYzU4X3BsdWdpbkNoYW5nZUFkbWluOgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjExNgoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7IHNlbmRlcjogcGx1Z2luLmFkZHJlc3MgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBwbHVnaW46IEFwcElECglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJwbHVnaW4uYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjExNwoJLy8gYXNzZXJ0KHRoaXMuY29udHJvbGxlZEFkZHJlc3MudmFsdWUuYXV0aEFkZHIgPT09IHBsdWdpbi5hZGRyZXNzLCAnVGhpcyBwbHVnaW4gaXMgbm90IGluIGNvbnRyb2wgb2YgdGhlIGFjY291bnQnKQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJZnJhbWVfZGlnIC0xIC8vIHBsdWdpbjogQXBwSUQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCgkvLyBUaGlzIHBsdWdpbiBpcyBub3QgaW4gY29udHJvbCBvZiB0aGUgYWNjb3VudAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMTkKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IHBsdWdpbiwgYWxsb3dlZENhbGxlcjogYWxsb3dlZENhbGxlciB9CglmcmFtZV9kaWcgLTEgLy8gcGx1Z2luOiBBcHBJRAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGtleTogUGx1Z2luc0tleQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTIwCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnBsdWdpbnMoa2V5KS5leGlzdHMgJiYgdGhpcy5wbHVnaW5zKGtleSkudmFsdWUuYWRtaW5Qcml2aWxlZ2VzLAoJLy8gICAgICAgJ1RoaXMgcGx1Z2luIGRvZXMgbm90IGhhdmUgYWRtaW4gcHJpdmlsZWdlcycKCS8vICAgICApCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglkdXAKCWJ6ICpza2lwX2FuZDQKCWJ5dGUgMHg3MCAvLyAicCIKCWZyYW1lX2RpZyAwIC8vIGtleTogUGx1Z2luc0tleQoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnBsdWdpbnMoa2V5KS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MgoJZ2V0Yml0CgkmJgoKKnNraXBfYW5kNDoKCS8vIFRoaXMgcGx1Z2luIGRvZXMgbm90IGhhdmUgYWRtaW4gcHJpdmlsZWdlcwoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMjUKCS8vIHRoaXMuYWRtaW4udmFsdWUgPSBuZXdBZG1pbgoJYnl0ZSAweDYxIC8vICJhIgoJZnJhbWVfZGlnIC0zIC8vIG5ld0FkbWluOiBBZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBhcmM1OF9nZXRBZG1pbigpYWRkcmVzcwoqYWJpX3JvdXRlX2FyYzU4X2dldEFkbWluOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFyYzU4X2dldEFkbWluKClhZGRyZXNzCgljYWxsc3ViIGFyYzU4X2dldEFkbWluCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfZ2V0QWRtaW4oKTogQWRkcmVzcwovLwovLyBHZXQgdGhlIGFkbWluIG9mIHRoaXMgYXBwLiBUaGlzIG1ldGhvZCBTSE9VTEQgYWx3YXlzIGJlIHVzZWQgcmF0aGVyIHRoYW4gcmVhZGluZyBkaXJlY3RseSBmcm9tIHN0YXRlCi8vIGJlY2F1c2UgZGlmZmVyZW50IGltcGxlbWVudGF0aW9ucyBtYXkgaGF2ZSBkaWZmZXJlbnQgd2F5cyBvZiBkZXRlcm1pbmluZyB0aGUgYWRtaW4uCmFyYzU4X2dldEFkbWluOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMzMKCS8vIHJldHVybiB0aGlzLmFkbWluLnZhbHVlOwoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gYXJjNThfdmVyaWZ5QXV0aEFkZHIoKXZvaWQKKmFiaV9yb3V0ZV9hcmM1OF92ZXJpZnlBdXRoQWRkcjoKCS8vIGV4ZWN1dGUgYXJjNThfdmVyaWZ5QXV0aEFkZHIoKXZvaWQKCWNhbGxzdWIgYXJjNThfdmVyaWZ5QXV0aEFkZHIKCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X3ZlcmlmeUF1dGhBZGRyKCk6IHZvaWQKLy8KLy8gVmVyaWZ5IHRoZSBhYnN0cmFjdGVkIGFjY291bnQgaXMgcmVrZXllZCB0byB0aGlzIGFwcAphcmM1OF92ZXJpZnlBdXRoQWRkcjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTQwCgkvLyBhc3NlcnQodGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZS5hdXRoQWRkciA9PT0gdGhpcy5nZXRBdXRoQWRkcigpKQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJY2FsbHN1YiBnZXRBdXRoQWRkcgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBhcmM1OF9yZWtleVRvKGFkZHJlc3MsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVrZXlUbzoKCS8vIGZsYXNoOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoZmxhc2gpIGZvciBhcmM1OF9yZWtleVRvIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhZGRyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGFkZHIpIGZvciBhcmM1OF9yZWtleVRvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFyYzU4X3Jla2V5VG8oYWRkcmVzcyxib29sKXZvaWQKCWNhbGxzdWIgYXJjNThfcmVrZXlUbwoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVrZXlUbyhhZGRyOiBBZGRyZXNzLCBmbGFzaDogYm9vbGVhbik6IHZvaWQKLy8KLy8gUmVrZXkgdGhlIGFic3RyYWN0ZWQgYWNjb3VudCB0byBhbm90aGVyIGFkZHJlc3MuIFByaW1hcmlseSB1c2VmdWwgZm9yIHJla2V5aW5nIHRvIGFuIEVPQS4KLy8KLy8gQHBhcmFtIGFkZHIgVGhlIGFkZHJlc3MgdG8gcmVrZXkgdG8KLy8gQHBhcmFtIGZsYXNoIFdoZXRoZXIgb3Igbm90IHRoaXMgc2hvdWxkIGJlIGEgZmxhc2ggcmVrZXkuIElmIHRydWUsIHRoZSByZWtleSBiYWNrIHRvIHRoZSBhcHAgYWRkcmVzcyBtdXN0IGRvbmUgaW4gdGhlIHNhbWUgdHhuIGdyb3VwIGFzIHRoaXMgY2FsbAphcmM1OF9yZWtleVRvOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTAKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFkbWluLnZhbHVlIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMuYWRtaW4udmFsdWUifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTIKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHNlbmRlcjogdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZSwKCS8vICAgICAgIHJlY2VpdmVyOiBhZGRyLAoJLy8gICAgICAgcmVrZXlUbzogYWRkciwKCS8vICAgICAgIG5vdGU6ICdyZWtleWluZyBhYnN0cmFjdGVkIGFjY291bnQnLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTMKCS8vIHNlbmRlcjogdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgU2VuZGVyCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTQKCS8vIHJlY2VpdmVyOiBhZGRyCglmcmFtZV9kaWcgLTEgLy8gYWRkcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTU1CgkvLyByZWtleVRvOiBhZGRyCglmcmFtZV9kaWcgLTEgLy8gYWRkcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWtleVRvCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTYKCS8vIG5vdGU6ICdyZWtleWluZyBhYnN0cmFjdGVkIGFjY291bnQnCglieXRlIDB4NzI2NTZiNjU3OTY5NmU2NzIwNjE2MjczNzQ3MjYxNjM3NDY1NjQyMDYxNjM2MzZmNzU2ZTc0IC8vICJyZWtleWluZyBhYnN0cmFjdGVkIGFjY291bnQiCglpdHhuX2ZpZWxkIE5vdGUKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTU5CgkvLyBmbGFzaAoJZnJhbWVfZGlnIC0yIC8vIGZsYXNoOiBib29sZWFuCglieiAqaWYyX2VuZAoKCS8vICppZjJfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTkKCS8vIHRoaXMudmVyaWZ5UmVrZXlUb0Fic3RyYWN0ZWRBY2NvdW50KCkKCWNhbGxzdWIgdmVyaWZ5UmVrZXlUb0Fic3RyYWN0ZWRBY2NvdW50CgoqaWYyX2VuZDoKCXJldHN1YgoKLy8gcGx1Z2luQ2FsbEFsbG93ZWQoYXBwOiBBcHBJRCwgY2FsbGVyOiBBZGRyZXNzKTogYm9vbGVhbgpwbHVnaW5DYWxsQWxsb3dlZDoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNjMKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IGFwcCwgYWxsb3dlZENhbGxlcjogY2FsbGVyIH0KCWZyYW1lX2RpZyAtMSAvLyBhcHA6IEFwcElECglpdG9iCglmcmFtZV9kaWcgLTIgLy8gY2FsbGVyOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE2NQoJLy8gcmV0dXJuICgKCS8vICAgICAgIHRoaXMucGx1Z2lucyhrZXkpLmV4aXN0cyAmJgoJLy8gICAgICAgdGhpcy5wbHVnaW5zKGtleSkudmFsdWUubGFzdFZhbGlkUm91bmQgPj0gZ2xvYmFscy5yb3VuZCAmJgoJLy8gICAgICAgZ2xvYmFscy5yb3VuZCAtIHRoaXMucGx1Z2lucyhrZXkpLnZhbHVlLmxhc3RDYWxsZWQgPj0gdGhpcy5wbHVnaW5zKGtleSkudmFsdWUuY29vbGRvd24KCS8vICAgICApOwoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIDAgLy8ga2V5OiBQbHVnaW5zS2V5Cgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJZHVwCglieiAqc2tpcF9hbmQ1CglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wbHVnaW5zKGtleSkudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCA4CglidG9pCglnbG9iYWwgUm91bmQKCT49CgkmJgoKKnNraXBfYW5kNToKCWR1cAoJYnogKnNraXBfYW5kNgoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wbHVnaW5zKGtleSkudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJLQoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIDAgLy8ga2V5OiBQbHVnaW5zS2V5Cgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGx1Z2lucyhrZXkpLnZhbHVlCglhc3NlcnQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoJPj0KCSYmCgoqc2tpcF9hbmQ2OgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGFyYzU4X3Jla2V5VG9QbHVnaW4odWludDY0KXZvaWQKKmFiaV9yb3V0ZV9hcmM1OF9yZWtleVRvUGx1Z2luOgoJLy8gcGx1Z2luOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFyYzU4X3Jla2V5VG9QbHVnaW4odWludDY0KXZvaWQKCWNhbGxzdWIgYXJjNThfcmVrZXlUb1BsdWdpbgoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVrZXlUb1BsdWdpbihwbHVnaW46IEFwcElEKTogdm9pZAovLwovLyBUZW1wb3JhcmlseSByZWtleSB0byBhbiBhcHByb3ZlZCBwbHVnaW4gYXBwIGFkZHJlc3MKLy8KLy8gQHBhcmFtIHBsdWdpbiBUaGUgYXBwIHRvIHJla2V5IHRvCmFyYzU4X3Jla2V5VG9QbHVnaW46Cglwcm90byAxIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTc4CgkvLyBnbG9iYWxBbGxvd2VkID0gdGhpcy5wbHVnaW5DYWxsQWxsb3dlZChwbHVnaW4sIEFkZHJlc3MuemVyb0FkZHJlc3MpCglnbG9iYWwgWmVyb0FkZHJlc3MKCWZyYW1lX2RpZyAtMSAvLyBwbHVnaW46IEFwcElECgljYWxsc3ViIHBsdWdpbkNhbGxBbGxvd2VkCglmcmFtZV9idXJ5IDAgLy8gZ2xvYmFsQWxsb3dlZDogYm9vbAoKCS8vICppZjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4MAoJLy8gIWdsb2JhbEFsbG93ZWQKCWZyYW1lX2RpZyAwIC8vIGdsb2JhbEFsbG93ZWQ6IGJvb2wKCSEKCWJ6ICppZjNfZW5kCgoJLy8gKmlmM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4MQoJLy8gYXNzZXJ0KHRoaXMucGx1Z2luQ2FsbEFsbG93ZWQocGx1Z2luLCB0aGlzLnR4bi5zZW5kZXIpLCAnVGhpcyBzZW5kZXIgaXMgbm90IGFsbG93ZWQgdG8gdHJpZ2dlciB0aGlzIHBsdWdpbicpCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcGx1Z2luOiBBcHBJRAoJY2FsbHN1YiBwbHVnaW5DYWxsQWxsb3dlZAoKCS8vIFRoaXMgc2VuZGVyIGlzIG5vdCBhbGxvd2VkIHRvIHRyaWdnZXIgdGhpcyBwbHVnaW4KCWFzc2VydAoKKmlmM19lbmQ6CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4MwoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzLnZhbHVlLAoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuY29udHJvbGxlZEFkZHJlc3MudmFsdWUsCgkvLyAgICAgICByZWtleVRvOiBwbHVnaW4uYWRkcmVzcywKCS8vICAgICAgIG5vdGU6ICdyZWtleWluZyB0byBwbHVnaW4gYXBwJywKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTg0CgkvLyBzZW5kZXI6IHRoaXMuY29udHJvbGxlZEFkZHJlc3MudmFsdWUKCWJ5dGUgMHg2MyAvLyAiYyIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIFNlbmRlcgoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTg1CgkvLyByZWNlaXZlcjogdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4NgoJLy8gcmVrZXlUbzogcGx1Z2luLmFkZHJlc3MKCWZyYW1lX2RpZyAtMSAvLyBwbHVnaW46IEFwcElECglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVrZXlUbwoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTg3CgkvLyBub3RlOiAncmVrZXlpbmcgdG8gcGx1Z2luIGFwcCcKCWJ5dGUgMHg3MjY1NmI2NTc5Njk2ZTY3MjA3NDZmMjA3MDZjNzU2NzY5NmUyMDYxNzA3MCAvLyAicmVrZXlpbmcgdG8gcGx1Z2luIGFwcCIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE5MAoJLy8gdGhpcy5wbHVnaW5zKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uOiBwbHVnaW4sCgkvLyAgICAgICBhbGxvd2VkQ2FsbGVyOiBnbG9iYWxBbGxvd2VkID8gQWRkcmVzcy56ZXJvQWRkcmVzcyA6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICB9KS52YWx1ZS5sYXN0Q2FsbGVkID0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIC0xIC8vIHBsdWdpbjogQXBwSUQKCWl0b2IKCWZyYW1lX2RpZyAwIC8vIGdsb2JhbEFsbG93ZWQ6IGJvb2wKCWJ6ICp0ZXJuYXJ5M19mYWxzZQoJZ2xvYmFsIFplcm9BZGRyZXNzCgliICp0ZXJuYXJ5M19lbmQKCip0ZXJuYXJ5M19mYWxzZToKCXR4biBTZW5kZXIKCip0ZXJuYXJ5M19lbmQ6Cgljb25jYXQKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wbHVnaW5zKHsgYXBwbGljYXRpb246IHBsdWdpbiwgYWxsb3dlZENhbGxlcjogZ2xvYmFsQWxsb3dlZCA/IEFkZHJlc3MuemVyb0FkZHJlc3MgOiB0aGlzLnR4bi5zZW5kZXIsIH0pLnZhbHVlCglhc3NlcnQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTYKCWdsb2JhbCBSb3VuZAoJaXRvYgoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIC0xIC8vIHBsdWdpbjogQXBwSUQKCWl0b2IKCWZyYW1lX2RpZyAwIC8vIGdsb2JhbEFsbG93ZWQ6IGJvb2wKCWJ6ICp0ZXJuYXJ5NV9mYWxzZQoJZ2xvYmFsIFplcm9BZGRyZXNzCgliICp0ZXJuYXJ5NV9lbmQKCip0ZXJuYXJ5NV9mYWxzZToKCXR4biBTZW5kZXIKCip0ZXJuYXJ5NV9lbmQ6Cgljb25jYXQKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE5NQoJLy8gdGhpcy52ZXJpZnlSZWtleVRvQWJzdHJhY3RlZEFjY291bnQoKQoJY2FsbHN1YiB2ZXJpZnlSZWtleVRvQWJzdHJhY3RlZEFjY291bnQKCXJldHN1YgoKLy8gYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKHN0cmluZyl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luOgoJLy8gbmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKHN0cmluZyl2b2lkCgljYWxsc3ViIGFyYzU4X3Jla2V5VG9OYW1lZFBsdWdpbgoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKG5hbWU6IHN0cmluZyk6IHZvaWQKLy8KLy8gVGVtcG9yYXJpbHkgcmVrZXkgdG8gYSBuYW1lZCBwbHVnaW4gYXBwIGFkZHJlc3MKLy8KLy8gQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGhlIHBsdWdpbiB0byByZWtleSB0bwphcmM1OF9yZWtleVRvTmFtZWRQbHVnaW46Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjIwNAoJLy8gdGhpcy5hcmM1OF9yZWtleVRvUGx1Z2luKHRoaXMubmFtZWRQbHVnaW5zKG5hbWUpLnZhbHVlLmFwcGxpY2F0aW9uKQoJaW50IDAKCWludCA4CglieXRlIDB4NmUgLy8gIm4iCglmcmFtZV9kaWcgLTEgLy8gbmFtZTogc3RyaW5nCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgljYWxsc3ViIGFyYzU4X3Jla2V5VG9QbHVnaW4KCXJldHN1YgoKLy8gYXJjNThfYWRkUGx1Z2luKHVpbnQ2NCxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNThfYWRkUGx1Z2luOgoJLy8gYWRtaW5Qcml2aWxlZ2VzOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYWRtaW5Qcml2aWxlZ2VzKSBmb3IgYXJjNThfYWRkUGx1Z2luIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBjb29sZG93bjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglidG9pCgoJLy8gbGFzdFZhbGlkUm91bmQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFsbG93ZWRDYWxsZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoYWxsb3dlZENhbGxlcikgZm9yIGFyYzU4X2FkZFBsdWdpbiBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXBwOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFyYzU4X2FkZFBsdWdpbih1aW50NjQsYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoJY2FsbHN1YiBhcmM1OF9hZGRQbHVnaW4KCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X2FkZFBsdWdpbihhcHA6IEFwcElELCBhbGxvd2VkQ2FsbGVyOiBBZGRyZXNzLCBsYXN0VmFsaWRSb3VuZDogdWludDY0LCBjb29sZG93bjogdWludDY0LCBhZG1pblByaXZpbGVnZXM6IGJvb2xlYW4pOiB2b2lkCi8vCi8vIEFkZCBhbiBhcHAgdG8gdGhlIGxpc3Qgb2YgYXBwcm92ZWQgcGx1Z2lucwovLwovLyBAcGFyYW0gYXBwIFRoZSBhcHAgdG8gYWRkCi8vIEBwYXJhbSBhbGxvd2VkQ2FsbGVyIFRoZSBhZGRyZXNzIG9mIHRoYXQncyBhbGxvd2VkIHRvIGNhbGwgdGhlIGFwcAovLyBvciB0aGUgZ2xvYmFsIHplcm8gYWRkcmVzcyBmb3IgYWxsIGFkZHJlc3NlcwovLyBAcGFyYW0gbGFzdFZhbGlkUm91bmQgVGhlIHJvdW5kIHdoZW4gdGhlIHBlcm1pc3Npb24gZXhwaXJlcwovLyBAcGFyYW0gY29vbGRvd24gIFRoZSBudW1iZXIgb2Ygcm91bmRzIHRoYXQgbXVzdCBwYXNzIGJlZm9yZSB0aGUgcGx1Z2luIGNhbiBiZSBjYWxsZWQgYWdhaW4KLy8gQHBhcmFtIGFkbWluUHJpdmlsZWdlcyBXaGV0aGVyIHRoZSBwbHVnaW4gaGFzIHBlcm1pc3Npb25zIHRvIGNoYW5nZSB0aGUgYWRtaW4gYWNjb3VudAphcmM1OF9hZGRQbHVnaW46Cglwcm90byA1IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjI0CgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFkbWluLnZhbHVlIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMuYWRtaW4udmFsdWUifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyMjUKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IGFwcCwgYWxsb3dlZENhbGxlcjogYWxsb3dlZENhbGxlciB9CglmcmFtZV9kaWcgLTEgLy8gYXBwOiBBcHBJRAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGtleTogUGx1Z2luc0tleQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjI2CgkvLyB0aGlzLnBsdWdpbnMoa2V5KS52YWx1ZSA9IHsKCS8vICAgICAgIGxhc3RWYWxpZFJvdW5kOiBsYXN0VmFsaWRSb3VuZCwKCS8vICAgICAgIGNvb2xkb3duOiBjb29sZG93biwKCS8vICAgICAgIGxhc3RDYWxsZWQ6IDAsCgkvLyAgICAgICBhZG1pblByaXZpbGVnZXM6IGFkbWluUHJpdmlsZWdlcywKCS8vICAgICB9CglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIGxhc3RWYWxpZFJvdW5kOiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtNCAvLyBjb29sZG93bjogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAtNSAvLyBhZG1pblByaXZpbGVnZXM6IGJvb2xlYW4KCXNldGJpdAoJY29uY2F0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFyYzU4X3JlbW92ZVBsdWdpbih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVtb3ZlUGx1Z2luOgoJLy8gYWxsb3dlZENhbGxlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhbGxvd2VkQ2FsbGVyKSBmb3IgYXJjNThfcmVtb3ZlUGx1Z2luIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBhcHA6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYXJjNThfcmVtb3ZlUGx1Z2luKHVpbnQ2NCxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYXJjNThfcmVtb3ZlUGx1Z2luCglpbnQgMQoJcmV0dXJuCgovLyBhcmM1OF9yZW1vdmVQbHVnaW4oYXBwOiBBcHBJRCwgYWxsb3dlZENhbGxlcjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gUmVtb3ZlIGFuIGFwcCBmcm9tIHRoZSBsaXN0IG9mIGFwcHJvdmVkIHBsdWdpbnMKLy8KLy8gQHBhcmFtIGFwcCBUaGUgYXBwIHRvIHJlbW92ZQphcmM1OF9yZW1vdmVQbHVnaW46Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjQwCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFkbWluLnZhbHVlIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMuYWRtaW4udmFsdWUifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyNDIKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IGFwcCwgYWxsb3dlZENhbGxlcjogYWxsb3dlZENhbGxlciB9CglmcmFtZV9kaWcgLTEgLy8gYXBwOiBBcHBJRAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGtleTogUGx1Z2luc0tleQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjQzCgkvLyB0aGlzLnBsdWdpbnMoa2V5KS5kZWxldGUoKQoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIDAgLy8ga2V5OiBQbHVnaW5zS2V5Cgljb25jYXQKCWJveF9kZWwKCXJldHN1YgoKLy8gYXJjNThfYWRkTmFtZWRQbHVnaW4oc3RyaW5nLHVpbnQ2NCxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNThfYWRkTmFtZWRQbHVnaW46CgkvLyBhZG1pblByaXZpbGVnZXM6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhZG1pblByaXZpbGVnZXMpIGZvciBhcmM1OF9hZGROYW1lZFBsdWdpbiBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gY29vbGRvd246IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNQoJYnRvaQoKCS8vIGxhc3RWYWxpZFJvdW5kOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhbGxvd2VkQ2FsbGVyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDMgKGFsbG93ZWRDYWxsZXIpIGZvciBhcmM1OF9hZGROYW1lZFBsdWdpbiBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXBwOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBuYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBhcmM1OF9hZGROYW1lZFBsdWdpbihzdHJpbmcsdWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCxib29sKXZvaWQKCWNhbGxzdWIgYXJjNThfYWRkTmFtZWRQbHVnaW4KCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X2FkZE5hbWVkUGx1Z2luKG5hbWU6IHN0cmluZywgYXBwOiBBcHBJRCwgYWxsb3dlZENhbGxlcjogQWRkcmVzcywgbGFzdFZhbGlkUm91bmQ6IHVpbnQ2NCwgY29vbGRvd246IHVpbnQ2NCwgYWRtaW5Qcml2aWxlZ2VzOiBib29sZWFuKTogdm9pZAovLwovLyBBZGQgYSBuYW1lZCBwbHVnaW4KLy8KLy8gQHBhcmFtIGFwcCBUaGUgcGx1Z2luIGFwcAovLyBAcGFyYW0gbmFtZSBUaGUgcGx1Z2luIG5hbWUKLy8gQHBhcmFtIGFsbG93ZWRDYWxsZXIgVGhlIGFkZHJlc3Mgb2YgdGhhdCdzIGFsbG93ZWQgdG8gY2FsbCB0aGUgYXBwCi8vIG9yIHRoZSBnbG9iYWwgemVybyBhZGRyZXNzIGZvciBhbGwgYWRkcmVzc2VzCi8vIEBwYXJhbSBsYXN0VmFsaWRSb3VuZCBUaGUgcm91bmQgd2hlbiB0aGUgcGVybWlzc2lvbiBleHBpcmVzCi8vIEBwYXJhbSBjb29sZG93biAgVGhlIG51bWJlciBvZiByb3VuZHMgdGhhdCBtdXN0IHBhc3MgYmVmb3JlIHRoZSBwbHVnaW4gY2FuIGJlIGNhbGxlZCBhZ2FpbgovLyBAcGFyYW0gYWRtaW5Qcml2aWxlZ2VzIFdoZXRoZXIgdGhlIHBsdWdpbiBoYXMgcGVybWlzc2lvbnMgdG8gY2hhbmdlIHRoZSBhZG1pbiBhY2NvdW50CmFyYzU4X2FkZE5hbWVkUGx1Z2luOgoJcHJvdG8gNiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjI2NQoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7IHNlbmRlcjogdGhpcy5hZG1pbi52YWx1ZSB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFkbWluLnZhbHVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjY2CgkvLyBhc3NlcnQoIXRoaXMubmFtZWRQbHVnaW5zKG5hbWUpLmV4aXN0cykKCWJ5dGUgMHg2ZSAvLyAibiIKCWZyYW1lX2RpZyAtMSAvLyBuYW1lOiBzdHJpbmcKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjI2OAoJLy8ga2V5OiBQbHVnaW5zS2V5ID0geyBhcHBsaWNhdGlvbjogYXBwLCBhbGxvd2VkQ2FsbGVyOiBhbGxvd2VkQ2FsbGVyIH0KCWZyYW1lX2RpZyAtMiAvLyBhcHA6IEFwcElECglpdG9iCglmcmFtZV9kaWcgLTMgLy8gYWxsb3dlZENhbGxlcjogQWRkcmVzcwoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8ga2V5OiBQbHVnaW5zS2V5CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyNjkKCS8vIHRoaXMubmFtZWRQbHVnaW5zKG5hbWUpLnZhbHVlID0ga2V5CglieXRlIDB4NmUgLy8gIm4iCglmcmFtZV9kaWcgLTEgLy8gbmFtZTogc3RyaW5nCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGtleTogUGx1Z2luc0tleQoJYm94X3B1dAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjcwCgkvLyB0aGlzLnBsdWdpbnMoa2V5KS52YWx1ZSA9IHsKCS8vICAgICAgIGxhc3RWYWxpZFJvdW5kOiBsYXN0VmFsaWRSb3VuZCwKCS8vICAgICAgIGNvb2xkb3duOiBjb29sZG93biwKCS8vICAgICAgIGxhc3RDYWxsZWQ6IDAsCgkvLyAgICAgICBhZG1pblByaXZpbGVnZXM6IGFkbWluUHJpdmlsZWdlcywKCS8vICAgICB9CglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJZnJhbWVfZGlnIC00IC8vIGxhc3RWYWxpZFJvdW5kOiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtNSAvLyBjb29sZG93bjogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAtNiAvLyBhZG1pblByaXZpbGVnZXM6IGJvb2xlYW4KCXNldGJpdAoJY29uY2F0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFyYzU4X3JlbW92ZU5hbWVkUGx1Z2luKHN0cmluZyl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVtb3ZlTmFtZWRQbHVnaW46CgkvLyBuYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBhcmM1OF9yZW1vdmVOYW1lZFBsdWdpbihzdHJpbmcpdm9pZAoJY2FsbHN1YiBhcmM1OF9yZW1vdmVOYW1lZFBsdWdpbgoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVtb3ZlTmFtZWRQbHVnaW4obmFtZTogc3RyaW5nKTogdm9pZAovLwovLyBSZW1vdmUgYSBuYW1lZCBwbHVnaW4KLy8KLy8gQHBhcmFtIG5hbWUgVGhlIHBsdWdpbiBuYW1lCmFyYzU4X3JlbW92ZU5hbWVkUGx1Z2luOgoJcHJvdG8gMSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjI4NAoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7IHNlbmRlcjogdGhpcy5hZG1pbi52YWx1ZSB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFkbWluLnZhbHVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6Mjg2CgkvLyBhcHAgPSB0aGlzLm5hbWVkUGx1Z2lucyhuYW1lKS52YWx1ZQoJYnl0ZSAweDZlIC8vICJuIgoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gc3RvcmFnZSBrZXkvL2FwcAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6Mjg3CgkvLyB0aGlzLm5hbWVkUGx1Z2lucyhuYW1lKS5kZWxldGUoKQoJYnl0ZSAweDZlIC8vICJuIgoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJY29uY2F0Cglib3hfZGVsCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyODgKCS8vIHRoaXMucGx1Z2lucyhhcHApLmRlbGV0ZSgpCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBzdG9yYWdlIGtleS8vYXBwCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLm5hbWVkUGx1Z2lucyhuYW1lKS52YWx1ZQoJYXNzZXJ0Cgljb25jYXQKCWJveF9kZWwKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbihhZGRyZXNzLGFkZHJlc3Mpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJjNThfY2hhbmdlQWRtaW4oYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJhcmM1OF9wbHVnaW5DaGFuZ2VBZG1pbih1aW50NjQsYWRkcmVzcyxhZGRyZXNzKXZvaWQiCgltZXRob2QgImFyYzU4X2dldEFkbWluKClhZGRyZXNzIgoJbWV0aG9kICJhcmM1OF92ZXJpZnlBdXRoQWRkcigpdm9pZCIKCW1ldGhvZCAiYXJjNThfcmVrZXlUbyhhZGRyZXNzLGJvb2wpdm9pZCIKCW1ldGhvZCAiYXJjNThfcmVrZXlUb1BsdWdpbih1aW50NjQpdm9pZCIKCW1ldGhvZCAiYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKHN0cmluZyl2b2lkIgoJbWV0aG9kICJhcmM1OF9hZGRQbHVnaW4odWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCxib29sKXZvaWQiCgltZXRob2QgImFyYzU4X3JlbW92ZVBsdWdpbih1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJhcmM1OF9hZGROYW1lZFBsdWdpbihzdHJpbmcsdWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCxib29sKXZvaWQiCgltZXRob2QgImFyYzU4X3JlbW92ZU5hbWVkUGx1Z2luKHN0cmluZyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcmM1OF9jaGFuZ2VBZG1pbiAqYWJpX3JvdXRlX2FyYzU4X3BsdWdpbkNoYW5nZUFkbWluICphYmlfcm91dGVfYXJjNThfZ2V0QWRtaW4gKmFiaV9yb3V0ZV9hcmM1OF92ZXJpZnlBdXRoQWRkciAqYWJpX3JvdXRlX2FyYzU4X3Jla2V5VG8gKmFiaV9yb3V0ZV9hcmM1OF9yZWtleVRvUGx1Z2luICphYmlfcm91dGVfYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luICphYmlfcm91dGVfYXJjNThfYWRkUGx1Z2luICphYmlfcm91dGVfYXJjNThfcmVtb3ZlUGx1Z2luICphYmlfcm91dGVfYXJjNThfYWRkTmFtZWRQbHVnaW4gKmFiaV9yb3V0ZV9hcmM1OF9yZW1vdmVOYW1lZFBsdWdpbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" + }, + "contract": { + "name": "AbstractedAccount", + "desc": "", + "methods": [ + { + "name": "createApplication", + "desc": "Create an abstracted account application.\nThis is not part of ARC58 and implementation specific.", + "args": [ + { + "name": "controlledAddress", + "type": "address", + "desc": "The address of the abstracted account. If zeroAddress, then the address of the contract account will be used" + }, + { + "name": "admin", + "type": "address", + "desc": "The admin for this app" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_changeAdmin", + "desc": "Attempt to change the admin for this app. Some implementations MAY not support this.", + "args": [ + { + "name": "newAdmin", + "type": "address", + "desc": "The new admin" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_pluginChangeAdmin", + "desc": "Attempt to change the admin via plugin.", + "args": [ + { + "name": "plugin", + "type": "uint64", + "desc": "The app calling the plugin" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address that triggered the plugin" + }, + { + "name": "newAdmin", + "type": "address", + "desc": "The new admin" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_getAdmin", + "desc": "Get the admin of this app. This method SHOULD always be used rather than reading directly from state\nbecause different implementations may have different ways of determining the admin.", + "args": [], + "returns": { + "type": "address" + } + }, + { + "name": "arc58_verifyAuthAddr", + "desc": "Verify the abstracted account is rekeyed to this app", + "args": [], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_rekeyTo", + "desc": "Rekey the abstracted account to another address. Primarily useful for rekeying to an EOA.", + "args": [ + { + "name": "addr", + "type": "address", + "desc": "The address to rekey to" + }, + { + "name": "flash", + "type": "bool", + "desc": "Whether or not this should be a flash rekey. If true, the rekey back to the app address must done in the same txn group as this call" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_rekeyToPlugin", + "desc": "Temporarily rekey to an approved plugin app address", + "args": [ + { + "name": "plugin", + "type": "uint64", + "desc": "The app to rekey to" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_rekeyToNamedPlugin", + "desc": "Temporarily rekey to a named plugin app address", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The name of the plugin to rekey to" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_addPlugin", + "desc": "Add an app to the list of approved plugins", + "args": [ + { + "name": "app", + "type": "uint64", + "desc": "The app to add" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address of that's allowed to call the app\nor the global zero address for all addresses" + }, + { + "name": "lastValidRound", + "type": "uint64", + "desc": "The round when the permission expires" + }, + { + "name": "cooldown", + "type": "uint64", + "desc": "The number of rounds that must pass before the plugin can be called again" + }, + { + "name": "adminPrivileges", + "type": "bool", + "desc": "Whether the plugin has permissions to change the admin account" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_removePlugin", + "desc": "Remove an app from the list of approved plugins", + "args": [ + { + "name": "app", + "type": "uint64", + "desc": "The app to remove" + }, + { + "name": "allowedCaller", + "type": "address" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_addNamedPlugin", + "desc": "Add a named plugin", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The plugin name" + }, + { + "name": "app", + "type": "uint64", + "desc": "The plugin app" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address of that's allowed to call the app\nor the global zero address for all addresses" + }, + { + "name": "lastValidRound", + "type": "uint64", + "desc": "The round when the permission expires" + }, + { + "name": "cooldown", + "type": "uint64", + "desc": "The number of rounds that must pass before the plugin can be called again" + }, + { + "name": "adminPrivileges", + "type": "bool", + "desc": "Whether the plugin has permissions to change the admin account" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_removeNamedPlugin", + "desc": "Remove a named plugin", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The plugin name" + } + ], + "returns": { + "type": "void" + } + } + ] + } +} \ No newline at end of file diff --git a/examples/arc58/artifacts/AbstractedAccount.arc4.json b/examples/arc58/artifacts/AbstractedAccount.arc4.json new file mode 100644 index 000000000..a20c86592 --- /dev/null +++ b/examples/arc58/artifacts/AbstractedAccount.arc4.json @@ -0,0 +1,231 @@ +{ + "name": "AbstractedAccount", + "desc": "", + "methods": [ + { + "name": "createApplication", + "desc": "Create an abstracted account application.\nThis is not part of ARC58 and implementation specific.", + "args": [ + { + "name": "controlledAddress", + "type": "address", + "desc": "The address of the abstracted account. If zeroAddress, then the address of the contract account will be used" + }, + { + "name": "admin", + "type": "address", + "desc": "The admin for this app" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_changeAdmin", + "desc": "Attempt to change the admin for this app. Some implementations MAY not support this.", + "args": [ + { + "name": "newAdmin", + "type": "address", + "desc": "The new admin" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_pluginChangeAdmin", + "desc": "Attempt to change the admin via plugin.", + "args": [ + { + "name": "plugin", + "type": "uint64", + "desc": "The app calling the plugin" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address that triggered the plugin" + }, + { + "name": "newAdmin", + "type": "address", + "desc": "The new admin" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_getAdmin", + "desc": "Get the admin of this app. This method SHOULD always be used rather than reading directly from state\nbecause different implementations may have different ways of determining the admin.", + "args": [], + "returns": { + "type": "address" + } + }, + { + "name": "arc58_verifyAuthAddr", + "desc": "Verify the abstracted account is rekeyed to this app", + "args": [], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_rekeyTo", + "desc": "Rekey the abstracted account to another address. Primarily useful for rekeying to an EOA.", + "args": [ + { + "name": "addr", + "type": "address", + "desc": "The address to rekey to" + }, + { + "name": "flash", + "type": "bool", + "desc": "Whether or not this should be a flash rekey. If true, the rekey back to the app address must done in the same txn group as this call" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_rekeyToPlugin", + "desc": "Temporarily rekey to an approved plugin app address", + "args": [ + { + "name": "plugin", + "type": "uint64", + "desc": "The app to rekey to" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_rekeyToNamedPlugin", + "desc": "Temporarily rekey to a named plugin app address", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The name of the plugin to rekey to" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_addPlugin", + "desc": "Add an app to the list of approved plugins", + "args": [ + { + "name": "app", + "type": "uint64", + "desc": "The app to add" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address of that's allowed to call the app\nor the global zero address for all addresses" + }, + { + "name": "lastValidRound", + "type": "uint64", + "desc": "The round when the permission expires" + }, + { + "name": "cooldown", + "type": "uint64", + "desc": "The number of rounds that must pass before the plugin can be called again" + }, + { + "name": "adminPrivileges", + "type": "bool", + "desc": "Whether the plugin has permissions to change the admin account" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_removePlugin", + "desc": "Remove an app from the list of approved plugins", + "args": [ + { + "name": "app", + "type": "uint64", + "desc": "The app to remove" + }, + { + "name": "allowedCaller", + "type": "address" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_addNamedPlugin", + "desc": "Add a named plugin", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The plugin name" + }, + { + "name": "app", + "type": "uint64", + "desc": "The plugin app" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address of that's allowed to call the app\nor the global zero address for all addresses" + }, + { + "name": "lastValidRound", + "type": "uint64", + "desc": "The round when the permission expires" + }, + { + "name": "cooldown", + "type": "uint64", + "desc": "The number of rounds that must pass before the plugin can be called again" + }, + { + "name": "adminPrivileges", + "type": "bool", + "desc": "Whether the plugin has permissions to change the admin account" + } + ], + "returns": { + "type": "void" + } + }, + { + "name": "arc58_removeNamedPlugin", + "desc": "Remove a named plugin", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The plugin name" + } + ], + "returns": { + "type": "void" + } + } + ] +} \ No newline at end of file diff --git a/examples/arc58/artifacts/AbstractedAccount.arc56_draft.json b/examples/arc58/artifacts/AbstractedAccount.arc56_draft.json new file mode 100644 index 000000000..8515d402c --- /dev/null +++ b/examples/arc58/artifacts/AbstractedAccount.arc56_draft.json @@ -0,0 +1,5169 @@ +{ + "name": "AbstractedAccount", + "desc": "", + "methods": [ + { + "name": "createApplication", + "desc": "Create an abstracted account application.\nThis is not part of ARC58 and implementation specific.", + "args": [ + { + "name": "controlledAddress", + "type": "address", + "desc": "The address of the abstracted account. If zeroAddress, then the address of the contract account will be used" + }, + { + "name": "admin", + "type": "address", + "desc": "The admin for this app" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [ + "NoOp" + ], + "call": [] + } + }, + { + "name": "arc58_changeAdmin", + "desc": "Attempt to change the admin for this app. Some implementations MAY not support this.", + "args": [ + { + "name": "newAdmin", + "type": "address", + "desc": "The new admin" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_pluginChangeAdmin", + "desc": "Attempt to change the admin via plugin.", + "args": [ + { + "name": "plugin", + "type": "uint64", + "desc": "The app calling the plugin" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address that triggered the plugin" + }, + { + "name": "newAdmin", + "type": "address", + "desc": "The new admin" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_getAdmin", + "desc": "Get the admin of this app. This method SHOULD always be used rather than reading directly from state\nbecause different implementations may have different ways of determining the admin.", + "args": [], + "returns": { + "type": "address" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_verifyAuthAddr", + "desc": "Verify the abstracted account is rekeyed to this app", + "args": [], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_rekeyTo", + "desc": "Rekey the abstracted account to another address. Primarily useful for rekeying to an EOA.", + "args": [ + { + "name": "addr", + "type": "address", + "desc": "The address to rekey to" + }, + { + "name": "flash", + "type": "bool", + "desc": "Whether or not this should be a flash rekey. If true, the rekey back to the app address must done in the same txn group as this call" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_rekeyToPlugin", + "desc": "Temporarily rekey to an approved plugin app address", + "args": [ + { + "name": "plugin", + "type": "uint64", + "desc": "The app to rekey to" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_rekeyToNamedPlugin", + "desc": "Temporarily rekey to a named plugin app address", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The name of the plugin to rekey to" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_addPlugin", + "desc": "Add an app to the list of approved plugins", + "args": [ + { + "name": "app", + "type": "uint64", + "desc": "The app to add" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address of that's allowed to call the app\nor the global zero address for all addresses" + }, + { + "name": "lastValidRound", + "type": "uint64", + "desc": "The round when the permission expires" + }, + { + "name": "cooldown", + "type": "uint64", + "desc": "The number of rounds that must pass before the plugin can be called again" + }, + { + "name": "adminPrivileges", + "type": "bool", + "desc": "Whether the plugin has permissions to change the admin account" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_removePlugin", + "desc": "Remove an app from the list of approved plugins", + "args": [ + { + "name": "app", + "type": "uint64", + "desc": "The app to remove" + }, + { + "name": "allowedCaller", + "type": "address" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_addNamedPlugin", + "desc": "Add a named plugin", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The plugin name" + }, + { + "name": "app", + "type": "uint64", + "desc": "The plugin app" + }, + { + "name": "allowedCaller", + "type": "address", + "desc": "The address of that's allowed to call the app\nor the global zero address for all addresses" + }, + { + "name": "lastValidRound", + "type": "uint64", + "desc": "The round when the permission expires" + }, + { + "name": "cooldown", + "type": "uint64", + "desc": "The number of rounds that must pass before the plugin can be called again" + }, + { + "name": "adminPrivileges", + "type": "bool", + "desc": "Whether the plugin has permissions to change the admin account" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + }, + { + "name": "arc58_removeNamedPlugin", + "desc": "Remove a named plugin", + "args": [ + { + "name": "name", + "type": "string", + "desc": "The plugin name" + } + ], + "returns": { + "type": "void" + }, + "actions": { + "create": [], + "call": [ + "NoOp" + ] + } + } + ], + "arcs": [ + 4, + 56 + ], + "structs": { + "PluginInfo": [ + { + "name": "lastValidRound", + "type": "uint64" + }, + { + "name": "cooldown", + "type": "uint64" + }, + { + "name": "lastCalled", + "type": "uint64" + }, + { + "name": "adminPrivileges", + "type": "bool" + } + ], + "PluginsKey": [ + { + "name": "application", + "type": "uint64" + }, + { + "name": "allowedCaller", + "type": "address" + } + ] + }, + "state": { + "schema": { + "global": { + "bytes": 2, + "ints": 0 + }, + "local": { + "bytes": 0, + "ints": 0 + } + }, + "keys": { + "global": { + "admin": { + "key": "YQ==", + "keyType": "bytes", + "valueType": "address" + }, + "controlledAddress": { + "key": "Yw==", + "keyType": "bytes", + "valueType": "address" + } + }, + "local": {}, + "box": {} + }, + "maps": { + "global": {}, + "local": {}, + "box": { + "plugins": { + "keyType": "PluginsKey", + "valueType": "PluginInfo", + "prefix": "p" + }, + "namedPlugins": { + "keyType": "bytes", + "valueType": "PluginsKey", + "prefix": "n" + } + } + } + }, + "bareActions": { + "create": [], + "call": [] + }, + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 21, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + }, + { + "teal": 13, + "source": 21, + "pc": [ + 34, + 35 + ] + }, + { + "teal": 14, + "source": 21, + "pc": [ + 36 + ] + }, + { + "teal": 15, + "source": 21, + "pc": [ + 37 + ] + }, + { + "teal": 16, + "source": 21, + "pc": [ + 38 + ] + }, + { + "teal": 17, + "source": 21, + "pc": [ + 39, + 40 + ] + }, + { + "teal": 18, + "source": 21, + "pc": [ + 41 + ] + }, + { + "teal": 19, + "source": 21, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 23, + "source": 21, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 68 + ] + }, + { + "teal": 29, + "source": 44, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 32, + "source": 44, + "pc": [ + 72 + ] + }, + { + "teal": 33, + "source": 44, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 37, + "source": 45, + "pc": [ + 75 + ] + }, + { + "teal": 38, + "source": 45, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 42, + "source": 47, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 43, + "source": 47, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 48, + "source": 47, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 49, + "source": 47, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 50, + "source": 47, + "pc": [ + 86 + ] + }, + { + "teal": 51, + "source": 47, + "pc": [ + 87, + 88, + 89 + ] + }, + { + "teal": 55, + "source": 48, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 56, + "source": 48, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 61, + "source": 51, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 62, + "source": 51, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 63, + "source": 51, + "pc": [ + 98 + ] + }, + { + "teal": 64, + "source": 51, + "pc": [ + 99 + ] + }, + { + "teal": 65, + "source": 51, + "pc": [ + 100 + ] + }, + { + "teal": 66, + "source": 51, + "pc": [ + 101 + ] + }, + { + "teal": 67, + "source": 51, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 68, + "source": 51, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 69, + "source": 51, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 70, + "source": 51, + "pc": [ + 109 + ] + }, + { + "teal": 71, + "source": 51, + "pc": [ + 110 + ] + }, + { + "teal": 72, + "source": 51, + "pc": [ + 111 + ] + }, + { + "teal": 73, + "source": 51, + "pc": [ + 112 + ] + }, + { + "teal": 76, + "source": 51, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 81, + "source": 52, + "pc": [ + 116 + ] + }, + { + "teal": 82, + "source": 52, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 83, + "source": 53, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 92, + "source": 58, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 93, + "source": 58, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 94, + "source": 58, + "pc": [ + 126 + ] + }, + { + "teal": 95, + "source": 58, + "pc": [ + 127 + ] + }, + { + "teal": 96, + "source": 58, + "pc": [ + 128 + ] + }, + { + "teal": 97, + "source": 58, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 98, + "source": 59, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 99, + "source": 59, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 100, + "source": 59, + "pc": [ + 136, + 137, + 138 + ] + }, + { + "teal": 101, + "source": 59, + "pc": [ + 139 + ] + }, + { + "teal": 102, + "source": 58, + "pc": [ + 140 + ] + }, + { + "teal": 105, + "source": 59, + "pc": [ + 141 + ] + }, + { + "teal": 106, + "source": 59, + "pc": [ + 142, + 143, + 144 + ] + }, + { + "teal": 107, + "source": 60, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 108, + "source": 60, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 109, + "source": 60, + "pc": [ + 149 + ] + }, + { + "teal": 110, + "source": 60, + "pc": [ + 150 + ] + }, + { + "teal": 111, + "source": 59, + "pc": [ + 151 + ] + }, + { + "teal": 114, + "source": 60, + "pc": [ + 152 + ] + }, + { + "teal": 115, + "source": 60, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 116, + "source": 61, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 117, + "source": 61, + "pc": [ + 158, + 159, + 160 + ] + }, + { + "teal": 118, + "source": 61, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 119, + "source": 61, + "pc": [ + 163 + ] + }, + { + "teal": 120, + "source": 60, + "pc": [ + 164 + ] + }, + { + "teal": 123, + "source": 57, + "pc": [ + 165, + 166, + 167 + ] + }, + { + "teal": 128, + "source": 63, + "pc": [ + 168 + ] + }, + { + "teal": 129, + "source": 63, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 130, + "source": 64, + "pc": [ + 171, + 172, + 173 + ] + }, + { + "teal": 137, + "source": 47, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 138, + "source": 47, + "pc": [ + 176 + ] + }, + { + "teal": 139, + "source": 47, + "pc": [ + 177 + ] + }, + { + "teal": 140, + "source": 47, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 141, + "source": 47, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 146, + "source": 68, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 147, + "source": 68, + "pc": [ + 185 + ] + }, + { + "teal": 148, + "source": 44, + "pc": [ + 186 + ] + }, + { + "teal": 155, + "source": 75, + "pc": [ + 187, + 188, + 189 + ] + }, + { + "teal": 159, + "source": 76, + "pc": [ + 190 + ] + }, + { + "teal": 160, + "source": 76, + "pc": [ + 191 + ] + }, + { + "teal": 161, + "source": 76, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 162, + "source": 76, + "pc": [ + 194 + ] + }, + { + "teal": 163, + "source": 76, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 164, + "source": 76, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 165, + "source": 76, + "pc": [ + 200, + 201, + 202 + ] + }, + { + "teal": 168, + "source": 76, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 171, + "source": 75, + "pc": [ + 205 + ] + }, + { + "teal": 176, + "source": 86, + "pc": [ + 206, + 207, + 208 + ] + }, + { + "teal": 177, + "source": 86, + "pc": [ + 209 + ] + }, + { + "teal": 178, + "source": 86, + "pc": [ + 210 + ] + }, + { + "teal": 179, + "source": 86, + "pc": [ + 211 + ] + }, + { + "teal": 180, + "source": 86, + "pc": [ + 212 + ] + }, + { + "teal": 183, + "source": 86, + "errorMessage": "argument 0 (admin) for createApplication must be a address", + "pc": [ + 213 + ] + }, + { + "teal": 186, + "source": 86, + "pc": [ + 214, + 215, + 216 + ] + }, + { + "teal": 187, + "source": 86, + "pc": [ + 217 + ] + }, + { + "teal": 188, + "source": 86, + "pc": [ + 218 + ] + }, + { + "teal": 189, + "source": 86, + "pc": [ + 219 + ] + }, + { + "teal": 190, + "source": 86, + "pc": [ + 220 + ] + }, + { + "teal": 193, + "source": 86, + "errorMessage": "argument 1 (controlledAddress) for createApplication must be a address", + "pc": [ + 221 + ] + }, + { + "teal": 196, + "source": 86, + "pc": [ + 222, + 223, + 224 + ] + }, + { + "teal": 197, + "source": 86, + "pc": [ + 225 + ] + }, + { + "teal": 198, + "source": 86, + "pc": [ + 226 + ] + }, + { + "teal": 208, + "source": 86, + "pc": [ + 227, + 228, + 229 + ] + }, + { + "teal": 215, + "source": 88, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 216, + "source": 88, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 217, + "source": 88, + "pc": [ + 234 + ] + }, + { + "teal": 218, + "source": 88, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 219, + "source": 88, + "pc": [ + 237, + 238 + ] + }, + { + "teal": 220, + "source": 88, + "pc": [ + 239 + ] + }, + { + "teal": 221, + "source": 88, + "pc": [ + 240 + ] + }, + { + "teal": 224, + "source": 88, + "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txn\"},\"field\":\"sender\",\"condition\":\"includedIn\",\"expected\":\"[controlledAddress, admin]\"}", + "pc": [ + 241 + ] + }, + { + "teal": 228, + "source": 91, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 229, + "source": 91, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 230, + "source": 91, + "pc": [ + 246 + ] + }, + { + "teal": 231, + "source": 91, + "pc": [ + 247 + ] + }, + { + "teal": 235, + "source": 93, + "pc": [ + 248 + ] + }, + { + "teal": 236, + "source": 93, + "pc": [ + 249, + 250 + ] + }, + { + "teal": 237, + "source": 93, + "pc": [ + 251 + ] + }, + { + "teal": 241, + "source": 94, + "pc": [ + 252 + ] + }, + { + "teal": 242, + "source": 94, + "pc": [ + 253, + 254 + ] + }, + { + "teal": 243, + "source": 94, + "pc": [ + 255, + 256 + ] + }, + { + "teal": 244, + "source": 94, + "pc": [ + 257 + ] + }, + { + "teal": 245, + "source": 94, + "pc": [ + 258, + 259, + 260 + ] + }, + { + "teal": 246, + "source": 94, + "pc": [ + 261, + 262 + ] + }, + { + "teal": 247, + "source": 94, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 250, + "source": 94, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 253, + "source": 94, + "pc": [ + 268 + ] + }, + { + "teal": 254, + "source": 86, + "pc": [ + 269 + ] + }, + { + "teal": 259, + "source": 102, + "pc": [ + 270, + 271, + 272 + ] + }, + { + "teal": 260, + "source": 102, + "pc": [ + 273 + ] + }, + { + "teal": 261, + "source": 102, + "pc": [ + 274 + ] + }, + { + "teal": 262, + "source": 102, + "pc": [ + 275 + ] + }, + { + "teal": 263, + "source": 102, + "pc": [ + 276 + ] + }, + { + "teal": 266, + "source": 102, + "errorMessage": "argument 0 (newAdmin) for arc58_changeAdmin must be a address", + "pc": [ + 277 + ] + }, + { + "teal": 269, + "source": 102, + "pc": [ + 278, + 279, + 280 + ] + }, + { + "teal": 270, + "source": 102, + "pc": [ + 281 + ] + }, + { + "teal": 271, + "source": 102, + "pc": [ + 282 + ] + }, + { + "teal": 279, + "source": 102, + "pc": [ + 283, + 284, + 285 + ] + }, + { + "teal": 284, + "source": 103, + "pc": [ + 286, + 287 + ] + }, + { + "teal": 285, + "source": 103, + "pc": [ + 288 + ] + }, + { + "teal": 286, + "source": 103, + "pc": [ + 289 + ] + }, + { + "teal": 287, + "source": 103, + "pc": [ + 290 + ] + }, + { + "teal": 290, + "source": 103, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 291 + ] + }, + { + "teal": 294, + "source": 104, + "pc": [ + 292 + ] + }, + { + "teal": 295, + "source": 104, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 296, + "source": 104, + "pc": [ + 295 + ] + }, + { + "teal": 297, + "source": 102, + "pc": [ + 296 + ] + }, + { + "teal": 302, + "source": 115, + "pc": [ + 297, + 298, + 299 + ] + }, + { + "teal": 303, + "source": 115, + "pc": [ + 300 + ] + }, + { + "teal": 304, + "source": 115, + "pc": [ + 301 + ] + }, + { + "teal": 305, + "source": 115, + "pc": [ + 302 + ] + }, + { + "teal": 306, + "source": 115, + "pc": [ + 303 + ] + }, + { + "teal": 309, + "source": 115, + "errorMessage": "argument 0 (newAdmin) for arc58_pluginChangeAdmin must be a address", + "pc": [ + 304 + ] + }, + { + "teal": 312, + "source": 115, + "pc": [ + 305, + 306, + 307 + ] + }, + { + "teal": 313, + "source": 115, + "pc": [ + 308 + ] + }, + { + "teal": 314, + "source": 115, + "pc": [ + 309 + ] + }, + { + "teal": 315, + "source": 115, + "pc": [ + 310 + ] + }, + { + "teal": 316, + "source": 115, + "pc": [ + 311 + ] + }, + { + "teal": 319, + "source": 115, + "errorMessage": "argument 1 (allowedCaller) for arc58_pluginChangeAdmin must be a address", + "pc": [ + 312 + ] + }, + { + "teal": 322, + "source": 115, + "pc": [ + 313, + 314, + 315 + ] + }, + { + "teal": 323, + "source": 115, + "pc": [ + 316 + ] + }, + { + "teal": 326, + "source": 115, + "pc": [ + 317, + 318, + 319 + ] + }, + { + "teal": 327, + "source": 115, + "pc": [ + 320 + ] + }, + { + "teal": 328, + "source": 115, + "pc": [ + 321 + ] + }, + { + "teal": 338, + "source": 115, + "pc": [ + 322, + 323, + 324 + ] + }, + { + "teal": 341, + "source": 115, + "pc": [ + 325 + ] + }, + { + "teal": 346, + "source": 116, + "pc": [ + 326, + 327 + ] + }, + { + "teal": 347, + "source": 116, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 348, + "source": 116, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 349, + "source": 116, + "pc": [ + 332 + ] + }, + { + "teal": 350, + "source": 116, + "pc": [ + 333 + ] + }, + { + "teal": 353, + "source": 116, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"plugin.address\"}", + "pc": [ + 334 + ] + }, + { + "teal": 357, + "source": 117, + "pc": [ + 335 + ] + }, + { + "teal": 358, + "source": 117, + "pc": [ + 336 + ] + }, + { + "teal": 359, + "source": 117, + "pc": [ + 337, + 338 + ] + }, + { + "teal": 360, + "source": 117, + "pc": [ + 339 + ] + }, + { + "teal": 361, + "source": 117, + "pc": [ + 340, + 341 + ] + }, + { + "teal": 362, + "source": 117, + "pc": [ + 342, + 343 + ] + }, + { + "teal": 363, + "source": 117, + "pc": [ + 344 + ] + }, + { + "teal": 364, + "source": 117, + "pc": [ + 345 + ] + }, + { + "teal": 367, + "source": 117, + "errorMessage": "This plugin is not in control of the account", + "pc": [ + 346 + ] + }, + { + "teal": 371, + "source": 119, + "pc": [ + 347, + 348 + ] + }, + { + "teal": 372, + "source": 119, + "pc": [ + 349 + ] + }, + { + "teal": 373, + "source": 119, + "pc": [ + 350, + 351 + ] + }, + { + "teal": 374, + "source": 119, + "pc": [ + 352 + ] + }, + { + "teal": 375, + "source": 119, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 382, + "source": 121, + "pc": [ + 355 + ] + }, + { + "teal": 383, + "source": 121, + "pc": [ + 356, + 357 + ] + }, + { + "teal": 384, + "source": 121, + "pc": [ + 358 + ] + }, + { + "teal": 385, + "source": 121, + "pc": [ + 359 + ] + }, + { + "teal": 386, + "source": 121, + "pc": [ + 360 + ] + }, + { + "teal": 387, + "source": 121, + "pc": [ + 361 + ] + }, + { + "teal": 388, + "source": 121, + "pc": [ + 362 + ] + }, + { + "teal": 389, + "source": 121, + "pc": [ + 363, + 364, + 365 + ] + }, + { + "teal": 390, + "source": 121, + "pc": [ + 366 + ] + }, + { + "teal": 391, + "source": 121, + "pc": [ + 367, + 368 + ] + }, + { + "teal": 392, + "source": 121, + "pc": [ + 369 + ] + }, + { + "teal": 393, + "source": 121, + "pc": [ + 370 + ] + }, + { + "teal": 396, + "source": 121, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 371 + ] + }, + { + "teal": 397, + "source": 121, + "pc": [ + 372, + 373 + ] + }, + { + "teal": 398, + "source": 121, + "pc": [ + 374, + 375 + ] + }, + { + "teal": 399, + "source": 121, + "pc": [ + 376, + 377, + 378 + ] + }, + { + "teal": 400, + "source": 121, + "pc": [ + 379 + ] + }, + { + "teal": 401, + "source": 121, + "pc": [ + 380 + ] + }, + { + "teal": 405, + "source": 120, + "errorMessage": "This plugin does not have admin privileges", + "pc": [ + 381 + ] + }, + { + "teal": 409, + "source": 125, + "pc": [ + 382 + ] + }, + { + "teal": 410, + "source": 125, + "pc": [ + 383, + 384 + ] + }, + { + "teal": 411, + "source": 125, + "pc": [ + 385 + ] + }, + { + "teal": 412, + "source": 115, + "pc": [ + 386 + ] + }, + { + "teal": 417, + "source": 132, + "pc": [ + 387, + 388, + 389, + 390, + 391, + 392 + ] + }, + { + "teal": 420, + "source": 132, + "pc": [ + 393, + 394, + 395 + ] + }, + { + "teal": 421, + "source": 132, + "pc": [ + 396 + ] + }, + { + "teal": 422, + "source": 132, + "pc": [ + 397 + ] + }, + { + "teal": 423, + "source": 132, + "pc": [ + 398 + ] + }, + { + "teal": 424, + "source": 132, + "pc": [ + 399 + ] + }, + { + "teal": 431, + "source": 132, + "pc": [ + 400, + 401, + 402 + ] + }, + { + "teal": 435, + "source": 133, + "pc": [ + 403 + ] + }, + { + "teal": 436, + "source": 133, + "pc": [ + 404 + ] + }, + { + "teal": 437, + "source": 132, + "pc": [ + 405 + ] + }, + { + "teal": 442, + "source": 139, + "pc": [ + 406, + 407, + 408 + ] + }, + { + "teal": 443, + "source": 139, + "pc": [ + 409 + ] + }, + { + "teal": 444, + "source": 139, + "pc": [ + 410 + ] + }, + { + "teal": 450, + "source": 139, + "pc": [ + 411, + 412, + 413 + ] + }, + { + "teal": 454, + "source": 140, + "pc": [ + 414 + ] + }, + { + "teal": 455, + "source": 140, + "pc": [ + 415 + ] + }, + { + "teal": 456, + "source": 140, + "pc": [ + 416, + 417 + ] + }, + { + "teal": 457, + "source": 140, + "pc": [ + 418 + ] + }, + { + "teal": 458, + "source": 140, + "pc": [ + 419, + 420, + 421 + ] + }, + { + "teal": 459, + "source": 140, + "pc": [ + 422 + ] + }, + { + "teal": 460, + "source": 140, + "pc": [ + 423 + ] + }, + { + "teal": 461, + "source": 139, + "pc": [ + 424 + ] + }, + { + "teal": 466, + "source": 149, + "pc": [ + 425, + 426, + 427 + ] + }, + { + "teal": 467, + "source": 149, + "pc": [ + 428 + ] + }, + { + "teal": 468, + "source": 149, + "pc": [ + 429 + ] + }, + { + "teal": 469, + "source": 149, + "pc": [ + 430 + ] + }, + { + "teal": 470, + "source": 149, + "pc": [ + 431 + ] + }, + { + "teal": 473, + "source": 149, + "errorMessage": "argument 0 (flash) for arc58_rekeyTo must be a bool", + "pc": [ + 432 + ] + }, + { + "teal": 474, + "source": 149, + "pc": [ + 433 + ] + }, + { + "teal": 475, + "source": 149, + "pc": [ + 434 + ] + }, + { + "teal": 478, + "source": 149, + "pc": [ + 435, + 436, + 437 + ] + }, + { + "teal": 479, + "source": 149, + "pc": [ + 438 + ] + }, + { + "teal": 480, + "source": 149, + "pc": [ + 439 + ] + }, + { + "teal": 481, + "source": 149, + "pc": [ + 440 + ] + }, + { + "teal": 482, + "source": 149, + "pc": [ + 441 + ] + }, + { + "teal": 485, + "source": 149, + "errorMessage": "argument 1 (addr) for arc58_rekeyTo must be a address", + "pc": [ + 442 + ] + }, + { + "teal": 488, + "source": 149, + "pc": [ + 443, + 444, + 445 + ] + }, + { + "teal": 489, + "source": 149, + "pc": [ + 446 + ] + }, + { + "teal": 490, + "source": 149, + "pc": [ + 447 + ] + }, + { + "teal": 499, + "source": 149, + "pc": [ + 448, + 449, + 450 + ] + }, + { + "teal": 504, + "source": 150, + "pc": [ + 451, + 452 + ] + }, + { + "teal": 505, + "source": 150, + "pc": [ + 453 + ] + }, + { + "teal": 506, + "source": 150, + "pc": [ + 454 + ] + }, + { + "teal": 507, + "source": 150, + "pc": [ + 455 + ] + }, + { + "teal": 510, + "source": 150, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 456 + ] + }, + { + "teal": 519, + "source": 152, + "pc": [ + 457 + ] + }, + { + "teal": 520, + "source": 152, + "pc": [ + 458 + ] + }, + { + "teal": 521, + "source": 152, + "pc": [ + 459, + 460 + ] + }, + { + "teal": 525, + "source": 153, + "pc": [ + 461 + ] + }, + { + "teal": 526, + "source": 153, + "pc": [ + 462 + ] + }, + { + "teal": 527, + "source": 153, + "pc": [ + 463, + 464 + ] + }, + { + "teal": 531, + "source": 154, + "pc": [ + 465, + 466 + ] + }, + { + "teal": 532, + "source": 154, + "pc": [ + 467, + 468 + ] + }, + { + "teal": 536, + "source": 155, + "pc": [ + 469, + 470 + ] + }, + { + "teal": 537, + "source": 155, + "pc": [ + 471, + 472 + ] + }, + { + "teal": 541, + "source": 156, + "pc": [ + 473, + 474, + 475, + 476, + 477, + 478, + 479, + 480, + 481, + 482, + 483, + 484, + 485, + 486, + 487, + 488, + 489, + 490, + 491, + 492, + 493, + 494, + 495, + 496, + 497, + 498, + 499, + 500, + 501 + ] + }, + { + "teal": 542, + "source": 156, + "pc": [ + 502, + 503 + ] + }, + { + "teal": 545, + "source": 152, + "pc": [ + 504 + ] + }, + { + "teal": 546, + "source": 152, + "pc": [ + 505, + 506 + ] + }, + { + "teal": 549, + "source": 152, + "pc": [ + 507 + ] + }, + { + "teal": 554, + "source": 159, + "pc": [ + 508, + 509 + ] + }, + { + "teal": 555, + "source": 159, + "pc": [ + 510, + 511, + 512 + ] + }, + { + "teal": 560, + "source": 159, + "pc": [ + 513, + 514, + 515 + ] + }, + { + "teal": 563, + "source": 149, + "pc": [ + 516 + ] + }, + { + "teal": 567, + "source": 162, + "pc": [ + 517, + 518, + 519 + ] + }, + { + "teal": 570, + "source": 162, + "pc": [ + 520 + ] + }, + { + "teal": 574, + "source": 163, + "pc": [ + 521, + 522 + ] + }, + { + "teal": 575, + "source": 163, + "pc": [ + 523 + ] + }, + { + "teal": 576, + "source": 163, + "pc": [ + 524, + 525 + ] + }, + { + "teal": 577, + "source": 163, + "pc": [ + 526 + ] + }, + { + "teal": 578, + "source": 163, + "pc": [ + 527, + 528 + ] + }, + { + "teal": 586, + "source": 166, + "pc": [ + 529 + ] + }, + { + "teal": 587, + "source": 166, + "pc": [ + 530, + 531 + ] + }, + { + "teal": 588, + "source": 166, + "pc": [ + 532 + ] + }, + { + "teal": 589, + "source": 166, + "pc": [ + 533 + ] + }, + { + "teal": 590, + "source": 166, + "pc": [ + 534 + ] + }, + { + "teal": 591, + "source": 166, + "pc": [ + 535 + ] + }, + { + "teal": 592, + "source": 166, + "pc": [ + 536 + ] + }, + { + "teal": 593, + "source": 166, + "pc": [ + 537, + 538, + 539 + ] + }, + { + "teal": 594, + "source": 167, + "pc": [ + 540 + ] + }, + { + "teal": 595, + "source": 167, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 596, + "source": 167, + "pc": [ + 543 + ] + }, + { + "teal": 597, + "source": 167, + "pc": [ + 544 + ] + }, + { + "teal": 600, + "source": 167, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 545 + ] + }, + { + "teal": 601, + "source": 167, + "pc": [ + 546, + 547 + ] + }, + { + "teal": 602, + "source": 167, + "pc": [ + 548, + 549 + ] + }, + { + "teal": 603, + "source": 167, + "pc": [ + 550, + 551, + 552 + ] + }, + { + "teal": 604, + "source": 167, + "pc": [ + 553 + ] + }, + { + "teal": 605, + "source": 167, + "pc": [ + 554, + 555 + ] + }, + { + "teal": 606, + "source": 167, + "pc": [ + 556 + ] + }, + { + "teal": 607, + "source": 166, + "pc": [ + 557 + ] + }, + { + "teal": 610, + "source": 167, + "pc": [ + 558 + ] + }, + { + "teal": 611, + "source": 167, + "pc": [ + 559, + 560, + 561 + ] + }, + { + "teal": 612, + "source": 168, + "pc": [ + 562, + 563 + ] + }, + { + "teal": 613, + "source": 168, + "pc": [ + 564 + ] + }, + { + "teal": 614, + "source": 168, + "pc": [ + 565, + 566 + ] + }, + { + "teal": 615, + "source": 168, + "pc": [ + 567 + ] + }, + { + "teal": 616, + "source": 168, + "pc": [ + 568 + ] + }, + { + "teal": 619, + "source": 168, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 569 + ] + }, + { + "teal": 620, + "source": 168, + "pc": [ + 570, + 571 + ] + }, + { + "teal": 621, + "source": 168, + "pc": [ + 572, + 573 + ] + }, + { + "teal": 622, + "source": 168, + "pc": [ + 574, + 575, + 576 + ] + }, + { + "teal": 623, + "source": 168, + "pc": [ + 577 + ] + }, + { + "teal": 624, + "source": 168, + "pc": [ + 578 + ] + }, + { + "teal": 625, + "source": 168, + "pc": [ + 579 + ] + }, + { + "teal": 626, + "source": 168, + "pc": [ + 580, + 581 + ] + }, + { + "teal": 627, + "source": 168, + "pc": [ + 582 + ] + }, + { + "teal": 628, + "source": 168, + "pc": [ + 583 + ] + }, + { + "teal": 631, + "source": 168, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 584 + ] + }, + { + "teal": 632, + "source": 168, + "pc": [ + 585, + 586 + ] + }, + { + "teal": 633, + "source": 168, + "pc": [ + 587, + 588 + ] + }, + { + "teal": 634, + "source": 168, + "pc": [ + 589, + 590, + 591 + ] + }, + { + "teal": 635, + "source": 168, + "pc": [ + 592 + ] + }, + { + "teal": 636, + "source": 168, + "pc": [ + 593 + ] + }, + { + "teal": 637, + "source": 167, + "pc": [ + 594 + ] + }, + { + "teal": 641, + "source": 162, + "pc": [ + 595, + 596 + ] + }, + { + "teal": 642, + "source": 162, + "pc": [ + 597 + ] + }, + { + "teal": 647, + "source": 177, + "pc": [ + 598, + 599, + 600 + ] + }, + { + "teal": 648, + "source": 177, + "pc": [ + 601 + ] + }, + { + "teal": 651, + "source": 177, + "pc": [ + 602, + 603, + 604 + ] + }, + { + "teal": 652, + "source": 177, + "pc": [ + 605 + ] + }, + { + "teal": 653, + "source": 177, + "pc": [ + 606 + ] + }, + { + "teal": 661, + "source": 177, + "pc": [ + 607, + 608, + 609 + ] + }, + { + "teal": 664, + "source": 177, + "pc": [ + 610 + ] + }, + { + "teal": 668, + "source": 178, + "pc": [ + 611, + 612 + ] + }, + { + "teal": 669, + "source": 178, + "pc": [ + 613, + 614 + ] + }, + { + "teal": 670, + "source": 178, + "pc": [ + 615, + 616, + 617 + ] + }, + { + "teal": 671, + "source": 178, + "pc": [ + 618, + 619 + ] + }, + { + "teal": 676, + "source": 180, + "pc": [ + 620, + 621 + ] + }, + { + "teal": 677, + "source": 180, + "pc": [ + 622 + ] + }, + { + "teal": 678, + "source": 180, + "pc": [ + 623, + 624, + 625 + ] + }, + { + "teal": 683, + "source": 181, + "pc": [ + 626, + 627 + ] + }, + { + "teal": 684, + "source": 181, + "pc": [ + 628, + 629 + ] + }, + { + "teal": 685, + "source": 181, + "pc": [ + 630, + 631, + 632 + ] + }, + { + "teal": 688, + "source": 181, + "errorMessage": "This sender is not allowed to trigger this plugin", + "pc": [ + 633 + ] + }, + { + "teal": 698, + "source": 183, + "pc": [ + 634 + ] + }, + { + "teal": 699, + "source": 183, + "pc": [ + 635 + ] + }, + { + "teal": 700, + "source": 183, + "pc": [ + 636, + 637 + ] + }, + { + "teal": 704, + "source": 184, + "pc": [ + 638 + ] + }, + { + "teal": 705, + "source": 184, + "pc": [ + 639 + ] + }, + { + "teal": 706, + "source": 184, + "pc": [ + 640, + 641 + ] + }, + { + "teal": 710, + "source": 185, + "pc": [ + 642 + ] + }, + { + "teal": 711, + "source": 185, + "pc": [ + 643 + ] + }, + { + "teal": 712, + "source": 185, + "pc": [ + 644, + 645 + ] + }, + { + "teal": 716, + "source": 186, + "pc": [ + 646, + 647 + ] + }, + { + "teal": 717, + "source": 186, + "pc": [ + 648, + 649 + ] + }, + { + "teal": 718, + "source": 186, + "pc": [ + 650 + ] + }, + { + "teal": 719, + "source": 186, + "pc": [ + 651, + 652 + ] + }, + { + "teal": 723, + "source": 187, + "pc": [ + 653, + 654, + 655, + 656, + 657, + 658, + 659, + 660, + 661, + 662, + 663, + 664, + 665, + 666, + 667, + 668, + 669, + 670, + 671, + 672, + 673, + 674, + 675, + 676 + ] + }, + { + "teal": 724, + "source": 187, + "pc": [ + 677, + 678 + ] + }, + { + "teal": 727, + "source": 183, + "pc": [ + 679 + ] + }, + { + "teal": 728, + "source": 183, + "pc": [ + 680, + 681 + ] + }, + { + "teal": 731, + "source": 183, + "pc": [ + 682 + ] + }, + { + "teal": 738, + "source": 190, + "pc": [ + 683 + ] + }, + { + "teal": 739, + "source": 191, + "pc": [ + 684, + 685 + ] + }, + { + "teal": 740, + "source": 191, + "pc": [ + 686 + ] + }, + { + "teal": 741, + "source": 192, + "pc": [ + 687, + 688 + ] + }, + { + "teal": 742, + "source": 192, + "pc": [ + 689, + 690, + 691 + ] + }, + { + "teal": 743, + "source": 192, + "pc": [ + 692, + 693 + ] + }, + { + "teal": 744, + "source": 192, + "pc": [ + 694, + 695, + 696 + ] + }, + { + "teal": 747, + "source": 192, + "pc": [ + 697, + 698 + ] + }, + { + "teal": 750, + "source": 192, + "pc": [ + 699 + ] + }, + { + "teal": 751, + "source": 190, + "pc": [ + 700 + ] + }, + { + "teal": 752, + "source": 190, + "pc": [ + 701 + ] + }, + { + "teal": 755, + "source": 190, + "errorMessage": "box value does not exist: this.plugins({ application: plugin, allowedCaller: globalAllowed ? Address.zeroAddress : this.txn.sender, }).value", + "pc": [ + 702 + ] + }, + { + "teal": 756, + "source": 190, + "pc": [ + 703, + 704 + ] + }, + { + "teal": 757, + "source": 190, + "pc": [ + 705, + 706 + ] + }, + { + "teal": 758, + "source": 190, + "pc": [ + 707, + 708 + ] + }, + { + "teal": 759, + "source": 193, + "pc": [ + 709, + 710 + ] + }, + { + "teal": 760, + "source": 193, + "pc": [ + 711 + ] + }, + { + "teal": 761, + "source": 190, + "pc": [ + 712 + ] + }, + { + "teal": 762, + "source": 191, + "pc": [ + 713, + 714 + ] + }, + { + "teal": 763, + "source": 191, + "pc": [ + 715 + ] + }, + { + "teal": 764, + "source": 192, + "pc": [ + 716, + 717 + ] + }, + { + "teal": 765, + "source": 192, + "pc": [ + 718, + 719, + 720 + ] + }, + { + "teal": 766, + "source": 192, + "pc": [ + 721, + 722 + ] + }, + { + "teal": 767, + "source": 192, + "pc": [ + 723, + 724, + 725 + ] + }, + { + "teal": 770, + "source": 192, + "pc": [ + 726, + 727 + ] + }, + { + "teal": 773, + "source": 192, + "pc": [ + 728 + ] + }, + { + "teal": 774, + "source": 190, + "pc": [ + 729 + ] + }, + { + "teal": 775, + "source": 190, + "pc": [ + 730, + 731 + ] + }, + { + "teal": 776, + "source": 190, + "pc": [ + 732 + ] + }, + { + "teal": 780, + "source": 195, + "pc": [ + 733, + 734, + 735 + ] + }, + { + "teal": 781, + "source": 177, + "pc": [ + 736 + ] + }, + { + "teal": 786, + "source": 203, + "pc": [ + 737, + 738, + 739 + ] + }, + { + "teal": 787, + "source": 203, + "pc": [ + 740, + 741, + 742 + ] + }, + { + "teal": 790, + "source": 203, + "pc": [ + 743, + 744, + 745 + ] + }, + { + "teal": 791, + "source": 203, + "pc": [ + 746 + ] + }, + { + "teal": 792, + "source": 203, + "pc": [ + 747 + ] + }, + { + "teal": 800, + "source": 203, + "pc": [ + 748, + 749, + 750 + ] + }, + { + "teal": 804, + "source": 204, + "pc": [ + 751 + ] + }, + { + "teal": 805, + "source": 204, + "pc": [ + 752, + 753 + ] + }, + { + "teal": 806, + "source": 204, + "pc": [ + 754, + 755 + ] + }, + { + "teal": 807, + "source": 204, + "pc": [ + 756, + 757 + ] + }, + { + "teal": 808, + "source": 204, + "pc": [ + 758 + ] + }, + { + "teal": 809, + "source": 204, + "pc": [ + 759, + 760 + ] + }, + { + "teal": 810, + "source": 204, + "pc": [ + 761 + ] + }, + { + "teal": 811, + "source": 204, + "pc": [ + 762 + ] + }, + { + "teal": 812, + "source": 204, + "pc": [ + 763, + 764, + 765 + ] + }, + { + "teal": 813, + "source": 203, + "pc": [ + 766 + ] + }, + { + "teal": 818, + "source": 222, + "pc": [ + 767, + 768, + 769 + ] + }, + { + "teal": 819, + "source": 222, + "pc": [ + 770 + ] + }, + { + "teal": 820, + "source": 222, + "pc": [ + 771 + ] + }, + { + "teal": 821, + "source": 222, + "pc": [ + 772 + ] + }, + { + "teal": 822, + "source": 222, + "pc": [ + 773 + ] + }, + { + "teal": 825, + "source": 222, + "errorMessage": "argument 0 (adminPrivileges) for arc58_addPlugin must be a bool", + "pc": [ + 774 + ] + }, + { + "teal": 826, + "source": 222, + "pc": [ + 775 + ] + }, + { + "teal": 827, + "source": 222, + "pc": [ + 776 + ] + }, + { + "teal": 830, + "source": 221, + "pc": [ + 777, + 778, + 779 + ] + }, + { + "teal": 831, + "source": 221, + "pc": [ + 780 + ] + }, + { + "teal": 834, + "source": 220, + "pc": [ + 781, + 782, + 783 + ] + }, + { + "teal": 835, + "source": 220, + "pc": [ + 784 + ] + }, + { + "teal": 838, + "source": 219, + "pc": [ + 785, + 786, + 787 + ] + }, + { + "teal": 839, + "source": 219, + "pc": [ + 788 + ] + }, + { + "teal": 840, + "source": 219, + "pc": [ + 789 + ] + }, + { + "teal": 841, + "source": 219, + "pc": [ + 790 + ] + }, + { + "teal": 842, + "source": 219, + "pc": [ + 791 + ] + }, + { + "teal": 845, + "source": 219, + "errorMessage": "argument 3 (allowedCaller) for arc58_addPlugin must be a address", + "pc": [ + 792 + ] + }, + { + "teal": 848, + "source": 218, + "pc": [ + 793, + 794, + 795 + ] + }, + { + "teal": 849, + "source": 218, + "pc": [ + 796 + ] + }, + { + "teal": 852, + "source": 217, + "pc": [ + 797, + 798, + 799 + ] + }, + { + "teal": 853, + "source": 217, + "pc": [ + 800 + ] + }, + { + "teal": 854, + "source": 217, + "pc": [ + 801 + ] + }, + { + "teal": 867, + "source": 217, + "pc": [ + 802, + 803, + 804 + ] + }, + { + "teal": 870, + "source": 217, + "pc": [ + 805 + ] + }, + { + "teal": 875, + "source": 224, + "pc": [ + 806, + 807 + ] + }, + { + "teal": 876, + "source": 224, + "pc": [ + 808 + ] + }, + { + "teal": 877, + "source": 224, + "pc": [ + 809 + ] + }, + { + "teal": 878, + "source": 224, + "pc": [ + 810 + ] + }, + { + "teal": 881, + "source": 224, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 811 + ] + }, + { + "teal": 885, + "source": 225, + "pc": [ + 812, + 813 + ] + }, + { + "teal": 886, + "source": 225, + "pc": [ + 814 + ] + }, + { + "teal": 887, + "source": 225, + "pc": [ + 815, + 816 + ] + }, + { + "teal": 888, + "source": 225, + "pc": [ + 817 + ] + }, + { + "teal": 889, + "source": 225, + "pc": [ + 818, + 819 + ] + }, + { + "teal": 898, + "source": 226, + "pc": [ + 820 + ] + }, + { + "teal": 899, + "source": 226, + "pc": [ + 821, + 822 + ] + }, + { + "teal": 900, + "source": 226, + "pc": [ + 823 + ] + }, + { + "teal": 901, + "source": 227, + "pc": [ + 824, + 825 + ] + }, + { + "teal": 902, + "source": 227, + "pc": [ + 826 + ] + }, + { + "teal": 903, + "source": 228, + "pc": [ + 827, + 828 + ] + }, + { + "teal": 904, + "source": 228, + "pc": [ + 829 + ] + }, + { + "teal": 905, + "source": 228, + "pc": [ + 830 + ] + }, + { + "teal": 906, + "source": 229, + "pc": [ + 831, + 832 + ] + }, + { + "teal": 907, + "source": 229, + "pc": [ + 833 + ] + }, + { + "teal": 908, + "source": 230, + "pc": [ + 834, + 835 + ] + }, + { + "teal": 909, + "source": 230, + "pc": [ + 836 + ] + }, + { + "teal": 910, + "source": 230, + "pc": [ + 837, + 838 + ] + }, + { + "teal": 911, + "source": 230, + "pc": [ + 839 + ] + }, + { + "teal": 912, + "source": 226, + "pc": [ + 840 + ] + }, + { + "teal": 913, + "source": 226, + "pc": [ + 841 + ] + }, + { + "teal": 914, + "source": 217, + "pc": [ + 842 + ] + }, + { + "teal": 919, + "source": 239, + "pc": [ + 843, + 844, + 845 + ] + }, + { + "teal": 920, + "source": 239, + "pc": [ + 846 + ] + }, + { + "teal": 921, + "source": 239, + "pc": [ + 847 + ] + }, + { + "teal": 922, + "source": 239, + "pc": [ + 848 + ] + }, + { + "teal": 923, + "source": 239, + "pc": [ + 849 + ] + }, + { + "teal": 926, + "source": 239, + "errorMessage": "argument 0 (allowedCaller) for arc58_removePlugin must be a address", + "pc": [ + 850 + ] + }, + { + "teal": 929, + "source": 239, + "pc": [ + 851, + 852, + 853 + ] + }, + { + "teal": 930, + "source": 239, + "pc": [ + 854 + ] + }, + { + "teal": 933, + "source": 239, + "pc": [ + 855, + 856, + 857 + ] + }, + { + "teal": 934, + "source": 239, + "pc": [ + 858 + ] + }, + { + "teal": 935, + "source": 239, + "pc": [ + 859 + ] + }, + { + "teal": 943, + "source": 239, + "pc": [ + 860, + 861, + 862 + ] + }, + { + "teal": 946, + "source": 239, + "pc": [ + 863 + ] + }, + { + "teal": 951, + "source": 240, + "pc": [ + 864, + 865 + ] + }, + { + "teal": 952, + "source": 240, + "pc": [ + 866 + ] + }, + { + "teal": 953, + "source": 240, + "pc": [ + 867 + ] + }, + { + "teal": 954, + "source": 240, + "pc": [ + 868 + ] + }, + { + "teal": 957, + "source": 240, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 869 + ] + }, + { + "teal": 961, + "source": 242, + "pc": [ + 870, + 871 + ] + }, + { + "teal": 962, + "source": 242, + "pc": [ + 872 + ] + }, + { + "teal": 963, + "source": 242, + "pc": [ + 873, + 874 + ] + }, + { + "teal": 964, + "source": 242, + "pc": [ + 875 + ] + }, + { + "teal": 965, + "source": 242, + "pc": [ + 876, + 877 + ] + }, + { + "teal": 969, + "source": 243, + "pc": [ + 878 + ] + }, + { + "teal": 970, + "source": 243, + "pc": [ + 879, + 880 + ] + }, + { + "teal": 971, + "source": 243, + "pc": [ + 881 + ] + }, + { + "teal": 972, + "source": 243, + "pc": [ + 882 + ] + }, + { + "teal": 973, + "source": 239, + "pc": [ + 883 + ] + }, + { + "teal": 978, + "source": 263, + "pc": [ + 884, + 885, + 886 + ] + }, + { + "teal": 979, + "source": 263, + "pc": [ + 887 + ] + }, + { + "teal": 980, + "source": 263, + "pc": [ + 888 + ] + }, + { + "teal": 981, + "source": 263, + "pc": [ + 889 + ] + }, + { + "teal": 982, + "source": 263, + "pc": [ + 890 + ] + }, + { + "teal": 985, + "source": 263, + "errorMessage": "argument 0 (adminPrivileges) for arc58_addNamedPlugin must be a bool", + "pc": [ + 891 + ] + }, + { + "teal": 986, + "source": 263, + "pc": [ + 892 + ] + }, + { + "teal": 987, + "source": 263, + "pc": [ + 893 + ] + }, + { + "teal": 990, + "source": 262, + "pc": [ + 894, + 895, + 896 + ] + }, + { + "teal": 991, + "source": 262, + "pc": [ + 897 + ] + }, + { + "teal": 994, + "source": 261, + "pc": [ + 898, + 899, + 900 + ] + }, + { + "teal": 995, + "source": 261, + "pc": [ + 901 + ] + }, + { + "teal": 998, + "source": 260, + "pc": [ + 902, + 903, + 904 + ] + }, + { + "teal": 999, + "source": 260, + "pc": [ + 905 + ] + }, + { + "teal": 1000, + "source": 260, + "pc": [ + 906 + ] + }, + { + "teal": 1001, + "source": 260, + "pc": [ + 907 + ] + }, + { + "teal": 1002, + "source": 260, + "pc": [ + 908 + ] + }, + { + "teal": 1005, + "source": 260, + "errorMessage": "argument 3 (allowedCaller) for arc58_addNamedPlugin must be a address", + "pc": [ + 909 + ] + }, + { + "teal": 1008, + "source": 259, + "pc": [ + 910, + 911, + 912 + ] + }, + { + "teal": 1009, + "source": 259, + "pc": [ + 913 + ] + }, + { + "teal": 1012, + "source": 258, + "pc": [ + 914, + 915, + 916 + ] + }, + { + "teal": 1013, + "source": 258, + "pc": [ + 917, + 918, + 919 + ] + }, + { + "teal": 1016, + "source": 257, + "pc": [ + 920, + 921, + 922 + ] + }, + { + "teal": 1017, + "source": 257, + "pc": [ + 923 + ] + }, + { + "teal": 1018, + "source": 257, + "pc": [ + 924 + ] + }, + { + "teal": 1032, + "source": 257, + "pc": [ + 925, + 926, + 927 + ] + }, + { + "teal": 1035, + "source": 257, + "pc": [ + 928 + ] + }, + { + "teal": 1040, + "source": 265, + "pc": [ + 929, + 930 + ] + }, + { + "teal": 1041, + "source": 265, + "pc": [ + 931 + ] + }, + { + "teal": 1042, + "source": 265, + "pc": [ + 932 + ] + }, + { + "teal": 1043, + "source": 265, + "pc": [ + 933 + ] + }, + { + "teal": 1046, + "source": 265, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 934 + ] + }, + { + "teal": 1050, + "source": 266, + "pc": [ + 935, + 936 + ] + }, + { + "teal": 1051, + "source": 266, + "pc": [ + 937, + 938 + ] + }, + { + "teal": 1052, + "source": 266, + "pc": [ + 939 + ] + }, + { + "teal": 1053, + "source": 266, + "pc": [ + 940 + ] + }, + { + "teal": 1054, + "source": 266, + "pc": [ + 941 + ] + }, + { + "teal": 1055, + "source": 266, + "pc": [ + 942 + ] + }, + { + "teal": 1056, + "source": 266, + "pc": [ + 943 + ] + }, + { + "teal": 1057, + "source": 266, + "pc": [ + 944 + ] + }, + { + "teal": 1061, + "source": 268, + "pc": [ + 945, + 946 + ] + }, + { + "teal": 1062, + "source": 268, + "pc": [ + 947 + ] + }, + { + "teal": 1063, + "source": 268, + "pc": [ + 948, + 949 + ] + }, + { + "teal": 1064, + "source": 268, + "pc": [ + 950 + ] + }, + { + "teal": 1065, + "source": 268, + "pc": [ + 951, + 952 + ] + }, + { + "teal": 1069, + "source": 269, + "pc": [ + 953, + 954 + ] + }, + { + "teal": 1070, + "source": 269, + "pc": [ + 955, + 956 + ] + }, + { + "teal": 1071, + "source": 269, + "pc": [ + 957 + ] + }, + { + "teal": 1072, + "source": 269, + "pc": [ + 958, + 959 + ] + }, + { + "teal": 1073, + "source": 269, + "pc": [ + 960 + ] + }, + { + "teal": 1082, + "source": 270, + "pc": [ + 961 + ] + }, + { + "teal": 1083, + "source": 270, + "pc": [ + 962, + 963 + ] + }, + { + "teal": 1084, + "source": 270, + "pc": [ + 964 + ] + }, + { + "teal": 1085, + "source": 271, + "pc": [ + 965, + 966 + ] + }, + { + "teal": 1086, + "source": 271, + "pc": [ + 967 + ] + }, + { + "teal": 1087, + "source": 272, + "pc": [ + 968, + 969 + ] + }, + { + "teal": 1088, + "source": 272, + "pc": [ + 970 + ] + }, + { + "teal": 1089, + "source": 272, + "pc": [ + 971 + ] + }, + { + "teal": 1090, + "source": 273, + "pc": [ + 972, + 973 + ] + }, + { + "teal": 1091, + "source": 273, + "pc": [ + 974 + ] + }, + { + "teal": 1092, + "source": 274, + "pc": [ + 975, + 976 + ] + }, + { + "teal": 1093, + "source": 274, + "pc": [ + 977 + ] + }, + { + "teal": 1094, + "source": 274, + "pc": [ + 978, + 979 + ] + }, + { + "teal": 1095, + "source": 274, + "pc": [ + 980 + ] + }, + { + "teal": 1096, + "source": 270, + "pc": [ + 981 + ] + }, + { + "teal": 1097, + "source": 270, + "pc": [ + 982 + ] + }, + { + "teal": 1098, + "source": 257, + "pc": [ + 983 + ] + }, + { + "teal": 1103, + "source": 283, + "pc": [ + 984, + 985, + 986 + ] + }, + { + "teal": 1104, + "source": 283, + "pc": [ + 987, + 988, + 989 + ] + }, + { + "teal": 1107, + "source": 283, + "pc": [ + 990, + 991, + 992 + ] + }, + { + "teal": 1108, + "source": 283, + "pc": [ + 993 + ] + }, + { + "teal": 1109, + "source": 283, + "pc": [ + 994 + ] + }, + { + "teal": 1117, + "source": 283, + "pc": [ + 995, + 996, + 997 + ] + }, + { + "teal": 1120, + "source": 283, + "pc": [ + 998 + ] + }, + { + "teal": 1125, + "source": 284, + "pc": [ + 999, + 1000 + ] + }, + { + "teal": 1126, + "source": 284, + "pc": [ + 1001 + ] + }, + { + "teal": 1127, + "source": 284, + "pc": [ + 1002 + ] + }, + { + "teal": 1128, + "source": 284, + "pc": [ + 1003 + ] + }, + { + "teal": 1131, + "source": 284, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 1004 + ] + }, + { + "teal": 1135, + "source": 286, + "pc": [ + 1005, + 1006 + ] + }, + { + "teal": 1136, + "source": 286, + "pc": [ + 1007, + 1008 + ] + }, + { + "teal": 1137, + "source": 286, + "pc": [ + 1009 + ] + }, + { + "teal": 1138, + "source": 286, + "pc": [ + 1010, + 1011 + ] + }, + { + "teal": 1142, + "source": 287, + "pc": [ + 1012, + 1013 + ] + }, + { + "teal": 1143, + "source": 287, + "pc": [ + 1014, + 1015 + ] + }, + { + "teal": 1144, + "source": 287, + "pc": [ + 1016 + ] + }, + { + "teal": 1145, + "source": 287, + "pc": [ + 1017 + ] + }, + { + "teal": 1149, + "source": 288, + "pc": [ + 1018 + ] + }, + { + "teal": 1150, + "source": 286, + "pc": [ + 1019, + 1020 + ] + }, + { + "teal": 1151, + "source": 286, + "pc": [ + 1021 + ] + }, + { + "teal": 1154, + "source": 286, + "errorMessage": "box value does not exist: this.namedPlugins(name).value", + "pc": [ + 1022 + ] + }, + { + "teal": 1155, + "source": 288, + "pc": [ + 1023 + ] + }, + { + "teal": 1156, + "source": 288, + "pc": [ + 1024 + ] + }, + { + "teal": 1157, + "source": 283, + "pc": [ + 1025 + ] + }, + { + "teal": 1160, + "source": 21, + "pc": [ + 1026, + 1027, + 1028, + 1029, + 1030, + 1031 + ] + }, + { + "teal": 1161, + "source": 21, + "pc": [ + 1032, + 1033, + 1034 + ] + }, + { + "teal": 1162, + "source": 21, + "pc": [ + 1035, + 1036, + 1037, + 1038 + ] + }, + { + "teal": 1165, + "source": 21, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 1039 + ] + }, + { + "teal": 1168, + "source": 21, + "pc": [ + 1040, + 1041, + 1042, + 1043, + 1044, + 1045 + ] + }, + { + "teal": 1169, + "source": 21, + "pc": [ + 1046, + 1047, + 1048, + 1049, + 1050, + 1051 + ] + }, + { + "teal": 1170, + "source": 21, + "pc": [ + 1052, + 1053, + 1054, + 1055, + 1056, + 1057 + ] + }, + { + "teal": 1171, + "source": 21, + "pc": [ + 1058, + 1059 + ] + }, + { + "teal": 1172, + "source": 21, + "pc": [ + 1060, + 1061, + 1062, + 1063, + 1064, + 1065 + ] + }, + { + "teal": 1173, + "source": 21, + "pc": [ + 1066, + 1067, + 1068, + 1069, + 1070, + 1071 + ] + }, + { + "teal": 1174, + "source": 21, + "pc": [ + 1072, + 1073, + 1074, + 1075, + 1076, + 1077 + ] + }, + { + "teal": 1175, + "source": 21, + "pc": [ + 1078, + 1079, + 1080, + 1081, + 1082, + 1083 + ] + }, + { + "teal": 1176, + "source": 21, + "pc": [ + 1084, + 1085, + 1086, + 1087, + 1088, + 1089 + ] + }, + { + "teal": 1177, + "source": 21, + "pc": [ + 1090, + 1091, + 1092, + 1093, + 1094, + 1095 + ] + }, + { + "teal": 1178, + "source": 21, + "pc": [ + 1096, + 1097, + 1098, + 1099, + 1100, + 1101 + ] + }, + { + "teal": 1179, + "source": 21, + "pc": [ + 1102, + 1103, + 1104 + ] + }, + { + "teal": 1180, + "source": 21, + "pc": [ + 1105, + 1106, + 1107, + 1108, + 1109, + 1110, + 1111, + 1112, + 1113, + 1114, + 1115, + 1116, + 1117, + 1118, + 1119, + 1120, + 1121, + 1122, + 1123, + 1124, + 1125, + 1126, + 1127, + 1128 + ] + }, + { + "teal": 1183, + "source": 21, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 1129 + ] + } + ], + "clear": [] + }, + "source": { + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2ZXJpZnlSZWtleVRvQWJzdHJhY3RlZEFjY291bnQoKTogdm9pZAovLwovLyBFbnN1cmUgdGhhdCBieSB0aGUgZW5kIG9mIHRoZSBncm91cCB0aGUgYWJzdHJhY3RlZCBhY2NvdW50IGhhcyBjb250cm9sIG9mIGl0cyBhZGRyZXNzCnZlcmlmeVJla2V5VG9BYnN0cmFjdGVkQWNjb3VudDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjQ1CgkvLyByZWtleWVkQmFjayA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIHJla2V5ZWRCYWNrOiBib29sCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo0NwoJLy8gZm9yIChsZXQgaSA9IHRoaXMudHhuLmdyb3VwSW5kZXg7IGkgPCB0aGlzLnR4bkdyb3VwLmxlbmd0aDsgaSArPSAxKQoJdHhuIEdyb3VwSW5kZXgKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCipmb3JfMDoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6NDcKCS8vIGkgPCB0aGlzLnR4bkdyb3VwLmxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglnbG9iYWwgR3JvdXBTaXplCgk8CglieiAqZm9yXzBfZW5kCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo0OAoJLy8gdHhuID0gdGhpcy50eG5Hcm91cFtpXQoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gdHhuOiB0eG4KCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo1MQoJLy8gdHhuLnNlbmRlciA9PT0gdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZSAmJiB0eG4ucmVrZXlUbyA9PT0gdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZQoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIFNlbmRlcgoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCT09CglkdXAKCWJ6ICpza2lwX2FuZDAKCWZyYW1lX2RpZyAyIC8vIHR4bjogdHhuCglndHhucyBSZWtleVRvCglieXRlIDB4NjMgLy8gImMiCglhcHBfZ2xvYmFsX2dldAoJPT0KCSYmCgoqc2tpcF9hbmQwOgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6NTIKCS8vIHJla2V5ZWRCYWNrID0gdHJ1ZQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyByZWtleWVkQmFjazogYm9vbAoJYiAqZm9yXzBfZW5kCgoqaWYwX2VuZDoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjU4CgkvLyB0eG4udHlwZUVudW0gPT09IFRyYW5zYWN0aW9uVHlwZS5BcHBsaWNhdGlvbkNhbGwgJiYKCS8vICAgICAgICAgdHhuLmFwcGxpY2F0aW9uSUQgPT09IHRoaXMuYXBwICYmCgkvLyAgICAgICAgIHR4bi5udW1BcHBBcmdzID09PSAxICYmCgkvLyAgICAgICAgIHR4bi5hcHBsaWNhdGlvbkFyZ3NbMF0gPT09IG1ldGhvZCgnYXJjNThfdmVyaWZ5QXV0aEFkZHIoKXZvaWQnKQoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIEFwcGxpY2F0aW9uSUQKCXR4bmEgQXBwbGljYXRpb25zIDAKCT09CgkmJgoKKnNraXBfYW5kMToKCWR1cAoJYnogKnNraXBfYW5kMgoJZnJhbWVfZGlnIDIgLy8gdHhuOiB0eG4KCWd0eG5zIE51bUFwcEFyZ3MKCWludCAxCgk9PQoJJiYKCipza2lwX2FuZDI6CglkdXAKCWJ6ICpza2lwX2FuZDMKCWZyYW1lX2RpZyAyIC8vIHR4bjogdHhuCglndHhucyBBcHBsaWNhdGlvbkFyZ3MgMAoJbWV0aG9kICJhcmM1OF92ZXJpZnlBdXRoQWRkcigpdm9pZCIKCT09CgkmJgoKKnNraXBfYW5kMzoKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjYzCgkvLyByZWtleWVkQmFjayA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDAgLy8gcmVrZXllZEJhY2s6IGJvb2wKCWIgKmZvcl8wX2VuZAoKKmlmMV9lbmQ6CgoqZm9yXzBfY29udGludWU6CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjQ3CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czo2OAoJLy8gYXNzZXJ0KHJla2V5ZWRCYWNrKQoJZnJhbWVfZGlnIDAgLy8gcmVrZXllZEJhY2s6IGJvb2wKCWFzc2VydAoJcmV0c3ViCgovLyBnZXRBdXRoQWRkcigpOiBBZGRyZXNzCi8vCi8vIFdoYXQgdGhlIHZhbHVlIG9mIHRoaXMuYWRkcmVzcy52YWx1ZS5hdXRoQWRkciBzaG91bGQgYmUgd2hlbiB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzCi8vIGlzIGFibGUgdG8gYmUgY29udHJvbGxlZCBieSB0aGlzIGFwcC4gSXQgd2lsbCBlaXRoZXIgYmUgdGhpcy5hcHAuYWRkcmVzcyBvciB6ZXJvQWRkcmVzcwpnZXRBdXRoQWRkcjoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6NzYKCS8vIHJldHVybiB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzLnZhbHVlID09PSB0aGlzLmFwcC5hZGRyZXNzID8gQWRkcmVzcy56ZXJvQWRkcmVzcyA6IHRoaXMuYXBwLmFkZHJlc3M7CglieXRlIDB4NjMgLy8gImMiCglhcHBfZ2xvYmFsX2dldAoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CglieiAqdGVybmFyeTBfZmFsc2UKCWdsb2JhbCBaZXJvQWRkcmVzcwoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoKKnRlcm5hcnkwX2VuZDoKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24oYWRkcmVzcyxhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIGFkbWluOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFkbWluKSBmb3IgY3JlYXRlQXBwbGljYXRpb24gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGNvbnRyb2xsZWRBZGRyZXNzOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGNvbnRyb2xsZWRBZGRyZXNzKSBmb3IgY3JlYXRlQXBwbGljYXRpb24gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgY3JlYXRlQXBwbGljYXRpb24oYWRkcmVzcyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgY3JlYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKGNvbnRyb2xsZWRBZGRyZXNzOiBBZGRyZXNzLCBhZG1pbjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ3JlYXRlIGFuIGFic3RyYWN0ZWQgYWNjb3VudCBhcHBsaWNhdGlvbi4KLy8gVGhpcyBpcyBub3QgcGFydCBvZiBBUkM1OCBhbmQgaW1wbGVtZW50YXRpb24gc3BlY2lmaWMuCi8vCi8vIEBwYXJhbSBjb250cm9sbGVkQWRkcmVzcyBUaGUgYWRkcmVzcyBvZiB0aGUgYWJzdHJhY3RlZCBhY2NvdW50LiBJZiB6ZXJvQWRkcmVzcywgdGhlbiB0aGUgYWRkcmVzcyBvZiB0aGUgY29udHJhY3QgYWNjb3VudCB3aWxsIGJlIHVzZWQKLy8gQHBhcmFtIGFkbWluIFRoZSBhZG1pbiBmb3IgdGhpcyBhcHAKY3JlYXRlQXBwbGljYXRpb246Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjg3CgkvLyB2ZXJpZnlBcHBDYWxsVHhuKHRoaXMudHhuLCB7CgkvLyAgICAgICBzZW5kZXI6IHsgaW5jbHVkZWRJbjogW2NvbnRyb2xsZWRBZGRyZXNzLCBhZG1pbl0gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIGNvbnRyb2xsZWRBZGRyZXNzOiBBZGRyZXNzCgk9PQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0yIC8vIGFkbWluOiBBZGRyZXNzCgk9PQoJfHwKCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0IjoidGhpcy50eG4ifSwiZmllbGQiOiJzZW5kZXIiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbY29udHJvbGxlZEFkZHJlc3MsIGFkbWluXSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjkxCgkvLyBhc3NlcnQoYWRtaW4gIT09IGNvbnRyb2xsZWRBZGRyZXNzKQoJZnJhbWVfZGlnIC0yIC8vIGFkbWluOiBBZGRyZXNzCglmcmFtZV9kaWcgLTEgLy8gY29udHJvbGxlZEFkZHJlc3M6IEFkZHJlc3MKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjkzCgkvLyB0aGlzLmFkbWluLnZhbHVlID0gYWRtaW4KCWJ5dGUgMHg2MSAvLyAiYSIKCWZyYW1lX2RpZyAtMiAvLyBhZG1pbjogQWRkcmVzcwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjk0CgkvLyB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzLnZhbHVlID0gY29udHJvbGxlZEFkZHJlc3MgPT09IEFkZHJlc3MuemVyb0FkZHJlc3MgPyB0aGlzLmFwcC5hZGRyZXNzIDogY29udHJvbGxlZEFkZHJlc3MKCWJ5dGUgMHg2MyAvLyAiYyIKCWZyYW1lX2RpZyAtMSAvLyBjb250cm9sbGVkQWRkcmVzczogQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCgk9PQoJYnogKnRlcm5hcnkxX2ZhbHNlCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglmcmFtZV9kaWcgLTEgLy8gY29udHJvbGxlZEFkZHJlc3M6IEFkZHJlc3MKCip0ZXJuYXJ5MV9lbmQ6CglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBhcmM1OF9jaGFuZ2VBZG1pbihhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hcmM1OF9jaGFuZ2VBZG1pbjoKCS8vIG5ld0FkbWluOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKG5ld0FkbWluKSBmb3IgYXJjNThfY2hhbmdlQWRtaW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNThfY2hhbmdlQWRtaW4oYWRkcmVzcyl2b2lkCgljYWxsc3ViIGFyYzU4X2NoYW5nZUFkbWluCglpbnQgMQoJcmV0dXJuCgovLyBhcmM1OF9jaGFuZ2VBZG1pbihuZXdBZG1pbjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQXR0ZW1wdCB0byBjaGFuZ2UgdGhlIGFkbWluIGZvciB0aGlzIGFwcC4gU29tZSBpbXBsZW1lbnRhdGlvbnMgTUFZIG5vdCBzdXBwb3J0IHRoaXMuCi8vCi8vIEBwYXJhbSBuZXdBZG1pbiBUaGUgbmV3IGFkbWluCmFyYzU4X2NoYW5nZUFkbWluOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMDMKCS8vIHZlcmlmeVR4bih0aGlzLnR4biwgeyBzZW5kZXI6IHRoaXMuYWRtaW4udmFsdWUgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoidGhpcy5hZG1pbi52YWx1ZSJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjEwNAoJLy8gdGhpcy5hZG1pbi52YWx1ZSA9IG5ld0FkbWluCglieXRlIDB4NjEgLy8gImEiCglmcmFtZV9kaWcgLTEgLy8gbmV3QWRtaW46IEFkZHJlc3MKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFyYzU4X3BsdWdpbkNoYW5nZUFkbWluKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2FyYzU4X3BsdWdpbkNoYW5nZUFkbWluOgoJLy8gbmV3QWRtaW46IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobmV3QWRtaW4pIGZvciBhcmM1OF9wbHVnaW5DaGFuZ2VBZG1pbiBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYWxsb3dlZENhbGxlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhbGxvd2VkQ2FsbGVyKSBmb3IgYXJjNThfcGx1Z2luQ2hhbmdlQWRtaW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHBsdWdpbjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBhcmM1OF9wbHVnaW5DaGFuZ2VBZG1pbih1aW50NjQsYWRkcmVzcyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYXJjNThfcGx1Z2luQ2hhbmdlQWRtaW4KCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X3BsdWdpbkNoYW5nZUFkbWluKHBsdWdpbjogQXBwSUQsIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MsIG5ld0FkbWluOiBBZGRyZXNzKTogdm9pZAovLwovLyBBdHRlbXB0IHRvIGNoYW5nZSB0aGUgYWRtaW4gdmlhIHBsdWdpbi4KLy8KLy8gQHBhcmFtIHBsdWdpbiBUaGUgYXBwIGNhbGxpbmcgdGhlIHBsdWdpbgovLyBAcGFyYW0gYWxsb3dlZENhbGxlciBUaGUgYWRkcmVzcyB0aGF0IHRyaWdnZXJlZCB0aGUgcGx1Z2luCi8vIEBwYXJhbSBuZXdBZG1pbiBUaGUgbmV3IGFkbWluCmFyYzU4X3BsdWdpbkNoYW5nZUFkbWluOgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjExNgoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7IHNlbmRlcjogcGx1Z2luLmFkZHJlc3MgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBwbHVnaW46IEFwcElECglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJwbHVnaW4uYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjExNwoJLy8gYXNzZXJ0KHRoaXMuY29udHJvbGxlZEFkZHJlc3MudmFsdWUuYXV0aEFkZHIgPT09IHBsdWdpbi5hZGRyZXNzLCAnVGhpcyBwbHVnaW4gaXMgbm90IGluIGNvbnRyb2wgb2YgdGhlIGFjY291bnQnKQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJZnJhbWVfZGlnIC0xIC8vIHBsdWdpbjogQXBwSUQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCgkvLyBUaGlzIHBsdWdpbiBpcyBub3QgaW4gY29udHJvbCBvZiB0aGUgYWNjb3VudAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMTkKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IHBsdWdpbiwgYWxsb3dlZENhbGxlcjogYWxsb3dlZENhbGxlciB9CglmcmFtZV9kaWcgLTEgLy8gcGx1Z2luOiBBcHBJRAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGtleTogUGx1Z2luc0tleQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTIwCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnBsdWdpbnMoa2V5KS5leGlzdHMgJiYgdGhpcy5wbHVnaW5zKGtleSkudmFsdWUuYWRtaW5Qcml2aWxlZ2VzLAoJLy8gICAgICAgJ1RoaXMgcGx1Z2luIGRvZXMgbm90IGhhdmUgYWRtaW4gcHJpdmlsZWdlcycKCS8vICAgICApCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglkdXAKCWJ6ICpza2lwX2FuZDQKCWJ5dGUgMHg3MCAvLyAicCIKCWZyYW1lX2RpZyAwIC8vIGtleTogUGx1Z2luc0tleQoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnBsdWdpbnMoa2V5KS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MgoJZ2V0Yml0CgkmJgoKKnNraXBfYW5kNDoKCS8vIFRoaXMgcGx1Z2luIGRvZXMgbm90IGhhdmUgYWRtaW4gcHJpdmlsZWdlcwoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMjUKCS8vIHRoaXMuYWRtaW4udmFsdWUgPSBuZXdBZG1pbgoJYnl0ZSAweDYxIC8vICJhIgoJZnJhbWVfZGlnIC0zIC8vIG5ld0FkbWluOiBBZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBhcmM1OF9nZXRBZG1pbigpYWRkcmVzcwoqYWJpX3JvdXRlX2FyYzU4X2dldEFkbWluOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFyYzU4X2dldEFkbWluKClhZGRyZXNzCgljYWxsc3ViIGFyYzU4X2dldEFkbWluCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfZ2V0QWRtaW4oKTogQWRkcmVzcwovLwovLyBHZXQgdGhlIGFkbWluIG9mIHRoaXMgYXBwLiBUaGlzIG1ldGhvZCBTSE9VTEQgYWx3YXlzIGJlIHVzZWQgcmF0aGVyIHRoYW4gcmVhZGluZyBkaXJlY3RseSBmcm9tIHN0YXRlCi8vIGJlY2F1c2UgZGlmZmVyZW50IGltcGxlbWVudGF0aW9ucyBtYXkgaGF2ZSBkaWZmZXJlbnQgd2F5cyBvZiBkZXRlcm1pbmluZyB0aGUgYWRtaW4uCmFyYzU4X2dldEFkbWluOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxMzMKCS8vIHJldHVybiB0aGlzLmFkbWluLnZhbHVlOwoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gYXJjNThfdmVyaWZ5QXV0aEFkZHIoKXZvaWQKKmFiaV9yb3V0ZV9hcmM1OF92ZXJpZnlBdXRoQWRkcjoKCS8vIGV4ZWN1dGUgYXJjNThfdmVyaWZ5QXV0aEFkZHIoKXZvaWQKCWNhbGxzdWIgYXJjNThfdmVyaWZ5QXV0aEFkZHIKCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X3ZlcmlmeUF1dGhBZGRyKCk6IHZvaWQKLy8KLy8gVmVyaWZ5IHRoZSBhYnN0cmFjdGVkIGFjY291bnQgaXMgcmVrZXllZCB0byB0aGlzIGFwcAphcmM1OF92ZXJpZnlBdXRoQWRkcjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTQwCgkvLyBhc3NlcnQodGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZS5hdXRoQWRkciA9PT0gdGhpcy5nZXRBdXRoQWRkcigpKQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJY2FsbHN1YiBnZXRBdXRoQWRkcgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBhcmM1OF9yZWtleVRvKGFkZHJlc3MsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVrZXlUbzoKCS8vIGZsYXNoOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoZmxhc2gpIGZvciBhcmM1OF9yZWtleVRvIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhZGRyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGFkZHIpIGZvciBhcmM1OF9yZWtleVRvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFyYzU4X3Jla2V5VG8oYWRkcmVzcyxib29sKXZvaWQKCWNhbGxzdWIgYXJjNThfcmVrZXlUbwoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVrZXlUbyhhZGRyOiBBZGRyZXNzLCBmbGFzaDogYm9vbGVhbik6IHZvaWQKLy8KLy8gUmVrZXkgdGhlIGFic3RyYWN0ZWQgYWNjb3VudCB0byBhbm90aGVyIGFkZHJlc3MuIFByaW1hcmlseSB1c2VmdWwgZm9yIHJla2V5aW5nIHRvIGFuIEVPQS4KLy8KLy8gQHBhcmFtIGFkZHIgVGhlIGFkZHJlc3MgdG8gcmVrZXkgdG8KLy8gQHBhcmFtIGZsYXNoIFdoZXRoZXIgb3Igbm90IHRoaXMgc2hvdWxkIGJlIGEgZmxhc2ggcmVrZXkuIElmIHRydWUsIHRoZSByZWtleSBiYWNrIHRvIHRoZSBhcHAgYWRkcmVzcyBtdXN0IGRvbmUgaW4gdGhlIHNhbWUgdHhuIGdyb3VwIGFzIHRoaXMgY2FsbAphcmM1OF9yZWtleVRvOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTAKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFkbWluLnZhbHVlIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMuYWRtaW4udmFsdWUifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTIKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHNlbmRlcjogdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZSwKCS8vICAgICAgIHJlY2VpdmVyOiBhZGRyLAoJLy8gICAgICAgcmVrZXlUbzogYWRkciwKCS8vICAgICAgIG5vdGU6ICdyZWtleWluZyBhYnN0cmFjdGVkIGFjY291bnQnLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTMKCS8vIHNlbmRlcjogdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgU2VuZGVyCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTQKCS8vIHJlY2VpdmVyOiBhZGRyCglmcmFtZV9kaWcgLTEgLy8gYWRkcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTU1CgkvLyByZWtleVRvOiBhZGRyCglmcmFtZV9kaWcgLTEgLy8gYWRkcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWtleVRvCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTYKCS8vIG5vdGU6ICdyZWtleWluZyBhYnN0cmFjdGVkIGFjY291bnQnCglieXRlIDB4NzI2NTZiNjU3OTY5NmU2NzIwNjE2MjczNzQ3MjYxNjM3NDY1NjQyMDYxNjM2MzZmNzU2ZTc0IC8vICJyZWtleWluZyBhYnN0cmFjdGVkIGFjY291bnQiCglpdHhuX2ZpZWxkIE5vdGUKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTU5CgkvLyBmbGFzaAoJZnJhbWVfZGlnIC0yIC8vIGZsYXNoOiBib29sZWFuCglieiAqaWYyX2VuZAoKCS8vICppZjJfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNTkKCS8vIHRoaXMudmVyaWZ5UmVrZXlUb0Fic3RyYWN0ZWRBY2NvdW50KCkKCWNhbGxzdWIgdmVyaWZ5UmVrZXlUb0Fic3RyYWN0ZWRBY2NvdW50CgoqaWYyX2VuZDoKCXJldHN1YgoKLy8gcGx1Z2luQ2FsbEFsbG93ZWQoYXBwOiBBcHBJRCwgY2FsbGVyOiBBZGRyZXNzKTogYm9vbGVhbgpwbHVnaW5DYWxsQWxsb3dlZDoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoxNjMKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IGFwcCwgYWxsb3dlZENhbGxlcjogY2FsbGVyIH0KCWZyYW1lX2RpZyAtMSAvLyBhcHA6IEFwcElECglpdG9iCglmcmFtZV9kaWcgLTIgLy8gY2FsbGVyOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE2NQoJLy8gcmV0dXJuICgKCS8vICAgICAgIHRoaXMucGx1Z2lucyhrZXkpLmV4aXN0cyAmJgoJLy8gICAgICAgdGhpcy5wbHVnaW5zKGtleSkudmFsdWUubGFzdFZhbGlkUm91bmQgPj0gZ2xvYmFscy5yb3VuZCAmJgoJLy8gICAgICAgZ2xvYmFscy5yb3VuZCAtIHRoaXMucGx1Z2lucyhrZXkpLnZhbHVlLmxhc3RDYWxsZWQgPj0gdGhpcy5wbHVnaW5zKGtleSkudmFsdWUuY29vbGRvd24KCS8vICAgICApOwoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIDAgLy8ga2V5OiBQbHVnaW5zS2V5Cgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJZHVwCglieiAqc2tpcF9hbmQ1CglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wbHVnaW5zKGtleSkudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCA4CglidG9pCglnbG9iYWwgUm91bmQKCT49CgkmJgoKKnNraXBfYW5kNToKCWR1cAoJYnogKnNraXBfYW5kNgoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wbHVnaW5zKGtleSkudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJLQoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIDAgLy8ga2V5OiBQbHVnaW5zS2V5Cgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGx1Z2lucyhrZXkpLnZhbHVlCglhc3NlcnQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoJPj0KCSYmCgoqc2tpcF9hbmQ2OgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGFyYzU4X3Jla2V5VG9QbHVnaW4odWludDY0KXZvaWQKKmFiaV9yb3V0ZV9hcmM1OF9yZWtleVRvUGx1Z2luOgoJLy8gcGx1Z2luOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFyYzU4X3Jla2V5VG9QbHVnaW4odWludDY0KXZvaWQKCWNhbGxzdWIgYXJjNThfcmVrZXlUb1BsdWdpbgoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVrZXlUb1BsdWdpbihwbHVnaW46IEFwcElEKTogdm9pZAovLwovLyBUZW1wb3JhcmlseSByZWtleSB0byBhbiBhcHByb3ZlZCBwbHVnaW4gYXBwIGFkZHJlc3MKLy8KLy8gQHBhcmFtIHBsdWdpbiBUaGUgYXBwIHRvIHJla2V5IHRvCmFyYzU4X3Jla2V5VG9QbHVnaW46Cglwcm90byAxIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTc4CgkvLyBnbG9iYWxBbGxvd2VkID0gdGhpcy5wbHVnaW5DYWxsQWxsb3dlZChwbHVnaW4sIEFkZHJlc3MuemVyb0FkZHJlc3MpCglnbG9iYWwgWmVyb0FkZHJlc3MKCWZyYW1lX2RpZyAtMSAvLyBwbHVnaW46IEFwcElECgljYWxsc3ViIHBsdWdpbkNhbGxBbGxvd2VkCglmcmFtZV9idXJ5IDAgLy8gZ2xvYmFsQWxsb3dlZDogYm9vbAoKCS8vICppZjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4MAoJLy8gIWdsb2JhbEFsbG93ZWQKCWZyYW1lX2RpZyAwIC8vIGdsb2JhbEFsbG93ZWQ6IGJvb2wKCSEKCWJ6ICppZjNfZW5kCgoJLy8gKmlmM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4MQoJLy8gYXNzZXJ0KHRoaXMucGx1Z2luQ2FsbEFsbG93ZWQocGx1Z2luLCB0aGlzLnR4bi5zZW5kZXIpLCAnVGhpcyBzZW5kZXIgaXMgbm90IGFsbG93ZWQgdG8gdHJpZ2dlciB0aGlzIHBsdWdpbicpCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcGx1Z2luOiBBcHBJRAoJY2FsbHN1YiBwbHVnaW5DYWxsQWxsb3dlZAoKCS8vIFRoaXMgc2VuZGVyIGlzIG5vdCBhbGxvd2VkIHRvIHRyaWdnZXIgdGhpcyBwbHVnaW4KCWFzc2VydAoKKmlmM19lbmQ6CgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4MwoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgc2VuZGVyOiB0aGlzLmNvbnRyb2xsZWRBZGRyZXNzLnZhbHVlLAoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuY29udHJvbGxlZEFkZHJlc3MudmFsdWUsCgkvLyAgICAgICByZWtleVRvOiBwbHVnaW4uYWRkcmVzcywKCS8vICAgICAgIG5vdGU6ICdyZWtleWluZyB0byBwbHVnaW4gYXBwJywKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTg0CgkvLyBzZW5kZXI6IHRoaXMuY29udHJvbGxlZEFkZHJlc3MudmFsdWUKCWJ5dGUgMHg2MyAvLyAiYyIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIFNlbmRlcgoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTg1CgkvLyByZWNlaXZlcjogdGhpcy5jb250cm9sbGVkQWRkcmVzcy52YWx1ZQoJYnl0ZSAweDYzIC8vICJjIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE4NgoJLy8gcmVrZXlUbzogcGx1Z2luLmFkZHJlc3MKCWZyYW1lX2RpZyAtMSAvLyBwbHVnaW46IEFwcElECglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVrZXlUbwoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MTg3CgkvLyBub3RlOiAncmVrZXlpbmcgdG8gcGx1Z2luIGFwcCcKCWJ5dGUgMHg3MjY1NmI2NTc5Njk2ZTY3MjA3NDZmMjA3MDZjNzU2NzY5NmUyMDYxNzA3MCAvLyAicmVrZXlpbmcgdG8gcGx1Z2luIGFwcCIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE5MAoJLy8gdGhpcy5wbHVnaW5zKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uOiBwbHVnaW4sCgkvLyAgICAgICBhbGxvd2VkQ2FsbGVyOiBnbG9iYWxBbGxvd2VkID8gQWRkcmVzcy56ZXJvQWRkcmVzcyA6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICB9KS52YWx1ZS5sYXN0Q2FsbGVkID0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIC0xIC8vIHBsdWdpbjogQXBwSUQKCWl0b2IKCWZyYW1lX2RpZyAwIC8vIGdsb2JhbEFsbG93ZWQ6IGJvb2wKCWJ6ICp0ZXJuYXJ5M19mYWxzZQoJZ2xvYmFsIFplcm9BZGRyZXNzCgliICp0ZXJuYXJ5M19lbmQKCip0ZXJuYXJ5M19mYWxzZToKCXR4biBTZW5kZXIKCip0ZXJuYXJ5M19lbmQ6Cgljb25jYXQKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wbHVnaW5zKHsgYXBwbGljYXRpb246IHBsdWdpbiwgYWxsb3dlZENhbGxlcjogZ2xvYmFsQWxsb3dlZCA/IEFkZHJlc3MuemVyb0FkZHJlc3MgOiB0aGlzLnR4bi5zZW5kZXIsIH0pLnZhbHVlCglhc3NlcnQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTYKCWdsb2JhbCBSb3VuZAoJaXRvYgoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIC0xIC8vIHBsdWdpbjogQXBwSUQKCWl0b2IKCWZyYW1lX2RpZyAwIC8vIGdsb2JhbEFsbG93ZWQ6IGJvb2wKCWJ6ICp0ZXJuYXJ5NV9mYWxzZQoJZ2xvYmFsIFplcm9BZGRyZXNzCgliICp0ZXJuYXJ5NV9lbmQKCip0ZXJuYXJ5NV9mYWxzZToKCXR4biBTZW5kZXIKCip0ZXJuYXJ5NV9lbmQ6Cgljb25jYXQKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjE5NQoJLy8gdGhpcy52ZXJpZnlSZWtleVRvQWJzdHJhY3RlZEFjY291bnQoKQoJY2FsbHN1YiB2ZXJpZnlSZWtleVRvQWJzdHJhY3RlZEFjY291bnQKCXJldHN1YgoKLy8gYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKHN0cmluZyl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luOgoJLy8gbmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKHN0cmluZyl2b2lkCgljYWxsc3ViIGFyYzU4X3Jla2V5VG9OYW1lZFBsdWdpbgoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKG5hbWU6IHN0cmluZyk6IHZvaWQKLy8KLy8gVGVtcG9yYXJpbHkgcmVrZXkgdG8gYSBuYW1lZCBwbHVnaW4gYXBwIGFkZHJlc3MKLy8KLy8gQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGhlIHBsdWdpbiB0byByZWtleSB0bwphcmM1OF9yZWtleVRvTmFtZWRQbHVnaW46Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjIwNAoJLy8gdGhpcy5hcmM1OF9yZWtleVRvUGx1Z2luKHRoaXMubmFtZWRQbHVnaW5zKG5hbWUpLnZhbHVlLmFwcGxpY2F0aW9uKQoJaW50IDAKCWludCA4CglieXRlIDB4NmUgLy8gIm4iCglmcmFtZV9kaWcgLTEgLy8gbmFtZTogc3RyaW5nCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgljYWxsc3ViIGFyYzU4X3Jla2V5VG9QbHVnaW4KCXJldHN1YgoKLy8gYXJjNThfYWRkUGx1Z2luKHVpbnQ2NCxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNThfYWRkUGx1Z2luOgoJLy8gYWRtaW5Qcml2aWxlZ2VzOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYWRtaW5Qcml2aWxlZ2VzKSBmb3IgYXJjNThfYWRkUGx1Z2luIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBjb29sZG93bjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglidG9pCgoJLy8gbGFzdFZhbGlkUm91bmQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFsbG93ZWRDYWxsZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoYWxsb3dlZENhbGxlcikgZm9yIGFyYzU4X2FkZFBsdWdpbiBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXBwOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFyYzU4X2FkZFBsdWdpbih1aW50NjQsYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoJY2FsbHN1YiBhcmM1OF9hZGRQbHVnaW4KCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X2FkZFBsdWdpbihhcHA6IEFwcElELCBhbGxvd2VkQ2FsbGVyOiBBZGRyZXNzLCBsYXN0VmFsaWRSb3VuZDogdWludDY0LCBjb29sZG93bjogdWludDY0LCBhZG1pblByaXZpbGVnZXM6IGJvb2xlYW4pOiB2b2lkCi8vCi8vIEFkZCBhbiBhcHAgdG8gdGhlIGxpc3Qgb2YgYXBwcm92ZWQgcGx1Z2lucwovLwovLyBAcGFyYW0gYXBwIFRoZSBhcHAgdG8gYWRkCi8vIEBwYXJhbSBhbGxvd2VkQ2FsbGVyIFRoZSBhZGRyZXNzIG9mIHRoYXQncyBhbGxvd2VkIHRvIGNhbGwgdGhlIGFwcAovLyBvciB0aGUgZ2xvYmFsIHplcm8gYWRkcmVzcyBmb3IgYWxsIGFkZHJlc3NlcwovLyBAcGFyYW0gbGFzdFZhbGlkUm91bmQgVGhlIHJvdW5kIHdoZW4gdGhlIHBlcm1pc3Npb24gZXhwaXJlcwovLyBAcGFyYW0gY29vbGRvd24gIFRoZSBudW1iZXIgb2Ygcm91bmRzIHRoYXQgbXVzdCBwYXNzIGJlZm9yZSB0aGUgcGx1Z2luIGNhbiBiZSBjYWxsZWQgYWdhaW4KLy8gQHBhcmFtIGFkbWluUHJpdmlsZWdlcyBXaGV0aGVyIHRoZSBwbHVnaW4gaGFzIHBlcm1pc3Npb25zIHRvIGNoYW5nZSB0aGUgYWRtaW4gYWNjb3VudAphcmM1OF9hZGRQbHVnaW46Cglwcm90byA1IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjI0CgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFkbWluLnZhbHVlIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMuYWRtaW4udmFsdWUifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyMjUKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IGFwcCwgYWxsb3dlZENhbGxlcjogYWxsb3dlZENhbGxlciB9CglmcmFtZV9kaWcgLTEgLy8gYXBwOiBBcHBJRAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGtleTogUGx1Z2luc0tleQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjI2CgkvLyB0aGlzLnBsdWdpbnMoa2V5KS52YWx1ZSA9IHsKCS8vICAgICAgIGxhc3RWYWxpZFJvdW5kOiBsYXN0VmFsaWRSb3VuZCwKCS8vICAgICAgIGNvb2xkb3duOiBjb29sZG93biwKCS8vICAgICAgIGxhc3RDYWxsZWQ6IDAsCgkvLyAgICAgICBhZG1pblByaXZpbGVnZXM6IGFkbWluUHJpdmlsZWdlcywKCS8vICAgICB9CglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIGxhc3RWYWxpZFJvdW5kOiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtNCAvLyBjb29sZG93bjogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAtNSAvLyBhZG1pblByaXZpbGVnZXM6IGJvb2xlYW4KCXNldGJpdAoJY29uY2F0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFyYzU4X3JlbW92ZVBsdWdpbih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVtb3ZlUGx1Z2luOgoJLy8gYWxsb3dlZENhbGxlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhbGxvd2VkQ2FsbGVyKSBmb3IgYXJjNThfcmVtb3ZlUGx1Z2luIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBhcHA6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYXJjNThfcmVtb3ZlUGx1Z2luKHVpbnQ2NCxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYXJjNThfcmVtb3ZlUGx1Z2luCglpbnQgMQoJcmV0dXJuCgovLyBhcmM1OF9yZW1vdmVQbHVnaW4oYXBwOiBBcHBJRCwgYWxsb3dlZENhbGxlcjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gUmVtb3ZlIGFuIGFwcCBmcm9tIHRoZSBsaXN0IG9mIGFwcHJvdmVkIHBsdWdpbnMKLy8KLy8gQHBhcmFtIGFwcCBUaGUgYXBwIHRvIHJlbW92ZQphcmM1OF9yZW1vdmVQbHVnaW46Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjQwCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFkbWluLnZhbHVlIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCglieXRlIDB4NjEgLy8gImEiCglhcHBfZ2xvYmFsX2dldAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMuYWRtaW4udmFsdWUifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyNDIKCS8vIGtleTogUGx1Z2luc0tleSA9IHsgYXBwbGljYXRpb246IGFwcCwgYWxsb3dlZENhbGxlcjogYWxsb3dlZENhbGxlciB9CglmcmFtZV9kaWcgLTEgLy8gYXBwOiBBcHBJRAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGFsbG93ZWRDYWxsZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGtleTogUGx1Z2luc0tleQoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjQzCgkvLyB0aGlzLnBsdWdpbnMoa2V5KS5kZWxldGUoKQoJYnl0ZSAweDcwIC8vICJwIgoJZnJhbWVfZGlnIDAgLy8ga2V5OiBQbHVnaW5zS2V5Cgljb25jYXQKCWJveF9kZWwKCXJldHN1YgoKLy8gYXJjNThfYWRkTmFtZWRQbHVnaW4oc3RyaW5nLHVpbnQ2NCxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNThfYWRkTmFtZWRQbHVnaW46CgkvLyBhZG1pblByaXZpbGVnZXM6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhZG1pblByaXZpbGVnZXMpIGZvciBhcmM1OF9hZGROYW1lZFBsdWdpbiBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gY29vbGRvd246IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNQoJYnRvaQoKCS8vIGxhc3RWYWxpZFJvdW5kOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhbGxvd2VkQ2FsbGVyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDMgKGFsbG93ZWRDYWxsZXIpIGZvciBhcmM1OF9hZGROYW1lZFBsdWdpbiBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXBwOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBuYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBhcmM1OF9hZGROYW1lZFBsdWdpbihzdHJpbmcsdWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCxib29sKXZvaWQKCWNhbGxzdWIgYXJjNThfYWRkTmFtZWRQbHVnaW4KCWludCAxCglyZXR1cm4KCi8vIGFyYzU4X2FkZE5hbWVkUGx1Z2luKG5hbWU6IHN0cmluZywgYXBwOiBBcHBJRCwgYWxsb3dlZENhbGxlcjogQWRkcmVzcywgbGFzdFZhbGlkUm91bmQ6IHVpbnQ2NCwgY29vbGRvd246IHVpbnQ2NCwgYWRtaW5Qcml2aWxlZ2VzOiBib29sZWFuKTogdm9pZAovLwovLyBBZGQgYSBuYW1lZCBwbHVnaW4KLy8KLy8gQHBhcmFtIGFwcCBUaGUgcGx1Z2luIGFwcAovLyBAcGFyYW0gbmFtZSBUaGUgcGx1Z2luIG5hbWUKLy8gQHBhcmFtIGFsbG93ZWRDYWxsZXIgVGhlIGFkZHJlc3Mgb2YgdGhhdCdzIGFsbG93ZWQgdG8gY2FsbCB0aGUgYXBwCi8vIG9yIHRoZSBnbG9iYWwgemVybyBhZGRyZXNzIGZvciBhbGwgYWRkcmVzc2VzCi8vIEBwYXJhbSBsYXN0VmFsaWRSb3VuZCBUaGUgcm91bmQgd2hlbiB0aGUgcGVybWlzc2lvbiBleHBpcmVzCi8vIEBwYXJhbSBjb29sZG93biAgVGhlIG51bWJlciBvZiByb3VuZHMgdGhhdCBtdXN0IHBhc3MgYmVmb3JlIHRoZSBwbHVnaW4gY2FuIGJlIGNhbGxlZCBhZ2FpbgovLyBAcGFyYW0gYWRtaW5Qcml2aWxlZ2VzIFdoZXRoZXIgdGhlIHBsdWdpbiBoYXMgcGVybWlzc2lvbnMgdG8gY2hhbmdlIHRoZSBhZG1pbiBhY2NvdW50CmFyYzU4X2FkZE5hbWVkUGx1Z2luOgoJcHJvdG8gNiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjI2NQoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7IHNlbmRlcjogdGhpcy5hZG1pbi52YWx1ZSB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFkbWluLnZhbHVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjY2CgkvLyBhc3NlcnQoIXRoaXMubmFtZWRQbHVnaW5zKG5hbWUpLmV4aXN0cykKCWJ5dGUgMHg2ZSAvLyAibiIKCWZyYW1lX2RpZyAtMSAvLyBuYW1lOiBzdHJpbmcKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglhc3NlcnQKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjI2OAoJLy8ga2V5OiBQbHVnaW5zS2V5ID0geyBhcHBsaWNhdGlvbjogYXBwLCBhbGxvd2VkQ2FsbGVyOiBhbGxvd2VkQ2FsbGVyIH0KCWZyYW1lX2RpZyAtMiAvLyBhcHA6IEFwcElECglpdG9iCglmcmFtZV9kaWcgLTMgLy8gYWxsb3dlZENhbGxlcjogQWRkcmVzcwoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8ga2V5OiBQbHVnaW5zS2V5CgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyNjkKCS8vIHRoaXMubmFtZWRQbHVnaW5zKG5hbWUpLnZhbHVlID0ga2V5CglieXRlIDB4NmUgLy8gIm4iCglmcmFtZV9kaWcgLTEgLy8gbmFtZTogc3RyaW5nCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGtleTogUGx1Z2luc0tleQoJYm94X3B1dAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6MjcwCgkvLyB0aGlzLnBsdWdpbnMoa2V5KS52YWx1ZSA9IHsKCS8vICAgICAgIGxhc3RWYWxpZFJvdW5kOiBsYXN0VmFsaWRSb3VuZCwKCS8vICAgICAgIGNvb2xkb3duOiBjb29sZG93biwKCS8vICAgICAgIGxhc3RDYWxsZWQ6IDAsCgkvLyAgICAgICBhZG1pblByaXZpbGVnZXM6IGFkbWluUHJpdmlsZWdlcywKCS8vICAgICB9CglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBrZXk6IFBsdWdpbnNLZXkKCWNvbmNhdAoJZnJhbWVfZGlnIC00IC8vIGxhc3RWYWxpZFJvdW5kOiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtNSAvLyBjb29sZG93bjogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAtNiAvLyBhZG1pblByaXZpbGVnZXM6IGJvb2xlYW4KCXNldGJpdAoJY29uY2F0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFyYzU4X3JlbW92ZU5hbWVkUGx1Z2luKHN0cmluZyl2b2lkCiphYmlfcm91dGVfYXJjNThfcmVtb3ZlTmFtZWRQbHVnaW46CgkvLyBuYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBhcmM1OF9yZW1vdmVOYW1lZFBsdWdpbihzdHJpbmcpdm9pZAoJY2FsbHN1YiBhcmM1OF9yZW1vdmVOYW1lZFBsdWdpbgoJaW50IDEKCXJldHVybgoKLy8gYXJjNThfcmVtb3ZlTmFtZWRQbHVnaW4obmFtZTogc3RyaW5nKTogdm9pZAovLwovLyBSZW1vdmUgYSBuYW1lZCBwbHVnaW4KLy8KLy8gQHBhcmFtIG5hbWUgVGhlIHBsdWdpbiBuYW1lCmFyYzU4X3JlbW92ZU5hbWVkUGx1Z2luOgoJcHJvdG8gMSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9hcmM1OC9hcmM1OC5hbGdvLnRzOjI4NAoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7IHNlbmRlcjogdGhpcy5hZG1pbi52YWx1ZSB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJYnl0ZSAweDYxIC8vICJhIgoJYXBwX2dsb2JhbF9nZXQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFkbWluLnZhbHVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6Mjg2CgkvLyBhcHAgPSB0aGlzLm5hbWVkUGx1Z2lucyhuYW1lKS52YWx1ZQoJYnl0ZSAweDZlIC8vICJuIgoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gc3RvcmFnZSBrZXkvL2FwcAoKCS8vIGV4YW1wbGVzL2FyYzU4L2FyYzU4LmFsZ28udHM6Mjg3CgkvLyB0aGlzLm5hbWVkUGx1Z2lucyhuYW1lKS5kZWxldGUoKQoJYnl0ZSAweDZlIC8vICJuIgoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJY29uY2F0Cglib3hfZGVsCgoJLy8gZXhhbXBsZXMvYXJjNTgvYXJjNTguYWxnby50czoyODgKCS8vIHRoaXMucGx1Z2lucyhhcHApLmRlbGV0ZSgpCglieXRlIDB4NzAgLy8gInAiCglmcmFtZV9kaWcgMCAvLyBzdG9yYWdlIGtleS8vYXBwCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLm5hbWVkUGx1Z2lucyhuYW1lKS52YWx1ZQoJYXNzZXJ0Cgljb25jYXQKCWJveF9kZWwKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbihhZGRyZXNzLGFkZHJlc3Mpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJjNThfY2hhbmdlQWRtaW4oYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJhcmM1OF9wbHVnaW5DaGFuZ2VBZG1pbih1aW50NjQsYWRkcmVzcyxhZGRyZXNzKXZvaWQiCgltZXRob2QgImFyYzU4X2dldEFkbWluKClhZGRyZXNzIgoJbWV0aG9kICJhcmM1OF92ZXJpZnlBdXRoQWRkcigpdm9pZCIKCW1ldGhvZCAiYXJjNThfcmVrZXlUbyhhZGRyZXNzLGJvb2wpdm9pZCIKCW1ldGhvZCAiYXJjNThfcmVrZXlUb1BsdWdpbih1aW50NjQpdm9pZCIKCW1ldGhvZCAiYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luKHN0cmluZyl2b2lkIgoJbWV0aG9kICJhcmM1OF9hZGRQbHVnaW4odWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCxib29sKXZvaWQiCgltZXRob2QgImFyYzU4X3JlbW92ZVBsdWdpbih1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJhcmM1OF9hZGROYW1lZFBsdWdpbihzdHJpbmcsdWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCxib29sKXZvaWQiCgltZXRob2QgImFyYzU4X3JlbW92ZU5hbWVkUGx1Z2luKHN0cmluZyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcmM1OF9jaGFuZ2VBZG1pbiAqYWJpX3JvdXRlX2FyYzU4X3BsdWdpbkNoYW5nZUFkbWluICphYmlfcm91dGVfYXJjNThfZ2V0QWRtaW4gKmFiaV9yb3V0ZV9hcmM1OF92ZXJpZnlBdXRoQWRkciAqYWJpX3JvdXRlX2FyYzU4X3Jla2V5VG8gKmFiaV9yb3V0ZV9hcmM1OF9yZWtleVRvUGx1Z2luICphYmlfcm91dGVfYXJjNThfcmVrZXlUb05hbWVkUGx1Z2luICphYmlfcm91dGVfYXJjNThfYWRkUGx1Z2luICphYmlfcm91dGVfYXJjNThfcmVtb3ZlUGx1Z2luICphYmlfcm91dGVfYXJjNThfYWRkTmFtZWRQbHVnaW4gKmFiaV9yb3V0ZV9hcmM1OF9yZW1vdmVOYW1lZFBsdWdpbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" + }, + "byteCode": { + "approval": "CiAEAQAgBiYIAXABYQFjAAFuBA+IVJMIAAAAAAAAAAABADEYFCULMRkIjQwDzAAAAAAAAAAAAAADvgAAAAAAAAAAAAAAigAAK0cCI4wAMRaMAYsBMgQMQQBdiwGMAosCOAAqZBJJQQAIiwI4ICpkEhBBAAYijABCAD2LAjgQJRJJQQAJiwI4GDYyABIQSUEAB4sCOBsiEhBJQQAJiwI5GgAnBRIQQQAGIowAQgAJiwEiCIwBQv+biwBEiYoAASpkMgoSQQAFMgNCAAIyCok2GgJJFSQSRDYaAUkVJBJEiAACIkOKAgAxAIv/EjEAi/4SEUSL/ov/E0Qpi/5nKov/MgMSQQAFMgpCAAKL/2eJNhoBSRUkEkSIAAIiQ4oBADEAKWQSRCmL/2eJNhoDSRUkEkQ2GgJJFSQSRDYaAReIAAIiQ4oDACsxAIv/cghIEkQqZHMCSIv/cghIEkSL/xaL/lCMACiLAFC9TEhJQQAPKIsAUL5ENf80/4HAAVMQRCmL/WeJgAQVH3x1iAAEULAiQ4oAASlkiYgAAiJDigAAKmRzAkiI/xUSRIk2GgJJFSISRCNTNhoBSRUkEkSIAAIiQ4oCADEAKWQSRLEishAqZLIAi/+yB4v/siCAG3Jla2V5aW5nIGFic3RyYWN0ZWQgYWNjb3VudLIFI7IBs4v+QQADiP5BiYoCASuL/xaL/lCMACiLAFC9TEhJQQASKIsAUL5ENf80/1cACBcyBg8QSUEAITIGKIsAUL5ENf80/1cQCBcJKIsAUL5ENf80/1cICBcPEIwAiTYaAReIAAIiQ4oBACsyA4v/iP+bjACLABRBAAgxAIv/iP+MRLEishAqZLIAKmSyB4v/cghIsiCAFnJla2V5aW5nIHRvIHBsdWdpbiBhcHCyBSOyAbMoi/8WiwBBAAUyA0IAAjEAUFC+RDX/NP+BEDIGFiiL/xaLAEEABTIDQgACMQBQUE4Cu4j9ZYk2GgFXAgCIAAIiQ4oBACOBCCcEi/9QTgK6F4j/YYk2GgVJFSISRCNTNhoEFzYaAxc2GgJJFSQSRDYaAReIAAIiQ4oFACsxAClkEkSL/xaL/lCMACiLAFCL/RaL/BZQJwZQJwcji/tUUL+JNhoCSRUkEkQ2GgEXiAACIkOKAgArMQApZBJEi/8Wi/5QjAAoiwBQvIk2GgZJFSISRCNTNhoFFzYaBBc2GgNJFSQSRDYaAhc2GgFXAgCIAAIiQ4oGACsxAClkEkQnBIv/UL1MSBREi/4Wi/1QjAAnBIv/UIsAvyiLAFCL/BaL+xZQJwZQJwcji/pUUL+JNhoBVwIAiAACIkOKAQArMQApZBJEJwSL/1CMACcEi/9QvCiLAL5EULyJgAS0x31xNhoAjgH8vwCABNJLdVaABF+kScaABBO8ROQnBYAEyVpdPYAEfHZt3IAEVvKLWIAE0S3LYYAETTcjVYAEinKnUIAE41C51DYaAI4L/KX8wP0a/S39QP3t/nj+lv7i/wv/bwA=", + "clear": "Cg==" + }, + "compilerInfo": { + "compiler": "algod", + "compilerVersion": { + "major": 3, + "minor": 25, + "patch": 0, + "commitHash": "9855f57c" + } + } +} \ No newline at end of file diff --git a/examples/arc58/artifacts/AbstractedAccount.clear.teal b/examples/arc58/artifacts/AbstractedAccount.clear.teal new file mode 100644 index 000000000..e9f1d65b3 --- /dev/null +++ b/examples/arc58/artifacts/AbstractedAccount.clear.teal @@ -0,0 +1 @@ +#pragma version 10 \ No newline at end of file diff --git a/examples/arc58/artifacts/AbstractedAccount.src_map.json b/examples/arc58/artifacts/AbstractedAccount.src_map.json new file mode 100644 index 000000000..86c0c5694 --- /dev/null +++ b/examples/arc58/artifacts/AbstractedAccount.src_map.json @@ -0,0 +1,4764 @@ +[ + { + "teal": 1, + "source": 21, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + }, + { + "teal": 13, + "source": 21, + "pc": [ + 34, + 35 + ] + }, + { + "teal": 14, + "source": 21, + "pc": [ + 36 + ] + }, + { + "teal": 15, + "source": 21, + "pc": [ + 37 + ] + }, + { + "teal": 16, + "source": 21, + "pc": [ + 38 + ] + }, + { + "teal": 17, + "source": 21, + "pc": [ + 39, + 40 + ] + }, + { + "teal": 18, + "source": 21, + "pc": [ + 41 + ] + }, + { + "teal": 19, + "source": 21, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 23, + "source": 21, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 68 + ] + }, + { + "teal": 29, + "source": 44, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 32, + "source": 44, + "pc": [ + 72 + ] + }, + { + "teal": 33, + "source": 44, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 37, + "source": 45, + "pc": [ + 75 + ] + }, + { + "teal": 38, + "source": 45, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 42, + "source": 47, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 43, + "source": 47, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 48, + "source": 47, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 49, + "source": 47, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 50, + "source": 47, + "pc": [ + 86 + ] + }, + { + "teal": 51, + "source": 47, + "pc": [ + 87, + 88, + 89 + ] + }, + { + "teal": 55, + "source": 48, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 56, + "source": 48, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 61, + "source": 51, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 62, + "source": 51, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 63, + "source": 51, + "pc": [ + 98 + ] + }, + { + "teal": 64, + "source": 51, + "pc": [ + 99 + ] + }, + { + "teal": 65, + "source": 51, + "pc": [ + 100 + ] + }, + { + "teal": 66, + "source": 51, + "pc": [ + 101 + ] + }, + { + "teal": 67, + "source": 51, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 68, + "source": 51, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 69, + "source": 51, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 70, + "source": 51, + "pc": [ + 109 + ] + }, + { + "teal": 71, + "source": 51, + "pc": [ + 110 + ] + }, + { + "teal": 72, + "source": 51, + "pc": [ + 111 + ] + }, + { + "teal": 73, + "source": 51, + "pc": [ + 112 + ] + }, + { + "teal": 76, + "source": 51, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 81, + "source": 52, + "pc": [ + 116 + ] + }, + { + "teal": 82, + "source": 52, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 83, + "source": 53, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 92, + "source": 58, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 93, + "source": 58, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 94, + "source": 58, + "pc": [ + 126 + ] + }, + { + "teal": 95, + "source": 58, + "pc": [ + 127 + ] + }, + { + "teal": 96, + "source": 58, + "pc": [ + 128 + ] + }, + { + "teal": 97, + "source": 58, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 98, + "source": 59, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 99, + "source": 59, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 100, + "source": 59, + "pc": [ + 136, + 137, + 138 + ] + }, + { + "teal": 101, + "source": 59, + "pc": [ + 139 + ] + }, + { + "teal": 102, + "source": 58, + "pc": [ + 140 + ] + }, + { + "teal": 105, + "source": 59, + "pc": [ + 141 + ] + }, + { + "teal": 106, + "source": 59, + "pc": [ + 142, + 143, + 144 + ] + }, + { + "teal": 107, + "source": 60, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 108, + "source": 60, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 109, + "source": 60, + "pc": [ + 149 + ] + }, + { + "teal": 110, + "source": 60, + "pc": [ + 150 + ] + }, + { + "teal": 111, + "source": 59, + "pc": [ + 151 + ] + }, + { + "teal": 114, + "source": 60, + "pc": [ + 152 + ] + }, + { + "teal": 115, + "source": 60, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 116, + "source": 61, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 117, + "source": 61, + "pc": [ + 158, + 159, + 160 + ] + }, + { + "teal": 118, + "source": 61, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 119, + "source": 61, + "pc": [ + 163 + ] + }, + { + "teal": 120, + "source": 60, + "pc": [ + 164 + ] + }, + { + "teal": 123, + "source": 57, + "pc": [ + 165, + 166, + 167 + ] + }, + { + "teal": 128, + "source": 63, + "pc": [ + 168 + ] + }, + { + "teal": 129, + "source": 63, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 130, + "source": 64, + "pc": [ + 171, + 172, + 173 + ] + }, + { + "teal": 137, + "source": 47, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 138, + "source": 47, + "pc": [ + 176 + ] + }, + { + "teal": 139, + "source": 47, + "pc": [ + 177 + ] + }, + { + "teal": 140, + "source": 47, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 141, + "source": 47, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 146, + "source": 68, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 147, + "source": 68, + "pc": [ + 185 + ] + }, + { + "teal": 148, + "source": 44, + "pc": [ + 186 + ] + }, + { + "teal": 155, + "source": 75, + "pc": [ + 187, + 188, + 189 + ] + }, + { + "teal": 159, + "source": 76, + "pc": [ + 190 + ] + }, + { + "teal": 160, + "source": 76, + "pc": [ + 191 + ] + }, + { + "teal": 161, + "source": 76, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 162, + "source": 76, + "pc": [ + 194 + ] + }, + { + "teal": 163, + "source": 76, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 164, + "source": 76, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 165, + "source": 76, + "pc": [ + 200, + 201, + 202 + ] + }, + { + "teal": 168, + "source": 76, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 171, + "source": 75, + "pc": [ + 205 + ] + }, + { + "teal": 176, + "source": 86, + "pc": [ + 206, + 207, + 208 + ] + }, + { + "teal": 177, + "source": 86, + "pc": [ + 209 + ] + }, + { + "teal": 178, + "source": 86, + "pc": [ + 210 + ] + }, + { + "teal": 179, + "source": 86, + "pc": [ + 211 + ] + }, + { + "teal": 180, + "source": 86, + "pc": [ + 212 + ] + }, + { + "teal": 183, + "source": 86, + "errorMessage": "argument 0 (admin) for createApplication must be a address", + "pc": [ + 213 + ] + }, + { + "teal": 186, + "source": 86, + "pc": [ + 214, + 215, + 216 + ] + }, + { + "teal": 187, + "source": 86, + "pc": [ + 217 + ] + }, + { + "teal": 188, + "source": 86, + "pc": [ + 218 + ] + }, + { + "teal": 189, + "source": 86, + "pc": [ + 219 + ] + }, + { + "teal": 190, + "source": 86, + "pc": [ + 220 + ] + }, + { + "teal": 193, + "source": 86, + "errorMessage": "argument 1 (controlledAddress) for createApplication must be a address", + "pc": [ + 221 + ] + }, + { + "teal": 196, + "source": 86, + "pc": [ + 222, + 223, + 224 + ] + }, + { + "teal": 197, + "source": 86, + "pc": [ + 225 + ] + }, + { + "teal": 198, + "source": 86, + "pc": [ + 226 + ] + }, + { + "teal": 208, + "source": 86, + "pc": [ + 227, + 228, + 229 + ] + }, + { + "teal": 215, + "source": 88, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 216, + "source": 88, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 217, + "source": 88, + "pc": [ + 234 + ] + }, + { + "teal": 218, + "source": 88, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 219, + "source": 88, + "pc": [ + 237, + 238 + ] + }, + { + "teal": 220, + "source": 88, + "pc": [ + 239 + ] + }, + { + "teal": 221, + "source": 88, + "pc": [ + 240 + ] + }, + { + "teal": 224, + "source": 88, + "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txn\"},\"field\":\"sender\",\"condition\":\"includedIn\",\"expected\":\"[controlledAddress, admin]\"}", + "pc": [ + 241 + ] + }, + { + "teal": 228, + "source": 91, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 229, + "source": 91, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 230, + "source": 91, + "pc": [ + 246 + ] + }, + { + "teal": 231, + "source": 91, + "pc": [ + 247 + ] + }, + { + "teal": 235, + "source": 93, + "pc": [ + 248 + ] + }, + { + "teal": 236, + "source": 93, + "pc": [ + 249, + 250 + ] + }, + { + "teal": 237, + "source": 93, + "pc": [ + 251 + ] + }, + { + "teal": 241, + "source": 94, + "pc": [ + 252 + ] + }, + { + "teal": 242, + "source": 94, + "pc": [ + 253, + 254 + ] + }, + { + "teal": 243, + "source": 94, + "pc": [ + 255, + 256 + ] + }, + { + "teal": 244, + "source": 94, + "pc": [ + 257 + ] + }, + { + "teal": 245, + "source": 94, + "pc": [ + 258, + 259, + 260 + ] + }, + { + "teal": 246, + "source": 94, + "pc": [ + 261, + 262 + ] + }, + { + "teal": 247, + "source": 94, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 250, + "source": 94, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 253, + "source": 94, + "pc": [ + 268 + ] + }, + { + "teal": 254, + "source": 86, + "pc": [ + 269 + ] + }, + { + "teal": 259, + "source": 102, + "pc": [ + 270, + 271, + 272 + ] + }, + { + "teal": 260, + "source": 102, + "pc": [ + 273 + ] + }, + { + "teal": 261, + "source": 102, + "pc": [ + 274 + ] + }, + { + "teal": 262, + "source": 102, + "pc": [ + 275 + ] + }, + { + "teal": 263, + "source": 102, + "pc": [ + 276 + ] + }, + { + "teal": 266, + "source": 102, + "errorMessage": "argument 0 (newAdmin) for arc58_changeAdmin must be a address", + "pc": [ + 277 + ] + }, + { + "teal": 269, + "source": 102, + "pc": [ + 278, + 279, + 280 + ] + }, + { + "teal": 270, + "source": 102, + "pc": [ + 281 + ] + }, + { + "teal": 271, + "source": 102, + "pc": [ + 282 + ] + }, + { + "teal": 279, + "source": 102, + "pc": [ + 283, + 284, + 285 + ] + }, + { + "teal": 284, + "source": 103, + "pc": [ + 286, + 287 + ] + }, + { + "teal": 285, + "source": 103, + "pc": [ + 288 + ] + }, + { + "teal": 286, + "source": 103, + "pc": [ + 289 + ] + }, + { + "teal": 287, + "source": 103, + "pc": [ + 290 + ] + }, + { + "teal": 290, + "source": 103, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 291 + ] + }, + { + "teal": 294, + "source": 104, + "pc": [ + 292 + ] + }, + { + "teal": 295, + "source": 104, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 296, + "source": 104, + "pc": [ + 295 + ] + }, + { + "teal": 297, + "source": 102, + "pc": [ + 296 + ] + }, + { + "teal": 302, + "source": 115, + "pc": [ + 297, + 298, + 299 + ] + }, + { + "teal": 303, + "source": 115, + "pc": [ + 300 + ] + }, + { + "teal": 304, + "source": 115, + "pc": [ + 301 + ] + }, + { + "teal": 305, + "source": 115, + "pc": [ + 302 + ] + }, + { + "teal": 306, + "source": 115, + "pc": [ + 303 + ] + }, + { + "teal": 309, + "source": 115, + "errorMessage": "argument 0 (newAdmin) for arc58_pluginChangeAdmin must be a address", + "pc": [ + 304 + ] + }, + { + "teal": 312, + "source": 115, + "pc": [ + 305, + 306, + 307 + ] + }, + { + "teal": 313, + "source": 115, + "pc": [ + 308 + ] + }, + { + "teal": 314, + "source": 115, + "pc": [ + 309 + ] + }, + { + "teal": 315, + "source": 115, + "pc": [ + 310 + ] + }, + { + "teal": 316, + "source": 115, + "pc": [ + 311 + ] + }, + { + "teal": 319, + "source": 115, + "errorMessage": "argument 1 (allowedCaller) for arc58_pluginChangeAdmin must be a address", + "pc": [ + 312 + ] + }, + { + "teal": 322, + "source": 115, + "pc": [ + 313, + 314, + 315 + ] + }, + { + "teal": 323, + "source": 115, + "pc": [ + 316 + ] + }, + { + "teal": 326, + "source": 115, + "pc": [ + 317, + 318, + 319 + ] + }, + { + "teal": 327, + "source": 115, + "pc": [ + 320 + ] + }, + { + "teal": 328, + "source": 115, + "pc": [ + 321 + ] + }, + { + "teal": 338, + "source": 115, + "pc": [ + 322, + 323, + 324 + ] + }, + { + "teal": 341, + "source": 115, + "pc": [ + 325 + ] + }, + { + "teal": 346, + "source": 116, + "pc": [ + 326, + 327 + ] + }, + { + "teal": 347, + "source": 116, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 348, + "source": 116, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 349, + "source": 116, + "pc": [ + 332 + ] + }, + { + "teal": 350, + "source": 116, + "pc": [ + 333 + ] + }, + { + "teal": 353, + "source": 116, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"plugin.address\"}", + "pc": [ + 334 + ] + }, + { + "teal": 357, + "source": 117, + "pc": [ + 335 + ] + }, + { + "teal": 358, + "source": 117, + "pc": [ + 336 + ] + }, + { + "teal": 359, + "source": 117, + "pc": [ + 337, + 338 + ] + }, + { + "teal": 360, + "source": 117, + "pc": [ + 339 + ] + }, + { + "teal": 361, + "source": 117, + "pc": [ + 340, + 341 + ] + }, + { + "teal": 362, + "source": 117, + "pc": [ + 342, + 343 + ] + }, + { + "teal": 363, + "source": 117, + "pc": [ + 344 + ] + }, + { + "teal": 364, + "source": 117, + "pc": [ + 345 + ] + }, + { + "teal": 367, + "source": 117, + "errorMessage": "This plugin is not in control of the account", + "pc": [ + 346 + ] + }, + { + "teal": 371, + "source": 119, + "pc": [ + 347, + 348 + ] + }, + { + "teal": 372, + "source": 119, + "pc": [ + 349 + ] + }, + { + "teal": 373, + "source": 119, + "pc": [ + 350, + 351 + ] + }, + { + "teal": 374, + "source": 119, + "pc": [ + 352 + ] + }, + { + "teal": 375, + "source": 119, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 382, + "source": 121, + "pc": [ + 355 + ] + }, + { + "teal": 383, + "source": 121, + "pc": [ + 356, + 357 + ] + }, + { + "teal": 384, + "source": 121, + "pc": [ + 358 + ] + }, + { + "teal": 385, + "source": 121, + "pc": [ + 359 + ] + }, + { + "teal": 386, + "source": 121, + "pc": [ + 360 + ] + }, + { + "teal": 387, + "source": 121, + "pc": [ + 361 + ] + }, + { + "teal": 388, + "source": 121, + "pc": [ + 362 + ] + }, + { + "teal": 389, + "source": 121, + "pc": [ + 363, + 364, + 365 + ] + }, + { + "teal": 390, + "source": 121, + "pc": [ + 366 + ] + }, + { + "teal": 391, + "source": 121, + "pc": [ + 367, + 368 + ] + }, + { + "teal": 392, + "source": 121, + "pc": [ + 369 + ] + }, + { + "teal": 393, + "source": 121, + "pc": [ + 370 + ] + }, + { + "teal": 396, + "source": 121, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 371 + ] + }, + { + "teal": 397, + "source": 121, + "pc": [ + 372, + 373 + ] + }, + { + "teal": 398, + "source": 121, + "pc": [ + 374, + 375 + ] + }, + { + "teal": 399, + "source": 121, + "pc": [ + 376, + 377, + 378 + ] + }, + { + "teal": 400, + "source": 121, + "pc": [ + 379 + ] + }, + { + "teal": 401, + "source": 121, + "pc": [ + 380 + ] + }, + { + "teal": 405, + "source": 120, + "errorMessage": "This plugin does not have admin privileges", + "pc": [ + 381 + ] + }, + { + "teal": 409, + "source": 125, + "pc": [ + 382 + ] + }, + { + "teal": 410, + "source": 125, + "pc": [ + 383, + 384 + ] + }, + { + "teal": 411, + "source": 125, + "pc": [ + 385 + ] + }, + { + "teal": 412, + "source": 115, + "pc": [ + 386 + ] + }, + { + "teal": 417, + "source": 132, + "pc": [ + 387, + 388, + 389, + 390, + 391, + 392 + ] + }, + { + "teal": 420, + "source": 132, + "pc": [ + 393, + 394, + 395 + ] + }, + { + "teal": 421, + "source": 132, + "pc": [ + 396 + ] + }, + { + "teal": 422, + "source": 132, + "pc": [ + 397 + ] + }, + { + "teal": 423, + "source": 132, + "pc": [ + 398 + ] + }, + { + "teal": 424, + "source": 132, + "pc": [ + 399 + ] + }, + { + "teal": 431, + "source": 132, + "pc": [ + 400, + 401, + 402 + ] + }, + { + "teal": 435, + "source": 133, + "pc": [ + 403 + ] + }, + { + "teal": 436, + "source": 133, + "pc": [ + 404 + ] + }, + { + "teal": 437, + "source": 132, + "pc": [ + 405 + ] + }, + { + "teal": 442, + "source": 139, + "pc": [ + 406, + 407, + 408 + ] + }, + { + "teal": 443, + "source": 139, + "pc": [ + 409 + ] + }, + { + "teal": 444, + "source": 139, + "pc": [ + 410 + ] + }, + { + "teal": 450, + "source": 139, + "pc": [ + 411, + 412, + 413 + ] + }, + { + "teal": 454, + "source": 140, + "pc": [ + 414 + ] + }, + { + "teal": 455, + "source": 140, + "pc": [ + 415 + ] + }, + { + "teal": 456, + "source": 140, + "pc": [ + 416, + 417 + ] + }, + { + "teal": 457, + "source": 140, + "pc": [ + 418 + ] + }, + { + "teal": 458, + "source": 140, + "pc": [ + 419, + 420, + 421 + ] + }, + { + "teal": 459, + "source": 140, + "pc": [ + 422 + ] + }, + { + "teal": 460, + "source": 140, + "pc": [ + 423 + ] + }, + { + "teal": 461, + "source": 139, + "pc": [ + 424 + ] + }, + { + "teal": 466, + "source": 149, + "pc": [ + 425, + 426, + 427 + ] + }, + { + "teal": 467, + "source": 149, + "pc": [ + 428 + ] + }, + { + "teal": 468, + "source": 149, + "pc": [ + 429 + ] + }, + { + "teal": 469, + "source": 149, + "pc": [ + 430 + ] + }, + { + "teal": 470, + "source": 149, + "pc": [ + 431 + ] + }, + { + "teal": 473, + "source": 149, + "errorMessage": "argument 0 (flash) for arc58_rekeyTo must be a bool", + "pc": [ + 432 + ] + }, + { + "teal": 474, + "source": 149, + "pc": [ + 433 + ] + }, + { + "teal": 475, + "source": 149, + "pc": [ + 434 + ] + }, + { + "teal": 478, + "source": 149, + "pc": [ + 435, + 436, + 437 + ] + }, + { + "teal": 479, + "source": 149, + "pc": [ + 438 + ] + }, + { + "teal": 480, + "source": 149, + "pc": [ + 439 + ] + }, + { + "teal": 481, + "source": 149, + "pc": [ + 440 + ] + }, + { + "teal": 482, + "source": 149, + "pc": [ + 441 + ] + }, + { + "teal": 485, + "source": 149, + "errorMessage": "argument 1 (addr) for arc58_rekeyTo must be a address", + "pc": [ + 442 + ] + }, + { + "teal": 488, + "source": 149, + "pc": [ + 443, + 444, + 445 + ] + }, + { + "teal": 489, + "source": 149, + "pc": [ + 446 + ] + }, + { + "teal": 490, + "source": 149, + "pc": [ + 447 + ] + }, + { + "teal": 499, + "source": 149, + "pc": [ + 448, + 449, + 450 + ] + }, + { + "teal": 504, + "source": 150, + "pc": [ + 451, + 452 + ] + }, + { + "teal": 505, + "source": 150, + "pc": [ + 453 + ] + }, + { + "teal": 506, + "source": 150, + "pc": [ + 454 + ] + }, + { + "teal": 507, + "source": 150, + "pc": [ + 455 + ] + }, + { + "teal": 510, + "source": 150, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 456 + ] + }, + { + "teal": 519, + "source": 152, + "pc": [ + 457 + ] + }, + { + "teal": 520, + "source": 152, + "pc": [ + 458 + ] + }, + { + "teal": 521, + "source": 152, + "pc": [ + 459, + 460 + ] + }, + { + "teal": 525, + "source": 153, + "pc": [ + 461 + ] + }, + { + "teal": 526, + "source": 153, + "pc": [ + 462 + ] + }, + { + "teal": 527, + "source": 153, + "pc": [ + 463, + 464 + ] + }, + { + "teal": 531, + "source": 154, + "pc": [ + 465, + 466 + ] + }, + { + "teal": 532, + "source": 154, + "pc": [ + 467, + 468 + ] + }, + { + "teal": 536, + "source": 155, + "pc": [ + 469, + 470 + ] + }, + { + "teal": 537, + "source": 155, + "pc": [ + 471, + 472 + ] + }, + { + "teal": 541, + "source": 156, + "pc": [ + 473, + 474, + 475, + 476, + 477, + 478, + 479, + 480, + 481, + 482, + 483, + 484, + 485, + 486, + 487, + 488, + 489, + 490, + 491, + 492, + 493, + 494, + 495, + 496, + 497, + 498, + 499, + 500, + 501 + ] + }, + { + "teal": 542, + "source": 156, + "pc": [ + 502, + 503 + ] + }, + { + "teal": 545, + "source": 152, + "pc": [ + 504 + ] + }, + { + "teal": 546, + "source": 152, + "pc": [ + 505, + 506 + ] + }, + { + "teal": 549, + "source": 152, + "pc": [ + 507 + ] + }, + { + "teal": 554, + "source": 159, + "pc": [ + 508, + 509 + ] + }, + { + "teal": 555, + "source": 159, + "pc": [ + 510, + 511, + 512 + ] + }, + { + "teal": 560, + "source": 159, + "pc": [ + 513, + 514, + 515 + ] + }, + { + "teal": 563, + "source": 149, + "pc": [ + 516 + ] + }, + { + "teal": 567, + "source": 162, + "pc": [ + 517, + 518, + 519 + ] + }, + { + "teal": 570, + "source": 162, + "pc": [ + 520 + ] + }, + { + "teal": 574, + "source": 163, + "pc": [ + 521, + 522 + ] + }, + { + "teal": 575, + "source": 163, + "pc": [ + 523 + ] + }, + { + "teal": 576, + "source": 163, + "pc": [ + 524, + 525 + ] + }, + { + "teal": 577, + "source": 163, + "pc": [ + 526 + ] + }, + { + "teal": 578, + "source": 163, + "pc": [ + 527, + 528 + ] + }, + { + "teal": 586, + "source": 166, + "pc": [ + 529 + ] + }, + { + "teal": 587, + "source": 166, + "pc": [ + 530, + 531 + ] + }, + { + "teal": 588, + "source": 166, + "pc": [ + 532 + ] + }, + { + "teal": 589, + "source": 166, + "pc": [ + 533 + ] + }, + { + "teal": 590, + "source": 166, + "pc": [ + 534 + ] + }, + { + "teal": 591, + "source": 166, + "pc": [ + 535 + ] + }, + { + "teal": 592, + "source": 166, + "pc": [ + 536 + ] + }, + { + "teal": 593, + "source": 166, + "pc": [ + 537, + 538, + 539 + ] + }, + { + "teal": 594, + "source": 167, + "pc": [ + 540 + ] + }, + { + "teal": 595, + "source": 167, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 596, + "source": 167, + "pc": [ + 543 + ] + }, + { + "teal": 597, + "source": 167, + "pc": [ + 544 + ] + }, + { + "teal": 600, + "source": 167, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 545 + ] + }, + { + "teal": 601, + "source": 167, + "pc": [ + 546, + 547 + ] + }, + { + "teal": 602, + "source": 167, + "pc": [ + 548, + 549 + ] + }, + { + "teal": 603, + "source": 167, + "pc": [ + 550, + 551, + 552 + ] + }, + { + "teal": 604, + "source": 167, + "pc": [ + 553 + ] + }, + { + "teal": 605, + "source": 167, + "pc": [ + 554, + 555 + ] + }, + { + "teal": 606, + "source": 167, + "pc": [ + 556 + ] + }, + { + "teal": 607, + "source": 166, + "pc": [ + 557 + ] + }, + { + "teal": 610, + "source": 167, + "pc": [ + 558 + ] + }, + { + "teal": 611, + "source": 167, + "pc": [ + 559, + 560, + 561 + ] + }, + { + "teal": 612, + "source": 168, + "pc": [ + 562, + 563 + ] + }, + { + "teal": 613, + "source": 168, + "pc": [ + 564 + ] + }, + { + "teal": 614, + "source": 168, + "pc": [ + 565, + 566 + ] + }, + { + "teal": 615, + "source": 168, + "pc": [ + 567 + ] + }, + { + "teal": 616, + "source": 168, + "pc": [ + 568 + ] + }, + { + "teal": 619, + "source": 168, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 569 + ] + }, + { + "teal": 620, + "source": 168, + "pc": [ + 570, + 571 + ] + }, + { + "teal": 621, + "source": 168, + "pc": [ + 572, + 573 + ] + }, + { + "teal": 622, + "source": 168, + "pc": [ + 574, + 575, + 576 + ] + }, + { + "teal": 623, + "source": 168, + "pc": [ + 577 + ] + }, + { + "teal": 624, + "source": 168, + "pc": [ + 578 + ] + }, + { + "teal": 625, + "source": 168, + "pc": [ + 579 + ] + }, + { + "teal": 626, + "source": 168, + "pc": [ + 580, + 581 + ] + }, + { + "teal": 627, + "source": 168, + "pc": [ + 582 + ] + }, + { + "teal": 628, + "source": 168, + "pc": [ + 583 + ] + }, + { + "teal": 631, + "source": 168, + "errorMessage": "box value does not exist: this.plugins(key).value", + "pc": [ + 584 + ] + }, + { + "teal": 632, + "source": 168, + "pc": [ + 585, + 586 + ] + }, + { + "teal": 633, + "source": 168, + "pc": [ + 587, + 588 + ] + }, + { + "teal": 634, + "source": 168, + "pc": [ + 589, + 590, + 591 + ] + }, + { + "teal": 635, + "source": 168, + "pc": [ + 592 + ] + }, + { + "teal": 636, + "source": 168, + "pc": [ + 593 + ] + }, + { + "teal": 637, + "source": 167, + "pc": [ + 594 + ] + }, + { + "teal": 641, + "source": 162, + "pc": [ + 595, + 596 + ] + }, + { + "teal": 642, + "source": 162, + "pc": [ + 597 + ] + }, + { + "teal": 647, + "source": 177, + "pc": [ + 598, + 599, + 600 + ] + }, + { + "teal": 648, + "source": 177, + "pc": [ + 601 + ] + }, + { + "teal": 651, + "source": 177, + "pc": [ + 602, + 603, + 604 + ] + }, + { + "teal": 652, + "source": 177, + "pc": [ + 605 + ] + }, + { + "teal": 653, + "source": 177, + "pc": [ + 606 + ] + }, + { + "teal": 661, + "source": 177, + "pc": [ + 607, + 608, + 609 + ] + }, + { + "teal": 664, + "source": 177, + "pc": [ + 610 + ] + }, + { + "teal": 668, + "source": 178, + "pc": [ + 611, + 612 + ] + }, + { + "teal": 669, + "source": 178, + "pc": [ + 613, + 614 + ] + }, + { + "teal": 670, + "source": 178, + "pc": [ + 615, + 616, + 617 + ] + }, + { + "teal": 671, + "source": 178, + "pc": [ + 618, + 619 + ] + }, + { + "teal": 676, + "source": 180, + "pc": [ + 620, + 621 + ] + }, + { + "teal": 677, + "source": 180, + "pc": [ + 622 + ] + }, + { + "teal": 678, + "source": 180, + "pc": [ + 623, + 624, + 625 + ] + }, + { + "teal": 683, + "source": 181, + "pc": [ + 626, + 627 + ] + }, + { + "teal": 684, + "source": 181, + "pc": [ + 628, + 629 + ] + }, + { + "teal": 685, + "source": 181, + "pc": [ + 630, + 631, + 632 + ] + }, + { + "teal": 688, + "source": 181, + "errorMessage": "This sender is not allowed to trigger this plugin", + "pc": [ + 633 + ] + }, + { + "teal": 698, + "source": 183, + "pc": [ + 634 + ] + }, + { + "teal": 699, + "source": 183, + "pc": [ + 635 + ] + }, + { + "teal": 700, + "source": 183, + "pc": [ + 636, + 637 + ] + }, + { + "teal": 704, + "source": 184, + "pc": [ + 638 + ] + }, + { + "teal": 705, + "source": 184, + "pc": [ + 639 + ] + }, + { + "teal": 706, + "source": 184, + "pc": [ + 640, + 641 + ] + }, + { + "teal": 710, + "source": 185, + "pc": [ + 642 + ] + }, + { + "teal": 711, + "source": 185, + "pc": [ + 643 + ] + }, + { + "teal": 712, + "source": 185, + "pc": [ + 644, + 645 + ] + }, + { + "teal": 716, + "source": 186, + "pc": [ + 646, + 647 + ] + }, + { + "teal": 717, + "source": 186, + "pc": [ + 648, + 649 + ] + }, + { + "teal": 718, + "source": 186, + "pc": [ + 650 + ] + }, + { + "teal": 719, + "source": 186, + "pc": [ + 651, + 652 + ] + }, + { + "teal": 723, + "source": 187, + "pc": [ + 653, + 654, + 655, + 656, + 657, + 658, + 659, + 660, + 661, + 662, + 663, + 664, + 665, + 666, + 667, + 668, + 669, + 670, + 671, + 672, + 673, + 674, + 675, + 676 + ] + }, + { + "teal": 724, + "source": 187, + "pc": [ + 677, + 678 + ] + }, + { + "teal": 727, + "source": 183, + "pc": [ + 679 + ] + }, + { + "teal": 728, + "source": 183, + "pc": [ + 680, + 681 + ] + }, + { + "teal": 731, + "source": 183, + "pc": [ + 682 + ] + }, + { + "teal": 738, + "source": 190, + "pc": [ + 683 + ] + }, + { + "teal": 739, + "source": 191, + "pc": [ + 684, + 685 + ] + }, + { + "teal": 740, + "source": 191, + "pc": [ + 686 + ] + }, + { + "teal": 741, + "source": 192, + "pc": [ + 687, + 688 + ] + }, + { + "teal": 742, + "source": 192, + "pc": [ + 689, + 690, + 691 + ] + }, + { + "teal": 743, + "source": 192, + "pc": [ + 692, + 693 + ] + }, + { + "teal": 744, + "source": 192, + "pc": [ + 694, + 695, + 696 + ] + }, + { + "teal": 747, + "source": 192, + "pc": [ + 697, + 698 + ] + }, + { + "teal": 750, + "source": 192, + "pc": [ + 699 + ] + }, + { + "teal": 751, + "source": 190, + "pc": [ + 700 + ] + }, + { + "teal": 752, + "source": 190, + "pc": [ + 701 + ] + }, + { + "teal": 755, + "source": 190, + "errorMessage": "box value does not exist: this.plugins({ application: plugin, allowedCaller: globalAllowed ? Address.zeroAddress : this.txn.sender, }).value", + "pc": [ + 702 + ] + }, + { + "teal": 756, + "source": 190, + "pc": [ + 703, + 704 + ] + }, + { + "teal": 757, + "source": 190, + "pc": [ + 705, + 706 + ] + }, + { + "teal": 758, + "source": 190, + "pc": [ + 707, + 708 + ] + }, + { + "teal": 759, + "source": 193, + "pc": [ + 709, + 710 + ] + }, + { + "teal": 760, + "source": 193, + "pc": [ + 711 + ] + }, + { + "teal": 761, + "source": 190, + "pc": [ + 712 + ] + }, + { + "teal": 762, + "source": 191, + "pc": [ + 713, + 714 + ] + }, + { + "teal": 763, + "source": 191, + "pc": [ + 715 + ] + }, + { + "teal": 764, + "source": 192, + "pc": [ + 716, + 717 + ] + }, + { + "teal": 765, + "source": 192, + "pc": [ + 718, + 719, + 720 + ] + }, + { + "teal": 766, + "source": 192, + "pc": [ + 721, + 722 + ] + }, + { + "teal": 767, + "source": 192, + "pc": [ + 723, + 724, + 725 + ] + }, + { + "teal": 770, + "source": 192, + "pc": [ + 726, + 727 + ] + }, + { + "teal": 773, + "source": 192, + "pc": [ + 728 + ] + }, + { + "teal": 774, + "source": 190, + "pc": [ + 729 + ] + }, + { + "teal": 775, + "source": 190, + "pc": [ + 730, + 731 + ] + }, + { + "teal": 776, + "source": 190, + "pc": [ + 732 + ] + }, + { + "teal": 780, + "source": 195, + "pc": [ + 733, + 734, + 735 + ] + }, + { + "teal": 781, + "source": 177, + "pc": [ + 736 + ] + }, + { + "teal": 786, + "source": 203, + "pc": [ + 737, + 738, + 739 + ] + }, + { + "teal": 787, + "source": 203, + "pc": [ + 740, + 741, + 742 + ] + }, + { + "teal": 790, + "source": 203, + "pc": [ + 743, + 744, + 745 + ] + }, + { + "teal": 791, + "source": 203, + "pc": [ + 746 + ] + }, + { + "teal": 792, + "source": 203, + "pc": [ + 747 + ] + }, + { + "teal": 800, + "source": 203, + "pc": [ + 748, + 749, + 750 + ] + }, + { + "teal": 804, + "source": 204, + "pc": [ + 751 + ] + }, + { + "teal": 805, + "source": 204, + "pc": [ + 752, + 753 + ] + }, + { + "teal": 806, + "source": 204, + "pc": [ + 754, + 755 + ] + }, + { + "teal": 807, + "source": 204, + "pc": [ + 756, + 757 + ] + }, + { + "teal": 808, + "source": 204, + "pc": [ + 758 + ] + }, + { + "teal": 809, + "source": 204, + "pc": [ + 759, + 760 + ] + }, + { + "teal": 810, + "source": 204, + "pc": [ + 761 + ] + }, + { + "teal": 811, + "source": 204, + "pc": [ + 762 + ] + }, + { + "teal": 812, + "source": 204, + "pc": [ + 763, + 764, + 765 + ] + }, + { + "teal": 813, + "source": 203, + "pc": [ + 766 + ] + }, + { + "teal": 818, + "source": 222, + "pc": [ + 767, + 768, + 769 + ] + }, + { + "teal": 819, + "source": 222, + "pc": [ + 770 + ] + }, + { + "teal": 820, + "source": 222, + "pc": [ + 771 + ] + }, + { + "teal": 821, + "source": 222, + "pc": [ + 772 + ] + }, + { + "teal": 822, + "source": 222, + "pc": [ + 773 + ] + }, + { + "teal": 825, + "source": 222, + "errorMessage": "argument 0 (adminPrivileges) for arc58_addPlugin must be a bool", + "pc": [ + 774 + ] + }, + { + "teal": 826, + "source": 222, + "pc": [ + 775 + ] + }, + { + "teal": 827, + "source": 222, + "pc": [ + 776 + ] + }, + { + "teal": 830, + "source": 221, + "pc": [ + 777, + 778, + 779 + ] + }, + { + "teal": 831, + "source": 221, + "pc": [ + 780 + ] + }, + { + "teal": 834, + "source": 220, + "pc": [ + 781, + 782, + 783 + ] + }, + { + "teal": 835, + "source": 220, + "pc": [ + 784 + ] + }, + { + "teal": 838, + "source": 219, + "pc": [ + 785, + 786, + 787 + ] + }, + { + "teal": 839, + "source": 219, + "pc": [ + 788 + ] + }, + { + "teal": 840, + "source": 219, + "pc": [ + 789 + ] + }, + { + "teal": 841, + "source": 219, + "pc": [ + 790 + ] + }, + { + "teal": 842, + "source": 219, + "pc": [ + 791 + ] + }, + { + "teal": 845, + "source": 219, + "errorMessage": "argument 3 (allowedCaller) for arc58_addPlugin must be a address", + "pc": [ + 792 + ] + }, + { + "teal": 848, + "source": 218, + "pc": [ + 793, + 794, + 795 + ] + }, + { + "teal": 849, + "source": 218, + "pc": [ + 796 + ] + }, + { + "teal": 852, + "source": 217, + "pc": [ + 797, + 798, + 799 + ] + }, + { + "teal": 853, + "source": 217, + "pc": [ + 800 + ] + }, + { + "teal": 854, + "source": 217, + "pc": [ + 801 + ] + }, + { + "teal": 867, + "source": 217, + "pc": [ + 802, + 803, + 804 + ] + }, + { + "teal": 870, + "source": 217, + "pc": [ + 805 + ] + }, + { + "teal": 875, + "source": 224, + "pc": [ + 806, + 807 + ] + }, + { + "teal": 876, + "source": 224, + "pc": [ + 808 + ] + }, + { + "teal": 877, + "source": 224, + "pc": [ + 809 + ] + }, + { + "teal": 878, + "source": 224, + "pc": [ + 810 + ] + }, + { + "teal": 881, + "source": 224, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 811 + ] + }, + { + "teal": 885, + "source": 225, + "pc": [ + 812, + 813 + ] + }, + { + "teal": 886, + "source": 225, + "pc": [ + 814 + ] + }, + { + "teal": 887, + "source": 225, + "pc": [ + 815, + 816 + ] + }, + { + "teal": 888, + "source": 225, + "pc": [ + 817 + ] + }, + { + "teal": 889, + "source": 225, + "pc": [ + 818, + 819 + ] + }, + { + "teal": 898, + "source": 226, + "pc": [ + 820 + ] + }, + { + "teal": 899, + "source": 226, + "pc": [ + 821, + 822 + ] + }, + { + "teal": 900, + "source": 226, + "pc": [ + 823 + ] + }, + { + "teal": 901, + "source": 227, + "pc": [ + 824, + 825 + ] + }, + { + "teal": 902, + "source": 227, + "pc": [ + 826 + ] + }, + { + "teal": 903, + "source": 228, + "pc": [ + 827, + 828 + ] + }, + { + "teal": 904, + "source": 228, + "pc": [ + 829 + ] + }, + { + "teal": 905, + "source": 228, + "pc": [ + 830 + ] + }, + { + "teal": 906, + "source": 229, + "pc": [ + 831, + 832 + ] + }, + { + "teal": 907, + "source": 229, + "pc": [ + 833 + ] + }, + { + "teal": 908, + "source": 230, + "pc": [ + 834, + 835 + ] + }, + { + "teal": 909, + "source": 230, + "pc": [ + 836 + ] + }, + { + "teal": 910, + "source": 230, + "pc": [ + 837, + 838 + ] + }, + { + "teal": 911, + "source": 230, + "pc": [ + 839 + ] + }, + { + "teal": 912, + "source": 226, + "pc": [ + 840 + ] + }, + { + "teal": 913, + "source": 226, + "pc": [ + 841 + ] + }, + { + "teal": 914, + "source": 217, + "pc": [ + 842 + ] + }, + { + "teal": 919, + "source": 239, + "pc": [ + 843, + 844, + 845 + ] + }, + { + "teal": 920, + "source": 239, + "pc": [ + 846 + ] + }, + { + "teal": 921, + "source": 239, + "pc": [ + 847 + ] + }, + { + "teal": 922, + "source": 239, + "pc": [ + 848 + ] + }, + { + "teal": 923, + "source": 239, + "pc": [ + 849 + ] + }, + { + "teal": 926, + "source": 239, + "errorMessage": "argument 0 (allowedCaller) for arc58_removePlugin must be a address", + "pc": [ + 850 + ] + }, + { + "teal": 929, + "source": 239, + "pc": [ + 851, + 852, + 853 + ] + }, + { + "teal": 930, + "source": 239, + "pc": [ + 854 + ] + }, + { + "teal": 933, + "source": 239, + "pc": [ + 855, + 856, + 857 + ] + }, + { + "teal": 934, + "source": 239, + "pc": [ + 858 + ] + }, + { + "teal": 935, + "source": 239, + "pc": [ + 859 + ] + }, + { + "teal": 943, + "source": 239, + "pc": [ + 860, + 861, + 862 + ] + }, + { + "teal": 946, + "source": 239, + "pc": [ + 863 + ] + }, + { + "teal": 951, + "source": 240, + "pc": [ + 864, + 865 + ] + }, + { + "teal": 952, + "source": 240, + "pc": [ + 866 + ] + }, + { + "teal": 953, + "source": 240, + "pc": [ + 867 + ] + }, + { + "teal": 954, + "source": 240, + "pc": [ + 868 + ] + }, + { + "teal": 957, + "source": 240, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 869 + ] + }, + { + "teal": 961, + "source": 242, + "pc": [ + 870, + 871 + ] + }, + { + "teal": 962, + "source": 242, + "pc": [ + 872 + ] + }, + { + "teal": 963, + "source": 242, + "pc": [ + 873, + 874 + ] + }, + { + "teal": 964, + "source": 242, + "pc": [ + 875 + ] + }, + { + "teal": 965, + "source": 242, + "pc": [ + 876, + 877 + ] + }, + { + "teal": 969, + "source": 243, + "pc": [ + 878 + ] + }, + { + "teal": 970, + "source": 243, + "pc": [ + 879, + 880 + ] + }, + { + "teal": 971, + "source": 243, + "pc": [ + 881 + ] + }, + { + "teal": 972, + "source": 243, + "pc": [ + 882 + ] + }, + { + "teal": 973, + "source": 239, + "pc": [ + 883 + ] + }, + { + "teal": 978, + "source": 263, + "pc": [ + 884, + 885, + 886 + ] + }, + { + "teal": 979, + "source": 263, + "pc": [ + 887 + ] + }, + { + "teal": 980, + "source": 263, + "pc": [ + 888 + ] + }, + { + "teal": 981, + "source": 263, + "pc": [ + 889 + ] + }, + { + "teal": 982, + "source": 263, + "pc": [ + 890 + ] + }, + { + "teal": 985, + "source": 263, + "errorMessage": "argument 0 (adminPrivileges) for arc58_addNamedPlugin must be a bool", + "pc": [ + 891 + ] + }, + { + "teal": 986, + "source": 263, + "pc": [ + 892 + ] + }, + { + "teal": 987, + "source": 263, + "pc": [ + 893 + ] + }, + { + "teal": 990, + "source": 262, + "pc": [ + 894, + 895, + 896 + ] + }, + { + "teal": 991, + "source": 262, + "pc": [ + 897 + ] + }, + { + "teal": 994, + "source": 261, + "pc": [ + 898, + 899, + 900 + ] + }, + { + "teal": 995, + "source": 261, + "pc": [ + 901 + ] + }, + { + "teal": 998, + "source": 260, + "pc": [ + 902, + 903, + 904 + ] + }, + { + "teal": 999, + "source": 260, + "pc": [ + 905 + ] + }, + { + "teal": 1000, + "source": 260, + "pc": [ + 906 + ] + }, + { + "teal": 1001, + "source": 260, + "pc": [ + 907 + ] + }, + { + "teal": 1002, + "source": 260, + "pc": [ + 908 + ] + }, + { + "teal": 1005, + "source": 260, + "errorMessage": "argument 3 (allowedCaller) for arc58_addNamedPlugin must be a address", + "pc": [ + 909 + ] + }, + { + "teal": 1008, + "source": 259, + "pc": [ + 910, + 911, + 912 + ] + }, + { + "teal": 1009, + "source": 259, + "pc": [ + 913 + ] + }, + { + "teal": 1012, + "source": 258, + "pc": [ + 914, + 915, + 916 + ] + }, + { + "teal": 1013, + "source": 258, + "pc": [ + 917, + 918, + 919 + ] + }, + { + "teal": 1016, + "source": 257, + "pc": [ + 920, + 921, + 922 + ] + }, + { + "teal": 1017, + "source": 257, + "pc": [ + 923 + ] + }, + { + "teal": 1018, + "source": 257, + "pc": [ + 924 + ] + }, + { + "teal": 1032, + "source": 257, + "pc": [ + 925, + 926, + 927 + ] + }, + { + "teal": 1035, + "source": 257, + "pc": [ + 928 + ] + }, + { + "teal": 1040, + "source": 265, + "pc": [ + 929, + 930 + ] + }, + { + "teal": 1041, + "source": 265, + "pc": [ + 931 + ] + }, + { + "teal": 1042, + "source": 265, + "pc": [ + 932 + ] + }, + { + "teal": 1043, + "source": 265, + "pc": [ + 933 + ] + }, + { + "teal": 1046, + "source": 265, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 934 + ] + }, + { + "teal": 1050, + "source": 266, + "pc": [ + 935, + 936 + ] + }, + { + "teal": 1051, + "source": 266, + "pc": [ + 937, + 938 + ] + }, + { + "teal": 1052, + "source": 266, + "pc": [ + 939 + ] + }, + { + "teal": 1053, + "source": 266, + "pc": [ + 940 + ] + }, + { + "teal": 1054, + "source": 266, + "pc": [ + 941 + ] + }, + { + "teal": 1055, + "source": 266, + "pc": [ + 942 + ] + }, + { + "teal": 1056, + "source": 266, + "pc": [ + 943 + ] + }, + { + "teal": 1057, + "source": 266, + "pc": [ + 944 + ] + }, + { + "teal": 1061, + "source": 268, + "pc": [ + 945, + 946 + ] + }, + { + "teal": 1062, + "source": 268, + "pc": [ + 947 + ] + }, + { + "teal": 1063, + "source": 268, + "pc": [ + 948, + 949 + ] + }, + { + "teal": 1064, + "source": 268, + "pc": [ + 950 + ] + }, + { + "teal": 1065, + "source": 268, + "pc": [ + 951, + 952 + ] + }, + { + "teal": 1069, + "source": 269, + "pc": [ + 953, + 954 + ] + }, + { + "teal": 1070, + "source": 269, + "pc": [ + 955, + 956 + ] + }, + { + "teal": 1071, + "source": 269, + "pc": [ + 957 + ] + }, + { + "teal": 1072, + "source": 269, + "pc": [ + 958, + 959 + ] + }, + { + "teal": 1073, + "source": 269, + "pc": [ + 960 + ] + }, + { + "teal": 1082, + "source": 270, + "pc": [ + 961 + ] + }, + { + "teal": 1083, + "source": 270, + "pc": [ + 962, + 963 + ] + }, + { + "teal": 1084, + "source": 270, + "pc": [ + 964 + ] + }, + { + "teal": 1085, + "source": 271, + "pc": [ + 965, + 966 + ] + }, + { + "teal": 1086, + "source": 271, + "pc": [ + 967 + ] + }, + { + "teal": 1087, + "source": 272, + "pc": [ + 968, + 969 + ] + }, + { + "teal": 1088, + "source": 272, + "pc": [ + 970 + ] + }, + { + "teal": 1089, + "source": 272, + "pc": [ + 971 + ] + }, + { + "teal": 1090, + "source": 273, + "pc": [ + 972, + 973 + ] + }, + { + "teal": 1091, + "source": 273, + "pc": [ + 974 + ] + }, + { + "teal": 1092, + "source": 274, + "pc": [ + 975, + 976 + ] + }, + { + "teal": 1093, + "source": 274, + "pc": [ + 977 + ] + }, + { + "teal": 1094, + "source": 274, + "pc": [ + 978, + 979 + ] + }, + { + "teal": 1095, + "source": 274, + "pc": [ + 980 + ] + }, + { + "teal": 1096, + "source": 270, + "pc": [ + 981 + ] + }, + { + "teal": 1097, + "source": 270, + "pc": [ + 982 + ] + }, + { + "teal": 1098, + "source": 257, + "pc": [ + 983 + ] + }, + { + "teal": 1103, + "source": 283, + "pc": [ + 984, + 985, + 986 + ] + }, + { + "teal": 1104, + "source": 283, + "pc": [ + 987, + 988, + 989 + ] + }, + { + "teal": 1107, + "source": 283, + "pc": [ + 990, + 991, + 992 + ] + }, + { + "teal": 1108, + "source": 283, + "pc": [ + 993 + ] + }, + { + "teal": 1109, + "source": 283, + "pc": [ + 994 + ] + }, + { + "teal": 1117, + "source": 283, + "pc": [ + 995, + 996, + 997 + ] + }, + { + "teal": 1120, + "source": 283, + "pc": [ + 998 + ] + }, + { + "teal": 1125, + "source": 284, + "pc": [ + 999, + 1000 + ] + }, + { + "teal": 1126, + "source": 284, + "pc": [ + 1001 + ] + }, + { + "teal": 1127, + "source": 284, + "pc": [ + 1002 + ] + }, + { + "teal": 1128, + "source": 284, + "pc": [ + 1003 + ] + }, + { + "teal": 1131, + "source": 284, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.admin.value\"}", + "pc": [ + 1004 + ] + }, + { + "teal": 1135, + "source": 286, + "pc": [ + 1005, + 1006 + ] + }, + { + "teal": 1136, + "source": 286, + "pc": [ + 1007, + 1008 + ] + }, + { + "teal": 1137, + "source": 286, + "pc": [ + 1009 + ] + }, + { + "teal": 1138, + "source": 286, + "pc": [ + 1010, + 1011 + ] + }, + { + "teal": 1142, + "source": 287, + "pc": [ + 1012, + 1013 + ] + }, + { + "teal": 1143, + "source": 287, + "pc": [ + 1014, + 1015 + ] + }, + { + "teal": 1144, + "source": 287, + "pc": [ + 1016 + ] + }, + { + "teal": 1145, + "source": 287, + "pc": [ + 1017 + ] + }, + { + "teal": 1149, + "source": 288, + "pc": [ + 1018 + ] + }, + { + "teal": 1150, + "source": 286, + "pc": [ + 1019, + 1020 + ] + }, + { + "teal": 1151, + "source": 286, + "pc": [ + 1021 + ] + }, + { + "teal": 1154, + "source": 286, + "errorMessage": "box value does not exist: this.namedPlugins(name).value", + "pc": [ + 1022 + ] + }, + { + "teal": 1155, + "source": 288, + "pc": [ + 1023 + ] + }, + { + "teal": 1156, + "source": 288, + "pc": [ + 1024 + ] + }, + { + "teal": 1157, + "source": 283, + "pc": [ + 1025 + ] + }, + { + "teal": 1160, + "source": 21, + "pc": [ + 1026, + 1027, + 1028, + 1029, + 1030, + 1031 + ] + }, + { + "teal": 1161, + "source": 21, + "pc": [ + 1032, + 1033, + 1034 + ] + }, + { + "teal": 1162, + "source": 21, + "pc": [ + 1035, + 1036, + 1037, + 1038 + ] + }, + { + "teal": 1165, + "source": 21, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 1039 + ] + }, + { + "teal": 1168, + "source": 21, + "pc": [ + 1040, + 1041, + 1042, + 1043, + 1044, + 1045 + ] + }, + { + "teal": 1169, + "source": 21, + "pc": [ + 1046, + 1047, + 1048, + 1049, + 1050, + 1051 + ] + }, + { + "teal": 1170, + "source": 21, + "pc": [ + 1052, + 1053, + 1054, + 1055, + 1056, + 1057 + ] + }, + { + "teal": 1171, + "source": 21, + "pc": [ + 1058, + 1059 + ] + }, + { + "teal": 1172, + "source": 21, + "pc": [ + 1060, + 1061, + 1062, + 1063, + 1064, + 1065 + ] + }, + { + "teal": 1173, + "source": 21, + "pc": [ + 1066, + 1067, + 1068, + 1069, + 1070, + 1071 + ] + }, + { + "teal": 1174, + "source": 21, + "pc": [ + 1072, + 1073, + 1074, + 1075, + 1076, + 1077 + ] + }, + { + "teal": 1175, + "source": 21, + "pc": [ + 1078, + 1079, + 1080, + 1081, + 1082, + 1083 + ] + }, + { + "teal": 1176, + "source": 21, + "pc": [ + 1084, + 1085, + 1086, + 1087, + 1088, + 1089 + ] + }, + { + "teal": 1177, + "source": 21, + "pc": [ + 1090, + 1091, + 1092, + 1093, + 1094, + 1095 + ] + }, + { + "teal": 1178, + "source": 21, + "pc": [ + 1096, + 1097, + 1098, + 1099, + 1100, + 1101 + ] + }, + { + "teal": 1179, + "source": 21, + "pc": [ + 1102, + 1103, + 1104 + ] + }, + { + "teal": 1180, + "source": 21, + "pc": [ + 1105, + 1106, + 1107, + 1108, + 1109, + 1110, + 1111, + 1112, + 1113, + 1114, + 1115, + 1116, + 1117, + 1118, + 1119, + 1120, + 1121, + 1122, + 1123, + 1124, + 1125, + 1126, + 1127, + 1128 + ] + }, + { + "teal": 1183, + "source": 21, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 1129 + ] + } +] \ No newline at end of file diff --git a/examples/arc72/artifacts/ARC72.approval.teal b/examples/arc72/artifacts/ARC72.approval.teal index 260a2f4b2..25f8cb8b2 100644 --- a/examples/arc72/artifacts/ARC72.approval.teal +++ b/examples/arc72/artifacts/ARC72.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/arc72/artifacts/ARC72.arc32.json b/examples/arc72/artifacts/ARC72.arc32.json index b2128eb53..1125ae2e9 100644 --- a/examples/arc72/artifacts/ARC72.arc32.json +++ b/examples/arc72/artifacts/ARC72.arc32.json @@ -79,7 +79,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcmM3Ml9vd25lck9mKHVpbnQyNTYpYWRkcmVzcwoqYWJpX3JvdXRlX2FyYzcyX293bmVyT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHRva2VuSWQ6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAodG9rZW5JZCkgZm9yIGFyYzcyX293bmVyT2YgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfb3duZXJPZih1aW50MjU2KWFkZHJlc3MKCWNhbGxzdWIgYXJjNzJfb3duZXJPZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX293bmVyT2YodG9rZW5JZDogdWludDI1Nik6IEFkZHJlc3MKLy8KLy8KLy8gUmV0dXJucyB0aGUgYWRkcmVzcyBvZiB0aGUgY3VycmVudCBvd25lciBvZiB0aGUgTkZUIHdpdGggdGhlIGdpdmVuIHRva2VuSWQKLy8KLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKLy8gQHJldHVybnMgVGhlIGN1cnJlbnQgb3duZXIgb2YgdGhlIE5GVAphcmM3Ml9vd25lck9mOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoyNQoJLy8gcmV0dXJuIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXI7CglmcmFtZV9kaWcgLTEgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDAKCWludCAzMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdG9rZW5VUkkgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KCWNhbGxzdWIgYXJjNzJfdG9rZW5VUkkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90b2tlblVSSSh0b2tlbklkOiB1aW50MjU2KTogQnl0ZXMyNTYKLy8KLy8KLy8gUmV0dXJucyBhIFVSSSBwb2ludGluZyB0byB0aGUgTkZUIG1ldGFkYXRhCi8vCi8vIEBwYXJhbSB0b2tlbklkIFRoZSBJRCBvZiB0aGUgTkZUCi8vIEByZXR1cm5zIFVSSSB0byB0b2tlbiBtZXRhZGF0YQphcmM3Ml90b2tlblVSSToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MzcKCS8vIHJldHVybiB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlLnVyaTsKCWZyYW1lX2RpZyAtMSAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMzIgLy8gaGVhZE9mZnNldAoJaW50IDI1NgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gdHJhbnNmZXJUbyh0bzogQWRkcmVzcywgdG9rZW5JZDogdWludDI1Nik6IHZvaWQKdHJhbnNmZXJUbzoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NDEKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXIgPSB0bwoJZnJhbWVfZGlnIC0yIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3RyYW5zZmVyRnJvbShhZGRyZXNzLGFkZHJlc3MsdWludDI1Nil2b2lkCiphYmlfcm91dGVfYXJjNzJfdHJhbnNmZXJGcm9tOgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdHJhbnNmZXJGcm9tIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh0bykgZm9yIGFyYzcyX3RyYW5zZmVyRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gX2Zyb206IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMiAoX2Zyb20pIGZvciBhcmM3Ml90cmFuc2ZlckZyb20gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQKCWNhbGxzdWIgYXJjNzJfdHJhbnNmZXJGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90cmFuc2ZlckZyb20oX2Zyb206IEFkZHJlc3MsIHRvOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLyBUcmFuc2ZlcnMgb3duZXJzaGlwIG9mIGFuIE5GVAphcmM3Ml90cmFuc2ZlckZyb206Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo0OAoJLy8gdG9rZW4gPSB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlCglmcmFtZV9kaWcgLTMgLy8gdG9rZW5JZDogdWludDI1NgoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly90b2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NTAKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogX2Zyb20gfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIF9mcm9tOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSBfZnJvbSB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IHRva2VuLmNvbnRyb2xsZXIgfHwgdGhpcy5jb250cm9sQm94KGtleSkuZXhpc3RzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gX2Zyb206IEFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMyAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMjg4IC8vIGhlYWRPZmZzZXQKCWludCAzMgoJYm94X2V4dHJhY3QKCT09Cgl8fAoKKnNraXBfb3IwOgoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMSAvLyBrZXk6IENvbnRyb2wKCWJveF9sZW4KCXN3YXAKCXBvcAoJfHwKCipza2lwX29yMToKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MwoJLy8gdGhpcy50cmFuc2ZlclRvKHRvLCB0b2tlbklkKQoJZnJhbWVfZGlnIC0zIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBUcmFuc2ZlciBub3QgYXV0aG9yaXplZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmU6CgkvLyB0b2tlbklkOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHRva2VuSWQpIGZvciBhcmM3Ml9hcHByb3ZlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhcHByb3ZlZDogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhcHByb3ZlZCkgZm9yIGFyYzcyX2FwcHJvdmUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBhcmM3Ml9hcHByb3ZlCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml9hcHByb3ZlKGFwcHJvdmVkOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLwovLyBBcHByb3ZlIGEgY29udHJvbGxlciBmb3IgYSBzaW5nbGUgTkZUCi8vCi8vIEBwYXJhbSBhcHByb3ZlZCBBcHByb3ZlZCBjb250cm9sbGVyIGFkZHJlc3MKLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKYXJjNzJfYXBwcm92ZToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NjUKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUuY29udHJvbGxlciA9IGFwcHJvdmVkCglmcmFtZV9kaWcgLTIgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDI4OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gYXBwcm92ZWQ6IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6CgkvLyBhcHByb3ZlZDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFwcHJvdmVkKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIG9wZXJhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKG9wZXJhdG9yKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwoYWRkcmVzcyxib29sKXZvaWQKCWNhbGxzdWIgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKG9wZXJhdG9yOiBBZGRyZXNzLCBhcHByb3ZlZDogYm9vbGVhbik6IHZvaWQKLy8KLy8KLy8gQXBwcm92ZSBhbiBvcGVyYXRvciBmb3IgYWxsIE5GVHMgZm9yIGEgdXNlcgovLwovLyBAcGFyYW0gb3BlcmF0b3IgQXBwcm92ZWQgb3BlcmF0b3IgYWRkcmVzcwovLyBAcGFyYW0gYXBwcm92ZWQgdHJ1ZSB0byBnaXZlIGFwcHJvdmFsLCBmYWxzZSB0byByZXZva2UKLy8gQHJldHVybnMKYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NzcKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogb3BlcmF0b3IgfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIG9wZXJhdG9yOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gYXBwcm92ZWQKCWZyYW1lX2RpZyAtMiAvLyBhcHByb3ZlZDogYm9vbGVhbgoJYnogKmlmMV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gdGhpcy5jb250cm9sQm94KGtleSkudmFsdWUgPSAnJwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyAiIgoJYm94X3B1dAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmV4aXN0cwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMCAvLyBrZXk6IENvbnRyb2wKCWJveF9kZWwKCippZjFfZW5kOgoJcmV0c3ViCgovLyBtaW50KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX21pbnQ6CgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0bykgZm9yIG1pbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWludChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWludAoJaW50IDEKCXJldHVybgoKLy8gbWludCh0bzogQWRkcmVzcyk6IHZvaWQKbWludDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg0CgkvLyBpbmRleCA9IHRoaXMuaW5kZXgudmFsdWUKCWJ5dGUgMHg2OTZlNjQ2NTc4IC8vICJpbmRleCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9idXJ5IDAgLy8gaW5kZXg6IHVpbnQyNTYKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg2CgkvLyB0b2tlbjogVG9rZW4gPSB7CgkvLyAgICAgICBvd25lcjogdG8sCgkvLyAgICAgICB1cmk6ICdodHRwczovL2dpdGh1Yi5jb20vYWxnb3JhbmRmb3VuZGF0aW9uL0FSQ3MnIGFzIEJ5dGVzMjU2LAoJLy8gICAgICAgY29udHJvbGxlcjogQWRkcmVzcy56ZXJvQWRkcmVzcywKCS8vICAgICB9CglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJ5dGUgMHg2ODc0NzQ3MDczM2EyZjJmNjc2OTc0Njg3NTYyMmU2MzZmNmQyZjYxNmM2NzZmNzI2MTZlNjQ2NjZmNzU2ZTY0NjE3NDY5NmY2ZTJmNDE1MjQzNzMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9BUkNzIgoJY29uY2F0CglnbG9iYWwgWmVyb0FkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIHRva2VuOiBUb2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6OTIKCS8vIHRoaXMudG9rZW5Cb3goaW5kZXgpLnZhbHVlID0gdG9rZW4KCWZyYW1lX2RpZyAwIC8vIGluZGV4OiB1aW50MjU2CglmcmFtZV9kaWcgMSAvLyB0b2tlbjogVG9rZW4KCWJveF9wdXQKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjkzCgkvLyB0aGlzLnRyYW5zZmVyVG8odG8sIGluZGV4KQoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMSAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo5NAoJLy8gdGhpcy5pbmRleC52YWx1ZSA9IGluZGV4ICsgMQoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gaW5kZXggKyAxIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFyYzcyX3RvdGFsU3VwcGx5KCl1aW50MjU2CiphYmlfcm91dGVfYXJjNzJfdG90YWxTdXBwbHk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYKCWNhbGxzdWIgYXJjNzJfdG90YWxTdXBwbHkKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3RvdGFsU3VwcGx5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJjNzJfdG90YWxTdXBwbHkoKTogdWludDI1NgovLwovLyBSZXR1cm5zIHRoZSBudW1iZXIgb2YgTkZUcyBjdXJyZW50bHkgZGVmaW5lZCBieSB0aGlzIGNvbnRyYWN0CmFyYzcyX3RvdGFsU3VwcGx5OgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoxMDIKCS8vIHJldHVybiB0aGlzLmluZGV4LnZhbHVlOwoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaW5kZXg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoaW5kZXgpIGZvciBhcmM3Ml90b2tlbkJ5SW5kZXggbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBhcmM3Ml90b2tlbkJ5SW5kZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3Rva2VuQnlJbmRleCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3Rva2VuQnlJbmRleChpbmRleDogdWludDI1Nik6IHVpbnQyNTYKLy8KLy8gUmV0dXJucyB0aGUgdG9rZW4gSUQgb2YgdGhlIHRva2VuIHdpdGggdGhlIGdpdmVuIGluZGV4IGFtb25nIGFsbCBORlRzIGRlZmluZWQgYnkgdGhlIGNvbnRyYWN0CmFyYzcyX3Rva2VuQnlJbmRleDoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MTEwCgkvLyByZXR1cm4gaW5kZXg7CglmcmFtZV9kaWcgLTEgLy8gaW5kZXg6IHVpbnQyNTYKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFyYzcyX293bmVyT2YodWludDI1NilhZGRyZXNzIgoJbWV0aG9kICJhcmM3Ml90b2tlblVSSSh1aW50MjU2KWJ5dGVbMjU2XSIKCW1ldGhvZCAiYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX2FwcHJvdmUoYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkIgoJbWV0aG9kICJtaW50KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYiCgltZXRob2QgImFyYzcyX3Rva2VuQnlJbmRleCh1aW50MjU2KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FyYzcyX293bmVyT2YgKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSSAqYWJpX3JvdXRlX2FyYzcyX3RyYW5zZmVyRnJvbSAqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmUgKmFiaV9yb3V0ZV9hcmM3Ml9zZXRBcHByb3ZhbEZvckFsbCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9hcmM3Ml90b3RhbFN1cHBseSAqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcmM3Ml9vd25lck9mKHVpbnQyNTYpYWRkcmVzcwoqYWJpX3JvdXRlX2FyYzcyX293bmVyT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHRva2VuSWQ6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAodG9rZW5JZCkgZm9yIGFyYzcyX293bmVyT2YgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfb3duZXJPZih1aW50MjU2KWFkZHJlc3MKCWNhbGxzdWIgYXJjNzJfb3duZXJPZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX293bmVyT2YodG9rZW5JZDogdWludDI1Nik6IEFkZHJlc3MKLy8KLy8KLy8gUmV0dXJucyB0aGUgYWRkcmVzcyBvZiB0aGUgY3VycmVudCBvd25lciBvZiB0aGUgTkZUIHdpdGggdGhlIGdpdmVuIHRva2VuSWQKLy8KLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKLy8gQHJldHVybnMgVGhlIGN1cnJlbnQgb3duZXIgb2YgdGhlIE5GVAphcmM3Ml9vd25lck9mOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoyNQoJLy8gcmV0dXJuIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXI7CglmcmFtZV9kaWcgLTEgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDAKCWludCAzMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdG9rZW5VUkkgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KCWNhbGxzdWIgYXJjNzJfdG9rZW5VUkkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90b2tlblVSSSh0b2tlbklkOiB1aW50MjU2KTogQnl0ZXMyNTYKLy8KLy8KLy8gUmV0dXJucyBhIFVSSSBwb2ludGluZyB0byB0aGUgTkZUIG1ldGFkYXRhCi8vCi8vIEBwYXJhbSB0b2tlbklkIFRoZSBJRCBvZiB0aGUgTkZUCi8vIEByZXR1cm5zIFVSSSB0byB0b2tlbiBtZXRhZGF0YQphcmM3Ml90b2tlblVSSToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MzcKCS8vIHJldHVybiB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlLnVyaTsKCWZyYW1lX2RpZyAtMSAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMzIgLy8gaGVhZE9mZnNldAoJaW50IDI1NgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gdHJhbnNmZXJUbyh0bzogQWRkcmVzcywgdG9rZW5JZDogdWludDI1Nik6IHZvaWQKdHJhbnNmZXJUbzoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NDEKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXIgPSB0bwoJZnJhbWVfZGlnIC0yIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3RyYW5zZmVyRnJvbShhZGRyZXNzLGFkZHJlc3MsdWludDI1Nil2b2lkCiphYmlfcm91dGVfYXJjNzJfdHJhbnNmZXJGcm9tOgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdHJhbnNmZXJGcm9tIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh0bykgZm9yIGFyYzcyX3RyYW5zZmVyRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gX2Zyb206IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMiAoX2Zyb20pIGZvciBhcmM3Ml90cmFuc2ZlckZyb20gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQKCWNhbGxzdWIgYXJjNzJfdHJhbnNmZXJGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90cmFuc2ZlckZyb20oX2Zyb206IEFkZHJlc3MsIHRvOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLyBUcmFuc2ZlcnMgb3duZXJzaGlwIG9mIGFuIE5GVAphcmM3Ml90cmFuc2ZlckZyb206Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo0OAoJLy8gdG9rZW4gPSB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlCglmcmFtZV9kaWcgLTMgLy8gdG9rZW5JZDogdWludDI1NgoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly90b2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NTAKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogX2Zyb20gfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIF9mcm9tOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSBfZnJvbSB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IHRva2VuLmNvbnRyb2xsZXIgfHwgdGhpcy5jb250cm9sQm94KGtleSkuZXhpc3RzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gX2Zyb206IEFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMyAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMjg4IC8vIGhlYWRPZmZzZXQKCWludCAzMgoJYm94X2V4dHJhY3QKCT09Cgl8fAoKKnNraXBfb3IwOgoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMSAvLyBrZXk6IENvbnRyb2wKCWJveF9sZW4KCXN3YXAKCXBvcAoJfHwKCipza2lwX29yMToKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MwoJLy8gdGhpcy50cmFuc2ZlclRvKHRvLCB0b2tlbklkKQoJZnJhbWVfZGlnIC0zIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBUcmFuc2ZlciBub3QgYXV0aG9yaXplZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmU6CgkvLyB0b2tlbklkOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHRva2VuSWQpIGZvciBhcmM3Ml9hcHByb3ZlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhcHByb3ZlZDogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhcHByb3ZlZCkgZm9yIGFyYzcyX2FwcHJvdmUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBhcmM3Ml9hcHByb3ZlCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml9hcHByb3ZlKGFwcHJvdmVkOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLwovLyBBcHByb3ZlIGEgY29udHJvbGxlciBmb3IgYSBzaW5nbGUgTkZUCi8vCi8vIEBwYXJhbSBhcHByb3ZlZCBBcHByb3ZlZCBjb250cm9sbGVyIGFkZHJlc3MKLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKYXJjNzJfYXBwcm92ZToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NjUKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUuY29udHJvbGxlciA9IGFwcHJvdmVkCglmcmFtZV9kaWcgLTIgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDI4OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gYXBwcm92ZWQ6IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6CgkvLyBhcHByb3ZlZDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFwcHJvdmVkKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIG9wZXJhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKG9wZXJhdG9yKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwoYWRkcmVzcyxib29sKXZvaWQKCWNhbGxzdWIgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKG9wZXJhdG9yOiBBZGRyZXNzLCBhcHByb3ZlZDogYm9vbGVhbik6IHZvaWQKLy8KLy8KLy8gQXBwcm92ZSBhbiBvcGVyYXRvciBmb3IgYWxsIE5GVHMgZm9yIGEgdXNlcgovLwovLyBAcGFyYW0gb3BlcmF0b3IgQXBwcm92ZWQgb3BlcmF0b3IgYWRkcmVzcwovLyBAcGFyYW0gYXBwcm92ZWQgdHJ1ZSB0byBnaXZlIGFwcHJvdmFsLCBmYWxzZSB0byByZXZva2UKLy8gQHJldHVybnMKYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NzcKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogb3BlcmF0b3IgfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIG9wZXJhdG9yOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gYXBwcm92ZWQKCWZyYW1lX2RpZyAtMiAvLyBhcHByb3ZlZDogYm9vbGVhbgoJYnogKmlmMV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gdGhpcy5jb250cm9sQm94KGtleSkudmFsdWUgPSAnJwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyAiIgoJYm94X3B1dAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmV4aXN0cwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMCAvLyBrZXk6IENvbnRyb2wKCWJveF9kZWwKCippZjFfZW5kOgoJcmV0c3ViCgovLyBtaW50KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX21pbnQ6CgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0bykgZm9yIG1pbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWludChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWludAoJaW50IDEKCXJldHVybgoKLy8gbWludCh0bzogQWRkcmVzcyk6IHZvaWQKbWludDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg0CgkvLyBpbmRleCA9IHRoaXMuaW5kZXgudmFsdWUKCWJ5dGUgMHg2OTZlNjQ2NTc4IC8vICJpbmRleCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9idXJ5IDAgLy8gaW5kZXg6IHVpbnQyNTYKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg2CgkvLyB0b2tlbjogVG9rZW4gPSB7CgkvLyAgICAgICBvd25lcjogdG8sCgkvLyAgICAgICB1cmk6ICdodHRwczovL2dpdGh1Yi5jb20vYWxnb3JhbmRmb3VuZGF0aW9uL0FSQ3MnIGFzIEJ5dGVzMjU2LAoJLy8gICAgICAgY29udHJvbGxlcjogQWRkcmVzcy56ZXJvQWRkcmVzcywKCS8vICAgICB9CglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJ5dGUgMHg2ODc0NzQ3MDczM2EyZjJmNjc2OTc0Njg3NTYyMmU2MzZmNmQyZjYxNmM2NzZmNzI2MTZlNjQ2NjZmNzU2ZTY0NjE3NDY5NmY2ZTJmNDE1MjQzNzMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9BUkNzIgoJY29uY2F0CglnbG9iYWwgWmVyb0FkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIHRva2VuOiBUb2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6OTIKCS8vIHRoaXMudG9rZW5Cb3goaW5kZXgpLnZhbHVlID0gdG9rZW4KCWZyYW1lX2RpZyAwIC8vIGluZGV4OiB1aW50MjU2CglmcmFtZV9kaWcgMSAvLyB0b2tlbjogVG9rZW4KCWJveF9wdXQKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjkzCgkvLyB0aGlzLnRyYW5zZmVyVG8odG8sIGluZGV4KQoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMSAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo5NAoJLy8gdGhpcy5pbmRleC52YWx1ZSA9IGluZGV4ICsgMQoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gaW5kZXggKyAxIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFyYzcyX3RvdGFsU3VwcGx5KCl1aW50MjU2CiphYmlfcm91dGVfYXJjNzJfdG90YWxTdXBwbHk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYKCWNhbGxzdWIgYXJjNzJfdG90YWxTdXBwbHkKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3RvdGFsU3VwcGx5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJjNzJfdG90YWxTdXBwbHkoKTogdWludDI1NgovLwovLyBSZXR1cm5zIHRoZSBudW1iZXIgb2YgTkZUcyBjdXJyZW50bHkgZGVmaW5lZCBieSB0aGlzIGNvbnRyYWN0CmFyYzcyX3RvdGFsU3VwcGx5OgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoxMDIKCS8vIHJldHVybiB0aGlzLmluZGV4LnZhbHVlOwoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaW5kZXg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoaW5kZXgpIGZvciBhcmM3Ml90b2tlbkJ5SW5kZXggbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBhcmM3Ml90b2tlbkJ5SW5kZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3Rva2VuQnlJbmRleCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3Rva2VuQnlJbmRleChpbmRleDogdWludDI1Nik6IHVpbnQyNTYKLy8KLy8gUmV0dXJucyB0aGUgdG9rZW4gSUQgb2YgdGhlIHRva2VuIHdpdGggdGhlIGdpdmVuIGluZGV4IGFtb25nIGFsbCBORlRzIGRlZmluZWQgYnkgdGhlIGNvbnRyYWN0CmFyYzcyX3Rva2VuQnlJbmRleDoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MTEwCgkvLyByZXR1cm4gaW5kZXg7CglmcmFtZV9kaWcgLTEgLy8gaW5kZXg6IHVpbnQyNTYKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFyYzcyX293bmVyT2YodWludDI1NilhZGRyZXNzIgoJbWV0aG9kICJhcmM3Ml90b2tlblVSSSh1aW50MjU2KWJ5dGVbMjU2XSIKCW1ldGhvZCAiYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX2FwcHJvdmUoYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkIgoJbWV0aG9kICJtaW50KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYiCgltZXRob2QgImFyYzcyX3Rva2VuQnlJbmRleCh1aW50MjU2KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FyYzcyX293bmVyT2YgKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSSAqYWJpX3JvdXRlX2FyYzcyX3RyYW5zZmVyRnJvbSAqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmUgKmFiaV9yb3V0ZV9hcmM3Ml9zZXRBcHByb3ZhbEZvckFsbCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9hcmM3Ml90b3RhbFN1cHBseSAqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/arc72/artifacts/ARC72.arc56_draft.json b/examples/arc72/artifacts/ARC72.arc56_draft.json index 8eecdbcaf..d32f6d0bf 100644 --- a/examples/arc72/artifacts/ARC72.arc56_draft.json +++ b/examples/arc72/artifacts/ARC72.arc56_draft.json @@ -195,15 +195,30 @@ 56 ], "structs": { - "Token": { - "owner": "address", - "uri": "byte[256]", - "controller": "address" - }, - "Control": { - "owner": "address", - "controller": "address" - } + "Token": [ + { + "name": "owner", + "type": "address" + }, + { + "name": "uri", + "type": "byte[256]" + }, + { + "name": "controller", + "type": "address" + } + ], + "Control": [ + { + "name": "owner", + "type": "address" + }, + { + "name": "controller", + "type": "address" + } + ] }, "state": { "schema": { @@ -246,2578 +261,2581 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 9, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 13, - "source": 9, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 14, - "source": 9, - "pc": [ - 59 - ] - }, - { - "teal": 15, - "source": 9, - "pc": [ - 60, - 61 - ] - }, - { - "teal": 16, - "source": 9, - "pc": [ - 62 - ] - }, - { - "teal": 17, - "source": 9, - "pc": [ - 63, - 64 - ] - }, - { - "teal": 18, - "source": 9, - "pc": [ - 65 - ] - }, - { - "teal": 19, - "source": 9, - "pc": [ - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 23, - "source": 9, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 92 - ] - }, - { - "teal": 28, - "source": 23, - "pc": [ - 93 - ] - }, - { - "teal": 31, - "source": 24, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 32, - "source": 24, - "pc": [ - 97 - ] - }, - { - "teal": 33, - "source": 24, - "pc": [ - 98 - ] - }, - { - "teal": 34, - "source": 24, - "pc": [ - 99 - ] - }, - { - "teal": 35, - "source": 24, - "pc": [ - 100 - ] - }, - { - "teal": 38, - "source": 24, - "errorMessage": "argument 0 (tokenId) for arc72_ownerOf must be a uint256", - "pc": [ - 101 - ] - }, - { - "teal": 41, - "source": 23, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 42, - "source": 23, - "pc": [ - 105 - ] - }, - { - "teal": 43, - "source": 23, - "pc": [ - 106 - ] - }, - { - "teal": 44, - "source": 23, - "pc": [ - 107 - ] - }, - { - "teal": 45, - "source": 23, - "pc": [ - 108 - ] - }, - { - "teal": 55, - "source": 23, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 59, - "source": 25, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 60, - "source": 25, - "pc": [ - 114 - ] - }, - { - "teal": 61, - "source": 25, - "pc": [ - 115 - ] - }, - { - "teal": 62, - "source": 25, - "pc": [ - 116 - ] - }, - { - "teal": 63, - "source": 23, - "pc": [ - 117 - ] - }, - { - "teal": 68, - "source": 35, - "pc": [ - 118 - ] - }, - { - "teal": 71, - "source": 36, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 72, - "source": 36, - "pc": [ - 122 - ] - }, - { - "teal": 73, - "source": 36, - "pc": [ - 123 - ] - }, - { - "teal": 74, - "source": 36, - "pc": [ - 124 - ] - }, - { - "teal": 75, - "source": 36, - "pc": [ - 125 - ] - }, - { - "teal": 78, - "source": 36, - "errorMessage": "argument 0 (tokenId) for arc72_tokenURI must be a uint256", - "pc": [ - 126 - ] - }, - { - "teal": 81, - "source": 35, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 82, - "source": 35, - "pc": [ - 130 - ] - }, - { - "teal": 83, - "source": 35, - "pc": [ - 131 - ] - }, - { - "teal": 84, - "source": 35, - "pc": [ - 132 - ] - }, - { - "teal": 85, - "source": 35, - "pc": [ - 133 - ] - }, - { - "teal": 95, - "source": 35, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 99, - "source": 37, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 100, - "source": 37, - "pc": [ - 139 - ] - }, - { - "teal": 101, - "source": 37, - "pc": [ - 140 - ] - }, - { - "teal": 102, - "source": 37, - "pc": [ - 141 - ] - }, - { - "teal": 103, - "source": 35, - "pc": [ - 142 - ] - }, - { - "teal": 107, - "source": 40, - "pc": [ - 143, - 144, - 145 - ] - }, - { - "teal": 111, - "source": 41, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 112, - "source": 41, - "pc": [ - 148 - ] - }, - { - "teal": 113, - "source": 41, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 114, - "source": 41, - "pc": [ - 151 - ] - }, - { - "teal": 115, - "source": 40, - "pc": [ - 152 - ] - }, - { - "teal": 120, - "source": 47, - "pc": [ - 153, - 154, - 155 - ] - }, - { - "teal": 121, - "source": 47, - "pc": [ - 156 - ] - }, - { - "teal": 122, - "source": 47, - "pc": [ - 157 - ] - }, - { - "teal": 123, - "source": 47, - "pc": [ - 158 - ] - }, - { - "teal": 124, - "source": 47, - "pc": [ - 159 - ] - }, - { - "teal": 127, - "source": 47, - "errorMessage": "argument 0 (tokenId) for arc72_transferFrom must be a uint256", - "pc": [ - 160 - ] - }, - { - "teal": 130, - "source": 47, - "pc": [ - 161, - 162, - 163 - ] - }, - { - "teal": 131, - "source": 47, - "pc": [ - 164 - ] - }, - { - "teal": 132, - "source": 47, - "pc": [ - 165 - ] - }, - { - "teal": 133, - "source": 47, - "pc": [ - 166 - ] - }, - { - "teal": 134, - "source": 47, - "pc": [ - 167 - ] - }, - { - "teal": 137, - "source": 47, - "errorMessage": "argument 1 (to) for arc72_transferFrom must be a address", - "pc": [ - 168 - ] - }, - { - "teal": 140, - "source": 47, - "pc": [ - 169, - 170, - 171 - ] - }, - { - "teal": 141, - "source": 47, - "pc": [ - 172 - ] - }, - { - "teal": 142, - "source": 47, - "pc": [ - 173 - ] - }, - { - "teal": 143, - "source": 47, - "pc": [ - 174 - ] - }, - { - "teal": 144, - "source": 47, - "pc": [ - 175 - ] - }, - { - "teal": 147, - "source": 47, - "errorMessage": "argument 2 (_from) for arc72_transferFrom must be a address", - "pc": [ - 176 - ] - }, - { - "teal": 150, - "source": 47, - "pc": [ - 177, - 178, - 179 - ] - }, - { - "teal": 151, - "source": 47, - "pc": [ - 180 - ] - }, - { - "teal": 152, - "source": 47, - "pc": [ - 181 - ] - }, - { - "teal": 158, - "source": 47, - "pc": [ - 182, - 183, - 184 - ] - }, - { - "teal": 161, - "source": 47, - "pc": [ - 185 - ] - }, - { - "teal": 162, - "source": 47, - "pc": [ - 186 - ] - }, - { - "teal": 166, - "source": 48, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 167, - "source": 48, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 171, - "source": 50, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 172, - "source": 50, - "pc": [ - 193, - 194 - ] - }, - { - "teal": 173, - "source": 50, - "pc": [ - 195 - ] - }, - { - "teal": 174, - "source": 50, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 179, - "source": 52, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 180, - "source": 52, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 181, - "source": 52, - "pc": [ - 202 - ] - }, - { - "teal": 182, - "source": 52, - "pc": [ - 203 - ] - }, - { - "teal": 183, - "source": 52, - "pc": [ - 204, - 205, - 206 - ] - }, - { - "teal": 184, - "source": 52, - "pc": [ - 207, - 208 - ] - }, - { - "teal": 185, - "source": 48, - "pc": [ - 209, - 210 - ] - }, - { - "teal": 186, - "source": 48, - "pc": [ - 211, - 212 - ] - }, - { - "teal": 187, - "source": 48, - "pc": [ - 213 - ] - }, - { - "teal": 188, - "source": 48, - "pc": [ - 214 - ] - }, - { - "teal": 189, - "source": 52, - "pc": [ - 215 - ] - }, - { - "teal": 190, - "source": 52, - "pc": [ - 216 - ] - }, - { - "teal": 193, - "source": 52, - "pc": [ - 217 - ] - }, - { - "teal": 194, - "source": 52, - "pc": [ - 218, - 219, - 220 - ] - }, - { - "teal": 195, - "source": 52, - "pc": [ - 221, - 222 - ] - }, - { - "teal": 196, - "source": 52, - "pc": [ - 223 - ] - }, - { - "teal": 197, - "source": 52, - "pc": [ - 224 - ] - }, - { - "teal": 198, - "source": 52, - "pc": [ - 225 - ] - }, - { - "teal": 199, - "source": 52, - "pc": [ - 226 - ] - }, - { - "teal": 202, - "source": 52, - "pc": [ - 227, - 228, - 229 - ] - }, - { - "teal": 207, - "source": 53, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 208, - "source": 53, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 209, - "source": 53, - "pc": [ - 234, - 235, - 236 - ] - }, - { - "teal": 210, - "source": 52, - "pc": [ - 237, - 238, - 239 - ] - }, - { - "teal": 214, - "source": 54, - "errorMessage": "Transfer not authorized", - "pc": [ - 240 - ] - }, - { - "teal": 217, - "source": 47, - "pc": [ - 241 - ] - }, - { - "teal": 222, - "source": 64, - "pc": [ - 242, - 243, - 244 - ] - }, - { - "teal": 223, - "source": 64, - "pc": [ - 245 - ] - }, - { - "teal": 224, - "source": 64, - "pc": [ - 246 - ] - }, - { - "teal": 225, - "source": 64, - "pc": [ - 247 - ] - }, - { - "teal": 226, - "source": 64, - "pc": [ - 248 - ] - }, - { - "teal": 229, - "source": 64, - "errorMessage": "argument 0 (tokenId) for arc72_approve must be a uint256", - "pc": [ - 249 - ] - }, - { - "teal": 232, - "source": 64, - "pc": [ - 250, - 251, - 252 - ] - }, - { - "teal": 233, - "source": 64, - "pc": [ - 253 - ] - }, - { - "teal": 234, - "source": 64, - "pc": [ - 254 - ] - }, - { - "teal": 235, - "source": 64, - "pc": [ - 255 - ] - }, - { - "teal": 236, - "source": 64, - "pc": [ - 256 - ] - }, - { - "teal": 239, - "source": 64, - "errorMessage": "argument 1 (approved) for arc72_approve must be a address", - "pc": [ - 257 - ] - }, - { - "teal": 242, - "source": 64, - "pc": [ - 258, - 259, - 260 - ] - }, - { - "teal": 243, - "source": 64, - "pc": [ - 261 - ] - }, - { - "teal": 244, - "source": 64, - "pc": [ - 262 - ] - }, - { - "teal": 254, - "source": 64, - "pc": [ - 263, - 264, - 265 - ] - }, - { - "teal": 258, - "source": 65, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 259, - "source": 65, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 260, - "source": 65, - "pc": [ - 270, - 271 - ] - }, - { - "teal": 261, - "source": 65, - "pc": [ - 272 - ] - }, - { - "teal": 262, - "source": 64, - "pc": [ - 273 - ] - }, - { - "teal": 267, - "source": 76, - "pc": [ - 274, - 275, - 276 - ] - }, - { - "teal": 268, - "source": 76, - "pc": [ - 277 - ] - }, - { - "teal": 269, - "source": 76, - "pc": [ - 278 - ] - }, - { - "teal": 270, - "source": 76, - "pc": [ - 279 - ] - }, - { - "teal": 271, - "source": 76, - "pc": [ - 280 - ] - }, - { - "teal": 274, - "source": 76, - "errorMessage": "argument 0 (approved) for arc72_setApprovalForAll must be a bool", - "pc": [ - 281 - ] - }, - { - "teal": 275, - "source": 76, - "pc": [ - 282 - ] - }, - { - "teal": 276, - "source": 76, - "pc": [ - 283 - ] - }, - { - "teal": 279, - "source": 76, - "pc": [ - 284, - 285, - 286 - ] - }, - { - "teal": 280, - "source": 76, - "pc": [ - 287 - ] - }, - { - "teal": 281, - "source": 76, - "pc": [ - 288 - ] - }, - { - "teal": 282, - "source": 76, - "pc": [ - 289 - ] - }, - { - "teal": 283, - "source": 76, - "pc": [ - 290 - ] - }, - { - "teal": 286, - "source": 76, - "errorMessage": "argument 1 (operator) for arc72_setApprovalForAll must be a address", - "pc": [ - 291 - ] - }, - { - "teal": 289, - "source": 76, - "pc": [ - 292, - 293, - 294 - ] - }, - { - "teal": 290, - "source": 76, - "pc": [ - 295 - ] - }, - { - "teal": 291, - "source": 76, - "pc": [ - 296 - ] - }, - { - "teal": 302, - "source": 76, - "pc": [ - 297, - 298, - 299 - ] - }, - { - "teal": 305, - "source": 76, - "pc": [ - 300 - ] - }, - { - "teal": 309, - "source": 77, - "pc": [ - 301, - 302 - ] - }, - { - "teal": 310, - "source": 77, - "pc": [ - 303, - 304 - ] - }, - { - "teal": 311, - "source": 77, - "pc": [ - 305 - ] - }, - { - "teal": 312, - "source": 77, - "pc": [ - 306, - 307 - ] - }, - { - "teal": 317, - "source": 79, - "pc": [ - 308, - 309 - ] - }, - { - "teal": 318, - "source": 79, - "pc": [ - 310, - 311, - 312 - ] - }, - { - "teal": 323, - "source": 79, - "pc": [ - 313, - 314 - ] - }, - { - "teal": 324, - "source": 79, - "pc": [ - 315 - ] - }, - { - "teal": 325, - "source": 79, - "pc": [ - 316 - ] - }, - { - "teal": 326, - "source": 79, - "pc": [ - 317 - ] - }, - { - "teal": 327, - "source": 79, - "pc": [ - 318 - ] - }, - { - "teal": 328, - "source": 79, - "pc": [ - 319 - ] - }, - { - "teal": 329, - "source": 79, - "pc": [ - 320, - 321, - 322 - ] - }, - { - "teal": 334, - "source": 80, - "pc": [ - 323, - 324 - ] - }, - { - "teal": 335, - "source": 80, - "pc": [ - 325 - ] - }, - { - "teal": 336, - "source": 80, - "pc": [ - 326 - ] - }, - { - "teal": 337, - "source": 80, - "pc": [ - 327 - ] - }, - { - "teal": 338, - "source": 80, - "pc": [ - 328, - 329, - 330 - ] - }, - { - "teal": 343, - "source": 80, - "pc": [ - 331, - 332 - ] - }, - { - "teal": 344, - "source": 80, - "pc": [ - 333 - ] - }, - { - "teal": 347, - "source": 76, - "pc": [ - 334 - ] - }, - { - "teal": 352, - "source": 83, - "pc": [ - 335, - 336, - 337 - ] - }, - { - "teal": 353, - "source": 83, - "pc": [ - 338 - ] - }, - { - "teal": 354, - "source": 83, - "pc": [ - 339 - ] - }, - { - "teal": 355, - "source": 83, - "pc": [ - 340 - ] - }, - { - "teal": 356, - "source": 83, - "pc": [ - 341 - ] - }, - { - "teal": 359, - "source": 83, - "errorMessage": "argument 0 (to) for mint must be a address", - "pc": [ - 342 - ] - }, - { - "teal": 362, - "source": 83, - "pc": [ - 343, - 344, - 345 - ] - }, - { - "teal": 363, - "source": 83, - "pc": [ - 346 - ] - }, - { - "teal": 364, - "source": 83, - "pc": [ - 347 - ] - }, - { - "teal": 368, - "source": 83, - "pc": [ - 348, - 349, - 350 - ] - }, - { - "teal": 371, - "source": 83, - "pc": [ - 351 - ] - }, - { - "teal": 372, - "source": 83, - "pc": [ - 352 - ] - }, - { - "teal": 376, - "source": 84, - "pc": [ - 353 - ] - }, - { - "teal": 377, - "source": 84, - "pc": [ - 354 - ] - }, - { - "teal": 378, - "source": 84, - "pc": [ - 355, - 356 - ] - }, - { - "teal": 386, - "source": 87, - "pc": [ - 357, - 358 - ] - }, - { - "teal": 387, - "source": 88, - "pc": [ - 359, - 360, - 361, - 362, - 363, - 364, - 365, - 366, - 367, - 368, - 369, - 370, - 371, - 372, - 373, - 374, - 375, - 376, - 377, - 378, - 379, - 380, - 381, - 382, - 383, - 384, - 385, - 386, - 387, - 388, - 389, - 390, - 391, - 392, - 393, - 394, - 395, - 396, - 397, - 398, - 399, - 400, - 401, - 402, - 403, - 404, - 405, - 406, - 407, - 408, - 409, - 410, - 411, - 412, - 413, - 414, - 415, - 416, - 417, - 418, - 419, - 420, - 421, - 422, - 423, - 424, - 425, - 426, - 427, - 428, - 429, - 430, - 431, - 432, - 433, - 434, - 435, - 436, - 437, - 438, - 439, - 440, - 441, - 442, - 443, - 444, - 445, - 446, - 447, - 448, - 449, - 450, - 451, - 452, - 453, - 454, - 455, - 456, - 457, - 458, - 459, - 460, - 461, - 462, - 463, - 464, - 465, - 466, - 467, - 468, - 469, - 470, - 471, - 472, - 473, - 474, - 475, - 476, - 477, - 478, - 479, - 480, - 481, - 482, - 483, - 484, - 485, - 486, - 487, - 488, - 489, - 490, - 491, - 492, - 493, - 494, - 495, - 496, - 497, - 498, - 499, - 500, - 501, - 502, - 503, - 504, - 505, - 506, - 507, - 508, - 509, - 510, - 511, - 512, - 513, - 514, - 515, - 516, - 517, - 518, - 519, - 520, - 521, - 522, - 523, - 524, - 525, - 526, - 527, - 528, - 529, - 530, - 531, - 532, - 533, - 534, - 535, - 536, - 537, - 538, - 539, - 540, - 541, - 542, - 543, - 544, - 545, - 546, - 547, - 548, - 549, - 550, - 551, - 552, - 553, - 554, - 555, - 556, - 557, - 558, - 559, - 560, - 561, - 562, - 563, - 564, - 565, - 566, - 567, - 568, - 569, - 570, - 571, - 572, - 573, - 574, - 575, - 576, - 577, - 578, - 579, - 580, - 581, - 582, - 583, - 584, - 585, - 586, - 587, - 588, - 589, - 590, - 591, - 592, - 593, - 594, - 595, - 596, - 597, - 598, - 599, - 600, - 601, - 602, - 603, - 604, - 605, - 606, - 607, - 608, - 609, - 610, - 611, - 612, - 613, - 614, - 615, - 616, - 617 - ] - }, - { - "teal": 388, - "source": 88, - "pc": [ - 618 - ] - }, - { - "teal": 389, - "source": 89, - "pc": [ - 619, - 620 - ] - }, - { - "teal": 390, - "source": 89, - "pc": [ - 621 - ] - }, - { - "teal": 391, - "source": 86, - "pc": [ - 622, - 623 - ] - }, - { - "teal": 395, - "source": 92, - "pc": [ - 624, - 625 - ] - }, - { - "teal": 396, - "source": 92, - "pc": [ - 626, - 627 - ] - }, - { - "teal": 397, - "source": 92, - "pc": [ - 628 - ] - }, - { - "teal": 401, - "source": 93, - "pc": [ - 629, - 630 - ] - }, - { - "teal": 402, - "source": 93, - "pc": [ - 631, - 632 - ] - }, - { - "teal": 403, - "source": 93, - "pc": [ - 633, - 634, - 635 - ] - }, - { - "teal": 407, - "source": 94, - "pc": [ - 636 - ] - }, - { - "teal": 408, - "source": 94, - "pc": [ - 637, - 638 - ] - }, - { - "teal": 409, - "source": 94, - "pc": [ - 639, - 640, - 641, - 642, - 643, - 644, - 645, - 646, - 647, - 648, - 649, - 650, - 651, - 652, - 653, - 654, - 655, - 656, - 657, - 658, - 659, - 660, - 661, - 662, - 663, - 664, - 665, - 666, - 667, - 668, - 669, - 670, - 671, - 672 - ] - }, - { - "teal": 410, - "source": 94, - "pc": [ - 673 - ] - }, - { - "teal": 411, - "source": 94, - "pc": [ - 674 - ] - }, - { - "teal": 412, - "source": 94, - "pc": [ - 675 - ] - }, - { - "teal": 413, - "source": 94, - "pc": [ - 676 - ] - }, - { - "teal": 414, - "source": 94, - "pc": [ - 677 - ] - }, - { - "teal": 417, - "source": 94, - "errorMessage": "index + 1 overflowed 256 bits", - "pc": [ - 678 - ] - }, - { - "teal": 418, - "source": 94, - "pc": [ - 679 - ] - }, - { - "teal": 419, - "source": 94, - "pc": [ - 680 - ] - }, - { - "teal": 420, - "source": 94, - "pc": [ - 681 - ] - }, - { - "teal": 421, - "source": 94, - "pc": [ - 682 - ] - }, - { - "teal": 422, - "source": 94, - "pc": [ - 683 - ] - }, - { - "teal": 423, - "source": 94, - "pc": [ - 684 - ] - }, - { - "teal": 424, - "source": 94, - "pc": [ - 685 - ] - }, - { - "teal": 425, - "source": 94, - "pc": [ - 686 - ] - }, - { - "teal": 426, - "source": 94, - "pc": [ - 687 - ] - }, - { - "teal": 427, - "source": 94, - "pc": [ - 688 - ] - }, - { - "teal": 428, - "source": 83, - "pc": [ - 689 - ] - }, - { - "teal": 433, - "source": 100, - "pc": [ - 690 - ] - }, - { - "teal": 436, - "source": 100, - "pc": [ - 691, - 692, - 693 - ] - }, - { - "teal": 437, - "source": 100, - "pc": [ - 694 - ] - }, - { - "teal": 438, - "source": 100, - "pc": [ - 695 - ] - }, - { - "teal": 439, - "source": 100, - "pc": [ - 696 - ] - }, - { - "teal": 440, - "source": 100, - "pc": [ - 697 - ] - }, - { - "teal": 443, - "source": 100, - "errorMessage": "arc72_totalSupply return value overflowed 256 bits", - "pc": [ - 698 - ] - }, - { - "teal": 444, - "source": 100, - "pc": [ - 699 - ] - }, - { - "teal": 445, - "source": 100, - "pc": [ - 700 - ] - }, - { - "teal": 446, - "source": 100, - "pc": [ - 701 - ] - }, - { - "teal": 447, - "source": 100, - "pc": [ - 702 - ] - }, - { - "teal": 448, - "source": 100, - "pc": [ - 703 - ] - }, - { - "teal": 449, - "source": 100, - "pc": [ - 704 - ] - }, - { - "teal": 450, - "source": 100, - "pc": [ - 705 - ] - }, - { - "teal": 451, - "source": 100, - "pc": [ - 706 - ] - }, - { - "teal": 452, - "source": 100, - "pc": [ - 707 - ] - }, - { - "teal": 453, - "source": 100, - "pc": [ - 708 - ] - }, - { - "teal": 454, - "source": 100, - "pc": [ - 709 - ] - }, - { - "teal": 455, - "source": 100, - "pc": [ - 710 - ] - }, - { - "teal": 456, - "source": 100, - "pc": [ - 711 - ] - }, - { - "teal": 462, - "source": 100, - "pc": [ - 712, - 713, - 714 - ] - }, - { - "teal": 466, - "source": 102, - "pc": [ - 715 - ] - }, - { - "teal": 467, - "source": 102, - "pc": [ - 716 - ] - }, - { - "teal": 468, - "source": 100, - "pc": [ - 717 - ] - }, - { - "teal": 473, - "source": 108, - "pc": [ - 718 - ] - }, - { - "teal": 476, - "source": 109, - "pc": [ - 719, - 720, - 721 - ] - }, - { - "teal": 477, - "source": 109, - "pc": [ - 722 - ] - }, - { - "teal": 478, - "source": 109, - "pc": [ - 723 - ] - }, - { - "teal": 479, - "source": 109, - "pc": [ - 724 - ] - }, - { - "teal": 480, - "source": 109, - "pc": [ - 725 - ] - }, - { - "teal": 483, - "source": 109, - "errorMessage": "argument 0 (index) for arc72_tokenByIndex must be a uint256", - "pc": [ - 726 - ] - }, - { - "teal": 486, - "source": 108, - "pc": [ - 727, - 728, - 729 - ] - }, - { - "teal": 487, - "source": 108, - "pc": [ - 730 - ] - }, - { - "teal": 488, - "source": 108, - "pc": [ - 731 - ] - }, - { - "teal": 489, - "source": 108, - "pc": [ - 732 - ] - }, - { - "teal": 490, - "source": 108, - "pc": [ - 733 - ] - }, - { - "teal": 493, - "source": 108, - "errorMessage": "arc72_tokenByIndex return value overflowed 256 bits", - "pc": [ - 734 - ] - }, - { - "teal": 494, - "source": 108, - "pc": [ - 735 - ] - }, - { - "teal": 495, - "source": 108, - "pc": [ - 736 - ] - }, - { - "teal": 496, - "source": 108, - "pc": [ - 737 - ] - }, - { - "teal": 497, - "source": 108, - "pc": [ - 738 - ] - }, - { - "teal": 498, - "source": 108, - "pc": [ - 739 - ] - }, - { - "teal": 499, - "source": 108, - "pc": [ - 740 - ] - }, - { - "teal": 500, - "source": 108, - "pc": [ - 741 - ] - }, - { - "teal": 501, - "source": 108, - "pc": [ - 742 - ] - }, - { - "teal": 502, - "source": 108, - "pc": [ - 743 - ] - }, - { - "teal": 503, - "source": 108, - "pc": [ - 744 - ] - }, - { - "teal": 504, - "source": 108, - "pc": [ - 745 - ] - }, - { - "teal": 505, - "source": 108, - "pc": [ - 746 - ] - }, - { - "teal": 506, - "source": 108, - "pc": [ - 747 - ] - }, - { - "teal": 512, - "source": 108, - "pc": [ - 748, - 749, - 750 - ] - }, - { - "teal": 516, - "source": 110, - "pc": [ - 751, - 752 - ] - }, - { - "teal": 517, - "source": 108, - "pc": [ - 753 - ] - }, - { - "teal": 520, - "source": 9, - "pc": [ - 754 - ] - }, - { - "teal": 521, - "source": 9, - "pc": [ - 755 - ] - }, - { - "teal": 524, - "source": 9, - "pc": [ - 756, - 757, - 758, - 759, - 760, - 761 - ] - }, - { - "teal": 525, - "source": 9, - "pc": [ - 762, - 763, - 764 - ] - }, - { - "teal": 526, - "source": 9, - "pc": [ - 765, - 766, - 767, - 768 - ] - }, - { - "teal": 529, - "source": 9, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 769 - ] - }, - { - "teal": 532, - "source": 9, - "pc": [ - 770, - 771, - 772, - 773, - 774, - 775 - ] - }, - { - "teal": 533, - "source": 9, - "pc": [ - 776, - 777, - 778, - 779, - 780, - 781 - ] - }, - { - "teal": 534, - "source": 9, - "pc": [ - 782, - 783, - 784, - 785, - 786, - 787 - ] - }, - { - "teal": 535, - "source": 9, - "pc": [ - 788, - 789, - 790, - 791, - 792, - 793 - ] - }, - { - "teal": 536, - "source": 9, - "pc": [ - 794, - 795, - 796, - 797, - 798, - 799 - ] - }, - { - "teal": 537, - "source": 9, - "pc": [ - 800, - 801, - 802, - 803, - 804, - 805 - ] - }, - { - "teal": 538, - "source": 9, - "pc": [ - 806, - 807, - 808, - 809, - 810, - 811 - ] - }, - { - "teal": 539, - "source": 9, - "pc": [ - 812, - 813, - 814, - 815, - 816, - 817 - ] - }, - { - "teal": 540, - "source": 9, - "pc": [ - 818, - 819, - 820 - ] - }, - { - "teal": 541, - "source": 9, - "pc": [ - 821, - 822, - 823, - 824, - 825, - 826, - 827, - 828, - 829, - 830, - 831, - 832, - 833, - 834, - 835, - 836, - 837, - 838 - ] - }, - { - "teal": 544, - "source": 9, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 839 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 9, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 13, + "source": 9, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 14, + "source": 9, + "pc": [ + 59 + ] + }, + { + "teal": 15, + "source": 9, + "pc": [ + 60, + 61 + ] + }, + { + "teal": 16, + "source": 9, + "pc": [ + 62 + ] + }, + { + "teal": 17, + "source": 9, + "pc": [ + 63, + 64 + ] + }, + { + "teal": 18, + "source": 9, + "pc": [ + 65 + ] + }, + { + "teal": 19, + "source": 9, + "pc": [ + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 23, + "source": 9, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 92 + ] + }, + { + "teal": 28, + "source": 23, + "pc": [ + 93 + ] + }, + { + "teal": 31, + "source": 24, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 32, + "source": 24, + "pc": [ + 97 + ] + }, + { + "teal": 33, + "source": 24, + "pc": [ + 98 + ] + }, + { + "teal": 34, + "source": 24, + "pc": [ + 99 + ] + }, + { + "teal": 35, + "source": 24, + "pc": [ + 100 + ] + }, + { + "teal": 38, + "source": 24, + "errorMessage": "argument 0 (tokenId) for arc72_ownerOf must be a uint256", + "pc": [ + 101 + ] + }, + { + "teal": 41, + "source": 23, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 42, + "source": 23, + "pc": [ + 105 + ] + }, + { + "teal": 43, + "source": 23, + "pc": [ + 106 + ] + }, + { + "teal": 44, + "source": 23, + "pc": [ + 107 + ] + }, + { + "teal": 45, + "source": 23, + "pc": [ + 108 + ] + }, + { + "teal": 55, + "source": 23, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 59, + "source": 25, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 60, + "source": 25, + "pc": [ + 114 + ] + }, + { + "teal": 61, + "source": 25, + "pc": [ + 115 + ] + }, + { + "teal": 62, + "source": 25, + "pc": [ + 116 + ] + }, + { + "teal": 63, + "source": 23, + "pc": [ + 117 + ] + }, + { + "teal": 68, + "source": 35, + "pc": [ + 118 + ] + }, + { + "teal": 71, + "source": 36, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 72, + "source": 36, + "pc": [ + 122 + ] + }, + { + "teal": 73, + "source": 36, + "pc": [ + 123 + ] + }, + { + "teal": 74, + "source": 36, + "pc": [ + 124 + ] + }, + { + "teal": 75, + "source": 36, + "pc": [ + 125 + ] + }, + { + "teal": 78, + "source": 36, + "errorMessage": "argument 0 (tokenId) for arc72_tokenURI must be a uint256", + "pc": [ + 126 + ] + }, + { + "teal": 81, + "source": 35, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 82, + "source": 35, + "pc": [ + 130 + ] + }, + { + "teal": 83, + "source": 35, + "pc": [ + 131 + ] + }, + { + "teal": 84, + "source": 35, + "pc": [ + 132 + ] + }, + { + "teal": 85, + "source": 35, + "pc": [ + 133 + ] + }, + { + "teal": 95, + "source": 35, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 99, + "source": 37, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 100, + "source": 37, + "pc": [ + 139 + ] + }, + { + "teal": 101, + "source": 37, + "pc": [ + 140 + ] + }, + { + "teal": 102, + "source": 37, + "pc": [ + 141 + ] + }, + { + "teal": 103, + "source": 35, + "pc": [ + 142 + ] + }, + { + "teal": 107, + "source": 40, + "pc": [ + 143, + 144, + 145 + ] + }, + { + "teal": 111, + "source": 41, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 112, + "source": 41, + "pc": [ + 148 + ] + }, + { + "teal": 113, + "source": 41, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 114, + "source": 41, + "pc": [ + 151 + ] + }, + { + "teal": 115, + "source": 40, + "pc": [ + 152 + ] + }, + { + "teal": 120, + "source": 47, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 121, + "source": 47, + "pc": [ + 156 + ] + }, + { + "teal": 122, + "source": 47, + "pc": [ + 157 + ] + }, + { + "teal": 123, + "source": 47, + "pc": [ + 158 + ] + }, + { + "teal": 124, + "source": 47, + "pc": [ + 159 + ] + }, + { + "teal": 127, + "source": 47, + "errorMessage": "argument 0 (tokenId) for arc72_transferFrom must be a uint256", + "pc": [ + 160 + ] + }, + { + "teal": 130, + "source": 47, + "pc": [ + 161, + 162, + 163 + ] + }, + { + "teal": 131, + "source": 47, + "pc": [ + 164 + ] + }, + { + "teal": 132, + "source": 47, + "pc": [ + 165 + ] + }, + { + "teal": 133, + "source": 47, + "pc": [ + 166 + ] + }, + { + "teal": 134, + "source": 47, + "pc": [ + 167 + ] + }, + { + "teal": 137, + "source": 47, + "errorMessage": "argument 1 (to) for arc72_transferFrom must be a address", + "pc": [ + 168 + ] + }, + { + "teal": 140, + "source": 47, + "pc": [ + 169, + 170, + 171 + ] + }, + { + "teal": 141, + "source": 47, + "pc": [ + 172 + ] + }, + { + "teal": 142, + "source": 47, + "pc": [ + 173 + ] + }, + { + "teal": 143, + "source": 47, + "pc": [ + 174 + ] + }, + { + "teal": 144, + "source": 47, + "pc": [ + 175 + ] + }, + { + "teal": 147, + "source": 47, + "errorMessage": "argument 2 (_from) for arc72_transferFrom must be a address", + "pc": [ + 176 + ] + }, + { + "teal": 150, + "source": 47, + "pc": [ + 177, + 178, + 179 + ] + }, + { + "teal": 151, + "source": 47, + "pc": [ + 180 + ] + }, + { + "teal": 152, + "source": 47, + "pc": [ + 181 + ] + }, + { + "teal": 158, + "source": 47, + "pc": [ + 182, + 183, + 184 + ] + }, + { + "teal": 161, + "source": 47, + "pc": [ + 185 + ] + }, + { + "teal": 162, + "source": 47, + "pc": [ + 186 + ] + }, + { + "teal": 166, + "source": 48, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 167, + "source": 48, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 171, + "source": 50, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 172, + "source": 50, + "pc": [ + 193, + 194 + ] + }, + { + "teal": 173, + "source": 50, + "pc": [ + 195 + ] + }, + { + "teal": 174, + "source": 50, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 179, + "source": 52, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 180, + "source": 52, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 181, + "source": 52, + "pc": [ + 202 + ] + }, + { + "teal": 182, + "source": 52, + "pc": [ + 203 + ] + }, + { + "teal": 183, + "source": 52, + "pc": [ + 204, + 205, + 206 + ] + }, + { + "teal": 184, + "source": 52, + "pc": [ + 207, + 208 + ] + }, + { + "teal": 185, + "source": 48, + "pc": [ + 209, + 210 + ] + }, + { + "teal": 186, + "source": 48, + "pc": [ + 211, + 212 + ] + }, + { + "teal": 187, + "source": 48, + "pc": [ + 213 + ] + }, + { + "teal": 188, + "source": 48, + "pc": [ + 214 + ] + }, + { + "teal": 189, + "source": 52, + "pc": [ + 215 + ] + }, + { + "teal": 190, + "source": 52, + "pc": [ + 216 + ] + }, + { + "teal": 193, + "source": 52, + "pc": [ + 217 + ] + }, + { + "teal": 194, + "source": 52, + "pc": [ + 218, + 219, + 220 + ] + }, + { + "teal": 195, + "source": 52, + "pc": [ + 221, + 222 + ] + }, + { + "teal": 196, + "source": 52, + "pc": [ + 223 + ] + }, + { + "teal": 197, + "source": 52, + "pc": [ + 224 + ] + }, + { + "teal": 198, + "source": 52, + "pc": [ + 225 + ] + }, + { + "teal": 199, + "source": 52, + "pc": [ + 226 + ] + }, + { + "teal": 202, + "source": 52, + "pc": [ + 227, + 228, + 229 + ] + }, + { + "teal": 207, + "source": 53, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 208, + "source": 53, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 209, + "source": 53, + "pc": [ + 234, + 235, + 236 + ] + }, + { + "teal": 210, + "source": 52, + "pc": [ + 237, + 238, + 239 + ] + }, + { + "teal": 214, + "source": 54, + "errorMessage": "Transfer not authorized", + "pc": [ + 240 + ] + }, + { + "teal": 217, + "source": 47, + "pc": [ + 241 + ] + }, + { + "teal": 222, + "source": 64, + "pc": [ + 242, + 243, + 244 + ] + }, + { + "teal": 223, + "source": 64, + "pc": [ + 245 + ] + }, + { + "teal": 224, + "source": 64, + "pc": [ + 246 + ] + }, + { + "teal": 225, + "source": 64, + "pc": [ + 247 + ] + }, + { + "teal": 226, + "source": 64, + "pc": [ + 248 + ] + }, + { + "teal": 229, + "source": 64, + "errorMessage": "argument 0 (tokenId) for arc72_approve must be a uint256", + "pc": [ + 249 + ] + }, + { + "teal": 232, + "source": 64, + "pc": [ + 250, + 251, + 252 + ] + }, + { + "teal": 233, + "source": 64, + "pc": [ + 253 + ] + }, + { + "teal": 234, + "source": 64, + "pc": [ + 254 + ] + }, + { + "teal": 235, + "source": 64, + "pc": [ + 255 + ] + }, + { + "teal": 236, + "source": 64, + "pc": [ + 256 + ] + }, + { + "teal": 239, + "source": 64, + "errorMessage": "argument 1 (approved) for arc72_approve must be a address", + "pc": [ + 257 + ] + }, + { + "teal": 242, + "source": 64, + "pc": [ + 258, + 259, + 260 + ] + }, + { + "teal": 243, + "source": 64, + "pc": [ + 261 + ] + }, + { + "teal": 244, + "source": 64, + "pc": [ + 262 + ] + }, + { + "teal": 254, + "source": 64, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 258, + "source": 65, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 259, + "source": 65, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 260, + "source": 65, + "pc": [ + 270, + 271 + ] + }, + { + "teal": 261, + "source": 65, + "pc": [ + 272 + ] + }, + { + "teal": 262, + "source": 64, + "pc": [ + 273 + ] + }, + { + "teal": 267, + "source": 76, + "pc": [ + 274, + 275, + 276 + ] + }, + { + "teal": 268, + "source": 76, + "pc": [ + 277 + ] + }, + { + "teal": 269, + "source": 76, + "pc": [ + 278 + ] + }, + { + "teal": 270, + "source": 76, + "pc": [ + 279 + ] + }, + { + "teal": 271, + "source": 76, + "pc": [ + 280 + ] + }, + { + "teal": 274, + "source": 76, + "errorMessage": "argument 0 (approved) for arc72_setApprovalForAll must be a bool", + "pc": [ + 281 + ] + }, + { + "teal": 275, + "source": 76, + "pc": [ + 282 + ] + }, + { + "teal": 276, + "source": 76, + "pc": [ + 283 + ] + }, + { + "teal": 279, + "source": 76, + "pc": [ + 284, + 285, + 286 + ] + }, + { + "teal": 280, + "source": 76, + "pc": [ + 287 + ] + }, + { + "teal": 281, + "source": 76, + "pc": [ + 288 + ] + }, + { + "teal": 282, + "source": 76, + "pc": [ + 289 + ] + }, + { + "teal": 283, + "source": 76, + "pc": [ + 290 + ] + }, + { + "teal": 286, + "source": 76, + "errorMessage": "argument 1 (operator) for arc72_setApprovalForAll must be a address", + "pc": [ + 291 + ] + }, + { + "teal": 289, + "source": 76, + "pc": [ + 292, + 293, + 294 + ] + }, + { + "teal": 290, + "source": 76, + "pc": [ + 295 + ] + }, + { + "teal": 291, + "source": 76, + "pc": [ + 296 + ] + }, + { + "teal": 302, + "source": 76, + "pc": [ + 297, + 298, + 299 + ] + }, + { + "teal": 305, + "source": 76, + "pc": [ + 300 + ] + }, + { + "teal": 309, + "source": 77, + "pc": [ + 301, + 302 + ] + }, + { + "teal": 310, + "source": 77, + "pc": [ + 303, + 304 + ] + }, + { + "teal": 311, + "source": 77, + "pc": [ + 305 + ] + }, + { + "teal": 312, + "source": 77, + "pc": [ + 306, + 307 + ] + }, + { + "teal": 317, + "source": 79, + "pc": [ + 308, + 309 + ] + }, + { + "teal": 318, + "source": 79, + "pc": [ + 310, + 311, + 312 + ] + }, + { + "teal": 323, + "source": 79, + "pc": [ + 313, + 314 + ] + }, + { + "teal": 324, + "source": 79, + "pc": [ + 315 + ] + }, + { + "teal": 325, + "source": 79, + "pc": [ + 316 + ] + }, + { + "teal": 326, + "source": 79, + "pc": [ + 317 + ] + }, + { + "teal": 327, + "source": 79, + "pc": [ + 318 + ] + }, + { + "teal": 328, + "source": 79, + "pc": [ + 319 + ] + }, + { + "teal": 329, + "source": 79, + "pc": [ + 320, + 321, + 322 + ] + }, + { + "teal": 334, + "source": 80, + "pc": [ + 323, + 324 + ] + }, + { + "teal": 335, + "source": 80, + "pc": [ + 325 + ] + }, + { + "teal": 336, + "source": 80, + "pc": [ + 326 + ] + }, + { + "teal": 337, + "source": 80, + "pc": [ + 327 + ] + }, + { + "teal": 338, + "source": 80, + "pc": [ + 328, + 329, + 330 + ] + }, + { + "teal": 343, + "source": 80, + "pc": [ + 331, + 332 + ] + }, + { + "teal": 344, + "source": 80, + "pc": [ + 333 + ] + }, + { + "teal": 347, + "source": 76, + "pc": [ + 334 + ] + }, + { + "teal": 352, + "source": 83, + "pc": [ + 335, + 336, + 337 + ] + }, + { + "teal": 353, + "source": 83, + "pc": [ + 338 + ] + }, + { + "teal": 354, + "source": 83, + "pc": [ + 339 + ] + }, + { + "teal": 355, + "source": 83, + "pc": [ + 340 + ] + }, + { + "teal": 356, + "source": 83, + "pc": [ + 341 + ] + }, + { + "teal": 359, + "source": 83, + "errorMessage": "argument 0 (to) for mint must be a address", + "pc": [ + 342 + ] + }, + { + "teal": 362, + "source": 83, + "pc": [ + 343, + 344, + 345 + ] + }, + { + "teal": 363, + "source": 83, + "pc": [ + 346 + ] + }, + { + "teal": 364, + "source": 83, + "pc": [ + 347 + ] + }, + { + "teal": 368, + "source": 83, + "pc": [ + 348, + 349, + 350 + ] + }, + { + "teal": 371, + "source": 83, + "pc": [ + 351 + ] + }, + { + "teal": 372, + "source": 83, + "pc": [ + 352 + ] + }, + { + "teal": 376, + "source": 84, + "pc": [ + 353 + ] + }, + { + "teal": 377, + "source": 84, + "pc": [ + 354 + ] + }, + { + "teal": 378, + "source": 84, + "pc": [ + 355, + 356 + ] + }, + { + "teal": 386, + "source": 87, + "pc": [ + 357, + 358 + ] + }, + { + "teal": 387, + "source": 88, + "pc": [ + 359, + 360, + 361, + 362, + 363, + 364, + 365, + 366, + 367, + 368, + 369, + 370, + 371, + 372, + 373, + 374, + 375, + 376, + 377, + 378, + 379, + 380, + 381, + 382, + 383, + 384, + 385, + 386, + 387, + 388, + 389, + 390, + 391, + 392, + 393, + 394, + 395, + 396, + 397, + 398, + 399, + 400, + 401, + 402, + 403, + 404, + 405, + 406, + 407, + 408, + 409, + 410, + 411, + 412, + 413, + 414, + 415, + 416, + 417, + 418, + 419, + 420, + 421, + 422, + 423, + 424, + 425, + 426, + 427, + 428, + 429, + 430, + 431, + 432, + 433, + 434, + 435, + 436, + 437, + 438, + 439, + 440, + 441, + 442, + 443, + 444, + 445, + 446, + 447, + 448, + 449, + 450, + 451, + 452, + 453, + 454, + 455, + 456, + 457, + 458, + 459, + 460, + 461, + 462, + 463, + 464, + 465, + 466, + 467, + 468, + 469, + 470, + 471, + 472, + 473, + 474, + 475, + 476, + 477, + 478, + 479, + 480, + 481, + 482, + 483, + 484, + 485, + 486, + 487, + 488, + 489, + 490, + 491, + 492, + 493, + 494, + 495, + 496, + 497, + 498, + 499, + 500, + 501, + 502, + 503, + 504, + 505, + 506, + 507, + 508, + 509, + 510, + 511, + 512, + 513, + 514, + 515, + 516, + 517, + 518, + 519, + 520, + 521, + 522, + 523, + 524, + 525, + 526, + 527, + 528, + 529, + 530, + 531, + 532, + 533, + 534, + 535, + 536, + 537, + 538, + 539, + 540, + 541, + 542, + 543, + 544, + 545, + 546, + 547, + 548, + 549, + 550, + 551, + 552, + 553, + 554, + 555, + 556, + 557, + 558, + 559, + 560, + 561, + 562, + 563, + 564, + 565, + 566, + 567, + 568, + 569, + 570, + 571, + 572, + 573, + 574, + 575, + 576, + 577, + 578, + 579, + 580, + 581, + 582, + 583, + 584, + 585, + 586, + 587, + 588, + 589, + 590, + 591, + 592, + 593, + 594, + 595, + 596, + 597, + 598, + 599, + 600, + 601, + 602, + 603, + 604, + 605, + 606, + 607, + 608, + 609, + 610, + 611, + 612, + 613, + 614, + 615, + 616, + 617 + ] + }, + { + "teal": 388, + "source": 88, + "pc": [ + 618 + ] + }, + { + "teal": 389, + "source": 89, + "pc": [ + 619, + 620 + ] + }, + { + "teal": 390, + "source": 89, + "pc": [ + 621 + ] + }, + { + "teal": 391, + "source": 86, + "pc": [ + 622, + 623 + ] + }, + { + "teal": 395, + "source": 92, + "pc": [ + 624, + 625 + ] + }, + { + "teal": 396, + "source": 92, + "pc": [ + 626, + 627 + ] + }, + { + "teal": 397, + "source": 92, + "pc": [ + 628 + ] + }, + { + "teal": 401, + "source": 93, + "pc": [ + 629, + 630 + ] + }, + { + "teal": 402, + "source": 93, + "pc": [ + 631, + 632 + ] + }, + { + "teal": 403, + "source": 93, + "pc": [ + 633, + 634, + 635 + ] + }, + { + "teal": 407, + "source": 94, + "pc": [ + 636 + ] + }, + { + "teal": 408, + "source": 94, + "pc": [ + 637, + 638 + ] + }, + { + "teal": 409, + "source": 94, + "pc": [ + 639, + 640, + 641, + 642, + 643, + 644, + 645, + 646, + 647, + 648, + 649, + 650, + 651, + 652, + 653, + 654, + 655, + 656, + 657, + 658, + 659, + 660, + 661, + 662, + 663, + 664, + 665, + 666, + 667, + 668, + 669, + 670, + 671, + 672 + ] + }, + { + "teal": 410, + "source": 94, + "pc": [ + 673 + ] + }, + { + "teal": 411, + "source": 94, + "pc": [ + 674 + ] + }, + { + "teal": 412, + "source": 94, + "pc": [ + 675 + ] + }, + { + "teal": 413, + "source": 94, + "pc": [ + 676 + ] + }, + { + "teal": 414, + "source": 94, + "pc": [ + 677 + ] + }, + { + "teal": 417, + "source": 94, + "errorMessage": "index + 1 overflowed 256 bits", + "pc": [ + 678 + ] + }, + { + "teal": 418, + "source": 94, + "pc": [ + 679 + ] + }, + { + "teal": 419, + "source": 94, + "pc": [ + 680 + ] + }, + { + "teal": 420, + "source": 94, + "pc": [ + 681 + ] + }, + { + "teal": 421, + "source": 94, + "pc": [ + 682 + ] + }, + { + "teal": 422, + "source": 94, + "pc": [ + 683 + ] + }, + { + "teal": 423, + "source": 94, + "pc": [ + 684 + ] + }, + { + "teal": 424, + "source": 94, + "pc": [ + 685 + ] + }, + { + "teal": 425, + "source": 94, + "pc": [ + 686 + ] + }, + { + "teal": 426, + "source": 94, + "pc": [ + 687 + ] + }, + { + "teal": 427, + "source": 94, + "pc": [ + 688 + ] + }, + { + "teal": 428, + "source": 83, + "pc": [ + 689 + ] + }, + { + "teal": 433, + "source": 100, + "pc": [ + 690 + ] + }, + { + "teal": 436, + "source": 100, + "pc": [ + 691, + 692, + 693 + ] + }, + { + "teal": 437, + "source": 100, + "pc": [ + 694 + ] + }, + { + "teal": 438, + "source": 100, + "pc": [ + 695 + ] + }, + { + "teal": 439, + "source": 100, + "pc": [ + 696 + ] + }, + { + "teal": 440, + "source": 100, + "pc": [ + 697 + ] + }, + { + "teal": 443, + "source": 100, + "errorMessage": "arc72_totalSupply return value overflowed 256 bits", + "pc": [ + 698 + ] + }, + { + "teal": 444, + "source": 100, + "pc": [ + 699 + ] + }, + { + "teal": 445, + "source": 100, + "pc": [ + 700 + ] + }, + { + "teal": 446, + "source": 100, + "pc": [ + 701 + ] + }, + { + "teal": 447, + "source": 100, + "pc": [ + 702 + ] + }, + { + "teal": 448, + "source": 100, + "pc": [ + 703 + ] + }, + { + "teal": 449, + "source": 100, + "pc": [ + 704 + ] + }, + { + "teal": 450, + "source": 100, + "pc": [ + 705 + ] + }, + { + "teal": 451, + "source": 100, + "pc": [ + 706 + ] + }, + { + "teal": 452, + "source": 100, + "pc": [ + 707 + ] + }, + { + "teal": 453, + "source": 100, + "pc": [ + 708 + ] + }, + { + "teal": 454, + "source": 100, + "pc": [ + 709 + ] + }, + { + "teal": 455, + "source": 100, + "pc": [ + 710 + ] + }, + { + "teal": 456, + "source": 100, + "pc": [ + 711 + ] + }, + { + "teal": 462, + "source": 100, + "pc": [ + 712, + 713, + 714 + ] + }, + { + "teal": 466, + "source": 102, + "pc": [ + 715 + ] + }, + { + "teal": 467, + "source": 102, + "pc": [ + 716 + ] + }, + { + "teal": 468, + "source": 100, + "pc": [ + 717 + ] + }, + { + "teal": 473, + "source": 108, + "pc": [ + 718 + ] + }, + { + "teal": 476, + "source": 109, + "pc": [ + 719, + 720, + 721 + ] + }, + { + "teal": 477, + "source": 109, + "pc": [ + 722 + ] + }, + { + "teal": 478, + "source": 109, + "pc": [ + 723 + ] + }, + { + "teal": 479, + "source": 109, + "pc": [ + 724 + ] + }, + { + "teal": 480, + "source": 109, + "pc": [ + 725 + ] + }, + { + "teal": 483, + "source": 109, + "errorMessage": "argument 0 (index) for arc72_tokenByIndex must be a uint256", + "pc": [ + 726 + ] + }, + { + "teal": 486, + "source": 108, + "pc": [ + 727, + 728, + 729 + ] + }, + { + "teal": 487, + "source": 108, + "pc": [ + 730 + ] + }, + { + "teal": 488, + "source": 108, + "pc": [ + 731 + ] + }, + { + "teal": 489, + "source": 108, + "pc": [ + 732 + ] + }, + { + "teal": 490, + "source": 108, + "pc": [ + 733 + ] + }, + { + "teal": 493, + "source": 108, + "errorMessage": "arc72_tokenByIndex return value overflowed 256 bits", + "pc": [ + 734 + ] + }, + { + "teal": 494, + "source": 108, + "pc": [ + 735 + ] + }, + { + "teal": 495, + "source": 108, + "pc": [ + 736 + ] + }, + { + "teal": 496, + "source": 108, + "pc": [ + 737 + ] + }, + { + "teal": 497, + "source": 108, + "pc": [ + 738 + ] + }, + { + "teal": 498, + "source": 108, + "pc": [ + 739 + ] + }, + { + "teal": 499, + "source": 108, + "pc": [ + 740 + ] + }, + { + "teal": 500, + "source": 108, + "pc": [ + 741 + ] + }, + { + "teal": 501, + "source": 108, + "pc": [ + 742 + ] + }, + { + "teal": 502, + "source": 108, + "pc": [ + 743 + ] + }, + { + "teal": 503, + "source": 108, + "pc": [ + 744 + ] + }, + { + "teal": 504, + "source": 108, + "pc": [ + 745 + ] + }, + { + "teal": 505, + "source": 108, + "pc": [ + 746 + ] + }, + { + "teal": 506, + "source": 108, + "pc": [ + 747 + ] + }, + { + "teal": 512, + "source": 108, + "pc": [ + 748, + 749, + 750 + ] + }, + { + "teal": 516, + "source": 110, + "pc": [ + 751, + 752 + ] + }, + { + "teal": 517, + "source": 108, + "pc": [ + 753 + ] + }, + { + "teal": 520, + "source": 9, + "pc": [ + 754 + ] + }, + { + "teal": 521, + "source": 9, + "pc": [ + 755 + ] + }, + { + "teal": 524, + "source": 9, + "pc": [ + 756, + 757, + 758, + 759, + 760, + 761 + ] + }, + { + "teal": 525, + "source": 9, + "pc": [ + 762, + 763, + 764 + ] + }, + { + "teal": 526, + "source": 9, + "pc": [ + 765, + 766, + 767, + 768 + ] + }, + { + "teal": 529, + "source": 9, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 769 + ] + }, + { + "teal": 532, + "source": 9, + "pc": [ + 770, + 771, + 772, + 773, + 774, + 775 + ] + }, + { + "teal": 533, + "source": 9, + "pc": [ + 776, + 777, + 778, + 779, + 780, + 781 + ] + }, + { + "teal": 534, + "source": 9, + "pc": [ + 782, + 783, + 784, + 785, + 786, + 787 + ] + }, + { + "teal": 535, + "source": 9, + "pc": [ + 788, + 789, + 790, + 791, + 792, + 793 + ] + }, + { + "teal": 536, + "source": 9, + "pc": [ + 794, + 795, + 796, + 797, + 798, + 799 + ] + }, + { + "teal": 537, + "source": 9, + "pc": [ + 800, + 801, + 802, + 803, + 804, + 805 + ] + }, + { + "teal": 538, + "source": 9, + "pc": [ + 806, + 807, + 808, + 809, + 810, + 811 + ] + }, + { + "teal": 539, + "source": 9, + "pc": [ + 812, + 813, + 814, + 815, + 816, + 817 + ] + }, + { + "teal": 540, + "source": 9, + "pc": [ + 818, + 819, + 820 + ] + }, + { + "teal": 541, + "source": 9, + "pc": [ + 821, + 822, + 823, + 824, + 825, + 826, + 827, + 828, + 829, + 830, + 831, + 832, + 833, + 834, + 835, + 836, + 837, + 838 + ] + }, + { + "teal": 544, + "source": 9, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 839 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcmM3Ml9vd25lck9mKHVpbnQyNTYpYWRkcmVzcwoqYWJpX3JvdXRlX2FyYzcyX293bmVyT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHRva2VuSWQ6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAodG9rZW5JZCkgZm9yIGFyYzcyX293bmVyT2YgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfb3duZXJPZih1aW50MjU2KWFkZHJlc3MKCWNhbGxzdWIgYXJjNzJfb3duZXJPZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX293bmVyT2YodG9rZW5JZDogdWludDI1Nik6IEFkZHJlc3MKLy8KLy8KLy8gUmV0dXJucyB0aGUgYWRkcmVzcyBvZiB0aGUgY3VycmVudCBvd25lciBvZiB0aGUgTkZUIHdpdGggdGhlIGdpdmVuIHRva2VuSWQKLy8KLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKLy8gQHJldHVybnMgVGhlIGN1cnJlbnQgb3duZXIgb2YgdGhlIE5GVAphcmM3Ml9vd25lck9mOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoyNQoJLy8gcmV0dXJuIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXI7CglmcmFtZV9kaWcgLTEgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDAKCWludCAzMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdG9rZW5VUkkgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KCWNhbGxzdWIgYXJjNzJfdG9rZW5VUkkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90b2tlblVSSSh0b2tlbklkOiB1aW50MjU2KTogQnl0ZXMyNTYKLy8KLy8KLy8gUmV0dXJucyBhIFVSSSBwb2ludGluZyB0byB0aGUgTkZUIG1ldGFkYXRhCi8vCi8vIEBwYXJhbSB0b2tlbklkIFRoZSBJRCBvZiB0aGUgTkZUCi8vIEByZXR1cm5zIFVSSSB0byB0b2tlbiBtZXRhZGF0YQphcmM3Ml90b2tlblVSSToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MzcKCS8vIHJldHVybiB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlLnVyaTsKCWZyYW1lX2RpZyAtMSAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMzIgLy8gaGVhZE9mZnNldAoJaW50IDI1NgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gdHJhbnNmZXJUbyh0bzogQWRkcmVzcywgdG9rZW5JZDogdWludDI1Nik6IHZvaWQKdHJhbnNmZXJUbzoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NDEKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXIgPSB0bwoJZnJhbWVfZGlnIC0yIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3RyYW5zZmVyRnJvbShhZGRyZXNzLGFkZHJlc3MsdWludDI1Nil2b2lkCiphYmlfcm91dGVfYXJjNzJfdHJhbnNmZXJGcm9tOgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdHJhbnNmZXJGcm9tIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh0bykgZm9yIGFyYzcyX3RyYW5zZmVyRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gX2Zyb206IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMiAoX2Zyb20pIGZvciBhcmM3Ml90cmFuc2ZlckZyb20gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQKCWNhbGxzdWIgYXJjNzJfdHJhbnNmZXJGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90cmFuc2ZlckZyb20oX2Zyb206IEFkZHJlc3MsIHRvOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLyBUcmFuc2ZlcnMgb3duZXJzaGlwIG9mIGFuIE5GVAphcmM3Ml90cmFuc2ZlckZyb206Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo0OAoJLy8gdG9rZW4gPSB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlCglmcmFtZV9kaWcgLTMgLy8gdG9rZW5JZDogdWludDI1NgoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly90b2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NTAKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogX2Zyb20gfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIF9mcm9tOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSBfZnJvbSB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IHRva2VuLmNvbnRyb2xsZXIgfHwgdGhpcy5jb250cm9sQm94KGtleSkuZXhpc3RzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gX2Zyb206IEFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMyAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMjg4IC8vIGhlYWRPZmZzZXQKCWludCAzMgoJYm94X2V4dHJhY3QKCT09Cgl8fAoKKnNraXBfb3IwOgoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMSAvLyBrZXk6IENvbnRyb2wKCWJveF9sZW4KCXN3YXAKCXBvcAoJfHwKCipza2lwX29yMToKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MwoJLy8gdGhpcy50cmFuc2ZlclRvKHRvLCB0b2tlbklkKQoJZnJhbWVfZGlnIC0zIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBUcmFuc2ZlciBub3QgYXV0aG9yaXplZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmU6CgkvLyB0b2tlbklkOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHRva2VuSWQpIGZvciBhcmM3Ml9hcHByb3ZlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhcHByb3ZlZDogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhcHByb3ZlZCkgZm9yIGFyYzcyX2FwcHJvdmUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBhcmM3Ml9hcHByb3ZlCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml9hcHByb3ZlKGFwcHJvdmVkOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLwovLyBBcHByb3ZlIGEgY29udHJvbGxlciBmb3IgYSBzaW5nbGUgTkZUCi8vCi8vIEBwYXJhbSBhcHByb3ZlZCBBcHByb3ZlZCBjb250cm9sbGVyIGFkZHJlc3MKLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKYXJjNzJfYXBwcm92ZToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NjUKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUuY29udHJvbGxlciA9IGFwcHJvdmVkCglmcmFtZV9kaWcgLTIgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDI4OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gYXBwcm92ZWQ6IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6CgkvLyBhcHByb3ZlZDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFwcHJvdmVkKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIG9wZXJhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKG9wZXJhdG9yKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwoYWRkcmVzcyxib29sKXZvaWQKCWNhbGxzdWIgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKG9wZXJhdG9yOiBBZGRyZXNzLCBhcHByb3ZlZDogYm9vbGVhbik6IHZvaWQKLy8KLy8KLy8gQXBwcm92ZSBhbiBvcGVyYXRvciBmb3IgYWxsIE5GVHMgZm9yIGEgdXNlcgovLwovLyBAcGFyYW0gb3BlcmF0b3IgQXBwcm92ZWQgb3BlcmF0b3IgYWRkcmVzcwovLyBAcGFyYW0gYXBwcm92ZWQgdHJ1ZSB0byBnaXZlIGFwcHJvdmFsLCBmYWxzZSB0byByZXZva2UKLy8gQHJldHVybnMKYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NzcKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogb3BlcmF0b3IgfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIG9wZXJhdG9yOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gYXBwcm92ZWQKCWZyYW1lX2RpZyAtMiAvLyBhcHByb3ZlZDogYm9vbGVhbgoJYnogKmlmMV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gdGhpcy5jb250cm9sQm94KGtleSkudmFsdWUgPSAnJwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyAiIgoJYm94X3B1dAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmV4aXN0cwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMCAvLyBrZXk6IENvbnRyb2wKCWJveF9kZWwKCippZjFfZW5kOgoJcmV0c3ViCgovLyBtaW50KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX21pbnQ6CgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0bykgZm9yIG1pbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWludChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWludAoJaW50IDEKCXJldHVybgoKLy8gbWludCh0bzogQWRkcmVzcyk6IHZvaWQKbWludDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg0CgkvLyBpbmRleCA9IHRoaXMuaW5kZXgudmFsdWUKCWJ5dGUgMHg2OTZlNjQ2NTc4IC8vICJpbmRleCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9idXJ5IDAgLy8gaW5kZXg6IHVpbnQyNTYKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg2CgkvLyB0b2tlbjogVG9rZW4gPSB7CgkvLyAgICAgICBvd25lcjogdG8sCgkvLyAgICAgICB1cmk6ICdodHRwczovL2dpdGh1Yi5jb20vYWxnb3JhbmRmb3VuZGF0aW9uL0FSQ3MnIGFzIEJ5dGVzMjU2LAoJLy8gICAgICAgY29udHJvbGxlcjogQWRkcmVzcy56ZXJvQWRkcmVzcywKCS8vICAgICB9CglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJ5dGUgMHg2ODc0NzQ3MDczM2EyZjJmNjc2OTc0Njg3NTYyMmU2MzZmNmQyZjYxNmM2NzZmNzI2MTZlNjQ2NjZmNzU2ZTY0NjE3NDY5NmY2ZTJmNDE1MjQzNzMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9BUkNzIgoJY29uY2F0CglnbG9iYWwgWmVyb0FkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIHRva2VuOiBUb2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6OTIKCS8vIHRoaXMudG9rZW5Cb3goaW5kZXgpLnZhbHVlID0gdG9rZW4KCWZyYW1lX2RpZyAwIC8vIGluZGV4OiB1aW50MjU2CglmcmFtZV9kaWcgMSAvLyB0b2tlbjogVG9rZW4KCWJveF9wdXQKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjkzCgkvLyB0aGlzLnRyYW5zZmVyVG8odG8sIGluZGV4KQoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMSAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo5NAoJLy8gdGhpcy5pbmRleC52YWx1ZSA9IGluZGV4ICsgMQoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gaW5kZXggKyAxIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFyYzcyX3RvdGFsU3VwcGx5KCl1aW50MjU2CiphYmlfcm91dGVfYXJjNzJfdG90YWxTdXBwbHk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYKCWNhbGxzdWIgYXJjNzJfdG90YWxTdXBwbHkKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3RvdGFsU3VwcGx5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJjNzJfdG90YWxTdXBwbHkoKTogdWludDI1NgovLwovLyBSZXR1cm5zIHRoZSBudW1iZXIgb2YgTkZUcyBjdXJyZW50bHkgZGVmaW5lZCBieSB0aGlzIGNvbnRyYWN0CmFyYzcyX3RvdGFsU3VwcGx5OgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoxMDIKCS8vIHJldHVybiB0aGlzLmluZGV4LnZhbHVlOwoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaW5kZXg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoaW5kZXgpIGZvciBhcmM3Ml90b2tlbkJ5SW5kZXggbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBhcmM3Ml90b2tlbkJ5SW5kZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3Rva2VuQnlJbmRleCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3Rva2VuQnlJbmRleChpbmRleDogdWludDI1Nik6IHVpbnQyNTYKLy8KLy8gUmV0dXJucyB0aGUgdG9rZW4gSUQgb2YgdGhlIHRva2VuIHdpdGggdGhlIGdpdmVuIGluZGV4IGFtb25nIGFsbCBORlRzIGRlZmluZWQgYnkgdGhlIGNvbnRyYWN0CmFyYzcyX3Rva2VuQnlJbmRleDoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MTEwCgkvLyByZXR1cm4gaW5kZXg7CglmcmFtZV9kaWcgLTEgLy8gaW5kZXg6IHVpbnQyNTYKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFyYzcyX293bmVyT2YodWludDI1NilhZGRyZXNzIgoJbWV0aG9kICJhcmM3Ml90b2tlblVSSSh1aW50MjU2KWJ5dGVbMjU2XSIKCW1ldGhvZCAiYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX2FwcHJvdmUoYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkIgoJbWV0aG9kICJtaW50KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYiCgltZXRob2QgImFyYzcyX3Rva2VuQnlJbmRleCh1aW50MjU2KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FyYzcyX293bmVyT2YgKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSSAqYWJpX3JvdXRlX2FyYzcyX3RyYW5zZmVyRnJvbSAqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmUgKmFiaV9yb3V0ZV9hcmM3Ml9zZXRBcHByb3ZhbEZvckFsbCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9hcmM3Ml90b3RhbFN1cHBseSAqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcmM3Ml9vd25lck9mKHVpbnQyNTYpYWRkcmVzcwoqYWJpX3JvdXRlX2FyYzcyX293bmVyT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHRva2VuSWQ6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAodG9rZW5JZCkgZm9yIGFyYzcyX293bmVyT2YgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfb3duZXJPZih1aW50MjU2KWFkZHJlc3MKCWNhbGxzdWIgYXJjNzJfb3duZXJPZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX293bmVyT2YodG9rZW5JZDogdWludDI1Nik6IEFkZHJlc3MKLy8KLy8KLy8gUmV0dXJucyB0aGUgYWRkcmVzcyBvZiB0aGUgY3VycmVudCBvd25lciBvZiB0aGUgTkZUIHdpdGggdGhlIGdpdmVuIHRva2VuSWQKLy8KLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKLy8gQHJldHVybnMgVGhlIGN1cnJlbnQgb3duZXIgb2YgdGhlIE5GVAphcmM3Ml9vd25lck9mOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoyNQoJLy8gcmV0dXJuIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXI7CglmcmFtZV9kaWcgLTEgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDAKCWludCAzMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdG9rZW5VUkkgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5VUkkodWludDI1NilieXRlWzI1Nl0KCWNhbGxzdWIgYXJjNzJfdG9rZW5VUkkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90b2tlblVSSSh0b2tlbklkOiB1aW50MjU2KTogQnl0ZXMyNTYKLy8KLy8KLy8gUmV0dXJucyBhIFVSSSBwb2ludGluZyB0byB0aGUgTkZUIG1ldGFkYXRhCi8vCi8vIEBwYXJhbSB0b2tlbklkIFRoZSBJRCBvZiB0aGUgTkZUCi8vIEByZXR1cm5zIFVSSSB0byB0b2tlbiBtZXRhZGF0YQphcmM3Ml90b2tlblVSSToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MzcKCS8vIHJldHVybiB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlLnVyaTsKCWZyYW1lX2RpZyAtMSAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMzIgLy8gaGVhZE9mZnNldAoJaW50IDI1NgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gdHJhbnNmZXJUbyh0bzogQWRkcmVzcywgdG9rZW5JZDogdWludDI1Nik6IHZvaWQKdHJhbnNmZXJUbzoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NDEKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUub3duZXIgPSB0bwoJZnJhbWVfZGlnIC0yIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWludCAwCglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3RyYW5zZmVyRnJvbShhZGRyZXNzLGFkZHJlc3MsdWludDI1Nil2b2lkCiphYmlfcm91dGVfYXJjNzJfdHJhbnNmZXJGcm9tOgoJLy8gdG9rZW5JZDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0b2tlbklkKSBmb3IgYXJjNzJfdHJhbnNmZXJGcm9tIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh0bykgZm9yIGFyYzcyX3RyYW5zZmVyRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gX2Zyb206IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMiAoX2Zyb20pIGZvciBhcmM3Ml90cmFuc2ZlckZyb20gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQKCWNhbGxzdWIgYXJjNzJfdHJhbnNmZXJGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml90cmFuc2ZlckZyb20oX2Zyb206IEFkZHJlc3MsIHRvOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLyBUcmFuc2ZlcnMgb3duZXJzaGlwIG9mIGFuIE5GVAphcmM3Ml90cmFuc2ZlckZyb206Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo0OAoJLy8gdG9rZW4gPSB0aGlzLnRva2VuQm94KHRva2VuSWQpLnZhbHVlCglmcmFtZV9kaWcgLTMgLy8gdG9rZW5JZDogdWludDI1NgoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly90b2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NTAKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogX2Zyb20gfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIF9mcm9tOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSBfZnJvbSB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IHRva2VuLmNvbnRyb2xsZXIgfHwgdGhpcy5jb250cm9sQm94KGtleSkuZXhpc3RzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gX2Zyb206IEFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMyAvLyB0b2tlbklkOiB1aW50MjU2CglpbnQgMjg4IC8vIGhlYWRPZmZzZXQKCWludCAzMgoJYm94X2V4dHJhY3QKCT09Cgl8fAoKKnNraXBfb3IwOgoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMSAvLyBrZXk6IENvbnRyb2wKCWJveF9sZW4KCXN3YXAKCXBvcAoJfHwKCipza2lwX29yMToKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo1MwoJLy8gdGhpcy50cmFuc2ZlclRvKHRvLCB0b2tlbklkKQoJZnJhbWVfZGlnIC0zIC8vIHRva2VuSWQ6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBUcmFuc2ZlciBub3QgYXV0aG9yaXplZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmU6CgkvLyB0b2tlbklkOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHRva2VuSWQpIGZvciBhcmM3Ml9hcHByb3ZlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhcHByb3ZlZDogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhcHByb3ZlZCkgZm9yIGFyYzcyX2FwcHJvdmUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfYXBwcm92ZShhZGRyZXNzLHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBhcmM3Ml9hcHByb3ZlCglpbnQgMQoJcmV0dXJuCgovLyBhcmM3Ml9hcHByb3ZlKGFwcHJvdmVkOiBBZGRyZXNzLCB0b2tlbklkOiB1aW50MjU2KTogdm9pZAovLwovLwovLyBBcHByb3ZlIGEgY29udHJvbGxlciBmb3IgYSBzaW5nbGUgTkZUCi8vCi8vIEBwYXJhbSBhcHByb3ZlZCBBcHByb3ZlZCBjb250cm9sbGVyIGFkZHJlc3MKLy8gQHBhcmFtIHRva2VuSWQgVGhlIElEIG9mIHRoZSBORlQKYXJjNzJfYXBwcm92ZToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NjUKCS8vIHRoaXMudG9rZW5Cb3godG9rZW5JZCkudmFsdWUuY29udHJvbGxlciA9IGFwcHJvdmVkCglmcmFtZV9kaWcgLTIgLy8gdG9rZW5JZDogdWludDI1NgoJaW50IDI4OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gYXBwcm92ZWQ6IEFkZHJlc3MKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkCiphYmlfcm91dGVfYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6CgkvLyBhcHByb3ZlZDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFwcHJvdmVkKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIG9wZXJhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKG9wZXJhdG9yKSBmb3IgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwoYWRkcmVzcyxib29sKXZvaWQKCWNhbGxzdWIgYXJjNzJfc2V0QXBwcm92YWxGb3JBbGwKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKG9wZXJhdG9yOiBBZGRyZXNzLCBhcHByb3ZlZDogYm9vbGVhbik6IHZvaWQKLy8KLy8KLy8gQXBwcm92ZSBhbiBvcGVyYXRvciBmb3IgYWxsIE5GVHMgZm9yIGEgdXNlcgovLwovLyBAcGFyYW0gb3BlcmF0b3IgQXBwcm92ZWQgb3BlcmF0b3IgYWRkcmVzcwovLyBAcGFyYW0gYXBwcm92ZWQgdHJ1ZSB0byBnaXZlIGFwcHJvdmFsLCBmYWxzZSB0byByZXZva2UKLy8gQHJldHVybnMKYXJjNzJfc2V0QXBwcm92YWxGb3JBbGw6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6NzcKCS8vIGtleTogQ29udHJvbCA9IHsgb3duZXI6IHRoaXMudHhuLnNlbmRlciwgY29udHJvbGxlcjogb3BlcmF0b3IgfQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIG9wZXJhdG9yOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBrZXk6IENvbnRyb2wKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gYXBwcm92ZWQKCWZyYW1lX2RpZyAtMiAvLyBhcHByb3ZlZDogYm9vbGVhbgoJYnogKmlmMV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo3OQoJLy8gdGhpcy5jb250cm9sQm94KGtleSkudmFsdWUgPSAnJwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyAiIgoJYm94X3B1dAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmV4aXN0cwoJZnJhbWVfZGlnIDAgLy8ga2V5OiBDb250cm9sCglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6ODAKCS8vIHRoaXMuY29udHJvbEJveChrZXkpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMCAvLyBrZXk6IENvbnRyb2wKCWJveF9kZWwKCippZjFfZW5kOgoJcmV0c3ViCgovLyBtaW50KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX21pbnQ6CgkvLyB0bzogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwICh0bykgZm9yIG1pbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWludChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWludAoJaW50IDEKCXJldHVybgoKLy8gbWludCh0bzogQWRkcmVzcyk6IHZvaWQKbWludDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg0CgkvLyBpbmRleCA9IHRoaXMuaW5kZXgudmFsdWUKCWJ5dGUgMHg2OTZlNjQ2NTc4IC8vICJpbmRleCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9idXJ5IDAgLy8gaW5kZXg6IHVpbnQyNTYKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjg2CgkvLyB0b2tlbjogVG9rZW4gPSB7CgkvLyAgICAgICBvd25lcjogdG8sCgkvLyAgICAgICB1cmk6ICdodHRwczovL2dpdGh1Yi5jb20vYWxnb3JhbmRmb3VuZGF0aW9uL0FSQ3MnIGFzIEJ5dGVzMjU2LAoJLy8gICAgICAgY29udHJvbGxlcjogQWRkcmVzcy56ZXJvQWRkcmVzcywKCS8vICAgICB9CglmcmFtZV9kaWcgLTEgLy8gdG86IEFkZHJlc3MKCWJ5dGUgMHg2ODc0NzQ3MDczM2EyZjJmNjc2OTc0Njg3NTYyMmU2MzZmNmQyZjYxNmM2NzZmNzI2MTZlNjQ2NjZmNzU2ZTY0NjE3NDY5NmY2ZTJmNDE1MjQzNzMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9BUkNzIgoJY29uY2F0CglnbG9iYWwgWmVyb0FkZHJlc3MKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIHRva2VuOiBUb2tlbgoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6OTIKCS8vIHRoaXMudG9rZW5Cb3goaW5kZXgpLnZhbHVlID0gdG9rZW4KCWZyYW1lX2RpZyAwIC8vIGluZGV4OiB1aW50MjU2CglmcmFtZV9kaWcgMSAvLyB0b2tlbjogVG9rZW4KCWJveF9wdXQKCgkvLyBleGFtcGxlcy9hcmM3Mi9hcmM3Mi5hbGdvLnRzOjkzCgkvLyB0aGlzLnRyYW5zZmVyVG8odG8sIGluZGV4KQoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMSAvLyB0bzogQWRkcmVzcwoJY2FsbHN1YiB0cmFuc2ZlclRvCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czo5NAoJLy8gdGhpcy5pbmRleC52YWx1ZSA9IGluZGV4ICsgMQoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJZnJhbWVfZGlnIDAgLy8gaW5kZXg6IHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gaW5kZXggKyAxIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFyYzcyX3RvdGFsU3VwcGx5KCl1aW50MjU2CiphYmlfcm91dGVfYXJjNzJfdG90YWxTdXBwbHk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYKCWNhbGxzdWIgYXJjNzJfdG90YWxTdXBwbHkKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3RvdGFsU3VwcGx5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJjNzJfdG90YWxTdXBwbHkoKTogdWludDI1NgovLwovLyBSZXR1cm5zIHRoZSBudW1iZXIgb2YgTkZUcyBjdXJyZW50bHkgZGVmaW5lZCBieSB0aGlzIGNvbnRyYWN0CmFyYzcyX3RvdGFsU3VwcGx5OgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvYXJjNzIvYXJjNzIuYWxnby50czoxMDIKCS8vIHJldHVybiB0aGlzLmluZGV4LnZhbHVlOwoJYnl0ZSAweDY5NmU2NDY1NzggLy8gImluZGV4IgoJYXBwX2dsb2JhbF9nZXQKCXJldHN1YgoKLy8gYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaW5kZXg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoaW5kZXgpIGZvciBhcmM3Ml90b2tlbkJ5SW5kZXggbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXJjNzJfdG9rZW5CeUluZGV4KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBhcmM3Ml90b2tlbkJ5SW5kZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIGFyYzcyX3Rva2VuQnlJbmRleCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFyYzcyX3Rva2VuQnlJbmRleChpbmRleDogdWludDI1Nik6IHVpbnQyNTYKLy8KLy8gUmV0dXJucyB0aGUgdG9rZW4gSUQgb2YgdGhlIHRva2VuIHdpdGggdGhlIGdpdmVuIGluZGV4IGFtb25nIGFsbCBORlRzIGRlZmluZWQgYnkgdGhlIGNvbnRyYWN0CmFyYzcyX3Rva2VuQnlJbmRleDoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL2FyYzcyL2FyYzcyLmFsZ28udHM6MTEwCgkvLyByZXR1cm4gaW5kZXg7CglmcmFtZV9kaWcgLTEgLy8gaW5kZXg6IHVpbnQyNTYKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFyYzcyX293bmVyT2YodWludDI1NilhZGRyZXNzIgoJbWV0aG9kICJhcmM3Ml90b2tlblVSSSh1aW50MjU2KWJ5dGVbMjU2XSIKCW1ldGhvZCAiYXJjNzJfdHJhbnNmZXJGcm9tKGFkZHJlc3MsYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX2FwcHJvdmUoYWRkcmVzcyx1aW50MjU2KXZvaWQiCgltZXRob2QgImFyYzcyX3NldEFwcHJvdmFsRm9yQWxsKGFkZHJlc3MsYm9vbCl2b2lkIgoJbWV0aG9kICJtaW50KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXJjNzJfdG90YWxTdXBwbHkoKXVpbnQyNTYiCgltZXRob2QgImFyYzcyX3Rva2VuQnlJbmRleCh1aW50MjU2KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FyYzcyX293bmVyT2YgKmFiaV9yb3V0ZV9hcmM3Ml90b2tlblVSSSAqYWJpX3JvdXRlX2FyYzcyX3RyYW5zZmVyRnJvbSAqYWJpX3JvdXRlX2FyYzcyX2FwcHJvdmUgKmFiaV9yb3V0ZV9hcmM3Ml9zZXRBcHByb3ZhbEZvckFsbCAqYWJpX3JvdXRlX21pbnQgKmFiaV9yb3V0ZV9hcmM3Ml90b3RhbFN1cHBseSAqYWJpX3JvdXRlX2FyYzcyX3Rva2VuQnlJbmRleAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/arc75/artifacts/ARC75.approval.teal b/examples/arc75/artifacts/ARC75.approval.teal index 39334cf4f..76e3c040c 100644 --- a/examples/arc75/artifacts/ARC75.approval.teal +++ b/examples/arc75/artifacts/ARC75.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/arc75/artifacts/ARC75.arc32.json b/examples/arc75/artifacts/ARC75.arc32.json index 66f8490b4..12084bd97 100644 --- a/examples/arc75/artifacts/ARC75.arc32.json +++ b/examples/arc75/artifacts/ARC75.arc32.json @@ -54,7 +54,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2ZXJpZnlNQlJQYXltZW50KHBheW1lbnQ6IFBheVR4biwgcHJlTUJSOiB1aW50NjQpOiB2b2lkCnZlcmlmeU1CUlBheW1lbnQ6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjEwCgkvLyB2ZXJpZnlQYXlUeG4ocGF5bWVudCwgewoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhbW91bnQ6IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSAtIHByZU1CUiwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0yIC8vIHByZU1CUjogdWludDY0CgktCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoicGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UgLSBwcmVNQlIifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHNlbmRNQlJQYXltZW50KHByZU1CUjogdWludDY0KTogdm9pZApzZW5kTUJSUGF5bWVudDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTcKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjE5CgkvLyBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZnJhbWVfZGlnIC0xIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX2FkZEFwcFRvV2hpdGVMaXN0OgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGFkZEFwcFRvV2hpdGVMaXN0IG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGFwcElEOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBib3hJbmRleDogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMiAoYm94SW5kZXgpIGZvciBhZGRBcHBUb1doaXRlTGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZEFwcFRvV2hpdGVMaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHBheSl2b2lkCgljYWxsc3ViIGFkZEFwcFRvV2hpdGVMaXN0CglpbnQgMQoJcmV0dXJuCgovLyBhZGRBcHBUb1doaXRlTGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgcGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLyBBZGQgYXBwIHRvIHdoaXRlbGlzdCBib3gKLy8KLy8gQHBhcmFtIGFyYyAtIFRoZSBBUkMgdGhlIHdoaXRlbGlzdCBjb3JyZXNwb25kcyB0bwovLyBAcGFyYW0gYm94SW5kZXggLSBUaGUgaW5kZXggb2YgdGhlIHdoaXRlbGlzdCBib3ggdG8gYWRkIHRoZSBhcHAgdG8KLy8gQHBhcmFtIGFwcElEIC0gVGhlIGFwcCBJRCB0byBhZGQgdG8gdGhlIHdoaXRlbGlzdAovLyBAcGFyYW0gcGF5bWVudCAtIFRoZSBwYXltZW50IHRyYW5zYWN0aW9uIHRvIGNvdmVyIHRoZSBNQlIgY2hhbmdlCmFkZEFwcFRvV2hpdGVMaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MzMKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM0CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNgoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS5leGlzdHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNwoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5wdXNoKGFwcElEKQoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWZyYW1lX2RpZyAtMyAvLyBhcHBJRDogdWludDY0CglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM5CgkvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdID0gW2FwcElEXQoJZnJhbWVfZGlnIC0zIC8vIGFwcElEOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MAoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZSA9IG5ld1doaXRlbGlzdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWJveF9wdXQKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MwoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHBheW1lbnQsIHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gcGF5bWVudDogUGF5VHhuCgljYWxsc3ViIHZlcmlmeU1CUlBheW1lbnQKCXJldHN1YgoKLy8gc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoqYWJpX3JvdXRlX3NldEFwcFdoaXRlbGlzdDoKCS8vIGFwcElEczogdWludDY0W10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWV4dHJhY3QgMiAwCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGJveEluZGV4KSBmb3Igc2V0QXBwV2hpdGVsaXN0IG11c3QgYmUgYSB1aW50MTYKCWFzc2VydAoJYnRvaQoKCS8vIGFyYzogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoJY2FsbHN1YiBzZXRBcHBXaGl0ZWxpc3QKCWludCAxCglyZXR1cm4KCi8vIHNldEFwcFdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSURzOiB1aW50NjRbXSk6IHZvaWQKLy8KLy8gU2V0cyBhIGFwcCB3aGl0ZWxpc3QgZm9yIHRoZSBzZW5kZXIuIFNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiBhZGRpbmcvcmVtb3ZpbmcKLy8gbW9yZSB0aGFuIG9uZSBhcHAKLy8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIHB1dCB0aGUgYXBwIElEcyBpbgovLyBAcGFyYW0gYXBwSURzIC0gQXJyYXkgb2YgYXBwIElEcyB0aGF0IHNpZ25pZnkgdGhlIHdoaXRlbGlzdGVkIGFwcHMKc2V0QXBwV2hpdGVsaXN0OgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NTUKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU2CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU4CgkvLyB0aGlzLndoaXRlbGlzdCh3aGl0ZWxpc3QpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2RlbAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NjAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUgPSBhcHBJRHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJZnJhbWVfZGlnIC0zIC8vIGFwcElEczogdWludDY0W10KCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYm94X3B1dAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjYyCgkvLyBwcmVNQlIgPiB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCT4KCWJ6ICppZjFfZWxzZQoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2MwoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2NQoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHRoaXMudHhuR3JvdXBbdGhpcy50eG4uZ3JvdXBJbmRleCAtIDFdIGFzIFBheVR4biwgcHJlTUJSKQoJZnJhbWVfZGlnIDAgLy8gcHJlTUJSOiB1aW50NjQKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBmYWlsZWQgdG8gY2FzdCB0aGlzLnR4bkdyb3VwW3RoaXMudHhuLmdyb3VwSW5kZXggLSAxXSB0byBwYXkKCWFzc2VydAoJY2FsbHN1YiB2ZXJpZnlNQlJQYXltZW50CgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZAoqYWJpX3JvdXRlX2RlbGV0ZVdoaXRlbGlzdDoKCS8vIGJveEluZGV4OiB1aW50MTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMgoJPT0KCgkvLyBhcmd1bWVudCAwIChib3hJbmRleCkgZm9yIGRlbGV0ZVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZVdoaXRlbGlzdChzdHJpbmcsdWludDE2KXZvaWQKCWNhbGxzdWIgZGVsZXRlV2hpdGVsaXN0CglpbnQgMQoJcmV0dXJuCgovLyBkZWxldGVXaGl0ZWxpc3QoYXJjOiBzdHJpbmcsIGJveEluZGV4OiB1aW50MTYpOiB2b2lkCi8vCi8vIERlbGV0ZXMgYSBhcHAgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBhcmMgLSBUaGUgQVJDIHRoZSB3aGl0ZWxpc3QgY29ycmVzcG9uZHMgdG8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIGRlbGV0ZQpkZWxldGVXaGl0ZWxpc3Q6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo3NwoJLy8gcHJlTUJSID0gdGhpcy5hcHAuYWRkcmVzcy5taW5CYWxhbmNlCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWZyYW1lX2J1cnkgMCAvLyBwcmVNQlI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NzgKCS8vIHdoaXRlbGlzdDogV2hpdGVsaXN0ID0geyBhY2NvdW50OiB0aGlzLnR4bi5zZW5kZXIsIGJveEluZGV4OiBib3hJbmRleCwgYXJjOiBhcmMgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQxNgoJaXRvYgoJZXh0cmFjdCA2IDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWZyYW1lX2RpZyAtMSAvLyBhcmM6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6ODAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkuZGVsZXRlKCkKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfZGVsCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo4MgoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJcmV0c3ViCgovLyBkZWxldGVBcHBGcm9tV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfZGVsZXRlQXBwRnJvbVdoaXRlbGlzdDoKCS8vIGluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKGJveEluZGV4KSBmb3IgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZUFwcEZyb21XaGl0ZWxpc3Qoc3RyaW5nLHVpbnQxNix1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdAoJaW50IDEKCXJldHVybgoKLy8gZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgaW5kZXg6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gRGVsZXRlcyBhIGFwcCBmcm9tIGEgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBib3hJbmRleCAtIFRoZSBpbmRleCBvZiB0aGUgd2hpdGVsaXN0IGJveCB0byBkZWxldGUgZnJvbQovLyBAcGFyYW0gYXBwSUQgLSBUaGUgYXBwIElEIHRvIGRlbGV0ZSBmcm9tIHRoZSB3aGl0ZWxpc3QKLy8gQHBhcmFtIGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBhcHAgaW4gdGhlIHdoaXRlbGlzdApkZWxldGVBcHBGcm9tV2hpdGVsaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6OTQKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk1CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk3CgkvLyBzcGxpY2VkID0gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5zcGxpY2UoaW5kZXgsIDEpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDEKCWZyYW1lX2RpZyAtNCAvLyBpbmRleDogdWludDY0CglpbnQgOAoJKgoJc3RvcmUgMjQ3IC8vIHNwbGljZSBzdGFydAoJaW50IDE2CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgOAoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CglmcmFtZV9idXJ5IDIgLy8gc3BsaWNlZDogdWludDY0W10KCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk5CgkvLyBhc3NlcnQoc3BsaWNlZFswXSA9PT0gYXBwSUQpCglmcmFtZV9kaWcgMiAvLyBzcGxpY2VkOiB1aW50NjRbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9kaWcgLTMgLy8gYXBwSUQ6IHVpbnQ2NAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTAxCgkvLyB0aGlzLnNlbmRNQlJQYXltZW50KHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CgljYWxsc3ViIHNlbmRNQlJQYXltZW50CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAic2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZCIKCW1ldGhvZCAiZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZCIKCW1ldGhvZCAiZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCx1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWRkQXBwVG9XaGl0ZUxpc3QgKmFiaV9yb3V0ZV9zZXRBcHBXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVBcHBGcm9tV2hpdGVsaXN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2ZXJpZnlNQlJQYXltZW50KHBheW1lbnQ6IFBheVR4biwgcHJlTUJSOiB1aW50NjQpOiB2b2lkCnZlcmlmeU1CUlBheW1lbnQ6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjEwCgkvLyB2ZXJpZnlQYXlUeG4ocGF5bWVudCwgewoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhbW91bnQ6IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSAtIHByZU1CUiwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0yIC8vIHByZU1CUjogdWludDY0CgktCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoicGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UgLSBwcmVNQlIifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHNlbmRNQlJQYXltZW50KHByZU1CUjogdWludDY0KTogdm9pZApzZW5kTUJSUGF5bWVudDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTcKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjE5CgkvLyBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZnJhbWVfZGlnIC0xIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX2FkZEFwcFRvV2hpdGVMaXN0OgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGFkZEFwcFRvV2hpdGVMaXN0IG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGFwcElEOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBib3hJbmRleDogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMiAoYm94SW5kZXgpIGZvciBhZGRBcHBUb1doaXRlTGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZEFwcFRvV2hpdGVMaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHBheSl2b2lkCgljYWxsc3ViIGFkZEFwcFRvV2hpdGVMaXN0CglpbnQgMQoJcmV0dXJuCgovLyBhZGRBcHBUb1doaXRlTGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgcGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLyBBZGQgYXBwIHRvIHdoaXRlbGlzdCBib3gKLy8KLy8gQHBhcmFtIGFyYyAtIFRoZSBBUkMgdGhlIHdoaXRlbGlzdCBjb3JyZXNwb25kcyB0bwovLyBAcGFyYW0gYm94SW5kZXggLSBUaGUgaW5kZXggb2YgdGhlIHdoaXRlbGlzdCBib3ggdG8gYWRkIHRoZSBhcHAgdG8KLy8gQHBhcmFtIGFwcElEIC0gVGhlIGFwcCBJRCB0byBhZGQgdG8gdGhlIHdoaXRlbGlzdAovLyBAcGFyYW0gcGF5bWVudCAtIFRoZSBwYXltZW50IHRyYW5zYWN0aW9uIHRvIGNvdmVyIHRoZSBNQlIgY2hhbmdlCmFkZEFwcFRvV2hpdGVMaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MzMKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM0CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNgoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS5leGlzdHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNwoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5wdXNoKGFwcElEKQoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWZyYW1lX2RpZyAtMyAvLyBhcHBJRDogdWludDY0CglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM5CgkvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdID0gW2FwcElEXQoJZnJhbWVfZGlnIC0zIC8vIGFwcElEOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MAoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZSA9IG5ld1doaXRlbGlzdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWJveF9wdXQKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MwoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHBheW1lbnQsIHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gcGF5bWVudDogUGF5VHhuCgljYWxsc3ViIHZlcmlmeU1CUlBheW1lbnQKCXJldHN1YgoKLy8gc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoqYWJpX3JvdXRlX3NldEFwcFdoaXRlbGlzdDoKCS8vIGFwcElEczogdWludDY0W10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWV4dHJhY3QgMiAwCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGJveEluZGV4KSBmb3Igc2V0QXBwV2hpdGVsaXN0IG11c3QgYmUgYSB1aW50MTYKCWFzc2VydAoJYnRvaQoKCS8vIGFyYzogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoJY2FsbHN1YiBzZXRBcHBXaGl0ZWxpc3QKCWludCAxCglyZXR1cm4KCi8vIHNldEFwcFdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSURzOiB1aW50NjRbXSk6IHZvaWQKLy8KLy8gU2V0cyBhIGFwcCB3aGl0ZWxpc3QgZm9yIHRoZSBzZW5kZXIuIFNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiBhZGRpbmcvcmVtb3ZpbmcKLy8gbW9yZSB0aGFuIG9uZSBhcHAKLy8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIHB1dCB0aGUgYXBwIElEcyBpbgovLyBAcGFyYW0gYXBwSURzIC0gQXJyYXkgb2YgYXBwIElEcyB0aGF0IHNpZ25pZnkgdGhlIHdoaXRlbGlzdGVkIGFwcHMKc2V0QXBwV2hpdGVsaXN0OgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NTUKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU2CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU4CgkvLyB0aGlzLndoaXRlbGlzdCh3aGl0ZWxpc3QpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2RlbAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NjAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUgPSBhcHBJRHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJZnJhbWVfZGlnIC0zIC8vIGFwcElEczogdWludDY0W10KCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYm94X3B1dAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjYyCgkvLyBwcmVNQlIgPiB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCT4KCWJ6ICppZjFfZWxzZQoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2MwoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2NQoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHRoaXMudHhuR3JvdXBbdGhpcy50eG4uZ3JvdXBJbmRleCAtIDFdIGFzIFBheVR4biwgcHJlTUJSKQoJZnJhbWVfZGlnIDAgLy8gcHJlTUJSOiB1aW50NjQKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBmYWlsZWQgdG8gY2FzdCB0aGlzLnR4bkdyb3VwW3RoaXMudHhuLmdyb3VwSW5kZXggLSAxXSB0byBwYXkKCWFzc2VydAoJY2FsbHN1YiB2ZXJpZnlNQlJQYXltZW50CgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZAoqYWJpX3JvdXRlX2RlbGV0ZVdoaXRlbGlzdDoKCS8vIGJveEluZGV4OiB1aW50MTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMgoJPT0KCgkvLyBhcmd1bWVudCAwIChib3hJbmRleCkgZm9yIGRlbGV0ZVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZVdoaXRlbGlzdChzdHJpbmcsdWludDE2KXZvaWQKCWNhbGxzdWIgZGVsZXRlV2hpdGVsaXN0CglpbnQgMQoJcmV0dXJuCgovLyBkZWxldGVXaGl0ZWxpc3QoYXJjOiBzdHJpbmcsIGJveEluZGV4OiB1aW50MTYpOiB2b2lkCi8vCi8vIERlbGV0ZXMgYSBhcHAgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBhcmMgLSBUaGUgQVJDIHRoZSB3aGl0ZWxpc3QgY29ycmVzcG9uZHMgdG8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIGRlbGV0ZQpkZWxldGVXaGl0ZWxpc3Q6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo3NwoJLy8gcHJlTUJSID0gdGhpcy5hcHAuYWRkcmVzcy5taW5CYWxhbmNlCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWZyYW1lX2J1cnkgMCAvLyBwcmVNQlI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NzgKCS8vIHdoaXRlbGlzdDogV2hpdGVsaXN0ID0geyBhY2NvdW50OiB0aGlzLnR4bi5zZW5kZXIsIGJveEluZGV4OiBib3hJbmRleCwgYXJjOiBhcmMgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQxNgoJaXRvYgoJZXh0cmFjdCA2IDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWZyYW1lX2RpZyAtMSAvLyBhcmM6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6ODAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkuZGVsZXRlKCkKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfZGVsCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo4MgoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJcmV0c3ViCgovLyBkZWxldGVBcHBGcm9tV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfZGVsZXRlQXBwRnJvbVdoaXRlbGlzdDoKCS8vIGluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKGJveEluZGV4KSBmb3IgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZUFwcEZyb21XaGl0ZWxpc3Qoc3RyaW5nLHVpbnQxNix1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdAoJaW50IDEKCXJldHVybgoKLy8gZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgaW5kZXg6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gRGVsZXRlcyBhIGFwcCBmcm9tIGEgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBib3hJbmRleCAtIFRoZSBpbmRleCBvZiB0aGUgd2hpdGVsaXN0IGJveCB0byBkZWxldGUgZnJvbQovLyBAcGFyYW0gYXBwSUQgLSBUaGUgYXBwIElEIHRvIGRlbGV0ZSBmcm9tIHRoZSB3aGl0ZWxpc3QKLy8gQHBhcmFtIGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBhcHAgaW4gdGhlIHdoaXRlbGlzdApkZWxldGVBcHBGcm9tV2hpdGVsaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6OTQKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk1CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk3CgkvLyBzcGxpY2VkID0gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5zcGxpY2UoaW5kZXgsIDEpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDEKCWZyYW1lX2RpZyAtNCAvLyBpbmRleDogdWludDY0CglpbnQgOAoJKgoJc3RvcmUgMjQ3IC8vIHNwbGljZSBzdGFydAoJaW50IDE2CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgOAoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CglmcmFtZV9idXJ5IDIgLy8gc3BsaWNlZDogdWludDY0W10KCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk5CgkvLyBhc3NlcnQoc3BsaWNlZFswXSA9PT0gYXBwSUQpCglmcmFtZV9kaWcgMiAvLyBzcGxpY2VkOiB1aW50NjRbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9kaWcgLTMgLy8gYXBwSUQ6IHVpbnQ2NAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTAxCgkvLyB0aGlzLnNlbmRNQlJQYXltZW50KHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CgljYWxsc3ViIHNlbmRNQlJQYXltZW50CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAic2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZCIKCW1ldGhvZCAiZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZCIKCW1ldGhvZCAiZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCx1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWRkQXBwVG9XaGl0ZUxpc3QgKmFiaV9yb3V0ZV9zZXRBcHBXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVBcHBGcm9tV2hpdGVsaXN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/arc75/artifacts/ARC75.arc56_draft.json b/examples/arc75/artifacts/ARC75.arc56_draft.json index c17b02f4c..8a0040cc1 100644 --- a/examples/arc75/artifacts/ARC75.arc56_draft.json +++ b/examples/arc75/artifacts/ARC75.arc56_draft.json @@ -144,11 +144,20 @@ 56 ], "structs": { - "Whitelist": { - "account": "address", - "boxIndex": "uint16", - "arc": "string" - } + "Whitelist": [ + { + "name": "account", + "type": "address" + }, + { + "name": "boxIndex", + "type": "uint16" + }, + { + "name": "arc", + "type": "string" + } + ] }, "state": { "schema": { @@ -181,3234 +190,3237 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 6, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ] - }, - { - "teal": 13, - "source": 6, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 14, - "source": 6, - "pc": [ - 15 - ] - }, - { - "teal": 15, - "source": 6, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 16, - "source": 6, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 6, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 6, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 6, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 6, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 27, - "source": 9, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 35, - "source": 10, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 36, - "source": 11, - "pc": [ - 54, - 55 - ] - }, - { - "teal": 37, - "source": 11, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 38, - "source": 11, - "pc": [ - 58 - ] - }, - { - "teal": 41, - "source": 11, - "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 10, - "pc": [ - 60, - 61 - ] - }, - { - "teal": 45, - "source": 12, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 46, - "source": 12, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 47, - "source": 12, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 48, - "source": 12, - "pc": [ - 68 - ] - }, - { - "teal": 49, - "source": 12, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 50, - "source": 12, - "pc": [ - 71 - ] - }, - { - "teal": 51, - "source": 12, - "pc": [ - 72 - ] - }, - { - "teal": 54, - "source": 12, - "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"amount\",\"expected\":\"this.app.address.minBalance - preMBR\"}", - "pc": [ - 73 - ] - }, - { - "teal": 55, - "source": 9, - "pc": [ - 74 - ] - }, - { - "teal": 59, - "source": 16, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 66, - "source": 17, - "pc": [ - 78 - ] - }, - { - "teal": 67, - "source": 17, - "pc": [ - 79 - ] - }, - { - "teal": 68, - "source": 17, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 72, - "source": 18, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 73, - "source": 18, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 77, - "source": 19, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 78, - "source": 19, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 79, - "source": 19, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 80, - "source": 19, - "pc": [ - 92 - ] - }, - { - "teal": 81, - "source": 19, - "pc": [ - 93 - ] - }, - { - "teal": 82, - "source": 19, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 85, - "source": 17, - "pc": [ - 96 - ] - }, - { - "teal": 86, - "source": 17, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 89, - "source": 17, - "pc": [ - 99 - ] - }, - { - "teal": 90, - "source": 16, - "pc": [ - 100 - ] - }, - { - "teal": 95, - "source": 32, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 96, - "source": 32, - "pc": [ - 103 - ] - }, - { - "teal": 97, - "source": 32, - "pc": [ - 104 - ] - }, - { - "teal": 98, - "source": 32, - "pc": [ - 105 - ] - }, - { - "teal": 99, - "source": 32, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 100, - "source": 32, - "pc": [ - 108 - ] - }, - { - "teal": 101, - "source": 32, - "pc": [ - 109 - ] - }, - { - "teal": 104, - "source": 32, - "errorMessage": "argument 0 (payment) for addAppToWhiteList must be a pay transaction", - "pc": [ - 110 - ] - }, - { - "teal": 107, - "source": 32, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 108, - "source": 32, - "pc": [ - 114 - ] - }, - { - "teal": 111, - "source": 32, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 112, - "source": 32, - "pc": [ - 118 - ] - }, - { - "teal": 113, - "source": 32, - "pc": [ - 119 - ] - }, - { - "teal": 114, - "source": 32, - "pc": [ - 120 - ] - }, - { - "teal": 115, - "source": 32, - "pc": [ - 121 - ] - }, - { - "teal": 118, - "source": 32, - "errorMessage": "argument 2 (boxIndex) for addAppToWhiteList must be a uint16", - "pc": [ - 122 - ] - }, - { - "teal": 119, - "source": 32, - "pc": [ - 123 - ] - }, - { - "teal": 122, - "source": 32, - "pc": [ - 124, - 125, - 126 - ] - }, - { - "teal": 123, - "source": 32, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 126, - "source": 32, - "pc": [ - 130, - 131, - 132 - ] - }, - { - "teal": 127, - "source": 32, - "pc": [ - 133 - ] - }, - { - "teal": 128, - "source": 32, - "pc": [ - 134 - ] - }, - { - "teal": 139, - "source": 32, - "pc": [ - 135, - 136, - 137 - ] - }, - { - "teal": 142, - "source": 32, - "pc": [ - 138 - ] - }, - { - "teal": 143, - "source": 32, - "pc": [ - 139, - 140 - ] - }, - { - "teal": 147, - "source": 33, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 148, - "source": 33, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 149, - "source": 33, - "pc": [ - 145 - ] - }, - { - "teal": 150, - "source": 33, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 154, - "source": 34, - "pc": [ - 148 - ] - }, - { - "teal": 155, - "source": 34, - "pc": [ - 149 - ] - }, - { - "teal": 156, - "source": 34, - "pc": [ - 150 - ] - }, - { - "teal": 157, - "source": 34, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 158, - "source": 34, - "pc": [ - 153, - 154, - 155 - ] - }, - { - "teal": 159, - "source": 34, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 160, - "source": 34, - "pc": [ - 158 - ] - }, - { - "teal": 161, - "source": 34, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 162, - "source": 34, - "pc": [ - 162, - 163, - 164 - ] - }, - { - "teal": 163, - "source": 34, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 164, - "source": 34, - "pc": [ - 167 - ] - }, - { - "teal": 165, - "source": 34, - "pc": [ - 168 - ] - }, - { - "teal": 166, - "source": 34, - "pc": [ - 169 - ] - }, - { - "teal": 167, - "source": 34, - "pc": [ - 170, - 171, - 172 - ] - }, - { - "teal": 168, - "source": 34, - "pc": [ - 173 - ] - }, - { - "teal": 169, - "source": 34, - "pc": [ - 174 - ] - }, - { - "teal": 170, - "source": 34, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 171, - "source": 34, - "pc": [ - 178 - ] - }, - { - "teal": 172, - "source": 34, - "pc": [ - 179 - ] - }, - { - "teal": 173, - "source": 34, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 178, - "source": 36, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 179, - "source": 36, - "pc": [ - 184 - ] - }, - { - "teal": 180, - "source": 36, - "pc": [ - 185 - ] - }, - { - "teal": 181, - "source": 36, - "pc": [ - 186 - ] - }, - { - "teal": 182, - "source": 36, - "pc": [ - 187, - 188, - 189 - ] - }, - { - "teal": 187, - "source": 37, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 188, - "source": 37, - "pc": [ - 192 - ] - }, - { - "teal": 191, - "source": 37, - "errorMessage": "box value does not exist: this.whitelist(whitelist).value", - "pc": [ - 193 - ] - }, - { - "teal": 192, - "source": 37, - "pc": [ - 194, - 195, - 196 - ] - }, - { - "teal": 193, - "source": 37, - "pc": [ - 197, - 198 - ] - }, - { - "teal": 194, - "source": 37, - "pc": [ - 199 - ] - }, - { - "teal": 195, - "source": 37, - "pc": [ - 200 - ] - }, - { - "teal": 196, - "source": 37, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 197, - "source": 37, - "pc": [ - 203 - ] - }, - { - "teal": 198, - "source": 37, - "pc": [ - 204 - ] - }, - { - "teal": 199, - "source": 37, - "pc": [ - 205 - ] - }, - { - "teal": 200, - "source": 37, - "pc": [ - 206 - ] - }, - { - "teal": 201, - "source": 37, - "pc": [ - 207 - ] - }, - { - "teal": 202, - "source": 37, - "pc": [ - 208 - ] - }, - { - "teal": 203, - "source": 37, - "pc": [ - 209 - ] - }, - { - "teal": 204, - "source": 37, - "pc": [ - 210 - ] - }, - { - "teal": 205, - "source": 37, - "pc": [ - 211 - ] - }, - { - "teal": 206, - "source": 37, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 207, - "source": 37, - "pc": [ - 215 - ] - }, - { - "teal": 208, - "source": 37, - "pc": [ - 216 - ] - }, - { - "teal": 209, - "source": 37, - "pc": [ - 217 - ] - }, - { - "teal": 210, - "source": 36, - "pc": [ - 218, - 219, - 220 - ] - }, - { - "teal": 215, - "source": 39, - "pc": [ - 221, - 222 - ] - }, - { - "teal": 216, - "source": 39, - "pc": [ - 223 - ] - }, - { - "teal": 217, - "source": 39, - "pc": [ - 224, - 225 - ] - }, - { - "teal": 221, - "source": 40, - "pc": [ - 226, - 227 - ] - }, - { - "teal": 222, - "source": 40, - "pc": [ - 228 - ] - }, - { - "teal": 223, - "source": 40, - "pc": [ - 229 - ] - }, - { - "teal": 224, - "source": 40, - "pc": [ - 230 - ] - }, - { - "teal": 225, - "source": 40, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 226, - "source": 40, - "pc": [ - 233 - ] - }, - { - "teal": 227, - "source": 40, - "pc": [ - 234 - ] - }, - { - "teal": 228, - "source": 40, - "pc": [ - 235 - ] - }, - { - "teal": 229, - "source": 40, - "pc": [ - 236 - ] - }, - { - "teal": 230, - "source": 40, - "pc": [ - 237 - ] - }, - { - "teal": 231, - "source": 40, - "pc": [ - 238, - 239, - 240 - ] - }, - { - "teal": 232, - "source": 40, - "pc": [ - 241 - ] - }, - { - "teal": 233, - "source": 40, - "pc": [ - 242 - ] - }, - { - "teal": 234, - "source": 40, - "pc": [ - 243 - ] - }, - { - "teal": 239, - "source": 43, - "pc": [ - 244, - 245 - ] - }, - { - "teal": 240, - "source": 43, - "pc": [ - 246, - 247 - ] - }, - { - "teal": 241, - "source": 43, - "pc": [ - 248, - 249, - 250 - ] - }, - { - "teal": 242, - "source": 32, - "pc": [ - 251 - ] - }, - { - "teal": 247, - "source": 54, - "pc": [ - 252, - 253, - 254 - ] - }, - { - "teal": 248, - "source": 54, - "pc": [ - 255, - 256, - 257 - ] - }, - { - "teal": 251, - "source": 54, - "pc": [ - 258, - 259, - 260 - ] - }, - { - "teal": 252, - "source": 54, - "pc": [ - 261 - ] - }, - { - "teal": 253, - "source": 54, - "pc": [ - 262 - ] - }, - { - "teal": 254, - "source": 54, - "pc": [ - 263 - ] - }, - { - "teal": 255, - "source": 54, - "pc": [ - 264 - ] - }, - { - "teal": 258, - "source": 54, - "errorMessage": "argument 1 (boxIndex) for setAppWhitelist must be a uint16", - "pc": [ - 265 - ] - }, - { - "teal": 259, - "source": 54, - "pc": [ - 266 - ] - }, - { - "teal": 262, - "source": 54, - "pc": [ - 267, - 268, - 269 - ] - }, - { - "teal": 263, - "source": 54, - "pc": [ - 270, - 271, - 272 - ] - }, - { - "teal": 266, - "source": 54, - "pc": [ - 273, - 274, - 275 - ] - }, - { - "teal": 267, - "source": 54, - "pc": [ - 276 - ] - }, - { - "teal": 268, - "source": 54, - "pc": [ - 277 - ] - }, - { - "teal": 278, - "source": 54, - "pc": [ - 278, - 279, - 280 - ] - }, - { - "teal": 281, - "source": 54, - "pc": [ - 281 - ] - }, - { - "teal": 282, - "source": 54, - "pc": [ - 282 - ] - }, - { - "teal": 286, - "source": 55, - "pc": [ - 283, - 284 - ] - }, - { - "teal": 287, - "source": 55, - "pc": [ - 285, - 286 - ] - }, - { - "teal": 288, - "source": 55, - "pc": [ - 287 - ] - }, - { - "teal": 289, - "source": 55, - "pc": [ - 288, - 289 - ] - }, - { - "teal": 293, - "source": 56, - "pc": [ - 290 - ] - }, - { - "teal": 294, - "source": 56, - "pc": [ - 291 - ] - }, - { - "teal": 295, - "source": 56, - "pc": [ - 292 - ] - }, - { - "teal": 296, - "source": 56, - "pc": [ - 293, - 294 - ] - }, - { - "teal": 297, - "source": 56, - "pc": [ - 295, - 296, - 297 - ] - }, - { - "teal": 298, - "source": 56, - "pc": [ - 298, - 299 - ] - }, - { - "teal": 299, - "source": 56, - "pc": [ - 300 - ] - }, - { - "teal": 300, - "source": 56, - "pc": [ - 301, - 302, - 303 - ] - }, - { - "teal": 301, - "source": 56, - "pc": [ - 304, - 305, - 306 - ] - }, - { - "teal": 302, - "source": 56, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 303, - "source": 56, - "pc": [ - 309 - ] - }, - { - "teal": 304, - "source": 56, - "pc": [ - 310 - ] - }, - { - "teal": 305, - "source": 56, - "pc": [ - 311 - ] - }, - { - "teal": 306, - "source": 56, - "pc": [ - 312, - 313, - 314 - ] - }, - { - "teal": 307, - "source": 56, - "pc": [ - 315 - ] - }, - { - "teal": 308, - "source": 56, - "pc": [ - 316 - ] - }, - { - "teal": 309, - "source": 56, - "pc": [ - 317, - 318, - 319 - ] - }, - { - "teal": 310, - "source": 56, - "pc": [ - 320 - ] - }, - { - "teal": 311, - "source": 56, - "pc": [ - 321 - ] - }, - { - "teal": 312, - "source": 56, - "pc": [ - 322, - 323 - ] - }, - { - "teal": 316, - "source": 58, - "pc": [ - 324, - 325 - ] - }, - { - "teal": 317, - "source": 58, - "pc": [ - 326 - ] - }, - { - "teal": 321, - "source": 60, - "pc": [ - 327, - 328 - ] - }, - { - "teal": 322, - "source": 60, - "pc": [ - 329 - ] - }, - { - "teal": 323, - "source": 60, - "pc": [ - 330 - ] - }, - { - "teal": 324, - "source": 60, - "pc": [ - 331 - ] - }, - { - "teal": 325, - "source": 60, - "pc": [ - 332, - 333 - ] - }, - { - "teal": 326, - "source": 60, - "pc": [ - 334 - ] - }, - { - "teal": 327, - "source": 60, - "pc": [ - 335 - ] - }, - { - "teal": 328, - "source": 60, - "pc": [ - 336 - ] - }, - { - "teal": 329, - "source": 60, - "pc": [ - 337 - ] - }, - { - "teal": 330, - "source": 60, - "pc": [ - 338 - ] - }, - { - "teal": 331, - "source": 60, - "pc": [ - 339, - 340, - 341 - ] - }, - { - "teal": 332, - "source": 60, - "pc": [ - 342 - ] - }, - { - "teal": 333, - "source": 60, - "pc": [ - 343 - ] - }, - { - "teal": 334, - "source": 60, - "pc": [ - 344 - ] - }, - { - "teal": 339, - "source": 62, - "pc": [ - 345, - 346 - ] - }, - { - "teal": 340, - "source": 62, - "pc": [ - 347, - 348 - ] - }, - { - "teal": 341, - "source": 62, - "pc": [ - 349, - 350 - ] - }, - { - "teal": 342, - "source": 62, - "pc": [ - 351 - ] - }, - { - "teal": 343, - "source": 62, - "pc": [ - 352 - ] - }, - { - "teal": 344, - "source": 62, - "pc": [ - 353, - 354, - 355 - ] - }, - { - "teal": 349, - "source": 63, - "pc": [ - 356, - 357 - ] - }, - { - "teal": 350, - "source": 63, - "pc": [ - 358, - 359, - 360 - ] - }, - { - "teal": 351, - "source": 62, - "pc": [ - 361, - 362, - 363 - ] - }, - { - "teal": 356, - "source": 65, - "pc": [ - 364, - 365 - ] - }, - { - "teal": 357, - "source": 65, - "pc": [ - 366, - 367 - ] - }, - { - "teal": 358, - "source": 65, - "pc": [ - 368 - ] - }, - { - "teal": 359, - "source": 65, - "pc": [ - 369 - ] - }, - { - "teal": 360, - "source": 65, - "pc": [ - 370 - ] - }, - { - "teal": 361, - "source": 65, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 362, - "source": 65, - "pc": [ - 373 - ] - }, - { - "teal": 363, - "source": 65, - "pc": [ - 374 - ] - }, - { - "teal": 366, - "source": 65, - "errorMessage": "failed to cast this.txnGroup[this.txn.groupIndex - 1] to pay", - "pc": [ - 375 - ] - }, - { - "teal": 367, - "source": 65, - "pc": [ - 376, - 377, - 378 - ] - }, - { - "teal": 370, - "source": 54, - "pc": [ - 379 - ] - }, - { - "teal": 375, - "source": 76, - "pc": [ - 380, - 381, - 382 - ] - }, - { - "teal": 376, - "source": 76, - "pc": [ - 383 - ] - }, - { - "teal": 377, - "source": 76, - "pc": [ - 384 - ] - }, - { - "teal": 378, - "source": 76, - "pc": [ - 385 - ] - }, - { - "teal": 379, - "source": 76, - "pc": [ - 386 - ] - }, - { - "teal": 382, - "source": 76, - "errorMessage": "argument 0 (boxIndex) for deleteWhitelist must be a uint16", - "pc": [ - 387 - ] - }, - { - "teal": 383, - "source": 76, - "pc": [ - 388 - ] - }, - { - "teal": 386, - "source": 76, - "pc": [ - 389, - 390, - 391 - ] - }, - { - "teal": 387, - "source": 76, - "pc": [ - 392, - 393, - 394 - ] - }, - { - "teal": 390, - "source": 76, - "pc": [ - 395, - 396, - 397 - ] - }, - { - "teal": 391, - "source": 76, - "pc": [ - 398 - ] - }, - { - "teal": 392, - "source": 76, - "pc": [ - 399 - ] - }, - { - "teal": 401, - "source": 76, - "pc": [ - 400, - 401, - 402 - ] - }, - { - "teal": 404, - "source": 76, - "pc": [ - 403 - ] - }, - { - "teal": 405, - "source": 76, - "pc": [ - 404 - ] - }, - { - "teal": 409, - "source": 77, - "pc": [ - 405, - 406 - ] - }, - { - "teal": 410, - "source": 77, - "pc": [ - 407, - 408 - ] - }, - { - "teal": 411, - "source": 77, - "pc": [ - 409 - ] - }, - { - "teal": 412, - "source": 77, - "pc": [ - 410, - 411 - ] - }, - { - "teal": 416, - "source": 78, - "pc": [ - 412 - ] - }, - { - "teal": 417, - "source": 78, - "pc": [ - 413 - ] - }, - { - "teal": 418, - "source": 78, - "pc": [ - 414 - ] - }, - { - "teal": 419, - "source": 78, - "pc": [ - 415, - 416 - ] - }, - { - "teal": 420, - "source": 78, - "pc": [ - 417, - 418, - 419 - ] - }, - { - "teal": 421, - "source": 78, - "pc": [ - 420, - 421 - ] - }, - { - "teal": 422, - "source": 78, - "pc": [ - 422 - ] - }, - { - "teal": 423, - "source": 78, - "pc": [ - 423, - 424, - 425 - ] - }, - { - "teal": 424, - "source": 78, - "pc": [ - 426, - 427, - 428 - ] - }, - { - "teal": 425, - "source": 78, - "pc": [ - 429, - 430 - ] - }, - { - "teal": 426, - "source": 78, - "pc": [ - 431 - ] - }, - { - "teal": 427, - "source": 78, - "pc": [ - 432 - ] - }, - { - "teal": 428, - "source": 78, - "pc": [ - 433 - ] - }, - { - "teal": 429, - "source": 78, - "pc": [ - 434, - 435, - 436 - ] - }, - { - "teal": 430, - "source": 78, - "pc": [ - 437 - ] - }, - { - "teal": 431, - "source": 78, - "pc": [ - 438 - ] - }, - { - "teal": 432, - "source": 78, - "pc": [ - 439, - 440, - 441 - ] - }, - { - "teal": 433, - "source": 78, - "pc": [ - 442 - ] - }, - { - "teal": 434, - "source": 78, - "pc": [ - 443 - ] - }, - { - "teal": 435, - "source": 78, - "pc": [ - 444, - 445 - ] - }, - { - "teal": 439, - "source": 80, - "pc": [ - 446, - 447 - ] - }, - { - "teal": 440, - "source": 80, - "pc": [ - 448 - ] - }, - { - "teal": 444, - "source": 82, - "pc": [ - 449, - 450 - ] - }, - { - "teal": 445, - "source": 82, - "pc": [ - 451, - 452, - 453 - ] - }, - { - "teal": 446, - "source": 76, - "pc": [ - 454 - ] - }, - { - "teal": 451, - "source": 93, - "pc": [ - 455, - 456, - 457 - ] - }, - { - "teal": 452, - "source": 93, - "pc": [ - 458 - ] - }, - { - "teal": 455, - "source": 93, - "pc": [ - 459, - 460, - 461 - ] - }, - { - "teal": 456, - "source": 93, - "pc": [ - 462 - ] - }, - { - "teal": 459, - "source": 93, - "pc": [ - 463, - 464, - 465 - ] - }, - { - "teal": 460, - "source": 93, - "pc": [ - 466 - ] - }, - { - "teal": 461, - "source": 93, - "pc": [ - 467 - ] - }, - { - "teal": 462, - "source": 93, - "pc": [ - 468 - ] - }, - { - "teal": 463, - "source": 93, - "pc": [ - 469 - ] - }, - { - "teal": 466, - "source": 93, - "errorMessage": "argument 2 (boxIndex) for deleteAppFromWhitelist must be a uint16", - "pc": [ - 470 - ] - }, - { - "teal": 467, - "source": 93, - "pc": [ - 471 - ] - }, - { - "teal": 470, - "source": 93, - "pc": [ - 472, - 473, - 474 - ] - }, - { - "teal": 471, - "source": 93, - "pc": [ - 475, - 476, - 477 - ] - }, - { - "teal": 474, - "source": 93, - "pc": [ - 478, - 479, - 480 - ] - }, - { - "teal": 475, - "source": 93, - "pc": [ - 481 - ] - }, - { - "teal": 476, - "source": 93, - "pc": [ - 482 - ] - }, - { - "teal": 486, - "source": 93, - "pc": [ - 483, - 484, - 485 - ] - }, - { - "teal": 489, - "source": 93, - "pc": [ - 486 - ] - }, - { - "teal": 490, - "source": 93, - "pc": [ - 487, - 488 - ] - }, - { - "teal": 494, - "source": 94, - "pc": [ - 489, - 490 - ] - }, - { - "teal": 495, - "source": 94, - "pc": [ - 491, - 492 - ] - }, - { - "teal": 496, - "source": 94, - "pc": [ - 493 - ] - }, - { - "teal": 497, - "source": 94, - "pc": [ - 494, - 495 - ] - }, - { - "teal": 501, - "source": 95, - "pc": [ - 496 - ] - }, - { - "teal": 502, - "source": 95, - "pc": [ - 497 - ] - }, - { - "teal": 503, - "source": 95, - "pc": [ - 498 - ] - }, - { - "teal": 504, - "source": 95, - "pc": [ - 499, - 500 - ] - }, - { - "teal": 505, - "source": 95, - "pc": [ - 501, - 502, - 503 - ] - }, - { - "teal": 506, - "source": 95, - "pc": [ - 504, - 505 - ] - }, - { - "teal": 507, - "source": 95, - "pc": [ - 506 - ] - }, - { - "teal": 508, - "source": 95, - "pc": [ - 507, - 508, - 509 - ] - }, - { - "teal": 509, - "source": 95, - "pc": [ - 510, - 511, - 512 - ] - }, - { - "teal": 510, - "source": 95, - "pc": [ - 513, - 514 - ] - }, - { - "teal": 511, - "source": 95, - "pc": [ - 515 - ] - }, - { - "teal": 512, - "source": 95, - "pc": [ - 516 - ] - }, - { - "teal": 513, - "source": 95, - "pc": [ - 517 - ] - }, - { - "teal": 514, - "source": 95, - "pc": [ - 518, - 519, - 520 - ] - }, - { - "teal": 515, - "source": 95, - "pc": [ - 521 - ] - }, - { - "teal": 516, - "source": 95, - "pc": [ - 522 - ] - }, - { - "teal": 517, - "source": 95, - "pc": [ - 523, - 524, - 525 - ] - }, - { - "teal": 518, - "source": 95, - "pc": [ - 526 - ] - }, - { - "teal": 519, - "source": 95, - "pc": [ - 527 - ] - }, - { - "teal": 520, - "source": 95, - "pc": [ - 528, - 529 - ] - }, - { - "teal": 524, - "source": 97, - "pc": [ - 530, - 531 - ] - }, - { - "teal": 525, - "source": 97, - "pc": [ - 532 - ] - }, - { - "teal": 528, - "source": 97, - "errorMessage": "box value does not exist: this.whitelist(whitelist).value", - "pc": [ - 533 - ] - }, - { - "teal": 529, - "source": 97, - "pc": [ - 534, - 535, - 536 - ] - }, - { - "teal": 530, - "source": 97, - "pc": [ - 537 - ] - }, - { - "teal": 531, - "source": 97, - "pc": [ - 538, - 539 - ] - }, - { - "teal": 532, - "source": 97, - "pc": [ - 540 - ] - }, - { - "teal": 533, - "source": 97, - "pc": [ - 541 - ] - }, - { - "teal": 534, - "source": 97, - "pc": [ - 542, - 543 - ] - }, - { - "teal": 535, - "source": 97, - "pc": [ - 544, - 545 - ] - }, - { - "teal": 536, - "source": 97, - "pc": [ - 546, - 547 - ] - }, - { - "teal": 537, - "source": 97, - "pc": [ - 548, - 549 - ] - }, - { - "teal": 538, - "source": 97, - "pc": [ - 550 - ] - }, - { - "teal": 541, - "source": 97, - "errorMessage": "box value does not exist: this.whitelist(whitelist).value", - "pc": [ - 551 - ] - }, - { - "teal": 542, - "source": 97, - "pc": [ - 552, - 553, - 554 - ] - }, - { - "teal": 543, - "source": 97, - "pc": [ - 555 - ] - }, - { - "teal": 544, - "source": 97, - "pc": [ - 556, - 557 - ] - }, - { - "teal": 545, - "source": 97, - "pc": [ - 558 - ] - }, - { - "teal": 546, - "source": 97, - "pc": [ - 559, - 560 - ] - }, - { - "teal": 547, - "source": 97, - "pc": [ - 561 - ] - }, - { - "teal": 550, - "source": 97, - "errorMessage": "box value does not exist: this.whitelist(whitelist).value", - "pc": [ - 562 - ] - }, - { - "teal": 551, - "source": 97, - "pc": [ - 563, - 564, - 565 - ] - }, - { - "teal": 552, - "source": 97, - "pc": [ - 566 - ] - }, - { - "teal": 553, - "source": 97, - "pc": [ - 567 - ] - }, - { - "teal": 554, - "source": 97, - "pc": [ - 568, - 569 - ] - }, - { - "teal": 555, - "source": 97, - "pc": [ - 570, - 571 - ] - }, - { - "teal": 556, - "source": 97, - "pc": [ - 572 - ] - }, - { - "teal": 557, - "source": 97, - "pc": [ - 573 - ] - }, - { - "teal": 558, - "source": 97, - "pc": [ - 574 - ] - }, - { - "teal": 559, - "source": 97, - "pc": [ - 575 - ] - }, - { - "teal": 560, - "source": 97, - "pc": [ - 576 - ] - }, - { - "teal": 561, - "source": 97, - "pc": [ - 577 - ] - }, - { - "teal": 562, - "source": 97, - "pc": [ - 578, - 579 - ] - }, - { - "teal": 563, - "source": 97, - "pc": [ - 580 - ] - }, - { - "teal": 566, - "source": 97, - "errorMessage": "box value does not exist: this.whitelist(whitelist).value", - "pc": [ - 581 - ] - }, - { - "teal": 567, - "source": 97, - "pc": [ - 582, - 583, - 584 - ] - }, - { - "teal": 568, - "source": 97, - "pc": [ - 585, - 586 - ] - }, - { - "teal": 569, - "source": 97, - "pc": [ - 587, - 588 - ] - }, - { - "teal": 570, - "source": 97, - "pc": [ - 589 - ] - }, - { - "teal": 571, - "source": 97, - "pc": [ - 590 - ] - }, - { - "teal": 572, - "source": 97, - "pc": [ - 591 - ] - }, - { - "teal": 573, - "source": 97, - "pc": [ - 592 - ] - }, - { - "teal": 574, - "source": 97, - "pc": [ - 593, - 594 - ] - }, - { - "teal": 575, - "source": 97, - "pc": [ - 595 - ] - }, - { - "teal": 576, - "source": 97, - "pc": [ - 596 - ] - }, - { - "teal": 577, - "source": 97, - "pc": [ - 597 - ] - }, - { - "teal": 578, - "source": 97, - "pc": [ - 598 - ] - }, - { - "teal": 579, - "source": 97, - "pc": [ - 599 - ] - }, - { - "teal": 580, - "source": 97, - "pc": [ - 600 - ] - }, - { - "teal": 581, - "source": 97, - "pc": [ - 601 - ] - }, - { - "teal": 582, - "source": 97, - "pc": [ - 602 - ] - }, - { - "teal": 583, - "source": 97, - "pc": [ - 603 - ] - }, - { - "teal": 584, - "source": 97, - "pc": [ - 604, - 605, - 606 - ] - }, - { - "teal": 585, - "source": 97, - "pc": [ - 607 - ] - }, - { - "teal": 586, - "source": 97, - "pc": [ - 608 - ] - }, - { - "teal": 587, - "source": 97, - "pc": [ - 609 - ] - }, - { - "teal": 588, - "source": 97, - "pc": [ - 610, - 611 - ] - }, - { - "teal": 592, - "source": 99, - "pc": [ - 612, - 613 - ] - }, - { - "teal": 593, - "source": 99, - "pc": [ - 614, - 615 - ] - }, - { - "teal": 594, - "source": 99, - "pc": [ - 616, - 617 - ] - }, - { - "teal": 595, - "source": 99, - "pc": [ - 618, - 619, - 620 - ] - }, - { - "teal": 596, - "source": 99, - "pc": [ - 621 - ] - }, - { - "teal": 597, - "source": 99, - "pc": [ - 622, - 623 - ] - }, - { - "teal": 598, - "source": 99, - "pc": [ - 624 - ] - }, - { - "teal": 599, - "source": 99, - "pc": [ - 625 - ] - }, - { - "teal": 603, - "source": 101, - "pc": [ - 626, - 627 - ] - }, - { - "teal": 604, - "source": 101, - "pc": [ - 628, - 629, - 630 - ] - }, - { - "teal": 605, - "source": 93, - "pc": [ - 631 - ] - }, - { - "teal": 608, - "source": 6, - "pc": [ - 632 - ] - }, - { - "teal": 609, - "source": 6, - "pc": [ - 633 - ] - }, - { - "teal": 612, - "source": 6, - "pc": [ - 634, - 635, - 636, - 637, - 638, - 639 - ] - }, - { - "teal": 613, - "source": 6, - "pc": [ - 640, - 641, - 642 - ] - }, - { - "teal": 614, - "source": 6, - "pc": [ - 643, - 644, - 645, - 646 - ] - }, - { - "teal": 617, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 647 - ] - }, - { - "teal": 620, - "source": 6, - "pc": [ - 648, - 649, - 650, - 651, - 652, - 653 - ] - }, - { - "teal": 621, - "source": 6, - "pc": [ - 654, - 655, - 656, - 657, - 658, - 659 - ] - }, - { - "teal": 622, - "source": 6, - "pc": [ - 660, - 661, - 662, - 663, - 664, - 665 - ] - }, - { - "teal": 623, - "source": 6, - "pc": [ - 666, - 667, - 668, - 669, - 670, - 671 - ] - }, - { - "teal": 624, - "source": 6, - "pc": [ - 672, - 673, - 674 - ] - }, - { - "teal": 625, - "source": 6, - "pc": [ - 675, - 676, - 677, - 678, - 679, - 680, - 681, - 682, - 683, - 684 - ] - }, - { - "teal": 628, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 685 - ] - }, - { - "teal": 631, - "source": 6, - "pc": [ - 686, - 687, - 688 - ] - }, - { - "teal": 632, - "source": 6, - "pc": [ - 689, - 690 - ] - }, - { - "teal": 633, - "source": 6, - "pc": [ - 691, - 692 - ] - }, - { - "teal": 634, - "source": 6, - "pc": [ - 693 - ] - }, - { - "teal": 635, - "source": 6, - "pc": [ - 694, - 695 - ] - }, - { - "teal": 636, - "source": 6, - "pc": [ - 696, - 697 - ] - }, - { - "teal": 637, - "source": 6, - "pc": [ - 698 - ] - }, - { - "teal": 640, - "source": 6, - "pc": [ - 699, - 700, - 701 - ] - }, - { - "teal": 641, - "source": 6, - "pc": [ - 702, - 703 - ] - }, - { - "teal": 642, - "source": 6, - "pc": [ - 704, - 705 - ] - }, - { - "teal": 643, - "source": 6, - "pc": [ - 706 - ] - }, - { - "teal": 644, - "source": 6, - "pc": [ - 707, - 708 - ] - }, - { - "teal": 645, - "source": 6, - "pc": [ - 709, - 710 - ] - }, - { - "teal": 646, - "source": 6, - "pc": [ - 711 - ] - }, - { - "teal": 647, - "source": 6, - "pc": [ - 712 - ] - }, - { - "teal": 648, - "source": 6, - "pc": [ - 713, - 714 - ] - }, - { - "teal": 649, - "source": 6, - "pc": [ - 715 - ] - }, - { - "teal": 650, - "source": 6, - "pc": [ - 716 - ] - }, - { - "teal": 651, - "source": 6, - "pc": [ - 717 - ] - }, - { - "teal": 652, - "source": 6, - "pc": [ - 718, - 719, - 720 - ] - }, - { - "teal": 653, - "source": 6, - "pc": [ - 721, - 722 - ] - }, - { - "teal": 654, - "source": 6, - "pc": [ - 723, - 724 - ] - }, - { - "teal": 655, - "source": 6, - "pc": [ - 725 - ] - }, - { - "teal": 656, - "source": 6, - "pc": [ - 726 - ] - }, - { - "teal": 657, - "source": 6, - "pc": [ - 727, - 728 - ] - }, - { - "teal": 658, - "source": 6, - "pc": [ - 729, - 730 - ] - }, - { - "teal": 659, - "source": 6, - "pc": [ - 731, - 732 - ] - }, - { - "teal": 660, - "source": 6, - "pc": [ - 733, - 734 - ] - }, - { - "teal": 661, - "source": 6, - "pc": [ - 735 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 6, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "teal": 13, + "source": 6, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 14, + "source": 6, + "pc": [ + 15 + ] + }, + { + "teal": 15, + "source": 6, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 16, + "source": 6, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 6, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 6, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 6, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 6, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 27, + "source": 9, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 35, + "source": 10, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 36, + "source": 11, + "pc": [ + 54, + 55 + ] + }, + { + "teal": 37, + "source": 11, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 38, + "source": 11, + "pc": [ + 58 + ] + }, + { + "teal": 41, + "source": 11, + "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 10, + "pc": [ + 60, + 61 + ] + }, + { + "teal": 45, + "source": 12, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 46, + "source": 12, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 47, + "source": 12, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 48, + "source": 12, + "pc": [ + 68 + ] + }, + { + "teal": 49, + "source": 12, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 50, + "source": 12, + "pc": [ + 71 + ] + }, + { + "teal": 51, + "source": 12, + "pc": [ + 72 + ] + }, + { + "teal": 54, + "source": 12, + "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"amount\",\"expected\":\"this.app.address.minBalance - preMBR\"}", + "pc": [ + 73 + ] + }, + { + "teal": 55, + "source": 9, + "pc": [ + 74 + ] + }, + { + "teal": 59, + "source": 16, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 66, + "source": 17, + "pc": [ + 78 + ] + }, + { + "teal": 67, + "source": 17, + "pc": [ + 79 + ] + }, + { + "teal": 68, + "source": 17, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 72, + "source": 18, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 73, + "source": 18, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 77, + "source": 19, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 78, + "source": 19, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 79, + "source": 19, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 80, + "source": 19, + "pc": [ + 92 + ] + }, + { + "teal": 81, + "source": 19, + "pc": [ + 93 + ] + }, + { + "teal": 82, + "source": 19, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 85, + "source": 17, + "pc": [ + 96 + ] + }, + { + "teal": 86, + "source": 17, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 89, + "source": 17, + "pc": [ + 99 + ] + }, + { + "teal": 90, + "source": 16, + "pc": [ + 100 + ] + }, + { + "teal": 95, + "source": 32, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 96, + "source": 32, + "pc": [ + 103 + ] + }, + { + "teal": 97, + "source": 32, + "pc": [ + 104 + ] + }, + { + "teal": 98, + "source": 32, + "pc": [ + 105 + ] + }, + { + "teal": 99, + "source": 32, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 100, + "source": 32, + "pc": [ + 108 + ] + }, + { + "teal": 101, + "source": 32, + "pc": [ + 109 + ] + }, + { + "teal": 104, + "source": 32, + "errorMessage": "argument 0 (payment) for addAppToWhiteList must be a pay transaction", + "pc": [ + 110 + ] + }, + { + "teal": 107, + "source": 32, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 108, + "source": 32, + "pc": [ + 114 + ] + }, + { + "teal": 111, + "source": 32, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 112, + "source": 32, + "pc": [ + 118 + ] + }, + { + "teal": 113, + "source": 32, + "pc": [ + 119 + ] + }, + { + "teal": 114, + "source": 32, + "pc": [ + 120 + ] + }, + { + "teal": 115, + "source": 32, + "pc": [ + 121 + ] + }, + { + "teal": 118, + "source": 32, + "errorMessage": "argument 2 (boxIndex) for addAppToWhiteList must be a uint16", + "pc": [ + 122 + ] + }, + { + "teal": 119, + "source": 32, + "pc": [ + 123 + ] + }, + { + "teal": 122, + "source": 32, + "pc": [ + 124, + 125, + 126 + ] + }, + { + "teal": 123, + "source": 32, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 126, + "source": 32, + "pc": [ + 130, + 131, + 132 + ] + }, + { + "teal": 127, + "source": 32, + "pc": [ + 133 + ] + }, + { + "teal": 128, + "source": 32, + "pc": [ + 134 + ] + }, + { + "teal": 139, + "source": 32, + "pc": [ + 135, + 136, + 137 + ] + }, + { + "teal": 142, + "source": 32, + "pc": [ + 138 + ] + }, + { + "teal": 143, + "source": 32, + "pc": [ + 139, + 140 + ] + }, + { + "teal": 147, + "source": 33, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 148, + "source": 33, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 149, + "source": 33, + "pc": [ + 145 + ] + }, + { + "teal": 150, + "source": 33, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 154, + "source": 34, + "pc": [ + 148 + ] + }, + { + "teal": 155, + "source": 34, + "pc": [ + 149 + ] + }, + { + "teal": 156, + "source": 34, + "pc": [ + 150 + ] + }, + { + "teal": 157, + "source": 34, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 158, + "source": 34, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 159, + "source": 34, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 160, + "source": 34, + "pc": [ + 158 + ] + }, + { + "teal": 161, + "source": 34, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 162, + "source": 34, + "pc": [ + 162, + 163, + 164 + ] + }, + { + "teal": 163, + "source": 34, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 164, + "source": 34, + "pc": [ + 167 + ] + }, + { + "teal": 165, + "source": 34, + "pc": [ + 168 + ] + }, + { + "teal": 166, + "source": 34, + "pc": [ + 169 + ] + }, + { + "teal": 167, + "source": 34, + "pc": [ + 170, + 171, + 172 + ] + }, + { + "teal": 168, + "source": 34, + "pc": [ + 173 + ] + }, + { + "teal": 169, + "source": 34, + "pc": [ + 174 + ] + }, + { + "teal": 170, + "source": 34, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 171, + "source": 34, + "pc": [ + 178 + ] + }, + { + "teal": 172, + "source": 34, + "pc": [ + 179 + ] + }, + { + "teal": 173, + "source": 34, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 178, + "source": 36, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 179, + "source": 36, + "pc": [ + 184 + ] + }, + { + "teal": 180, + "source": 36, + "pc": [ + 185 + ] + }, + { + "teal": 181, + "source": 36, + "pc": [ + 186 + ] + }, + { + "teal": 182, + "source": 36, + "pc": [ + 187, + 188, + 189 + ] + }, + { + "teal": 187, + "source": 37, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 188, + "source": 37, + "pc": [ + 192 + ] + }, + { + "teal": 191, + "source": 37, + "errorMessage": "box value does not exist: this.whitelist(whitelist).value", + "pc": [ + 193 + ] + }, + { + "teal": 192, + "source": 37, + "pc": [ + 194, + 195, + 196 + ] + }, + { + "teal": 193, + "source": 37, + "pc": [ + 197, + 198 + ] + }, + { + "teal": 194, + "source": 37, + "pc": [ + 199 + ] + }, + { + "teal": 195, + "source": 37, + "pc": [ + 200 + ] + }, + { + "teal": 196, + "source": 37, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 197, + "source": 37, + "pc": [ + 203 + ] + }, + { + "teal": 198, + "source": 37, + "pc": [ + 204 + ] + }, + { + "teal": 199, + "source": 37, + "pc": [ + 205 + ] + }, + { + "teal": 200, + "source": 37, + "pc": [ + 206 + ] + }, + { + "teal": 201, + "source": 37, + "pc": [ + 207 + ] + }, + { + "teal": 202, + "source": 37, + "pc": [ + 208 + ] + }, + { + "teal": 203, + "source": 37, + "pc": [ + 209 + ] + }, + { + "teal": 204, + "source": 37, + "pc": [ + 210 + ] + }, + { + "teal": 205, + "source": 37, + "pc": [ + 211 + ] + }, + { + "teal": 206, + "source": 37, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 207, + "source": 37, + "pc": [ + 215 + ] + }, + { + "teal": 208, + "source": 37, + "pc": [ + 216 + ] + }, + { + "teal": 209, + "source": 37, + "pc": [ + 217 + ] + }, + { + "teal": 210, + "source": 36, + "pc": [ + 218, + 219, + 220 + ] + }, + { + "teal": 215, + "source": 39, + "pc": [ + 221, + 222 + ] + }, + { + "teal": 216, + "source": 39, + "pc": [ + 223 + ] + }, + { + "teal": 217, + "source": 39, + "pc": [ + 224, + 225 + ] + }, + { + "teal": 221, + "source": 40, + "pc": [ + 226, + 227 + ] + }, + { + "teal": 222, + "source": 40, + "pc": [ + 228 + ] + }, + { + "teal": 223, + "source": 40, + "pc": [ + 229 + ] + }, + { + "teal": 224, + "source": 40, + "pc": [ + 230 + ] + }, + { + "teal": 225, + "source": 40, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 226, + "source": 40, + "pc": [ + 233 + ] + }, + { + "teal": 227, + "source": 40, + "pc": [ + 234 + ] + }, + { + "teal": 228, + "source": 40, + "pc": [ + 235 + ] + }, + { + "teal": 229, + "source": 40, + "pc": [ + 236 + ] + }, + { + "teal": 230, + "source": 40, + "pc": [ + 237 + ] + }, + { + "teal": 231, + "source": 40, + "pc": [ + 238, + 239, + 240 + ] + }, + { + "teal": 232, + "source": 40, + "pc": [ + 241 + ] + }, + { + "teal": 233, + "source": 40, + "pc": [ + 242 + ] + }, + { + "teal": 234, + "source": 40, + "pc": [ + 243 + ] + }, + { + "teal": 239, + "source": 43, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 240, + "source": 43, + "pc": [ + 246, + 247 + ] + }, + { + "teal": 241, + "source": 43, + "pc": [ + 248, + 249, + 250 + ] + }, + { + "teal": 242, + "source": 32, + "pc": [ + 251 + ] + }, + { + "teal": 247, + "source": 54, + "pc": [ + 252, + 253, + 254 + ] + }, + { + "teal": 248, + "source": 54, + "pc": [ + 255, + 256, + 257 + ] + }, + { + "teal": 251, + "source": 54, + "pc": [ + 258, + 259, + 260 + ] + }, + { + "teal": 252, + "source": 54, + "pc": [ + 261 + ] + }, + { + "teal": 253, + "source": 54, + "pc": [ + 262 + ] + }, + { + "teal": 254, + "source": 54, + "pc": [ + 263 + ] + }, + { + "teal": 255, + "source": 54, + "pc": [ + 264 + ] + }, + { + "teal": 258, + "source": 54, + "errorMessage": "argument 1 (boxIndex) for setAppWhitelist must be a uint16", + "pc": [ + 265 + ] + }, + { + "teal": 259, + "source": 54, + "pc": [ + 266 + ] + }, + { + "teal": 262, + "source": 54, + "pc": [ + 267, + 268, + 269 + ] + }, + { + "teal": 263, + "source": 54, + "pc": [ + 270, + 271, + 272 + ] + }, + { + "teal": 266, + "source": 54, + "pc": [ + 273, + 274, + 275 + ] + }, + { + "teal": 267, + "source": 54, + "pc": [ + 276 + ] + }, + { + "teal": 268, + "source": 54, + "pc": [ + 277 + ] + }, + { + "teal": 278, + "source": 54, + "pc": [ + 278, + 279, + 280 + ] + }, + { + "teal": 281, + "source": 54, + "pc": [ + 281 + ] + }, + { + "teal": 282, + "source": 54, + "pc": [ + 282 + ] + }, + { + "teal": 286, + "source": 55, + "pc": [ + 283, + 284 + ] + }, + { + "teal": 287, + "source": 55, + "pc": [ + 285, + 286 + ] + }, + { + "teal": 288, + "source": 55, + "pc": [ + 287 + ] + }, + { + "teal": 289, + "source": 55, + "pc": [ + 288, + 289 + ] + }, + { + "teal": 293, + "source": 56, + "pc": [ + 290 + ] + }, + { + "teal": 294, + "source": 56, + "pc": [ + 291 + ] + }, + { + "teal": 295, + "source": 56, + "pc": [ + 292 + ] + }, + { + "teal": 296, + "source": 56, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 297, + "source": 56, + "pc": [ + 295, + 296, + 297 + ] + }, + { + "teal": 298, + "source": 56, + "pc": [ + 298, + 299 + ] + }, + { + "teal": 299, + "source": 56, + "pc": [ + 300 + ] + }, + { + "teal": 300, + "source": 56, + "pc": [ + 301, + 302, + 303 + ] + }, + { + "teal": 301, + "source": 56, + "pc": [ + 304, + 305, + 306 + ] + }, + { + "teal": 302, + "source": 56, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 303, + "source": 56, + "pc": [ + 309 + ] + }, + { + "teal": 304, + "source": 56, + "pc": [ + 310 + ] + }, + { + "teal": 305, + "source": 56, + "pc": [ + 311 + ] + }, + { + "teal": 306, + "source": 56, + "pc": [ + 312, + 313, + 314 + ] + }, + { + "teal": 307, + "source": 56, + "pc": [ + 315 + ] + }, + { + "teal": 308, + "source": 56, + "pc": [ + 316 + ] + }, + { + "teal": 309, + "source": 56, + "pc": [ + 317, + 318, + 319 + ] + }, + { + "teal": 310, + "source": 56, + "pc": [ + 320 + ] + }, + { + "teal": 311, + "source": 56, + "pc": [ + 321 + ] + }, + { + "teal": 312, + "source": 56, + "pc": [ + 322, + 323 + ] + }, + { + "teal": 316, + "source": 58, + "pc": [ + 324, + 325 + ] + }, + { + "teal": 317, + "source": 58, + "pc": [ + 326 + ] + }, + { + "teal": 321, + "source": 60, + "pc": [ + 327, + 328 + ] + }, + { + "teal": 322, + "source": 60, + "pc": [ + 329 + ] + }, + { + "teal": 323, + "source": 60, + "pc": [ + 330 + ] + }, + { + "teal": 324, + "source": 60, + "pc": [ + 331 + ] + }, + { + "teal": 325, + "source": 60, + "pc": [ + 332, + 333 + ] + }, + { + "teal": 326, + "source": 60, + "pc": [ + 334 + ] + }, + { + "teal": 327, + "source": 60, + "pc": [ + 335 + ] + }, + { + "teal": 328, + "source": 60, + "pc": [ + 336 + ] + }, + { + "teal": 329, + "source": 60, + "pc": [ + 337 + ] + }, + { + "teal": 330, + "source": 60, + "pc": [ + 338 + ] + }, + { + "teal": 331, + "source": 60, + "pc": [ + 339, + 340, + 341 + ] + }, + { + "teal": 332, + "source": 60, + "pc": [ + 342 + ] + }, + { + "teal": 333, + "source": 60, + "pc": [ + 343 + ] + }, + { + "teal": 334, + "source": 60, + "pc": [ + 344 + ] + }, + { + "teal": 339, + "source": 62, + "pc": [ + 345, + 346 + ] + }, + { + "teal": 340, + "source": 62, + "pc": [ + 347, + 348 + ] + }, + { + "teal": 341, + "source": 62, + "pc": [ + 349, + 350 + ] + }, + { + "teal": 342, + "source": 62, + "pc": [ + 351 + ] + }, + { + "teal": 343, + "source": 62, + "pc": [ + 352 + ] + }, + { + "teal": 344, + "source": 62, + "pc": [ + 353, + 354, + 355 + ] + }, + { + "teal": 349, + "source": 63, + "pc": [ + 356, + 357 + ] + }, + { + "teal": 350, + "source": 63, + "pc": [ + 358, + 359, + 360 + ] + }, + { + "teal": 351, + "source": 62, + "pc": [ + 361, + 362, + 363 + ] + }, + { + "teal": 356, + "source": 65, + "pc": [ + 364, + 365 + ] + }, + { + "teal": 357, + "source": 65, + "pc": [ + 366, + 367 + ] + }, + { + "teal": 358, + "source": 65, + "pc": [ + 368 + ] + }, + { + "teal": 359, + "source": 65, + "pc": [ + 369 + ] + }, + { + "teal": 360, + "source": 65, + "pc": [ + 370 + ] + }, + { + "teal": 361, + "source": 65, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 362, + "source": 65, + "pc": [ + 373 + ] + }, + { + "teal": 363, + "source": 65, + "pc": [ + 374 + ] + }, + { + "teal": 366, + "source": 65, + "errorMessage": "failed to cast this.txnGroup[this.txn.groupIndex - 1] to pay", + "pc": [ + 375 + ] + }, + { + "teal": 367, + "source": 65, + "pc": [ + 376, + 377, + 378 + ] + }, + { + "teal": 370, + "source": 54, + "pc": [ + 379 + ] + }, + { + "teal": 375, + "source": 76, + "pc": [ + 380, + 381, + 382 + ] + }, + { + "teal": 376, + "source": 76, + "pc": [ + 383 + ] + }, + { + "teal": 377, + "source": 76, + "pc": [ + 384 + ] + }, + { + "teal": 378, + "source": 76, + "pc": [ + 385 + ] + }, + { + "teal": 379, + "source": 76, + "pc": [ + 386 + ] + }, + { + "teal": 382, + "source": 76, + "errorMessage": "argument 0 (boxIndex) for deleteWhitelist must be a uint16", + "pc": [ + 387 + ] + }, + { + "teal": 383, + "source": 76, + "pc": [ + 388 + ] + }, + { + "teal": 386, + "source": 76, + "pc": [ + 389, + 390, + 391 + ] + }, + { + "teal": 387, + "source": 76, + "pc": [ + 392, + 393, + 394 + ] + }, + { + "teal": 390, + "source": 76, + "pc": [ + 395, + 396, + 397 + ] + }, + { + "teal": 391, + "source": 76, + "pc": [ + 398 + ] + }, + { + "teal": 392, + "source": 76, + "pc": [ + 399 + ] + }, + { + "teal": 401, + "source": 76, + "pc": [ + 400, + 401, + 402 + ] + }, + { + "teal": 404, + "source": 76, + "pc": [ + 403 + ] + }, + { + "teal": 405, + "source": 76, + "pc": [ + 404 + ] + }, + { + "teal": 409, + "source": 77, + "pc": [ + 405, + 406 + ] + }, + { + "teal": 410, + "source": 77, + "pc": [ + 407, + 408 + ] + }, + { + "teal": 411, + "source": 77, + "pc": [ + 409 + ] + }, + { + "teal": 412, + "source": 77, + "pc": [ + 410, + 411 + ] + }, + { + "teal": 416, + "source": 78, + "pc": [ + 412 + ] + }, + { + "teal": 417, + "source": 78, + "pc": [ + 413 + ] + }, + { + "teal": 418, + "source": 78, + "pc": [ + 414 + ] + }, + { + "teal": 419, + "source": 78, + "pc": [ + 415, + 416 + ] + }, + { + "teal": 420, + "source": 78, + "pc": [ + 417, + 418, + 419 + ] + }, + { + "teal": 421, + "source": 78, + "pc": [ + 420, + 421 + ] + }, + { + "teal": 422, + "source": 78, + "pc": [ + 422 + ] + }, + { + "teal": 423, + "source": 78, + "pc": [ + 423, + 424, + 425 + ] + }, + { + "teal": 424, + "source": 78, + "pc": [ + 426, + 427, + 428 + ] + }, + { + "teal": 425, + "source": 78, + "pc": [ + 429, + 430 + ] + }, + { + "teal": 426, + "source": 78, + "pc": [ + 431 + ] + }, + { + "teal": 427, + "source": 78, + "pc": [ + 432 + ] + }, + { + "teal": 428, + "source": 78, + "pc": [ + 433 + ] + }, + { + "teal": 429, + "source": 78, + "pc": [ + 434, + 435, + 436 + ] + }, + { + "teal": 430, + "source": 78, + "pc": [ + 437 + ] + }, + { + "teal": 431, + "source": 78, + "pc": [ + 438 + ] + }, + { + "teal": 432, + "source": 78, + "pc": [ + 439, + 440, + 441 + ] + }, + { + "teal": 433, + "source": 78, + "pc": [ + 442 + ] + }, + { + "teal": 434, + "source": 78, + "pc": [ + 443 + ] + }, + { + "teal": 435, + "source": 78, + "pc": [ + 444, + 445 + ] + }, + { + "teal": 439, + "source": 80, + "pc": [ + 446, + 447 + ] + }, + { + "teal": 440, + "source": 80, + "pc": [ + 448 + ] + }, + { + "teal": 444, + "source": 82, + "pc": [ + 449, + 450 + ] + }, + { + "teal": 445, + "source": 82, + "pc": [ + 451, + 452, + 453 + ] + }, + { + "teal": 446, + "source": 76, + "pc": [ + 454 + ] + }, + { + "teal": 451, + "source": 93, + "pc": [ + 455, + 456, + 457 + ] + }, + { + "teal": 452, + "source": 93, + "pc": [ + 458 + ] + }, + { + "teal": 455, + "source": 93, + "pc": [ + 459, + 460, + 461 + ] + }, + { + "teal": 456, + "source": 93, + "pc": [ + 462 + ] + }, + { + "teal": 459, + "source": 93, + "pc": [ + 463, + 464, + 465 + ] + }, + { + "teal": 460, + "source": 93, + "pc": [ + 466 + ] + }, + { + "teal": 461, + "source": 93, + "pc": [ + 467 + ] + }, + { + "teal": 462, + "source": 93, + "pc": [ + 468 + ] + }, + { + "teal": 463, + "source": 93, + "pc": [ + 469 + ] + }, + { + "teal": 466, + "source": 93, + "errorMessage": "argument 2 (boxIndex) for deleteAppFromWhitelist must be a uint16", + "pc": [ + 470 + ] + }, + { + "teal": 467, + "source": 93, + "pc": [ + 471 + ] + }, + { + "teal": 470, + "source": 93, + "pc": [ + 472, + 473, + 474 + ] + }, + { + "teal": 471, + "source": 93, + "pc": [ + 475, + 476, + 477 + ] + }, + { + "teal": 474, + "source": 93, + "pc": [ + 478, + 479, + 480 + ] + }, + { + "teal": 475, + "source": 93, + "pc": [ + 481 + ] + }, + { + "teal": 476, + "source": 93, + "pc": [ + 482 + ] + }, + { + "teal": 486, + "source": 93, + "pc": [ + 483, + 484, + 485 + ] + }, + { + "teal": 489, + "source": 93, + "pc": [ + 486 + ] + }, + { + "teal": 490, + "source": 93, + "pc": [ + 487, + 488 + ] + }, + { + "teal": 494, + "source": 94, + "pc": [ + 489, + 490 + ] + }, + { + "teal": 495, + "source": 94, + "pc": [ + 491, + 492 + ] + }, + { + "teal": 496, + "source": 94, + "pc": [ + 493 + ] + }, + { + "teal": 497, + "source": 94, + "pc": [ + 494, + 495 + ] + }, + { + "teal": 501, + "source": 95, + "pc": [ + 496 + ] + }, + { + "teal": 502, + "source": 95, + "pc": [ + 497 + ] + }, + { + "teal": 503, + "source": 95, + "pc": [ + 498 + ] + }, + { + "teal": 504, + "source": 95, + "pc": [ + 499, + 500 + ] + }, + { + "teal": 505, + "source": 95, + "pc": [ + 501, + 502, + 503 + ] + }, + { + "teal": 506, + "source": 95, + "pc": [ + 504, + 505 + ] + }, + { + "teal": 507, + "source": 95, + "pc": [ + 506 + ] + }, + { + "teal": 508, + "source": 95, + "pc": [ + 507, + 508, + 509 + ] + }, + { + "teal": 509, + "source": 95, + "pc": [ + 510, + 511, + 512 + ] + }, + { + "teal": 510, + "source": 95, + "pc": [ + 513, + 514 + ] + }, + { + "teal": 511, + "source": 95, + "pc": [ + 515 + ] + }, + { + "teal": 512, + "source": 95, + "pc": [ + 516 + ] + }, + { + "teal": 513, + "source": 95, + "pc": [ + 517 + ] + }, + { + "teal": 514, + "source": 95, + "pc": [ + 518, + 519, + 520 + ] + }, + { + "teal": 515, + "source": 95, + "pc": [ + 521 + ] + }, + { + "teal": 516, + "source": 95, + "pc": [ + 522 + ] + }, + { + "teal": 517, + "source": 95, + "pc": [ + 523, + 524, + 525 + ] + }, + { + "teal": 518, + "source": 95, + "pc": [ + 526 + ] + }, + { + "teal": 519, + "source": 95, + "pc": [ + 527 + ] + }, + { + "teal": 520, + "source": 95, + "pc": [ + 528, + 529 + ] + }, + { + "teal": 524, + "source": 97, + "pc": [ + 530, + 531 + ] + }, + { + "teal": 525, + "source": 97, + "pc": [ + 532 + ] + }, + { + "teal": 528, + "source": 97, + "errorMessage": "box value does not exist: this.whitelist(whitelist).value", + "pc": [ + 533 + ] + }, + { + "teal": 529, + "source": 97, + "pc": [ + 534, + 535, + 536 + ] + }, + { + "teal": 530, + "source": 97, + "pc": [ + 537 + ] + }, + { + "teal": 531, + "source": 97, + "pc": [ + 538, + 539 + ] + }, + { + "teal": 532, + "source": 97, + "pc": [ + 540 + ] + }, + { + "teal": 533, + "source": 97, + "pc": [ + 541 + ] + }, + { + "teal": 534, + "source": 97, + "pc": [ + 542, + 543 + ] + }, + { + "teal": 535, + "source": 97, + "pc": [ + 544, + 545 + ] + }, + { + "teal": 536, + "source": 97, + "pc": [ + 546, + 547 + ] + }, + { + "teal": 537, + "source": 97, + "pc": [ + 548, + 549 + ] + }, + { + "teal": 538, + "source": 97, + "pc": [ + 550 + ] + }, + { + "teal": 541, + "source": 97, + "errorMessage": "box value does not exist: this.whitelist(whitelist).value", + "pc": [ + 551 + ] + }, + { + "teal": 542, + "source": 97, + "pc": [ + 552, + 553, + 554 + ] + }, + { + "teal": 543, + "source": 97, + "pc": [ + 555 + ] + }, + { + "teal": 544, + "source": 97, + "pc": [ + 556, + 557 + ] + }, + { + "teal": 545, + "source": 97, + "pc": [ + 558 + ] + }, + { + "teal": 546, + "source": 97, + "pc": [ + 559, + 560 + ] + }, + { + "teal": 547, + "source": 97, + "pc": [ + 561 + ] + }, + { + "teal": 550, + "source": 97, + "errorMessage": "box value does not exist: this.whitelist(whitelist).value", + "pc": [ + 562 + ] + }, + { + "teal": 551, + "source": 97, + "pc": [ + 563, + 564, + 565 + ] + }, + { + "teal": 552, + "source": 97, + "pc": [ + 566 + ] + }, + { + "teal": 553, + "source": 97, + "pc": [ + 567 + ] + }, + { + "teal": 554, + "source": 97, + "pc": [ + 568, + 569 + ] + }, + { + "teal": 555, + "source": 97, + "pc": [ + 570, + 571 + ] + }, + { + "teal": 556, + "source": 97, + "pc": [ + 572 + ] + }, + { + "teal": 557, + "source": 97, + "pc": [ + 573 + ] + }, + { + "teal": 558, + "source": 97, + "pc": [ + 574 + ] + }, + { + "teal": 559, + "source": 97, + "pc": [ + 575 + ] + }, + { + "teal": 560, + "source": 97, + "pc": [ + 576 + ] + }, + { + "teal": 561, + "source": 97, + "pc": [ + 577 + ] + }, + { + "teal": 562, + "source": 97, + "pc": [ + 578, + 579 + ] + }, + { + "teal": 563, + "source": 97, + "pc": [ + 580 + ] + }, + { + "teal": 566, + "source": 97, + "errorMessage": "box value does not exist: this.whitelist(whitelist).value", + "pc": [ + 581 + ] + }, + { + "teal": 567, + "source": 97, + "pc": [ + 582, + 583, + 584 + ] + }, + { + "teal": 568, + "source": 97, + "pc": [ + 585, + 586 + ] + }, + { + "teal": 569, + "source": 97, + "pc": [ + 587, + 588 + ] + }, + { + "teal": 570, + "source": 97, + "pc": [ + 589 + ] + }, + { + "teal": 571, + "source": 97, + "pc": [ + 590 + ] + }, + { + "teal": 572, + "source": 97, + "pc": [ + 591 + ] + }, + { + "teal": 573, + "source": 97, + "pc": [ + 592 + ] + }, + { + "teal": 574, + "source": 97, + "pc": [ + 593, + 594 + ] + }, + { + "teal": 575, + "source": 97, + "pc": [ + 595 + ] + }, + { + "teal": 576, + "source": 97, + "pc": [ + 596 + ] + }, + { + "teal": 577, + "source": 97, + "pc": [ + 597 + ] + }, + { + "teal": 578, + "source": 97, + "pc": [ + 598 + ] + }, + { + "teal": 579, + "source": 97, + "pc": [ + 599 + ] + }, + { + "teal": 580, + "source": 97, + "pc": [ + 600 + ] + }, + { + "teal": 581, + "source": 97, + "pc": [ + 601 + ] + }, + { + "teal": 582, + "source": 97, + "pc": [ + 602 + ] + }, + { + "teal": 583, + "source": 97, + "pc": [ + 603 + ] + }, + { + "teal": 584, + "source": 97, + "pc": [ + 604, + 605, + 606 + ] + }, + { + "teal": 585, + "source": 97, + "pc": [ + 607 + ] + }, + { + "teal": 586, + "source": 97, + "pc": [ + 608 + ] + }, + { + "teal": 587, + "source": 97, + "pc": [ + 609 + ] + }, + { + "teal": 588, + "source": 97, + "pc": [ + 610, + 611 + ] + }, + { + "teal": 592, + "source": 99, + "pc": [ + 612, + 613 + ] + }, + { + "teal": 593, + "source": 99, + "pc": [ + 614, + 615 + ] + }, + { + "teal": 594, + "source": 99, + "pc": [ + 616, + 617 + ] + }, + { + "teal": 595, + "source": 99, + "pc": [ + 618, + 619, + 620 + ] + }, + { + "teal": 596, + "source": 99, + "pc": [ + 621 + ] + }, + { + "teal": 597, + "source": 99, + "pc": [ + 622, + 623 + ] + }, + { + "teal": 598, + "source": 99, + "pc": [ + 624 + ] + }, + { + "teal": 599, + "source": 99, + "pc": [ + 625 + ] + }, + { + "teal": 603, + "source": 101, + "pc": [ + 626, + 627 + ] + }, + { + "teal": 604, + "source": 101, + "pc": [ + 628, + 629, + 630 + ] + }, + { + "teal": 605, + "source": 93, + "pc": [ + 631 + ] + }, + { + "teal": 608, + "source": 6, + "pc": [ + 632 + ] + }, + { + "teal": 609, + "source": 6, + "pc": [ + 633 + ] + }, + { + "teal": 612, + "source": 6, + "pc": [ + 634, + 635, + 636, + 637, + 638, + 639 + ] + }, + { + "teal": 613, + "source": 6, + "pc": [ + 640, + 641, + 642 + ] + }, + { + "teal": 614, + "source": 6, + "pc": [ + 643, + 644, + 645, + 646 + ] + }, + { + "teal": 617, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 647 + ] + }, + { + "teal": 620, + "source": 6, + "pc": [ + 648, + 649, + 650, + 651, + 652, + 653 + ] + }, + { + "teal": 621, + "source": 6, + "pc": [ + 654, + 655, + 656, + 657, + 658, + 659 + ] + }, + { + "teal": 622, + "source": 6, + "pc": [ + 660, + 661, + 662, + 663, + 664, + 665 + ] + }, + { + "teal": 623, + "source": 6, + "pc": [ + 666, + 667, + 668, + 669, + 670, + 671 + ] + }, + { + "teal": 624, + "source": 6, + "pc": [ + 672, + 673, + 674 + ] + }, + { + "teal": 625, + "source": 6, + "pc": [ + 675, + 676, + 677, + 678, + 679, + 680, + 681, + 682, + 683, + 684 + ] + }, + { + "teal": 628, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 685 + ] + }, + { + "teal": 631, + "source": 6, + "pc": [ + 686, + 687, + 688 + ] + }, + { + "teal": 632, + "source": 6, + "pc": [ + 689, + 690 + ] + }, + { + "teal": 633, + "source": 6, + "pc": [ + 691, + 692 + ] + }, + { + "teal": 634, + "source": 6, + "pc": [ + 693 + ] + }, + { + "teal": 635, + "source": 6, + "pc": [ + 694, + 695 + ] + }, + { + "teal": 636, + "source": 6, + "pc": [ + 696, + 697 + ] + }, + { + "teal": 637, + "source": 6, + "pc": [ + 698 + ] + }, + { + "teal": 640, + "source": 6, + "pc": [ + 699, + 700, + 701 + ] + }, + { + "teal": 641, + "source": 6, + "pc": [ + 702, + 703 + ] + }, + { + "teal": 642, + "source": 6, + "pc": [ + 704, + 705 + ] + }, + { + "teal": 643, + "source": 6, + "pc": [ + 706 + ] + }, + { + "teal": 644, + "source": 6, + "pc": [ + 707, + 708 + ] + }, + { + "teal": 645, + "source": 6, + "pc": [ + 709, + 710 + ] + }, + { + "teal": 646, + "source": 6, + "pc": [ + 711 + ] + }, + { + "teal": 647, + "source": 6, + "pc": [ + 712 + ] + }, + { + "teal": 648, + "source": 6, + "pc": [ + 713, + 714 + ] + }, + { + "teal": 649, + "source": 6, + "pc": [ + 715 + ] + }, + { + "teal": 650, + "source": 6, + "pc": [ + 716 + ] + }, + { + "teal": 651, + "source": 6, + "pc": [ + 717 + ] + }, + { + "teal": 652, + "source": 6, + "pc": [ + 718, + 719, + 720 + ] + }, + { + "teal": 653, + "source": 6, + "pc": [ + 721, + 722 + ] + }, + { + "teal": 654, + "source": 6, + "pc": [ + 723, + 724 + ] + }, + { + "teal": 655, + "source": 6, + "pc": [ + 725 + ] + }, + { + "teal": 656, + "source": 6, + "pc": [ + 726 + ] + }, + { + "teal": 657, + "source": 6, + "pc": [ + 727, + 728 + ] + }, + { + "teal": 658, + "source": 6, + "pc": [ + 729, + 730 + ] + }, + { + "teal": 659, + "source": 6, + "pc": [ + 731, + 732 + ] + }, + { + "teal": 660, + "source": 6, + "pc": [ + 733, + 734 + ] + }, + { + "teal": 661, + "source": 6, + "pc": [ + 735 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2ZXJpZnlNQlJQYXltZW50KHBheW1lbnQ6IFBheVR4biwgcHJlTUJSOiB1aW50NjQpOiB2b2lkCnZlcmlmeU1CUlBheW1lbnQ6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjEwCgkvLyB2ZXJpZnlQYXlUeG4ocGF5bWVudCwgewoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhbW91bnQ6IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSAtIHByZU1CUiwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0yIC8vIHByZU1CUjogdWludDY0CgktCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoicGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UgLSBwcmVNQlIifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHNlbmRNQlJQYXltZW50KHByZU1CUjogdWludDY0KTogdm9pZApzZW5kTUJSUGF5bWVudDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTcKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjE5CgkvLyBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZnJhbWVfZGlnIC0xIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX2FkZEFwcFRvV2hpdGVMaXN0OgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGFkZEFwcFRvV2hpdGVMaXN0IG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGFwcElEOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBib3hJbmRleDogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMiAoYm94SW5kZXgpIGZvciBhZGRBcHBUb1doaXRlTGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZEFwcFRvV2hpdGVMaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHBheSl2b2lkCgljYWxsc3ViIGFkZEFwcFRvV2hpdGVMaXN0CglpbnQgMQoJcmV0dXJuCgovLyBhZGRBcHBUb1doaXRlTGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgcGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLyBBZGQgYXBwIHRvIHdoaXRlbGlzdCBib3gKLy8KLy8gQHBhcmFtIGFyYyAtIFRoZSBBUkMgdGhlIHdoaXRlbGlzdCBjb3JyZXNwb25kcyB0bwovLyBAcGFyYW0gYm94SW5kZXggLSBUaGUgaW5kZXggb2YgdGhlIHdoaXRlbGlzdCBib3ggdG8gYWRkIHRoZSBhcHAgdG8KLy8gQHBhcmFtIGFwcElEIC0gVGhlIGFwcCBJRCB0byBhZGQgdG8gdGhlIHdoaXRlbGlzdAovLyBAcGFyYW0gcGF5bWVudCAtIFRoZSBwYXltZW50IHRyYW5zYWN0aW9uIHRvIGNvdmVyIHRoZSBNQlIgY2hhbmdlCmFkZEFwcFRvV2hpdGVMaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MzMKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM0CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNgoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS5leGlzdHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNwoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5wdXNoKGFwcElEKQoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWZyYW1lX2RpZyAtMyAvLyBhcHBJRDogdWludDY0CglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM5CgkvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdID0gW2FwcElEXQoJZnJhbWVfZGlnIC0zIC8vIGFwcElEOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MAoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZSA9IG5ld1doaXRlbGlzdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWJveF9wdXQKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MwoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHBheW1lbnQsIHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gcGF5bWVudDogUGF5VHhuCgljYWxsc3ViIHZlcmlmeU1CUlBheW1lbnQKCXJldHN1YgoKLy8gc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoqYWJpX3JvdXRlX3NldEFwcFdoaXRlbGlzdDoKCS8vIGFwcElEczogdWludDY0W10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWV4dHJhY3QgMiAwCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGJveEluZGV4KSBmb3Igc2V0QXBwV2hpdGVsaXN0IG11c3QgYmUgYSB1aW50MTYKCWFzc2VydAoJYnRvaQoKCS8vIGFyYzogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoJY2FsbHN1YiBzZXRBcHBXaGl0ZWxpc3QKCWludCAxCglyZXR1cm4KCi8vIHNldEFwcFdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSURzOiB1aW50NjRbXSk6IHZvaWQKLy8KLy8gU2V0cyBhIGFwcCB3aGl0ZWxpc3QgZm9yIHRoZSBzZW5kZXIuIFNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiBhZGRpbmcvcmVtb3ZpbmcKLy8gbW9yZSB0aGFuIG9uZSBhcHAKLy8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIHB1dCB0aGUgYXBwIElEcyBpbgovLyBAcGFyYW0gYXBwSURzIC0gQXJyYXkgb2YgYXBwIElEcyB0aGF0IHNpZ25pZnkgdGhlIHdoaXRlbGlzdGVkIGFwcHMKc2V0QXBwV2hpdGVsaXN0OgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NTUKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU2CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU4CgkvLyB0aGlzLndoaXRlbGlzdCh3aGl0ZWxpc3QpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2RlbAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NjAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUgPSBhcHBJRHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJZnJhbWVfZGlnIC0zIC8vIGFwcElEczogdWludDY0W10KCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYm94X3B1dAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjYyCgkvLyBwcmVNQlIgPiB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCT4KCWJ6ICppZjFfZWxzZQoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2MwoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2NQoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHRoaXMudHhuR3JvdXBbdGhpcy50eG4uZ3JvdXBJbmRleCAtIDFdIGFzIFBheVR4biwgcHJlTUJSKQoJZnJhbWVfZGlnIDAgLy8gcHJlTUJSOiB1aW50NjQKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBmYWlsZWQgdG8gY2FzdCB0aGlzLnR4bkdyb3VwW3RoaXMudHhuLmdyb3VwSW5kZXggLSAxXSB0byBwYXkKCWFzc2VydAoJY2FsbHN1YiB2ZXJpZnlNQlJQYXltZW50CgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZAoqYWJpX3JvdXRlX2RlbGV0ZVdoaXRlbGlzdDoKCS8vIGJveEluZGV4OiB1aW50MTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMgoJPT0KCgkvLyBhcmd1bWVudCAwIChib3hJbmRleCkgZm9yIGRlbGV0ZVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZVdoaXRlbGlzdChzdHJpbmcsdWludDE2KXZvaWQKCWNhbGxzdWIgZGVsZXRlV2hpdGVsaXN0CglpbnQgMQoJcmV0dXJuCgovLyBkZWxldGVXaGl0ZWxpc3QoYXJjOiBzdHJpbmcsIGJveEluZGV4OiB1aW50MTYpOiB2b2lkCi8vCi8vIERlbGV0ZXMgYSBhcHAgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBhcmMgLSBUaGUgQVJDIHRoZSB3aGl0ZWxpc3QgY29ycmVzcG9uZHMgdG8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIGRlbGV0ZQpkZWxldGVXaGl0ZWxpc3Q6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo3NwoJLy8gcHJlTUJSID0gdGhpcy5hcHAuYWRkcmVzcy5taW5CYWxhbmNlCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWZyYW1lX2J1cnkgMCAvLyBwcmVNQlI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NzgKCS8vIHdoaXRlbGlzdDogV2hpdGVsaXN0ID0geyBhY2NvdW50OiB0aGlzLnR4bi5zZW5kZXIsIGJveEluZGV4OiBib3hJbmRleCwgYXJjOiBhcmMgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQxNgoJaXRvYgoJZXh0cmFjdCA2IDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWZyYW1lX2RpZyAtMSAvLyBhcmM6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6ODAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkuZGVsZXRlKCkKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfZGVsCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo4MgoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJcmV0c3ViCgovLyBkZWxldGVBcHBGcm9tV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfZGVsZXRlQXBwRnJvbVdoaXRlbGlzdDoKCS8vIGluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKGJveEluZGV4KSBmb3IgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZUFwcEZyb21XaGl0ZWxpc3Qoc3RyaW5nLHVpbnQxNix1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdAoJaW50IDEKCXJldHVybgoKLy8gZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgaW5kZXg6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gRGVsZXRlcyBhIGFwcCBmcm9tIGEgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBib3hJbmRleCAtIFRoZSBpbmRleCBvZiB0aGUgd2hpdGVsaXN0IGJveCB0byBkZWxldGUgZnJvbQovLyBAcGFyYW0gYXBwSUQgLSBUaGUgYXBwIElEIHRvIGRlbGV0ZSBmcm9tIHRoZSB3aGl0ZWxpc3QKLy8gQHBhcmFtIGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBhcHAgaW4gdGhlIHdoaXRlbGlzdApkZWxldGVBcHBGcm9tV2hpdGVsaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6OTQKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk1CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk3CgkvLyBzcGxpY2VkID0gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5zcGxpY2UoaW5kZXgsIDEpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDEKCWZyYW1lX2RpZyAtNCAvLyBpbmRleDogdWludDY0CglpbnQgOAoJKgoJc3RvcmUgMjQ3IC8vIHNwbGljZSBzdGFydAoJaW50IDE2CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgOAoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CglmcmFtZV9idXJ5IDIgLy8gc3BsaWNlZDogdWludDY0W10KCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk5CgkvLyBhc3NlcnQoc3BsaWNlZFswXSA9PT0gYXBwSUQpCglmcmFtZV9kaWcgMiAvLyBzcGxpY2VkOiB1aW50NjRbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9kaWcgLTMgLy8gYXBwSUQ6IHVpbnQ2NAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTAxCgkvLyB0aGlzLnNlbmRNQlJQYXltZW50KHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CgljYWxsc3ViIHNlbmRNQlJQYXltZW50CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAic2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZCIKCW1ldGhvZCAiZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZCIKCW1ldGhvZCAiZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCx1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWRkQXBwVG9XaGl0ZUxpc3QgKmFiaV9yb3V0ZV9zZXRBcHBXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVBcHBGcm9tV2hpdGVsaXN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2ZXJpZnlNQlJQYXltZW50KHBheW1lbnQ6IFBheVR4biwgcHJlTUJSOiB1aW50NjQpOiB2b2lkCnZlcmlmeU1CUlBheW1lbnQ6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjEwCgkvLyB2ZXJpZnlQYXlUeG4ocGF5bWVudCwgewoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhbW91bnQ6IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSAtIHByZU1CUiwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIC0yIC8vIHByZU1CUjogdWludDY0CgktCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoicGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UgLSBwcmVNQlIifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHNlbmRNQlJQYXltZW50KHByZU1CUjogdWludDY0KTogdm9pZApzZW5kTUJSUGF5bWVudDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTcKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIsCgkvLyAgICAgICBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjE5CgkvLyBhbW91bnQ6IHByZU1CUiAtIHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZnJhbWVfZGlnIC0xIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX2FkZEFwcFRvV2hpdGVMaXN0OgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGFkZEFwcFRvV2hpdGVMaXN0IG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGFwcElEOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBib3hJbmRleDogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMiAoYm94SW5kZXgpIGZvciBhZGRBcHBUb1doaXRlTGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZEFwcFRvV2hpdGVMaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHBheSl2b2lkCgljYWxsc3ViIGFkZEFwcFRvV2hpdGVMaXN0CglpbnQgMQoJcmV0dXJuCgovLyBhZGRBcHBUb1doaXRlTGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgcGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLyBBZGQgYXBwIHRvIHdoaXRlbGlzdCBib3gKLy8KLy8gQHBhcmFtIGFyYyAtIFRoZSBBUkMgdGhlIHdoaXRlbGlzdCBjb3JyZXNwb25kcyB0bwovLyBAcGFyYW0gYm94SW5kZXggLSBUaGUgaW5kZXggb2YgdGhlIHdoaXRlbGlzdCBib3ggdG8gYWRkIHRoZSBhcHAgdG8KLy8gQHBhcmFtIGFwcElEIC0gVGhlIGFwcCBJRCB0byBhZGQgdG8gdGhlIHdoaXRlbGlzdAovLyBAcGFyYW0gcGF5bWVudCAtIFRoZSBwYXltZW50IHRyYW5zYWN0aW9uIHRvIGNvdmVyIHRoZSBNQlIgY2hhbmdlCmFkZEFwcFRvV2hpdGVMaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MzMKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM0CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNgoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS5leGlzdHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfbGVuCglzd2FwCglwb3AKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czozNwoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5wdXNoKGFwcElEKQoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWZyYW1lX2RpZyAtMyAvLyBhcHBJRDogdWludDY0CglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjM5CgkvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdID0gW2FwcElEXQoJZnJhbWVfZGlnIC0zIC8vIGFwcElEOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MAoJLy8gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZSA9IG5ld1doaXRlbGlzdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMiAvLyBuZXdXaGl0ZWxpc3Q6IHVpbnQ2NFtdCglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWJveF9wdXQKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo0MwoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHBheW1lbnQsIHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gcGF5bWVudDogUGF5VHhuCgljYWxsc3ViIHZlcmlmeU1CUlBheW1lbnQKCXJldHN1YgoKLy8gc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoqYWJpX3JvdXRlX3NldEFwcFdoaXRlbGlzdDoKCS8vIGFwcElEczogdWludDY0W10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWV4dHJhY3QgMiAwCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGJveEluZGV4KSBmb3Igc2V0QXBwV2hpdGVsaXN0IG11c3QgYmUgYSB1aW50MTYKCWFzc2VydAoJYnRvaQoKCS8vIGFyYzogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZAoJY2FsbHN1YiBzZXRBcHBXaGl0ZWxpc3QKCWludCAxCglyZXR1cm4KCi8vIHNldEFwcFdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSURzOiB1aW50NjRbXSk6IHZvaWQKLy8KLy8gU2V0cyBhIGFwcCB3aGl0ZWxpc3QgZm9yIHRoZSBzZW5kZXIuIFNob3VsZCBvbmx5IGJlIHVzZWQgd2hlbiBhZGRpbmcvcmVtb3ZpbmcKLy8gbW9yZSB0aGFuIG9uZSBhcHAKLy8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIHB1dCB0aGUgYXBwIElEcyBpbgovLyBAcGFyYW0gYXBwSURzIC0gQXJyYXkgb2YgYXBwIElEcyB0aGF0IHNpZ25pZnkgdGhlIHdoaXRlbGlzdGVkIGFwcHMKc2V0QXBwV2hpdGVsaXN0OgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NTUKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU2CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjU4CgkvLyB0aGlzLndoaXRlbGlzdCh3aGl0ZWxpc3QpLmRlbGV0ZSgpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2RlbAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NjAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUgPSBhcHBJRHMKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJZnJhbWVfZGlnIC0zIC8vIGFwcElEczogdWludDY0W10KCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYm94X3B1dAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjYyCgkvLyBwcmVNQlIgPiB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCT4KCWJ6ICppZjFfZWxzZQoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2MwoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJYiAqaWYxX2VuZAoKKmlmMV9lbHNlOgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo2NQoJLy8gdGhpcy52ZXJpZnlNQlJQYXltZW50KHRoaXMudHhuR3JvdXBbdGhpcy50eG4uZ3JvdXBJbmRleCAtIDFdIGFzIFBheVR4biwgcHJlTUJSKQoJZnJhbWVfZGlnIDAgLy8gcHJlTUJSOiB1aW50NjQKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBmYWlsZWQgdG8gY2FzdCB0aGlzLnR4bkdyb3VwW3RoaXMudHhuLmdyb3VwSW5kZXggLSAxXSB0byBwYXkKCWFzc2VydAoJY2FsbHN1YiB2ZXJpZnlNQlJQYXltZW50CgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZAoqYWJpX3JvdXRlX2RlbGV0ZVdoaXRlbGlzdDoKCS8vIGJveEluZGV4OiB1aW50MTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMgoJPT0KCgkvLyBhcmd1bWVudCAwIChib3hJbmRleCkgZm9yIGRlbGV0ZVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZVdoaXRlbGlzdChzdHJpbmcsdWludDE2KXZvaWQKCWNhbGxzdWIgZGVsZXRlV2hpdGVsaXN0CglpbnQgMQoJcmV0dXJuCgovLyBkZWxldGVXaGl0ZWxpc3QoYXJjOiBzdHJpbmcsIGJveEluZGV4OiB1aW50MTYpOiB2b2lkCi8vCi8vIERlbGV0ZXMgYSBhcHAgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBhcmMgLSBUaGUgQVJDIHRoZSB3aGl0ZWxpc3QgY29ycmVzcG9uZHMgdG8KLy8gQHBhcmFtIGJveEluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSB3aGl0ZWxpc3QgYm94IHRvIGRlbGV0ZQpkZWxldGVXaGl0ZWxpc3Q6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo3NwoJLy8gcHJlTUJSID0gdGhpcy5hcHAuYWRkcmVzcy5taW5CYWxhbmNlCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWZyYW1lX2J1cnkgMCAvLyBwcmVNQlI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6NzgKCS8vIHdoaXRlbGlzdDogV2hpdGVsaXN0ID0geyBhY2NvdW50OiB0aGlzLnR4bi5zZW5kZXIsIGJveEluZGV4OiBib3hJbmRleCwgYXJjOiBhcmMgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQxNgoJaXRvYgoJZXh0cmFjdCA2IDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWZyYW1lX2RpZyAtMSAvLyBhcmM6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6ODAKCS8vIHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkuZGVsZXRlKCkKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0Cglib3hfZGVsCgoJLy8gZXhhbXBsZXMvYXJjNzUvYXJjNzUuYWxnby50czo4MgoJLy8gdGhpcy5zZW5kTUJSUGF5bWVudChwcmVNQlIpCglmcmFtZV9kaWcgMCAvLyBwcmVNQlI6IHVpbnQ2NAoJY2FsbHN1YiBzZW5kTUJSUGF5bWVudAoJcmV0c3ViCgovLyBkZWxldGVBcHBGcm9tV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfZGVsZXRlQXBwRnJvbVdoaXRlbGlzdDoKCS8vIGluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYm94SW5kZXg6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKGJveEluZGV4KSBmb3IgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBhcmM6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGRlbGV0ZUFwcEZyb21XaGl0ZWxpc3Qoc3RyaW5nLHVpbnQxNix1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwRnJvbVdoaXRlbGlzdAoJaW50IDEKCXJldHVybgoKLy8gZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChhcmM6IHN0cmluZywgYm94SW5kZXg6IHVpbnQxNiwgYXBwSUQ6IHVpbnQ2NCwgaW5kZXg6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gRGVsZXRlcyBhIGFwcCBmcm9tIGEgd2hpdGVsaXN0IGZvciB0aGUgc2VuZGVyCi8vCi8vIEBwYXJhbSBib3hJbmRleCAtIFRoZSBpbmRleCBvZiB0aGUgd2hpdGVsaXN0IGJveCB0byBkZWxldGUgZnJvbQovLyBAcGFyYW0gYXBwSUQgLSBUaGUgYXBwIElEIHRvIGRlbGV0ZSBmcm9tIHRoZSB3aGl0ZWxpc3QKLy8gQHBhcmFtIGluZGV4IC0gVGhlIGluZGV4IG9mIHRoZSBhcHAgaW4gdGhlIHdoaXRlbGlzdApkZWxldGVBcHBGcm9tV2hpdGVsaXN0OgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6OTQKCS8vIHByZU1CUiA9IHRoaXMuYXBwLmFkZHJlc3MubWluQmFsYW5jZQoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0TWluQmFsYW5jZQoJcG9wCglmcmFtZV9idXJ5IDAgLy8gcHJlTUJSOiB1aW50NjQKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk1CgkvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdCA9IHsgYWNjb3VudDogdGhpcy50eG4uc2VuZGVyLCBib3hJbmRleDogYm94SW5kZXgsIGFyYzogYXJjIH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMjQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJdHhuIFNlbmRlcgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50MTYKCWl0b2IKCWV4dHJhY3QgNiAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTEgLy8gYXJjOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk3CgkvLyBzcGxpY2VkID0gdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZS5zcGxpY2UoaW5kZXgsIDEpCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDEKCWZyYW1lX2RpZyAtNCAvLyBpbmRleDogdWludDY0CglpbnQgOAoJKgoJc3RvcmUgMjQ3IC8vIHNwbGljZSBzdGFydAoJaW50IDE2CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMSAvLyB3aGl0ZWxpc3Q6IFdoaXRlbGlzdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy53aGl0ZWxpc3Qod2hpdGVsaXN0KS52YWx1ZQoJYXNzZXJ0CglleHRyYWN0IDIgMAoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDEgLy8gd2hpdGVsaXN0OiBXaGl0ZWxpc3QKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMud2hpdGVsaXN0KHdoaXRlbGlzdCkudmFsdWUKCWFzc2VydAoJZXh0cmFjdCAyIDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgOAoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2RpZyAxIC8vIHdoaXRlbGlzdDogV2hpdGVsaXN0CglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CglmcmFtZV9idXJ5IDIgLy8gc3BsaWNlZDogdWludDY0W10KCgkvLyBleGFtcGxlcy9hcmM3NS9hcmM3NS5hbGdvLnRzOjk5CgkvLyBhc3NlcnQoc3BsaWNlZFswXSA9PT0gYXBwSUQpCglmcmFtZV9kaWcgMiAvLyBzcGxpY2VkOiB1aW50NjRbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9kaWcgLTMgLy8gYXBwSUQ6IHVpbnQ2NAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2FyYzc1L2FyYzc1LmFsZ28udHM6MTAxCgkvLyB0aGlzLnNlbmRNQlJQYXltZW50KHByZU1CUikKCWZyYW1lX2RpZyAwIC8vIHByZU1CUjogdWludDY0CgljYWxsc3ViIHNlbmRNQlJQYXltZW50CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhZGRBcHBUb1doaXRlTGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAic2V0QXBwV2hpdGVsaXN0KHN0cmluZyx1aW50MTYsdWludDY0W10pdm9pZCIKCW1ldGhvZCAiZGVsZXRlV2hpdGVsaXN0KHN0cmluZyx1aW50MTYpdm9pZCIKCW1ldGhvZCAiZGVsZXRlQXBwRnJvbVdoaXRlbGlzdChzdHJpbmcsdWludDE2LHVpbnQ2NCx1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWRkQXBwVG9XaGl0ZUxpc3QgKmFiaV9yb3V0ZV9zZXRBcHBXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVXaGl0ZWxpc3QgKmFiaV9yb3V0ZV9kZWxldGVBcHBGcm9tV2hpdGVsaXN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/auction/tealscript_artifacts/Auction.approval.teal b/examples/auction/tealscript_artifacts/Auction.approval.teal index b178840f9..5477a3200 100644 --- a/examples/auction/tealscript_artifacts/Auction.approval.teal +++ b/examples/auction/tealscript_artifacts/Auction.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/auction/tealscript_artifacts/Auction.arc32.json b/examples/auction/tealscript_artifacts/Auction.arc32.json index fb30c81c7..1411d9ece 100644 --- a/examples/auction/tealscript_artifacts/Auction.arc32.json +++ b/examples/auction/tealscript_artifacts/Auction.arc32.json @@ -95,7 +95,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9EZWxldGVBcHBsaWNhdGlvbiAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIGNyZWF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpOiB2b2lkCmNyZWF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTgKCS8vIHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9IDAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjE5CgkvLyB0aGlzLnByZXZpb3VzQmlkLnZhbHVlID0gMAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjAKCS8vIHRoaXMuYXNhQW10LnZhbHVlID0gMAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjEKCS8vIHRoaXMuYXNhLnZhbHVlID0gQXNzZXRJRC56ZXJvSW5kZXgKCWJ5dGUgMHg2MTczNjEgLy8gImFzYSIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjI0CgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQ2NDY1NzIgLy8gInByZXZpb3VzQmlkZGVyIgoJZ2xvYmFsIFplcm9BZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vcHRJbnRvQXNzZXQ6CgkvLyBhc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgb3B0SW50b0Fzc2V0CglpbnQgMQoJcmV0dXJuCgovLyBvcHRJbnRvQXNzZXQoYXNzZXQ6IEFzc2V0SUQpOiB2b2lkCm9wdEludG9Bc3NldDoKCXByb3RvIDEgMAoKCS8vIE9ubHkgYWxsb3cgYXBwIGNyZWF0b3IgdG8gb3B0IHRoZSBhcHAgYWNjb3VudCBpbnRvIGEgQVNBCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoyOQoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6Imdsb2JhbHMuY3JlYXRvckFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gVmVyaWZ5IGEgQVNBIGhhc24ndCBhbHJlYWR5IGJlZW4gb3B0ZWQgaW50bwoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmFzYS52YWx1ZSA9PT0gQXNzZXRJRC56ZXJvSW5kZXgpCglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCT09Cglhc3NlcnQKCgkvLyBTYXZlIEFTQSBJRCBpbiBnbG9iYWwgc3RhdGUKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjM1CgkvLyB0aGlzLmFzYS52YWx1ZSA9IGFzc2V0CglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gU3VibWl0IG9wdC1pbiB0cmFuc2FjdGlvbjogMCBhc3NldCB0cmFuc2ZlciB0byBzZWxmCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czozOAoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzkKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0MAoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQxCgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKKmFiaV9yb3V0ZV9zdGFydEF1Y3Rpb246CgkvLyBheGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGF4ZmVyKSBmb3Igc3RhcnRBdWN0aW9uIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gbGVuZ3RoOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKCWNhbGxzdWIgc3RhcnRBdWN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBzdGFydEF1Y3Rpb24oc3RhcnRpbmdQcmljZTogdWludDY0LCBsZW5ndGg6IHVpbnQ2NCwgYXhmZXI6IEFzc2V0VHJhbnNmZXJUeG4pOiB2b2lkCnN0YXJ0QXVjdGlvbjoKCXByb3RvIDMgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQ2CgkvLyB2ZXJpZnlBcHBDYWxsVHhuKHRoaXMudHhuLCB7IHNlbmRlcjogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBFbnN1cmUgdGhlIGF1Y3Rpb24gaGFzbid0IGFscmVhZHkgYmVlbiBzdGFydGVkCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0OQoJLy8gYXNzZXJ0KHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9PT0gMCkKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIFZlcmlmeSBheGZlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NTIKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oYXhmZXIsIHsgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcyB9KQoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMyAvLyBheGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJheGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBTZXQgZ2xvYmFsIHN0YXRlCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NQoJLy8gdGhpcy5hc2FBbXQudmFsdWUgPSBheGZlci5hc3NldEFtb3VudAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJZnJhbWVfZGlnIC0zIC8vIGF4ZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NgoJLy8gdGhpcy5hdWN0aW9uRW5kLnZhbHVlID0gZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAgKyBsZW5ndGgKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGg6IHVpbnQ2NAoJKwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NwoJLy8gdGhpcy5wcmV2aW91c0JpZC52YWx1ZSA9IHN0YXJ0aW5nUHJpY2UKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWZyYW1lX2RpZyAtMSAvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHBheShyZWNlaXZlcjogQWRkcmVzcywgYW1vdW50OiB1aW50NjQpOiB2b2lkCnBheToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICByZWNlaXZlcjogcmVjZWl2ZXIsCgkvLyAgICAgICBhbW91bnQ6IGFtb3VudCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYyCgkvLyByZWNlaXZlcjogcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYzCgkvLyBhbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCXJldHN1YgoKLy8gYmlkKHBheSl2b2lkCiphYmlfcm91dGVfYmlkOgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGJpZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJpZChwYXkpdm9pZAoJY2FsbHN1YiBiaWQKCWludCAxCglyZXR1cm4KCi8vIGJpZChwYXltZW50OiBQYXlUeG4pOiB2b2lkCmJpZDoKCXByb3RvIDEgMAoKCS8vIEVuc3VyZSBhdWN0aW9uIGhhc24ndCBlbmRlZAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzIKCS8vIGFzc2VydChnbG9iYWxzLmxhdGVzdFRpbWVzdGFtcCA8IHRoaXMuYXVjdGlvbkVuZC52YWx1ZSkKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0Cgk8Cglhc3NlcnQKCgkvLyBWZXJpZnkgcGF5bWVudCB0cmFuc2FjdGlvbgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzUKCS8vIHZlcmlmeVBheVR4bihwYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogdGhpcy5wcmV2aW91c0JpZC52YWx1ZSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWFwcF9nbG9iYWxfZ2V0Cgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPnRoaXMucHJldmlvdXNCaWQudmFsdWUifQoJYXNzZXJ0CgoJLy8gU2V0IGdsb2JhbCBzdGF0ZQoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODEKCS8vIHRoaXMucHJldmlvdXNCaWQudmFsdWUgPSBwYXltZW50LmFtb3VudAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjgyCgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gcGF5bWVudC5zZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWZyYW1lX2RpZyAtMSAvLyBwYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyBVcGRhdGUgY2xhaW1hYmxlIGFtb3VudAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODUKCS8vIHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUgPSBwYXltZW50LmFtb3VudAoJdHhuIFNlbmRlcgoJYnl0ZSAweDYzNmM2MTY5NmQ2MTYyNmM2NTQxNmQ2Zjc1NmU3NCAvLyAiY2xhaW1hYmxlQW1vdW50IgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGNsYWltQmlkcygpdm9pZAoqYWJpX3JvdXRlX2NsYWltQmlkczoKCS8vIGV4ZWN1dGUgY2xhaW1CaWRzKCl2b2lkCgljYWxsc3ViIGNsYWltQmlkcwoJaW50IDEKCXJldHVybgoKLy8gY2xhaW1CaWRzKCk6IHZvaWQKY2xhaW1CaWRzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjg5CgkvLyBvcmlnaW5hbEFtb3VudCA9IHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzZjNjE2OTZkNjE2MjZjNjU0MTZkNmY3NTZlNzQgLy8gImNsYWltYWJsZUFtb3VudCIKCWFwcF9sb2NhbF9nZXQKCWZyYW1lX2J1cnkgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6OTAKCS8vIGFtb3VudCA9IG9yaWdpbmFsQW1vdW50CglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYW1vdW50OiB1aW50NjQKCgkvLyBzdWJ0cmFjdCBwcmV2aW91cyBiaWQgaWYgc2VuZGVyIGlzIHByZXZpb3VzIGJpZGRlcgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyBhbW91bnQgPSBhbW91bnQgLSB0aGlzLnByZXZpb3VzQmlkLnZhbHVlCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWZyYW1lX2J1cnkgMSAvLyBhbW91bnQ6IHVpbnQ2NAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NQoJLy8gdGhpcy5wYXkodGhpcy50eG4uc2VuZGVyLCBhbW91bnQpCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwYXkKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NgoJLy8gdGhpcy5jbGFpbWFibGVBbW91bnQodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IG9yaWdpbmFsQW1vdW50IC0gYW1vdW50Cgl0eG4gU2VuZGVyCglieXRlIDB4NjM2YzYxNjk2ZDYxNjI2YzY1NDE2ZDZmNzU2ZTc0IC8vICJjbGFpbWFibGVBbW91bnQiCglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJLQoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBjbGFpbV9hc3NldCh1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2NsYWltX2Fzc2V0OgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2xhaW1fYXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgY2xhaW1fYXNzZXQKCWludCAxCglyZXR1cm4KCi8vIGNsYWltX2Fzc2V0KGFzc2V0OiBBc3NldElEKTogdm9pZApjbGFpbV9hc3NldDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wID4gdGhpcy5hdWN0aW9uRW5kLnZhbHVlKQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJYnl0ZSAweDYxNzU2Mzc0Njk2ZjZlNDU2ZTY0IC8vICJhdWN0aW9uRW5kIgoJYXBwX2dsb2JhbF9nZXQKCT4KCWFzc2VydAoKCS8vIFNlbmQgQVNBIHRvIHByZXZpb3VzIGJpZGRlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTAzCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlLAoJLy8gICAgICAgeGZlckFzc2V0OiBhc3NldCwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB0aGlzLmFzYUFtdC52YWx1ZSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5wcmV2aW91c0JpZGRlci52YWx1ZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA0CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlCglieXRlIDB4NzA3MjY1NzY2OTZmNzU3MzQyNjk2NDY0NjU3MiAvLyAicHJldmlvdXNCaWRkZXIiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA1CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA2CgkvLyBhc3NldEFtb3VudDogdGhpcy5hc2FBbXQudmFsdWUKCWJ5dGUgMHg2MTczNjE0MTZkNzQgLy8gImFzYUFtdCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA3CgkvLyBhc3NldENsb3NlVG86IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0Q2xvc2VUbwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTIKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiBnbG9iYWxzLmNyZWF0b3JBZGRyZXNzLAoJLy8gICAgICAgY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExMwoJLy8gcmVjZWl2ZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExNAoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcwoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTUKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcHRJbnRvQXNzZXQodWludDY0KXZvaWQiCgltZXRob2QgInN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQiCgltZXRob2QgImJpZChwYXkpdm9pZCIKCW1ldGhvZCAiY2xhaW1CaWRzKCl2b2lkIgoJbWV0aG9kICJjbGFpbV9hc3NldCh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW50b0Fzc2V0ICphYmlfcm91dGVfc3RhcnRBdWN0aW9uICphYmlfcm91dGVfYmlkICphYmlfcm91dGVfY2xhaW1CaWRzICphYmlfcm91dGVfY2xhaW1fYXNzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJvcHRJblRvQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wdEluVG9BcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnIKCipjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uOgoJbWV0aG9kICJkZWxldGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGVsZXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBEZWxldGVBcHBsaWNhdGlvbgoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9EZWxldGVBcHBsaWNhdGlvbiAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIGNyZWF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpOiB2b2lkCmNyZWF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTgKCS8vIHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9IDAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjE5CgkvLyB0aGlzLnByZXZpb3VzQmlkLnZhbHVlID0gMAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjAKCS8vIHRoaXMuYXNhQW10LnZhbHVlID0gMAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjEKCS8vIHRoaXMuYXNhLnZhbHVlID0gQXNzZXRJRC56ZXJvSW5kZXgKCWJ5dGUgMHg2MTczNjEgLy8gImFzYSIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjI0CgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQ2NDY1NzIgLy8gInByZXZpb3VzQmlkZGVyIgoJZ2xvYmFsIFplcm9BZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vcHRJbnRvQXNzZXQ6CgkvLyBhc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgb3B0SW50b0Fzc2V0CglpbnQgMQoJcmV0dXJuCgovLyBvcHRJbnRvQXNzZXQoYXNzZXQ6IEFzc2V0SUQpOiB2b2lkCm9wdEludG9Bc3NldDoKCXByb3RvIDEgMAoKCS8vIE9ubHkgYWxsb3cgYXBwIGNyZWF0b3IgdG8gb3B0IHRoZSBhcHAgYWNjb3VudCBpbnRvIGEgQVNBCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoyOQoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6Imdsb2JhbHMuY3JlYXRvckFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gVmVyaWZ5IGEgQVNBIGhhc24ndCBhbHJlYWR5IGJlZW4gb3B0ZWQgaW50bwoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmFzYS52YWx1ZSA9PT0gQXNzZXRJRC56ZXJvSW5kZXgpCglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCT09Cglhc3NlcnQKCgkvLyBTYXZlIEFTQSBJRCBpbiBnbG9iYWwgc3RhdGUKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjM1CgkvLyB0aGlzLmFzYS52YWx1ZSA9IGFzc2V0CglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gU3VibWl0IG9wdC1pbiB0cmFuc2FjdGlvbjogMCBhc3NldCB0cmFuc2ZlciB0byBzZWxmCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czozOAoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzkKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0MAoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQxCgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKKmFiaV9yb3V0ZV9zdGFydEF1Y3Rpb246CgkvLyBheGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGF4ZmVyKSBmb3Igc3RhcnRBdWN0aW9uIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gbGVuZ3RoOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKCWNhbGxzdWIgc3RhcnRBdWN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBzdGFydEF1Y3Rpb24oc3RhcnRpbmdQcmljZTogdWludDY0LCBsZW5ndGg6IHVpbnQ2NCwgYXhmZXI6IEFzc2V0VHJhbnNmZXJUeG4pOiB2b2lkCnN0YXJ0QXVjdGlvbjoKCXByb3RvIDMgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQ2CgkvLyB2ZXJpZnlBcHBDYWxsVHhuKHRoaXMudHhuLCB7IHNlbmRlcjogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBFbnN1cmUgdGhlIGF1Y3Rpb24gaGFzbid0IGFscmVhZHkgYmVlbiBzdGFydGVkCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0OQoJLy8gYXNzZXJ0KHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9PT0gMCkKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIFZlcmlmeSBheGZlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NTIKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oYXhmZXIsIHsgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcyB9KQoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMyAvLyBheGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJheGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBTZXQgZ2xvYmFsIHN0YXRlCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NQoJLy8gdGhpcy5hc2FBbXQudmFsdWUgPSBheGZlci5hc3NldEFtb3VudAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJZnJhbWVfZGlnIC0zIC8vIGF4ZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NgoJLy8gdGhpcy5hdWN0aW9uRW5kLnZhbHVlID0gZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAgKyBsZW5ndGgKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGg6IHVpbnQ2NAoJKwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NwoJLy8gdGhpcy5wcmV2aW91c0JpZC52YWx1ZSA9IHN0YXJ0aW5nUHJpY2UKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWZyYW1lX2RpZyAtMSAvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHBheShyZWNlaXZlcjogQWRkcmVzcywgYW1vdW50OiB1aW50NjQpOiB2b2lkCnBheToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICByZWNlaXZlcjogcmVjZWl2ZXIsCgkvLyAgICAgICBhbW91bnQ6IGFtb3VudCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYyCgkvLyByZWNlaXZlcjogcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYzCgkvLyBhbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCXJldHN1YgoKLy8gYmlkKHBheSl2b2lkCiphYmlfcm91dGVfYmlkOgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGJpZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJpZChwYXkpdm9pZAoJY2FsbHN1YiBiaWQKCWludCAxCglyZXR1cm4KCi8vIGJpZChwYXltZW50OiBQYXlUeG4pOiB2b2lkCmJpZDoKCXByb3RvIDEgMAoKCS8vIEVuc3VyZSBhdWN0aW9uIGhhc24ndCBlbmRlZAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzIKCS8vIGFzc2VydChnbG9iYWxzLmxhdGVzdFRpbWVzdGFtcCA8IHRoaXMuYXVjdGlvbkVuZC52YWx1ZSkKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0Cgk8Cglhc3NlcnQKCgkvLyBWZXJpZnkgcGF5bWVudCB0cmFuc2FjdGlvbgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzUKCS8vIHZlcmlmeVBheVR4bihwYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogdGhpcy5wcmV2aW91c0JpZC52YWx1ZSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWFwcF9nbG9iYWxfZ2V0Cgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPnRoaXMucHJldmlvdXNCaWQudmFsdWUifQoJYXNzZXJ0CgoJLy8gU2V0IGdsb2JhbCBzdGF0ZQoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODEKCS8vIHRoaXMucHJldmlvdXNCaWQudmFsdWUgPSBwYXltZW50LmFtb3VudAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjgyCgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gcGF5bWVudC5zZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWZyYW1lX2RpZyAtMSAvLyBwYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyBVcGRhdGUgY2xhaW1hYmxlIGFtb3VudAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODUKCS8vIHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUgPSBwYXltZW50LmFtb3VudAoJdHhuIFNlbmRlcgoJYnl0ZSAweDYzNmM2MTY5NmQ2MTYyNmM2NTQxNmQ2Zjc1NmU3NCAvLyAiY2xhaW1hYmxlQW1vdW50IgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGNsYWltQmlkcygpdm9pZAoqYWJpX3JvdXRlX2NsYWltQmlkczoKCS8vIGV4ZWN1dGUgY2xhaW1CaWRzKCl2b2lkCgljYWxsc3ViIGNsYWltQmlkcwoJaW50IDEKCXJldHVybgoKLy8gY2xhaW1CaWRzKCk6IHZvaWQKY2xhaW1CaWRzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjg5CgkvLyBvcmlnaW5hbEFtb3VudCA9IHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzZjNjE2OTZkNjE2MjZjNjU0MTZkNmY3NTZlNzQgLy8gImNsYWltYWJsZUFtb3VudCIKCWFwcF9sb2NhbF9nZXQKCWZyYW1lX2J1cnkgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6OTAKCS8vIGFtb3VudCA9IG9yaWdpbmFsQW1vdW50CglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYW1vdW50OiB1aW50NjQKCgkvLyBzdWJ0cmFjdCBwcmV2aW91cyBiaWQgaWYgc2VuZGVyIGlzIHByZXZpb3VzIGJpZGRlcgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyBhbW91bnQgPSBhbW91bnQgLSB0aGlzLnByZXZpb3VzQmlkLnZhbHVlCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWZyYW1lX2J1cnkgMSAvLyBhbW91bnQ6IHVpbnQ2NAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NQoJLy8gdGhpcy5wYXkodGhpcy50eG4uc2VuZGVyLCBhbW91bnQpCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwYXkKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NgoJLy8gdGhpcy5jbGFpbWFibGVBbW91bnQodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IG9yaWdpbmFsQW1vdW50IC0gYW1vdW50Cgl0eG4gU2VuZGVyCglieXRlIDB4NjM2YzYxNjk2ZDYxNjI2YzY1NDE2ZDZmNzU2ZTc0IC8vICJjbGFpbWFibGVBbW91bnQiCglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJLQoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBjbGFpbV9hc3NldCh1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2NsYWltX2Fzc2V0OgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2xhaW1fYXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgY2xhaW1fYXNzZXQKCWludCAxCglyZXR1cm4KCi8vIGNsYWltX2Fzc2V0KGFzc2V0OiBBc3NldElEKTogdm9pZApjbGFpbV9hc3NldDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wID4gdGhpcy5hdWN0aW9uRW5kLnZhbHVlKQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJYnl0ZSAweDYxNzU2Mzc0Njk2ZjZlNDU2ZTY0IC8vICJhdWN0aW9uRW5kIgoJYXBwX2dsb2JhbF9nZXQKCT4KCWFzc2VydAoKCS8vIFNlbmQgQVNBIHRvIHByZXZpb3VzIGJpZGRlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTAzCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlLAoJLy8gICAgICAgeGZlckFzc2V0OiBhc3NldCwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB0aGlzLmFzYUFtdC52YWx1ZSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5wcmV2aW91c0JpZGRlci52YWx1ZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA0CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlCglieXRlIDB4NzA3MjY1NzY2OTZmNzU3MzQyNjk2NDY0NjU3MiAvLyAicHJldmlvdXNCaWRkZXIiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA1CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA2CgkvLyBhc3NldEFtb3VudDogdGhpcy5hc2FBbXQudmFsdWUKCWJ5dGUgMHg2MTczNjE0MTZkNzQgLy8gImFzYUFtdCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA3CgkvLyBhc3NldENsb3NlVG86IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0Q2xvc2VUbwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTIKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiBnbG9iYWxzLmNyZWF0b3JBZGRyZXNzLAoJLy8gICAgICAgY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExMwoJLy8gcmVjZWl2ZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExNAoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcwoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTUKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcHRJbnRvQXNzZXQodWludDY0KXZvaWQiCgltZXRob2QgInN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQiCgltZXRob2QgImJpZChwYXkpdm9pZCIKCW1ldGhvZCAiY2xhaW1CaWRzKCl2b2lkIgoJbWV0aG9kICJjbGFpbV9hc3NldCh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW50b0Fzc2V0ICphYmlfcm91dGVfc3RhcnRBdWN0aW9uICphYmlfcm91dGVfYmlkICphYmlfcm91dGVfY2xhaW1CaWRzICphYmlfcm91dGVfY2xhaW1fYXNzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJvcHRJblRvQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wdEluVG9BcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnIKCipjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uOgoJbWV0aG9kICJkZWxldGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGVsZXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBEZWxldGVBcHBsaWNhdGlvbgoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/auction/tealscript_artifacts/Auction.arc56_draft.json b/examples/auction/tealscript_artifacts/Auction.arc56_draft.json index a4d7cfd77..f3ff64c80 100644 --- a/examples/auction/tealscript_artifacts/Auction.arc56_draft.json +++ b/examples/auction/tealscript_artifacts/Auction.arc56_draft.json @@ -198,2134 +198,2137 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 75 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 78 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 81 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 108 - ] - }, - { - "teal": 28, - "source": 17, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 29, - "source": 17, - "pc": [ - 112 - ] - }, - { - "teal": 30, - "source": 17, - "pc": [ - 113 - ] - }, - { - "teal": 34, - "source": 17, - "pc": [ - 114, - 115, - 116 - ] - }, - { - "teal": 38, - "source": 18, - "pc": [ - 117 - ] - }, - { - "teal": 39, - "source": 18, - "pc": [ - 118 - ] - }, - { - "teal": 40, - "source": 18, - "pc": [ - 119 - ] - }, - { - "teal": 44, - "source": 19, - "pc": [ - 120 - ] - }, - { - "teal": 45, - "source": 19, - "pc": [ - 121 - ] - }, - { - "teal": 46, - "source": 19, - "pc": [ - 122 - ] - }, - { - "teal": 50, - "source": 20, - "pc": [ - 123 - ] - }, - { - "teal": 51, - "source": 20, - "pc": [ - 124 - ] - }, - { - "teal": 52, - "source": 20, - "pc": [ - 125 - ] - }, - { - "teal": 56, - "source": 21, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 57, - "source": 21, - "pc": [ - 128 - ] - }, - { - "teal": 58, - "source": 21, - "pc": [ - 129 - ] - }, - { - "teal": 62, - "source": 24, - "pc": [ - 130 - ] - }, - { - "teal": 63, - "source": 24, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 64, - "source": 24, - "pc": [ - 133 - ] - }, - { - "teal": 65, - "source": 17, - "pc": [ - 134 - ] - }, - { - "teal": 70, - "source": 27, - "pc": [ - 135, - 136, - 137 - ] - }, - { - "teal": 71, - "source": 27, - "pc": [ - 138 - ] - }, - { - "teal": 74, - "source": 27, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 75, - "source": 27, - "pc": [ - 142 - ] - }, - { - "teal": 76, - "source": 27, - "pc": [ - 143 - ] - }, - { - "teal": 80, - "source": 27, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 86, - "source": 29, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 87, - "source": 29, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 88, - "source": 29, - "pc": [ - 151 - ] - }, - { - "teal": 91, - "source": 29, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"globals.creatorAddress\"}", - "pc": [ - 152 - ] - }, - { - "teal": 96, - "source": 32, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 97, - "source": 32, - "pc": [ - 155 - ] - }, - { - "teal": 98, - "source": 32, - "pc": [ - 156 - ] - }, - { - "teal": 99, - "source": 32, - "pc": [ - 157 - ] - }, - { - "teal": 100, - "source": 32, - "pc": [ - 158 - ] - }, - { - "teal": 105, - "source": 35, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 106, - "source": 35, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 107, - "source": 35, - "pc": [ - 163 - ] - }, - { - "teal": 116, - "source": 38, - "pc": [ - 164 - ] - }, - { - "teal": 117, - "source": 38, - "pc": [ - 165 - ] - }, - { - "teal": 118, - "source": 38, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 122, - "source": 39, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 123, - "source": 39, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 127, - "source": 40, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 128, - "source": 40, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 132, - "source": 41, - "pc": [ - 176 - ] - }, - { - "teal": 133, - "source": 41, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 136, - "source": 38, - "pc": [ - 179 - ] - }, - { - "teal": 137, - "source": 38, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 140, - "source": 38, - "pc": [ - 182 - ] - }, - { - "teal": 141, - "source": 27, - "pc": [ - 183 - ] - }, - { - "teal": 146, - "source": 45, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 147, - "source": 45, - "pc": [ - 186 - ] - }, - { - "teal": 148, - "source": 45, - "pc": [ - 187 - ] - }, - { - "teal": 149, - "source": 45, - "pc": [ - 188 - ] - }, - { - "teal": 150, - "source": 45, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 151, - "source": 45, - "pc": [ - 191 - ] - }, - { - "teal": 152, - "source": 45, - "pc": [ - 192 - ] - }, - { - "teal": 155, - "source": 45, - "errorMessage": "argument 0 (axfer) for startAuction must be a axfer transaction", - "pc": [ - 193 - ] - }, - { - "teal": 158, - "source": 45, - "pc": [ - 194, - 195, - 196 - ] - }, - { - "teal": 159, - "source": 45, - "pc": [ - 197 - ] - }, - { - "teal": 162, - "source": 45, - "pc": [ - 198, - 199, - 200 - ] - }, - { - "teal": 163, - "source": 45, - "pc": [ - 201 - ] - }, - { - "teal": 166, - "source": 45, - "pc": [ - 202, - 203, - 204 - ] - }, - { - "teal": 167, - "source": 45, - "pc": [ - 205 - ] - }, - { - "teal": 168, - "source": 45, - "pc": [ - 206 - ] - }, - { - "teal": 172, - "source": 45, - "pc": [ - 207, - 208, - 209 - ] - }, - { - "teal": 177, - "source": 46, - "pc": [ - 210, - 211 - ] - }, - { - "teal": 178, - "source": 46, - "pc": [ - 212, - 213 - ] - }, - { - "teal": 179, - "source": 46, - "pc": [ - 214 - ] - }, - { - "teal": 182, - "source": 46, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"globals.creatorAddress\"}", - "pc": [ - 215 - ] - }, - { - "teal": 187, - "source": 49, - "pc": [ - 216 - ] - }, - { - "teal": 188, - "source": 49, - "pc": [ - 217 - ] - }, - { - "teal": 189, - "source": 49, - "pc": [ - 218 - ] - }, - { - "teal": 190, - "source": 49, - "pc": [ - 219 - ] - }, - { - "teal": 191, - "source": 49, - "pc": [ - 220 - ] - }, - { - "teal": 197, - "source": 52, - "pc": [ - 221, - 222 - ] - }, - { - "teal": 198, - "source": 52, - "pc": [ - 223, - 224 - ] - }, - { - "teal": 199, - "source": 52, - "pc": [ - 225, - 226 - ] - }, - { - "teal": 200, - "source": 52, - "pc": [ - 227 - ] - }, - { - "teal": 203, - "source": 52, - "errorMessage": "transaction verification failed: {\"txn\":\"axfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 228 - ] - }, - { - "teal": 208, - "source": 55, - "pc": [ - 229 - ] - }, - { - "teal": 209, - "source": 55, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 210, - "source": 55, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 211, - "source": 55, - "pc": [ - 234 - ] - }, - { - "teal": 215, - "source": 56, - "pc": [ - 235 - ] - }, - { - "teal": 216, - "source": 56, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 217, - "source": 56, - "pc": [ - 238, - 239 - ] - }, - { - "teal": 218, - "source": 56, - "pc": [ - 240 - ] - }, - { - "teal": 219, - "source": 56, - "pc": [ - 241 - ] - }, - { - "teal": 223, - "source": 57, - "pc": [ - 242 - ] - }, - { - "teal": 224, - "source": 57, - "pc": [ - 243, - 244 - ] - }, - { - "teal": 225, - "source": 57, - "pc": [ - 245 - ] - }, - { - "teal": 226, - "source": 45, - "pc": [ - 246 - ] - }, - { - "teal": 230, - "source": 60, - "pc": [ - 247, - 248, - 249 - ] - }, - { - "teal": 237, - "source": 61, - "pc": [ - 250 - ] - }, - { - "teal": 238, - "source": 61, - "pc": [ - 251 - ] - }, - { - "teal": 239, - "source": 61, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 243, - "source": 62, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 244, - "source": 62, - "pc": [ - 256, - 257 - ] - }, - { - "teal": 248, - "source": 63, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 249, - "source": 63, - "pc": [ - 260, - 261 - ] - }, - { - "teal": 252, - "source": 61, - "pc": [ - 262 - ] - }, - { - "teal": 253, - "source": 61, - "pc": [ - 263, - 264 - ] - }, - { - "teal": 256, - "source": 61, - "pc": [ - 265 - ] - }, - { - "teal": 257, - "source": 60, - "pc": [ - 266 - ] - }, - { - "teal": 262, - "source": 67, - "pc": [ - 267, - 268, - 269 - ] - }, - { - "teal": 263, - "source": 67, - "pc": [ - 270 - ] - }, - { - "teal": 264, - "source": 67, - "pc": [ - 271 - ] - }, - { - "teal": 268, - "source": 67, - "pc": [ - 272, - 273, - 274 - ] - }, - { - "teal": 269, - "source": 67, - "pc": [ - 275 - ] - }, - { - "teal": 274, - "source": 70, - "pc": [ - 276, - 277 - ] - }, - { - "teal": 275, - "source": 70, - "pc": [ - 278 - ] - }, - { - "teal": 276, - "source": 70, - "pc": [ - 279 - ] - }, - { - "teal": 277, - "source": 70, - "pc": [ - 280 - ] - }, - { - "teal": 278, - "source": 70, - "pc": [ - 281, - 282 - ] - }, - { - "teal": 279, - "source": 70, - "pc": [ - 283 - ] - }, - { - "teal": 280, - "source": 70, - "pc": [ - 284 - ] - }, - { - "teal": 283, - "source": 70, - "errorMessage": "argument 0 (payment) for bid must be a pay transaction", - "pc": [ - 285 - ] - }, - { - "teal": 286, - "source": 70, - "pc": [ - 286, - 287, - 288 - ] - }, - { - "teal": 287, - "source": 70, - "pc": [ - 289 - ] - }, - { - "teal": 288, - "source": 70, - "pc": [ - 290 - ] - }, - { - "teal": 292, - "source": 70, - "pc": [ - 291, - 292, - 293 - ] - }, - { - "teal": 297, - "source": 72, - "pc": [ - 294, - 295 - ] - }, - { - "teal": 298, - "source": 72, - "pc": [ - 296 - ] - }, - { - "teal": 299, - "source": 72, - "pc": [ - 297 - ] - }, - { - "teal": 300, - "source": 72, - "pc": [ - 298 - ] - }, - { - "teal": 301, - "source": 72, - "pc": [ - 299 - ] - }, - { - "teal": 310, - "source": 75, - "pc": [ - 300, - 301 - ] - }, - { - "teal": 311, - "source": 76, - "pc": [ - 302, - 303 - ] - }, - { - "teal": 312, - "source": 76, - "pc": [ - 304, - 305 - ] - }, - { - "teal": 313, - "source": 76, - "pc": [ - 306 - ] - }, - { - "teal": 316, - "source": 76, - "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", - "pc": [ - 307 - ] - }, - { - "teal": 319, - "source": 75, - "pc": [ - 308, - 309 - ] - }, - { - "teal": 320, - "source": 77, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 321, - "source": 77, - "pc": [ - 312 - ] - }, - { - "teal": 322, - "source": 77, - "pc": [ - 313 - ] - }, - { - "teal": 323, - "source": 77, - "pc": [ - 314 - ] - }, - { - "teal": 326, - "source": 77, - "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"amount\",\"condition\":\"greaterThan\",\"expected\":\">this.previousBid.value\"}", - "pc": [ - 315 - ] - }, - { - "teal": 331, - "source": 81, - "pc": [ - 316 - ] - }, - { - "teal": 332, - "source": 81, - "pc": [ - 317, - 318 - ] - }, - { - "teal": 333, - "source": 81, - "pc": [ - 319, - 320 - ] - }, - { - "teal": 334, - "source": 81, - "pc": [ - 321 - ] - }, - { - "teal": 338, - "source": 82, - "pc": [ - 322 - ] - }, - { - "teal": 339, - "source": 82, - "pc": [ - 323, - 324 - ] - }, - { - "teal": 340, - "source": 82, - "pc": [ - 325, - 326 - ] - }, - { - "teal": 341, - "source": 82, - "pc": [ - 327 - ] - }, - { - "teal": 346, - "source": 85, - "pc": [ - 328, - 329 - ] - }, - { - "teal": 347, - "source": 85, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 348, - "source": 85, - "pc": [ - 332, - 333 - ] - }, - { - "teal": 349, - "source": 85, - "pc": [ - 334, - 335 - ] - }, - { - "teal": 350, - "source": 85, - "pc": [ - 336 - ] - }, - { - "teal": 351, - "source": 70, - "pc": [ - 337 - ] - }, - { - "teal": 356, - "source": 88, - "pc": [ - 338, - 339, - 340 - ] - }, - { - "teal": 357, - "source": 88, - "pc": [ - 341 - ] - }, - { - "teal": 358, - "source": 88, - "pc": [ - 342 - ] - }, - { - "teal": 362, - "source": 88, - "pc": [ - 343, - 344, - 345 - ] - }, - { - "teal": 365, - "source": 88, - "pc": [ - 346, - 347 - ] - }, - { - "teal": 366, - "source": 88, - "pc": [ - 348 - ] - }, - { - "teal": 370, - "source": 89, - "pc": [ - 349, - 350 - ] - }, - { - "teal": 371, - "source": 89, - "pc": [ - 351, - 352 - ] - }, - { - "teal": 372, - "source": 89, - "pc": [ - 353 - ] - }, - { - "teal": 373, - "source": 89, - "pc": [ - 354, - 355 - ] - }, - { - "teal": 377, - "source": 90, - "pc": [ - 356, - 357 - ] - }, - { - "teal": 378, - "source": 90, - "pc": [ - 358, - 359 - ] - }, - { - "teal": 384, - "source": 93, - "pc": [ - 360, - 361 - ] - }, - { - "teal": 385, - "source": 93, - "pc": [ - 362 - ] - }, - { - "teal": 386, - "source": 93, - "pc": [ - 363 - ] - }, - { - "teal": 387, - "source": 93, - "pc": [ - 364 - ] - }, - { - "teal": 388, - "source": 93, - "pc": [ - 365, - 366, - 367 - ] - }, - { - "teal": 393, - "source": 93, - "pc": [ - 368, - 369 - ] - }, - { - "teal": 394, - "source": 93, - "pc": [ - 370 - ] - }, - { - "teal": 395, - "source": 93, - "pc": [ - 371 - ] - }, - { - "teal": 396, - "source": 93, - "pc": [ - 372 - ] - }, - { - "teal": 397, - "source": 93, - "pc": [ - 373, - 374 - ] - }, - { - "teal": 402, - "source": 95, - "pc": [ - 375, - 376 - ] - }, - { - "teal": 403, - "source": 95, - "pc": [ - 377, - 378 - ] - }, - { - "teal": 404, - "source": 95, - "pc": [ - 379, - 380, - 381 - ] - }, - { - "teal": 408, - "source": 96, - "pc": [ - 382, - 383 - ] - }, - { - "teal": 409, - "source": 96, - "pc": [ - 384, - 385 - ] - }, - { - "teal": 410, - "source": 96, - "pc": [ - 386, - 387 - ] - }, - { - "teal": 411, - "source": 96, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 412, - "source": 96, - "pc": [ - 390 - ] - }, - { - "teal": 413, - "source": 96, - "pc": [ - 391 - ] - }, - { - "teal": 414, - "source": 88, - "pc": [ - 392 - ] - }, - { - "teal": 419, - "source": 99, - "pc": [ - 393, - 394, - 395 - ] - }, - { - "teal": 420, - "source": 99, - "pc": [ - 396 - ] - }, - { - "teal": 423, - "source": 99, - "pc": [ - 397, - 398, - 399 - ] - }, - { - "teal": 424, - "source": 99, - "pc": [ - 400 - ] - }, - { - "teal": 425, - "source": 99, - "pc": [ - 401 - ] - }, - { - "teal": 429, - "source": 99, - "pc": [ - 402, - 403, - 404 - ] - }, - { - "teal": 433, - "source": 100, - "pc": [ - 405, - 406 - ] - }, - { - "teal": 434, - "source": 100, - "pc": [ - 407 - ] - }, - { - "teal": 435, - "source": 100, - "pc": [ - 408 - ] - }, - { - "teal": 436, - "source": 100, - "pc": [ - 409 - ] - }, - { - "teal": 437, - "source": 100, - "pc": [ - 410 - ] - }, - { - "teal": 447, - "source": 103, - "pc": [ - 411 - ] - }, - { - "teal": 448, - "source": 103, - "pc": [ - 412 - ] - }, - { - "teal": 449, - "source": 103, - "pc": [ - 413, - 414 - ] - }, - { - "teal": 453, - "source": 104, - "pc": [ - 415 - ] - }, - { - "teal": 454, - "source": 104, - "pc": [ - 416 - ] - }, - { - "teal": 455, - "source": 104, - "pc": [ - 417, - 418 - ] - }, - { - "teal": 459, - "source": 105, - "pc": [ - 419, - 420 - ] - }, - { - "teal": 460, - "source": 105, - "pc": [ - 421, - 422 - ] - }, - { - "teal": 464, - "source": 106, - "pc": [ - 423 - ] - }, - { - "teal": 465, - "source": 106, - "pc": [ - 424 - ] - }, - { - "teal": 466, - "source": 106, - "pc": [ - 425, - 426 - ] - }, - { - "teal": 470, - "source": 107, - "pc": [ - 427 - ] - }, - { - "teal": 471, - "source": 107, - "pc": [ - 428 - ] - }, - { - "teal": 472, - "source": 107, - "pc": [ - 429, - 430 - ] - }, - { - "teal": 475, - "source": 103, - "pc": [ - 431 - ] - }, - { - "teal": 476, - "source": 103, - "pc": [ - 432, - 433 - ] - }, - { - "teal": 479, - "source": 103, - "pc": [ - 434 - ] - }, - { - "teal": 480, - "source": 99, - "pc": [ - 435 - ] - }, - { - "teal": 485, - "source": 111, - "pc": [ - 436, - 437, - 438 - ] - }, - { - "teal": 486, - "source": 111, - "pc": [ - 439 - ] - }, - { - "teal": 487, - "source": 111, - "pc": [ - 440 - ] - }, - { - "teal": 491, - "source": 111, - "pc": [ - 441, - 442, - 443 - ] - }, - { - "teal": 499, - "source": 112, - "pc": [ - 444 - ] - }, - { - "teal": 500, - "source": 112, - "pc": [ - 445 - ] - }, - { - "teal": 501, - "source": 112, - "pc": [ - 446, - 447 - ] - }, - { - "teal": 505, - "source": 113, - "pc": [ - 448, - 449 - ] - }, - { - "teal": 506, - "source": 113, - "pc": [ - 450, - 451 - ] - }, - { - "teal": 510, - "source": 114, - "pc": [ - 452, - 453 - ] - }, - { - "teal": 511, - "source": 114, - "pc": [ - 454, - 455 - ] - }, - { - "teal": 515, - "source": 115, - "pc": [ - 456 - ] - }, - { - "teal": 516, - "source": 115, - "pc": [ - 457, - 458 - ] - }, - { - "teal": 519, - "source": 112, - "pc": [ - 459 - ] - }, - { - "teal": 520, - "source": 112, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 523, - "source": 112, - "pc": [ - 462 - ] - }, - { - "teal": 524, - "source": 111, - "pc": [ - 463 - ] - }, - { - "teal": 527, - "source": 4, - "pc": [ - 464, - 465, - 466, - 467, - 468, - 469 - ] - }, - { - "teal": 528, - "source": 4, - "pc": [ - 470, - 471, - 472 - ] - }, - { - "teal": 529, - "source": 4, - "pc": [ - 473, - 474, - 475, - 476 - ] - }, - { - "teal": 532, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 477 - ] - }, - { - "teal": 535, - "source": 4, - "pc": [ - 478, - 479, - 480, - 481, - 482, - 483 - ] - }, - { - "teal": 536, - "source": 4, - "pc": [ - 484, - 485, - 486, - 487, - 488, - 489 - ] - }, - { - "teal": 537, - "source": 4, - "pc": [ - 490, - 491, - 492, - 493, - 494, - 495 - ] - }, - { - "teal": 538, - "source": 4, - "pc": [ - 496, - 497, - 498, - 499, - 500, - 501 - ] - }, - { - "teal": 539, - "source": 4, - "pc": [ - 502, - 503, - 504, - 505, - 506, - 507 - ] - }, - { - "teal": 540, - "source": 4, - "pc": [ - 508, - 509, - 510 - ] - }, - { - "teal": 541, - "source": 4, - "pc": [ - 511, - 512, - 513, - 514, - 515, - 516, - 517, - 518, - 519, - 520, - 521, - 522 - ] - }, - { - "teal": 544, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 523 - ] - }, - { - "teal": 547, - "source": 4, - "pc": [ - 524, - 525, - 526, - 527, - 528, - 529 - ] - }, - { - "teal": 548, - "source": 4, - "pc": [ - 530, - 531, - 532 - ] - }, - { - "teal": 549, - "source": 4, - "pc": [ - 533, - 534, - 535, - 536 - ] - }, - { - "teal": 552, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 537 - ] - }, - { - "teal": 555, - "source": 4, - "pc": [ - 538, - 539, - 540, - 541, - 542, - 543 - ] - }, - { - "teal": 556, - "source": 4, - "pc": [ - 544, - 545, - 546 - ] - }, - { - "teal": 557, - "source": 4, - "pc": [ - 547, - 548, - 549, - 550 - ] - }, - { - "teal": 560, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call DeleteApplication", - "pc": [ - 551 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 75 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 78 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 81 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 108 + ] + }, + { + "teal": 28, + "source": 17, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 29, + "source": 17, + "pc": [ + 112 + ] + }, + { + "teal": 30, + "source": 17, + "pc": [ + 113 + ] + }, + { + "teal": 34, + "source": 17, + "pc": [ + 114, + 115, + 116 + ] + }, + { + "teal": 38, + "source": 18, + "pc": [ + 117 + ] + }, + { + "teal": 39, + "source": 18, + "pc": [ + 118 + ] + }, + { + "teal": 40, + "source": 18, + "pc": [ + 119 + ] + }, + { + "teal": 44, + "source": 19, + "pc": [ + 120 + ] + }, + { + "teal": 45, + "source": 19, + "pc": [ + 121 + ] + }, + { + "teal": 46, + "source": 19, + "pc": [ + 122 + ] + }, + { + "teal": 50, + "source": 20, + "pc": [ + 123 + ] + }, + { + "teal": 51, + "source": 20, + "pc": [ + 124 + ] + }, + { + "teal": 52, + "source": 20, + "pc": [ + 125 + ] + }, + { + "teal": 56, + "source": 21, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 57, + "source": 21, + "pc": [ + 128 + ] + }, + { + "teal": 58, + "source": 21, + "pc": [ + 129 + ] + }, + { + "teal": 62, + "source": 24, + "pc": [ + 130 + ] + }, + { + "teal": 63, + "source": 24, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 64, + "source": 24, + "pc": [ + 133 + ] + }, + { + "teal": 65, + "source": 17, + "pc": [ + 134 + ] + }, + { + "teal": 70, + "source": 27, + "pc": [ + 135, + 136, + 137 + ] + }, + { + "teal": 71, + "source": 27, + "pc": [ + 138 + ] + }, + { + "teal": 74, + "source": 27, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 75, + "source": 27, + "pc": [ + 142 + ] + }, + { + "teal": 76, + "source": 27, + "pc": [ + 143 + ] + }, + { + "teal": 80, + "source": 27, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 86, + "source": 29, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 87, + "source": 29, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 88, + "source": 29, + "pc": [ + 151 + ] + }, + { + "teal": 91, + "source": 29, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"globals.creatorAddress\"}", + "pc": [ + 152 + ] + }, + { + "teal": 96, + "source": 32, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 97, + "source": 32, + "pc": [ + 155 + ] + }, + { + "teal": 98, + "source": 32, + "pc": [ + 156 + ] + }, + { + "teal": 99, + "source": 32, + "pc": [ + 157 + ] + }, + { + "teal": 100, + "source": 32, + "pc": [ + 158 + ] + }, + { + "teal": 105, + "source": 35, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 106, + "source": 35, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 107, + "source": 35, + "pc": [ + 163 + ] + }, + { + "teal": 116, + "source": 38, + "pc": [ + 164 + ] + }, + { + "teal": 117, + "source": 38, + "pc": [ + 165 + ] + }, + { + "teal": 118, + "source": 38, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 122, + "source": 39, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 123, + "source": 39, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 127, + "source": 40, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 128, + "source": 40, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 132, + "source": 41, + "pc": [ + 176 + ] + }, + { + "teal": 133, + "source": 41, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 136, + "source": 38, + "pc": [ + 179 + ] + }, + { + "teal": 137, + "source": 38, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 140, + "source": 38, + "pc": [ + 182 + ] + }, + { + "teal": 141, + "source": 27, + "pc": [ + 183 + ] + }, + { + "teal": 146, + "source": 45, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 147, + "source": 45, + "pc": [ + 186 + ] + }, + { + "teal": 148, + "source": 45, + "pc": [ + 187 + ] + }, + { + "teal": 149, + "source": 45, + "pc": [ + 188 + ] + }, + { + "teal": 150, + "source": 45, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 151, + "source": 45, + "pc": [ + 191 + ] + }, + { + "teal": 152, + "source": 45, + "pc": [ + 192 + ] + }, + { + "teal": 155, + "source": 45, + "errorMessage": "argument 0 (axfer) for startAuction must be a axfer transaction", + "pc": [ + 193 + ] + }, + { + "teal": 158, + "source": 45, + "pc": [ + 194, + 195, + 196 + ] + }, + { + "teal": 159, + "source": 45, + "pc": [ + 197 + ] + }, + { + "teal": 162, + "source": 45, + "pc": [ + 198, + 199, + 200 + ] + }, + { + "teal": 163, + "source": 45, + "pc": [ + 201 + ] + }, + { + "teal": 166, + "source": 45, + "pc": [ + 202, + 203, + 204 + ] + }, + { + "teal": 167, + "source": 45, + "pc": [ + 205 + ] + }, + { + "teal": 168, + "source": 45, + "pc": [ + 206 + ] + }, + { + "teal": 172, + "source": 45, + "pc": [ + 207, + 208, + 209 + ] + }, + { + "teal": 177, + "source": 46, + "pc": [ + 210, + 211 + ] + }, + { + "teal": 178, + "source": 46, + "pc": [ + 212, + 213 + ] + }, + { + "teal": 179, + "source": 46, + "pc": [ + 214 + ] + }, + { + "teal": 182, + "source": 46, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"globals.creatorAddress\"}", + "pc": [ + 215 + ] + }, + { + "teal": 187, + "source": 49, + "pc": [ + 216 + ] + }, + { + "teal": 188, + "source": 49, + "pc": [ + 217 + ] + }, + { + "teal": 189, + "source": 49, + "pc": [ + 218 + ] + }, + { + "teal": 190, + "source": 49, + "pc": [ + 219 + ] + }, + { + "teal": 191, + "source": 49, + "pc": [ + 220 + ] + }, + { + "teal": 197, + "source": 52, + "pc": [ + 221, + 222 + ] + }, + { + "teal": 198, + "source": 52, + "pc": [ + 223, + 224 + ] + }, + { + "teal": 199, + "source": 52, + "pc": [ + 225, + 226 + ] + }, + { + "teal": 200, + "source": 52, + "pc": [ + 227 + ] + }, + { + "teal": 203, + "source": 52, + "errorMessage": "transaction verification failed: {\"txn\":\"axfer\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 228 + ] + }, + { + "teal": 208, + "source": 55, + "pc": [ + 229 + ] + }, + { + "teal": 209, + "source": 55, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 210, + "source": 55, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 211, + "source": 55, + "pc": [ + 234 + ] + }, + { + "teal": 215, + "source": 56, + "pc": [ + 235 + ] + }, + { + "teal": 216, + "source": 56, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 217, + "source": 56, + "pc": [ + 238, + 239 + ] + }, + { + "teal": 218, + "source": 56, + "pc": [ + 240 + ] + }, + { + "teal": 219, + "source": 56, + "pc": [ + 241 + ] + }, + { + "teal": 223, + "source": 57, + "pc": [ + 242 + ] + }, + { + "teal": 224, + "source": 57, + "pc": [ + 243, + 244 + ] + }, + { + "teal": 225, + "source": 57, + "pc": [ + 245 + ] + }, + { + "teal": 226, + "source": 45, + "pc": [ + 246 + ] + }, + { + "teal": 230, + "source": 60, + "pc": [ + 247, + 248, + 249 + ] + }, + { + "teal": 237, + "source": 61, + "pc": [ + 250 + ] + }, + { + "teal": 238, + "source": 61, + "pc": [ + 251 + ] + }, + { + "teal": 239, + "source": 61, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 243, + "source": 62, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 244, + "source": 62, + "pc": [ + 256, + 257 + ] + }, + { + "teal": 248, + "source": 63, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 249, + "source": 63, + "pc": [ + 260, + 261 + ] + }, + { + "teal": 252, + "source": 61, + "pc": [ + 262 + ] + }, + { + "teal": 253, + "source": 61, + "pc": [ + 263, + 264 + ] + }, + { + "teal": 256, + "source": 61, + "pc": [ + 265 + ] + }, + { + "teal": 257, + "source": 60, + "pc": [ + 266 + ] + }, + { + "teal": 262, + "source": 67, + "pc": [ + 267, + 268, + 269 + ] + }, + { + "teal": 263, + "source": 67, + "pc": [ + 270 + ] + }, + { + "teal": 264, + "source": 67, + "pc": [ + 271 + ] + }, + { + "teal": 268, + "source": 67, + "pc": [ + 272, + 273, + 274 + ] + }, + { + "teal": 269, + "source": 67, + "pc": [ + 275 + ] + }, + { + "teal": 274, + "source": 70, + "pc": [ + 276, + 277 + ] + }, + { + "teal": 275, + "source": 70, + "pc": [ + 278 + ] + }, + { + "teal": 276, + "source": 70, + "pc": [ + 279 + ] + }, + { + "teal": 277, + "source": 70, + "pc": [ + 280 + ] + }, + { + "teal": 278, + "source": 70, + "pc": [ + 281, + 282 + ] + }, + { + "teal": 279, + "source": 70, + "pc": [ + 283 + ] + }, + { + "teal": 280, + "source": 70, + "pc": [ + 284 + ] + }, + { + "teal": 283, + "source": 70, + "errorMessage": "argument 0 (payment) for bid must be a pay transaction", + "pc": [ + 285 + ] + }, + { + "teal": 286, + "source": 70, + "pc": [ + 286, + 287, + 288 + ] + }, + { + "teal": 287, + "source": 70, + "pc": [ + 289 + ] + }, + { + "teal": 288, + "source": 70, + "pc": [ + 290 + ] + }, + { + "teal": 292, + "source": 70, + "pc": [ + 291, + 292, + 293 + ] + }, + { + "teal": 297, + "source": 72, + "pc": [ + 294, + 295 + ] + }, + { + "teal": 298, + "source": 72, + "pc": [ + 296 + ] + }, + { + "teal": 299, + "source": 72, + "pc": [ + 297 + ] + }, + { + "teal": 300, + "source": 72, + "pc": [ + 298 + ] + }, + { + "teal": 301, + "source": 72, + "pc": [ + 299 + ] + }, + { + "teal": 310, + "source": 75, + "pc": [ + 300, + 301 + ] + }, + { + "teal": 311, + "source": 76, + "pc": [ + 302, + 303 + ] + }, + { + "teal": 312, + "source": 76, + "pc": [ + 304, + 305 + ] + }, + { + "teal": 313, + "source": 76, + "pc": [ + 306 + ] + }, + { + "teal": 316, + "source": 76, + "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", + "pc": [ + 307 + ] + }, + { + "teal": 319, + "source": 75, + "pc": [ + 308, + 309 + ] + }, + { + "teal": 320, + "source": 77, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 321, + "source": 77, + "pc": [ + 312 + ] + }, + { + "teal": 322, + "source": 77, + "pc": [ + 313 + ] + }, + { + "teal": 323, + "source": 77, + "pc": [ + 314 + ] + }, + { + "teal": 326, + "source": 77, + "errorMessage": "transaction verification failed: {\"txn\":\"payment\",\"field\":\"amount\",\"condition\":\"greaterThan\",\"expected\":\">this.previousBid.value\"}", + "pc": [ + 315 + ] + }, + { + "teal": 331, + "source": 81, + "pc": [ + 316 + ] + }, + { + "teal": 332, + "source": 81, + "pc": [ + 317, + 318 + ] + }, + { + "teal": 333, + "source": 81, + "pc": [ + 319, + 320 + ] + }, + { + "teal": 334, + "source": 81, + "pc": [ + 321 + ] + }, + { + "teal": 338, + "source": 82, + "pc": [ + 322 + ] + }, + { + "teal": 339, + "source": 82, + "pc": [ + 323, + 324 + ] + }, + { + "teal": 340, + "source": 82, + "pc": [ + 325, + 326 + ] + }, + { + "teal": 341, + "source": 82, + "pc": [ + 327 + ] + }, + { + "teal": 346, + "source": 85, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 347, + "source": 85, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 348, + "source": 85, + "pc": [ + 332, + 333 + ] + }, + { + "teal": 349, + "source": 85, + "pc": [ + 334, + 335 + ] + }, + { + "teal": 350, + "source": 85, + "pc": [ + 336 + ] + }, + { + "teal": 351, + "source": 70, + "pc": [ + 337 + ] + }, + { + "teal": 356, + "source": 88, + "pc": [ + 338, + 339, + 340 + ] + }, + { + "teal": 357, + "source": 88, + "pc": [ + 341 + ] + }, + { + "teal": 358, + "source": 88, + "pc": [ + 342 + ] + }, + { + "teal": 362, + "source": 88, + "pc": [ + 343, + 344, + 345 + ] + }, + { + "teal": 365, + "source": 88, + "pc": [ + 346, + 347 + ] + }, + { + "teal": 366, + "source": 88, + "pc": [ + 348 + ] + }, + { + "teal": 370, + "source": 89, + "pc": [ + 349, + 350 + ] + }, + { + "teal": 371, + "source": 89, + "pc": [ + 351, + 352 + ] + }, + { + "teal": 372, + "source": 89, + "pc": [ + 353 + ] + }, + { + "teal": 373, + "source": 89, + "pc": [ + 354, + 355 + ] + }, + { + "teal": 377, + "source": 90, + "pc": [ + 356, + 357 + ] + }, + { + "teal": 378, + "source": 90, + "pc": [ + 358, + 359 + ] + }, + { + "teal": 384, + "source": 93, + "pc": [ + 360, + 361 + ] + }, + { + "teal": 385, + "source": 93, + "pc": [ + 362 + ] + }, + { + "teal": 386, + "source": 93, + "pc": [ + 363 + ] + }, + { + "teal": 387, + "source": 93, + "pc": [ + 364 + ] + }, + { + "teal": 388, + "source": 93, + "pc": [ + 365, + 366, + 367 + ] + }, + { + "teal": 393, + "source": 93, + "pc": [ + 368, + 369 + ] + }, + { + "teal": 394, + "source": 93, + "pc": [ + 370 + ] + }, + { + "teal": 395, + "source": 93, + "pc": [ + 371 + ] + }, + { + "teal": 396, + "source": 93, + "pc": [ + 372 + ] + }, + { + "teal": 397, + "source": 93, + "pc": [ + 373, + 374 + ] + }, + { + "teal": 402, + "source": 95, + "pc": [ + 375, + 376 + ] + }, + { + "teal": 403, + "source": 95, + "pc": [ + 377, + 378 + ] + }, + { + "teal": 404, + "source": 95, + "pc": [ + 379, + 380, + 381 + ] + }, + { + "teal": 408, + "source": 96, + "pc": [ + 382, + 383 + ] + }, + { + "teal": 409, + "source": 96, + "pc": [ + 384, + 385 + ] + }, + { + "teal": 410, + "source": 96, + "pc": [ + 386, + 387 + ] + }, + { + "teal": 411, + "source": 96, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 412, + "source": 96, + "pc": [ + 390 + ] + }, + { + "teal": 413, + "source": 96, + "pc": [ + 391 + ] + }, + { + "teal": 414, + "source": 88, + "pc": [ + 392 + ] + }, + { + "teal": 419, + "source": 99, + "pc": [ + 393, + 394, + 395 + ] + }, + { + "teal": 420, + "source": 99, + "pc": [ + 396 + ] + }, + { + "teal": 423, + "source": 99, + "pc": [ + 397, + 398, + 399 + ] + }, + { + "teal": 424, + "source": 99, + "pc": [ + 400 + ] + }, + { + "teal": 425, + "source": 99, + "pc": [ + 401 + ] + }, + { + "teal": 429, + "source": 99, + "pc": [ + 402, + 403, + 404 + ] + }, + { + "teal": 433, + "source": 100, + "pc": [ + 405, + 406 + ] + }, + { + "teal": 434, + "source": 100, + "pc": [ + 407 + ] + }, + { + "teal": 435, + "source": 100, + "pc": [ + 408 + ] + }, + { + "teal": 436, + "source": 100, + "pc": [ + 409 + ] + }, + { + "teal": 437, + "source": 100, + "pc": [ + 410 + ] + }, + { + "teal": 447, + "source": 103, + "pc": [ + 411 + ] + }, + { + "teal": 448, + "source": 103, + "pc": [ + 412 + ] + }, + { + "teal": 449, + "source": 103, + "pc": [ + 413, + 414 + ] + }, + { + "teal": 453, + "source": 104, + "pc": [ + 415 + ] + }, + { + "teal": 454, + "source": 104, + "pc": [ + 416 + ] + }, + { + "teal": 455, + "source": 104, + "pc": [ + 417, + 418 + ] + }, + { + "teal": 459, + "source": 105, + "pc": [ + 419, + 420 + ] + }, + { + "teal": 460, + "source": 105, + "pc": [ + 421, + 422 + ] + }, + { + "teal": 464, + "source": 106, + "pc": [ + 423 + ] + }, + { + "teal": 465, + "source": 106, + "pc": [ + 424 + ] + }, + { + "teal": 466, + "source": 106, + "pc": [ + 425, + 426 + ] + }, + { + "teal": 470, + "source": 107, + "pc": [ + 427 + ] + }, + { + "teal": 471, + "source": 107, + "pc": [ + 428 + ] + }, + { + "teal": 472, + "source": 107, + "pc": [ + 429, + 430 + ] + }, + { + "teal": 475, + "source": 103, + "pc": [ + 431 + ] + }, + { + "teal": 476, + "source": 103, + "pc": [ + 432, + 433 + ] + }, + { + "teal": 479, + "source": 103, + "pc": [ + 434 + ] + }, + { + "teal": 480, + "source": 99, + "pc": [ + 435 + ] + }, + { + "teal": 485, + "source": 111, + "pc": [ + 436, + 437, + 438 + ] + }, + { + "teal": 486, + "source": 111, + "pc": [ + 439 + ] + }, + { + "teal": 487, + "source": 111, + "pc": [ + 440 + ] + }, + { + "teal": 491, + "source": 111, + "pc": [ + 441, + 442, + 443 + ] + }, + { + "teal": 499, + "source": 112, + "pc": [ + 444 + ] + }, + { + "teal": 500, + "source": 112, + "pc": [ + 445 + ] + }, + { + "teal": 501, + "source": 112, + "pc": [ + 446, + 447 + ] + }, + { + "teal": 505, + "source": 113, + "pc": [ + 448, + 449 + ] + }, + { + "teal": 506, + "source": 113, + "pc": [ + 450, + 451 + ] + }, + { + "teal": 510, + "source": 114, + "pc": [ + 452, + 453 + ] + }, + { + "teal": 511, + "source": 114, + "pc": [ + 454, + 455 + ] + }, + { + "teal": 515, + "source": 115, + "pc": [ + 456 + ] + }, + { + "teal": 516, + "source": 115, + "pc": [ + 457, + 458 + ] + }, + { + "teal": 519, + "source": 112, + "pc": [ + 459 + ] + }, + { + "teal": 520, + "source": 112, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 523, + "source": 112, + "pc": [ + 462 + ] + }, + { + "teal": 524, + "source": 111, + "pc": [ + 463 + ] + }, + { + "teal": 527, + "source": 4, + "pc": [ + 464, + 465, + 466, + 467, + 468, + 469 + ] + }, + { + "teal": 528, + "source": 4, + "pc": [ + 470, + 471, + 472 + ] + }, + { + "teal": 529, + "source": 4, + "pc": [ + 473, + 474, + 475, + 476 + ] + }, + { + "teal": 532, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 477 + ] + }, + { + "teal": 535, + "source": 4, + "pc": [ + 478, + 479, + 480, + 481, + 482, + 483 + ] + }, + { + "teal": 536, + "source": 4, + "pc": [ + 484, + 485, + 486, + 487, + 488, + 489 + ] + }, + { + "teal": 537, + "source": 4, + "pc": [ + 490, + 491, + 492, + 493, + 494, + 495 + ] + }, + { + "teal": 538, + "source": 4, + "pc": [ + 496, + 497, + 498, + 499, + 500, + 501 + ] + }, + { + "teal": 539, + "source": 4, + "pc": [ + 502, + 503, + 504, + 505, + 506, + 507 + ] + }, + { + "teal": 540, + "source": 4, + "pc": [ + 508, + 509, + 510 + ] + }, + { + "teal": 541, + "source": 4, + "pc": [ + 511, + 512, + 513, + 514, + 515, + 516, + 517, + 518, + 519, + 520, + 521, + 522 + ] + }, + { + "teal": 544, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 523 + ] + }, + { + "teal": 547, + "source": 4, + "pc": [ + 524, + 525, + 526, + 527, + 528, + 529 + ] + }, + { + "teal": 548, + "source": 4, + "pc": [ + 530, + 531, + 532 + ] + }, + { + "teal": 549, + "source": 4, + "pc": [ + 533, + 534, + 535, + 536 + ] + }, + { + "teal": 552, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 537 + ] + }, + { + "teal": 555, + "source": 4, + "pc": [ + 538, + 539, + 540, + 541, + 542, + 543 + ] + }, + { + "teal": 556, + "source": 4, + "pc": [ + 544, + 545, + 546 + ] + }, + { + "teal": 557, + "source": 4, + "pc": [ + 547, + 548, + 549, + 550 + ] + }, + { + "teal": 560, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call DeleteApplication", + "pc": [ + 551 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9EZWxldGVBcHBsaWNhdGlvbiAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIGNyZWF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpOiB2b2lkCmNyZWF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTgKCS8vIHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9IDAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjE5CgkvLyB0aGlzLnByZXZpb3VzQmlkLnZhbHVlID0gMAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjAKCS8vIHRoaXMuYXNhQW10LnZhbHVlID0gMAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjEKCS8vIHRoaXMuYXNhLnZhbHVlID0gQXNzZXRJRC56ZXJvSW5kZXgKCWJ5dGUgMHg2MTczNjEgLy8gImFzYSIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjI0CgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQ2NDY1NzIgLy8gInByZXZpb3VzQmlkZGVyIgoJZ2xvYmFsIFplcm9BZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vcHRJbnRvQXNzZXQ6CgkvLyBhc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgb3B0SW50b0Fzc2V0CglpbnQgMQoJcmV0dXJuCgovLyBvcHRJbnRvQXNzZXQoYXNzZXQ6IEFzc2V0SUQpOiB2b2lkCm9wdEludG9Bc3NldDoKCXByb3RvIDEgMAoKCS8vIE9ubHkgYWxsb3cgYXBwIGNyZWF0b3IgdG8gb3B0IHRoZSBhcHAgYWNjb3VudCBpbnRvIGEgQVNBCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoyOQoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6Imdsb2JhbHMuY3JlYXRvckFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gVmVyaWZ5IGEgQVNBIGhhc24ndCBhbHJlYWR5IGJlZW4gb3B0ZWQgaW50bwoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmFzYS52YWx1ZSA9PT0gQXNzZXRJRC56ZXJvSW5kZXgpCglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCT09Cglhc3NlcnQKCgkvLyBTYXZlIEFTQSBJRCBpbiBnbG9iYWwgc3RhdGUKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjM1CgkvLyB0aGlzLmFzYS52YWx1ZSA9IGFzc2V0CglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gU3VibWl0IG9wdC1pbiB0cmFuc2FjdGlvbjogMCBhc3NldCB0cmFuc2ZlciB0byBzZWxmCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czozOAoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzkKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0MAoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQxCgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKKmFiaV9yb3V0ZV9zdGFydEF1Y3Rpb246CgkvLyBheGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGF4ZmVyKSBmb3Igc3RhcnRBdWN0aW9uIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gbGVuZ3RoOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKCWNhbGxzdWIgc3RhcnRBdWN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBzdGFydEF1Y3Rpb24oc3RhcnRpbmdQcmljZTogdWludDY0LCBsZW5ndGg6IHVpbnQ2NCwgYXhmZXI6IEFzc2V0VHJhbnNmZXJUeG4pOiB2b2lkCnN0YXJ0QXVjdGlvbjoKCXByb3RvIDMgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQ2CgkvLyB2ZXJpZnlBcHBDYWxsVHhuKHRoaXMudHhuLCB7IHNlbmRlcjogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBFbnN1cmUgdGhlIGF1Y3Rpb24gaGFzbid0IGFscmVhZHkgYmVlbiBzdGFydGVkCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0OQoJLy8gYXNzZXJ0KHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9PT0gMCkKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIFZlcmlmeSBheGZlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NTIKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oYXhmZXIsIHsgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcyB9KQoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMyAvLyBheGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJheGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBTZXQgZ2xvYmFsIHN0YXRlCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NQoJLy8gdGhpcy5hc2FBbXQudmFsdWUgPSBheGZlci5hc3NldEFtb3VudAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJZnJhbWVfZGlnIC0zIC8vIGF4ZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NgoJLy8gdGhpcy5hdWN0aW9uRW5kLnZhbHVlID0gZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAgKyBsZW5ndGgKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGg6IHVpbnQ2NAoJKwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NwoJLy8gdGhpcy5wcmV2aW91c0JpZC52YWx1ZSA9IHN0YXJ0aW5nUHJpY2UKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWZyYW1lX2RpZyAtMSAvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHBheShyZWNlaXZlcjogQWRkcmVzcywgYW1vdW50OiB1aW50NjQpOiB2b2lkCnBheToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICByZWNlaXZlcjogcmVjZWl2ZXIsCgkvLyAgICAgICBhbW91bnQ6IGFtb3VudCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYyCgkvLyByZWNlaXZlcjogcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYzCgkvLyBhbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCXJldHN1YgoKLy8gYmlkKHBheSl2b2lkCiphYmlfcm91dGVfYmlkOgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGJpZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJpZChwYXkpdm9pZAoJY2FsbHN1YiBiaWQKCWludCAxCglyZXR1cm4KCi8vIGJpZChwYXltZW50OiBQYXlUeG4pOiB2b2lkCmJpZDoKCXByb3RvIDEgMAoKCS8vIEVuc3VyZSBhdWN0aW9uIGhhc24ndCBlbmRlZAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzIKCS8vIGFzc2VydChnbG9iYWxzLmxhdGVzdFRpbWVzdGFtcCA8IHRoaXMuYXVjdGlvbkVuZC52YWx1ZSkKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0Cgk8Cglhc3NlcnQKCgkvLyBWZXJpZnkgcGF5bWVudCB0cmFuc2FjdGlvbgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzUKCS8vIHZlcmlmeVBheVR4bihwYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogdGhpcy5wcmV2aW91c0JpZC52YWx1ZSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWFwcF9nbG9iYWxfZ2V0Cgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPnRoaXMucHJldmlvdXNCaWQudmFsdWUifQoJYXNzZXJ0CgoJLy8gU2V0IGdsb2JhbCBzdGF0ZQoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODEKCS8vIHRoaXMucHJldmlvdXNCaWQudmFsdWUgPSBwYXltZW50LmFtb3VudAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjgyCgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gcGF5bWVudC5zZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWZyYW1lX2RpZyAtMSAvLyBwYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyBVcGRhdGUgY2xhaW1hYmxlIGFtb3VudAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODUKCS8vIHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUgPSBwYXltZW50LmFtb3VudAoJdHhuIFNlbmRlcgoJYnl0ZSAweDYzNmM2MTY5NmQ2MTYyNmM2NTQxNmQ2Zjc1NmU3NCAvLyAiY2xhaW1hYmxlQW1vdW50IgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGNsYWltQmlkcygpdm9pZAoqYWJpX3JvdXRlX2NsYWltQmlkczoKCS8vIGV4ZWN1dGUgY2xhaW1CaWRzKCl2b2lkCgljYWxsc3ViIGNsYWltQmlkcwoJaW50IDEKCXJldHVybgoKLy8gY2xhaW1CaWRzKCk6IHZvaWQKY2xhaW1CaWRzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjg5CgkvLyBvcmlnaW5hbEFtb3VudCA9IHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzZjNjE2OTZkNjE2MjZjNjU0MTZkNmY3NTZlNzQgLy8gImNsYWltYWJsZUFtb3VudCIKCWFwcF9sb2NhbF9nZXQKCWZyYW1lX2J1cnkgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6OTAKCS8vIGFtb3VudCA9IG9yaWdpbmFsQW1vdW50CglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYW1vdW50OiB1aW50NjQKCgkvLyBzdWJ0cmFjdCBwcmV2aW91cyBiaWQgaWYgc2VuZGVyIGlzIHByZXZpb3VzIGJpZGRlcgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyBhbW91bnQgPSBhbW91bnQgLSB0aGlzLnByZXZpb3VzQmlkLnZhbHVlCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWZyYW1lX2J1cnkgMSAvLyBhbW91bnQ6IHVpbnQ2NAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NQoJLy8gdGhpcy5wYXkodGhpcy50eG4uc2VuZGVyLCBhbW91bnQpCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwYXkKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NgoJLy8gdGhpcy5jbGFpbWFibGVBbW91bnQodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IG9yaWdpbmFsQW1vdW50IC0gYW1vdW50Cgl0eG4gU2VuZGVyCglieXRlIDB4NjM2YzYxNjk2ZDYxNjI2YzY1NDE2ZDZmNzU2ZTc0IC8vICJjbGFpbWFibGVBbW91bnQiCglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJLQoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBjbGFpbV9hc3NldCh1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2NsYWltX2Fzc2V0OgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2xhaW1fYXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgY2xhaW1fYXNzZXQKCWludCAxCglyZXR1cm4KCi8vIGNsYWltX2Fzc2V0KGFzc2V0OiBBc3NldElEKTogdm9pZApjbGFpbV9hc3NldDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wID4gdGhpcy5hdWN0aW9uRW5kLnZhbHVlKQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJYnl0ZSAweDYxNzU2Mzc0Njk2ZjZlNDU2ZTY0IC8vICJhdWN0aW9uRW5kIgoJYXBwX2dsb2JhbF9nZXQKCT4KCWFzc2VydAoKCS8vIFNlbmQgQVNBIHRvIHByZXZpb3VzIGJpZGRlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTAzCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlLAoJLy8gICAgICAgeGZlckFzc2V0OiBhc3NldCwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB0aGlzLmFzYUFtdC52YWx1ZSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5wcmV2aW91c0JpZGRlci52YWx1ZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA0CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlCglieXRlIDB4NzA3MjY1NzY2OTZmNzU3MzQyNjk2NDY0NjU3MiAvLyAicHJldmlvdXNCaWRkZXIiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA1CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA2CgkvLyBhc3NldEFtb3VudDogdGhpcy5hc2FBbXQudmFsdWUKCWJ5dGUgMHg2MTczNjE0MTZkNzQgLy8gImFzYUFtdCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA3CgkvLyBhc3NldENsb3NlVG86IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0Q2xvc2VUbwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTIKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiBnbG9iYWxzLmNyZWF0b3JBZGRyZXNzLAoJLy8gICAgICAgY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExMwoJLy8gcmVjZWl2ZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExNAoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcwoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTUKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcHRJbnRvQXNzZXQodWludDY0KXZvaWQiCgltZXRob2QgInN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQiCgltZXRob2QgImJpZChwYXkpdm9pZCIKCW1ldGhvZCAiY2xhaW1CaWRzKCl2b2lkIgoJbWV0aG9kICJjbGFpbV9hc3NldCh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW50b0Fzc2V0ICphYmlfcm91dGVfc3RhcnRBdWN0aW9uICphYmlfcm91dGVfYmlkICphYmlfcm91dGVfY2xhaW1CaWRzICphYmlfcm91dGVfY2xhaW1fYXNzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJvcHRJblRvQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wdEluVG9BcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnIKCipjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uOgoJbWV0aG9kICJkZWxldGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGVsZXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBEZWxldGVBcHBsaWNhdGlvbgoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9EZWxldGVBcHBsaWNhdGlvbiAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIGNyZWF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpOiB2b2lkCmNyZWF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTgKCS8vIHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9IDAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjE5CgkvLyB0aGlzLnByZXZpb3VzQmlkLnZhbHVlID0gMAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjAKCS8vIHRoaXMuYXNhQW10LnZhbHVlID0gMAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MjEKCS8vIHRoaXMuYXNhLnZhbHVlID0gQXNzZXRJRC56ZXJvSW5kZXgKCWJ5dGUgMHg2MTczNjEgLy8gImFzYSIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjI0CgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQ2NDY1NzIgLy8gInByZXZpb3VzQmlkZGVyIgoJZ2xvYmFsIFplcm9BZGRyZXNzCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vcHRJbnRvQXNzZXQ6CgkvLyBhc3NldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvcHRJbnRvQXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgb3B0SW50b0Fzc2V0CglpbnQgMQoJcmV0dXJuCgovLyBvcHRJbnRvQXNzZXQoYXNzZXQ6IEFzc2V0SUQpOiB2b2lkCm9wdEludG9Bc3NldDoKCXByb3RvIDEgMAoKCS8vIE9ubHkgYWxsb3cgYXBwIGNyZWF0b3IgdG8gb3B0IHRoZSBhcHAgYWNjb3VudCBpbnRvIGEgQVNBCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoyOQoJLy8gdmVyaWZ5QXBwQ2FsbFR4bih0aGlzLnR4biwgeyBzZW5kZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCXR4biBTZW5kZXIKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6Imdsb2JhbHMuY3JlYXRvckFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gVmVyaWZ5IGEgQVNBIGhhc24ndCBhbHJlYWR5IGJlZW4gb3B0ZWQgaW50bwoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmFzYS52YWx1ZSA9PT0gQXNzZXRJRC56ZXJvSW5kZXgpCglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCT09Cglhc3NlcnQKCgkvLyBTYXZlIEFTQSBJRCBpbiBnbG9iYWwgc3RhdGUKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjM1CgkvLyB0aGlzLmFzYS52YWx1ZSA9IGFzc2V0CglieXRlIDB4NjE3MzYxIC8vICJhc2EiCglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gU3VibWl0IG9wdC1pbiB0cmFuc2FjdGlvbjogMCBhc3NldCB0cmFuc2ZlciB0byBzZWxmCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czozOAoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogYXNzZXQsCgkvLyAgICAgICBhc3NldEFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MzkKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0MAoJLy8geGZlckFzc2V0OiBhc3NldAoJZnJhbWVfZGlnIC0xIC8vIGFzc2V0OiBBc3NldElECglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQxCgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKKmFiaV9yb3V0ZV9zdGFydEF1Y3Rpb246CgkvLyBheGZlcjogYXhmZXIKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGF4ZmVyKSBmb3Igc3RhcnRBdWN0aW9uIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gbGVuZ3RoOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQKCWNhbGxzdWIgc3RhcnRBdWN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBzdGFydEF1Y3Rpb24oc3RhcnRpbmdQcmljZTogdWludDY0LCBsZW5ndGg6IHVpbnQ2NCwgYXhmZXI6IEFzc2V0VHJhbnNmZXJUeG4pOiB2b2lkCnN0YXJ0QXVjdGlvbjoKCXByb3RvIDMgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjQ2CgkvLyB2ZXJpZnlBcHBDYWxsVHhuKHRoaXMudHhuLCB7IHNlbmRlcjogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiZ2xvYmFscy5jcmVhdG9yQWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBFbnN1cmUgdGhlIGF1Y3Rpb24gaGFzbid0IGFscmVhZHkgYmVlbiBzdGFydGVkCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo0OQoJLy8gYXNzZXJ0KHRoaXMuYXVjdGlvbkVuZC52YWx1ZSA9PT0gMCkKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIFZlcmlmeSBheGZlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NTIKCS8vIHZlcmlmeUFzc2V0VHJhbnNmZXJUeG4oYXhmZXIsIHsgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcyB9KQoJLy8gdmVyaWZ5IGFzc2V0UmVjZWl2ZXIKCWZyYW1lX2RpZyAtMyAvLyBheGZlcjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJheGZlciIsImZpZWxkIjoiYXNzZXRSZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBTZXQgZ2xvYmFsIHN0YXRlCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NQoJLy8gdGhpcy5hc2FBbXQudmFsdWUgPSBheGZlci5hc3NldEFtb3VudAoJYnl0ZSAweDYxNzM2MTQxNmQ3NCAvLyAiYXNhQW10IgoJZnJhbWVfZGlnIC0zIC8vIGF4ZmVyOiBBc3NldFRyYW5zZmVyVHhuCglndHhucyBBc3NldEFtb3VudAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NgoJLy8gdGhpcy5hdWN0aW9uRW5kLnZhbHVlID0gZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAgKyBsZW5ndGgKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGg6IHVpbnQ2NAoJKwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo1NwoJLy8gdGhpcy5wcmV2aW91c0JpZC52YWx1ZSA9IHN0YXJ0aW5nUHJpY2UKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWZyYW1lX2RpZyAtMSAvLyBzdGFydGluZ1ByaWNlOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHBheShyZWNlaXZlcjogQWRkcmVzcywgYW1vdW50OiB1aW50NjQpOiB2b2lkCnBheToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICByZWNlaXZlcjogcmVjZWl2ZXIsCgkvLyAgICAgICBhbW91bnQ6IGFtb3VudCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYyCgkvLyByZWNlaXZlcjogcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjYzCgkvLyBhbW91bnQ6IGFtb3VudAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudDogdWludDY0CglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCXJldHN1YgoKLy8gYmlkKHBheSl2b2lkCiphYmlfcm91dGVfYmlkOgoJLy8gcGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF5bWVudCkgZm9yIGJpZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGJpZChwYXkpdm9pZAoJY2FsbHN1YiBiaWQKCWludCAxCglyZXR1cm4KCi8vIGJpZChwYXltZW50OiBQYXlUeG4pOiB2b2lkCmJpZDoKCXByb3RvIDEgMAoKCS8vIEVuc3VyZSBhdWN0aW9uIGhhc24ndCBlbmRlZAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzIKCS8vIGFzc2VydChnbG9iYWxzLmxhdGVzdFRpbWVzdGFtcCA8IHRoaXMuYXVjdGlvbkVuZC52YWx1ZSkKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCWJ5dGUgMHg2MTc1NjM3NDY5NmY2ZTQ1NmU2NCAvLyAiYXVjdGlvbkVuZCIKCWFwcF9nbG9iYWxfZ2V0Cgk8Cglhc3NlcnQKCgkvLyBWZXJpZnkgcGF5bWVudCB0cmFuc2FjdGlvbgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6NzUKCS8vIHZlcmlmeVBheVR4bihwYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHRoaXMudHhuLnNlbmRlciwKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogdGhpcy5wcmV2aW91c0JpZC52YWx1ZSB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gcGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0IC8vICJwcmV2aW91c0JpZCIKCWFwcF9nbG9iYWxfZ2V0Cgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJwYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPnRoaXMucHJldmlvdXNCaWQudmFsdWUifQoJYXNzZXJ0CgoJLy8gU2V0IGdsb2JhbCBzdGF0ZQoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODEKCS8vIHRoaXMucHJldmlvdXNCaWQudmFsdWUgPSBwYXltZW50LmFtb3VudAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjgyCgkvLyB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlID0gcGF5bWVudC5zZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWZyYW1lX2RpZyAtMSAvLyBwYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyBVcGRhdGUgY2xhaW1hYmxlIGFtb3VudAoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6ODUKCS8vIHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUgPSBwYXltZW50LmFtb3VudAoJdHhuIFNlbmRlcgoJYnl0ZSAweDYzNmM2MTY5NmQ2MTYyNmM2NTQxNmQ2Zjc1NmU3NCAvLyAiY2xhaW1hYmxlQW1vdW50IgoJZnJhbWVfZGlnIC0xIC8vIHBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGNsYWltQmlkcygpdm9pZAoqYWJpX3JvdXRlX2NsYWltQmlkczoKCS8vIGV4ZWN1dGUgY2xhaW1CaWRzKCl2b2lkCgljYWxsc3ViIGNsYWltQmlkcwoJaW50IDEKCXJldHVybgoKLy8gY2xhaW1CaWRzKCk6IHZvaWQKY2xhaW1CaWRzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjg5CgkvLyBvcmlnaW5hbEFtb3VudCA9IHRoaXMuY2xhaW1hYmxlQW1vdW50KHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzZjNjE2OTZkNjE2MjZjNjU0MTZkNmY3NTZlNzQgLy8gImNsYWltYWJsZUFtb3VudCIKCWFwcF9sb2NhbF9nZXQKCWZyYW1lX2J1cnkgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6OTAKCS8vIGFtb3VudCA9IG9yaWdpbmFsQW1vdW50CglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYW1vdW50OiB1aW50NjQKCgkvLyBzdWJ0cmFjdCBwcmV2aW91cyBiaWQgaWYgc2VuZGVyIGlzIHByZXZpb3VzIGJpZGRlcgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCXR4biBTZW5kZXIKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjkzCgkvLyBhbW91bnQgPSBhbW91bnQgLSB0aGlzLnByZXZpb3VzQmlkLnZhbHVlCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJYnl0ZSAweDcwNzI2NTc2Njk2Zjc1NzM0MjY5NjQgLy8gInByZXZpb3VzQmlkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWZyYW1lX2J1cnkgMSAvLyBhbW91bnQ6IHVpbnQ2NAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NQoJLy8gdGhpcy5wYXkodGhpcy50eG4uc2VuZGVyLCBhbW91bnQpCglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwYXkKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czo5NgoJLy8gdGhpcy5jbGFpbWFibGVBbW91bnQodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IG9yaWdpbmFsQW1vdW50IC0gYW1vdW50Cgl0eG4gU2VuZGVyCglieXRlIDB4NjM2YzYxNjk2ZDYxNjI2YzY1NDE2ZDZmNzU2ZTc0IC8vICJjbGFpbWFibGVBbW91bnQiCglmcmFtZV9kaWcgMCAvLyBvcmlnaW5hbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBhbW91bnQ6IHVpbnQ2NAoJLQoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBjbGFpbV9hc3NldCh1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2NsYWltX2Fzc2V0OgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2xhaW1fYXNzZXQodWludDY0KXZvaWQKCWNhbGxzdWIgY2xhaW1fYXNzZXQKCWludCAxCglyZXR1cm4KCi8vIGNsYWltX2Fzc2V0KGFzc2V0OiBBc3NldElEKTogdm9pZApjbGFpbV9hc3NldDoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wID4gdGhpcy5hdWN0aW9uRW5kLnZhbHVlKQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJYnl0ZSAweDYxNzU2Mzc0Njk2ZjZlNDU2ZTY0IC8vICJhdWN0aW9uRW5kIgoJYXBwX2dsb2JhbF9nZXQKCT4KCWFzc2VydAoKCS8vIFNlbmQgQVNBIHRvIHByZXZpb3VzIGJpZGRlcgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTAzCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlLAoJLy8gICAgICAgeGZlckFzc2V0OiBhc3NldCwKCS8vICAgICAgIGFzc2V0QW1vdW50OiB0aGlzLmFzYUFtdC52YWx1ZSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5wcmV2aW91c0JpZGRlci52YWx1ZSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA0CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLnByZXZpb3VzQmlkZGVyLnZhbHVlCglieXRlIDB4NzA3MjY1NzY2OTZmNzU3MzQyNjk2NDY0NjU3MiAvLyAicHJldmlvdXNCaWRkZXIiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA1CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA2CgkvLyBhc3NldEFtb3VudDogdGhpcy5hc2FBbXQudmFsdWUKCWJ5dGUgMHg2MTczNjE0MTZkNzQgLy8gImFzYUFtdCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gZXhhbXBsZXMvYXVjdGlvbi9hdWN0aW9uLmFsZ28udHM6MTA3CgkvLyBhc3NldENsb3NlVG86IHRoaXMucHJldmlvdXNCaWRkZXIudmFsdWUKCWJ5dGUgMHg3MDcyNjU3NjY5NmY3NTczNDI2OTY0NjQ2NTcyIC8vICJwcmV2aW91c0JpZGRlciIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFzc2V0Q2xvc2VUbwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTIKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIHJlY2VpdmVyOiBnbG9iYWxzLmNyZWF0b3JBZGRyZXNzLAoJLy8gICAgICAgY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogMCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExMwoJLy8gcmVjZWl2ZXI6IGdsb2JhbHMuY3JlYXRvckFkZHJlc3MKCWdsb2JhbCBDcmVhdG9yQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL2F1Y3Rpb24vYXVjdGlvbi5hbGdvLnRzOjExNAoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy5jcmVhdG9yQWRkcmVzcwoJZ2xvYmFsIENyZWF0b3JBZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyBleGFtcGxlcy9hdWN0aW9uL2F1Y3Rpb24uYWxnby50czoxMTUKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcHRJbnRvQXNzZXQodWludDY0KXZvaWQiCgltZXRob2QgInN0YXJ0QXVjdGlvbih1aW50NjQsdWludDY0LGF4ZmVyKXZvaWQiCgltZXRob2QgImJpZChwYXkpdm9pZCIKCW1ldGhvZCAiY2xhaW1CaWRzKCl2b2lkIgoJbWV0aG9kICJjbGFpbV9hc3NldCh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW50b0Fzc2V0ICphYmlfcm91dGVfc3RhcnRBdWN0aW9uICphYmlfcm91dGVfYmlkICphYmlfcm91dGVfY2xhaW1CaWRzICphYmlfcm91dGVfY2xhaW1fYXNzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJvcHRJblRvQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wdEluVG9BcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnIKCipjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uOgoJbWV0aG9kICJkZWxldGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGVsZXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBEZWxldGVBcHBsaWNhdGlvbgoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/big_box/artifacts/BigBox.approval.teal b/examples/big_box/artifacts/BigBox.approval.teal index 7b850403a..d02a74df8 100644 --- a/examples/big_box/artifacts/BigBox.approval.teal +++ b/examples/big_box/artifacts/BigBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/big_box/artifacts/BigBox.arc32.json b/examples/big_box/artifacts/BigBox.arc32.json index 9db4970ea..e60bbbca5 100644 --- a/examples/big_box/artifacts/BigBox.arc32.json +++ b/examples/big_box/artifacts/BigBox.arc32.json @@ -54,7 +54,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkOgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAobWJyUGF5bWVudCkgZm9yIHN0YXJ0VXBsb2FkIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGVuZEJveFNpemU6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIG51bUJveGVzOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RhcnRVcGxvYWQoc3RyaW5nLHVpbnQ2NCx1aW50NjQscGF5KXZvaWQKCWNhbGxzdWIgc3RhcnRVcGxvYWQKCWludCAxCglyZXR1cm4KCi8vIHN0YXJ0VXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIG51bUJveGVzOiB1aW50NjQsIGVuZEJveFNpemU6IHVpbnQ2NCwgbWJyUGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLwovLyBBbGxvY2F0ZSBib3hlcyB0byBiZWdpbiBkYXRhIHVwbG9hZCBwcm9jZXNzCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBudW1Cb3hlcyBUaGUgbnVtYmVyIG9mIGJveGVzIHRoYXQgdGhlIGRhdGEgd2lsbCB0YWtlIHVwCi8vIEBwYXJhbSBlbmRCb3hTaXplIFRoZSBzaXplIG9mIHRoZSBsYXN0IGJveAovLyBAcGFyYW0gbWJyUGF5bWVudCBQYXltZW50IGZyb20gdGhlIHVwbG9hZGVyIHRvIGNvdmVyIHRoZSBib3ggTUJSCnN0YXJ0VXBsb2FkOgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjQxCgkvLyBzdGFydEJveCA9IHRoaXMuY3VycmVudEluZGV4LnZhbHVlCglieXRlIDB4NjM3NTcyNzI2NTZlNzQ0OTZlNjQ2NTc4IC8vICJjdXJyZW50SW5kZXgiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfYnVyeSAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo0MgoJLy8gZW5kQm94ID0gc3RhcnRCb3ggKyBudW1Cb3hlcyAtIDEKCWZyYW1lX2RpZyAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBudW1Cb3hlczogdWludDY0CgkrCglpbnQgMQoJLQoJZnJhbWVfYnVyeSAxIC8vIGVuZEJveDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NDQKCS8vIG1ldGFkYXRhOiBNZXRhZGF0YSA9IHsKCS8vICAgICAgIHN0YXJ0OiBzdGFydEJveCwKCS8vICAgICAgIGVuZDogZW5kQm94LAoJLy8gICAgICAgc3RhdHVzOiBJTl9QUk9HUkVTUywKCS8vICAgICAgIGVuZFNpemU6IGVuZEJveFNpemUsCgkvLyAgICAgfQoJZnJhbWVfZGlnIDAgLy8gc3RhcnRCb3g6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwCgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyBlbmRCb3hTaXplOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJZnJhbWVfYnVyeSAyIC8vIG1ldGFkYXRhOiBNZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUxCgkvLyBhc3NlcnQoIXRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglib3hfbGVuCglzd2FwCglwb3AKCSEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUzCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZSA9IG1ldGFkYXRhCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfZGlnIDIgLy8gbWV0YWRhdGE6IE1ldGFkYXRhCglib3hfcHV0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NTUKCS8vIHRoaXMuY3VycmVudEluZGV4LnZhbHVlID0gZW5kQm94ICsgMQoJYnl0ZSAweDYzNzU3MjcyNjU2ZTc0NDk2ZTY0NjU3OCAvLyAiY3VycmVudEluZGV4IgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWludCAxCgkrCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjU3CgkvLyB0b3RhbENvc3QgPQoJLy8gICAgICAgbnVtQm94ZXMgKiBDT1NUX1BFUl9CT1ggKyAvLyBjb3N0IG9mIGJveGVzCgkvLyAgICAgICAobnVtQm94ZXMgLSAxKSAqIE1BWF9CT1hfU0laRSAqIENPU1RfUEVSX0JZVEUgKyAvLyBjb3N0IG9mIGRhdGEKCS8vICAgICAgIG51bUJveGVzICogNjQgKiBDT1NUX1BFUl9CWVRFICsgLy8gY29zdCBvZiBrZXlzCgkvLyAgICAgICBlbmRCb3hTaXplICogQ09TVF9QRVJfQllURQoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCAyNTAwCgkqCglmcmFtZV9kaWcgLTIgLy8gbnVtQm94ZXM6IHVpbnQ2NAoJaW50IDEKCS0KCWludCAzMjc2OAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCA2NAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0zIC8vIGVuZEJveFNpemU6IHVpbnQ2NAoJaW50IDQwMAoJKgoJKwoJZnJhbWVfYnVyeSAzIC8vIHRvdGFsQ29zdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NjMKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IHRvdGFsQ29zdCB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAzIC8vIHRvdGFsQ29zdDogdWludDY0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoibWJyUGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0b3RhbENvc3QifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxieXRlW10pdm9pZAoqYWJpX3JvdXRlX3VwbG9hZDoKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGJveEluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIHVwbG9hZAoJaW50IDEKCXJldHVybgoKLy8gdXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIGJveEluZGV4OiB1aW50NjQsIG9mZnNldDogdWludDY0LCBkYXRhOiBieXRlcyk6IHZvaWQKLy8KLy8KLy8gVXBsb2FkIGRhdGEgdG8gYSBzcGVjaWZpYyBvZmZzZXQgaW4gYSBib3gKLy8KLy8gQHBhcmFtIGRhdGFJZGVudGlmaWVyIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGRhdGEKLy8gQHBhcmFtIGJveEluZGV4IFRoZSBpbmRleCBvZiB0aGUgYm94IHRvIHVwbG9hZCB0aGUgZ2l2ZW4gY2h1bmsgb2YgZGF0YSB0bwovLyBAcGFyYW0gb2Zmc2V0IFRoZSBvZmZzZXQgd2l0aGluIHRoZSBib3ggdG8gc3RhcnQgd3JpdGluZyB0aGUgZGF0YQovLyBAcGFyYW0gZGF0YSBUaGUgZGF0YSB0byB3cml0ZQp1cGxvYWQ6Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc2CgkvLyBtZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly9tZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc3CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc4CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhcnQgPD0gYm94SW5kZXggJiYgYm94SW5kZXggPD0gbWV0YWRhdGEuZW5kKQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBib3hJbmRleDogdWludDY0Cgk8PQoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCA4IC8vIGhlYWRPZmZzZXQKCWludCA4Cglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQwOgoJYXNzZXJ0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjgwCgkvLyBvZmZzZXQgPT09IDAKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2VuZAoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6ODEKCS8vIHRoaXMuZGF0YUJveGVzKGJveEluZGV4KS5jcmVhdGUoYm94SW5kZXggPT09IG1ldGFkYXRhLmVuZCA/IG1ldGFkYXRhLmVuZFNpemUgOiBNQVhfQk9YX1NJWkUpCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgOCAvLyBoZWFkT2Zmc2V0CglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCT09CglieiAqdGVybmFyeTBfZmFsc2UKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTcgLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWludCAzMjc2OAoKKnRlcm5hcnkwX2VuZDoKCWJveF9jcmVhdGUKCXBvcAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo4NAoJLy8gdGhpcy5kYXRhQm94ZXMoYm94SW5kZXgpLnJlcGxhY2Uob2Zmc2V0LCBkYXRhKQoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC00IC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQKKmFiaV9yb3V0ZV9zZXRTdGF0dXM6CgkvLyBzdGF0dXM6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoc3RhdHVzKSBmb3Igc2V0U3RhdHVzIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldFN0YXR1cyhzdHJpbmcsdWludDgpdm9pZAoJY2FsbHN1YiBzZXRTdGF0dXMKCWludCAxCglyZXR1cm4KCi8vIHNldFN0YXR1cyhkYXRhSWRlbnRpZmllcjogc3RyaW5nLCBzdGF0dXM6IHVpbnQ8OD4pOiB2b2lkCi8vCi8vCi8vIFNldCB0aGUgc3RhdHVzIG9mIHRoZSBkYXRhCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBzdGF0dXMgVGhlIG5ldyBzdGF0dXMgZm9yIHRoZSBkYXRhCnNldFN0YXR1czoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6OTUKCS8vIGN1cnJlbnRTdGF0dXMgPSB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo5NwoJLy8gYXNzZXJ0KHN0YXR1cyA9PT0gUkVBRFkgfHwgc3RhdHVzID09PSBJTU1VVEFCTEUgfHwgc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpbnQgMgoJPT0KCXx8Cgoqc2tpcF9vcjA6CglkdXAKCWJueiAqc2tpcF9vcjEKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAwCgk9PQoJfHwKCipza2lwX29yMToKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjk4CgkvLyBhc3NlcnQoY3VycmVudFN0YXR1cyAhPT0gSU1NVVRBQkxFKQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCWludCAyCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6MTAwCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMgPSBzdGF0dXMKCWludCAxNiAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpdG9iCglleHRyYWN0IDcgMQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAidXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkIgoJbWV0aG9kICJzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkICphYmlfcm91dGVfdXBsb2FkICphYmlfcm91dGVfc2V0U3RhdHVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkOgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAobWJyUGF5bWVudCkgZm9yIHN0YXJ0VXBsb2FkIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGVuZEJveFNpemU6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIG51bUJveGVzOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RhcnRVcGxvYWQoc3RyaW5nLHVpbnQ2NCx1aW50NjQscGF5KXZvaWQKCWNhbGxzdWIgc3RhcnRVcGxvYWQKCWludCAxCglyZXR1cm4KCi8vIHN0YXJ0VXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIG51bUJveGVzOiB1aW50NjQsIGVuZEJveFNpemU6IHVpbnQ2NCwgbWJyUGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLwovLyBBbGxvY2F0ZSBib3hlcyB0byBiZWdpbiBkYXRhIHVwbG9hZCBwcm9jZXNzCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBudW1Cb3hlcyBUaGUgbnVtYmVyIG9mIGJveGVzIHRoYXQgdGhlIGRhdGEgd2lsbCB0YWtlIHVwCi8vIEBwYXJhbSBlbmRCb3hTaXplIFRoZSBzaXplIG9mIHRoZSBsYXN0IGJveAovLyBAcGFyYW0gbWJyUGF5bWVudCBQYXltZW50IGZyb20gdGhlIHVwbG9hZGVyIHRvIGNvdmVyIHRoZSBib3ggTUJSCnN0YXJ0VXBsb2FkOgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjQxCgkvLyBzdGFydEJveCA9IHRoaXMuY3VycmVudEluZGV4LnZhbHVlCglieXRlIDB4NjM3NTcyNzI2NTZlNzQ0OTZlNjQ2NTc4IC8vICJjdXJyZW50SW5kZXgiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfYnVyeSAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo0MgoJLy8gZW5kQm94ID0gc3RhcnRCb3ggKyBudW1Cb3hlcyAtIDEKCWZyYW1lX2RpZyAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBudW1Cb3hlczogdWludDY0CgkrCglpbnQgMQoJLQoJZnJhbWVfYnVyeSAxIC8vIGVuZEJveDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NDQKCS8vIG1ldGFkYXRhOiBNZXRhZGF0YSA9IHsKCS8vICAgICAgIHN0YXJ0OiBzdGFydEJveCwKCS8vICAgICAgIGVuZDogZW5kQm94LAoJLy8gICAgICAgc3RhdHVzOiBJTl9QUk9HUkVTUywKCS8vICAgICAgIGVuZFNpemU6IGVuZEJveFNpemUsCgkvLyAgICAgfQoJZnJhbWVfZGlnIDAgLy8gc3RhcnRCb3g6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwCgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyBlbmRCb3hTaXplOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJZnJhbWVfYnVyeSAyIC8vIG1ldGFkYXRhOiBNZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUxCgkvLyBhc3NlcnQoIXRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglib3hfbGVuCglzd2FwCglwb3AKCSEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUzCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZSA9IG1ldGFkYXRhCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfZGlnIDIgLy8gbWV0YWRhdGE6IE1ldGFkYXRhCglib3hfcHV0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NTUKCS8vIHRoaXMuY3VycmVudEluZGV4LnZhbHVlID0gZW5kQm94ICsgMQoJYnl0ZSAweDYzNzU3MjcyNjU2ZTc0NDk2ZTY0NjU3OCAvLyAiY3VycmVudEluZGV4IgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWludCAxCgkrCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjU3CgkvLyB0b3RhbENvc3QgPQoJLy8gICAgICAgbnVtQm94ZXMgKiBDT1NUX1BFUl9CT1ggKyAvLyBjb3N0IG9mIGJveGVzCgkvLyAgICAgICAobnVtQm94ZXMgLSAxKSAqIE1BWF9CT1hfU0laRSAqIENPU1RfUEVSX0JZVEUgKyAvLyBjb3N0IG9mIGRhdGEKCS8vICAgICAgIG51bUJveGVzICogNjQgKiBDT1NUX1BFUl9CWVRFICsgLy8gY29zdCBvZiBrZXlzCgkvLyAgICAgICBlbmRCb3hTaXplICogQ09TVF9QRVJfQllURQoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCAyNTAwCgkqCglmcmFtZV9kaWcgLTIgLy8gbnVtQm94ZXM6IHVpbnQ2NAoJaW50IDEKCS0KCWludCAzMjc2OAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCA2NAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0zIC8vIGVuZEJveFNpemU6IHVpbnQ2NAoJaW50IDQwMAoJKgoJKwoJZnJhbWVfYnVyeSAzIC8vIHRvdGFsQ29zdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NjMKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IHRvdGFsQ29zdCB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAzIC8vIHRvdGFsQ29zdDogdWludDY0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoibWJyUGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0b3RhbENvc3QifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxieXRlW10pdm9pZAoqYWJpX3JvdXRlX3VwbG9hZDoKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGJveEluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIHVwbG9hZAoJaW50IDEKCXJldHVybgoKLy8gdXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIGJveEluZGV4OiB1aW50NjQsIG9mZnNldDogdWludDY0LCBkYXRhOiBieXRlcyk6IHZvaWQKLy8KLy8KLy8gVXBsb2FkIGRhdGEgdG8gYSBzcGVjaWZpYyBvZmZzZXQgaW4gYSBib3gKLy8KLy8gQHBhcmFtIGRhdGFJZGVudGlmaWVyIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGRhdGEKLy8gQHBhcmFtIGJveEluZGV4IFRoZSBpbmRleCBvZiB0aGUgYm94IHRvIHVwbG9hZCB0aGUgZ2l2ZW4gY2h1bmsgb2YgZGF0YSB0bwovLyBAcGFyYW0gb2Zmc2V0IFRoZSBvZmZzZXQgd2l0aGluIHRoZSBib3ggdG8gc3RhcnQgd3JpdGluZyB0aGUgZGF0YQovLyBAcGFyYW0gZGF0YSBUaGUgZGF0YSB0byB3cml0ZQp1cGxvYWQ6Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc2CgkvLyBtZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly9tZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc3CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc4CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhcnQgPD0gYm94SW5kZXggJiYgYm94SW5kZXggPD0gbWV0YWRhdGEuZW5kKQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBib3hJbmRleDogdWludDY0Cgk8PQoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCA4IC8vIGhlYWRPZmZzZXQKCWludCA4Cglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQwOgoJYXNzZXJ0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjgwCgkvLyBvZmZzZXQgPT09IDAKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2VuZAoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6ODEKCS8vIHRoaXMuZGF0YUJveGVzKGJveEluZGV4KS5jcmVhdGUoYm94SW5kZXggPT09IG1ldGFkYXRhLmVuZCA/IG1ldGFkYXRhLmVuZFNpemUgOiBNQVhfQk9YX1NJWkUpCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgOCAvLyBoZWFkT2Zmc2V0CglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCT09CglieiAqdGVybmFyeTBfZmFsc2UKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTcgLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWludCAzMjc2OAoKKnRlcm5hcnkwX2VuZDoKCWJveF9jcmVhdGUKCXBvcAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo4NAoJLy8gdGhpcy5kYXRhQm94ZXMoYm94SW5kZXgpLnJlcGxhY2Uob2Zmc2V0LCBkYXRhKQoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC00IC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQKKmFiaV9yb3V0ZV9zZXRTdGF0dXM6CgkvLyBzdGF0dXM6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoc3RhdHVzKSBmb3Igc2V0U3RhdHVzIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldFN0YXR1cyhzdHJpbmcsdWludDgpdm9pZAoJY2FsbHN1YiBzZXRTdGF0dXMKCWludCAxCglyZXR1cm4KCi8vIHNldFN0YXR1cyhkYXRhSWRlbnRpZmllcjogc3RyaW5nLCBzdGF0dXM6IHVpbnQ8OD4pOiB2b2lkCi8vCi8vCi8vIFNldCB0aGUgc3RhdHVzIG9mIHRoZSBkYXRhCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBzdGF0dXMgVGhlIG5ldyBzdGF0dXMgZm9yIHRoZSBkYXRhCnNldFN0YXR1czoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6OTUKCS8vIGN1cnJlbnRTdGF0dXMgPSB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo5NwoJLy8gYXNzZXJ0KHN0YXR1cyA9PT0gUkVBRFkgfHwgc3RhdHVzID09PSBJTU1VVEFCTEUgfHwgc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpbnQgMgoJPT0KCXx8Cgoqc2tpcF9vcjA6CglkdXAKCWJueiAqc2tpcF9vcjEKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAwCgk9PQoJfHwKCipza2lwX29yMToKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjk4CgkvLyBhc3NlcnQoY3VycmVudFN0YXR1cyAhPT0gSU1NVVRBQkxFKQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCWludCAyCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6MTAwCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMgPSBzdGF0dXMKCWludCAxNiAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpdG9iCglleHRyYWN0IDcgMQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAidXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkIgoJbWV0aG9kICJzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkICphYmlfcm91dGVfdXBsb2FkICphYmlfcm91dGVfc2V0U3RhdHVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/big_box/artifacts/BigBox.arc56_draft.json b/examples/big_box/artifacts/BigBox.arc56_draft.json index 6a5d5adf7..08ffb0dda 100644 --- a/examples/big_box/artifacts/BigBox.arc56_draft.json +++ b/examples/big_box/artifacts/BigBox.arc56_draft.json @@ -116,12 +116,24 @@ 56 ], "structs": { - "Metadata": { - "start": "uint64", - "end": "uint64", - "status": "uint8", - "endSize": "uint64" - } + "Metadata": [ + { + "name": "start", + "type": "uint64" + }, + { + "name": "end", + "type": "uint64" + }, + { + "name": "status", + "type": "uint8" + }, + { + "name": "endSize", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -164,1804 +176,1807 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 20, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28 - ] - }, - { - "teal": 13, - "source": 20, - "pc": [ - 29, - 30 - ] - }, - { - "teal": 14, - "source": 20, - "pc": [ - 31 - ] - }, - { - "teal": 15, - "source": 20, - "pc": [ - 32, - 33 - ] - }, - { - "teal": 16, - "source": 20, - "pc": [ - 34 - ] - }, - { - "teal": 17, - "source": 20, - "pc": [ - 35, - 36 - ] - }, - { - "teal": 18, - "source": 20, - "pc": [ - 37 - ] - }, - { - "teal": 19, - "source": 20, - "pc": [ - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 23, - "source": 20, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 64 - ] - }, - { - "teal": 28, - "source": 40, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 29, - "source": 40, - "pc": [ - 67 - ] - }, - { - "teal": 30, - "source": 40, - "pc": [ - 68 - ] - }, - { - "teal": 31, - "source": 40, - "pc": [ - 69 - ] - }, - { - "teal": 32, - "source": 40, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 33, - "source": 40, - "pc": [ - 72 - ] - }, - { - "teal": 34, - "source": 40, - "pc": [ - 73 - ] - }, - { - "teal": 37, - "source": 40, - "errorMessage": "argument 0 (mbrPayment) for startUpload must be a pay transaction", - "pc": [ - 74 - ] - }, - { - "teal": 40, - "source": 40, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 41, - "source": 40, - "pc": [ - 78 - ] - }, - { - "teal": 44, - "source": 40, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 45, - "source": 40, - "pc": [ - 82 - ] - }, - { - "teal": 48, - "source": 40, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 49, - "source": 40, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 52, - "source": 40, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 53, - "source": 40, - "pc": [ - 92 - ] - }, - { - "teal": 54, - "source": 40, - "pc": [ - 93 - ] - }, - { - "teal": 66, - "source": 40, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 69, - "source": 40, - "pc": [ - 97 - ] - }, - { - "teal": 70, - "source": 40, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 74, - "source": 41, - "pc": [ - 100 - ] - }, - { - "teal": 75, - "source": 41, - "pc": [ - 101 - ] - }, - { - "teal": 76, - "source": 41, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 80, - "source": 42, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 81, - "source": 42, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 82, - "source": 42, - "pc": [ - 108 - ] - }, - { - "teal": 83, - "source": 42, - "pc": [ - 109 - ] - }, - { - "teal": 84, - "source": 42, - "pc": [ - 110 - ] - }, - { - "teal": 85, - "source": 42, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 94, - "source": 45, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 95, - "source": 45, - "pc": [ - 115 - ] - }, - { - "teal": 96, - "source": 46, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 97, - "source": 46, - "pc": [ - 118 - ] - }, - { - "teal": 98, - "source": 46, - "pc": [ - 119 - ] - }, - { - "teal": 99, - "source": 47, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 100, - "source": 47, - "pc": [ - 123 - ] - }, - { - "teal": 101, - "source": 48, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 102, - "source": 48, - "pc": [ - 126 - ] - }, - { - "teal": 103, - "source": 48, - "pc": [ - 127 - ] - }, - { - "teal": 104, - "source": 44, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 108, - "source": 51, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 109, - "source": 51, - "pc": [ - 132 - ] - }, - { - "teal": 110, - "source": 51, - "pc": [ - 133 - ] - }, - { - "teal": 111, - "source": 51, - "pc": [ - 134 - ] - }, - { - "teal": 112, - "source": 51, - "pc": [ - 135 - ] - }, - { - "teal": 113, - "source": 51, - "pc": [ - 136 - ] - }, - { - "teal": 117, - "source": 53, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 118, - "source": 53, - "pc": [ - 139, - 140 - ] - }, - { - "teal": 119, - "source": 53, - "pc": [ - 141 - ] - }, - { - "teal": 123, - "source": 55, - "pc": [ - 142 - ] - }, - { - "teal": 124, - "source": 55, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 125, - "source": 55, - "pc": [ - 145 - ] - }, - { - "teal": 126, - "source": 55, - "pc": [ - 146 - ] - }, - { - "teal": 127, - "source": 55, - "pc": [ - 147 - ] - }, - { - "teal": 135, - "source": 58, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 136, - "source": 58, - "pc": [ - 150, - 151, - 152 - ] - }, - { - "teal": 137, - "source": 58, - "pc": [ - 153 - ] - }, - { - "teal": 138, - "source": 59, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 139, - "source": 59, - "pc": [ - 156 - ] - }, - { - "teal": 140, - "source": 59, - "pc": [ - 157 - ] - }, - { - "teal": 141, - "source": 59, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 142, - "source": 59, - "pc": [ - 160 - ] - }, - { - "teal": 143, - "source": 59, - "pc": [ - 161 - ] - }, - { - "teal": 144, - "source": 59, - "pc": [ - 162 - ] - }, - { - "teal": 145, - "source": 58, - "pc": [ - 163 - ] - }, - { - "teal": 146, - "source": 60, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 147, - "source": 60, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 148, - "source": 60, - "pc": [ - 168 - ] - }, - { - "teal": 149, - "source": 60, - "pc": [ - 169 - ] - }, - { - "teal": 150, - "source": 60, - "pc": [ - 170 - ] - }, - { - "teal": 151, - "source": 59, - "pc": [ - 171 - ] - }, - { - "teal": 152, - "source": 61, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 153, - "source": 61, - "pc": [ - 174 - ] - }, - { - "teal": 154, - "source": 61, - "pc": [ - 175 - ] - }, - { - "teal": 155, - "source": 60, - "pc": [ - 176 - ] - }, - { - "teal": 156, - "source": 57, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 161, - "source": 63, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 162, - "source": 63, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 163, - "source": 63, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 164, - "source": 63, - "pc": [ - 185 - ] - }, - { - "teal": 167, - "source": 63, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 186 - ] - }, - { - "teal": 170, - "source": 63, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 171, - "source": 63, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 172, - "source": 63, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 173, - "source": 63, - "pc": [ - 193 - ] - }, - { - "teal": 176, - "source": 63, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"totalCost\"}", - "pc": [ - 194 - ] - }, - { - "teal": 177, - "source": 40, - "pc": [ - 195 - ] - }, - { - "teal": 182, - "source": 75, - "pc": [ - 196, - 197, - 198 - ] - }, - { - "teal": 183, - "source": 75, - "pc": [ - 199, - 200, - 201 - ] - }, - { - "teal": 186, - "source": 75, - "pc": [ - 202, - 203, - 204 - ] - }, - { - "teal": 187, - "source": 75, - "pc": [ - 205 - ] - }, - { - "teal": 190, - "source": 75, - "pc": [ - 206, - 207, - 208 - ] - }, - { - "teal": 191, - "source": 75, - "pc": [ - 209 - ] - }, - { - "teal": 194, - "source": 75, - "pc": [ - 210, - 211, - 212 - ] - }, - { - "teal": 195, - "source": 75, - "pc": [ - 213, - 214, - 215 - ] - }, - { - "teal": 198, - "source": 75, - "pc": [ - 216, - 217, - 218 - ] - }, - { - "teal": 199, - "source": 75, - "pc": [ - 219 - ] - }, - { - "teal": 200, - "source": 75, - "pc": [ - 220 - ] - }, - { - "teal": 212, - "source": 75, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 215, - "source": 75, - "pc": [ - 224 - ] - }, - { - "teal": 219, - "source": 76, - "pc": [ - 225, - 226 - ] - }, - { - "teal": 220, - "source": 76, - "pc": [ - 227, - 228 - ] - }, - { - "teal": 224, - "source": 76, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 225, - "source": 76, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 226, - "source": 76, - "pc": [ - 233 - ] - }, - { - "teal": 227, - "source": 76, - "pc": [ - 234 - ] - }, - { - "teal": 228, - "source": 77, - "pc": [ - 235 - ] - }, - { - "teal": 229, - "source": 77, - "pc": [ - 236 - ] - }, - { - "teal": 230, - "source": 77, - "pc": [ - 237 - ] - }, - { - "teal": 231, - "source": 77, - "pc": [ - 238 - ] - }, - { - "teal": 235, - "source": 76, - "pc": [ - 239, - 240 - ] - }, - { - "teal": 236, - "source": 76, - "pc": [ - 241 - ] - }, - { - "teal": 237, - "source": 76, - "pc": [ - 242 - ] - }, - { - "teal": 238, - "source": 76, - "pc": [ - 243 - ] - }, - { - "teal": 239, - "source": 78, - "pc": [ - 244 - ] - }, - { - "teal": 240, - "source": 78, - "pc": [ - 245, - 246 - ] - }, - { - "teal": 241, - "source": 78, - "pc": [ - 247 - ] - }, - { - "teal": 242, - "source": 78, - "pc": [ - 248 - ] - }, - { - "teal": 243, - "source": 78, - "pc": [ - 249, - 250, - 251 - ] - }, - { - "teal": 244, - "source": 78, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 245, - "source": 76, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 246, - "source": 76, - "pc": [ - 256 - ] - }, - { - "teal": 247, - "source": 76, - "pc": [ - 257 - ] - }, - { - "teal": 248, - "source": 76, - "pc": [ - 258 - ] - }, - { - "teal": 249, - "source": 78, - "pc": [ - 259 - ] - }, - { - "teal": 250, - "source": 78, - "pc": [ - 260 - ] - }, - { - "teal": 251, - "source": 78, - "pc": [ - 261 - ] - }, - { - "teal": 254, - "source": 78, - "pc": [ - 262 - ] - }, - { - "teal": 259, - "source": 80, - "pc": [ - 263, - 264 - ] - }, - { - "teal": 260, - "source": 80, - "pc": [ - 265 - ] - }, - { - "teal": 261, - "source": 80, - "pc": [ - 266 - ] - }, - { - "teal": 262, - "source": 80, - "pc": [ - 267, - 268, - 269 - ] - }, - { - "teal": 267, - "source": 81, - "pc": [ - 270, - 271 - ] - }, - { - "teal": 268, - "source": 81, - "pc": [ - 272 - ] - }, - { - "teal": 269, - "source": 81, - "pc": [ - 273, - 274 - ] - }, - { - "teal": 270, - "source": 76, - "pc": [ - 275, - 276 - ] - }, - { - "teal": 271, - "source": 76, - "pc": [ - 277 - ] - }, - { - "teal": 272, - "source": 76, - "pc": [ - 278 - ] - }, - { - "teal": 273, - "source": 76, - "pc": [ - 279 - ] - }, - { - "teal": 274, - "source": 81, - "pc": [ - 280 - ] - }, - { - "teal": 275, - "source": 81, - "pc": [ - 281 - ] - }, - { - "teal": 276, - "source": 81, - "pc": [ - 282, - 283, - 284 - ] - }, - { - "teal": 277, - "source": 76, - "pc": [ - 285, - 286 - ] - }, - { - "teal": 278, - "source": 76, - "pc": [ - 287, - 288 - ] - }, - { - "teal": 279, - "source": 76, - "pc": [ - 289 - ] - }, - { - "teal": 280, - "source": 76, - "pc": [ - 290 - ] - }, - { - "teal": 281, - "source": 81, - "pc": [ - 291 - ] - }, - { - "teal": 282, - "source": 81, - "pc": [ - 292, - 293, - 294 - ] - }, - { - "teal": 285, - "source": 81, - "pc": [ - 295, - 296 - ] - }, - { - "teal": 288, - "source": 81, - "pc": [ - 297 - ] - }, - { - "teal": 289, - "source": 81, - "pc": [ - 298 - ] - }, - { - "teal": 294, - "source": 84, - "pc": [ - 299, - 300 - ] - }, - { - "teal": 295, - "source": 84, - "pc": [ - 301 - ] - }, - { - "teal": 296, - "source": 84, - "pc": [ - 302, - 303 - ] - }, - { - "teal": 297, - "source": 84, - "pc": [ - 304, - 305 - ] - }, - { - "teal": 298, - "source": 84, - "pc": [ - 306 - ] - }, - { - "teal": 299, - "source": 75, - "pc": [ - 307 - ] - }, - { - "teal": 304, - "source": 94, - "pc": [ - 308, - 309, - 310 - ] - }, - { - "teal": 305, - "source": 94, - "pc": [ - 311 - ] - }, - { - "teal": 306, - "source": 94, - "pc": [ - 312 - ] - }, - { - "teal": 307, - "source": 94, - "pc": [ - 313 - ] - }, - { - "teal": 308, - "source": 94, - "pc": [ - 314 - ] - }, - { - "teal": 311, - "source": 94, - "errorMessage": "argument 0 (status) for setStatus must be a uint8", - "pc": [ - 315 - ] - }, - { - "teal": 312, - "source": 94, - "pc": [ - 316 - ] - }, - { - "teal": 315, - "source": 94, - "pc": [ - 317, - 318, - 319 - ] - }, - { - "teal": 316, - "source": 94, - "pc": [ - 320, - 321, - 322 - ] - }, - { - "teal": 319, - "source": 94, - "pc": [ - 323, - 324, - 325 - ] - }, - { - "teal": 320, - "source": 94, - "pc": [ - 326 - ] - }, - { - "teal": 321, - "source": 94, - "pc": [ - 327 - ] - }, - { - "teal": 331, - "source": 94, - "pc": [ - 328, - 329, - 330 - ] - }, - { - "teal": 334, - "source": 94, - "pc": [ - 331 - ] - }, - { - "teal": 338, - "source": 95, - "pc": [ - 332, - 333 - ] - }, - { - "teal": 339, - "source": 95, - "pc": [ - 334, - 335 - ] - }, - { - "teal": 340, - "source": 95, - "pc": [ - 336 - ] - }, - { - "teal": 341, - "source": 95, - "pc": [ - 337 - ] - }, - { - "teal": 342, - "source": 95, - "pc": [ - 338 - ] - }, - { - "teal": 343, - "source": 95, - "pc": [ - 339, - 340 - ] - }, - { - "teal": 347, - "source": 97, - "pc": [ - 341, - 342 - ] - }, - { - "teal": 348, - "source": 97, - "pc": [ - 343 - ] - }, - { - "teal": 349, - "source": 97, - "pc": [ - 344 - ] - }, - { - "teal": 350, - "source": 97, - "pc": [ - 345 - ] - }, - { - "teal": 351, - "source": 97, - "pc": [ - 346, - 347, - 348 - ] - }, - { - "teal": 352, - "source": 97, - "pc": [ - 349, - 350 - ] - }, - { - "teal": 353, - "source": 97, - "pc": [ - 351, - 352 - ] - }, - { - "teal": 354, - "source": 97, - "pc": [ - 353 - ] - }, - { - "teal": 355, - "source": 97, - "pc": [ - 354 - ] - }, - { - "teal": 358, - "source": 97, - "pc": [ - 355 - ] - }, - { - "teal": 359, - "source": 97, - "pc": [ - 356, - 357, - 358 - ] - }, - { - "teal": 360, - "source": 97, - "pc": [ - 359, - 360 - ] - }, - { - "teal": 361, - "source": 97, - "pc": [ - 361 - ] - }, - { - "teal": 362, - "source": 97, - "pc": [ - 362 - ] - }, - { - "teal": 363, - "source": 97, - "pc": [ - 363 - ] - }, - { - "teal": 366, - "source": 97, - "pc": [ - 364 - ] - }, - { - "teal": 370, - "source": 98, - "pc": [ - 365, - 366 - ] - }, - { - "teal": 371, - "source": 98, - "pc": [ - 367, - 368 - ] - }, - { - "teal": 372, - "source": 98, - "pc": [ - 369 - ] - }, - { - "teal": 373, - "source": 98, - "pc": [ - 370 - ] - }, - { - "teal": 377, - "source": 100, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 378, - "source": 100, - "pc": [ - 373, - 374 - ] - }, - { - "teal": 379, - "source": 100, - "pc": [ - 375 - ] - }, - { - "teal": 380, - "source": 100, - "pc": [ - 376, - 377, - 378 - ] - }, - { - "teal": 381, - "source": 100, - "pc": [ - 379, - 380 - ] - }, - { - "teal": 382, - "source": 100, - "pc": [ - 381, - 382 - ] - }, - { - "teal": 383, - "source": 100, - "pc": [ - 383 - ] - }, - { - "teal": 384, - "source": 94, - "pc": [ - 384 - ] - }, - { - "teal": 387, - "source": 20, - "pc": [ - 385 - ] - }, - { - "teal": 388, - "source": 20, - "pc": [ - 386 - ] - }, - { - "teal": 391, - "source": 20, - "pc": [ - 387, - 388, - 389, - 390, - 391, - 392 - ] - }, - { - "teal": 392, - "source": 20, - "pc": [ - 393, - 394, - 395 - ] - }, - { - "teal": 393, - "source": 20, - "pc": [ - 396, - 397, - 398, - 399 - ] - }, - { - "teal": 396, - "source": 20, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 400 - ] - }, - { - "teal": 399, - "source": 20, - "pc": [ - 401, - 402, - 403, - 404, - 405, - 406 - ] - }, - { - "teal": 400, - "source": 20, - "pc": [ - 407, - 408, - 409, - 410, - 411, - 412 - ] - }, - { - "teal": 401, - "source": 20, - "pc": [ - 413, - 414, - 415, - 416, - 417, - 418 - ] - }, - { - "teal": 402, - "source": 20, - "pc": [ - 419, - 420, - 421 - ] - }, - { - "teal": 403, - "source": 20, - "pc": [ - 422, - 423, - 424, - 425, - 426, - 427, - 428, - 429 - ] - }, - { - "teal": 406, - "source": 20, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 430 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 20, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + }, + { + "teal": 13, + "source": 20, + "pc": [ + 29, + 30 + ] + }, + { + "teal": 14, + "source": 20, + "pc": [ + 31 + ] + }, + { + "teal": 15, + "source": 20, + "pc": [ + 32, + 33 + ] + }, + { + "teal": 16, + "source": 20, + "pc": [ + 34 + ] + }, + { + "teal": 17, + "source": 20, + "pc": [ + 35, + 36 + ] + }, + { + "teal": 18, + "source": 20, + "pc": [ + 37 + ] + }, + { + "teal": 19, + "source": 20, + "pc": [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 23, + "source": 20, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 64 + ] + }, + { + "teal": 28, + "source": 40, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 29, + "source": 40, + "pc": [ + 67 + ] + }, + { + "teal": 30, + "source": 40, + "pc": [ + 68 + ] + }, + { + "teal": 31, + "source": 40, + "pc": [ + 69 + ] + }, + { + "teal": 32, + "source": 40, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 33, + "source": 40, + "pc": [ + 72 + ] + }, + { + "teal": 34, + "source": 40, + "pc": [ + 73 + ] + }, + { + "teal": 37, + "source": 40, + "errorMessage": "argument 0 (mbrPayment) for startUpload must be a pay transaction", + "pc": [ + 74 + ] + }, + { + "teal": 40, + "source": 40, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 41, + "source": 40, + "pc": [ + 78 + ] + }, + { + "teal": 44, + "source": 40, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 45, + "source": 40, + "pc": [ + 82 + ] + }, + { + "teal": 48, + "source": 40, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 49, + "source": 40, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 52, + "source": 40, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 53, + "source": 40, + "pc": [ + 92 + ] + }, + { + "teal": 54, + "source": 40, + "pc": [ + 93 + ] + }, + { + "teal": 66, + "source": 40, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 69, + "source": 40, + "pc": [ + 97 + ] + }, + { + "teal": 70, + "source": 40, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 74, + "source": 41, + "pc": [ + 100 + ] + }, + { + "teal": 75, + "source": 41, + "pc": [ + 101 + ] + }, + { + "teal": 76, + "source": 41, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 80, + "source": 42, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 81, + "source": 42, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 82, + "source": 42, + "pc": [ + 108 + ] + }, + { + "teal": 83, + "source": 42, + "pc": [ + 109 + ] + }, + { + "teal": 84, + "source": 42, + "pc": [ + 110 + ] + }, + { + "teal": 85, + "source": 42, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 94, + "source": 45, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 95, + "source": 45, + "pc": [ + 115 + ] + }, + { + "teal": 96, + "source": 46, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 97, + "source": 46, + "pc": [ + 118 + ] + }, + { + "teal": 98, + "source": 46, + "pc": [ + 119 + ] + }, + { + "teal": 99, + "source": 47, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 100, + "source": 47, + "pc": [ + 123 + ] + }, + { + "teal": 101, + "source": 48, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 102, + "source": 48, + "pc": [ + 126 + ] + }, + { + "teal": 103, + "source": 48, + "pc": [ + 127 + ] + }, + { + "teal": 104, + "source": 44, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 108, + "source": 51, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 109, + "source": 51, + "pc": [ + 132 + ] + }, + { + "teal": 110, + "source": 51, + "pc": [ + 133 + ] + }, + { + "teal": 111, + "source": 51, + "pc": [ + 134 + ] + }, + { + "teal": 112, + "source": 51, + "pc": [ + 135 + ] + }, + { + "teal": 113, + "source": 51, + "pc": [ + 136 + ] + }, + { + "teal": 117, + "source": 53, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 118, + "source": 53, + "pc": [ + 139, + 140 + ] + }, + { + "teal": 119, + "source": 53, + "pc": [ + 141 + ] + }, + { + "teal": 123, + "source": 55, + "pc": [ + 142 + ] + }, + { + "teal": 124, + "source": 55, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 125, + "source": 55, + "pc": [ + 145 + ] + }, + { + "teal": 126, + "source": 55, + "pc": [ + 146 + ] + }, + { + "teal": 127, + "source": 55, + "pc": [ + 147 + ] + }, + { + "teal": 135, + "source": 58, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 136, + "source": 58, + "pc": [ + 150, + 151, + 152 + ] + }, + { + "teal": 137, + "source": 58, + "pc": [ + 153 + ] + }, + { + "teal": 138, + "source": 59, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 139, + "source": 59, + "pc": [ + 156 + ] + }, + { + "teal": 140, + "source": 59, + "pc": [ + 157 + ] + }, + { + "teal": 141, + "source": 59, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 142, + "source": 59, + "pc": [ + 160 + ] + }, + { + "teal": 143, + "source": 59, + "pc": [ + 161 + ] + }, + { + "teal": 144, + "source": 59, + "pc": [ + 162 + ] + }, + { + "teal": 145, + "source": 58, + "pc": [ + 163 + ] + }, + { + "teal": 146, + "source": 60, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 147, + "source": 60, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 148, + "source": 60, + "pc": [ + 168 + ] + }, + { + "teal": 149, + "source": 60, + "pc": [ + 169 + ] + }, + { + "teal": 150, + "source": 60, + "pc": [ + 170 + ] + }, + { + "teal": 151, + "source": 59, + "pc": [ + 171 + ] + }, + { + "teal": 152, + "source": 61, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 153, + "source": 61, + "pc": [ + 174 + ] + }, + { + "teal": 154, + "source": 61, + "pc": [ + 175 + ] + }, + { + "teal": 155, + "source": 60, + "pc": [ + 176 + ] + }, + { + "teal": 156, + "source": 57, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 161, + "source": 63, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 162, + "source": 63, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 163, + "source": 63, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 164, + "source": 63, + "pc": [ + 185 + ] + }, + { + "teal": 167, + "source": 63, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 186 + ] + }, + { + "teal": 170, + "source": 63, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 171, + "source": 63, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 172, + "source": 63, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 173, + "source": 63, + "pc": [ + 193 + ] + }, + { + "teal": 176, + "source": 63, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"totalCost\"}", + "pc": [ + 194 + ] + }, + { + "teal": 177, + "source": 40, + "pc": [ + 195 + ] + }, + { + "teal": 182, + "source": 75, + "pc": [ + 196, + 197, + 198 + ] + }, + { + "teal": 183, + "source": 75, + "pc": [ + 199, + 200, + 201 + ] + }, + { + "teal": 186, + "source": 75, + "pc": [ + 202, + 203, + 204 + ] + }, + { + "teal": 187, + "source": 75, + "pc": [ + 205 + ] + }, + { + "teal": 190, + "source": 75, + "pc": [ + 206, + 207, + 208 + ] + }, + { + "teal": 191, + "source": 75, + "pc": [ + 209 + ] + }, + { + "teal": 194, + "source": 75, + "pc": [ + 210, + 211, + 212 + ] + }, + { + "teal": 195, + "source": 75, + "pc": [ + 213, + 214, + 215 + ] + }, + { + "teal": 198, + "source": 75, + "pc": [ + 216, + 217, + 218 + ] + }, + { + "teal": 199, + "source": 75, + "pc": [ + 219 + ] + }, + { + "teal": 200, + "source": 75, + "pc": [ + 220 + ] + }, + { + "teal": 212, + "source": 75, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 215, + "source": 75, + "pc": [ + 224 + ] + }, + { + "teal": 219, + "source": 76, + "pc": [ + 225, + 226 + ] + }, + { + "teal": 220, + "source": 76, + "pc": [ + 227, + 228 + ] + }, + { + "teal": 224, + "source": 76, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 225, + "source": 76, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 226, + "source": 76, + "pc": [ + 233 + ] + }, + { + "teal": 227, + "source": 76, + "pc": [ + 234 + ] + }, + { + "teal": 228, + "source": 77, + "pc": [ + 235 + ] + }, + { + "teal": 229, + "source": 77, + "pc": [ + 236 + ] + }, + { + "teal": 230, + "source": 77, + "pc": [ + 237 + ] + }, + { + "teal": 231, + "source": 77, + "pc": [ + 238 + ] + }, + { + "teal": 235, + "source": 76, + "pc": [ + 239, + 240 + ] + }, + { + "teal": 236, + "source": 76, + "pc": [ + 241 + ] + }, + { + "teal": 237, + "source": 76, + "pc": [ + 242 + ] + }, + { + "teal": 238, + "source": 76, + "pc": [ + 243 + ] + }, + { + "teal": 239, + "source": 78, + "pc": [ + 244 + ] + }, + { + "teal": 240, + "source": 78, + "pc": [ + 245, + 246 + ] + }, + { + "teal": 241, + "source": 78, + "pc": [ + 247 + ] + }, + { + "teal": 242, + "source": 78, + "pc": [ + 248 + ] + }, + { + "teal": 243, + "source": 78, + "pc": [ + 249, + 250, + 251 + ] + }, + { + "teal": 244, + "source": 78, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 245, + "source": 76, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 246, + "source": 76, + "pc": [ + 256 + ] + }, + { + "teal": 247, + "source": 76, + "pc": [ + 257 + ] + }, + { + "teal": 248, + "source": 76, + "pc": [ + 258 + ] + }, + { + "teal": 249, + "source": 78, + "pc": [ + 259 + ] + }, + { + "teal": 250, + "source": 78, + "pc": [ + 260 + ] + }, + { + "teal": 251, + "source": 78, + "pc": [ + 261 + ] + }, + { + "teal": 254, + "source": 78, + "pc": [ + 262 + ] + }, + { + "teal": 259, + "source": 80, + "pc": [ + 263, + 264 + ] + }, + { + "teal": 260, + "source": 80, + "pc": [ + 265 + ] + }, + { + "teal": 261, + "source": 80, + "pc": [ + 266 + ] + }, + { + "teal": 262, + "source": 80, + "pc": [ + 267, + 268, + 269 + ] + }, + { + "teal": 267, + "source": 81, + "pc": [ + 270, + 271 + ] + }, + { + "teal": 268, + "source": 81, + "pc": [ + 272 + ] + }, + { + "teal": 269, + "source": 81, + "pc": [ + 273, + 274 + ] + }, + { + "teal": 270, + "source": 76, + "pc": [ + 275, + 276 + ] + }, + { + "teal": 271, + "source": 76, + "pc": [ + 277 + ] + }, + { + "teal": 272, + "source": 76, + "pc": [ + 278 + ] + }, + { + "teal": 273, + "source": 76, + "pc": [ + 279 + ] + }, + { + "teal": 274, + "source": 81, + "pc": [ + 280 + ] + }, + { + "teal": 275, + "source": 81, + "pc": [ + 281 + ] + }, + { + "teal": 276, + "source": 81, + "pc": [ + 282, + 283, + 284 + ] + }, + { + "teal": 277, + "source": 76, + "pc": [ + 285, + 286 + ] + }, + { + "teal": 278, + "source": 76, + "pc": [ + 287, + 288 + ] + }, + { + "teal": 279, + "source": 76, + "pc": [ + 289 + ] + }, + { + "teal": 280, + "source": 76, + "pc": [ + 290 + ] + }, + { + "teal": 281, + "source": 81, + "pc": [ + 291 + ] + }, + { + "teal": 282, + "source": 81, + "pc": [ + 292, + 293, + 294 + ] + }, + { + "teal": 285, + "source": 81, + "pc": [ + 295, + 296 + ] + }, + { + "teal": 288, + "source": 81, + "pc": [ + 297 + ] + }, + { + "teal": 289, + "source": 81, + "pc": [ + 298 + ] + }, + { + "teal": 294, + "source": 84, + "pc": [ + 299, + 300 + ] + }, + { + "teal": 295, + "source": 84, + "pc": [ + 301 + ] + }, + { + "teal": 296, + "source": 84, + "pc": [ + 302, + 303 + ] + }, + { + "teal": 297, + "source": 84, + "pc": [ + 304, + 305 + ] + }, + { + "teal": 298, + "source": 84, + "pc": [ + 306 + ] + }, + { + "teal": 299, + "source": 75, + "pc": [ + 307 + ] + }, + { + "teal": 304, + "source": 94, + "pc": [ + 308, + 309, + 310 + ] + }, + { + "teal": 305, + "source": 94, + "pc": [ + 311 + ] + }, + { + "teal": 306, + "source": 94, + "pc": [ + 312 + ] + }, + { + "teal": 307, + "source": 94, + "pc": [ + 313 + ] + }, + { + "teal": 308, + "source": 94, + "pc": [ + 314 + ] + }, + { + "teal": 311, + "source": 94, + "errorMessage": "argument 0 (status) for setStatus must be a uint8", + "pc": [ + 315 + ] + }, + { + "teal": 312, + "source": 94, + "pc": [ + 316 + ] + }, + { + "teal": 315, + "source": 94, + "pc": [ + 317, + 318, + 319 + ] + }, + { + "teal": 316, + "source": 94, + "pc": [ + 320, + 321, + 322 + ] + }, + { + "teal": 319, + "source": 94, + "pc": [ + 323, + 324, + 325 + ] + }, + { + "teal": 320, + "source": 94, + "pc": [ + 326 + ] + }, + { + "teal": 321, + "source": 94, + "pc": [ + 327 + ] + }, + { + "teal": 331, + "source": 94, + "pc": [ + 328, + 329, + 330 + ] + }, + { + "teal": 334, + "source": 94, + "pc": [ + 331 + ] + }, + { + "teal": 338, + "source": 95, + "pc": [ + 332, + 333 + ] + }, + { + "teal": 339, + "source": 95, + "pc": [ + 334, + 335 + ] + }, + { + "teal": 340, + "source": 95, + "pc": [ + 336 + ] + }, + { + "teal": 341, + "source": 95, + "pc": [ + 337 + ] + }, + { + "teal": 342, + "source": 95, + "pc": [ + 338 + ] + }, + { + "teal": 343, + "source": 95, + "pc": [ + 339, + 340 + ] + }, + { + "teal": 347, + "source": 97, + "pc": [ + 341, + 342 + ] + }, + { + "teal": 348, + "source": 97, + "pc": [ + 343 + ] + }, + { + "teal": 349, + "source": 97, + "pc": [ + 344 + ] + }, + { + "teal": 350, + "source": 97, + "pc": [ + 345 + ] + }, + { + "teal": 351, + "source": 97, + "pc": [ + 346, + 347, + 348 + ] + }, + { + "teal": 352, + "source": 97, + "pc": [ + 349, + 350 + ] + }, + { + "teal": 353, + "source": 97, + "pc": [ + 351, + 352 + ] + }, + { + "teal": 354, + "source": 97, + "pc": [ + 353 + ] + }, + { + "teal": 355, + "source": 97, + "pc": [ + 354 + ] + }, + { + "teal": 358, + "source": 97, + "pc": [ + 355 + ] + }, + { + "teal": 359, + "source": 97, + "pc": [ + 356, + 357, + 358 + ] + }, + { + "teal": 360, + "source": 97, + "pc": [ + 359, + 360 + ] + }, + { + "teal": 361, + "source": 97, + "pc": [ + 361 + ] + }, + { + "teal": 362, + "source": 97, + "pc": [ + 362 + ] + }, + { + "teal": 363, + "source": 97, + "pc": [ + 363 + ] + }, + { + "teal": 366, + "source": 97, + "pc": [ + 364 + ] + }, + { + "teal": 370, + "source": 98, + "pc": [ + 365, + 366 + ] + }, + { + "teal": 371, + "source": 98, + "pc": [ + 367, + 368 + ] + }, + { + "teal": 372, + "source": 98, + "pc": [ + 369 + ] + }, + { + "teal": 373, + "source": 98, + "pc": [ + 370 + ] + }, + { + "teal": 377, + "source": 100, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 378, + "source": 100, + "pc": [ + 373, + 374 + ] + }, + { + "teal": 379, + "source": 100, + "pc": [ + 375 + ] + }, + { + "teal": 380, + "source": 100, + "pc": [ + 376, + 377, + 378 + ] + }, + { + "teal": 381, + "source": 100, + "pc": [ + 379, + 380 + ] + }, + { + "teal": 382, + "source": 100, + "pc": [ + 381, + 382 + ] + }, + { + "teal": 383, + "source": 100, + "pc": [ + 383 + ] + }, + { + "teal": 384, + "source": 94, + "pc": [ + 384 + ] + }, + { + "teal": 387, + "source": 20, + "pc": [ + 385 + ] + }, + { + "teal": 388, + "source": 20, + "pc": [ + 386 + ] + }, + { + "teal": 391, + "source": 20, + "pc": [ + 387, + 388, + 389, + 390, + 391, + 392 + ] + }, + { + "teal": 392, + "source": 20, + "pc": [ + 393, + 394, + 395 + ] + }, + { + "teal": 393, + "source": 20, + "pc": [ + 396, + 397, + 398, + 399 + ] + }, + { + "teal": 396, + "source": 20, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 400 + ] + }, + { + "teal": 399, + "source": 20, + "pc": [ + 401, + 402, + 403, + 404, + 405, + 406 + ] + }, + { + "teal": 400, + "source": 20, + "pc": [ + 407, + 408, + 409, + 410, + 411, + 412 + ] + }, + { + "teal": 401, + "source": 20, + "pc": [ + 413, + 414, + 415, + 416, + 417, + 418 + ] + }, + { + "teal": 402, + "source": 20, + "pc": [ + 419, + 420, + 421 + ] + }, + { + "teal": 403, + "source": 20, + "pc": [ + 422, + 423, + 424, + 425, + 426, + 427, + 428, + 429 + ] + }, + { + "teal": 406, + "source": 20, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 430 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkOgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAobWJyUGF5bWVudCkgZm9yIHN0YXJ0VXBsb2FkIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGVuZEJveFNpemU6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIG51bUJveGVzOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RhcnRVcGxvYWQoc3RyaW5nLHVpbnQ2NCx1aW50NjQscGF5KXZvaWQKCWNhbGxzdWIgc3RhcnRVcGxvYWQKCWludCAxCglyZXR1cm4KCi8vIHN0YXJ0VXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIG51bUJveGVzOiB1aW50NjQsIGVuZEJveFNpemU6IHVpbnQ2NCwgbWJyUGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLwovLyBBbGxvY2F0ZSBib3hlcyB0byBiZWdpbiBkYXRhIHVwbG9hZCBwcm9jZXNzCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBudW1Cb3hlcyBUaGUgbnVtYmVyIG9mIGJveGVzIHRoYXQgdGhlIGRhdGEgd2lsbCB0YWtlIHVwCi8vIEBwYXJhbSBlbmRCb3hTaXplIFRoZSBzaXplIG9mIHRoZSBsYXN0IGJveAovLyBAcGFyYW0gbWJyUGF5bWVudCBQYXltZW50IGZyb20gdGhlIHVwbG9hZGVyIHRvIGNvdmVyIHRoZSBib3ggTUJSCnN0YXJ0VXBsb2FkOgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjQxCgkvLyBzdGFydEJveCA9IHRoaXMuY3VycmVudEluZGV4LnZhbHVlCglieXRlIDB4NjM3NTcyNzI2NTZlNzQ0OTZlNjQ2NTc4IC8vICJjdXJyZW50SW5kZXgiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfYnVyeSAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo0MgoJLy8gZW5kQm94ID0gc3RhcnRCb3ggKyBudW1Cb3hlcyAtIDEKCWZyYW1lX2RpZyAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBudW1Cb3hlczogdWludDY0CgkrCglpbnQgMQoJLQoJZnJhbWVfYnVyeSAxIC8vIGVuZEJveDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NDQKCS8vIG1ldGFkYXRhOiBNZXRhZGF0YSA9IHsKCS8vICAgICAgIHN0YXJ0OiBzdGFydEJveCwKCS8vICAgICAgIGVuZDogZW5kQm94LAoJLy8gICAgICAgc3RhdHVzOiBJTl9QUk9HUkVTUywKCS8vICAgICAgIGVuZFNpemU6IGVuZEJveFNpemUsCgkvLyAgICAgfQoJZnJhbWVfZGlnIDAgLy8gc3RhcnRCb3g6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwCgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyBlbmRCb3hTaXplOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJZnJhbWVfYnVyeSAyIC8vIG1ldGFkYXRhOiBNZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUxCgkvLyBhc3NlcnQoIXRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglib3hfbGVuCglzd2FwCglwb3AKCSEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUzCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZSA9IG1ldGFkYXRhCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfZGlnIDIgLy8gbWV0YWRhdGE6IE1ldGFkYXRhCglib3hfcHV0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NTUKCS8vIHRoaXMuY3VycmVudEluZGV4LnZhbHVlID0gZW5kQm94ICsgMQoJYnl0ZSAweDYzNzU3MjcyNjU2ZTc0NDk2ZTY0NjU3OCAvLyAiY3VycmVudEluZGV4IgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWludCAxCgkrCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjU3CgkvLyB0b3RhbENvc3QgPQoJLy8gICAgICAgbnVtQm94ZXMgKiBDT1NUX1BFUl9CT1ggKyAvLyBjb3N0IG9mIGJveGVzCgkvLyAgICAgICAobnVtQm94ZXMgLSAxKSAqIE1BWF9CT1hfU0laRSAqIENPU1RfUEVSX0JZVEUgKyAvLyBjb3N0IG9mIGRhdGEKCS8vICAgICAgIG51bUJveGVzICogNjQgKiBDT1NUX1BFUl9CWVRFICsgLy8gY29zdCBvZiBrZXlzCgkvLyAgICAgICBlbmRCb3hTaXplICogQ09TVF9QRVJfQllURQoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCAyNTAwCgkqCglmcmFtZV9kaWcgLTIgLy8gbnVtQm94ZXM6IHVpbnQ2NAoJaW50IDEKCS0KCWludCAzMjc2OAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCA2NAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0zIC8vIGVuZEJveFNpemU6IHVpbnQ2NAoJaW50IDQwMAoJKgoJKwoJZnJhbWVfYnVyeSAzIC8vIHRvdGFsQ29zdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NjMKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IHRvdGFsQ29zdCB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAzIC8vIHRvdGFsQ29zdDogdWludDY0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoibWJyUGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0b3RhbENvc3QifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxieXRlW10pdm9pZAoqYWJpX3JvdXRlX3VwbG9hZDoKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGJveEluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIHVwbG9hZAoJaW50IDEKCXJldHVybgoKLy8gdXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIGJveEluZGV4OiB1aW50NjQsIG9mZnNldDogdWludDY0LCBkYXRhOiBieXRlcyk6IHZvaWQKLy8KLy8KLy8gVXBsb2FkIGRhdGEgdG8gYSBzcGVjaWZpYyBvZmZzZXQgaW4gYSBib3gKLy8KLy8gQHBhcmFtIGRhdGFJZGVudGlmaWVyIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGRhdGEKLy8gQHBhcmFtIGJveEluZGV4IFRoZSBpbmRleCBvZiB0aGUgYm94IHRvIHVwbG9hZCB0aGUgZ2l2ZW4gY2h1bmsgb2YgZGF0YSB0bwovLyBAcGFyYW0gb2Zmc2V0IFRoZSBvZmZzZXQgd2l0aGluIHRoZSBib3ggdG8gc3RhcnQgd3JpdGluZyB0aGUgZGF0YQovLyBAcGFyYW0gZGF0YSBUaGUgZGF0YSB0byB3cml0ZQp1cGxvYWQ6Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc2CgkvLyBtZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly9tZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc3CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc4CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhcnQgPD0gYm94SW5kZXggJiYgYm94SW5kZXggPD0gbWV0YWRhdGEuZW5kKQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBib3hJbmRleDogdWludDY0Cgk8PQoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCA4IC8vIGhlYWRPZmZzZXQKCWludCA4Cglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQwOgoJYXNzZXJ0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjgwCgkvLyBvZmZzZXQgPT09IDAKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2VuZAoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6ODEKCS8vIHRoaXMuZGF0YUJveGVzKGJveEluZGV4KS5jcmVhdGUoYm94SW5kZXggPT09IG1ldGFkYXRhLmVuZCA/IG1ldGFkYXRhLmVuZFNpemUgOiBNQVhfQk9YX1NJWkUpCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgOCAvLyBoZWFkT2Zmc2V0CglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCT09CglieiAqdGVybmFyeTBfZmFsc2UKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTcgLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWludCAzMjc2OAoKKnRlcm5hcnkwX2VuZDoKCWJveF9jcmVhdGUKCXBvcAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo4NAoJLy8gdGhpcy5kYXRhQm94ZXMoYm94SW5kZXgpLnJlcGxhY2Uob2Zmc2V0LCBkYXRhKQoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC00IC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQKKmFiaV9yb3V0ZV9zZXRTdGF0dXM6CgkvLyBzdGF0dXM6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoc3RhdHVzKSBmb3Igc2V0U3RhdHVzIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldFN0YXR1cyhzdHJpbmcsdWludDgpdm9pZAoJY2FsbHN1YiBzZXRTdGF0dXMKCWludCAxCglyZXR1cm4KCi8vIHNldFN0YXR1cyhkYXRhSWRlbnRpZmllcjogc3RyaW5nLCBzdGF0dXM6IHVpbnQ8OD4pOiB2b2lkCi8vCi8vCi8vIFNldCB0aGUgc3RhdHVzIG9mIHRoZSBkYXRhCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBzdGF0dXMgVGhlIG5ldyBzdGF0dXMgZm9yIHRoZSBkYXRhCnNldFN0YXR1czoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6OTUKCS8vIGN1cnJlbnRTdGF0dXMgPSB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo5NwoJLy8gYXNzZXJ0KHN0YXR1cyA9PT0gUkVBRFkgfHwgc3RhdHVzID09PSBJTU1VVEFCTEUgfHwgc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpbnQgMgoJPT0KCXx8Cgoqc2tpcF9vcjA6CglkdXAKCWJueiAqc2tpcF9vcjEKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAwCgk9PQoJfHwKCipza2lwX29yMToKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjk4CgkvLyBhc3NlcnQoY3VycmVudFN0YXR1cyAhPT0gSU1NVVRBQkxFKQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCWludCAyCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6MTAwCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMgPSBzdGF0dXMKCWludCAxNiAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpdG9iCglleHRyYWN0IDcgMQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAidXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkIgoJbWV0aG9kICJzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkICphYmlfcm91dGVfdXBsb2FkICphYmlfcm91dGVfc2V0U3RhdHVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZAoqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkOgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMCAobWJyUGF5bWVudCkgZm9yIHN0YXJ0VXBsb2FkIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGVuZEJveFNpemU6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIG51bUJveGVzOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RhcnRVcGxvYWQoc3RyaW5nLHVpbnQ2NCx1aW50NjQscGF5KXZvaWQKCWNhbGxzdWIgc3RhcnRVcGxvYWQKCWludCAxCglyZXR1cm4KCi8vIHN0YXJ0VXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIG51bUJveGVzOiB1aW50NjQsIGVuZEJveFNpemU6IHVpbnQ2NCwgbWJyUGF5bWVudDogUGF5VHhuKTogdm9pZAovLwovLwovLyBBbGxvY2F0ZSBib3hlcyB0byBiZWdpbiBkYXRhIHVwbG9hZCBwcm9jZXNzCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBudW1Cb3hlcyBUaGUgbnVtYmVyIG9mIGJveGVzIHRoYXQgdGhlIGRhdGEgd2lsbCB0YWtlIHVwCi8vIEBwYXJhbSBlbmRCb3hTaXplIFRoZSBzaXplIG9mIHRoZSBsYXN0IGJveAovLyBAcGFyYW0gbWJyUGF5bWVudCBQYXltZW50IGZyb20gdGhlIHVwbG9hZGVyIHRvIGNvdmVyIHRoZSBib3ggTUJSCnN0YXJ0VXBsb2FkOgoJcHJvdG8gNCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjQxCgkvLyBzdGFydEJveCA9IHRoaXMuY3VycmVudEluZGV4LnZhbHVlCglieXRlIDB4NjM3NTcyNzI2NTZlNzQ0OTZlNjQ2NTc4IC8vICJjdXJyZW50SW5kZXgiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfYnVyeSAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo0MgoJLy8gZW5kQm94ID0gc3RhcnRCb3ggKyBudW1Cb3hlcyAtIDEKCWZyYW1lX2RpZyAwIC8vIHN0YXJ0Qm94OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBudW1Cb3hlczogdWludDY0CgkrCglpbnQgMQoJLQoJZnJhbWVfYnVyeSAxIC8vIGVuZEJveDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NDQKCS8vIG1ldGFkYXRhOiBNZXRhZGF0YSA9IHsKCS8vICAgICAgIHN0YXJ0OiBzdGFydEJveCwKCS8vICAgICAgIGVuZDogZW5kQm94LAoJLy8gICAgICAgc3RhdHVzOiBJTl9QUk9HUkVTUywKCS8vICAgICAgIGVuZFNpemU6IGVuZEJveFNpemUsCgkvLyAgICAgfQoJZnJhbWVfZGlnIDAgLy8gc3RhcnRCb3g6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwCgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyBlbmRCb3hTaXplOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJZnJhbWVfYnVyeSAyIC8vIG1ldGFkYXRhOiBNZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUxCgkvLyBhc3NlcnQoIXRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglib3hfbGVuCglzd2FwCglwb3AKCSEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjUzCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZSA9IG1ldGFkYXRhCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfZGlnIDIgLy8gbWV0YWRhdGE6IE1ldGFkYXRhCglib3hfcHV0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NTUKCS8vIHRoaXMuY3VycmVudEluZGV4LnZhbHVlID0gZW5kQm94ICsgMQoJYnl0ZSAweDYzNzU3MjcyNjU2ZTc0NDk2ZTY0NjU3OCAvLyAiY3VycmVudEluZGV4IgoJZnJhbWVfZGlnIDEgLy8gZW5kQm94OiB1aW50NjQKCWludCAxCgkrCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjU3CgkvLyB0b3RhbENvc3QgPQoJLy8gICAgICAgbnVtQm94ZXMgKiBDT1NUX1BFUl9CT1ggKyAvLyBjb3N0IG9mIGJveGVzCgkvLyAgICAgICAobnVtQm94ZXMgLSAxKSAqIE1BWF9CT1hfU0laRSAqIENPU1RfUEVSX0JZVEUgKyAvLyBjb3N0IG9mIGRhdGEKCS8vICAgICAgIG51bUJveGVzICogNjQgKiBDT1NUX1BFUl9CWVRFICsgLy8gY29zdCBvZiBrZXlzCgkvLyAgICAgICBlbmRCb3hTaXplICogQ09TVF9QRVJfQllURQoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCAyNTAwCgkqCglmcmFtZV9kaWcgLTIgLy8gbnVtQm94ZXM6IHVpbnQ2NAoJaW50IDEKCS0KCWludCAzMjc2OAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0yIC8vIG51bUJveGVzOiB1aW50NjQKCWludCA2NAoJKgoJaW50IDQwMAoJKgoJKwoJZnJhbWVfZGlnIC0zIC8vIGVuZEJveFNpemU6IHVpbnQ2NAoJaW50IDQwMAoJKgoJKwoJZnJhbWVfYnVyeSAzIC8vIHRvdGFsQ29zdDogdWludDY0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6NjMKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IHRvdGFsQ29zdCB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTQgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAzIC8vIHRvdGFsQ29zdDogdWludDY0Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoibWJyUGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJ0b3RhbENvc3QifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxieXRlW10pdm9pZAoqYWJpX3JvdXRlX3VwbG9hZDoKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGJveEluZGV4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIHVwbG9hZAoJaW50IDEKCXJldHVybgoKLy8gdXBsb2FkKGRhdGFJZGVudGlmaWVyOiBzdHJpbmcsIGJveEluZGV4OiB1aW50NjQsIG9mZnNldDogdWludDY0LCBkYXRhOiBieXRlcyk6IHZvaWQKLy8KLy8KLy8gVXBsb2FkIGRhdGEgdG8gYSBzcGVjaWZpYyBvZmZzZXQgaW4gYSBib3gKLy8KLy8gQHBhcmFtIGRhdGFJZGVudGlmaWVyIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGRhdGEKLy8gQHBhcmFtIGJveEluZGV4IFRoZSBpbmRleCBvZiB0aGUgYm94IHRvIHVwbG9hZCB0aGUgZ2l2ZW4gY2h1bmsgb2YgZGF0YSB0bwovLyBAcGFyYW0gb2Zmc2V0IFRoZSBvZmZzZXQgd2l0aGluIHRoZSBib3ggdG8gc3RhcnQgd3JpdGluZyB0aGUgZGF0YQovLyBAcGFyYW0gZGF0YSBUaGUgZGF0YSB0byB3cml0ZQp1cGxvYWQ6Cglwcm90byA0IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc2CgkvLyBtZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoZGF0YUlkZW50aWZpZXIpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJZnJhbWVfYnVyeSAwIC8vIHN0b3JhZ2Uga2V5Ly9tZXRhZGF0YQoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc3CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjc4CgkvLyBhc3NlcnQobWV0YWRhdGEuc3RhcnQgPD0gYm94SW5kZXggJiYgYm94SW5kZXggPD0gbWV0YWRhdGEuZW5kKQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBib3hJbmRleDogdWludDY0Cgk8PQoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWludCA4IC8vIGhlYWRPZmZzZXQKCWludCA4Cglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQwOgoJYXNzZXJ0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjgwCgkvLyBvZmZzZXQgPT09IDAKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2VuZAoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6ODEKCS8vIHRoaXMuZGF0YUJveGVzKGJveEluZGV4KS5jcmVhdGUoYm94SW5kZXggPT09IG1ldGFkYXRhLmVuZCA/IG1ldGFkYXRhLmVuZFNpemUgOiBNQVhfQk9YX1NJWkUpCglmcmFtZV9kaWcgLTIgLy8gYm94SW5kZXg6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgOCAvLyBoZWFkT2Zmc2V0CglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCT09CglieiAqdGVybmFyeTBfZmFsc2UKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTcgLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWludCAzMjc2OAoKKnRlcm5hcnkwX2VuZDoKCWJveF9jcmVhdGUKCXBvcAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo4NAoJLy8gdGhpcy5kYXRhQm94ZXMoYm94SW5kZXgpLnJlcGxhY2Uob2Zmc2V0LCBkYXRhKQoJZnJhbWVfZGlnIC0yIC8vIGJveEluZGV4OiB1aW50NjQKCWl0b2IKCWZyYW1lX2RpZyAtMyAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC00IC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQKKmFiaV9yb3V0ZV9zZXRTdGF0dXM6CgkvLyBzdGF0dXM6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoc3RhdHVzKSBmb3Igc2V0U3RhdHVzIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZGF0YUlkZW50aWZpZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldFN0YXR1cyhzdHJpbmcsdWludDgpdm9pZAoJY2FsbHN1YiBzZXRTdGF0dXMKCWludCAxCglyZXR1cm4KCi8vIHNldFN0YXR1cyhkYXRhSWRlbnRpZmllcjogc3RyaW5nLCBzdGF0dXM6IHVpbnQ8OD4pOiB2b2lkCi8vCi8vCi8vIFNldCB0aGUgc3RhdHVzIG9mIHRoZSBkYXRhCi8vCi8vIEBwYXJhbSBkYXRhSWRlbnRpZmllciBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBkYXRhCi8vIEBwYXJhbSBzdGF0dXMgVGhlIG5ldyBzdGF0dXMgZm9yIHRoZSBkYXRhCnNldFN0YXR1czoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6OTUKCS8vIGN1cnJlbnRTdGF0dXMgPSB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMKCWZyYW1lX2RpZyAtMSAvLyBkYXRhSWRlbnRpZmllcjogc3RyaW5nCglpbnQgMTYgLy8gaGVhZE9mZnNldAoJaW50IDEKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCgkvLyBleGFtcGxlcy9iaWdfYm94L2JpZ19ib3guYWxnby50czo5NwoJLy8gYXNzZXJ0KHN0YXR1cyA9PT0gUkVBRFkgfHwgc3RhdHVzID09PSBJTU1VVEFCTEUgfHwgc3RhdHVzID09PSBJTl9QUk9HUkVTUykKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpbnQgMgoJPT0KCXx8Cgoqc2tpcF9vcjA6CglkdXAKCWJueiAqc2tpcF9vcjEKCWZyYW1lX2RpZyAtMiAvLyBzdGF0dXM6IHVpbnQ8OD4KCWludCAwCgk9PQoJfHwKCipza2lwX29yMToKCWFzc2VydAoKCS8vIGV4YW1wbGVzL2JpZ19ib3gvYmlnX2JveC5hbGdvLnRzOjk4CgkvLyBhc3NlcnQoY3VycmVudFN0YXR1cyAhPT0gSU1NVVRBQkxFKQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudFN0YXR1czogdWludDgKCWludCAyCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvYmlnX2JveC9iaWdfYm94LmFsZ28udHM6MTAwCgkvLyB0aGlzLm1ldGFkYXRhKGRhdGFJZGVudGlmaWVyKS52YWx1ZS5zdGF0dXMgPSBzdGF0dXMKCWludCAxNiAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gc3RhdHVzOiB1aW50PDg+CglpdG9iCglleHRyYWN0IDcgMQoJZnJhbWVfZGlnIC0xIC8vIGRhdGFJZGVudGlmaWVyOiBzdHJpbmcKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGFydFVwbG9hZChzdHJpbmcsdWludDY0LHVpbnQ2NCxwYXkpdm9pZCIKCW1ldGhvZCAidXBsb2FkKHN0cmluZyx1aW50NjQsdWludDY0LGJ5dGVbXSl2b2lkIgoJbWV0aG9kICJzZXRTdGF0dXMoc3RyaW5nLHVpbnQ4KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXJ0VXBsb2FkICphYmlfcm91dGVfdXBsb2FkICphYmlfcm91dGVfc2V0U3RhdHVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/calculator/artifacts/Calculator.approval.teal b/examples/calculator/artifacts/Calculator.approval.teal index 297f8e6a8..b2cf25e76 100644 --- a/examples/calculator/artifacts/Calculator.approval.teal +++ b/examples/calculator/artifacts/Calculator.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/calculator/artifacts/Calculator.arc32.json b/examples/calculator/artifacts/Calculator.arc32.json index 34d530811..d61e3e3b3 100644 --- a/examples/calculator/artifacts/Calculator.arc32.json +++ b/examples/calculator/artifacts/Calculator.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnZXRTdW0oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKLy8KLy8gQ2FsY3VsYXRlcyB0aGUgc3VtIG9mIHR3byBudW1iZXJzCi8vCi8vIEBwYXJhbSBhCi8vIEBwYXJhbSBiCi8vIEByZXR1cm5zIFRoZSBzdW0gb2YgYSBhbmQgYgpnZXRTdW06Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoxMwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBnZXREaWZmZXJlbmNlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Ci8vCi8vIENhbGN1bGF0ZXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbnVtYmVycwovLwovLyBAcGFyYW0gYQovLyBAcGFyYW0gYgovLyBAcmV0dXJucyBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgYW5kIGIuCmdldERpZmZlcmVuY2U6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoyNAoJLy8gcmV0dXJuIGEgPj0gYiA/IGEgLSBiIDogYiAtIGE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk+PQoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgktCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCS0KCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIGRvTWF0aCh1aW50NjQsdWludDY0LHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9kb01hdGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIG9wZXJhdGlvbjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglleHRyYWN0IDIgMAoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBkb01hdGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb01hdGgoYTogdWludDY0LCBiOiB1aW50NjQsIG9wZXJhdGlvbjogc3RyaW5nKTogdWludDY0Ci8vCi8vIEEgbWV0aG9kIHRoYXQgdGFrZXMgdHdvIG51bWJlcnMgYW5kIGRvZXMgZWl0aGVyIGFkZGl0aW9uIG9yIHN1YnRyYWN0aW9uCi8vCi8vIEBwYXJhbSBhIFRoZSBmaXJzdCBudW1iZXIKLy8gQHBhcmFtIGIgVGhlIHNlY29uZCBudW1iZXIKLy8gQHBhcmFtIG9wZXJhdGlvbiBUaGUgb3BlcmF0aW9uIHRvIHBlcmZvcm0uIENhbiBiZSBlaXRoZXIgJ3N1bScgb3IgJ2RpZmZlcmVuY2UnCi8vCi8vIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbgpkb01hdGg6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czozOQoJLy8gb3BlcmF0aW9uID09PSAnc3VtJwoJZnJhbWVfZGlnIC0zIC8vIG9wZXJhdGlvbjogc3RyaW5nCglieXRlIDB4NzM3NTZkIC8vICJzdW0iCgk9PQoJYnogKmlmMF9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDAKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0U3VtKGEsIGIpCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGdldFN1bQoJZnJhbWVfYnVyeSAwIC8vIHJlc3VsdDogdWludDY0CgliICppZjBfZW5kCgoqaWYwX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDEKCS8vIG9wZXJhdGlvbiA9PT0gJ2RpZmZlcmVuY2UnCglmcmFtZV9kaWcgLTMgLy8gb3BlcmF0aW9uOiBzdHJpbmcKCWJ5dGUgMHg2NDY5NjY2NjY1NzI2NTZlNjM2NSAvLyAiZGlmZmVyZW5jZSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDIKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0RGlmZmVyZW5jZShhLCBiKQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBnZXREaWZmZXJlbmNlCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiB1aW50NjQKCWIgKmlmMF9lbmQKCippZjBfZWxzZToKCS8vIEludmFsaWQgb3BlcmF0aW9uCgllcnIKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDUKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgMCAvLyByZXN1bHQ6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZG9NYXRoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnZXRTdW0oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKLy8KLy8gQ2FsY3VsYXRlcyB0aGUgc3VtIG9mIHR3byBudW1iZXJzCi8vCi8vIEBwYXJhbSBhCi8vIEBwYXJhbSBiCi8vIEByZXR1cm5zIFRoZSBzdW0gb2YgYSBhbmQgYgpnZXRTdW06Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoxMwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBnZXREaWZmZXJlbmNlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Ci8vCi8vIENhbGN1bGF0ZXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbnVtYmVycwovLwovLyBAcGFyYW0gYQovLyBAcGFyYW0gYgovLyBAcmV0dXJucyBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgYW5kIGIuCmdldERpZmZlcmVuY2U6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoyNAoJLy8gcmV0dXJuIGEgPj0gYiA/IGEgLSBiIDogYiAtIGE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk+PQoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgktCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCS0KCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIGRvTWF0aCh1aW50NjQsdWludDY0LHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9kb01hdGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIG9wZXJhdGlvbjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglleHRyYWN0IDIgMAoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBkb01hdGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb01hdGgoYTogdWludDY0LCBiOiB1aW50NjQsIG9wZXJhdGlvbjogc3RyaW5nKTogdWludDY0Ci8vCi8vIEEgbWV0aG9kIHRoYXQgdGFrZXMgdHdvIG51bWJlcnMgYW5kIGRvZXMgZWl0aGVyIGFkZGl0aW9uIG9yIHN1YnRyYWN0aW9uCi8vCi8vIEBwYXJhbSBhIFRoZSBmaXJzdCBudW1iZXIKLy8gQHBhcmFtIGIgVGhlIHNlY29uZCBudW1iZXIKLy8gQHBhcmFtIG9wZXJhdGlvbiBUaGUgb3BlcmF0aW9uIHRvIHBlcmZvcm0uIENhbiBiZSBlaXRoZXIgJ3N1bScgb3IgJ2RpZmZlcmVuY2UnCi8vCi8vIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbgpkb01hdGg6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czozOQoJLy8gb3BlcmF0aW9uID09PSAnc3VtJwoJZnJhbWVfZGlnIC0zIC8vIG9wZXJhdGlvbjogc3RyaW5nCglieXRlIDB4NzM3NTZkIC8vICJzdW0iCgk9PQoJYnogKmlmMF9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDAKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0U3VtKGEsIGIpCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGdldFN1bQoJZnJhbWVfYnVyeSAwIC8vIHJlc3VsdDogdWludDY0CgliICppZjBfZW5kCgoqaWYwX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDEKCS8vIG9wZXJhdGlvbiA9PT0gJ2RpZmZlcmVuY2UnCglmcmFtZV9kaWcgLTMgLy8gb3BlcmF0aW9uOiBzdHJpbmcKCWJ5dGUgMHg2NDY5NjY2NjY1NzI2NTZlNjM2NSAvLyAiZGlmZmVyZW5jZSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDIKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0RGlmZmVyZW5jZShhLCBiKQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBnZXREaWZmZXJlbmNlCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiB1aW50NjQKCWIgKmlmMF9lbmQKCippZjBfZWxzZToKCS8vIEludmFsaWQgb3BlcmF0aW9uCgllcnIKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDUKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgMCAvLyByZXN1bHQ6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZG9NYXRoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/calculator/artifacts/Calculator.arc56_draft.json b/examples/calculator/artifacts/Calculator.arc56_draft.json index 1414278b7..1351867a4 100644 --- a/examples/calculator/artifacts/Calculator.arc56_draft.json +++ b/examples/calculator/artifacts/Calculator.arc56_draft.json @@ -78,654 +78,657 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 33, - "source": 12, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 37, - "source": 13, - "pc": [ - 43, - 44 - ] - }, - { - "teal": 38, - "source": 13, - "pc": [ - 45, - 46 - ] - }, - { - "teal": 39, - "source": 13, - "pc": [ - 47 - ] - }, - { - "teal": 40, - "source": 12, - "pc": [ - 48 - ] - }, - { - "teal": 50, - "source": 23, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 54, - "source": 24, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 55, - "source": 24, - "pc": [ - 54, - 55 - ] - }, - { - "teal": 56, - "source": 24, - "pc": [ - 56 - ] - }, - { - "teal": 57, - "source": 24, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 58, - "source": 24, - "pc": [ - 60, - 61 - ] - }, - { - "teal": 59, - "source": 24, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 60, - "source": 24, - "pc": [ - 64 - ] - }, - { - "teal": 61, - "source": 24, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 64, - "source": 24, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 65, - "source": 24, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 66, - "source": 24, - "pc": [ - 72 - ] - }, - { - "teal": 69, - "source": 23, - "pc": [ - 73 - ] - }, - { - "teal": 74, - "source": 36, - "pc": [ - 74, - 75, - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 77, - "source": 36, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 78, - "source": 36, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 81, - "source": 36, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 82, - "source": 36, - "pc": [ - 89 - ] - }, - { - "teal": 85, - "source": 36, - "pc": [ - 90, - 91, - 92 - ] - }, - { - "teal": 86, - "source": 36, - "pc": [ - 93 - ] - }, - { - "teal": 89, - "source": 36, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 90, - "source": 36, - "pc": [ - 97 - ] - }, - { - "teal": 91, - "source": 36, - "pc": [ - 98 - ] - }, - { - "teal": 92, - "source": 36, - "pc": [ - 99 - ] - }, - { - "teal": 93, - "source": 36, - "pc": [ - 100 - ] - }, - { - "teal": 94, - "source": 36, - "pc": [ - 101 - ] - }, - { - "teal": 106, - "source": 36, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 109, - "source": 36, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 114, - "source": 39, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 115, - "source": 39, - "pc": [ - 109, - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 116, - "source": 39, - "pc": [ - 114 - ] - }, - { - "teal": 117, - "source": 39, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 122, - "source": 40, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 123, - "source": 40, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 124, - "source": 40, - "pc": [ - 122, - 123, - 124 - ] - }, - { - "teal": 125, - "source": 40, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 126, - "source": 39, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 131, - "source": 41, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 132, - "source": 41, - "pc": [ - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143 - ] - }, - { - "teal": 133, - "source": 41, - "pc": [ - 144 - ] - }, - { - "teal": 134, - "source": 41, - "pc": [ - 145, - 146, - 147 - ] - }, - { - "teal": 139, - "source": 42, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 140, - "source": 42, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 141, - "source": 42, - "pc": [ - 152, - 153, - 154 - ] - }, - { - "teal": 142, - "source": 42, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 143, - "source": 41, - "pc": [ - 157, - 158, - 159 - ] - }, - { - "teal": 147, - "source": 43, - "errorMessage": "Invalid operation", - "pc": [ - 160 - ] - }, - { - "teal": 152, - "source": 45, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 155, - "source": 36, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 156, - "source": 36, - "pc": [ - 165 - ] - }, - { - "teal": 159, - "source": 4, - "pc": [ - 166 - ] - }, - { - "teal": 160, - "source": 4, - "pc": [ - 167 - ] - }, - { - "teal": 163, - "source": 4, - "pc": [ - 168, - 169, - 170, - 171, - 172, - 173 - ] - }, - { - "teal": 164, - "source": 4, - "pc": [ - 174, - 175, - 176 - ] - }, - { - "teal": 165, - "source": 4, - "pc": [ - 177, - 178, - 179, - 180 - ] - }, - { - "teal": 168, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 181 - ] - }, - { - "teal": 171, - "source": 4, - "pc": [ - 182, - 183, - 184, - 185, - 186, - 187 - ] - }, - { - "teal": 172, - "source": 4, - "pc": [ - 188, - 189, - 190 - ] - }, - { - "teal": 173, - "source": 4, - "pc": [ - 191, - 192, - 193, - 194 - ] - }, - { - "teal": 176, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 195 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 33, + "source": 12, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 37, + "source": 13, + "pc": [ + 43, + 44 + ] + }, + { + "teal": 38, + "source": 13, + "pc": [ + 45, + 46 + ] + }, + { + "teal": 39, + "source": 13, + "pc": [ + 47 + ] + }, + { + "teal": 40, + "source": 12, + "pc": [ + 48 + ] + }, + { + "teal": 50, + "source": 23, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 54, + "source": 24, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 55, + "source": 24, + "pc": [ + 54, + 55 + ] + }, + { + "teal": 56, + "source": 24, + "pc": [ + 56 + ] + }, + { + "teal": 57, + "source": 24, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 58, + "source": 24, + "pc": [ + 60, + 61 + ] + }, + { + "teal": 59, + "source": 24, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 60, + "source": 24, + "pc": [ + 64 + ] + }, + { + "teal": 61, + "source": 24, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 64, + "source": 24, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 65, + "source": 24, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 66, + "source": 24, + "pc": [ + 72 + ] + }, + { + "teal": 69, + "source": 23, + "pc": [ + 73 + ] + }, + { + "teal": 74, + "source": 36, + "pc": [ + 74, + 75, + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 77, + "source": 36, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 78, + "source": 36, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 81, + "source": 36, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 82, + "source": 36, + "pc": [ + 89 + ] + }, + { + "teal": 85, + "source": 36, + "pc": [ + 90, + 91, + 92 + ] + }, + { + "teal": 86, + "source": 36, + "pc": [ + 93 + ] + }, + { + "teal": 89, + "source": 36, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 90, + "source": 36, + "pc": [ + 97 + ] + }, + { + "teal": 91, + "source": 36, + "pc": [ + 98 + ] + }, + { + "teal": 92, + "source": 36, + "pc": [ + 99 + ] + }, + { + "teal": 93, + "source": 36, + "pc": [ + 100 + ] + }, + { + "teal": 94, + "source": 36, + "pc": [ + 101 + ] + }, + { + "teal": 106, + "source": 36, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 109, + "source": 36, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 114, + "source": 39, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 115, + "source": 39, + "pc": [ + 109, + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 116, + "source": 39, + "pc": [ + 114 + ] + }, + { + "teal": 117, + "source": 39, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 122, + "source": 40, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 123, + "source": 40, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 124, + "source": 40, + "pc": [ + 122, + 123, + 124 + ] + }, + { + "teal": 125, + "source": 40, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 126, + "source": 39, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 131, + "source": 41, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 132, + "source": 41, + "pc": [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + }, + { + "teal": 133, + "source": 41, + "pc": [ + 144 + ] + }, + { + "teal": 134, + "source": 41, + "pc": [ + 145, + 146, + 147 + ] + }, + { + "teal": 139, + "source": 42, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 140, + "source": 42, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 141, + "source": 42, + "pc": [ + 152, + 153, + 154 + ] + }, + { + "teal": 142, + "source": 42, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 143, + "source": 41, + "pc": [ + 157, + 158, + 159 + ] + }, + { + "teal": 147, + "source": 43, + "errorMessage": "Invalid operation", + "pc": [ + 160 + ] + }, + { + "teal": 152, + "source": 45, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 155, + "source": 36, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 156, + "source": 36, + "pc": [ + 165 + ] + }, + { + "teal": 159, + "source": 4, + "pc": [ + 166 + ] + }, + { + "teal": 160, + "source": 4, + "pc": [ + 167 + ] + }, + { + "teal": 163, + "source": 4, + "pc": [ + 168, + 169, + 170, + 171, + 172, + 173 + ] + }, + { + "teal": 164, + "source": 4, + "pc": [ + 174, + 175, + 176 + ] + }, + { + "teal": 165, + "source": 4, + "pc": [ + 177, + 178, + 179, + 180 + ] + }, + { + "teal": 168, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 181 + ] + }, + { + "teal": 171, + "source": 4, + "pc": [ + 182, + 183, + 184, + 185, + 186, + 187 + ] + }, + { + "teal": 172, + "source": 4, + "pc": [ + 188, + 189, + 190 + ] + }, + { + "teal": 173, + "source": 4, + "pc": [ + 191, + 192, + 193, + 194 + ] + }, + { + "teal": 176, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 195 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnZXRTdW0oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKLy8KLy8gQ2FsY3VsYXRlcyB0aGUgc3VtIG9mIHR3byBudW1iZXJzCi8vCi8vIEBwYXJhbSBhCi8vIEBwYXJhbSBiCi8vIEByZXR1cm5zIFRoZSBzdW0gb2YgYSBhbmQgYgpnZXRTdW06Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoxMwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBnZXREaWZmZXJlbmNlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Ci8vCi8vIENhbGN1bGF0ZXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbnVtYmVycwovLwovLyBAcGFyYW0gYQovLyBAcGFyYW0gYgovLyBAcmV0dXJucyBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgYW5kIGIuCmdldERpZmZlcmVuY2U6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoyNAoJLy8gcmV0dXJuIGEgPj0gYiA/IGEgLSBiIDogYiAtIGE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk+PQoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgktCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCS0KCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIGRvTWF0aCh1aW50NjQsdWludDY0LHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9kb01hdGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIG9wZXJhdGlvbjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglleHRyYWN0IDIgMAoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBkb01hdGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb01hdGgoYTogdWludDY0LCBiOiB1aW50NjQsIG9wZXJhdGlvbjogc3RyaW5nKTogdWludDY0Ci8vCi8vIEEgbWV0aG9kIHRoYXQgdGFrZXMgdHdvIG51bWJlcnMgYW5kIGRvZXMgZWl0aGVyIGFkZGl0aW9uIG9yIHN1YnRyYWN0aW9uCi8vCi8vIEBwYXJhbSBhIFRoZSBmaXJzdCBudW1iZXIKLy8gQHBhcmFtIGIgVGhlIHNlY29uZCBudW1iZXIKLy8gQHBhcmFtIG9wZXJhdGlvbiBUaGUgb3BlcmF0aW9uIHRvIHBlcmZvcm0uIENhbiBiZSBlaXRoZXIgJ3N1bScgb3IgJ2RpZmZlcmVuY2UnCi8vCi8vIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbgpkb01hdGg6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czozOQoJLy8gb3BlcmF0aW9uID09PSAnc3VtJwoJZnJhbWVfZGlnIC0zIC8vIG9wZXJhdGlvbjogc3RyaW5nCglieXRlIDB4NzM3NTZkIC8vICJzdW0iCgk9PQoJYnogKmlmMF9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDAKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0U3VtKGEsIGIpCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGdldFN1bQoJZnJhbWVfYnVyeSAwIC8vIHJlc3VsdDogdWludDY0CgliICppZjBfZW5kCgoqaWYwX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDEKCS8vIG9wZXJhdGlvbiA9PT0gJ2RpZmZlcmVuY2UnCglmcmFtZV9kaWcgLTMgLy8gb3BlcmF0aW9uOiBzdHJpbmcKCWJ5dGUgMHg2NDY5NjY2NjY1NzI2NTZlNjM2NSAvLyAiZGlmZmVyZW5jZSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDIKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0RGlmZmVyZW5jZShhLCBiKQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBnZXREaWZmZXJlbmNlCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiB1aW50NjQKCWIgKmlmMF9lbmQKCippZjBfZWxzZToKCS8vIEludmFsaWQgb3BlcmF0aW9uCgllcnIKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDUKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgMCAvLyByZXN1bHQ6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZG9NYXRoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnZXRTdW0oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKLy8KLy8gQ2FsY3VsYXRlcyB0aGUgc3VtIG9mIHR3byBudW1iZXJzCi8vCi8vIEBwYXJhbSBhCi8vIEBwYXJhbSBiCi8vIEByZXR1cm5zIFRoZSBzdW0gb2YgYSBhbmQgYgpnZXRTdW06Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoxMwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBnZXREaWZmZXJlbmNlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Ci8vCi8vIENhbGN1bGF0ZXMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0d28gbnVtYmVycwovLwovLyBAcGFyYW0gYQovLyBAcGFyYW0gYgovLyBAcmV0dXJucyBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgYW5kIGIuCmdldERpZmZlcmVuY2U6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czoyNAoJLy8gcmV0dXJuIGEgPj0gYiA/IGEgLSBiIDogYiAtIGE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk+PQoJYnogKnRlcm5hcnkwX2ZhbHNlCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgktCgliICp0ZXJuYXJ5MF9lbmQKCip0ZXJuYXJ5MF9mYWxzZToKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCS0KCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIGRvTWF0aCh1aW50NjQsdWludDY0LHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9kb01hdGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIG9wZXJhdGlvbjogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglleHRyYWN0IDIgMAoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBkb01hdGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb01hdGgoYTogdWludDY0LCBiOiB1aW50NjQsIG9wZXJhdGlvbjogc3RyaW5nKTogdWludDY0Ci8vCi8vIEEgbWV0aG9kIHRoYXQgdGFrZXMgdHdvIG51bWJlcnMgYW5kIGRvZXMgZWl0aGVyIGFkZGl0aW9uIG9yIHN1YnRyYWN0aW9uCi8vCi8vIEBwYXJhbSBhIFRoZSBmaXJzdCBudW1iZXIKLy8gQHBhcmFtIGIgVGhlIHNlY29uZCBudW1iZXIKLy8gQHBhcmFtIG9wZXJhdGlvbiBUaGUgb3BlcmF0aW9uIHRvIHBlcmZvcm0uIENhbiBiZSBlaXRoZXIgJ3N1bScgb3IgJ2RpZmZlcmVuY2UnCi8vCi8vIEByZXR1cm5zIFRoZSByZXN1bHQgb2YgdGhlIG9wZXJhdGlvbgpkb01hdGg6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9jYWxjdWxhdG9yL2NhbGN1bGF0b3IuYWxnby50czozOQoJLy8gb3BlcmF0aW9uID09PSAnc3VtJwoJZnJhbWVfZGlnIC0zIC8vIG9wZXJhdGlvbjogc3RyaW5nCglieXRlIDB4NzM3NTZkIC8vICJzdW0iCgk9PQoJYnogKmlmMF9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDAKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0U3VtKGEsIGIpCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGdldFN1bQoJZnJhbWVfYnVyeSAwIC8vIHJlc3VsdDogdWludDY0CgliICppZjBfZW5kCgoqaWYwX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDEKCS8vIG9wZXJhdGlvbiA9PT0gJ2RpZmZlcmVuY2UnCglmcmFtZV9kaWcgLTMgLy8gb3BlcmF0aW9uOiBzdHJpbmcKCWJ5dGUgMHg2NDY5NjY2NjY1NzI2NTZlNjM2NSAvLyAiZGlmZmVyZW5jZSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDIKCS8vIHJlc3VsdCA9IHRoaXMuZ2V0RGlmZmVyZW5jZShhLCBiKQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBnZXREaWZmZXJlbmNlCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiB1aW50NjQKCWIgKmlmMF9lbmQKCippZjBfZWxzZToKCS8vIEludmFsaWQgb3BlcmF0aW9uCgllcnIKCippZjBfZW5kOgoJLy8gZXhhbXBsZXMvY2FsY3VsYXRvci9jYWxjdWxhdG9yLmFsZ28udHM6NDUKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgMCAvLyByZXN1bHQ6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZG9NYXRoKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZG9NYXRoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/itxns/artifacts/FactoryCaller.approval.teal b/examples/itxns/artifacts/FactoryCaller.approval.teal index ce4f0bf2a..87d42cde9 100644 --- a/examples/itxns/artifacts/FactoryCaller.approval.teal +++ b/examples/itxns/artifacts/FactoryCaller.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/itxns/artifacts/FactoryCaller.arc32.json b/examples/itxns/artifacts/FactoryCaller.arc32.json index 78c677604..abc2d2dd0 100644 --- a/examples/itxns/artifacts/FactoryCaller.arc32.json +++ b/examples/itxns/artifacts/FactoryCaller.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoqYWJpX3JvdXRlX21pbnRBbmRHZXRBc3NldDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoJY2FsbHN1YiBtaW50QW5kR2V0QXNzZXQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaW50QW5kR2V0QXNzZXQoKTogQXNzZXRJRAptaW50QW5kR2V0QXNzZXQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNQoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZUFwcGxpY2F0aW9uPih7CgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogTkZURmFjdG9yeS5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGFwcHJvdmFsUHJvZ3JhbTogTkZURmFjdG9yeS5hcHByb3ZhbFByb2dyYW0oKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBORlRGYWN0b3J5LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNwoJLy8gYXBwcm92YWxQcm9ncmFtOiBORlRGYWN0b3J5LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDaUFDQVFBeEdCU0JCZ3N4R1FpTkRBQnZBQUFBQUFBQUFBQUFBQUJoQUFBQUFBQUFBQUFBQUFDQUJCVWZmSFUyR2dKWEFnQTJHZ0ZYQWdDSUFBVVdVTEFpUTRvQ0FiR0JBN0lRaS8reUpvditzaVVpc2lJanNnR3p0RHlKTmhvQ1NSV0JJQkpFTmhvQkY0Z0FBaUpEaWdJQXNZRUVzaENML3JJVUlySVNpLyt5RVNPeUFiT0pJa09BQkxoRWV6WTJHZ0NPQWYveEFJQUUwZ0pNYzRBRXgrSmdyellhQUk0Qy8zMy9zUUE9CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjMwCgkvLyBmYWN0b3J5QXBwID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklECglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDAgLy8gZmFjdG9yeUFwcDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgYW1vdW50OiAyMDBfMDAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcywKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFtb3VudDogMjAwXzAwMAoJaW50IDIwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNAoJLy8gcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gZmFjdG9yeUFwcDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNwoJLy8gY3JlYXRlZEFzc2V0ID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZU5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjM4CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzkKCS8vIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXQoJYnl0ZSAweDAwMDY0ZDc5MjA0ZTQ2NTQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwNDRkNGU0NjU0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJZnJhbWVfYnVyeSAxIC8vIGNyZWF0ZWRBc3NldDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo0MgoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0QW1vdW50OiAwLAoJLy8gICAgICAgeGZlckFzc2V0OiBjcmVhdGVkQXNzZXQsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDMKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ0CgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ1CgkvLyB4ZmVyQXNzZXQ6IGNyZWF0ZWRBc3NldAoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDgKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBORlRGYWN0b3J5LnByb3RvdHlwZS50cmFuc2Zlck5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NTAKCS8vIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdCglmcmFtZV9kaWcgMSAvLyBjcmVhdGVkQXNzZXQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjUzCgkvLyByZXR1cm4gY3JlYXRlZEFzc2V0OwoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWludEFuZEdldEFzc2V0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoqYWJpX3JvdXRlX21pbnRBbmRHZXRBc3NldDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoJY2FsbHN1YiBtaW50QW5kR2V0QXNzZXQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaW50QW5kR2V0QXNzZXQoKTogQXNzZXRJRAptaW50QW5kR2V0QXNzZXQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNQoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZUFwcGxpY2F0aW9uPih7CgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogTkZURmFjdG9yeS5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGFwcHJvdmFsUHJvZ3JhbTogTkZURmFjdG9yeS5hcHByb3ZhbFByb2dyYW0oKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBORlRGYWN0b3J5LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNwoJLy8gYXBwcm92YWxQcm9ncmFtOiBORlRGYWN0b3J5LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDaUFDQVFBeEdCU0JCZ3N4R1FpTkRBQnZBQUFBQUFBQUFBQUFBQUJoQUFBQUFBQUFBQUFBQUFDQUJCVWZmSFUyR2dKWEFnQTJHZ0ZYQWdDSUFBVVdVTEFpUTRvQ0FiR0JBN0lRaS8reUpvditzaVVpc2lJanNnR3p0RHlKTmhvQ1NSV0JJQkpFTmhvQkY0Z0FBaUpEaWdJQXNZRUVzaENML3JJVUlySVNpLyt5RVNPeUFiT0pJa09BQkxoRWV6WTJHZ0NPQWYveEFJQUUwZ0pNYzRBRXgrSmdyellhQUk0Qy8zMy9zUUE9CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjMwCgkvLyBmYWN0b3J5QXBwID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklECglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDAgLy8gZmFjdG9yeUFwcDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgYW1vdW50OiAyMDBfMDAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcywKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFtb3VudDogMjAwXzAwMAoJaW50IDIwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNAoJLy8gcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gZmFjdG9yeUFwcDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNwoJLy8gY3JlYXRlZEFzc2V0ID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZU5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjM4CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzkKCS8vIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXQoJYnl0ZSAweDAwMDY0ZDc5MjA0ZTQ2NTQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwNDRkNGU0NjU0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJZnJhbWVfYnVyeSAxIC8vIGNyZWF0ZWRBc3NldDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo0MgoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0QW1vdW50OiAwLAoJLy8gICAgICAgeGZlckFzc2V0OiBjcmVhdGVkQXNzZXQsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDMKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ0CgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ1CgkvLyB4ZmVyQXNzZXQ6IGNyZWF0ZWRBc3NldAoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDgKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBORlRGYWN0b3J5LnByb3RvdHlwZS50cmFuc2Zlck5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NTAKCS8vIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdCglmcmFtZV9kaWcgMSAvLyBjcmVhdGVkQXNzZXQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjUzCgkvLyByZXR1cm4gY3JlYXRlZEFzc2V0OwoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWludEFuZEdldEFzc2V0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/itxns/artifacts/FactoryCaller.arc56_draft.json b/examples/itxns/artifacts/FactoryCaller.arc56_draft.json index c1623030e..62c8270bd 100644 --- a/examples/itxns/artifacts/FactoryCaller.arc56_draft.json +++ b/examples/itxns/artifacts/FactoryCaller.arc56_draft.json @@ -60,1077 +60,1080 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 23, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ] - }, - { - "teal": 13, - "source": 23, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 14, - "source": 23, - "pc": [ - 15 - ] - }, - { - "teal": 15, - "source": 23, - "pc": [ - 16 - ] - }, - { - "teal": 16, - "source": 23, - "pc": [ - 17 - ] - }, - { - "teal": 17, - "source": 23, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 18, - "source": 23, - "pc": [ - 20 - ] - }, - { - "teal": 19, - "source": 23, - "pc": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 23, - "source": 23, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 47 - ] - }, - { - "teal": 28, - "source": 24, - "pc": [ - 48, - 49, - 50, - 51, - 52, - 53 - ] - }, - { - "teal": 31, - "source": 24, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 32, - "source": 24, - "pc": [ - 57 - ] - }, - { - "teal": 33, - "source": 24, - "pc": [ - 58 - ] - }, - { - "teal": 34, - "source": 24, - "pc": [ - 59 - ] - }, - { - "teal": 35, - "source": 24, - "pc": [ - 60 - ] - }, - { - "teal": 36, - "source": 24, - "pc": [ - 61 - ] - }, - { - "teal": 40, - "source": 24, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 43, - "source": 24, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 44, - "source": 24, - "pc": [ - 67 - ] - }, - { - "teal": 51, - "source": 25, - "pc": [ - 68 - ] - }, - { - "teal": 52, - "source": 25, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 25, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 54, - "source": 25, - "pc": [ - 72 - ] - }, - { - "teal": 55, - "source": 25, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 59, - "source": 26, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 60, - "source": 26, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 64, - "source": 27, - "pc": [ - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192, - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223, - 224, - 225, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255 - ] - }, - { - "teal": 65, - "source": 27, - "pc": [ - 256, - 257 - ] - }, - { - "teal": 68, - "source": 25, - "pc": [ - 258 - ] - }, - { - "teal": 69, - "source": 25, - "pc": [ - 259, - 260 - ] - }, - { - "teal": 72, - "source": 25, - "pc": [ - 261 - ] - }, - { - "teal": 76, - "source": 30, - "pc": [ - 262, - 263 - ] - }, - { - "teal": 77, - "source": 30, - "pc": [ - 264, - 265 - ] - }, - { - "teal": 84, - "source": 32, - "pc": [ - 266 - ] - }, - { - "teal": 85, - "source": 32, - "pc": [ - 267 - ] - }, - { - "teal": 86, - "source": 32, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 90, - "source": 33, - "pc": [ - 270, - 271, - 272, - 273 - ] - }, - { - "teal": 91, - "source": 33, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 95, - "source": 34, - "pc": [ - 276, - 277 - ] - }, - { - "teal": 96, - "source": 34, - "pc": [ - 278, - 279 - ] - }, - { - "teal": 97, - "source": 34, - "pc": [ - 280 - ] - }, - { - "teal": 98, - "source": 34, - "pc": [ - 281, - 282 - ] - }, - { - "teal": 101, - "source": 32, - "pc": [ - 283 - ] - }, - { - "teal": 102, - "source": 32, - "pc": [ - 284, - 285 - ] - }, - { - "teal": 105, - "source": 32, - "pc": [ - 286 - ] - }, - { - "teal": 112, - "source": 37, - "pc": [ - 287 - ] - }, - { - "teal": 113, - "source": 37, - "pc": [ - 288 - ] - }, - { - "teal": 114, - "source": 37, - "pc": [ - 289, - 290 - ] - }, - { - "teal": 115, - "source": 37, - "pc": [ - 291, - 292, - 293, - 294, - 295, - 296 - ] - }, - { - "teal": 116, - "source": 37, - "pc": [ - 297, - 298 - ] - }, - { - "teal": 120, - "source": 38, - "pc": [ - 299, - 300 - ] - }, - { - "teal": 121, - "source": 38, - "pc": [ - 301, - 302 - ] - }, - { - "teal": 125, - "source": 39, - "pc": [ - 303, - 304, - 305, - 306, - 307, - 308, - 309, - 310, - 311, - 312 - ] - }, - { - "teal": 126, - "source": 39, - "pc": [ - 313, - 314 - ] - }, - { - "teal": 127, - "source": 39, - "pc": [ - 315, - 316, - 317, - 318, - 319, - 320, - 321, - 322 - ] - }, - { - "teal": 128, - "source": 39, - "pc": [ - 323, - 324 - ] - }, - { - "teal": 131, - "source": 37, - "pc": [ - 325 - ] - }, - { - "teal": 132, - "source": 37, - "pc": [ - 326, - 327 - ] - }, - { - "teal": 135, - "source": 37, - "pc": [ - 328 - ] - }, - { - "teal": 136, - "source": 37, - "pc": [ - 329, - 330 - ] - }, - { - "teal": 137, - "source": 37, - "pc": [ - 331 - ] - }, - { - "teal": 138, - "source": 37, - "pc": [ - 332 - ] - }, - { - "teal": 139, - "source": 37, - "pc": [ - 333, - 334 - ] - }, - { - "teal": 140, - "source": 37, - "pc": [ - 335, - 336, - 337 - ] - }, - { - "teal": 141, - "source": 37, - "pc": [ - 338 - ] - }, - { - "teal": 142, - "source": 37, - "pc": [ - 339, - 340 - ] - }, - { - "teal": 150, - "source": 42, - "pc": [ - 341 - ] - }, - { - "teal": 151, - "source": 42, - "pc": [ - 342, - 343 - ] - }, - { - "teal": 152, - "source": 42, - "pc": [ - 344, - 345 - ] - }, - { - "teal": 156, - "source": 43, - "pc": [ - 346, - 347 - ] - }, - { - "teal": 157, - "source": 43, - "pc": [ - 348, - 349 - ] - }, - { - "teal": 161, - "source": 44, - "pc": [ - 350 - ] - }, - { - "teal": 162, - "source": 44, - "pc": [ - 351, - 352 - ] - }, - { - "teal": 166, - "source": 45, - "pc": [ - 353, - 354 - ] - }, - { - "teal": 167, - "source": 45, - "pc": [ - 355, - 356 - ] - }, - { - "teal": 170, - "source": 42, - "pc": [ - 357 - ] - }, - { - "teal": 171, - "source": 42, - "pc": [ - 358, - 359 - ] - }, - { - "teal": 174, - "source": 42, - "pc": [ - 360 - ] - }, - { - "teal": 181, - "source": 48, - "pc": [ - 361 - ] - }, - { - "teal": 182, - "source": 48, - "pc": [ - 362 - ] - }, - { - "teal": 183, - "source": 48, - "pc": [ - 363, - 364 - ] - }, - { - "teal": 184, - "source": 48, - "pc": [ - 365, - 366, - 367, - 368, - 369, - 370 - ] - }, - { - "teal": 185, - "source": 48, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 189, - "source": 49, - "pc": [ - 373, - 374 - ] - }, - { - "teal": 190, - "source": 49, - "pc": [ - 375, - 376 - ] - }, - { - "teal": 194, - "source": 50, - "pc": [ - 377, - 378 - ] - }, - { - "teal": 195, - "source": 50, - "pc": [ - 379 - ] - }, - { - "teal": 196, - "source": 50, - "pc": [ - 380, - 381 - ] - }, - { - "teal": 197, - "source": 50, - "pc": [ - 382, - 383 - ] - }, - { - "teal": 198, - "source": 50, - "pc": [ - 384, - 385 - ] - }, - { - "teal": 201, - "source": 48, - "pc": [ - 386 - ] - }, - { - "teal": 202, - "source": 48, - "pc": [ - 387, - 388 - ] - }, - { - "teal": 205, - "source": 48, - "pc": [ - 389 - ] - }, - { - "teal": 209, - "source": 53, - "pc": [ - 390, - 391 - ] - }, - { - "teal": 212, - "source": 24, - "pc": [ - 392, - 393 - ] - }, - { - "teal": 215, - "source": 24, - "pc": [ - 394, - 395 - ] - }, - { - "teal": 216, - "source": 24, - "pc": [ - 396 - ] - }, - { - "teal": 219, - "source": 23, - "pc": [ - 397 - ] - }, - { - "teal": 220, - "source": 23, - "pc": [ - 398 - ] - }, - { - "teal": 223, - "source": 23, - "pc": [ - 399 - ] - }, - { - "teal": 224, - "source": 23, - "pc": [ - 400, - 401, - 402 - ] - }, - { - "teal": 225, - "source": 23, - "pc": [ - 403, - 404, - 405, - 406 - ] - }, - { - "teal": 228, - "source": 23, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 407 - ] - }, - { - "teal": 231, - "source": 23, - "pc": [ - 408, - 409, - 410, - 411, - 412, - 413 - ] - }, - { - "teal": 232, - "source": 23, - "pc": [ - 414, - 415, - 416 - ] - }, - { - "teal": 233, - "source": 23, - "pc": [ - 417, - 418, - 419, - 420 - ] - }, - { - "teal": 236, - "source": 23, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 421 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 23, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "teal": 13, + "source": 23, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 14, + "source": 23, + "pc": [ + 15 + ] + }, + { + "teal": 15, + "source": 23, + "pc": [ + 16 + ] + }, + { + "teal": 16, + "source": 23, + "pc": [ + 17 + ] + }, + { + "teal": 17, + "source": 23, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 18, + "source": 23, + "pc": [ + 20 + ] + }, + { + "teal": 19, + "source": 23, + "pc": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 23, + "source": 23, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 47 + ] + }, + { + "teal": 28, + "source": 24, + "pc": [ + 48, + 49, + 50, + 51, + 52, + 53 + ] + }, + { + "teal": 31, + "source": 24, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 32, + "source": 24, + "pc": [ + 57 + ] + }, + { + "teal": 33, + "source": 24, + "pc": [ + 58 + ] + }, + { + "teal": 34, + "source": 24, + "pc": [ + 59 + ] + }, + { + "teal": 35, + "source": 24, + "pc": [ + 60 + ] + }, + { + "teal": 36, + "source": 24, + "pc": [ + 61 + ] + }, + { + "teal": 40, + "source": 24, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 43, + "source": 24, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 44, + "source": 24, + "pc": [ + 67 + ] + }, + { + "teal": 51, + "source": 25, + "pc": [ + 68 + ] + }, + { + "teal": 52, + "source": 25, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 25, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 54, + "source": 25, + "pc": [ + 72 + ] + }, + { + "teal": 55, + "source": 25, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 59, + "source": 26, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 60, + "source": 26, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 64, + "source": 27, + "pc": [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + }, + { + "teal": 65, + "source": 27, + "pc": [ + 256, + 257 + ] + }, + { + "teal": 68, + "source": 25, + "pc": [ + 258 + ] + }, + { + "teal": 69, + "source": 25, + "pc": [ + 259, + 260 + ] + }, + { + "teal": 72, + "source": 25, + "pc": [ + 261 + ] + }, + { + "teal": 76, + "source": 30, + "pc": [ + 262, + 263 + ] + }, + { + "teal": 77, + "source": 30, + "pc": [ + 264, + 265 + ] + }, + { + "teal": 84, + "source": 32, + "pc": [ + 266 + ] + }, + { + "teal": 85, + "source": 32, + "pc": [ + 267 + ] + }, + { + "teal": 86, + "source": 32, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 90, + "source": 33, + "pc": [ + 270, + 271, + 272, + 273 + ] + }, + { + "teal": 91, + "source": 33, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 95, + "source": 34, + "pc": [ + 276, + 277 + ] + }, + { + "teal": 96, + "source": 34, + "pc": [ + 278, + 279 + ] + }, + { + "teal": 97, + "source": 34, + "pc": [ + 280 + ] + }, + { + "teal": 98, + "source": 34, + "pc": [ + 281, + 282 + ] + }, + { + "teal": 101, + "source": 32, + "pc": [ + 283 + ] + }, + { + "teal": 102, + "source": 32, + "pc": [ + 284, + 285 + ] + }, + { + "teal": 105, + "source": 32, + "pc": [ + 286 + ] + }, + { + "teal": 112, + "source": 37, + "pc": [ + 287 + ] + }, + { + "teal": 113, + "source": 37, + "pc": [ + 288 + ] + }, + { + "teal": 114, + "source": 37, + "pc": [ + 289, + 290 + ] + }, + { + "teal": 115, + "source": 37, + "pc": [ + 291, + 292, + 293, + 294, + 295, + 296 + ] + }, + { + "teal": 116, + "source": 37, + "pc": [ + 297, + 298 + ] + }, + { + "teal": 120, + "source": 38, + "pc": [ + 299, + 300 + ] + }, + { + "teal": 121, + "source": 38, + "pc": [ + 301, + 302 + ] + }, + { + "teal": 125, + "source": 39, + "pc": [ + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + }, + { + "teal": 126, + "source": 39, + "pc": [ + 313, + 314 + ] + }, + { + "teal": 127, + "source": 39, + "pc": [ + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + }, + { + "teal": 128, + "source": 39, + "pc": [ + 323, + 324 + ] + }, + { + "teal": 131, + "source": 37, + "pc": [ + 325 + ] + }, + { + "teal": 132, + "source": 37, + "pc": [ + 326, + 327 + ] + }, + { + "teal": 135, + "source": 37, + "pc": [ + 328 + ] + }, + { + "teal": 136, + "source": 37, + "pc": [ + 329, + 330 + ] + }, + { + "teal": 137, + "source": 37, + "pc": [ + 331 + ] + }, + { + "teal": 138, + "source": 37, + "pc": [ + 332 + ] + }, + { + "teal": 139, + "source": 37, + "pc": [ + 333, + 334 + ] + }, + { + "teal": 140, + "source": 37, + "pc": [ + 335, + 336, + 337 + ] + }, + { + "teal": 141, + "source": 37, + "pc": [ + 338 + ] + }, + { + "teal": 142, + "source": 37, + "pc": [ + 339, + 340 + ] + }, + { + "teal": 150, + "source": 42, + "pc": [ + 341 + ] + }, + { + "teal": 151, + "source": 42, + "pc": [ + 342, + 343 + ] + }, + { + "teal": 152, + "source": 42, + "pc": [ + 344, + 345 + ] + }, + { + "teal": 156, + "source": 43, + "pc": [ + 346, + 347 + ] + }, + { + "teal": 157, + "source": 43, + "pc": [ + 348, + 349 + ] + }, + { + "teal": 161, + "source": 44, + "pc": [ + 350 + ] + }, + { + "teal": 162, + "source": 44, + "pc": [ + 351, + 352 + ] + }, + { + "teal": 166, + "source": 45, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 167, + "source": 45, + "pc": [ + 355, + 356 + ] + }, + { + "teal": 170, + "source": 42, + "pc": [ + 357 + ] + }, + { + "teal": 171, + "source": 42, + "pc": [ + 358, + 359 + ] + }, + { + "teal": 174, + "source": 42, + "pc": [ + 360 + ] + }, + { + "teal": 181, + "source": 48, + "pc": [ + 361 + ] + }, + { + "teal": 182, + "source": 48, + "pc": [ + 362 + ] + }, + { + "teal": 183, + "source": 48, + "pc": [ + 363, + 364 + ] + }, + { + "teal": 184, + "source": 48, + "pc": [ + 365, + 366, + 367, + 368, + 369, + 370 + ] + }, + { + "teal": 185, + "source": 48, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 189, + "source": 49, + "pc": [ + 373, + 374 + ] + }, + { + "teal": 190, + "source": 49, + "pc": [ + 375, + 376 + ] + }, + { + "teal": 194, + "source": 50, + "pc": [ + 377, + 378 + ] + }, + { + "teal": 195, + "source": 50, + "pc": [ + 379 + ] + }, + { + "teal": 196, + "source": 50, + "pc": [ + 380, + 381 + ] + }, + { + "teal": 197, + "source": 50, + "pc": [ + 382, + 383 + ] + }, + { + "teal": 198, + "source": 50, + "pc": [ + 384, + 385 + ] + }, + { + "teal": 201, + "source": 48, + "pc": [ + 386 + ] + }, + { + "teal": 202, + "source": 48, + "pc": [ + 387, + 388 + ] + }, + { + "teal": 205, + "source": 48, + "pc": [ + 389 + ] + }, + { + "teal": 209, + "source": 53, + "pc": [ + 390, + 391 + ] + }, + { + "teal": 212, + "source": 24, + "pc": [ + 392, + 393 + ] + }, + { + "teal": 215, + "source": 24, + "pc": [ + 394, + 395 + ] + }, + { + "teal": 216, + "source": 24, + "pc": [ + 396 + ] + }, + { + "teal": 219, + "source": 23, + "pc": [ + 397 + ] + }, + { + "teal": 220, + "source": 23, + "pc": [ + 398 + ] + }, + { + "teal": 223, + "source": 23, + "pc": [ + 399 + ] + }, + { + "teal": 224, + "source": 23, + "pc": [ + 400, + 401, + 402 + ] + }, + { + "teal": 225, + "source": 23, + "pc": [ + 403, + 404, + 405, + 406 + ] + }, + { + "teal": 228, + "source": 23, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 407 + ] + }, + { + "teal": 231, + "source": 23, + "pc": [ + 408, + 409, + 410, + 411, + 412, + 413 + ] + }, + { + "teal": 232, + "source": 23, + "pc": [ + 414, + 415, + 416 + ] + }, + { + "teal": 233, + "source": 23, + "pc": [ + 417, + 418, + 419, + 420 + ] + }, + { + "teal": 236, + "source": 23, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 421 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoqYWJpX3JvdXRlX21pbnRBbmRHZXRBc3NldDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoJY2FsbHN1YiBtaW50QW5kR2V0QXNzZXQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaW50QW5kR2V0QXNzZXQoKTogQXNzZXRJRAptaW50QW5kR2V0QXNzZXQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNQoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZUFwcGxpY2F0aW9uPih7CgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogTkZURmFjdG9yeS5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGFwcHJvdmFsUHJvZ3JhbTogTkZURmFjdG9yeS5hcHByb3ZhbFByb2dyYW0oKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBORlRGYWN0b3J5LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNwoJLy8gYXBwcm92YWxQcm9ncmFtOiBORlRGYWN0b3J5LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDaUFDQVFBeEdCU0JCZ3N4R1FpTkRBQnZBQUFBQUFBQUFBQUFBQUJoQUFBQUFBQUFBQUFBQUFDQUJCVWZmSFUyR2dKWEFnQTJHZ0ZYQWdDSUFBVVdVTEFpUTRvQ0FiR0JBN0lRaS8reUpvditzaVVpc2lJanNnR3p0RHlKTmhvQ1NSV0JJQkpFTmhvQkY0Z0FBaUpEaWdJQXNZRUVzaENML3JJVUlySVNpLyt5RVNPeUFiT0pJa09BQkxoRWV6WTJHZ0NPQWYveEFJQUUwZ0pNYzRBRXgrSmdyellhQUk0Qy8zMy9zUUE9CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjMwCgkvLyBmYWN0b3J5QXBwID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklECglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDAgLy8gZmFjdG9yeUFwcDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgYW1vdW50OiAyMDBfMDAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcywKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFtb3VudDogMjAwXzAwMAoJaW50IDIwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNAoJLy8gcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gZmFjdG9yeUFwcDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNwoJLy8gY3JlYXRlZEFzc2V0ID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZU5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjM4CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzkKCS8vIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXQoJYnl0ZSAweDAwMDY0ZDc5MjA0ZTQ2NTQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwNDRkNGU0NjU0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJZnJhbWVfYnVyeSAxIC8vIGNyZWF0ZWRBc3NldDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo0MgoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0QW1vdW50OiAwLAoJLy8gICAgICAgeGZlckFzc2V0OiBjcmVhdGVkQXNzZXQsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDMKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ0CgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ1CgkvLyB4ZmVyQXNzZXQ6IGNyZWF0ZWRBc3NldAoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDgKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBORlRGYWN0b3J5LnByb3RvdHlwZS50cmFuc2Zlck5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NTAKCS8vIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdCglmcmFtZV9kaWcgMSAvLyBjcmVhdGVkQXNzZXQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjUzCgkvLyByZXR1cm4gY3JlYXRlZEFzc2V0OwoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWludEFuZEdldEFzc2V0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoqYWJpX3JvdXRlX21pbnRBbmRHZXRBc3NldDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NAoJY2FsbHN1YiBtaW50QW5kR2V0QXNzZXQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaW50QW5kR2V0QXNzZXQoKTogQXNzZXRJRAptaW50QW5kR2V0QXNzZXQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNQoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZUFwcGxpY2F0aW9uPih7CgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogTkZURmFjdG9yeS5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGFwcHJvdmFsUHJvZ3JhbTogTkZURmFjdG9yeS5hcHByb3ZhbFByb2dyYW0oKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBORlRGYWN0b3J5LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czoyNwoJLy8gYXBwcm92YWxQcm9ncmFtOiBORlRGYWN0b3J5LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDaUFDQVFBeEdCU0JCZ3N4R1FpTkRBQnZBQUFBQUFBQUFBQUFBQUJoQUFBQUFBQUFBQUFBQUFDQUJCVWZmSFUyR2dKWEFnQTJHZ0ZYQWdDSUFBVVdVTEFpUTRvQ0FiR0JBN0lRaS8reUpvditzaVVpc2lJanNnR3p0RHlKTmhvQ1NSV0JJQkpFTmhvQkY0Z0FBaUpEaWdJQXNZRUVzaENML3JJVUlySVNpLyt5RVNPeUFiT0pJa09BQkxoRWV6WTJHZ0NPQWYveEFJQUUwZ0pNYzRBRXgrSmdyellhQUk0Qy8zMy9zUUE9CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjMwCgkvLyBmYWN0b3J5QXBwID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklECglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDAgLy8gZmFjdG9yeUFwcDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgYW1vdW50OiAyMDBfMDAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcywKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFtb3VudDogMjAwXzAwMAoJaW50IDIwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNAoJLy8gcmVjZWl2ZXI6IGZhY3RvcnlBcHAuYWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gZmFjdG9yeUFwcDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czozNwoJLy8gY3JlYXRlZEFzc2V0ID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIE5GVEZhY3RvcnkucHJvdG90eXBlLmNyZWF0ZU5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjM4CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MzkKCS8vIG1ldGhvZEFyZ3M6IFsnTXkgTkZUJywgJ01ORlQnXQoJYnl0ZSAweDAwMDY0ZDc5MjA0ZTQ2NTQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwNDRkNGU0NjU0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJZnJhbWVfYnVyeSAxIC8vIGNyZWF0ZWRBc3NldDogdWludDY0CgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo0MgoJLy8gc2VuZEFzc2V0VHJhbnNmZXIoewoJLy8gICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0QW1vdW50OiAwLAoJLy8gICAgICAgeGZlckFzc2V0OiBjcmVhdGVkQXNzZXQsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDMKCS8vIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ0CgkvLyBhc3NldEFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ1CgkvLyB4ZmVyQXNzZXQ6IGNyZWF0ZWRBc3NldAoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NDgKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBORlRGYWN0b3J5LnByb3RvdHlwZS50cmFuc2Zlck5GVD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogZmFjdG9yeUFwcCwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBhcHBsaWNhdGlvbklEOiBmYWN0b3J5QXBwCglmcmFtZV9kaWcgMCAvLyBmYWN0b3J5QXBwOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NTAKCS8vIG1ldGhvZEFyZ3M6IFtjcmVhdGVkQXNzZXQsIHRoaXMuYXBwLmFkZHJlc3NdCglmcmFtZV9kaWcgMSAvLyBjcmVhdGVkQXNzZXQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjUzCgkvLyByZXR1cm4gY3JlYXRlZEFzc2V0OwoJZnJhbWVfZGlnIDEgLy8gY3JlYXRlZEFzc2V0OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaW50QW5kR2V0QXNzZXQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWludEFuZEdldEFzc2V0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/itxns/artifacts/NFTFactory.approval.teal b/examples/itxns/artifacts/NFTFactory.approval.teal index 3b2267669..97bb7ccc5 100644 --- a/examples/itxns/artifacts/NFTFactory.approval.teal +++ b/examples/itxns/artifacts/NFTFactory.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/itxns/artifacts/NFTFactory.arc32.json b/examples/itxns/artifacts/NFTFactory.arc32.json index 57ac89c61..ed29e493a 100644 --- a/examples/itxns/artifacts/NFTFactory.arc32.json +++ b/examples/itxns/artifacts/NFTFactory.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVORlQoc3RyaW5nLHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9jcmVhdGVORlQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHVuaXROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gbmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0CgljYWxsc3ViIGNyZWF0ZU5GVAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZU5GVChuYW1lOiBzdHJpbmcsIHVuaXROYW1lOiBzdHJpbmcpOiBBc3NldElECmNyZWF0ZU5GVDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NgoJLy8gcmV0dXJuIHNlbmRBc3NldENyZWF0aW9uKHsKCS8vICAgICAgIGNvbmZpZ0Fzc2V0TmFtZTogbmFtZSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6IHVuaXROYW1lLAoJLy8gICAgICAgY29uZmlnQXNzZXRUb3RhbDogMSwKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo3CgkvLyBjb25maWdBc3NldE5hbWU6IG5hbWUKCWZyYW1lX2RpZyAtMSAvLyBuYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXROYW1lCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo4CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiB1bml0TmFtZQoJZnJhbWVfZGlnIC0yIC8vIHVuaXROYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6OQoJLy8gY29uZmlnQXNzZXRUb3RhbDogMQoJaW50IDEKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRUb3RhbAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RyYW5zZmVyTkZUOgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciB0cmFuc2Zlck5GVCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0cmFuc2Zlck5GVAoJaW50IDEKCXJldHVybgoKLy8gdHJhbnNmZXJORlQoYXNzZXQ6IEFzc2V0SUQsIHJlY2VpdmVyOiBBZGRyZXNzKTogdm9pZAp0cmFuc2Zlck5GVDoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MTQKCS8vIHNlbmRBc3NldFRyYW5zZmVyKHsKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyLAoJLy8gICAgICAgYXNzZXRBbW91bnQ6IDEsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IGFzc2V0LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE1CgkvLyBhc3NldFJlY2VpdmVyOiByZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIHJlY2VpdmVyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE2CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE3CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVORlQgKmFiaV9yb3V0ZV90cmFuc2Zlck5GVAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVORlQoc3RyaW5nLHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9jcmVhdGVORlQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHVuaXROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gbmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0CgljYWxsc3ViIGNyZWF0ZU5GVAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZU5GVChuYW1lOiBzdHJpbmcsIHVuaXROYW1lOiBzdHJpbmcpOiBBc3NldElECmNyZWF0ZU5GVDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NgoJLy8gcmV0dXJuIHNlbmRBc3NldENyZWF0aW9uKHsKCS8vICAgICAgIGNvbmZpZ0Fzc2V0TmFtZTogbmFtZSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6IHVuaXROYW1lLAoJLy8gICAgICAgY29uZmlnQXNzZXRUb3RhbDogMSwKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo3CgkvLyBjb25maWdBc3NldE5hbWU6IG5hbWUKCWZyYW1lX2RpZyAtMSAvLyBuYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXROYW1lCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo4CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiB1bml0TmFtZQoJZnJhbWVfZGlnIC0yIC8vIHVuaXROYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6OQoJLy8gY29uZmlnQXNzZXRUb3RhbDogMQoJaW50IDEKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRUb3RhbAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RyYW5zZmVyTkZUOgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciB0cmFuc2Zlck5GVCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0cmFuc2Zlck5GVAoJaW50IDEKCXJldHVybgoKLy8gdHJhbnNmZXJORlQoYXNzZXQ6IEFzc2V0SUQsIHJlY2VpdmVyOiBBZGRyZXNzKTogdm9pZAp0cmFuc2Zlck5GVDoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MTQKCS8vIHNlbmRBc3NldFRyYW5zZmVyKHsKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyLAoJLy8gICAgICAgYXNzZXRBbW91bnQ6IDEsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IGFzc2V0LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE1CgkvLyBhc3NldFJlY2VpdmVyOiByZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIHJlY2VpdmVyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE2CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE3CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVORlQgKmFiaV9yb3V0ZV90cmFuc2Zlck5GVAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/itxns/artifacts/NFTFactory.arc56_draft.json b/examples/itxns/artifacts/NFTFactory.arc56_draft.json index ed3803adc..0be6087bc 100644 --- a/examples/itxns/artifacts/NFTFactory.arc56_draft.json +++ b/examples/itxns/artifacts/NFTFactory.arc56_draft.json @@ -91,613 +91,616 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 5, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 5, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 5, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 5, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 36, - "source": 5, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 39, - "source": 5, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 40, - "source": 5, - "pc": [ - 62 - ] - }, - { - "teal": 41, - "source": 5, - "pc": [ - 63 - ] - }, - { - "teal": 42, - "source": 5, - "pc": [ - 64 - ] - }, - { - "teal": 43, - "source": 5, - "pc": [ - 65 - ] - }, - { - "teal": 44, - "source": 5, - "pc": [ - 66 - ] - }, - { - "teal": 48, - "source": 5, - "pc": [ - 67, - 68, - 69 - ] - }, - { - "teal": 56, - "source": 6, - "pc": [ - 70 - ] - }, - { - "teal": 57, - "source": 6, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 58, - "source": 6, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 62, - "source": 7, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 63, - "source": 7, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 67, - "source": 8, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 68, - "source": 8, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 72, - "source": 9, - "pc": [ - 83 - ] - }, - { - "teal": 73, - "source": 9, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 76, - "source": 6, - "pc": [ - 86 - ] - }, - { - "teal": 77, - "source": 6, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 80, - "source": 6, - "pc": [ - 89 - ] - }, - { - "teal": 81, - "source": 6, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 82, - "source": 5, - "pc": [ - 92 - ] - }, - { - "teal": 87, - "source": 13, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 88, - "source": 13, - "pc": [ - 96 - ] - }, - { - "teal": 89, - "source": 13, - "pc": [ - 97 - ] - }, - { - "teal": 90, - "source": 13, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 91, - "source": 13, - "pc": [ - 100 - ] - }, - { - "teal": 94, - "source": 13, - "errorMessage": "argument 0 (receiver) for transferNFT must be a address", - "pc": [ - 101 - ] - }, - { - "teal": 97, - "source": 13, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 98, - "source": 13, - "pc": [ - 105 - ] - }, - { - "teal": 101, - "source": 13, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 102, - "source": 13, - "pc": [ - 109 - ] - }, - { - "teal": 103, - "source": 13, - "pc": [ - 110 - ] - }, - { - "teal": 107, - "source": 13, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 115, - "source": 14, - "pc": [ - 114 - ] - }, - { - "teal": 116, - "source": 14, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 117, - "source": 14, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 121, - "source": 15, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 122, - "source": 15, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 126, - "source": 16, - "pc": [ - 123 - ] - }, - { - "teal": 127, - "source": 16, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 131, - "source": 17, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 132, - "source": 17, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 135, - "source": 14, - "pc": [ - 130 - ] - }, - { - "teal": 136, - "source": 14, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 139, - "source": 14, - "pc": [ - 133 - ] - }, - { - "teal": 140, - "source": 13, - "pc": [ - 134 - ] - }, - { - "teal": 143, - "source": 4, - "pc": [ - 135 - ] - }, - { - "teal": 144, - "source": 4, - "pc": [ - 136 - ] - }, - { - "teal": 147, - "source": 4, - "pc": [ - 137, - 138, - 139, - 140, - 141, - 142 - ] - }, - { - "teal": 148, - "source": 4, - "pc": [ - 143, - 144, - 145 - ] - }, - { - "teal": 149, - "source": 4, - "pc": [ - 146, - 147, - 148, - 149 - ] - }, - { - "teal": 152, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 150 - ] - }, - { - "teal": 155, - "source": 4, - "pc": [ - 151, - 152, - 153, - 154, - 155, - 156 - ] - }, - { - "teal": 156, - "source": 4, - "pc": [ - 157, - 158, - 159, - 160, - 161, - 162 - ] - }, - { - "teal": 157, - "source": 4, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 158, - "source": 4, - "pc": [ - 166, - 167, - 168, - 169, - 170, - 171 - ] - }, - { - "teal": 161, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 172 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 5, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 5, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 5, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 5, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 36, + "source": 5, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 39, + "source": 5, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 40, + "source": 5, + "pc": [ + 62 + ] + }, + { + "teal": 41, + "source": 5, + "pc": [ + 63 + ] + }, + { + "teal": 42, + "source": 5, + "pc": [ + 64 + ] + }, + { + "teal": 43, + "source": 5, + "pc": [ + 65 + ] + }, + { + "teal": 44, + "source": 5, + "pc": [ + 66 + ] + }, + { + "teal": 48, + "source": 5, + "pc": [ + 67, + 68, + 69 + ] + }, + { + "teal": 56, + "source": 6, + "pc": [ + 70 + ] + }, + { + "teal": 57, + "source": 6, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 58, + "source": 6, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 62, + "source": 7, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 63, + "source": 7, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 67, + "source": 8, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 68, + "source": 8, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 72, + "source": 9, + "pc": [ + 83 + ] + }, + { + "teal": 73, + "source": 9, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 76, + "source": 6, + "pc": [ + 86 + ] + }, + { + "teal": 77, + "source": 6, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 80, + "source": 6, + "pc": [ + 89 + ] + }, + { + "teal": 81, + "source": 6, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 82, + "source": 5, + "pc": [ + 92 + ] + }, + { + "teal": 87, + "source": 13, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 88, + "source": 13, + "pc": [ + 96 + ] + }, + { + "teal": 89, + "source": 13, + "pc": [ + 97 + ] + }, + { + "teal": 90, + "source": 13, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 91, + "source": 13, + "pc": [ + 100 + ] + }, + { + "teal": 94, + "source": 13, + "errorMessage": "argument 0 (receiver) for transferNFT must be a address", + "pc": [ + 101 + ] + }, + { + "teal": 97, + "source": 13, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 98, + "source": 13, + "pc": [ + 105 + ] + }, + { + "teal": 101, + "source": 13, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 102, + "source": 13, + "pc": [ + 109 + ] + }, + { + "teal": 103, + "source": 13, + "pc": [ + 110 + ] + }, + { + "teal": 107, + "source": 13, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 115, + "source": 14, + "pc": [ + 114 + ] + }, + { + "teal": 116, + "source": 14, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 117, + "source": 14, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 121, + "source": 15, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 122, + "source": 15, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 126, + "source": 16, + "pc": [ + 123 + ] + }, + { + "teal": 127, + "source": 16, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 131, + "source": 17, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 132, + "source": 17, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 135, + "source": 14, + "pc": [ + 130 + ] + }, + { + "teal": 136, + "source": 14, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 139, + "source": 14, + "pc": [ + 133 + ] + }, + { + "teal": 140, + "source": 13, + "pc": [ + 134 + ] + }, + { + "teal": 143, + "source": 4, + "pc": [ + 135 + ] + }, + { + "teal": 144, + "source": 4, + "pc": [ + 136 + ] + }, + { + "teal": 147, + "source": 4, + "pc": [ + 137, + 138, + 139, + 140, + 141, + 142 + ] + }, + { + "teal": 148, + "source": 4, + "pc": [ + 143, + 144, + 145 + ] + }, + { + "teal": 149, + "source": 4, + "pc": [ + 146, + 147, + 148, + 149 + ] + }, + { + "teal": 152, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 150 + ] + }, + { + "teal": 155, + "source": 4, + "pc": [ + 151, + 152, + 153, + 154, + 155, + 156 + ] + }, + { + "teal": 156, + "source": 4, + "pc": [ + 157, + 158, + 159, + 160, + 161, + 162 + ] + }, + { + "teal": 157, + "source": 4, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 158, + "source": 4, + "pc": [ + 166, + 167, + 168, + 169, + 170, + 171 + ] + }, + { + "teal": 161, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 172 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVORlQoc3RyaW5nLHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9jcmVhdGVORlQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHVuaXROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gbmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0CgljYWxsc3ViIGNyZWF0ZU5GVAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZU5GVChuYW1lOiBzdHJpbmcsIHVuaXROYW1lOiBzdHJpbmcpOiBBc3NldElECmNyZWF0ZU5GVDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NgoJLy8gcmV0dXJuIHNlbmRBc3NldENyZWF0aW9uKHsKCS8vICAgICAgIGNvbmZpZ0Fzc2V0TmFtZTogbmFtZSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6IHVuaXROYW1lLAoJLy8gICAgICAgY29uZmlnQXNzZXRUb3RhbDogMSwKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo3CgkvLyBjb25maWdBc3NldE5hbWU6IG5hbWUKCWZyYW1lX2RpZyAtMSAvLyBuYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXROYW1lCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo4CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiB1bml0TmFtZQoJZnJhbWVfZGlnIC0yIC8vIHVuaXROYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6OQoJLy8gY29uZmlnQXNzZXRUb3RhbDogMQoJaW50IDEKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRUb3RhbAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RyYW5zZmVyTkZUOgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciB0cmFuc2Zlck5GVCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0cmFuc2Zlck5GVAoJaW50IDEKCXJldHVybgoKLy8gdHJhbnNmZXJORlQoYXNzZXQ6IEFzc2V0SUQsIHJlY2VpdmVyOiBBZGRyZXNzKTogdm9pZAp0cmFuc2Zlck5GVDoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MTQKCS8vIHNlbmRBc3NldFRyYW5zZmVyKHsKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyLAoJLy8gICAgICAgYXNzZXRBbW91bnQ6IDEsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IGFzc2V0LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE1CgkvLyBhc3NldFJlY2VpdmVyOiByZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIHJlY2VpdmVyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE2CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE3CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVORlQgKmFiaV9yb3V0ZV90cmFuc2Zlck5GVAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVORlQoc3RyaW5nLHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9jcmVhdGVORlQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHVuaXROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gbmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0CgljYWxsc3ViIGNyZWF0ZU5GVAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZU5GVChuYW1lOiBzdHJpbmcsIHVuaXROYW1lOiBzdHJpbmcpOiBBc3NldElECmNyZWF0ZU5GVDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6NgoJLy8gcmV0dXJuIHNlbmRBc3NldENyZWF0aW9uKHsKCS8vICAgICAgIGNvbmZpZ0Fzc2V0TmFtZTogbmFtZSwKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6IHVuaXROYW1lLAoJLy8gICAgICAgY29uZmlnQXNzZXRUb3RhbDogMSwKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo3CgkvLyBjb25maWdBc3NldE5hbWU6IG5hbWUKCWZyYW1lX2RpZyAtMSAvLyBuYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXROYW1lCgoJLy8gZXhhbXBsZXMvaXR4bnMvaXR4bnMuYWxnby50czo4CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiB1bml0TmFtZQoJZnJhbWVfZGlnIC0yIC8vIHVuaXROYW1lOiBzdHJpbmcKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6OQoJLy8gY29uZmlnQXNzZXRUb3RhbDogMQoJaW50IDEKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRUb3RhbAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RyYW5zZmVyTkZUOgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciB0cmFuc2Zlck5GVCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gYXNzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdHJhbnNmZXJORlQodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0cmFuc2Zlck5GVAoJaW50IDEKCXJldHVybgoKLy8gdHJhbnNmZXJORlQoYXNzZXQ6IEFzc2V0SUQsIHJlY2VpdmVyOiBBZGRyZXNzKTogdm9pZAp0cmFuc2Zlck5GVDoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL2l0eG5zL2l0eG5zLmFsZ28udHM6MTQKCS8vIHNlbmRBc3NldFRyYW5zZmVyKHsKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHJlY2VpdmVyLAoJLy8gICAgICAgYXNzZXRBbW91bnQ6IDEsCgkvLyAgICAgICB4ZmVyQXNzZXQ6IGFzc2V0LAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE1CgkvLyBhc3NldFJlY2VpdmVyOiByZWNlaXZlcgoJZnJhbWVfZGlnIC0yIC8vIHJlY2VpdmVyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFzc2V0UmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE2CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyBleGFtcGxlcy9pdHhucy9pdHhucy5hbGdvLnRzOjE3CgkvLyB4ZmVyQXNzZXQ6IGFzc2V0CglmcmFtZV9kaWcgLTEgLy8gYXNzZXQ6IEFzc2V0SUQKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY3JlYXRlTkZUKHN0cmluZyxzdHJpbmcpdWludDY0IgoJbWV0aG9kICJ0cmFuc2Zlck5GVCh1aW50NjQsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVORlQgKmFiaV9yb3V0ZV90cmFuc2Zlck5GVAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/lsig_with_app/artifacts/CreatorVerifier.approval.teal b/examples/lsig_with_app/artifacts/CreatorVerifier.approval.teal index 546cda1a0..da7183b68 100644 --- a/examples/lsig_with_app/artifacts/CreatorVerifier.approval.teal +++ b/examples/lsig_with_app/artifacts/CreatorVerifier.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/lsig_with_app/artifacts/CreatorVerifier.arc32.json b/examples/lsig_with_app/artifacts/CreatorVerifier.arc32.json index 1d2a50160..9b18710df 100644 --- a/examples/lsig_with_app/artifacts/CreatorVerifier.arc32.json +++ b/examples/lsig_with_app/artifacts/CreatorVerifier.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbGxvd09wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYWxsb3dPcHRJbnNGcm9tOgoJLy8gY3JlYXRvcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjcmVhdG9yKSBmb3IgYWxsb3dPcHRJbnNGcm9tIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFsbG93T3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWxsb3dPcHRJbnNGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhbGxvd09wdEluc0Zyb20oY3JlYXRvcjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQWxsb3cgYW55b25lIHRvIHVzZSB0aGUgbHNpZyB0byBvcHQgaW4gdGhlIHR4biBzZW5kZXIgaW50byBhbiBhc3NldCBjcmVhdGVkIGJ5IHRoZSBjcmVhdG9yCmFsbG93T3B0SW5zRnJvbToKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjQxCgkvLyB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbdGhpcy50eG4uc2VuZGVyLCBjcmVhdG9yXSkudmFsdWUgPSB0cnVlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfZGlzYWJsZU9wdEluc0Zyb206CgkvLyBjcmVhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNyZWF0b3IpIGZvciBkaXNhYmxlT3B0SW5zRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBkaXNhYmxlT3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgZGlzYWJsZU9wdEluc0Zyb20KCWludCAxCglyZXR1cm4KCi8vIGRpc2FibGVPcHRJbnNGcm9tKGNyZWF0b3I6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIERpc2FibGUgb3B0LWlucyBmb3IgQVNBcyBmcm9tIHRoZSBnaXZlbiBjcmVhdG9yCmRpc2FibGVPcHRJbnNGcm9tOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvbHNpZ193aXRoX2FwcC9sc2lnX3dpdGhfYXBwLmFsZ28udHM6NDYKCS8vIHRoaXMuYWxsb3dlZENyZWF0b3JzKFt0aGlzLnR4bi5zZW5kZXIsIGNyZWF0b3JdKS52YWx1ZSA9IGZhbHNlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMAoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gdmVyaWZ5Q3JlYXRvcihheGZlcil2b2lkCiphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcjoKCS8vIG9wdEluOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMCAob3B0SW4pIGZvciB2ZXJpZnlDcmVhdG9yIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q3JlYXRvcgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5Q3JlYXRvcihvcHRJbjogQXNzZXRUcmFuc2ZlclR4bik6IHZvaWQKdmVyaWZ5Q3JlYXRvcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjUyCgkvLyBhc3NlcnQodGhpcy5hbGxvd2VkQ3JlYXRvcnMoW29wdEluLnNlbmRlciwgb3B0SW4ueGZlckFzc2V0LmNyZWF0b3JdKS52YWx1ZSkKCWZyYW1lX2RpZyAtMSAvLyBvcHRJbjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gb3B0SW46IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldENyZWF0b3IKCXBvcAoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbb3B0SW4uc2VuZGVyLCBvcHRJbi54ZmVyQXNzZXQuY3JlYXRvcl0pLnZhbHVlCglhc3NlcnQKCWludCAwCglnZXRiaXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWxsb3dPcHRJbnNGcm9tKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FsbG93T3B0SW5zRnJvbSAqYWJpX3JvdXRlX2Rpc2FibGVPcHRJbnNGcm9tICphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbGxvd09wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYWxsb3dPcHRJbnNGcm9tOgoJLy8gY3JlYXRvcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjcmVhdG9yKSBmb3IgYWxsb3dPcHRJbnNGcm9tIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFsbG93T3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWxsb3dPcHRJbnNGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhbGxvd09wdEluc0Zyb20oY3JlYXRvcjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQWxsb3cgYW55b25lIHRvIHVzZSB0aGUgbHNpZyB0byBvcHQgaW4gdGhlIHR4biBzZW5kZXIgaW50byBhbiBhc3NldCBjcmVhdGVkIGJ5IHRoZSBjcmVhdG9yCmFsbG93T3B0SW5zRnJvbToKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjQxCgkvLyB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbdGhpcy50eG4uc2VuZGVyLCBjcmVhdG9yXSkudmFsdWUgPSB0cnVlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfZGlzYWJsZU9wdEluc0Zyb206CgkvLyBjcmVhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNyZWF0b3IpIGZvciBkaXNhYmxlT3B0SW5zRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBkaXNhYmxlT3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgZGlzYWJsZU9wdEluc0Zyb20KCWludCAxCglyZXR1cm4KCi8vIGRpc2FibGVPcHRJbnNGcm9tKGNyZWF0b3I6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIERpc2FibGUgb3B0LWlucyBmb3IgQVNBcyBmcm9tIHRoZSBnaXZlbiBjcmVhdG9yCmRpc2FibGVPcHRJbnNGcm9tOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvbHNpZ193aXRoX2FwcC9sc2lnX3dpdGhfYXBwLmFsZ28udHM6NDYKCS8vIHRoaXMuYWxsb3dlZENyZWF0b3JzKFt0aGlzLnR4bi5zZW5kZXIsIGNyZWF0b3JdKS52YWx1ZSA9IGZhbHNlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMAoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gdmVyaWZ5Q3JlYXRvcihheGZlcil2b2lkCiphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcjoKCS8vIG9wdEluOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMCAob3B0SW4pIGZvciB2ZXJpZnlDcmVhdG9yIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q3JlYXRvcgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5Q3JlYXRvcihvcHRJbjogQXNzZXRUcmFuc2ZlclR4bik6IHZvaWQKdmVyaWZ5Q3JlYXRvcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjUyCgkvLyBhc3NlcnQodGhpcy5hbGxvd2VkQ3JlYXRvcnMoW29wdEluLnNlbmRlciwgb3B0SW4ueGZlckFzc2V0LmNyZWF0b3JdKS52YWx1ZSkKCWZyYW1lX2RpZyAtMSAvLyBvcHRJbjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gb3B0SW46IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldENyZWF0b3IKCXBvcAoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbb3B0SW4uc2VuZGVyLCBvcHRJbi54ZmVyQXNzZXQuY3JlYXRvcl0pLnZhbHVlCglhc3NlcnQKCWludCAwCglnZXRiaXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWxsb3dPcHRJbnNGcm9tKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FsbG93T3B0SW5zRnJvbSAqYWJpX3JvdXRlX2Rpc2FibGVPcHRJbnNGcm9tICphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/lsig_with_app/artifacts/CreatorVerifier.arc56_draft.json b/examples/lsig_with_app/artifacts/CreatorVerifier.arc56_draft.json index 835fcf57d..e576e1652 100644 --- a/examples/lsig_with_app/artifacts/CreatorVerifier.arc56_draft.json +++ b/examples/lsig_with_app/artifacts/CreatorVerifier.arc56_draft.json @@ -108,720 +108,723 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 35, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9 - ] - }, - { - "teal": 13, - "source": 35, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 14, - "source": 35, - "pc": [ - 12 - ] - }, - { - "teal": 15, - "source": 35, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 16, - "source": 35, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 35, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 35, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 35, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 35, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 40, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 29, - "source": 40, - "pc": [ - 49 - ] - }, - { - "teal": 30, - "source": 40, - "pc": [ - 50 - ] - }, - { - "teal": 31, - "source": 40, - "pc": [ - 51 - ] - }, - { - "teal": 32, - "source": 40, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 40, - "errorMessage": "argument 0 (creator) for allowOptInsFrom must be a address", - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 40, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 39, - "source": 40, - "pc": [ - 57 - ] - }, - { - "teal": 40, - "source": 40, - "pc": [ - 58 - ] - }, - { - "teal": 46, - "source": 40, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 50, - "source": 41, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 51, - "source": 41, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 52, - "source": 41, - "pc": [ - 66 - ] - }, - { - "teal": 53, - "source": 41, - "pc": [ - 67 - ] - }, - { - "teal": 54, - "source": 41, - "pc": [ - 68 - ] - }, - { - "teal": 55, - "source": 41, - "pc": [ - 69 - ] - }, - { - "teal": 56, - "source": 41, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 57, - "source": 41, - "pc": [ - 72 - ] - }, - { - "teal": 58, - "source": 41, - "pc": [ - 73 - ] - }, - { - "teal": 59, - "source": 40, - "pc": [ - 74 - ] - }, - { - "teal": 64, - "source": 45, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 65, - "source": 45, - "pc": [ - 78 - ] - }, - { - "teal": 66, - "source": 45, - "pc": [ - 79 - ] - }, - { - "teal": 67, - "source": 45, - "pc": [ - 80 - ] - }, - { - "teal": 68, - "source": 45, - "pc": [ - 81 - ] - }, - { - "teal": 71, - "source": 45, - "errorMessage": "argument 0 (creator) for disableOptInsFrom must be a address", - "pc": [ - 82 - ] - }, - { - "teal": 74, - "source": 45, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 75, - "source": 45, - "pc": [ - 86 - ] - }, - { - "teal": 76, - "source": 45, - "pc": [ - 87 - ] - }, - { - "teal": 82, - "source": 45, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 86, - "source": 46, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 87, - "source": 46, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 88, - "source": 46, - "pc": [ - 95 - ] - }, - { - "teal": 89, - "source": 46, - "pc": [ - 96 - ] - }, - { - "teal": 90, - "source": 46, - "pc": [ - 97 - ] - }, - { - "teal": 91, - "source": 46, - "pc": [ - 98 - ] - }, - { - "teal": 92, - "source": 46, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 93, - "source": 46, - "pc": [ - 101 - ] - }, - { - "teal": 94, - "source": 46, - "pc": [ - 102 - ] - }, - { - "teal": 95, - "source": 45, - "pc": [ - 103 - ] - }, - { - "teal": 100, - "source": 50, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 101, - "source": 50, - "pc": [ - 106 - ] - }, - { - "teal": 102, - "source": 50, - "pc": [ - 107 - ] - }, - { - "teal": 103, - "source": 50, - "pc": [ - 108 - ] - }, - { - "teal": 104, - "source": 50, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 105, - "source": 50, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 106, - "source": 50, - "pc": [ - 113 - ] - }, - { - "teal": 109, - "source": 50, - "errorMessage": "argument 0 (optIn) for verifyCreator must be a axfer transaction", - "pc": [ - 114 - ] - }, - { - "teal": 112, - "source": 50, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 113, - "source": 50, - "pc": [ - 118 - ] - }, - { - "teal": 114, - "source": 50, - "pc": [ - 119 - ] - }, - { - "teal": 118, - "source": 50, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 122, - "source": 52, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 123, - "source": 52, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 124, - "source": 52, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 125, - "source": 52, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 126, - "source": 52, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 127, - "source": 52, - "pc": [ - 133 - ] - }, - { - "teal": 128, - "source": 52, - "pc": [ - 134 - ] - }, - { - "teal": 129, - "source": 52, - "pc": [ - 135 - ] - }, - { - "teal": 132, - "source": 52, - "errorMessage": "box value does not exist: this.allowedCreators([optIn.sender, optIn.xferAsset.creator]).value", - "pc": [ - 136 - ] - }, - { - "teal": 133, - "source": 52, - "pc": [ - 137 - ] - }, - { - "teal": 134, - "source": 52, - "pc": [ - 138 - ] - }, - { - "teal": 135, - "source": 52, - "pc": [ - 139 - ] - }, - { - "teal": 136, - "source": 50, - "pc": [ - 140 - ] - }, - { - "teal": 139, - "source": 35, - "pc": [ - 141 - ] - }, - { - "teal": 140, - "source": 35, - "pc": [ - 142 - ] - }, - { - "teal": 143, - "source": 35, - "pc": [ - 143, - 144, - 145, - 146, - 147, - 148 - ] - }, - { - "teal": 144, - "source": 35, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 145, - "source": 35, - "pc": [ - 152, - 153, - 154, - 155 - ] - }, - { - "teal": 148, - "source": 35, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 156 - ] - }, - { - "teal": 151, - "source": 35, - "pc": [ - 157, - 158, - 159, - 160, - 161, - 162 - ] - }, - { - "teal": 152, - "source": 35, - "pc": [ - 163, - 164, - 165, - 166, - 167, - 168 - ] - }, - { - "teal": 153, - "source": 35, - "pc": [ - 169, - 170, - 171, - 172, - 173, - 174 - ] - }, - { - "teal": 154, - "source": 35, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 155, - "source": 35, - "pc": [ - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185 - ] - }, - { - "teal": 158, - "source": 35, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 186 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 35, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "teal": 13, + "source": 35, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 14, + "source": 35, + "pc": [ + 12 + ] + }, + { + "teal": 15, + "source": 35, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 16, + "source": 35, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 35, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 35, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 35, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 35, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 40, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 29, + "source": 40, + "pc": [ + 49 + ] + }, + { + "teal": 30, + "source": 40, + "pc": [ + 50 + ] + }, + { + "teal": 31, + "source": 40, + "pc": [ + 51 + ] + }, + { + "teal": 32, + "source": 40, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 40, + "errorMessage": "argument 0 (creator) for allowOptInsFrom must be a address", + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 40, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 39, + "source": 40, + "pc": [ + 57 + ] + }, + { + "teal": 40, + "source": 40, + "pc": [ + 58 + ] + }, + { + "teal": 46, + "source": 40, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 50, + "source": 41, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 51, + "source": 41, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 52, + "source": 41, + "pc": [ + 66 + ] + }, + { + "teal": 53, + "source": 41, + "pc": [ + 67 + ] + }, + { + "teal": 54, + "source": 41, + "pc": [ + 68 + ] + }, + { + "teal": 55, + "source": 41, + "pc": [ + 69 + ] + }, + { + "teal": 56, + "source": 41, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 57, + "source": 41, + "pc": [ + 72 + ] + }, + { + "teal": 58, + "source": 41, + "pc": [ + 73 + ] + }, + { + "teal": 59, + "source": 40, + "pc": [ + 74 + ] + }, + { + "teal": 64, + "source": 45, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 65, + "source": 45, + "pc": [ + 78 + ] + }, + { + "teal": 66, + "source": 45, + "pc": [ + 79 + ] + }, + { + "teal": 67, + "source": 45, + "pc": [ + 80 + ] + }, + { + "teal": 68, + "source": 45, + "pc": [ + 81 + ] + }, + { + "teal": 71, + "source": 45, + "errorMessage": "argument 0 (creator) for disableOptInsFrom must be a address", + "pc": [ + 82 + ] + }, + { + "teal": 74, + "source": 45, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 75, + "source": 45, + "pc": [ + 86 + ] + }, + { + "teal": 76, + "source": 45, + "pc": [ + 87 + ] + }, + { + "teal": 82, + "source": 45, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 86, + "source": 46, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 87, + "source": 46, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 88, + "source": 46, + "pc": [ + 95 + ] + }, + { + "teal": 89, + "source": 46, + "pc": [ + 96 + ] + }, + { + "teal": 90, + "source": 46, + "pc": [ + 97 + ] + }, + { + "teal": 91, + "source": 46, + "pc": [ + 98 + ] + }, + { + "teal": 92, + "source": 46, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 93, + "source": 46, + "pc": [ + 101 + ] + }, + { + "teal": 94, + "source": 46, + "pc": [ + 102 + ] + }, + { + "teal": 95, + "source": 45, + "pc": [ + 103 + ] + }, + { + "teal": 100, + "source": 50, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 101, + "source": 50, + "pc": [ + 106 + ] + }, + { + "teal": 102, + "source": 50, + "pc": [ + 107 + ] + }, + { + "teal": 103, + "source": 50, + "pc": [ + 108 + ] + }, + { + "teal": 104, + "source": 50, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 105, + "source": 50, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 106, + "source": 50, + "pc": [ + 113 + ] + }, + { + "teal": 109, + "source": 50, + "errorMessage": "argument 0 (optIn) for verifyCreator must be a axfer transaction", + "pc": [ + 114 + ] + }, + { + "teal": 112, + "source": 50, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 113, + "source": 50, + "pc": [ + 118 + ] + }, + { + "teal": 114, + "source": 50, + "pc": [ + 119 + ] + }, + { + "teal": 118, + "source": 50, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 122, + "source": 52, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 123, + "source": 52, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 124, + "source": 52, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 125, + "source": 52, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 126, + "source": 52, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 127, + "source": 52, + "pc": [ + 133 + ] + }, + { + "teal": 128, + "source": 52, + "pc": [ + 134 + ] + }, + { + "teal": 129, + "source": 52, + "pc": [ + 135 + ] + }, + { + "teal": 132, + "source": 52, + "errorMessage": "box value does not exist: this.allowedCreators([optIn.sender, optIn.xferAsset.creator]).value", + "pc": [ + 136 + ] + }, + { + "teal": 133, + "source": 52, + "pc": [ + 137 + ] + }, + { + "teal": 134, + "source": 52, + "pc": [ + 138 + ] + }, + { + "teal": 135, + "source": 52, + "pc": [ + 139 + ] + }, + { + "teal": 136, + "source": 50, + "pc": [ + 140 + ] + }, + { + "teal": 139, + "source": 35, + "pc": [ + 141 + ] + }, + { + "teal": 140, + "source": 35, + "pc": [ + 142 + ] + }, + { + "teal": 143, + "source": 35, + "pc": [ + 143, + 144, + 145, + 146, + 147, + 148 + ] + }, + { + "teal": 144, + "source": 35, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 145, + "source": 35, + "pc": [ + 152, + 153, + 154, + 155 + ] + }, + { + "teal": 148, + "source": 35, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 156 + ] + }, + { + "teal": 151, + "source": 35, + "pc": [ + 157, + 158, + 159, + 160, + 161, + 162 + ] + }, + { + "teal": 152, + "source": 35, + "pc": [ + 163, + 164, + 165, + 166, + 167, + 168 + ] + }, + { + "teal": 153, + "source": 35, + "pc": [ + 169, + 170, + 171, + 172, + 173, + 174 + ] + }, + { + "teal": 154, + "source": 35, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 155, + "source": 35, + "pc": [ + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185 + ] + }, + { + "teal": 158, + "source": 35, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 186 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbGxvd09wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYWxsb3dPcHRJbnNGcm9tOgoJLy8gY3JlYXRvcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjcmVhdG9yKSBmb3IgYWxsb3dPcHRJbnNGcm9tIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFsbG93T3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWxsb3dPcHRJbnNGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhbGxvd09wdEluc0Zyb20oY3JlYXRvcjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQWxsb3cgYW55b25lIHRvIHVzZSB0aGUgbHNpZyB0byBvcHQgaW4gdGhlIHR4biBzZW5kZXIgaW50byBhbiBhc3NldCBjcmVhdGVkIGJ5IHRoZSBjcmVhdG9yCmFsbG93T3B0SW5zRnJvbToKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjQxCgkvLyB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbdGhpcy50eG4uc2VuZGVyLCBjcmVhdG9yXSkudmFsdWUgPSB0cnVlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfZGlzYWJsZU9wdEluc0Zyb206CgkvLyBjcmVhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNyZWF0b3IpIGZvciBkaXNhYmxlT3B0SW5zRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBkaXNhYmxlT3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgZGlzYWJsZU9wdEluc0Zyb20KCWludCAxCglyZXR1cm4KCi8vIGRpc2FibGVPcHRJbnNGcm9tKGNyZWF0b3I6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIERpc2FibGUgb3B0LWlucyBmb3IgQVNBcyBmcm9tIHRoZSBnaXZlbiBjcmVhdG9yCmRpc2FibGVPcHRJbnNGcm9tOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvbHNpZ193aXRoX2FwcC9sc2lnX3dpdGhfYXBwLmFsZ28udHM6NDYKCS8vIHRoaXMuYWxsb3dlZENyZWF0b3JzKFt0aGlzLnR4bi5zZW5kZXIsIGNyZWF0b3JdKS52YWx1ZSA9IGZhbHNlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMAoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gdmVyaWZ5Q3JlYXRvcihheGZlcil2b2lkCiphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcjoKCS8vIG9wdEluOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMCAob3B0SW4pIGZvciB2ZXJpZnlDcmVhdG9yIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q3JlYXRvcgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5Q3JlYXRvcihvcHRJbjogQXNzZXRUcmFuc2ZlclR4bik6IHZvaWQKdmVyaWZ5Q3JlYXRvcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjUyCgkvLyBhc3NlcnQodGhpcy5hbGxvd2VkQ3JlYXRvcnMoW29wdEluLnNlbmRlciwgb3B0SW4ueGZlckFzc2V0LmNyZWF0b3JdKS52YWx1ZSkKCWZyYW1lX2RpZyAtMSAvLyBvcHRJbjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gb3B0SW46IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldENyZWF0b3IKCXBvcAoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbb3B0SW4uc2VuZGVyLCBvcHRJbi54ZmVyQXNzZXQuY3JlYXRvcl0pLnZhbHVlCglhc3NlcnQKCWludCAwCglnZXRiaXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWxsb3dPcHRJbnNGcm9tKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FsbG93T3B0SW5zRnJvbSAqYWJpX3JvdXRlX2Rpc2FibGVPcHRJbnNGcm9tICphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbGxvd09wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYWxsb3dPcHRJbnNGcm9tOgoJLy8gY3JlYXRvcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjcmVhdG9yKSBmb3IgYWxsb3dPcHRJbnNGcm9tIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFsbG93T3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWxsb3dPcHRJbnNGcm9tCglpbnQgMQoJcmV0dXJuCgovLyBhbGxvd09wdEluc0Zyb20oY3JlYXRvcjogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQWxsb3cgYW55b25lIHRvIHVzZSB0aGUgbHNpZyB0byBvcHQgaW4gdGhlIHR4biBzZW5kZXIgaW50byBhbiBhc3NldCBjcmVhdGVkIGJ5IHRoZSBjcmVhdG9yCmFsbG93T3B0SW5zRnJvbToKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjQxCgkvLyB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbdGhpcy50eG4uc2VuZGVyLCBjcmVhdG9yXSkudmFsdWUgPSB0cnVlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfZGlzYWJsZU9wdEluc0Zyb206CgkvLyBjcmVhdG9yOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNyZWF0b3IpIGZvciBkaXNhYmxlT3B0SW5zRnJvbSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBkaXNhYmxlT3B0SW5zRnJvbShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgZGlzYWJsZU9wdEluc0Zyb20KCWludCAxCglyZXR1cm4KCi8vIGRpc2FibGVPcHRJbnNGcm9tKGNyZWF0b3I6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIERpc2FibGUgb3B0LWlucyBmb3IgQVNBcyBmcm9tIHRoZSBnaXZlbiBjcmVhdG9yCmRpc2FibGVPcHRJbnNGcm9tOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvbHNpZ193aXRoX2FwcC9sc2lnX3dpdGhfYXBwLmFsZ28udHM6NDYKCS8vIHRoaXMuYWxsb3dlZENyZWF0b3JzKFt0aGlzLnR4bi5zZW5kZXIsIGNyZWF0b3JdKS52YWx1ZSA9IGZhbHNlCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gY3JlYXRvcjogQWRkcmVzcwoJY29uY2F0CglpbnQgMAoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWJveF9wdXQKCXJldHN1YgoKLy8gdmVyaWZ5Q3JlYXRvcihheGZlcil2b2lkCiphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcjoKCS8vIG9wdEluOiBheGZlcgoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXhmZXIKCT09CgoJLy8gYXJndW1lbnQgMCAob3B0SW4pIGZvciB2ZXJpZnlDcmVhdG9yIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q3JlYXRvcgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5Q3JlYXRvcihvcHRJbjogQXNzZXRUcmFuc2ZlclR4bik6IHZvaWQKdmVyaWZ5Q3JlYXRvcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL2xzaWdfd2l0aF9hcHAvbHNpZ193aXRoX2FwcC5hbGdvLnRzOjUyCgkvLyBhc3NlcnQodGhpcy5hbGxvd2VkQ3JlYXRvcnMoW29wdEluLnNlbmRlciwgb3B0SW4ueGZlckFzc2V0LmNyZWF0b3JdKS52YWx1ZSkKCWZyYW1lX2RpZyAtMSAvLyBvcHRJbjogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gb3B0SW46IEFzc2V0VHJhbnNmZXJUeG4KCWd0eG5zIFhmZXJBc3NldAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldENyZWF0b3IKCXBvcAoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFsbG93ZWRDcmVhdG9ycyhbb3B0SW4uc2VuZGVyLCBvcHRJbi54ZmVyQXNzZXQuY3JlYXRvcl0pLnZhbHVlCglhc3NlcnQKCWludCAwCglnZXRiaXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWxsb3dPcHRJbnNGcm9tKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiZGlzYWJsZU9wdEluc0Zyb20oYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDcmVhdG9yKGF4ZmVyKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FsbG93T3B0SW5zRnJvbSAqYWJpX3JvdXRlX2Rpc2FibGVPcHRJbnNGcm9tICphYmlfcm91dGVfdmVyaWZ5Q3JlYXRvcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/lsig_with_app/artifacts/OptInLsig.lsig.teal b/examples/lsig_with_app/artifacts/OptInLsig.lsig.teal index 86ab57578..6fb7669c8 100644 --- a/examples/lsig_with_app/artifacts/OptInLsig.lsig.teal +++ b/examples/lsig_with_app/artifacts/OptInLsig.lsig.teal @@ -1,7 +1,7 @@ #pragma version 10 //#pragma mode logicsig -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript diff --git a/examples/merkle/artifacts/MerkleTree.approval.teal b/examples/merkle/artifacts/MerkleTree.approval.teal index 38d6c2bf9..bac435d10 100644 --- a/examples/merkle/artifacts/MerkleTree.approval.teal +++ b/examples/merkle/artifacts/MerkleTree.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/merkle/artifacts/MerkleTree.arc32.json b/examples/merkle/artifacts/MerkleTree.arc32.json index a6b23f1ce..fb34a07f7 100644 --- a/examples/merkle/artifacts/MerkleTree.arc32.json +++ b/examples/merkle/artifacts/MerkleTree.arc32.json @@ -63,7 +63,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gY2FsY0luaXRSb290KCk6IGJ5dGVzMzIKY2FsY0luaXRSb290OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxNwoJLy8gcmVzdWx0ID0gaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIKCWJ5dGUgMHhlM2IwYzQ0Mjk4ZmMxYzE0OWFmYmY0Yzg5OTZmYjkyNDI3YWU0MWU0NjQ5YjkzNGNhNDk1OTkxYjc4NTJiODU1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweAoJZHVwCgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8wX2VuZAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyMAoJLy8gcmVzdWx0ID0gc2hhMjU2KHJlc3VsdCArIHJlc3VsdCkKCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWNvbmNhdAoJc2hhMjU2CglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpID0gaSArIDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjIzCgkvLyByZXR1cm4gcmVzdWx0OwoJZnJhbWVfZGlnIDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gaGFzaENvbmNhdChsZWZ0OiBieXRlczMyLCByaWdodDogYnl0ZXMzMik6IGJ5dGVzMzIKaGFzaENvbmNhdDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyNwoJLy8gcmV0dXJuIHNoYTI1NihsZWZ0ICsgcmlnaHQpOwoJZnJhbWVfZGlnIC0xIC8vIGxlZnQ6IGJ5dGVzMzIKCWZyYW1lX2RpZyAtMiAvLyByaWdodDogYnl0ZXMzMgoJY29uY2F0CglzaGEyNTYKCXJldHN1YgoKLy8gaXNSaWdodFNpYmxpbmcoZWxlbTogQnJhbmNoKTogYm9vbGVhbgppc1JpZ2h0U2libGluZzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozMQoJLy8gcmV0dXJuIGdldGJ5dGUoZWxlbSwgMCkgPT09IFJJR0hUX1NJQkxJTkdfUFJFRklYOwoJZnJhbWVfZGlnIC0xIC8vIGVsZW06IEJyYW5jaAoJaW50IDAKCWdldGJ5dGUKCWludCAxNzAKCT09CglyZXRzdWIKCi8vIGNhbGNSb290KGxlYWY6IGJ5dGVzMzIsIHBhdGg6IFBhdGgpOiBieXRlczMyCmNhbGNSb290OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozNwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjM3CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8xX2VuZAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo0MAoJLy8gdGhpcy5pc1JpZ2h0U2libGluZyhlbGVtKQoJZnJhbWVfZGlnIC0yIC8vIHBhdGg6IFBhdGgKCWZyYW1lX2RpZyAxIC8vIHNhdmVkIGFjY2Vzc29yOiBhY2Nlc3Nvci8vMC8vZWxlbQoJaW50IDMzCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAzMwoJZXh0cmFjdDMKCWNhbGxzdWIgaXNSaWdodFNpYmxpbmcKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQxCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQocmVzdWx0LCBleHRyYWN0MyhlbGVtLCAxLCAzMikgYXMgYnl0ZXMzMikKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgMSAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2VsZW0KCWludCAzMwoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMzMKCWV4dHJhY3QzCglleHRyYWN0IDEgMzIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWR1cAoJZXh0cmFjdCAzMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQzCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQoZXh0cmFjdDMoZWxlbSwgMSwgMzIpIGFzIGJ5dGVzMzIsIHJlc3VsdCkKCWZyYW1lX2RpZyAtMSAvLyBsZWFmOiBieXRlczMyCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIDEgLy8gc2F2ZWQgYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCglpbnQgMzMKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDMzCglleHRyYWN0MwoJZXh0cmFjdCAxIDMyCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMzIgMAoJYnl0ZSAweAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoKKmlmMF9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6MzcKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzEKCipmb3JfMV9lbmQ6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NDcKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NTEKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFwcC5jcmVhdG9yIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5jcmVhdG9yIn0KCWFzc2VydAoJcmV0c3ViCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjSW5pdFJvb3QoKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJY2FsbHN1YiBjYWxjSW5pdFJvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeToKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciB2ZXJpZnkgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBkYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB2ZXJpZnkoYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdmVyaWZ5CglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnkoZGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnZlcmlmeToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1OQoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBhcHBlbmRMZWFmKGJ5dGVbXSxieXRlWzMzXVszXSl2b2lkCiphYmlfcm91dGVfYXBwZW5kTGVhZjoKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciBhcHBlbmRMZWFmIG11c3QgYmUgYSBieXRlWzMzXVszXQoJYXNzZXJ0CgoJLy8gZGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZAoJY2FsbHN1YiBhcHBlbmRMZWFmCglpbnQgMQoJcmV0dXJuCgovLyBhcHBlbmRMZWFmKGRhdGE6IGJ5dGVzLCBwYXRoOiBQYXRoKTogdm9pZAphcHBlbmRMZWFmOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjYzCgkvLyBhc3NlcnQoZGF0YSAhPT0gJycpCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCWJ5dGUgMHggLy8gIiIKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NjQKCS8vIGFzc2VydCh0aGlzLnJvb3QudmFsdWUgPT09IHRoaXMuY2FsY1Jvb3QoaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIsIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglieXRlIDB4ZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFlNDY0OWI5MzRjYTQ5NTk5MWI3ODUyYjg1NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgKCWR1cAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo2NgoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0xIC8vIGRhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjY4CgkvLyB0aGlzLnNpemUudmFsdWUgPSB0aGlzLnNpemUudmFsdWUgKyAxCglieXRlIDB4NzM2OTdhNjUgLy8gInNpemUiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVMZWFmOgoJLy8gcGF0aDogYnl0ZVszM11bM10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgOTkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF0aCkgZm9yIHVwZGF0ZUxlYWYgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBuZXdEYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gb2xkRGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdXBkYXRlTGVhZgoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlTGVhZihvbGREYXRhOiBieXRlcywgbmV3RGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnVwZGF0ZUxlYWY6Cglwcm90byAzIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NzIKCS8vIGFzc2VydChuZXdEYXRhICE9PSAnJykKCWZyYW1lX2RpZyAtMiAvLyBuZXdEYXRhOiBieXRlcwoJYnl0ZSAweCAvLyAiIgoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3MwoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYob2xkRGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMyAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gb2xkRGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYobmV3RGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTMgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0yIC8vIG5ld0RhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAiYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAidXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3ZlcmlmeSAqYWJpX3JvdXRlX2FwcGVuZExlYWYgKmFiaV9yb3V0ZV91cGRhdGVMZWFmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9EZWxldGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAiZGVsZXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2RlbGV0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgRGVsZXRlQXBwbGljYXRpb24KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gY2FsY0luaXRSb290KCk6IGJ5dGVzMzIKY2FsY0luaXRSb290OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxNwoJLy8gcmVzdWx0ID0gaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIKCWJ5dGUgMHhlM2IwYzQ0Mjk4ZmMxYzE0OWFmYmY0Yzg5OTZmYjkyNDI3YWU0MWU0NjQ5YjkzNGNhNDk1OTkxYjc4NTJiODU1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweAoJZHVwCgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8wX2VuZAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyMAoJLy8gcmVzdWx0ID0gc2hhMjU2KHJlc3VsdCArIHJlc3VsdCkKCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWNvbmNhdAoJc2hhMjU2CglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpID0gaSArIDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjIzCgkvLyByZXR1cm4gcmVzdWx0OwoJZnJhbWVfZGlnIDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gaGFzaENvbmNhdChsZWZ0OiBieXRlczMyLCByaWdodDogYnl0ZXMzMik6IGJ5dGVzMzIKaGFzaENvbmNhdDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyNwoJLy8gcmV0dXJuIHNoYTI1NihsZWZ0ICsgcmlnaHQpOwoJZnJhbWVfZGlnIC0xIC8vIGxlZnQ6IGJ5dGVzMzIKCWZyYW1lX2RpZyAtMiAvLyByaWdodDogYnl0ZXMzMgoJY29uY2F0CglzaGEyNTYKCXJldHN1YgoKLy8gaXNSaWdodFNpYmxpbmcoZWxlbTogQnJhbmNoKTogYm9vbGVhbgppc1JpZ2h0U2libGluZzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozMQoJLy8gcmV0dXJuIGdldGJ5dGUoZWxlbSwgMCkgPT09IFJJR0hUX1NJQkxJTkdfUFJFRklYOwoJZnJhbWVfZGlnIC0xIC8vIGVsZW06IEJyYW5jaAoJaW50IDAKCWdldGJ5dGUKCWludCAxNzAKCT09CglyZXRzdWIKCi8vIGNhbGNSb290KGxlYWY6IGJ5dGVzMzIsIHBhdGg6IFBhdGgpOiBieXRlczMyCmNhbGNSb290OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozNwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjM3CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8xX2VuZAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo0MAoJLy8gdGhpcy5pc1JpZ2h0U2libGluZyhlbGVtKQoJZnJhbWVfZGlnIC0yIC8vIHBhdGg6IFBhdGgKCWZyYW1lX2RpZyAxIC8vIHNhdmVkIGFjY2Vzc29yOiBhY2Nlc3Nvci8vMC8vZWxlbQoJaW50IDMzCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAzMwoJZXh0cmFjdDMKCWNhbGxzdWIgaXNSaWdodFNpYmxpbmcKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQxCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQocmVzdWx0LCBleHRyYWN0MyhlbGVtLCAxLCAzMikgYXMgYnl0ZXMzMikKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgMSAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2VsZW0KCWludCAzMwoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMzMKCWV4dHJhY3QzCglleHRyYWN0IDEgMzIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWR1cAoJZXh0cmFjdCAzMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQzCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQoZXh0cmFjdDMoZWxlbSwgMSwgMzIpIGFzIGJ5dGVzMzIsIHJlc3VsdCkKCWZyYW1lX2RpZyAtMSAvLyBsZWFmOiBieXRlczMyCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIDEgLy8gc2F2ZWQgYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCglpbnQgMzMKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDMzCglleHRyYWN0MwoJZXh0cmFjdCAxIDMyCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMzIgMAoJYnl0ZSAweAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoKKmlmMF9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6MzcKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzEKCipmb3JfMV9lbmQ6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NDcKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NTEKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFwcC5jcmVhdG9yIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5jcmVhdG9yIn0KCWFzc2VydAoJcmV0c3ViCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjSW5pdFJvb3QoKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJY2FsbHN1YiBjYWxjSW5pdFJvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeToKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciB2ZXJpZnkgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBkYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB2ZXJpZnkoYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdmVyaWZ5CglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnkoZGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnZlcmlmeToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1OQoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBhcHBlbmRMZWFmKGJ5dGVbXSxieXRlWzMzXVszXSl2b2lkCiphYmlfcm91dGVfYXBwZW5kTGVhZjoKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciBhcHBlbmRMZWFmIG11c3QgYmUgYSBieXRlWzMzXVszXQoJYXNzZXJ0CgoJLy8gZGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZAoJY2FsbHN1YiBhcHBlbmRMZWFmCglpbnQgMQoJcmV0dXJuCgovLyBhcHBlbmRMZWFmKGRhdGE6IGJ5dGVzLCBwYXRoOiBQYXRoKTogdm9pZAphcHBlbmRMZWFmOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjYzCgkvLyBhc3NlcnQoZGF0YSAhPT0gJycpCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCWJ5dGUgMHggLy8gIiIKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NjQKCS8vIGFzc2VydCh0aGlzLnJvb3QudmFsdWUgPT09IHRoaXMuY2FsY1Jvb3QoaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIsIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglieXRlIDB4ZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFlNDY0OWI5MzRjYTQ5NTk5MWI3ODUyYjg1NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgKCWR1cAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo2NgoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0xIC8vIGRhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjY4CgkvLyB0aGlzLnNpemUudmFsdWUgPSB0aGlzLnNpemUudmFsdWUgKyAxCglieXRlIDB4NzM2OTdhNjUgLy8gInNpemUiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVMZWFmOgoJLy8gcGF0aDogYnl0ZVszM11bM10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgOTkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF0aCkgZm9yIHVwZGF0ZUxlYWYgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBuZXdEYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gb2xkRGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdXBkYXRlTGVhZgoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlTGVhZihvbGREYXRhOiBieXRlcywgbmV3RGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnVwZGF0ZUxlYWY6Cglwcm90byAzIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NzIKCS8vIGFzc2VydChuZXdEYXRhICE9PSAnJykKCWZyYW1lX2RpZyAtMiAvLyBuZXdEYXRhOiBieXRlcwoJYnl0ZSAweCAvLyAiIgoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3MwoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYob2xkRGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMyAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gb2xkRGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYobmV3RGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTMgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0yIC8vIG5ld0RhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAiYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAidXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3ZlcmlmeSAqYWJpX3JvdXRlX2FwcGVuZExlYWYgKmFiaV9yb3V0ZV91cGRhdGVMZWFmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9EZWxldGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAiZGVsZXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2RlbGV0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgRGVsZXRlQXBwbGljYXRpb24KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/merkle/artifacts/MerkleTree.arc56_draft.json b/examples/merkle/artifacts/MerkleTree.arc56_draft.json index 4d2d5dc4a..b60a38507 100644 --- a/examples/merkle/artifacts/MerkleTree.arc56_draft.json +++ b/examples/merkle/artifacts/MerkleTree.arc56_draft.json @@ -141,2071 +141,2074 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 11, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 13, - "source": 11, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 14, - "source": 11, - "pc": [ - 116 - ] - }, - { - "teal": 15, - "source": 11, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 16, - "source": 11, - "pc": [ - 119 - ] - }, - { - "teal": 17, - "source": 11, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 18, - "source": 11, - "pc": [ - 122 - ] - }, - { - "teal": 19, - "source": 11, - "pc": [ - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148 - ] - }, - { - "teal": 23, - "source": 11, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 149 - ] - }, - { - "teal": 27, - "source": 16, - "pc": [ - 150, - 151, - 152 - ] - }, - { - "teal": 30, - "source": 16, - "pc": [ - 153 - ] - }, - { - "teal": 31, - "source": 16, - "pc": [ - 154 - ] - }, - { - "teal": 35, - "source": 17, - "pc": [ - 155 - ] - }, - { - "teal": 36, - "source": 17, - "pc": [ - 156 - ] - }, - { - "teal": 37, - "source": 17, - "pc": [ - 157 - ] - }, - { - "teal": 38, - "source": 17, - "pc": [ - 158 - ] - }, - { - "teal": 39, - "source": 17, - "pc": [ - 159 - ] - }, - { - "teal": 40, - "source": 17, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 41, - "source": 17, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 45, - "source": 19, - "pc": [ - 165 - ] - }, - { - "teal": 46, - "source": 19, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 51, - "source": 19, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 52, - "source": 19, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 53, - "source": 19, - "pc": [ - 172 - ] - }, - { - "teal": 54, - "source": 19, - "pc": [ - 173, - 174, - 175 - ] - }, - { - "teal": 58, - "source": 20, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 59, - "source": 20, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 60, - "source": 20, - "pc": [ - 180 - ] - }, - { - "teal": 61, - "source": 20, - "pc": [ - 181 - ] - }, - { - "teal": 62, - "source": 20, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 67, - "source": 19, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 68, - "source": 19, - "pc": [ - 186 - ] - }, - { - "teal": 69, - "source": 19, - "pc": [ - 187 - ] - }, - { - "teal": 70, - "source": 19, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 71, - "source": 19, - "pc": [ - 190, - 191, - 192 - ] - }, - { - "teal": 76, - "source": 23, - "pc": [ - 193, - 194 - ] - }, - { - "teal": 79, - "source": 16, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 82, - "source": 16, - "pc": [ - 197, - 198 - ] - }, - { - "teal": 83, - "source": 16, - "pc": [ - 199 - ] - }, - { - "teal": 87, - "source": 26, - "pc": [ - 200, - 201, - 202 - ] - }, - { - "teal": 91, - "source": 27, - "pc": [ - 203, - 204 - ] - }, - { - "teal": 92, - "source": 27, - "pc": [ - 205, - 206 - ] - }, - { - "teal": 93, - "source": 27, - "pc": [ - 207 - ] - }, - { - "teal": 94, - "source": 27, - "pc": [ - 208 - ] - }, - { - "teal": 95, - "source": 26, - "pc": [ - 209 - ] - }, - { - "teal": 99, - "source": 30, - "pc": [ - 210, - 211, - 212 - ] - }, - { - "teal": 103, - "source": 31, - "pc": [ - 213, - 214 - ] - }, - { - "teal": 104, - "source": 31, - "pc": [ - 215 - ] - }, - { - "teal": 105, - "source": 31, - "pc": [ - 216 - ] - }, - { - "teal": 106, - "source": 31, - "pc": [ - 217, - 218, - 219 - ] - }, - { - "teal": 107, - "source": 31, - "pc": [ - 220 - ] - }, - { - "teal": 108, - "source": 30, - "pc": [ - 221 - ] - }, - { - "teal": 112, - "source": 34, - "pc": [ - 222, - 223, - 224 - ] - }, - { - "teal": 115, - "source": 34, - "pc": [ - 225 - ] - }, - { - "teal": 116, - "source": 34, - "pc": [ - 226 - ] - }, - { - "teal": 120, - "source": 37, - "pc": [ - 227 - ] - }, - { - "teal": 121, - "source": 37, - "pc": [ - 228, - 229 - ] - }, - { - "teal": 126, - "source": 37, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 127, - "source": 37, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 128, - "source": 37, - "pc": [ - 234 - ] - }, - { - "teal": 129, - "source": 37, - "pc": [ - 235, - 236, - 237 - ] - }, - { - "teal": 130, - "source": 38, - "pc": [ - 238, - 239 - ] - }, - { - "teal": 131, - "source": 38, - "pc": [ - 240, - 241 - ] - }, - { - "teal": 136, - "source": 40, - "pc": [ - 242, - 243 - ] - }, - { - "teal": 137, - "source": 40, - "pc": [ - 244, - 245 - ] - }, - { - "teal": 138, - "source": 40, - "pc": [ - 246 - ] - }, - { - "teal": 139, - "source": 40, - "pc": [ - 247 - ] - }, - { - "teal": 140, - "source": 40, - "pc": [ - 248 - ] - }, - { - "teal": 141, - "source": 40, - "pc": [ - 249 - ] - }, - { - "teal": 142, - "source": 40, - "pc": [ - 250, - 251, - 252 - ] - }, - { - "teal": 143, - "source": 40, - "pc": [ - 253, - 254, - 255 - ] - }, - { - "teal": 148, - "source": 41, - "pc": [ - 256, - 257 - ] - }, - { - "teal": 149, - "source": 41, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 150, - "source": 41, - "pc": [ - 260 - ] - }, - { - "teal": 151, - "source": 41, - "pc": [ - 261 - ] - }, - { - "teal": 152, - "source": 41, - "pc": [ - 262 - ] - }, - { - "teal": 153, - "source": 41, - "pc": [ - 263 - ] - }, - { - "teal": 154, - "source": 41, - "pc": [ - 264, - 265, - 266 - ] - }, - { - "teal": 155, - "source": 41, - "pc": [ - 267 - ] - }, - { - "teal": 156, - "source": 41, - "pc": [ - 268 - ] - }, - { - "teal": 157, - "source": 41, - "pc": [ - 269 - ] - }, - { - "teal": 158, - "source": 41, - "pc": [ - 270, - 271, - 272 - ] - }, - { - "teal": 159, - "source": 41, - "pc": [ - 273 - ] - }, - { - "teal": 160, - "source": 41, - "pc": [ - 274 - ] - }, - { - "teal": 161, - "source": 41, - "pc": [ - 275 - ] - }, - { - "teal": 162, - "source": 41, - "pc": [ - 276, - 277, - 278 - ] - }, - { - "teal": 163, - "source": 41, - "pc": [ - 279, - 280 - ] - }, - { - "teal": 164, - "source": 41, - "pc": [ - 281, - 282, - 283 - ] - }, - { - "teal": 165, - "source": 41, - "pc": [ - 284, - 285 - ] - }, - { - "teal": 166, - "source": 40, - "pc": [ - 286, - 287, - 288 - ] - }, - { - "teal": 171, - "source": 43, - "pc": [ - 289, - 290 - ] - }, - { - "teal": 172, - "source": 43, - "pc": [ - 291, - 292 - ] - }, - { - "teal": 173, - "source": 43, - "pc": [ - 293, - 294 - ] - }, - { - "teal": 174, - "source": 43, - "pc": [ - 295 - ] - }, - { - "teal": 175, - "source": 43, - "pc": [ - 296 - ] - }, - { - "teal": 176, - "source": 43, - "pc": [ - 297 - ] - }, - { - "teal": 177, - "source": 43, - "pc": [ - 298 - ] - }, - { - "teal": 178, - "source": 43, - "pc": [ - 299, - 300, - 301 - ] - }, - { - "teal": 179, - "source": 43, - "pc": [ - 302 - ] - }, - { - "teal": 180, - "source": 43, - "pc": [ - 303 - ] - }, - { - "teal": 181, - "source": 43, - "pc": [ - 304 - ] - }, - { - "teal": 182, - "source": 43, - "pc": [ - 305, - 306, - 307 - ] - }, - { - "teal": 183, - "source": 43, - "pc": [ - 308 - ] - }, - { - "teal": 184, - "source": 43, - "pc": [ - 309 - ] - }, - { - "teal": 185, - "source": 43, - "pc": [ - 310 - ] - }, - { - "teal": 186, - "source": 43, - "pc": [ - 311, - 312, - 313 - ] - }, - { - "teal": 187, - "source": 43, - "pc": [ - 314, - 315, - 316 - ] - }, - { - "teal": 188, - "source": 43, - "pc": [ - 317, - 318 - ] - }, - { - "teal": 195, - "source": 37, - "pc": [ - 319, - 320 - ] - }, - { - "teal": 196, - "source": 37, - "pc": [ - 321 - ] - }, - { - "teal": 197, - "source": 37, - "pc": [ - 322 - ] - }, - { - "teal": 198, - "source": 37, - "pc": [ - 323, - 324 - ] - }, - { - "teal": 199, - "source": 37, - "pc": [ - 325, - 326, - 327 - ] - }, - { - "teal": 204, - "source": 47, - "pc": [ - 328, - 329 - ] - }, - { - "teal": 207, - "source": 34, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 210, - "source": 34, - "pc": [ - 332, - 333 - ] - }, - { - "teal": 211, - "source": 34, - "pc": [ - 334 - ] - }, - { - "teal": 216, - "source": 50, - "pc": [ - 335, - 336, - 337 - ] - }, - { - "teal": 217, - "source": 50, - "pc": [ - 338 - ] - }, - { - "teal": 218, - "source": 50, - "pc": [ - 339 - ] - }, - { - "teal": 222, - "source": 50, - "pc": [ - 340, - 341, - 342 - ] - }, - { - "teal": 227, - "source": 51, - "pc": [ - 343, - 344 - ] - }, - { - "teal": 228, - "source": 51, - "pc": [ - 345, - 346, - 347 - ] - }, - { - "teal": 229, - "source": 51, - "pc": [ - 348, - 349 - ] - }, - { - "teal": 230, - "source": 51, - "pc": [ - 350 - ] - }, - { - "teal": 231, - "source": 51, - "pc": [ - 351 - ] - }, - { - "teal": 234, - "source": 51, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.app.creator\"}", - "pc": [ - 352 - ] - }, - { - "teal": 235, - "source": 50, - "pc": [ - 353 - ] - }, - { - "teal": 240, - "source": 54, - "pc": [ - 354, - 355, - 356 - ] - }, - { - "teal": 241, - "source": 54, - "pc": [ - 357 - ] - }, - { - "teal": 242, - "source": 54, - "pc": [ - 358 - ] - }, - { - "teal": 246, - "source": 54, - "pc": [ - 359, - 360, - 361 - ] - }, - { - "teal": 250, - "source": 55, - "pc": [ - 362 - ] - }, - { - "teal": 251, - "source": 55, - "pc": [ - 363, - 364, - 365 - ] - }, - { - "teal": 252, - "source": 55, - "pc": [ - 366 - ] - }, - { - "teal": 253, - "source": 54, - "pc": [ - 367 - ] - }, - { - "teal": 258, - "source": 58, - "pc": [ - 368, - 369, - 370 - ] - }, - { - "teal": 259, - "source": 58, - "pc": [ - 371 - ] - }, - { - "teal": 260, - "source": 58, - "pc": [ - 372 - ] - }, - { - "teal": 261, - "source": 58, - "pc": [ - 373 - ] - }, - { - "teal": 262, - "source": 58, - "pc": [ - 374 - ] - }, - { - "teal": 265, - "source": 58, - "errorMessage": "argument 0 (path) for verify must be a byte[33][3]", - "pc": [ - 375 - ] - }, - { - "teal": 268, - "source": 58, - "pc": [ - 376, - 377, - 378 - ] - }, - { - "teal": 269, - "source": 58, - "pc": [ - 379, - 380, - 381 - ] - }, - { - "teal": 272, - "source": 58, - "pc": [ - 382, - 383, - 384 - ] - }, - { - "teal": 273, - "source": 58, - "pc": [ - 385 - ] - }, - { - "teal": 274, - "source": 58, - "pc": [ - 386 - ] - }, - { - "teal": 278, - "source": 58, - "pc": [ - 387, - 388, - 389 - ] - }, - { - "teal": 282, - "source": 59, - "pc": [ - 390 - ] - }, - { - "teal": 283, - "source": 59, - "pc": [ - 391 - ] - }, - { - "teal": 284, - "source": 59, - "pc": [ - 392, - 393 - ] - }, - { - "teal": 285, - "source": 59, - "pc": [ - 394, - 395 - ] - }, - { - "teal": 286, - "source": 59, - "pc": [ - 396 - ] - }, - { - "teal": 287, - "source": 59, - "pc": [ - 397, - 398, - 399 - ] - }, - { - "teal": 288, - "source": 59, - "pc": [ - 400 - ] - }, - { - "teal": 289, - "source": 59, - "pc": [ - 401 - ] - }, - { - "teal": 290, - "source": 58, - "pc": [ - 402 - ] - }, - { - "teal": 295, - "source": 62, - "pc": [ - 403, - 404, - 405 - ] - }, - { - "teal": 296, - "source": 62, - "pc": [ - 406 - ] - }, - { - "teal": 297, - "source": 62, - "pc": [ - 407 - ] - }, - { - "teal": 298, - "source": 62, - "pc": [ - 408 - ] - }, - { - "teal": 299, - "source": 62, - "pc": [ - 409 - ] - }, - { - "teal": 302, - "source": 62, - "errorMessage": "argument 0 (path) for appendLeaf must be a byte[33][3]", - "pc": [ - 410 - ] - }, - { - "teal": 305, - "source": 62, - "pc": [ - 411, - 412, - 413 - ] - }, - { - "teal": 306, - "source": 62, - "pc": [ - 414, - 415, - 416 - ] - }, - { - "teal": 309, - "source": 62, - "pc": [ - 417, - 418, - 419 - ] - }, - { - "teal": 310, - "source": 62, - "pc": [ - 420 - ] - }, - { - "teal": 311, - "source": 62, - "pc": [ - 421 - ] - }, - { - "teal": 315, - "source": 62, - "pc": [ - 422, - 423, - 424 - ] - }, - { - "teal": 319, - "source": 63, - "pc": [ - 425, - 426 - ] - }, - { - "teal": 320, - "source": 63, - "pc": [ - 427 - ] - }, - { - "teal": 321, - "source": 63, - "pc": [ - 428 - ] - }, - { - "teal": 322, - "source": 63, - "pc": [ - 429 - ] - }, - { - "teal": 326, - "source": 64, - "pc": [ - 430 - ] - }, - { - "teal": 327, - "source": 64, - "pc": [ - 431 - ] - }, - { - "teal": 328, - "source": 64, - "pc": [ - 432, - 433 - ] - }, - { - "teal": 329, - "source": 64, - "pc": [ - 434 - ] - }, - { - "teal": 330, - "source": 64, - "pc": [ - 435 - ] - }, - { - "teal": 331, - "source": 64, - "pc": [ - 436 - ] - }, - { - "teal": 332, - "source": 64, - "pc": [ - 437 - ] - }, - { - "teal": 333, - "source": 64, - "pc": [ - 438 - ] - }, - { - "teal": 334, - "source": 64, - "pc": [ - 439, - 440, - 441 - ] - }, - { - "teal": 335, - "source": 64, - "pc": [ - 442, - 443, - 444 - ] - }, - { - "teal": 336, - "source": 64, - "pc": [ - 445 - ] - }, - { - "teal": 337, - "source": 64, - "pc": [ - 446 - ] - }, - { - "teal": 341, - "source": 66, - "pc": [ - 447 - ] - }, - { - "teal": 342, - "source": 66, - "pc": [ - 448, - 449 - ] - }, - { - "teal": 343, - "source": 66, - "pc": [ - 450, - 451 - ] - }, - { - "teal": 344, - "source": 66, - "pc": [ - 452 - ] - }, - { - "teal": 345, - "source": 66, - "pc": [ - 453, - 454, - 455 - ] - }, - { - "teal": 346, - "source": 66, - "pc": [ - 456 - ] - }, - { - "teal": 350, - "source": 68, - "pc": [ - 457, - 458, - 459, - 460, - 461, - 462 - ] - }, - { - "teal": 351, - "source": 68, - "pc": [ - 463 - ] - }, - { - "teal": 352, - "source": 68, - "pc": [ - 464 - ] - }, - { - "teal": 353, - "source": 68, - "pc": [ - 465 - ] - }, - { - "teal": 354, - "source": 68, - "pc": [ - 466 - ] - }, - { - "teal": 355, - "source": 68, - "pc": [ - 467 - ] - }, - { - "teal": 356, - "source": 62, - "pc": [ - 468 - ] - }, - { - "teal": 361, - "source": 71, - "pc": [ - 469, - 470, - 471 - ] - }, - { - "teal": 362, - "source": 71, - "pc": [ - 472 - ] - }, - { - "teal": 363, - "source": 71, - "pc": [ - 473 - ] - }, - { - "teal": 364, - "source": 71, - "pc": [ - 474 - ] - }, - { - "teal": 365, - "source": 71, - "pc": [ - 475 - ] - }, - { - "teal": 368, - "source": 71, - "errorMessage": "argument 0 (path) for updateLeaf must be a byte[33][3]", - "pc": [ - 476 - ] - }, - { - "teal": 371, - "source": 71, - "pc": [ - 477, - 478, - 479 - ] - }, - { - "teal": 372, - "source": 71, - "pc": [ - 480, - 481, - 482 - ] - }, - { - "teal": 375, - "source": 71, - "pc": [ - 483, - 484, - 485 - ] - }, - { - "teal": 376, - "source": 71, - "pc": [ - 486, - 487, - 488 - ] - }, - { - "teal": 379, - "source": 71, - "pc": [ - 489, - 490, - 491 - ] - }, - { - "teal": 380, - "source": 71, - "pc": [ - 492 - ] - }, - { - "teal": 381, - "source": 71, - "pc": [ - 493 - ] - }, - { - "teal": 385, - "source": 71, - "pc": [ - 494, - 495, - 496 - ] - }, - { - "teal": 389, - "source": 72, - "pc": [ - 497, - 498 - ] - }, - { - "teal": 390, - "source": 72, - "pc": [ - 499 - ] - }, - { - "teal": 391, - "source": 72, - "pc": [ - 500 - ] - }, - { - "teal": 392, - "source": 72, - "pc": [ - 501 - ] - }, - { - "teal": 396, - "source": 73, - "pc": [ - 502 - ] - }, - { - "teal": 397, - "source": 73, - "pc": [ - 503 - ] - }, - { - "teal": 398, - "source": 73, - "pc": [ - 504, - 505 - ] - }, - { - "teal": 399, - "source": 73, - "pc": [ - 506, - 507 - ] - }, - { - "teal": 400, - "source": 73, - "pc": [ - 508 - ] - }, - { - "teal": 401, - "source": 73, - "pc": [ - 509, - 510, - 511 - ] - }, - { - "teal": 402, - "source": 73, - "pc": [ - 512 - ] - }, - { - "teal": 403, - "source": 73, - "pc": [ - 513 - ] - }, - { - "teal": 407, - "source": 75, - "pc": [ - 514 - ] - }, - { - "teal": 408, - "source": 75, - "pc": [ - 515, - 516 - ] - }, - { - "teal": 409, - "source": 75, - "pc": [ - 517, - 518 - ] - }, - { - "teal": 410, - "source": 75, - "pc": [ - 519 - ] - }, - { - "teal": 411, - "source": 75, - "pc": [ - 520, - 521, - 522 - ] - }, - { - "teal": 412, - "source": 75, - "pc": [ - 523 - ] - }, - { - "teal": 413, - "source": 71, - "pc": [ - 524 - ] - }, - { - "teal": 416, - "source": 11, - "pc": [ - 525, - 526, - 527, - 528, - 529, - 530 - ] - }, - { - "teal": 417, - "source": 11, - "pc": [ - 531, - 532, - 533 - ] - }, - { - "teal": 418, - "source": 11, - "pc": [ - 534, - 535, - 536, - 537 - ] - }, - { - "teal": 421, - "source": 11, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 538 - ] - }, - { - "teal": 424, - "source": 11, - "pc": [ - 539, - 540, - 541, - 542, - 543, - 544 - ] - }, - { - "teal": 425, - "source": 11, - "pc": [ - 545, - 546, - 547, - 548, - 549, - 550 - ] - }, - { - "teal": 426, - "source": 11, - "pc": [ - 551, - 552, - 553, - 554, - 555, - 556 - ] - }, - { - "teal": 427, - "source": 11, - "pc": [ - 557, - 558, - 559 - ] - }, - { - "teal": 428, - "source": 11, - "pc": [ - 560, - 561, - 562, - 563, - 564, - 565, - 566, - 567 - ] - }, - { - "teal": 431, - "source": 11, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 568 - ] - }, - { - "teal": 434, - "source": 11, - "pc": [ - 569, - 570, - 571, - 572, - 573, - 574 - ] - }, - { - "teal": 435, - "source": 11, - "pc": [ - 575, - 576, - 577 - ] - }, - { - "teal": 436, - "source": 11, - "pc": [ - 578, - 579, - 580, - 581 - ] - }, - { - "teal": 439, - "source": 11, - "errorMessage": "this contract does not implement the given ABI method for call DeleteApplication", - "pc": [ - 582 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 11, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 13, + "source": 11, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 14, + "source": 11, + "pc": [ + 116 + ] + }, + { + "teal": 15, + "source": 11, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 16, + "source": 11, + "pc": [ + 119 + ] + }, + { + "teal": 17, + "source": 11, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 18, + "source": 11, + "pc": [ + 122 + ] + }, + { + "teal": 19, + "source": 11, + "pc": [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148 + ] + }, + { + "teal": 23, + "source": 11, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 149 + ] + }, + { + "teal": 27, + "source": 16, + "pc": [ + 150, + 151, + 152 + ] + }, + { + "teal": 30, + "source": 16, + "pc": [ + 153 + ] + }, + { + "teal": 31, + "source": 16, + "pc": [ + 154 + ] + }, + { + "teal": 35, + "source": 17, + "pc": [ + 155 + ] + }, + { + "teal": 36, + "source": 17, + "pc": [ + 156 + ] + }, + { + "teal": 37, + "source": 17, + "pc": [ + 157 + ] + }, + { + "teal": 38, + "source": 17, + "pc": [ + 158 + ] + }, + { + "teal": 39, + "source": 17, + "pc": [ + 159 + ] + }, + { + "teal": 40, + "source": 17, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 41, + "source": 17, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 45, + "source": 19, + "pc": [ + 165 + ] + }, + { + "teal": 46, + "source": 19, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 51, + "source": 19, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 52, + "source": 19, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 53, + "source": 19, + "pc": [ + 172 + ] + }, + { + "teal": 54, + "source": 19, + "pc": [ + 173, + 174, + 175 + ] + }, + { + "teal": 58, + "source": 20, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 59, + "source": 20, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 60, + "source": 20, + "pc": [ + 180 + ] + }, + { + "teal": 61, + "source": 20, + "pc": [ + 181 + ] + }, + { + "teal": 62, + "source": 20, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 67, + "source": 19, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 68, + "source": 19, + "pc": [ + 186 + ] + }, + { + "teal": 69, + "source": 19, + "pc": [ + 187 + ] + }, + { + "teal": 70, + "source": 19, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 71, + "source": 19, + "pc": [ + 190, + 191, + 192 + ] + }, + { + "teal": 76, + "source": 23, + "pc": [ + 193, + 194 + ] + }, + { + "teal": 79, + "source": 16, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 82, + "source": 16, + "pc": [ + 197, + 198 + ] + }, + { + "teal": 83, + "source": 16, + "pc": [ + 199 + ] + }, + { + "teal": 87, + "source": 26, + "pc": [ + 200, + 201, + 202 + ] + }, + { + "teal": 91, + "source": 27, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 92, + "source": 27, + "pc": [ + 205, + 206 + ] + }, + { + "teal": 93, + "source": 27, + "pc": [ + 207 + ] + }, + { + "teal": 94, + "source": 27, + "pc": [ + 208 + ] + }, + { + "teal": 95, + "source": 26, + "pc": [ + 209 + ] + }, + { + "teal": 99, + "source": 30, + "pc": [ + 210, + 211, + 212 + ] + }, + { + "teal": 103, + "source": 31, + "pc": [ + 213, + 214 + ] + }, + { + "teal": 104, + "source": 31, + "pc": [ + 215 + ] + }, + { + "teal": 105, + "source": 31, + "pc": [ + 216 + ] + }, + { + "teal": 106, + "source": 31, + "pc": [ + 217, + 218, + 219 + ] + }, + { + "teal": 107, + "source": 31, + "pc": [ + 220 + ] + }, + { + "teal": 108, + "source": 30, + "pc": [ + 221 + ] + }, + { + "teal": 112, + "source": 34, + "pc": [ + 222, + 223, + 224 + ] + }, + { + "teal": 115, + "source": 34, + "pc": [ + 225 + ] + }, + { + "teal": 116, + "source": 34, + "pc": [ + 226 + ] + }, + { + "teal": 120, + "source": 37, + "pc": [ + 227 + ] + }, + { + "teal": 121, + "source": 37, + "pc": [ + 228, + 229 + ] + }, + { + "teal": 126, + "source": 37, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 127, + "source": 37, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 128, + "source": 37, + "pc": [ + 234 + ] + }, + { + "teal": 129, + "source": 37, + "pc": [ + 235, + 236, + 237 + ] + }, + { + "teal": 130, + "source": 38, + "pc": [ + 238, + 239 + ] + }, + { + "teal": 131, + "source": 38, + "pc": [ + 240, + 241 + ] + }, + { + "teal": 136, + "source": 40, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 137, + "source": 40, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 138, + "source": 40, + "pc": [ + 246 + ] + }, + { + "teal": 139, + "source": 40, + "pc": [ + 247 + ] + }, + { + "teal": 140, + "source": 40, + "pc": [ + 248 + ] + }, + { + "teal": 141, + "source": 40, + "pc": [ + 249 + ] + }, + { + "teal": 142, + "source": 40, + "pc": [ + 250, + 251, + 252 + ] + }, + { + "teal": 143, + "source": 40, + "pc": [ + 253, + 254, + 255 + ] + }, + { + "teal": 148, + "source": 41, + "pc": [ + 256, + 257 + ] + }, + { + "teal": 149, + "source": 41, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 150, + "source": 41, + "pc": [ + 260 + ] + }, + { + "teal": 151, + "source": 41, + "pc": [ + 261 + ] + }, + { + "teal": 152, + "source": 41, + "pc": [ + 262 + ] + }, + { + "teal": 153, + "source": 41, + "pc": [ + 263 + ] + }, + { + "teal": 154, + "source": 41, + "pc": [ + 264, + 265, + 266 + ] + }, + { + "teal": 155, + "source": 41, + "pc": [ + 267 + ] + }, + { + "teal": 156, + "source": 41, + "pc": [ + 268 + ] + }, + { + "teal": 157, + "source": 41, + "pc": [ + 269 + ] + }, + { + "teal": 158, + "source": 41, + "pc": [ + 270, + 271, + 272 + ] + }, + { + "teal": 159, + "source": 41, + "pc": [ + 273 + ] + }, + { + "teal": 160, + "source": 41, + "pc": [ + 274 + ] + }, + { + "teal": 161, + "source": 41, + "pc": [ + 275 + ] + }, + { + "teal": 162, + "source": 41, + "pc": [ + 276, + 277, + 278 + ] + }, + { + "teal": 163, + "source": 41, + "pc": [ + 279, + 280 + ] + }, + { + "teal": 164, + "source": 41, + "pc": [ + 281, + 282, + 283 + ] + }, + { + "teal": 165, + "source": 41, + "pc": [ + 284, + 285 + ] + }, + { + "teal": 166, + "source": 40, + "pc": [ + 286, + 287, + 288 + ] + }, + { + "teal": 171, + "source": 43, + "pc": [ + 289, + 290 + ] + }, + { + "teal": 172, + "source": 43, + "pc": [ + 291, + 292 + ] + }, + { + "teal": 173, + "source": 43, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 174, + "source": 43, + "pc": [ + 295 + ] + }, + { + "teal": 175, + "source": 43, + "pc": [ + 296 + ] + }, + { + "teal": 176, + "source": 43, + "pc": [ + 297 + ] + }, + { + "teal": 177, + "source": 43, + "pc": [ + 298 + ] + }, + { + "teal": 178, + "source": 43, + "pc": [ + 299, + 300, + 301 + ] + }, + { + "teal": 179, + "source": 43, + "pc": [ + 302 + ] + }, + { + "teal": 180, + "source": 43, + "pc": [ + 303 + ] + }, + { + "teal": 181, + "source": 43, + "pc": [ + 304 + ] + }, + { + "teal": 182, + "source": 43, + "pc": [ + 305, + 306, + 307 + ] + }, + { + "teal": 183, + "source": 43, + "pc": [ + 308 + ] + }, + { + "teal": 184, + "source": 43, + "pc": [ + 309 + ] + }, + { + "teal": 185, + "source": 43, + "pc": [ + 310 + ] + }, + { + "teal": 186, + "source": 43, + "pc": [ + 311, + 312, + 313 + ] + }, + { + "teal": 187, + "source": 43, + "pc": [ + 314, + 315, + 316 + ] + }, + { + "teal": 188, + "source": 43, + "pc": [ + 317, + 318 + ] + }, + { + "teal": 195, + "source": 37, + "pc": [ + 319, + 320 + ] + }, + { + "teal": 196, + "source": 37, + "pc": [ + 321 + ] + }, + { + "teal": 197, + "source": 37, + "pc": [ + 322 + ] + }, + { + "teal": 198, + "source": 37, + "pc": [ + 323, + 324 + ] + }, + { + "teal": 199, + "source": 37, + "pc": [ + 325, + 326, + 327 + ] + }, + { + "teal": 204, + "source": 47, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 207, + "source": 34, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 210, + "source": 34, + "pc": [ + 332, + 333 + ] + }, + { + "teal": 211, + "source": 34, + "pc": [ + 334 + ] + }, + { + "teal": 216, + "source": 50, + "pc": [ + 335, + 336, + 337 + ] + }, + { + "teal": 217, + "source": 50, + "pc": [ + 338 + ] + }, + { + "teal": 218, + "source": 50, + "pc": [ + 339 + ] + }, + { + "teal": 222, + "source": 50, + "pc": [ + 340, + 341, + 342 + ] + }, + { + "teal": 227, + "source": 51, + "pc": [ + 343, + 344 + ] + }, + { + "teal": 228, + "source": 51, + "pc": [ + 345, + 346, + 347 + ] + }, + { + "teal": 229, + "source": 51, + "pc": [ + 348, + 349 + ] + }, + { + "teal": 230, + "source": 51, + "pc": [ + 350 + ] + }, + { + "teal": 231, + "source": 51, + "pc": [ + 351 + ] + }, + { + "teal": 234, + "source": 51, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"sender\",\"expected\":\"this.app.creator\"}", + "pc": [ + 352 + ] + }, + { + "teal": 235, + "source": 50, + "pc": [ + 353 + ] + }, + { + "teal": 240, + "source": 54, + "pc": [ + 354, + 355, + 356 + ] + }, + { + "teal": 241, + "source": 54, + "pc": [ + 357 + ] + }, + { + "teal": 242, + "source": 54, + "pc": [ + 358 + ] + }, + { + "teal": 246, + "source": 54, + "pc": [ + 359, + 360, + 361 + ] + }, + { + "teal": 250, + "source": 55, + "pc": [ + 362 + ] + }, + { + "teal": 251, + "source": 55, + "pc": [ + 363, + 364, + 365 + ] + }, + { + "teal": 252, + "source": 55, + "pc": [ + 366 + ] + }, + { + "teal": 253, + "source": 54, + "pc": [ + 367 + ] + }, + { + "teal": 258, + "source": 58, + "pc": [ + 368, + 369, + 370 + ] + }, + { + "teal": 259, + "source": 58, + "pc": [ + 371 + ] + }, + { + "teal": 260, + "source": 58, + "pc": [ + 372 + ] + }, + { + "teal": 261, + "source": 58, + "pc": [ + 373 + ] + }, + { + "teal": 262, + "source": 58, + "pc": [ + 374 + ] + }, + { + "teal": 265, + "source": 58, + "errorMessage": "argument 0 (path) for verify must be a byte[33][3]", + "pc": [ + 375 + ] + }, + { + "teal": 268, + "source": 58, + "pc": [ + 376, + 377, + 378 + ] + }, + { + "teal": 269, + "source": 58, + "pc": [ + 379, + 380, + 381 + ] + }, + { + "teal": 272, + "source": 58, + "pc": [ + 382, + 383, + 384 + ] + }, + { + "teal": 273, + "source": 58, + "pc": [ + 385 + ] + }, + { + "teal": 274, + "source": 58, + "pc": [ + 386 + ] + }, + { + "teal": 278, + "source": 58, + "pc": [ + 387, + 388, + 389 + ] + }, + { + "teal": 282, + "source": 59, + "pc": [ + 390 + ] + }, + { + "teal": 283, + "source": 59, + "pc": [ + 391 + ] + }, + { + "teal": 284, + "source": 59, + "pc": [ + 392, + 393 + ] + }, + { + "teal": 285, + "source": 59, + "pc": [ + 394, + 395 + ] + }, + { + "teal": 286, + "source": 59, + "pc": [ + 396 + ] + }, + { + "teal": 287, + "source": 59, + "pc": [ + 397, + 398, + 399 + ] + }, + { + "teal": 288, + "source": 59, + "pc": [ + 400 + ] + }, + { + "teal": 289, + "source": 59, + "pc": [ + 401 + ] + }, + { + "teal": 290, + "source": 58, + "pc": [ + 402 + ] + }, + { + "teal": 295, + "source": 62, + "pc": [ + 403, + 404, + 405 + ] + }, + { + "teal": 296, + "source": 62, + "pc": [ + 406 + ] + }, + { + "teal": 297, + "source": 62, + "pc": [ + 407 + ] + }, + { + "teal": 298, + "source": 62, + "pc": [ + 408 + ] + }, + { + "teal": 299, + "source": 62, + "pc": [ + 409 + ] + }, + { + "teal": 302, + "source": 62, + "errorMessage": "argument 0 (path) for appendLeaf must be a byte[33][3]", + "pc": [ + 410 + ] + }, + { + "teal": 305, + "source": 62, + "pc": [ + 411, + 412, + 413 + ] + }, + { + "teal": 306, + "source": 62, + "pc": [ + 414, + 415, + 416 + ] + }, + { + "teal": 309, + "source": 62, + "pc": [ + 417, + 418, + 419 + ] + }, + { + "teal": 310, + "source": 62, + "pc": [ + 420 + ] + }, + { + "teal": 311, + "source": 62, + "pc": [ + 421 + ] + }, + { + "teal": 315, + "source": 62, + "pc": [ + 422, + 423, + 424 + ] + }, + { + "teal": 319, + "source": 63, + "pc": [ + 425, + 426 + ] + }, + { + "teal": 320, + "source": 63, + "pc": [ + 427 + ] + }, + { + "teal": 321, + "source": 63, + "pc": [ + 428 + ] + }, + { + "teal": 322, + "source": 63, + "pc": [ + 429 + ] + }, + { + "teal": 326, + "source": 64, + "pc": [ + 430 + ] + }, + { + "teal": 327, + "source": 64, + "pc": [ + 431 + ] + }, + { + "teal": 328, + "source": 64, + "pc": [ + 432, + 433 + ] + }, + { + "teal": 329, + "source": 64, + "pc": [ + 434 + ] + }, + { + "teal": 330, + "source": 64, + "pc": [ + 435 + ] + }, + { + "teal": 331, + "source": 64, + "pc": [ + 436 + ] + }, + { + "teal": 332, + "source": 64, + "pc": [ + 437 + ] + }, + { + "teal": 333, + "source": 64, + "pc": [ + 438 + ] + }, + { + "teal": 334, + "source": 64, + "pc": [ + 439, + 440, + 441 + ] + }, + { + "teal": 335, + "source": 64, + "pc": [ + 442, + 443, + 444 + ] + }, + { + "teal": 336, + "source": 64, + "pc": [ + 445 + ] + }, + { + "teal": 337, + "source": 64, + "pc": [ + 446 + ] + }, + { + "teal": 341, + "source": 66, + "pc": [ + 447 + ] + }, + { + "teal": 342, + "source": 66, + "pc": [ + 448, + 449 + ] + }, + { + "teal": 343, + "source": 66, + "pc": [ + 450, + 451 + ] + }, + { + "teal": 344, + "source": 66, + "pc": [ + 452 + ] + }, + { + "teal": 345, + "source": 66, + "pc": [ + 453, + 454, + 455 + ] + }, + { + "teal": 346, + "source": 66, + "pc": [ + 456 + ] + }, + { + "teal": 350, + "source": 68, + "pc": [ + 457, + 458, + 459, + 460, + 461, + 462 + ] + }, + { + "teal": 351, + "source": 68, + "pc": [ + 463 + ] + }, + { + "teal": 352, + "source": 68, + "pc": [ + 464 + ] + }, + { + "teal": 353, + "source": 68, + "pc": [ + 465 + ] + }, + { + "teal": 354, + "source": 68, + "pc": [ + 466 + ] + }, + { + "teal": 355, + "source": 68, + "pc": [ + 467 + ] + }, + { + "teal": 356, + "source": 62, + "pc": [ + 468 + ] + }, + { + "teal": 361, + "source": 71, + "pc": [ + 469, + 470, + 471 + ] + }, + { + "teal": 362, + "source": 71, + "pc": [ + 472 + ] + }, + { + "teal": 363, + "source": 71, + "pc": [ + 473 + ] + }, + { + "teal": 364, + "source": 71, + "pc": [ + 474 + ] + }, + { + "teal": 365, + "source": 71, + "pc": [ + 475 + ] + }, + { + "teal": 368, + "source": 71, + "errorMessage": "argument 0 (path) for updateLeaf must be a byte[33][3]", + "pc": [ + 476 + ] + }, + { + "teal": 371, + "source": 71, + "pc": [ + 477, + 478, + 479 + ] + }, + { + "teal": 372, + "source": 71, + "pc": [ + 480, + 481, + 482 + ] + }, + { + "teal": 375, + "source": 71, + "pc": [ + 483, + 484, + 485 + ] + }, + { + "teal": 376, + "source": 71, + "pc": [ + 486, + 487, + 488 + ] + }, + { + "teal": 379, + "source": 71, + "pc": [ + 489, + 490, + 491 + ] + }, + { + "teal": 380, + "source": 71, + "pc": [ + 492 + ] + }, + { + "teal": 381, + "source": 71, + "pc": [ + 493 + ] + }, + { + "teal": 385, + "source": 71, + "pc": [ + 494, + 495, + 496 + ] + }, + { + "teal": 389, + "source": 72, + "pc": [ + 497, + 498 + ] + }, + { + "teal": 390, + "source": 72, + "pc": [ + 499 + ] + }, + { + "teal": 391, + "source": 72, + "pc": [ + 500 + ] + }, + { + "teal": 392, + "source": 72, + "pc": [ + 501 + ] + }, + { + "teal": 396, + "source": 73, + "pc": [ + 502 + ] + }, + { + "teal": 397, + "source": 73, + "pc": [ + 503 + ] + }, + { + "teal": 398, + "source": 73, + "pc": [ + 504, + 505 + ] + }, + { + "teal": 399, + "source": 73, + "pc": [ + 506, + 507 + ] + }, + { + "teal": 400, + "source": 73, + "pc": [ + 508 + ] + }, + { + "teal": 401, + "source": 73, + "pc": [ + 509, + 510, + 511 + ] + }, + { + "teal": 402, + "source": 73, + "pc": [ + 512 + ] + }, + { + "teal": 403, + "source": 73, + "pc": [ + 513 + ] + }, + { + "teal": 407, + "source": 75, + "pc": [ + 514 + ] + }, + { + "teal": 408, + "source": 75, + "pc": [ + 515, + 516 + ] + }, + { + "teal": 409, + "source": 75, + "pc": [ + 517, + 518 + ] + }, + { + "teal": 410, + "source": 75, + "pc": [ + 519 + ] + }, + { + "teal": 411, + "source": 75, + "pc": [ + 520, + 521, + 522 + ] + }, + { + "teal": 412, + "source": 75, + "pc": [ + 523 + ] + }, + { + "teal": 413, + "source": 71, + "pc": [ + 524 + ] + }, + { + "teal": 416, + "source": 11, + "pc": [ + 525, + 526, + 527, + 528, + 529, + 530 + ] + }, + { + "teal": 417, + "source": 11, + "pc": [ + 531, + 532, + 533 + ] + }, + { + "teal": 418, + "source": 11, + "pc": [ + 534, + 535, + 536, + 537 + ] + }, + { + "teal": 421, + "source": 11, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 538 + ] + }, + { + "teal": 424, + "source": 11, + "pc": [ + 539, + 540, + 541, + 542, + 543, + 544 + ] + }, + { + "teal": 425, + "source": 11, + "pc": [ + 545, + 546, + 547, + 548, + 549, + 550 + ] + }, + { + "teal": 426, + "source": 11, + "pc": [ + 551, + 552, + 553, + 554, + 555, + 556 + ] + }, + { + "teal": 427, + "source": 11, + "pc": [ + 557, + 558, + 559 + ] + }, + { + "teal": 428, + "source": 11, + "pc": [ + 560, + 561, + 562, + 563, + 564, + 565, + 566, + 567 + ] + }, + { + "teal": 431, + "source": 11, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 568 + ] + }, + { + "teal": 434, + "source": 11, + "pc": [ + 569, + 570, + 571, + 572, + 573, + 574 + ] + }, + { + "teal": 435, + "source": 11, + "pc": [ + 575, + 576, + 577 + ] + }, + { + "teal": 436, + "source": 11, + "pc": [ + 578, + 579, + 580, + 581 + ] + }, + { + "teal": 439, + "source": 11, + "errorMessage": "this contract does not implement the given ABI method for call DeleteApplication", + "pc": [ + 582 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gY2FsY0luaXRSb290KCk6IGJ5dGVzMzIKY2FsY0luaXRSb290OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxNwoJLy8gcmVzdWx0ID0gaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIKCWJ5dGUgMHhlM2IwYzQ0Mjk4ZmMxYzE0OWFmYmY0Yzg5OTZmYjkyNDI3YWU0MWU0NjQ5YjkzNGNhNDk1OTkxYjc4NTJiODU1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweAoJZHVwCgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8wX2VuZAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyMAoJLy8gcmVzdWx0ID0gc2hhMjU2KHJlc3VsdCArIHJlc3VsdCkKCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWNvbmNhdAoJc2hhMjU2CglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpID0gaSArIDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjIzCgkvLyByZXR1cm4gcmVzdWx0OwoJZnJhbWVfZGlnIDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gaGFzaENvbmNhdChsZWZ0OiBieXRlczMyLCByaWdodDogYnl0ZXMzMik6IGJ5dGVzMzIKaGFzaENvbmNhdDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyNwoJLy8gcmV0dXJuIHNoYTI1NihsZWZ0ICsgcmlnaHQpOwoJZnJhbWVfZGlnIC0xIC8vIGxlZnQ6IGJ5dGVzMzIKCWZyYW1lX2RpZyAtMiAvLyByaWdodDogYnl0ZXMzMgoJY29uY2F0CglzaGEyNTYKCXJldHN1YgoKLy8gaXNSaWdodFNpYmxpbmcoZWxlbTogQnJhbmNoKTogYm9vbGVhbgppc1JpZ2h0U2libGluZzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozMQoJLy8gcmV0dXJuIGdldGJ5dGUoZWxlbSwgMCkgPT09IFJJR0hUX1NJQkxJTkdfUFJFRklYOwoJZnJhbWVfZGlnIC0xIC8vIGVsZW06IEJyYW5jaAoJaW50IDAKCWdldGJ5dGUKCWludCAxNzAKCT09CglyZXRzdWIKCi8vIGNhbGNSb290KGxlYWY6IGJ5dGVzMzIsIHBhdGg6IFBhdGgpOiBieXRlczMyCmNhbGNSb290OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozNwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjM3CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8xX2VuZAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo0MAoJLy8gdGhpcy5pc1JpZ2h0U2libGluZyhlbGVtKQoJZnJhbWVfZGlnIC0yIC8vIHBhdGg6IFBhdGgKCWZyYW1lX2RpZyAxIC8vIHNhdmVkIGFjY2Vzc29yOiBhY2Nlc3Nvci8vMC8vZWxlbQoJaW50IDMzCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAzMwoJZXh0cmFjdDMKCWNhbGxzdWIgaXNSaWdodFNpYmxpbmcKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQxCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQocmVzdWx0LCBleHRyYWN0MyhlbGVtLCAxLCAzMikgYXMgYnl0ZXMzMikKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgMSAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2VsZW0KCWludCAzMwoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMzMKCWV4dHJhY3QzCglleHRyYWN0IDEgMzIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWR1cAoJZXh0cmFjdCAzMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQzCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQoZXh0cmFjdDMoZWxlbSwgMSwgMzIpIGFzIGJ5dGVzMzIsIHJlc3VsdCkKCWZyYW1lX2RpZyAtMSAvLyBsZWFmOiBieXRlczMyCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIDEgLy8gc2F2ZWQgYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCglpbnQgMzMKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDMzCglleHRyYWN0MwoJZXh0cmFjdCAxIDMyCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMzIgMAoJYnl0ZSAweAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoKKmlmMF9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6MzcKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzEKCipmb3JfMV9lbmQ6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NDcKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NTEKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFwcC5jcmVhdG9yIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5jcmVhdG9yIn0KCWFzc2VydAoJcmV0c3ViCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjSW5pdFJvb3QoKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJY2FsbHN1YiBjYWxjSW5pdFJvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeToKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciB2ZXJpZnkgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBkYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB2ZXJpZnkoYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdmVyaWZ5CglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnkoZGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnZlcmlmeToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1OQoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBhcHBlbmRMZWFmKGJ5dGVbXSxieXRlWzMzXVszXSl2b2lkCiphYmlfcm91dGVfYXBwZW5kTGVhZjoKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciBhcHBlbmRMZWFmIG11c3QgYmUgYSBieXRlWzMzXVszXQoJYXNzZXJ0CgoJLy8gZGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZAoJY2FsbHN1YiBhcHBlbmRMZWFmCglpbnQgMQoJcmV0dXJuCgovLyBhcHBlbmRMZWFmKGRhdGE6IGJ5dGVzLCBwYXRoOiBQYXRoKTogdm9pZAphcHBlbmRMZWFmOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjYzCgkvLyBhc3NlcnQoZGF0YSAhPT0gJycpCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCWJ5dGUgMHggLy8gIiIKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NjQKCS8vIGFzc2VydCh0aGlzLnJvb3QudmFsdWUgPT09IHRoaXMuY2FsY1Jvb3QoaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIsIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglieXRlIDB4ZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFlNDY0OWI5MzRjYTQ5NTk5MWI3ODUyYjg1NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgKCWR1cAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo2NgoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0xIC8vIGRhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjY4CgkvLyB0aGlzLnNpemUudmFsdWUgPSB0aGlzLnNpemUudmFsdWUgKyAxCglieXRlIDB4NzM2OTdhNjUgLy8gInNpemUiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVMZWFmOgoJLy8gcGF0aDogYnl0ZVszM11bM10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgOTkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF0aCkgZm9yIHVwZGF0ZUxlYWYgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBuZXdEYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gb2xkRGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdXBkYXRlTGVhZgoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlTGVhZihvbGREYXRhOiBieXRlcywgbmV3RGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnVwZGF0ZUxlYWY6Cglwcm90byAzIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NzIKCS8vIGFzc2VydChuZXdEYXRhICE9PSAnJykKCWZyYW1lX2RpZyAtMiAvLyBuZXdEYXRhOiBieXRlcwoJYnl0ZSAweCAvLyAiIgoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3MwoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYob2xkRGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMyAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gb2xkRGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYobmV3RGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTMgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0yIC8vIG5ld0RhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAiYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAidXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3ZlcmlmeSAqYWJpX3JvdXRlX2FwcGVuZExlYWYgKmFiaV9yb3V0ZV91cGRhdGVMZWFmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9EZWxldGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAiZGVsZXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2RlbGV0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgRGVsZXRlQXBwbGljYXRpb24KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjYWxsX0RlbGV0ZUFwcGxpY2F0aW9uICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gY2FsY0luaXRSb290KCk6IGJ5dGVzMzIKY2FsY0luaXRSb290OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxNwoJLy8gcmVzdWx0ID0gaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIKCWJ5dGUgMHhlM2IwYzQ0Mjk4ZmMxYzE0OWFmYmY0Yzg5OTZmYjkyNDI3YWU0MWU0NjQ5YjkzNGNhNDk1OTkxYjc4NTJiODU1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweAoJZHVwCgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8wX2VuZAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyMAoJLy8gcmVzdWx0ID0gc2hhMjU2KHJlc3VsdCArIHJlc3VsdCkKCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWZyYW1lX2RpZyAwIC8vIHJlc3VsdDogYnl0ZVszMl0KCWNvbmNhdAoJc2hhMjU2CglmcmFtZV9idXJ5IDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjE5CgkvLyBpID0gaSArIDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjIzCgkvLyByZXR1cm4gcmVzdWx0OwoJZnJhbWVfZGlnIDAgLy8gcmVzdWx0OiBieXRlWzMyXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gaGFzaENvbmNhdChsZWZ0OiBieXRlczMyLCByaWdodDogYnl0ZXMzMik6IGJ5dGVzMzIKaGFzaENvbmNhdDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czoyNwoJLy8gcmV0dXJuIHNoYTI1NihsZWZ0ICsgcmlnaHQpOwoJZnJhbWVfZGlnIC0xIC8vIGxlZnQ6IGJ5dGVzMzIKCWZyYW1lX2RpZyAtMiAvLyByaWdodDogYnl0ZXMzMgoJY29uY2F0CglzaGEyNTYKCXJldHN1YgoKLy8gaXNSaWdodFNpYmxpbmcoZWxlbTogQnJhbmNoKTogYm9vbGVhbgppc1JpZ2h0U2libGluZzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozMQoJLy8gcmV0dXJuIGdldGJ5dGUoZWxlbSwgMCkgPT09IFJJR0hUX1NJQkxJTkdfUFJFRklYOwoJZnJhbWVfZGlnIC0xIC8vIGVsZW06IEJyYW5jaAoJaW50IDAKCWdldGJ5dGUKCWludCAxNzAKCT09CglyZXRzdWIKCi8vIGNhbGNSb290KGxlYWY6IGJ5dGVzMzIsIHBhdGg6IFBhdGgpOiBieXRlczMyCmNhbGNSb290OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czozNwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBUUkVFX0RFUFRIOyBpID0gaSArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjM3CgkvLyBpIDwgVFJFRV9ERVBUSAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMwoJPAoJYnogKmZvcl8xX2VuZAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDEgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo0MAoJLy8gdGhpcy5pc1JpZ2h0U2libGluZyhlbGVtKQoJZnJhbWVfZGlnIC0yIC8vIHBhdGg6IFBhdGgKCWZyYW1lX2RpZyAxIC8vIHNhdmVkIGFjY2Vzc29yOiBhY2Nlc3Nvci8vMC8vZWxlbQoJaW50IDMzCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAzMwoJZXh0cmFjdDMKCWNhbGxzdWIgaXNSaWdodFNpYmxpbmcKCWJ6ICppZjBfZWxzZQoKCS8vICppZjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQxCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQocmVzdWx0LCBleHRyYWN0MyhlbGVtLCAxLCAzMikgYXMgYnl0ZXMzMikKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgMSAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2VsZW0KCWludCAzMwoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMzMKCWV4dHJhY3QzCglleHRyYWN0IDEgMzIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWR1cAoJZXh0cmFjdCAzMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjQzCgkvLyByZXN1bHQgPSB0aGlzLmhhc2hDb25jYXQoZXh0cmFjdDMoZWxlbSwgMSwgMzIpIGFzIGJ5dGVzMzIsIHJlc3VsdCkKCWZyYW1lX2RpZyAtMSAvLyBsZWFmOiBieXRlczMyCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIDEgLy8gc2F2ZWQgYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9lbGVtCglpbnQgMzMKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDMzCglleHRyYWN0MwoJZXh0cmFjdCAxIDMyCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMzIgMAoJYnl0ZSAweAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBoYXNoQ29uY2F0CglmcmFtZV9idXJ5IC0xIC8vIHJlc3VsdDogYnl0ZXMzMgoKKmlmMF9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6MzcKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzEKCipmb3JfMV9lbmQ6CgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NDcKCS8vIHJldHVybiByZXN1bHQ7CglmcmFtZV9kaWcgLTEgLy8gbGVhZjogYnl0ZXMzMgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9kZWxldGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgZGVsZXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgZGVsZXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGRlbGV0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKZGVsZXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NTEKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG4sIHsgc2VuZGVyOiB0aGlzLmFwcC5jcmVhdG9yIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4biIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5jcmVhdG9yIn0KCWFzc2VydAoJcmV0c3ViCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjSW5pdFJvb3QoKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJY2FsbHN1YiBjYWxjSW5pdFJvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIHZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeToKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciB2ZXJpZnkgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBkYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB2ZXJpZnkoYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdmVyaWZ5CglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnkoZGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnZlcmlmeToKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo1OQoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBhcHBlbmRMZWFmKGJ5dGVbXSxieXRlWzMzXVszXSl2b2lkCiphYmlfcm91dGVfYXBwZW5kTGVhZjoKCS8vIHBhdGg6IGJ5dGVbMzNdWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDk5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBhdGgpIGZvciBhcHBlbmRMZWFmIG11c3QgYmUgYSBieXRlWzMzXVszXQoJYXNzZXJ0CgoJLy8gZGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZAoJY2FsbHN1YiBhcHBlbmRMZWFmCglpbnQgMQoJcmV0dXJuCgovLyBhcHBlbmRMZWFmKGRhdGE6IGJ5dGVzLCBwYXRoOiBQYXRoKTogdm9pZAphcHBlbmRMZWFmOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjYzCgkvLyBhc3NlcnQoZGF0YSAhPT0gJycpCglmcmFtZV9kaWcgLTEgLy8gZGF0YTogYnl0ZXMKCWJ5dGUgMHggLy8gIiIKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NjQKCS8vIGFzc2VydCh0aGlzLnJvb3QudmFsdWUgPT09IHRoaXMuY2FsY1Jvb3QoaGV4KEVNUFRZX0hBU0gpIGFzIGJ5dGVzMzIsIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBwYXRoOiBQYXRoCglieXRlIDB4ZTNiMGM0NDI5OGZjMWMxNDlhZmJmNGM4OTk2ZmI5MjQyN2FlNDFlNDY0OWI5MzRjYTQ5NTk5MWI3ODUyYjg1NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgKCWR1cAoJYj09Cglhc3NlcnQKCWV4dHJhY3QgMCAzMgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo2NgoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYoZGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTIgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0xIC8vIGRhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvbWVya2xlL21lcmtsZS5hbGdvLnRzOjY4CgkvLyB0aGlzLnNpemUudmFsdWUgPSB0aGlzLnNpemUudmFsdWUgKyAxCglieXRlIDB4NzM2OTdhNjUgLy8gInNpemUiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVMZWFmOgoJLy8gcGF0aDogYnl0ZVszM11bM10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgOTkKCT09CgoJLy8gYXJndW1lbnQgMCAocGF0aCkgZm9yIHVwZGF0ZUxlYWYgbXVzdCBiZSBhIGJ5dGVbMzNdWzNdCglhc3NlcnQKCgkvLyBuZXdEYXRhOiBieXRlW10KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWV4dHJhY3QgMiAwCgoJLy8gb2xkRGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgdXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQKCWNhbGxzdWIgdXBkYXRlTGVhZgoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlTGVhZihvbGREYXRhOiBieXRlcywgbmV3RGF0YTogYnl0ZXMsIHBhdGg6IFBhdGgpOiB2b2lkCnVwZGF0ZUxlYWY6Cglwcm90byAzIDAKCgkvLyBleGFtcGxlcy9tZXJrbGUvbWVya2xlLmFsZ28udHM6NzIKCS8vIGFzc2VydChuZXdEYXRhICE9PSAnJykKCWZyYW1lX2RpZyAtMiAvLyBuZXdEYXRhOiBieXRlcwoJYnl0ZSAweCAvLyAiIgoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3MwoJLy8gYXNzZXJ0KHRoaXMucm9vdC52YWx1ZSA9PT0gdGhpcy5jYWxjUm9vdChzaGEyNTYob2xkRGF0YSksIHBhdGgpKQoJYnl0ZSAweDcyNmY2Zjc0IC8vICJyb290IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMyAvLyBwYXRoOiBQYXRoCglmcmFtZV9kaWcgLTEgLy8gb2xkRGF0YTogYnl0ZXMKCXNoYTI1NgoJY2FsbHN1YiBjYWxjUm9vdAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL21lcmtsZS9tZXJrbGUuYWxnby50czo3NQoJLy8gdGhpcy5yb290LnZhbHVlID0gdGhpcy5jYWxjUm9vdChzaGEyNTYobmV3RGF0YSksIHBhdGgpCglieXRlIDB4NzI2ZjZmNzQgLy8gInJvb3QiCglmcmFtZV9kaWcgLTMgLy8gcGF0aDogUGF0aAoJZnJhbWVfZGlnIC0yIC8vIG5ld0RhdGE6IGJ5dGVzCglzaGEyNTYKCWNhbGxzdWIgY2FsY1Jvb3QKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInZlcmlmeShieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAiYXBwZW5kTGVhZihieXRlW10sYnl0ZVszM11bM10pdm9pZCIKCW1ldGhvZCAidXBkYXRlTGVhZihieXRlW10sYnl0ZVtdLGJ5dGVbMzNdWzNdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3ZlcmlmeSAqYWJpX3JvdXRlX2FwcGVuZExlYWYgKmFiaV9yb3V0ZV91cGRhdGVMZWFmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9EZWxldGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAiZGVsZXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2RlbGV0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgRGVsZXRlQXBwbGljYXRpb24KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/non_abi/artifacts/NonABIExample.approval.teal b/examples/non_abi/artifacts/NonABIExample.approval.teal index 10ae4529c..9151bdbd8 100644 --- a/examples/non_abi/artifacts/NonABIExample.approval.teal +++ b/examples/non_abi/artifacts/NonABIExample.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // !!!! WARNING: This contract is *NOT* ARC4 compliant. It may contain ABI methods, but it also allows app calls where the first argument does NOT match an ABI selector diff --git a/examples/non_abi/artifacts/NonABIExample.arc32.json b/examples/non_abi/artifacts/NonABIExample.arc32.json index 72c31f965..8a2cae9d7 100644 --- a/examples/non_abi/artifacts/NonABIExample.arc32.json +++ b/examples/non_abi/artifacts/NonABIExample.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gYWRkKHg6IHVpbnQ2NCwgeTogdWludDY0KTogdWludDY0CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjYKCS8vIHJldHVybiB4ICsgeTsKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCSsKCXJldHN1YgoKLy8gYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYWJpQWRkOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFiaUFkZCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhYmlBZGQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhYmlBZGQoeDogdWludDY0LCB5OiB1aW50NjQpOiB1aW50NjQKYWJpQWRkOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTAKCS8vIHJldHVybiB0aGlzLmFkZCh4LCB5KTsKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWNhbGxzdWIgYWRkCglyZXRzdWIKCi8vIG5vbkFiaUFkZCgpOiB2b2lkCm5vbkFiaUFkZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9ub25fYWJpL25vbl9hYmkuYWxnby50czoxNQoJLy8geCA9IGJ0b2kodGhpcy50eG4uYXBwbGljYXRpb25BcmdzIVswXSkKCXR4biBBcHBsaWNhdGlvbkFyZ3MgMAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjE2CgkvLyB5ID0gYnRvaSh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhWzFdKQoJdHhuIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCglmcmFtZV9idXJ5IDEgLy8geTogdWludDY0CgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTcKCS8vIGxvZyhpdG9iKHRoaXMuYWRkKHgsIHkpKSkKCWZyYW1lX2RpZyAxIC8vIHk6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CgljYWxsc3ViIGFkZAoJaXRvYgoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaVVwZGF0ZSgpOiB2b2lkCm5vbkFiaVVwZGF0ZToKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjIyCgkvLyBsb2coJ1VwZGF0ZWQhJykKCWJ5dGUgMHg1NTcwNjQ2MTc0NjU2NDIxIC8vICJVcGRhdGVkISIKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hYmlBZGQKCgkvLyAhISEhIFdBUk5JTkc6IG5vbi1BQkkgcm91dGluZwoJY2FsbHN1YiBub25BYmlBZGQKCWludCAxCglyZXR1cm4KCipjYWxsX1VwZGF0ZUFwcGxpY2F0aW9uOgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpVXBkYXRlCglpbnQgMQoJcmV0dXJu", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gYWRkKHg6IHVpbnQ2NCwgeTogdWludDY0KTogdWludDY0CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjYKCS8vIHJldHVybiB4ICsgeTsKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCSsKCXJldHN1YgoKLy8gYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYWJpQWRkOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFiaUFkZCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhYmlBZGQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhYmlBZGQoeDogdWludDY0LCB5OiB1aW50NjQpOiB1aW50NjQKYWJpQWRkOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTAKCS8vIHJldHVybiB0aGlzLmFkZCh4LCB5KTsKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWNhbGxzdWIgYWRkCglyZXRzdWIKCi8vIG5vbkFiaUFkZCgpOiB2b2lkCm5vbkFiaUFkZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9ub25fYWJpL25vbl9hYmkuYWxnby50czoxNQoJLy8geCA9IGJ0b2kodGhpcy50eG4uYXBwbGljYXRpb25BcmdzIVswXSkKCXR4biBBcHBsaWNhdGlvbkFyZ3MgMAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjE2CgkvLyB5ID0gYnRvaSh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhWzFdKQoJdHhuIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCglmcmFtZV9idXJ5IDEgLy8geTogdWludDY0CgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTcKCS8vIGxvZyhpdG9iKHRoaXMuYWRkKHgsIHkpKSkKCWZyYW1lX2RpZyAxIC8vIHk6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CgljYWxsc3ViIGFkZAoJaXRvYgoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaVVwZGF0ZSgpOiB2b2lkCm5vbkFiaVVwZGF0ZToKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjIyCgkvLyBsb2coJ1VwZGF0ZWQhJykKCWJ5dGUgMHg1NTcwNjQ2MTc0NjU2NDIxIC8vICJVcGRhdGVkISIKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hYmlBZGQKCgkvLyAhISEhIFdBUk5JTkc6IG5vbi1BQkkgcm91dGluZwoJY2FsbHN1YiBub25BYmlBZGQKCWludCAxCglyZXR1cm4KCipjYWxsX1VwZGF0ZUFwcGxpY2F0aW9uOgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpVXBkYXRlCglpbnQgMQoJcmV0dXJu", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/non_abi/artifacts/NonABIExample.arc56_draft.json b/examples/non_abi/artifacts/NonABIExample.arc56_draft.json index 0a66759db..13eb883e0 100644 --- a/examples/non_abi/artifacts/NonABIExample.arc56_draft.json +++ b/examples/non_abi/artifacts/NonABIExample.arc56_draft.json @@ -69,560 +69,563 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 27, - "source": 5, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 31, - "source": 6, - "pc": [ - 43, - 44 - ] - }, - { - "teal": 32, - "source": 6, - "pc": [ - 45, - 46 - ] - }, - { - "teal": 33, - "source": 6, - "pc": [ - 47 - ] - }, - { - "teal": 34, - "source": 5, - "pc": [ - 48 - ] - }, - { - "teal": 39, - "source": 9, - "pc": [ - 49, - 50, - 51, - 52, - 53, - 54 - ] - }, - { - "teal": 42, - "source": 9, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 43, - "source": 9, - "pc": [ - 58 - ] - }, - { - "teal": 46, - "source": 9, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 47, - "source": 9, - "pc": [ - 62 - ] - }, - { - "teal": 50, - "source": 9, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 51, - "source": 9, - "pc": [ - 66 - ] - }, - { - "teal": 52, - "source": 9, - "pc": [ - 67 - ] - }, - { - "teal": 53, - "source": 9, - "pc": [ - 68 - ] - }, - { - "teal": 54, - "source": 9, - "pc": [ - 69 - ] - }, - { - "teal": 55, - "source": 9, - "pc": [ - 70 - ] - }, - { - "teal": 59, - "source": 9, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 63, - "source": 10, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 64, - "source": 10, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 65, - "source": 10, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 66, - "source": 9, - "pc": [ - 81 - ] - }, - { - "teal": 70, - "source": 13, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 73, - "source": 13, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 74, - "source": 13, - "pc": [ - 87 - ] - }, - { - "teal": 78, - "source": 15, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 79, - "source": 15, - "pc": [ - 91 - ] - }, - { - "teal": 80, - "source": 15, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 84, - "source": 16, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 85, - "source": 16, - "pc": [ - 97 - ] - }, - { - "teal": 86, - "source": 16, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 90, - "source": 17, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 91, - "source": 17, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 92, - "source": 17, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 93, - "source": 17, - "pc": [ - 107 - ] - }, - { - "teal": 94, - "source": 17, - "pc": [ - 108 - ] - }, - { - "teal": 95, - "source": 13, - "pc": [ - 109 - ] - }, - { - "teal": 99, - "source": 20, - "pc": [ - 110, - 111, - 112 - ] - }, - { - "teal": 103, - "source": 22, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 104, - "source": 22, - "pc": [ - 123 - ] - }, - { - "teal": 105, - "source": 20, - "pc": [ - 124 - ] - }, - { - "teal": 108, - "source": 4, - "pc": [ - 125 - ] - }, - { - "teal": 109, - "source": 4, - "pc": [ - 126 - ] - }, - { - "teal": 112, - "source": 4, - "pc": [ - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 113, - "source": 4, - "pc": [ - 133, - 134, - 135 - ] - }, - { - "teal": 114, - "source": 4, - "pc": [ - 136, - 137, - 138, - 139 - ] - }, - { - "teal": 117, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 140 - ] - }, - { - "teal": 120, - "source": 4, - "pc": [ - 141, - 142, - 143, - 144, - 145, - 146 - ] - }, - { - "teal": 121, - "source": 4, - "pc": [ - 147, - 148, - 149 - ] - }, - { - "teal": 122, - "source": 4, - "pc": [ - 150, - 151, - 152, - 153 - ] - }, - { - "teal": 125, - "source": 4, - "pc": [ - 154, - 155, - 156 - ] - }, - { - "teal": 126, - "source": 4, - "pc": [ - 157 - ] - }, - { - "teal": 127, - "source": 4, - "pc": [ - 158 - ] - }, - { - "teal": 131, - "source": 4, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 132, - "source": 4, - "pc": [ - 162 - ] - }, - { - "teal": 133, - "source": 4, - "pc": [ - 163 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 27, + "source": 5, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 31, + "source": 6, + "pc": [ + 43, + 44 + ] + }, + { + "teal": 32, + "source": 6, + "pc": [ + 45, + 46 + ] + }, + { + "teal": 33, + "source": 6, + "pc": [ + 47 + ] + }, + { + "teal": 34, + "source": 5, + "pc": [ + 48 + ] + }, + { + "teal": 39, + "source": 9, + "pc": [ + 49, + 50, + 51, + 52, + 53, + 54 + ] + }, + { + "teal": 42, + "source": 9, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 43, + "source": 9, + "pc": [ + 58 + ] + }, + { + "teal": 46, + "source": 9, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 47, + "source": 9, + "pc": [ + 62 + ] + }, + { + "teal": 50, + "source": 9, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 51, + "source": 9, + "pc": [ + 66 + ] + }, + { + "teal": 52, + "source": 9, + "pc": [ + 67 + ] + }, + { + "teal": 53, + "source": 9, + "pc": [ + 68 + ] + }, + { + "teal": 54, + "source": 9, + "pc": [ + 69 + ] + }, + { + "teal": 55, + "source": 9, + "pc": [ + 70 + ] + }, + { + "teal": 59, + "source": 9, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 63, + "source": 10, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 64, + "source": 10, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 65, + "source": 10, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 66, + "source": 9, + "pc": [ + 81 + ] + }, + { + "teal": 70, + "source": 13, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 73, + "source": 13, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 74, + "source": 13, + "pc": [ + 87 + ] + }, + { + "teal": 78, + "source": 15, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 79, + "source": 15, + "pc": [ + 91 + ] + }, + { + "teal": 80, + "source": 15, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 84, + "source": 16, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 85, + "source": 16, + "pc": [ + 97 + ] + }, + { + "teal": 86, + "source": 16, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 90, + "source": 17, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 91, + "source": 17, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 92, + "source": 17, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 93, + "source": 17, + "pc": [ + 107 + ] + }, + { + "teal": 94, + "source": 17, + "pc": [ + 108 + ] + }, + { + "teal": 95, + "source": 13, + "pc": [ + 109 + ] + }, + { + "teal": 99, + "source": 20, + "pc": [ + 110, + 111, + 112 + ] + }, + { + "teal": 103, + "source": 22, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 104, + "source": 22, + "pc": [ + 123 + ] + }, + { + "teal": 105, + "source": 20, + "pc": [ + 124 + ] + }, + { + "teal": 108, + "source": 4, + "pc": [ + 125 + ] + }, + { + "teal": 109, + "source": 4, + "pc": [ + 126 + ] + }, + { + "teal": 112, + "source": 4, + "pc": [ + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 113, + "source": 4, + "pc": [ + 133, + 134, + 135 + ] + }, + { + "teal": 114, + "source": 4, + "pc": [ + 136, + 137, + 138, + 139 + ] + }, + { + "teal": 117, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 140 + ] + }, + { + "teal": 120, + "source": 4, + "pc": [ + 141, + 142, + 143, + 144, + 145, + 146 + ] + }, + { + "teal": 121, + "source": 4, + "pc": [ + 147, + 148, + 149 + ] + }, + { + "teal": 122, + "source": 4, + "pc": [ + 150, + 151, + 152, + 153 + ] + }, + { + "teal": 125, + "source": 4, + "pc": [ + 154, + 155, + 156 + ] + }, + { + "teal": 126, + "source": 4, + "pc": [ + 157 + ] + }, + { + "teal": 127, + "source": 4, + "pc": [ + 158 + ] + }, + { + "teal": 131, + "source": 4, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 132, + "source": 4, + "pc": [ + 162 + ] + }, + { + "teal": 133, + "source": 4, + "pc": [ + 163 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gYWRkKHg6IHVpbnQ2NCwgeTogdWludDY0KTogdWludDY0CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjYKCS8vIHJldHVybiB4ICsgeTsKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCSsKCXJldHN1YgoKLy8gYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYWJpQWRkOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFiaUFkZCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhYmlBZGQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhYmlBZGQoeDogdWludDY0LCB5OiB1aW50NjQpOiB1aW50NjQKYWJpQWRkOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTAKCS8vIHJldHVybiB0aGlzLmFkZCh4LCB5KTsKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWNhbGxzdWIgYWRkCglyZXRzdWIKCi8vIG5vbkFiaUFkZCgpOiB2b2lkCm5vbkFiaUFkZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9ub25fYWJpL25vbl9hYmkuYWxnby50czoxNQoJLy8geCA9IGJ0b2kodGhpcy50eG4uYXBwbGljYXRpb25BcmdzIVswXSkKCXR4biBBcHBsaWNhdGlvbkFyZ3MgMAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjE2CgkvLyB5ID0gYnRvaSh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhWzFdKQoJdHhuIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCglmcmFtZV9idXJ5IDEgLy8geTogdWludDY0CgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTcKCS8vIGxvZyhpdG9iKHRoaXMuYWRkKHgsIHkpKSkKCWZyYW1lX2RpZyAxIC8vIHk6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CgljYWxsc3ViIGFkZAoJaXRvYgoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaVVwZGF0ZSgpOiB2b2lkCm5vbkFiaVVwZGF0ZToKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjIyCgkvLyBsb2coJ1VwZGF0ZWQhJykKCWJ5dGUgMHg1NTcwNjQ2MTc0NjU2NDIxIC8vICJVcGRhdGVkISIKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hYmlBZGQKCgkvLyAhISEhIFdBUk5JTkc6IG5vbi1BQkkgcm91dGluZwoJY2FsbHN1YiBub25BYmlBZGQKCWludCAxCglyZXR1cm4KCipjYWxsX1VwZGF0ZUFwcGxpY2F0aW9uOgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpVXBkYXRlCglpbnQgMQoJcmV0dXJu", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gYWRkKHg6IHVpbnQ2NCwgeTogdWludDY0KTogdWludDY0CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjYKCS8vIHJldHVybiB4ICsgeTsKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCSsKCXJldHN1YgoKLy8gYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfYWJpQWRkOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB4OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGFiaUFkZCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhYmlBZGQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhYmlBZGQoeDogdWludDY0LCB5OiB1aW50NjQpOiB1aW50NjQKYWJpQWRkOgoJcHJvdG8gMiAxCgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTAKCS8vIHJldHVybiB0aGlzLmFkZCh4LCB5KTsKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyB4OiB1aW50NjQKCWNhbGxzdWIgYWRkCglyZXRzdWIKCi8vIG5vbkFiaUFkZCgpOiB2b2lkCm5vbkFiaUFkZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9ub25fYWJpL25vbl9hYmkuYWxnby50czoxNQoJLy8geCA9IGJ0b2kodGhpcy50eG4uYXBwbGljYXRpb25BcmdzIVswXSkKCXR4biBBcHBsaWNhdGlvbkFyZ3MgMAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjE2CgkvLyB5ID0gYnRvaSh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhWzFdKQoJdHhuIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCglmcmFtZV9idXJ5IDEgLy8geTogdWludDY0CgoJLy8gZXhhbXBsZXMvbm9uX2FiaS9ub25fYWJpLmFsZ28udHM6MTcKCS8vIGxvZyhpdG9iKHRoaXMuYWRkKHgsIHkpKSkKCWZyYW1lX2RpZyAxIC8vIHk6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CgljYWxsc3ViIGFkZAoJaXRvYgoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaVVwZGF0ZSgpOiB2b2lkCm5vbkFiaVVwZGF0ZToKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL25vbl9hYmkvbm9uX2FiaS5hbGdvLnRzOjIyCgkvLyBsb2coJ1VwZGF0ZWQhJykKCWJ5dGUgMHg1NTcwNjQ2MTc0NjU2NDIxIC8vICJVcGRhdGVkISIKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWJpQWRkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hYmlBZGQKCgkvLyAhISEhIFdBUk5JTkc6IG5vbi1BQkkgcm91dGluZwoJY2FsbHN1YiBub25BYmlBZGQKCWludCAxCglyZXR1cm4KCipjYWxsX1VwZGF0ZUFwcGxpY2F0aW9uOgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpVXBkYXRlCglpbnQgMQoJcmV0dXJu", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/examples/optin-lsig/artifacts/LsigExample.lsig.teal b/examples/optin-lsig/artifacts/LsigExample.lsig.teal index 36e09b843..df11939f7 100644 --- a/examples/optin-lsig/artifacts/LsigExample.lsig.teal +++ b/examples/optin-lsig/artifacts/LsigExample.lsig.teal @@ -1,7 +1,7 @@ #pragma version 10 //#pragma mode logicsig -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // The address of this logic signature is R3AXSKEZHFTAMBE7AVWQDHXIPPOUJ3WJBOSR7CQIZCIN6FQLYLKGYNKLDA diff --git a/examples/reti/artifacts/StakingPool.approval.teal b/examples/reti/artifacts/StakingPool.approval.teal index 28f4ff396..c72684319 100644 --- a/examples/reti/artifacts/StakingPool.approval.teal +++ b/examples/reti/artifacts/StakingPool.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/reti/artifacts/StakingPool.arc32.json b/examples/reti/artifacts/StakingPool.arc32.json index 4446c3942..7e9e37656 100644 --- a/examples/reti/artifacts/StakingPool.arc32.json +++ b/examples/reti/artifacts/StakingPool.arc32.json @@ -161,7 +161,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9mZWVTaW5rQWRkcgpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfbmZkUmVnaXN0cnlBcHBJZApidG9pCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNhbGxfVXBkYXRlQXBwbGljYXRpb24gKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfdXBkYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIHVwZGF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBcHBsaWNhdGlvbigpOiB2b2lkCnVwZGF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0CgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0xaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEnKSwKCS8vICAgICAgICdUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWFkZHIgTFo0VjJJUlZMQ1hGSks0UkVKVjRUQUdFS0VZVEEyR01SNlRDMjM0NE9CM0wzQUYzTVdYWjZaQUZJUQoJPT0KCgkvLyBUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50Cglhc3NlcnQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJYnRvaQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGNyZWF0aW5nQ29udHJhY3RJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oY3JlYXRpbmdDb250cmFjdElkOiB1aW50NjQsIHZhbGlkYXRvcklkOiB1aW50NjQsIHBvb2xJZDogdWludDY0LCBtaW5FbnRyeVN0YWtlOiB1aW50NjQpOiB2b2lkCi8vCi8vIEluaXRpYWxpemUgdGhlIHN0YWtpbmcgcG9vbCB3LyBvd25lciBhbmQgbWFuYWdlciwgYnV0IGNhbiBvbmx5IGJlIGNyZWF0ZWQgYnkgdGhlIHZhbGlkYXRvciBjb250cmFjdC4KLy8gQHBhcmFtIHt1aW50NjR9IGNyZWF0aW5nQ29udHJhY3RJZCAtIGlkIG9mIGNvbnRyYWN0IHRoYXQgY29uc3RydWN0ZWQgdXMgLSB0aGUgdmFsaWRhdG9yIGFwcGxpY2F0aW9uIChzaW5nbGUgZ2xvYmFsIGluc3RhbmNlKQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgLSBpZCBvZiB2YWxpZGF0b3Igd2UncmUgYSBzdGFraW5nIHBvb2wgb2YKLy8gQHBhcmFtIHt1aW50NjR9IHBvb2xJZCAtIHdoaWNoIHBvb2wgaWQgYXJlIHdlCi8vIEBwYXJhbSB7dWludDY0fSBtaW5FbnRyeVN0YWtlIC0gbWluaW11bSBhbW91bnQgdG8gYmUgaW4gcG9vbCwgYnV0IGFsc28gbWluaW11bSBhbW91bnQgYmFsYW5jZSBjYW4ndCBnbyBiZWxvdyAod2l0aG91dCByZW1vdmluZyBhbGwhKQpjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDQgMAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTA4CgkvLyBjcmVhdGluZ0NvbnRyYWN0SWQgPT09IDAKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTAKCS8vIGFzc2VydCh2YWxpZGF0b3JJZCA9PT0gMCkKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTEKCS8vIGFzc2VydChwb29sSWQgPT09IDApCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWludCAwCgk9PQoJYXNzZXJ0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTEzCgkvLyBhc3NlcnQodmFsaWRhdG9ySWQgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE0CgkvLyBhc3NlcnQocG9vbElkICE9PSAwKQoJZnJhbWVfZGlnIC0zIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE2CgkvLyBhc3NlcnQobWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC00IC8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJaW50IDEwMDAwMDAKCT49CgoJLy8gc3Rha2luZyBwb29sIG11c3QgaGF2ZSBtaW5pbXVtIGVudHJ5IG9mIDEgYWxnbwoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjExNwoJLy8gdGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUgPSBjcmVhdGluZ0NvbnRyYWN0SWQKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE4CgkvLyB0aGlzLnZhbGlkYXRvcklkLnZhbHVlID0gdmFsaWRhdG9ySWQKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzI0OTY0IC8vICJ2YWxpZGF0b3JJZCIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTkKCS8vIHRoaXMucG9vbElkLnZhbHVlID0gcG9vbElkCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMAoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlID0gMAoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgPSAwCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglpbnQgMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTIyCgkvLyB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUgPSBtaW5FbnRyeVN0YWtlCglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglmcmFtZV9kaWcgLTQgLy8gbWluRW50cnlTdGFrZTogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMjMKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGdsb2JhbHMucm91bmQKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWdsb2JhbCBSb3VuZAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI0CgkvLyB0aGlzLmVwb2NoTnVtYmVyLnZhbHVlID0gMAoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyNgoJLy8gdGhpcy5zZXRSb3VuZHNQZXJEYXkoKQoJY2FsbHN1YiBzZXRSb3VuZHNQZXJEYXkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI3CgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI4CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI5CgkvLyB0aGlzLnJld2FyZEFjY3VtdWxhdG9yLnZhbHVlID0gMAoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEzMAoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg2NTc3NmQ2MSAvLyAiZXdtYSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE0MgoJLy8gcmV0dXJuIFNDQk9YX1BFUkJPWCArIHRvdGFsTnVtQnl0ZXMgKiBTQ0JPWF9QRVJCWVRFOwoJaW50IDI1MDAKCWZyYW1lX2RpZyAtMSAvLyB0b3RhbE51bUJ5dGVzOiB1aW50NjQKCWludCA0MDAKCSoKCSsKCXJldHN1YgoKLy8gaW5pdFN0b3JhZ2UocGF5KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3RvcmFnZToKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKG1iclBheW1lbnQpIGZvciBpbml0U3RvcmFnZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGluaXRTdG9yYWdlKHBheSl2b2lkCgljYWxsc3ViIGluaXRTdG9yYWdlCglpbnQgMQoJcmV0dXJuCgovLyBpbml0U3RvcmFnZShtYnJQYXltZW50OiBQYXlUeG4pOiB2b2lkCi8vCi8vIENhbGxlZCBhZnRlciB3ZSdyZSBjcmVhdGVkIGFuZCB0aGVuIGZ1bmRlZCwgc28gd2UgY2FuIGNyZWF0ZSBvdXIgbGFyZ2Ugc3Rha2VycyBsZWRnZXIgc3RvcmFnZQovLyBDYWxsZXIgaGFzIHRvIGdldCBNQlIgYW1vdW50cyBmcm9tIFZhbGlkYXRvclJlZ2lzdHJ5IHRvIGtub3cgaG93IG11Y2ggdG8gZnVuZCB1cyB0byBjb3ZlciB0aGUgYm94IHN0b3JhZ2UgY29zdAovLyBJZiB0aGlzIGlzIHBvb2wgMSBBTkQgdGhlIHZhbGlkYXRvciBoYXMgc3BlY2lmaWVkIGEgcmV3YXJkIHRva2VuLCBvcHQtaW4gdG8gdGhhdCB0b2tlbgovLyBzbyB0aGF0IHRoZSB2YWxpZGF0b3IgY2FuIHNlZWQgdGhlIHBvb2wgd2l0aCBmdXR1cmUgcmV3YXJkcyBvZiB0aGF0IHRva2VuLgovLyBAcGFyYW0gbWJyUGF5bWVudCBwYXltZW50IGZyb20gY2FsbGVyIHdoaWNoIGNvdmVycyBtYnIgaW5jcmVhc2Ugb2YgbmV3IHN0YWtpbmcgcG9vbHMnIHN0b3JhZ2UKaW5pdFN0b3JhZ2U6Cglwcm90byAxIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1MwoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCgoJLy8gc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTYKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjAKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDEgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MQoJLy8gZXh0cmFNQlIgPSBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEgPyBBU1NFVF9IT0xESU5HX0ZFRSA6IDAKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMDoKCWJ6ICp0ZXJuYXJ5MF9mYWxzZQoJaW50IDEwMDAwMAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyBleHRyYU1CUjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MgoJLy8gUG9vbEluaXRNYnIgPQoJLy8gICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICBleHRyYU1CUiArCgkvLyAgICAgICB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDcgLyogJ3N0YWtlcnMnIG5hbWUgKi8gKyBsZW48U3Rha2VkSW5mbz4oKSAqIE1BWF9TVEFLRVJTX1BFUl9QT09MKQoJaW50IDEwMDAwMAoJZnJhbWVfZGlnIDIgLy8gZXh0cmFNQlI6IHVpbnQ2NAoJKwoJaW50IDEyODA3CgljYWxsc3ViIGNvc3RGb3JCb3hTdG9yYWdlCgkrCglmcmFtZV9idXJ5IDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IFBvb2xJbml0TWJyIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoiUG9vbEluaXRNYnIifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2OQoJLy8gdGhpcy5zdGFrZXJzLmNyZWF0ZSgpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCglpbnQgMTI4MDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTcxCgkvLyBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQxCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTczCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgICAgYXNzZXRBbW91bnQ6IDAsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NAoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTc1CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NgoJLy8gYXNzZXRBbW91bnQ6IDAKCWludCAwCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMV9lbmQ6CglyZXRzdWIKCi8vIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoc3Rha2VyKSBmb3IgYWRkU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlZEFtb3VudFBheW1lbnQpIGZvciBhZGRTdGFrZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoJY2FsbHN1YiBhZGRTdGFrZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgc3Rha2VyOiBBZGRyZXNzKTogdWludDY0Ci8vCi8vIEFkZHMgc3Rha2UgdG8gdGhlIGdpdmVuIGFjY291bnQuCi8vIENhbiBPTkxZIGJlIGNhbGxlZCBieSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0IHRoYXQgY3JlYXRlZCB1cwovLyBNdXN0IHJlY2VpdmUgcGF5bWVudCBmcm9tIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIGFtb3VudCBiZWluZyBzdGFrZWQuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IHByaW9yIHBheW1lbnQgY29taW5nIGZyb20gdmFsaWRhdG9yIGNvbnRyYWN0IHRvIHVzIG9uIGJlaGFsZiBvZiBzdGFrZXIuCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgYWRkaW5nIG5ldyBzdGFrZQovLyBAdGhyb3dzIHtFcnJvcn0gLSBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0YWtpbmcgcG9vbCBpcyBmdWxsLgovLyBAcmV0dXJucyB7dWludDY0fSBuZXcgJ2VudHJ5IHJvdW5kJyByb3VuZCBudW1iZXIgb2Ygc3Rha2UgYWRkCmFkZFN0YWtlOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTIKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTUKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcywKCS8vICAgICAgICdzdGFrZSBjYW4gb25seSBiZSBhZGRlZCB2aWEgdGhlIHZhbGlkYXRvciBjb250cmFjdCcKCS8vICAgICApCgl0eG4gU2VuZGVyCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoKCS8vIHN0YWtlIGNhbiBvbmx5IGJlIGFkZGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTk5CgkvLyBhc3NlcnQoc3Rha2VyICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIwMgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMDYKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MsCgkvLyAgICAgICByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjE1CgkvLyBlbnRyeVJvdW5kID0gZ2xvYmFscy5yb3VuZCArIEFMR09SQU5EX1NUQUtJTkdfQkxPQ0tfREVMQVkKCWdsb2JhbCBSb3VuZAoJaW50IDMyMAoJKwoJZnJhbWVfYnVyeSAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTYKCS8vIGZpcnN0RW1wdHkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50CglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjAKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMiAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjEKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWZyYW1lX2RpZyAyIC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjI2CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyOQoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMwCgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjNfZW5kCgoJLy8gKmlmM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMzCgkvLyBjbXBTdGFrZXIuZW50cnlSb3VuZCA9IGVudHJ5Um91bmQKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDU2IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM2CgkvLyB0aGlzLnN0YWtlcnMudmFsdWVbaV0gPSBjbXBTdGFrZXIKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM4CgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJYiAqYWRkU3Rha2UqcmV0dXJuCgoqaWYzX2VuZDoKCS8vICppZjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjQwCgkvLyBmaXJzdEVtcHR5ID09PSAwICYmIGNtcFN0YWtlci5hY2NvdW50ID09PSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDI6CglieiAqaWY0X2VuZAoKCS8vICppZjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0MQoJLy8gZmlyc3RFbXB0eSA9IGkgKyAxCglmcmFtZV9kaWcgMyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gZmlyc3RFbXB0eTogdWludDY0CgoqaWY0X2VuZDoKCipmb3JfMF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjUKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0NQoJLy8gZmlyc3RFbXB0eSA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjVfZW5kCgoJLy8gKmlmNV9jb25zZXF1ZW50CgkvLyBTdGFraW5nIHBvb2wgZnVsbAoJZXJyCgoqaWY1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTIKCS8vIGFzc2VydChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCA+PSB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUsICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnKQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglhcHBfZ2xvYmFsX2dldAoJPj0KCgkvLyBtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTQKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMudmFsdWVbZmlyc3RFbXB0eSAtIDFdLmFjY291bnQgPT09IGdsb2JhbHMuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAxCgktCglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTUKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtmaXJzdEVtcHR5IC0gMV0gPSB7CgkvLyAgICAgICBhY2NvdW50OiBzdGFrZXIsCgkvLyAgICAgICBiYWxhbmNlOiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCwKCS8vICAgICAgIHRvdGFsUmV3YXJkZWQ6IDAsCgkvLyAgICAgICByZXdhcmRUb2tlbkJhbGFuY2U6IDAsCgkvLyAgICAgICBlbnRyeVJvdW5kOiBlbnRyeVJvdW5kLAoJLy8gICAgIH0KCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50IDEKCS0KCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gZW50cnlSb3VuZDogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI2MgoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlICs9IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjYzCgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKKmFkZFN0YWtlKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKLy8gcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX3JlbW92ZVN0YWtlOgoJLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoc3Rha2VyKSBmb3IgcmVtb3ZlU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoJY2FsbHN1YiByZW1vdmVTdGFrZQoJaW50IDEKCXJldHVybgoKLy8gcmVtb3ZlU3Rha2Uoc3Rha2VyOiBBZGRyZXNzLCBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gUmVtb3ZlcyBzdGFrZSBvbiBiZWhhbGYgb2YgY2FsbGVyIChyZW1vdmluZyBvd24gc3Rha2UpLiAgSWYgYW55IHRva2VuIHJld2FyZHMgZXhpc3QsIHRob3NlIGFyZSBhbHdheXMgc2VudCBpbgovLyBmdWxsLiBBbHNvIG5vdGlmaWVzIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIHRoaXMgcG9vbHMgdmFsaWRhdG9yIG9mIHRoZSBzdGFrZXIgLyBiYWxhbmNlIGNoYW5nZXMuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gYWNjb3VudCB0byByZW1vdmUuICBub3JtYWxseSBzYW1lIGFzIHNlbmRlciwgYnV0IHRoZSB2YWxpZGF0b3Igb3duZXIgb3IgbWFuYWdlciBjYW4gYWxzbyBjYWxsCi8vIHRoaXMgdG8gcmVtb3ZlIHRoZSBzcGVjaWZpZWQgc3Rha2VyIGV4cGxpY2l0bHkuIFRoZSByZW1vdmVkIHN0YWtlIE1VU1Qgb25seSBnbyB0byB0aGUgc3Rha2VyIG9mIGNvdXJzZS4gIFRoaXMgaXMKLy8gc28gYSB2YWxpZGF0b3IgY2FuIHNodXQgZG93biBhIHBvb29sIGFuZCByZWZ1bmQgdGhlIHN0YWtlcnMuICBJdCBjYW4gYWxzbyBiZSB1c2VkIHRvIGtpY2sgb3V0IHN0YWtlcnMgd2hvIG5vIGxvbmdlcgovLyBtZWV0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzIChkZXRlcm1pbmVkIGJ5IHRoZSBub2RlIGRhZW1vbikuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1Vuc3Rha2UgLSBUaGUgYW1vdW50IG9mIHN0YWtlIHRvIGJlIHJlbW92ZWQuICBTcGVjaWZ5IDAgdG8gcmVtb3ZlIGFsbCBzdGFrZS4KLy8gQHRocm93cyB7RXJyb3J9IElmIHRoZSBhY2NvdW50IGhhcyBpbnN1ZmZpY2llbnQgYmFsYW5jZSBvciBpZiB0aGUgYWNjb3VudCBpcyBub3QgZm91bmQuCnJlbW92ZVN0YWtlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNgoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgwCgkvLyBzdGFrZXIgIT09IHRoaXMudHhuLnNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJdHhuIFNlbmRlcgoJIT0KCWJ6ICppZjZfZW5kCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLAoJLy8gICAgICAgICAnSWYgc3Rha2VyIGlzIG5vdCBzZW5kZXIgaW4gcmVtb3ZlU3Rha2UgY2FsbCwgdGhlbiBzZW5kZXIgTVVTVCBiZSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICAgICkKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIElmIHN0YWtlciBpcyBub3Qgc2VuZGVyIGluIHJlbW92ZVN0YWtlIGNhbGwsIHRoZW4gc2VuZGVyIE1VU1QgYmUgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKKmlmNl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjg3CgkvLyB0aGlzLmNoZWNrSWZCaW5DbG9zZWQoKQoJY2FsbHN1YiBjaGVja0lmQmluQ2xvc2VkCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8xX2VuZAoKCS8vICppZjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjkwCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTEKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5MwoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjk0CgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjhfZW5kCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyAqaWY5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5NQoJLy8gYW1vdW50VG9VbnN0YWtlID09PSAwCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmOV9lbmQKCgkvLyAqaWY5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTcKCS8vIGFtb3VudFRvVW5zdGFrZSA9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfYnVyeSAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoKKmlmOV9lbmQ6CgkvLyAqaWYxMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTkKCS8vIGNtcFN0YWtlci5iYWxhbmNlIDwgYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0Cgk8CglieiAqaWYxMF9lbmQKCgkvLyAqaWYxMF9jb25zZXF1ZW50CgkvLyBJbnN1ZmZpY2llbnQgYmFsYW5jZQoJZXJyCgoqaWYxMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzAyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSAtPSBhbW91bnRUb1Vuc3Rha2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCS0KCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwMwoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLT0gYW1vdW50VG9VbnN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDUKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDYKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPiAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDggOAoJYnRvaQoJaW50IDAKCT4KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vICppZjEyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwOAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjEyX2Vsc2UKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzA5CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzEwCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTEKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDMgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgICAgICAgYXNzZXRSZWNlaXZlcjogc3Rha2VyLAoJLy8gICAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE4CgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkKCWZyYW1lX2RpZyAzIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTkKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyMAoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjIKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzIzCgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTJfZW5kCgoqaWYxMl9lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyOAoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTJfZW5kOgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMzNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgIGNtcFN0YWtlci5iYWxhbmNlID09PSAwIHx8IGNtcFN0YWtlci5iYWxhbmNlID49IHRoaXMubWluRW50cnlTdGFrZS52YWx1ZSwKCS8vICAgICAgICAgICAnY2Fubm90IHJlZHVjZSBiYWxhbmNlIGJlbG93IG1pbmltdW0gYWxsb3dlZCBzdGFrZSB1bmxlc3MgYWxsIGlzIHJlbW92ZWQnCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWR1cAoJYm56ICpza2lwX29yMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWJ5dGUgMHg2ZDY5NmU0NTZlNzQ3Mjc5NTM3NDYxNmI2NSAvLyAibWluRW50cnlTdGFrZSIKCWFwcF9nbG9iYWxfZ2V0Cgk+PQoJfHwKCipza2lwX29yMDoKCS8vIGNhbm5vdCByZWR1Y2UgYmFsYW5jZSBiZWxvdyBtaW5pbXVtIGFsbG93ZWQgc3Rha2UgdW5sZXNzIGFsbCBpcyByZW1vdmVkCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQyCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgYW1vdW50OiBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgcmVjZWl2ZXI6IHN0YWtlciwKCS8vICAgICAgICAgICBub3RlOiAndW5zdGFrZWQnLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDMKCS8vIGFtb3VudDogYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0NAoJLy8gcmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDUKCS8vIG5vdGU6ICd1bnN0YWtlZCcKCWJ5dGUgMHg3NTZlNzM3NDYxNmI2NTY0IC8vICJ1bnN0YWtlZCIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQ3CgkvLyBzdGFrZXJSZW1vdmVkID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gc3Rha2VyUmVtb3ZlZDogYm9vbAoKCS8vICppZjEzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0OAoJLy8gY21wU3Rha2VyLmJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTAKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSAtPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MQoJLy8gY21wU3Rha2VyLmFjY291bnQgPSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCAwCglnbG9iYWwgWmVyb0FkZHJlc3MKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MgoJLy8gY21wU3Rha2VyLnRvdGFsUmV3YXJkZWQgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0MAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTQKCS8vIHN0YWtlclJlbW92ZWQgPSB0cnVlCglpbnQgMQoJZnJhbWVfYnVyeSA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCippZjEzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTcKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTkKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgNSAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjAKCS8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4ID0gKGFtb3VudFRvVW5zdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkKCWZyYW1lX2RpZyAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDUgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCWl0b2IKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAoYW1vdW50VG9VbnN0YWtlIGFzIHVpbnQxMjgpICogKHJvdW5kc0xlZnRJbkJpbiBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2MQoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlID0gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgliLQoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2NgoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgICBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQsCgkvLyAgICAgICAgICAgICBzdGFrZXJSZW1vdmVkLAoJLy8gICAgICAgICAgIF0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzY3CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjgKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgICAgIHsgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfSwKCS8vICAgICAgICAgICAgIHN0YWtlciwKCS8vICAgICAgICAgICAgIGFtb3VudFRvVW5zdGFrZSwKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIHN0YWtlclJlbW92ZWQsCgkvLyAgICAgICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mzc2CgkvLyByZXR1cm47CglyZXRzdWIKCippZjhfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGFjY291bnQgbm90IGZvdW5kCgllcnIKCXJldHN1YgoKLy8gY2xhaW1Ub2tlbnMoKXZvaWQKKmFiaV9yb3V0ZV9jbGFpbVRva2VuczoKCS8vIGV4ZWN1dGUgY2xhaW1Ub2tlbnMoKXZvaWQKCWNhbGxzdWIgY2xhaW1Ub2tlbnMKCWludCAxCglyZXR1cm4KCi8vIGNsYWltVG9rZW5zKCk6IHZvaWQKLy8KLy8gQ2xhaW1zIGFsbCB0aGUgYXZhaWxhYmxlIHJld2FyZCB0b2tlbnMgYSBzdGFrZXIgaGFzIGF2YWlsYWJsZSwgc2VuZGluZyB0aGVpciBlbnRpcmUgYmFsYW5jZSB0byB0aGUgc3Rha2VyIGZyb20KLy8gcG9vbCAxIChlaXRoZXIgZGlyZWN0bHksIG9yIHZpYSB2YWxpZGF0b3ItPnBvb2wxIHRvIHBheSBpdCBvdXQpCi8vIEFsc28gbm90aWZpZXMgdGhlIHZhbGlkYXRvciBjb250cmFjdCBmb3IgdGhpcyBwb29scyB2YWxpZGF0b3Igb2YgdGhlIHN0YWtlciAvIGJhbGFuY2UgY2hhbmdlcy4KY2xhaW1Ub2tlbnM6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDAgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8yX2VuZAoKCS8vICppZjE0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5NAoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTUKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE0X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTcKCS8vIGNtcFN0YWtlciA9IGNsb25lKHRoaXMuc3Rha2Vycy52YWx1ZVtpXSkKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWYxNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTgKCS8vIGNtcFN0YWtlci5hY2NvdW50ID09PSBzdGFrZXIKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglieiAqaWYxNV9lbmQKCgkvLyAqaWYxNV9jb25zZXF1ZW50CgkvLyAqaWYxNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjE2X2VuZAoKCS8vICppZjE2X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDAKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMTZfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwMgoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vICppZjE3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwNAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjE3X2Vsc2UKCgkvLyAqaWYxN19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA1CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA2CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDcKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDQgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDEyCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCksCgkvLyAgICAgICAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxMwoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgNCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE0CgkvLyBhc3NldFJlY2VpdmVyOiBzdGFrZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxNQoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MTcKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDMgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE4CgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTdfZW5kCgoqaWYxN19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyMwoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MjQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyOAoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzMwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzNAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDM1CgkvLyBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ0MwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWYxNV9lbmQ6CgoqZm9yXzJfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzkzCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8yCgoqZm9yXzJfZW5kOgoJLy8gYWNjb3VudCBub3QgZm91bmQKCWVycgoJcmV0c3ViCgovLyBnZXRTdGFrZXJJbmZvKGFkZHJlc3MpKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFN0YWtlckluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZXJJbmZvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFN0YWtlckluZm8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTdGFrZXJJbmZvKHN0YWtlcjogQWRkcmVzcyk6IFN0YWtlZEluZm8KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIGEgZ2l2ZW4gc3Rha2VyLgovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEByZXR1cm5zIHtTdGFrZWRJbmZvfSAtIFRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIHRoZSBnaXZlbiBzdGFrZXIuCi8vIEB0aHJvd3Mge0Vycm9yfSAtIElmIHRoZSBzdGFrZXIncyBhY2NvdW50IGlzIG5vdCBmb3VuZC4KZ2V0U3Rha2VySW5mbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8zOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OQoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAyMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAyMDAKCTwKCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NjAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE4X2VuZDoKCS8vICppZjE5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ2MgoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldLmFjY291bnQgPT09IHN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCT09CglieiAqaWYxOV9lbmQKCgkvLyAqaWYxOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDYzCgkvLyByZXR1cm4gdGhpcy5zdGFrZXJzLnZhbHVlW2ldOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJYiAqZ2V0U3Rha2VySW5mbypyZXR1cm4KCippZjE5X2VuZDoKCipmb3JfM19jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NTgKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzMKCipmb3JfM19lbmQ6CgkvLyBhY2NvdW50IG5vdCBmb3VuZAoJZXJyCgoqZ2V0U3Rha2VySW5mbypyZXR1cm46CgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZDoKCS8vIGFtb3VudFRvU2VuZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAyIChzdGFrZXIpIGZvciBwYXlUb2tlblJld2FyZCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBwYXlUb2tlblJld2FyZAoJaW50IDEKCXJldHVybgoKLy8gcGF5VG9rZW5SZXdhcmQoc3Rha2VyOiBBZGRyZXNzLCByZXdhcmRUb2tlbjogdWludDY0LCBhbW91bnRUb1NlbmQ6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gW0ludGVybmFsIHByb3RvY29sIG1ldGhvZF0gUmVtb3ZlIGEgc3BlY2lmaWVkIGFtb3VudCBvZiAnY29tbXVuaXR5IHRva2VuJyByZXdhcmRzIGZvciBhIHN0YWtlci4KLy8gVGhpcyBjYW4gT05MWSBiZSBjYWxsZWQgYnkgb3VyIHZhbGlkYXRvciBhbmQgb25seSBpZiB3ZSdyZSBwb29sIDEgLSB3aXRoIHRoZSB0b2tlbi4KLy8gTm90ZTogdGhpcyBjYW4gYWxzbyBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIGFzIHBhcnQgb2YgT1dORVIgd2FudGluZyB0byBzZW5kIHRoZSByZXdhcmQgdG9rZW5zCi8vIHNvbWV3aGVyZSBlbHNlIChpZSBpZiB0aGV5J3JlIHN1bnNldHRpbmcgdGhlaXIgdmFsaWRhdG9yIGFuZCBuZWVkIHRoZSByZXdhcmQgdG9rZW5zIGJhY2spLgovLyBJdCdzIHVwIHRvIHRoZSB2YWxpZGF0b3IgdG8gZW5zdXJlIHRoYXQgdGhlIGJhbGFuY2UgaW4gcmV3YXJkVG9rZW5IZWxkQmFjayBpcyBob25vcmVkLgovLyBAcGFyYW0gc3Rha2VyIC0gdGhlIHN0YWtlciBhY2NvdW50IHRvIHNlbmQgcmV3YXJkcyB0bwovLyBAcGFyYW0gcmV3YXJkVG9rZW4gLSBpZCBvZiByZXdhcmQgdG9rZW4gKHRvIGF2b2lkIHJlLWVudHJhbmN5IGluIGNhbGxpbmcgdmFsaWRhdG9yIGJhY2sgdG8gZ2V0IGlkKQovLyBAcGFyYW0gYW1vdW50VG9TZW5kIC0gYW1vdW50IHRvIHNlbmQgdGhlIHN0YWtlciAodGhlcmUgaXMgc2lnbmlmaWNhbnQgdHJ1c3QgaGVyZSghKSAtIGFsc28gd2h5IG9ubHkgdmFsaWRhdG9yIGNhbiBjYWxsIHVzCnBheVRva2VuUmV3YXJkOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ4MQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKS5hZGRyZXNzLAoJLy8gICAgICAgJ3RoaXMgY2FuIG9ubHkgYmUgY2FsbGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCT09CgoJLy8gdGhpcyBjYW4gb25seSBiZSBjYWxsZWQgdmlhIHRoZSB2YWxpZGF0b3IgY29udHJhY3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODUKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ211c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMnKQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoKCS8vIG11c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODYKCS8vIGFzc2VydChyZXdhcmRUb2tlbiAhPT0gMCwgJ2NhbiBvbmx5IGNsYWltIHRva2VuIHJld2FyZHMgZnJvbSB2YWxpZGF0b3IgdGhhdCBoYXMgdGhlbScpCglmcmFtZV9kaWcgLTIgLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gY2FuIG9ubHkgY2xhaW0gdG9rZW4gcmV3YXJkcyBmcm9tIHZhbGlkYXRvciB0aGF0IGhhcyB0aGVtCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDg5CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbiksCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50VG9TZW5kLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDkwCgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbikKCWZyYW1lX2RpZyAtMiAvLyByZXdhcmRUb2tlbjogdWludDY0CglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0OTEKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ5MgoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudFRvU2VuZAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU2VuZDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyB1cGRhdGVBbGdvZFZlcihzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyOgoJLy8gYWxnb2RWZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHVwZGF0ZUFsZ29kVmVyKHN0cmluZyl2b2lkCgljYWxsc3ViIHVwZGF0ZUFsZ29kVmVyCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBbGdvZFZlcihhbGdvZFZlcjogc3RyaW5nKTogdm9pZAovLwovLyBVcGRhdGUgdGhlIChob25vciBzeXN0ZW0pIGFsZ29kIHZlcnNpb24gZm9yIHRoZSBub2RlIGFzc29jaWF0ZWQgdG8gdGhpcyBwb29sLiAgVGhlIG5vZGUgbWFuYWdlbWVudCBkYWVtb24KLy8gc2hvdWxkIGNvbXBhcmUgaXRzIGN1cnJlbnQgbm9kZXMgdmVyc2lvbiB0byB0aGUgdmVyc2lvbiBzdG9yZWQgaW4gZ2xvYmFsIHN0YXRlLCB1cGRhdGluZyB3aGVuIGRpZmZlcmVudC4KLy8gVGhlIHJldGkgbm9kZSBkYWVtb24gY29tcG9zZXMgaXRzIG93biB2ZXJzaW9uIHN0cmluZyB1c2luZyBmb3JtYXQ6Ci8vIHttYWpvcn0ue21pbm9yfS57YnVpbGR9IHticmFuY2h9IFt7Y29tbWl0IGhhc2h9XSwKLy8gaWU6IDMuMjIuMCByZWwvc3RhYmxlIFs2YjUwODk3NV0KLy8gWyBPTkxZIE9XTkVSIE9SIE1BTkFHRVIgQ0FOIENBTEwgXQovLyBAcGFyYW0ge3N0cmluZ30gYWxnb2RWZXIgLSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBhbGdvcmFuZCBub2RlIGRhZW1vbiB2ZXJzaW9uIChyZXRpIG5vZGUgZGFlbW9uIGNvbXBvc2VzIGl0cyBvd24gbWV0YSB2ZXJzaW9uKQp1cGRhdGVBbGdvZFZlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDYKCS8vIGFzc2VydCh0aGlzLmlzT3duZXJPck1hbmFnZXJDYWxsZXIoKSwgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicpCgljYWxsc3ViIGlzT3duZXJPck1hbmFnZXJDYWxsZXIKCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDcKCS8vIHRoaXMuYWxnb2RWZXIudmFsdWUgPSBhbGdvZFZlcgoJYnl0ZSAweDYxNmM2NzZmNjQ1NjY1NzIgLy8gImFsZ29kVmVyIgoJZnJhbWVfZGlnIC0xIC8vIGFsZ29kVmVyOiBzdHJpbmcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZAoqYWJpX3JvdXRlX2Vwb2NoQmFsYW5jZVVwZGF0ZToKCS8vIGV4ZWN1dGUgZXBvY2hCYWxhbmNlVXBkYXRlKCl2b2lkCgljYWxsc3ViIGVwb2NoQmFsYW5jZVVwZGF0ZQoJaW50IDEKCXJldHVybgoKLy8gZXBvY2hCYWxhbmNlVXBkYXRlKCk6IHZvaWQKLy8KLy8gVXBkYXRlcyB0aGUgYmFsYW5jZSBvZiBzdGFrZXJzIGluIHRoZSBwb29sIGJhc2VkIG9uIHRoZSByZWNlaXZlZCAncmV3YXJkcycgKGN1cnJlbnQgYmFsYW5jZSB2cyBrbm93biBzdGFrZWQgYmFsYW5jZSkKLy8gc3Rha2VycyBvdXRzdGFuZGluZyBiYWxhbmNlIGlzIGFkanVzdGVkIGJhc2VkIG9uIHRoZWlyICUgb2Ygc3Rha2UgYW5kIHRpbWUgaW4gdGhlIGN1cnJlbnQgZXBvY2ggLSBzbyB0aGF0IGJhbGFuY2UKLy8gY29tcG91bmRzIG92ZXIgdGltZSBhbmQgc3Rha2VyIGNhbiByZW1vdmUgdGhhdCBhbW91bnQgYXQgd2lsbC4KLy8gVGhlIHZhbGlkYXRvciBpcyBwYWlkIHRoZWlyIHBlcmNlbnRhZ2UgZWFjaCBlcG9jaCBwYXlvdXQuCi8vCi8vIE5vdGU6IEFOWU9ORSBjYW4gY2FsbCB0aGlzLgplcG9jaEJhbGFuY2VVcGRhdGU6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzNgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjAKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjEKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUyMgoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjkKCS8vIGVwb2NoUm91bmRMZW5ndGggPSB2YWxpZGF0b3JDb25maWcuZXBvY2hSb3VuZExlbmd0aCBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2OSA0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMiAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMQoJLy8gdGhpc0Vwb2NoQmVnaW4gPSBjdXJSb3VuZCAtIChjdXJSb3VuZCAlIGVwb2NoUm91bmRMZW5ndGgpCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCSUKCS0KCWZyYW1lX2J1cnkgMyAvLyB0aGlzRXBvY2hCZWdpbjogdWludDY0CgoJLy8gKmlmMjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM0CgkvLyB0aGlzLmxhc3RQYXlvdXQuZXhpc3RzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoJc3dhcAoJcG9wCglieiAqaWYyMF9lbmQKCgkvLyAqaWYyMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM1CgkvLyBsYXN0UGF5b3V0RXBvY2ggPSB0aGlzLmxhc3RQYXlvdXQudmFsdWUgLSAodGhpcy5sYXN0UGF5b3V0LnZhbHVlICUgZXBvY2hSb3VuZExlbmd0aCkKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgklCgktCglmcmFtZV9idXJ5IDQgLy8gbGFzdFBheW91dEVwb2NoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM5CgkvLyBhc3NlcnQobGFzdFBheW91dEVwb2NoICE9PSB0aGlzRXBvY2hCZWdpbiwgImNhbid0IGNhbGwgZXBvY2hCYWxhbmNlVXBkYXRlIGluIHNhbWUgZXBvY2ggYXMgcHJpb3IgY2FsbCIpCglmcmFtZV9kaWcgNCAvLyBsYXN0UGF5b3V0RXBvY2g6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJIT0KCgkvLyBjYW4ndCBjYWxsIGVwb2NoQmFsYW5jZVVwZGF0ZSBpbiBzYW1lIGVwb2NoIGFzIHByaW9yIGNhbGwKCWFzc2VydAoKKmlmMjBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU0MgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDUKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGN1clJvdW5kCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDYKCS8vIHRoaXMuZXBvY2hOdW1iZXIudmFsdWUgKz0gMQoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgkrCglieXRlIDB4NjU3MDZmNjM2ODRlNzU2ZDYyNjU3MiAvLyAiZXBvY2hOdW1iZXIiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTEKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDUgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1MgoJLy8gcG9vbE9uZUFwcElEID0gdGhpcy5hcHAuaWQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTMKCS8vIHBvb2xPbmVBZGRyZXNzID0gdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKCS8vICppZjIxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OAoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjIxX2VuZAoKCS8vICppZjIxX2NvbnNlcXVlbnQKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OQoJLy8gdGhpcy5wb29sSWQudmFsdWUgIT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJIT0KCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjEKCS8vIHBvb2xPbmVBcHBJRCA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0UG9vbEFwcElkPih7CgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWUsIDFdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTYyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCAxXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjUKCS8vIHBvb2xPbmVBZGRyZXNzID0gQXBwSUQuZnJvbVVpbnQ2NChwb29sT25lQXBwSUQpLmFkZHJlc3MKCWZyYW1lX2RpZyA2IC8vIHBvb2xPbmVBcHBJRDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKKmlmMjJfZW5kOgoJLy8gKmlmMjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcwCgkvLyB0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoJYnogKmlmMjNfZWxzZQoKCS8vICppZjIzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzEKCS8vIHRva2VuUGF5b3V0UmF0aW8gPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLnNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWIgKmlmMjNfZW5kCgoqaWYyM19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU3NwoJLy8gdG9rZW5QYXlvdXRSYXRpbyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xPbmVBcHBJRCksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3sgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzgKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQocG9vbE9uZUFwcElEKQoJZnJhbWVfZGlnIDYgLy8gcG9vbE9uZUFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzkKCS8vIG1ldGhvZEFyZ3M6IFt7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH1dCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJZnJhbWVfYnVyeSA4IC8vIHRva2VuUGF5b3V0UmF0aW86IFBvb2xUb2tlblBheW91dFJhdGlvCgoqaWYyM19lbmQ6CgoqaWYyMV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTg2CgkvLyB2YWxpZGF0b3JTdGF0ZSA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yU3RhdGU+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnZXRWYWxpZGF0b3JTdGF0ZSh1aW50NjQpKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1ODcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU4OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTkwCgkvLyByZXdhcmRUb2tlbkhlbGRCYWNrID0gdmFsaWRhdG9yU3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDkgLy8gdmFsaWRhdG9yU3RhdGU6ICh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMTAgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU5NgoJLy8gYWxnb1Jld2FyZEF2YWlsID0gdGhpcy5hcHAuYWRkcmVzcy5iYWxhbmNlIC0gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLSB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1OTcKCS8vIGlzUG9vbFNhdHVyYXRlZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAxMiAvLyBpc1Bvb2xTYXR1cmF0ZWQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTk4CgkvLyBhbGdvU2F0dXJhdGlvbkFtdCA9IHRoaXMuYWxnb1NhdHVyYXRpb25MZXZlbCgpCgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWZyYW1lX2J1cnkgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoKCS8vICppZjI0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNgoJLy8gdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkID4gYWxnb1NhdHVyYXRpb25BbXQKCWZyYW1lX2RpZyA5IC8vIHZhbGlkYXRvclN0YXRlOiAodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMCA4CglidG9pCglmcmFtZV9kaWcgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoJPgoJYnogKmlmMjRfZW5kCgoJLy8gKmlmMjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNwoJLy8gaXNQb29sU2F0dXJhdGVkID0gdHJ1ZQoJaW50IDEKCWZyYW1lX2J1cnkgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCgoqaWYyNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjEzCgkvLyB0b2tlblJld2FyZEF2YWlsID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNAoJLy8gdG9rZW5SZXdhcmRQYWlkT3V0ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE1CgkvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE2CgkvLyBleGNlc3NUb0ZlZVNpbmsgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxNyAvLyBleGNlc3NUb0ZlZVNpbms6IHVpbnQ2NAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNwoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2MTgKCS8vIHRva2VuUmV3YXJkQmFsID0KCS8vICAgICAgICAgcG9vbE9uZUFkZHJlc3MuYXNzZXRCYWxhbmNlKEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDcgLy8gcG9vbE9uZUFkZHJlc3M6IGFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEwIC8vIHJld2FyZFRva2VuSGVsZEJhY2s6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxOCAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gKmlmMjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjIzCgkvLyB0b2tlblJld2FyZEJhbCA+PSB2YWxpZGF0b3JDb25maWcucmV3YXJkUGVyUGF5b3V0CglmcmFtZV9kaWcgMTggLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTYxIDgKCWJ0b2kKCT49CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjI5CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHRva2VuUGF5b3V0UmF0aW8ucG9vbFBjdE9mV2hvbGVbdGhpcy5wb29sSWQudmFsdWUgLSAxXQoJZnJhbWVfZGlnIDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWludCAwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfYnVyeSAxOSAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYzMgoJLy8gdG9rZW5SZXdhcmRBdmFpbCA9IHdpZGVSYXRpbyhbdmFsaWRhdG9yQ29uZmlnLnJld2FyZFBlclBheW91dCwgb3VyUG9vbFBjdE9mV2hvbGVdLCBbMV8wMDBfMDAwXSkKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2MSA4CglidG9pCglmcmFtZV9kaWcgMTkgLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJbXVsdwoJaW50IDAKCWludCAxXzAwMF8wMDAKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKKmlmMjZfZW5kOgoKKmlmMjVfZW5kOgoJLy8gKmlmMjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjM1CgkvLyB0b2tlblJld2FyZEF2YWlsID09PSAwCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjI3X2VuZAoKCS8vICppZjI3X2NvbnNlcXVlbnQKCS8vICppZjI4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0MAoJLy8gYWxnb1Jld2FyZEF2YWlsIDwgMV8wMDBfMDAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAxXzAwMF8wMDAKCTwKCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDEKCS8vIGxvZygnIXRva2VuJiYhbm9hbGdvIHRvIHBheScpCglieXRlIDB4MjE3NDZmNmI2NTZlMjYyNjIxNmU2ZjYxNmM2NzZmMjA3NDZmMjA3MDYxNzkgLy8gIiF0b2tlbiYmIW5vYWxnbyB0byBwYXkiCglsb2cKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjQyCgkvLyByZXR1cm47CglyZXRzdWIKCippZjI4X2VuZDoKCippZjI3X2VuZDoKCS8vICppZjI5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0NgoJLy8gaXNQb29sU2F0dXJhdGVkCglmcmFtZV9kaWcgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCglieiAqaWYyOV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjI5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDkKCS8vIGRpbWluaXNoZWRSZXdhcmQgPSB3aWRlUmF0aW8oW2FsZ29SZXdhcmRBdmFpbCwgYWxnb1NhdHVyYXRpb25BbXRdLCBbdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkXSkKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDEzIC8vIGFsZ29TYXR1cmF0aW9uQW10OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTAgOAoJYnRvaQoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MQoJLy8gZXhjZXNzVG9GZWVTaW5rID0gYWxnb1Jld2FyZEF2YWlsIC0gZGltaW5pc2hlZFJld2FyZAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE3IC8vIGV4Y2Vzc1RvRmVlU2luazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgICBhbW91bnQ6IGV4Y2Vzc1RvRmVlU2luaywKCS8vICAgICAgICAgcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpLAoJLy8gICAgICAgICBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NTMKCS8vIGFtb3VudDogZXhjZXNzVG9GZWVTaW5rCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1NAoJLy8gcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpCgljYWxsc3ViIGdldEZlZVNpbmsKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU1CgkvLyBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycKCWJ5dGUgMHg3MDZmNmY2YzIwNzM2MTc0NzU3MjYxNzQ2NTY0MmMyMDY1Nzg2MzY1NzM3MzIwNzQ2ZjIwNjY2NTY1MjA3MzY5NmU2YiAvLyAicG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luayIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU4CgkvLyBhbGdvUmV3YXJkQXZhaWwgPSBkaW1pbmlzaGVkUmV3YXJkCglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CglmcmFtZV9idXJ5IDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgliICppZjI5X2VuZAoKKmlmMjlfZWxzZWlmMV9jb25kaXRpb246CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU5CgkvLyB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjIKCS8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0ID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICBbYWxnb1Jld2FyZEF2YWlsLCB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yIGFzIHVpbnQ2NF0sCgkvLyAgICAgICAgIFsxXzAwMF8wMDBdCgkvLyAgICAgICApCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3MyA0CglidG9pCgltdWx3CglpbnQgMAoJaW50IDFfMDAwXzAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjgKCS8vIGFsZ29SZXdhcmRBdmFpbCAtPSB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vICppZjMwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY3NQoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgPiAwCglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjMwX2VuZAoKCS8vICppZjMwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NzgKCS8vIG1hbmFnZXJUb3BPZmYgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCgkvLyAqaWYzMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODAKCS8vIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgJiYKCS8vICAgICAgICAgICB2YWxpZGF0b3JDb25maWcubWFuYWdlci5iYWxhbmNlIC0gdmFsaWRhdG9yQ29uZmlnLm1hbmFnZXIubWluQmFsYW5jZSA8IDJfMTAwXzAwMAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3NyAzMgoJIT0KCWR1cAoJYnogKnNraXBfYW5kMwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWludCAyXzEwMF8wMDAKCTwKCSYmCgoqc2tpcF9hbmQzOgoJYnogKmlmMzFfZW5kCgoJLy8gKmlmMzFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4MwoJLy8gbWFuYWdlclRvcE9mZiA9IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IDwgMl8xMDBfMDAwID8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgOiAyXzEwMF8wMDAKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CglpbnQgMl8xMDBfMDAwCgk8CglieiAqdGVybmFyeTFfZmFsc2UKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWludCAyXzEwMF8wMDAKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDIxIC8vIG1hbmFnZXJUb3BPZmY6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODQKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgICAgICAgIGFtb3VudDogbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcubWFuYWdlciwKCS8vICAgICAgICAgICAgIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Njg1CgkvLyBhbW91bnQ6IG1hbmFnZXJUb3BPZmYKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4NgoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODcKCS8vIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzIyMDcyNjU3NzYxNzI2NDIwNzQ2ZjIwNmQ2MTZlNjE2NzY1NzIyMDY2NmY3MjIwNjY3NTZlNjQ2OTZlNjcyMDY1NzA2ZjYzNjgyMDc1NzA2NDYxNzQ2NTczIC8vICJ2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcyIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCippZjMxX2VuZDoKCS8vICppZjMyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MAoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgLSBtYW5hZ2VyVG9wT2ZmID4gMAoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWludCAwCgk+CglieiAqaWYzMl9lbmQKCgkvLyAqaWYzMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgICBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MsCgkvLyAgICAgICAgICAgICBub3RlOiAndmFsaWRhdG9yIHJld2FyZCcsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkyCgkvLyBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZgoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MwoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy52YWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTc3IDMyCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5NAoJLy8gbm90ZTogJ3ZhbGlkYXRvciByZXdhcmQnCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyMjA3MjY1Nzc2MTcyNjQgLy8gInZhbGlkYXRvciByZXdhcmQiCglpdHhuX2ZpZWxkIE5vdGUKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgoqaWYzMF9lbmQ6CgoqaWYyOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzA2CgkvLyBpbmNyZWFzZWRTdGFrZSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCgkvLyAqaWYzM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzAKCS8vIGFsZ29SZXdhcmRBdmFpbCAhPT0gMCB8fCB0b2tlblJld2FyZEF2YWlsICE9PSAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgkhPQoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJIT0KCXx8Cgoqc2tpcF9vcjE6CglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMxCgkvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczMgoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyNCAvLyBpOiB1aW50NjQKCipmb3JfNDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzIKCS8vIGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgMjQgLy8gaTogdWludDY0CglpbnQgMjAwCgk8CglieiAqZm9yXzRfZW5kCgoJLy8gKmlmMzRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMzCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDQwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDQwMAoJPAoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMzRfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNgoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gKmlmMzVfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzM3CgkvLyBjbXBTdGFrZXIuYWNjb3VudCAhPT0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglieiAqaWYzNV9lbmQKCgkvLyAqaWYzNV9jb25zZXF1ZW50CgkvLyAqaWYzNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzgKCS8vIGNtcFN0YWtlci5lbnRyeVJvdW5kID49IHRoaXNFcG9jaEJlZ2luCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCT49CglieiAqaWYzNl9lbHNlCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0MQoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoJYiAqaWYzNl9lbmQKCippZjM2X2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzQ1CgkvLyB0aW1lSW5Qb29sID0gdGhpc0Vwb2NoQmVnaW4gLSBjbXBTdGFrZXIuZW50cnlSb3VuZAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA1NiA4CglidG9pCgktCglmcmFtZV9idXJ5IDI2IC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoKCS8vICppZjM3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0OQoJLy8gdGltZUluUG9vbCA8IGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJPAoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MAoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NTEKCS8vIHRpbWVQZXJjZW50YWdlID0gKHRpbWVJblBvb2wgKiAxMDAwKSAvIGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWludCAxMDAwCgkqCglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMjcgLy8gdGltZVBlcmNlbnRhZ2U6IHVpbnQ2NAoKCS8vICppZjM4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MwoJLy8gdG9rZW5SZXdhcmRBdmFpbCA+IDAKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzU1CgkvLyBzdGFrZXJUb2tlblJld2FyZCA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgICAgICAgICAgIFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbCwgdGltZVBlcmNlbnRhZ2VdLAoJLy8gICAgICAgICAgICAgICAgICAgW3RoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlLCAxMDAwXQoJLy8gICAgICAgICAgICAgICAgICkKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjggLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjIKCS8vIHRva2VuUmV3YXJkQXZhaWwgLT0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzY0CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDI4IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjM4X2VuZDoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2NgoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmMzlfZW5kCgoJLy8gKmlmMzlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2OAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICAgICAgICAgICAgW2NtcFN0YWtlci5iYWxhbmNlLCBhbGdvUmV3YXJkQXZhaWwsIHRpbWVQZXJjZW50YWdlXSwKCS8vICAgICAgICAgICAgICAgICAgIFt0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSwgMTAwMF0KCS8vICAgICAgICAgICAgICAgICApCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjkgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc1CgkvLyBhbGdvUmV3YXJkQXZhaWwgLT0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NzgKCS8vIGNtcFN0YWtlci5iYWxhbmNlICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc5CgkvLyBjbXBTdGFrZXIudG90YWxSZXdhcmRlZCArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0MCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQwIDgKCWJ0b2kKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc4MAoJLy8gaW5jcmVhc2VkU3Rha2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCippZjM5X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3ODMKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYzN19lbmQ6CgoqaWYzNl9lbmQ6CgoqaWYzNV9lbmQ6CgoqZm9yXzRfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMyCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDI0IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzQKCipmb3JfNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzkxCgkvLyBuZXdQb29sVG90YWxTdGFrZSA9IHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC0gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgktCglmcmFtZV9idXJ5IDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCgkvLyAqaWY0MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTUKCS8vIG5ld1Bvb2xUb3RhbFN0YWtlID4gMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWludCAwCgk+CglieiAqaWY0MF9lbmQKCgkvLyAqaWY0MF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDMxIC8vIGk6IHVpbnQ2NAoKKmZvcl81OgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc5NwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzMSAvLyBpOiB1aW50NjQKCWludCAyMDAKCTwKCWJ6ICpmb3JfNV9lbmQKCgkvLyAqaWY0MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTgKCS8vIGdsb2JhbHMub3Bjb2RlQnVkZ2V0IDwgMjAwCglnbG9iYWwgT3Bjb2RlQnVkZ2V0CglpbnQgMjAwCgk8CglieiAqaWY0MV9lbmQKCgkvLyAqaWY0MV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODAxCgkvLyBjbXBTdGFrZXIgPSBjbG9uZSh0aGlzLnN0YWtlcnMudmFsdWVbaV0pCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0Ml9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDIKCS8vIGNtcFN0YWtlci5hY2NvdW50ICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzICYmIGNtcFN0YWtlci5lbnRyeVJvdW5kIDwgdGhpc0Vwb2NoQmVnaW4KCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQ0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCTwKCSYmCgoqc2tpcF9hbmQ0OgoJYnogKmlmNDJfZW5kCgoJLy8gKmlmNDJfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgwMwoJLy8gdGltZUluUG9vbCA9IHRoaXNFcG9jaEJlZ2luIC0gY21wU3Rha2VyLmVudHJ5Um91bmQKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNTYgOAoJYnRvaQoJLQoJZnJhbWVfYnVyeSAzMyAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDUKCS8vIHRpbWVJblBvb2wgPj0gZXBvY2hSb3VuZExlbmd0aAoJZnJhbWVfZGlnIDMzIC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0Cgk+PQoJYnogKmlmNDNfZW5kCgoJLy8gKmlmNDNfY29uc2VxdWVudAoJLy8gKmlmNDRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODEwCgkvLyB0b2tlblJld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjQ0X2VuZAoKCS8vICppZjQ0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTEKCS8vIHN0YWtlclRva2VuUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbF0sIFtuZXdQb29sVG90YWxTdGFrZV0pCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgMzAgLy8gbmV3UG9vbFRvdGFsU3Rha2U6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMzQgLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAzNCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODE1CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDM0IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjQ0X2VuZDoKCS8vICppZjQ1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxNwoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmNDVfZW5kCgoJLy8gKmlmNDVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxOAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgYWxnb1Jld2FyZEF2YWlsXSwgW25ld1Bvb2xUb3RhbFN0YWtlXSkKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyMQoJLy8gY21wU3Rha2VyLmJhbGFuY2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MjIKCS8vIGNtcFN0YWtlci50b3RhbFJld2FyZGVkICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDQwIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgOAoJYnRvaQoJZnJhbWVfZGlnIDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODIzCgkvLyBpbmNyZWFzZWRTdGFrZSArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoKKmlmNDVfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyNwoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjQzX2VuZDoKCippZjQyX2VuZDoKCipmb3JfNV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTcKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMzEgLy8gaTogdWludDY0CgliICpmb3JfNQoKKmZvcl81X2VuZDoKCippZjQwX2VuZDoKCippZjMzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzcKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMzYgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODM4CgkvLyB0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSArPSBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzkKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoaW5jcmVhc2VkU3Rha2UgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDM2IC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChpbmNyZWFzZWRTdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0MQoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgKyBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJZHVwCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCSsKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0NwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODQ4CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4NDkKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE1IC8vIHRva2VuUmV3YXJkUGFpZE91dDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBnb09ubGluZShwYXksYnl0ZVtdLGJ5dGVbXSxieXRlW10sdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2dvT25saW5lOgoJLy8gdm90ZUtleURpbHV0aW9uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWJ0b2kKCgkvLyB2b3RlTGFzdDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdm90ZUZpcnN0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBzdGF0ZVByb29mUEs6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBzZWxlY3Rpb25QSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIHZvdGVQSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGZlZVBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDYgKGZlZVBheW1lbnQpIGZvciBnb09ubGluZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGdvT25saW5lKHBheSxieXRlW10sYnl0ZVtdLGJ5dGVbXSx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGdvT25saW5lCglpbnQgMQoJcmV0dXJuCgovLyBnb09ubGluZShmZWVQYXltZW50OiBQYXlUeG4sIHZvdGVQSzogYnl0ZXMsIHNlbGVjdGlvblBLOiBieXRlcywgc3RhdGVQcm9vZlBLOiBieXRlcywgdm90ZUZpcnN0OiB1aW50NjQsIHZvdGVMYXN0OiB1aW50NjQsIHZvdGVLZXlEaWx1dGlvbjogdWludDY0KTogdm9pZAovLwovLyBSZWdpc3RlcnMgYSBzdGFraW5nIHBvb2wga2V5IG9ubGluZSBhZ2FpbnN0IGEgcGFydGljaXBhdGlvbiBrZXkuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KLy8KLy8gQHBhcmFtIHtQYXlUeG59IGZlZVBheW1lbnQgLSBwYXltZW50IHRvIGNvdmVyIGV4dHJhIGZlZSBvZiBnb2luZyBvbmxpbmUgaWYgb2ZmbGluZSAtIG9yIDAgaWYgbm90IHJlbmV3YWwKLy8gQHBhcmFtIHtieXRlc30gdm90ZVBLIC0gVGhlIHZvdGUgcHVibGljIGtleS4KLy8gQHBhcmFtIHtieXRlc30gc2VsZWN0aW9uUEsgLSBUaGUgc2VsZWN0aW9uIHB1YmxpYyBrZXkuCi8vIEBwYXJhbSB7Ynl0ZXN9IHN0YXRlUHJvb2ZQSyAtIFRoZSBzdGF0ZSBwcm9vZiBwdWJsaWMga2V5LgovLyBAcGFyYW0ge3VpbnQ2NH0gdm90ZUZpcnN0IC0gVGhlIGZpcnN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlTGFzdCAtIFRoZSBsYXN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlS2V5RGlsdXRpb24gLSBUaGUgdm90ZSBrZXkgZGlsdXRpb24gdmFsdWUuCi8vIEB0aHJvd3Mge0Vycm9yfSBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBjYWxsZXIgaXMgbm90IHRoZSBvd25lciBvciBhIG1hbmFnZXIuCmdvT25saW5lOgoJcHJvdG8gNyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgxCgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgyCgkvLyBleHRyYUZlZSA9IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJZnJhbWVfYnVyeSAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgzCgkvLyB2ZXJpZnlQYXlUeG4oZmVlUGF5bWVudCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiBleHRyYUZlZSB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6ImV4dHJhRmVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODQKCS8vIHNlbmRPbmxpbmVLZXlSZWdpc3RyYXRpb24oewoJLy8gICAgICAgdm90ZVBLOiB2b3RlUEssCgkvLyAgICAgICBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEssCgkvLyAgICAgICBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSywKCS8vICAgICAgIHZvdGVGaXJzdDogdm90ZUZpcnN0LAoJLy8gICAgICAgdm90ZUxhc3Q6IHZvdGVMYXN0LAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24sCgkvLyAgICAgICBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODUKCS8vIHZvdGVQSzogdm90ZVBLCglmcmFtZV9kaWcgLTIgLy8gdm90ZVBLOiBieXRlcwoJaXR4bl9maWVsZCBWb3RlUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg2CgkvLyBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEsKCWZyYW1lX2RpZyAtMyAvLyBzZWxlY3Rpb25QSzogYnl0ZXMKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg3CgkvLyBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSwoJZnJhbWVfZGlnIC00IC8vIHN0YXRlUHJvb2ZQSzogYnl0ZXMKCWl0eG5fZmllbGQgU3RhdGVQcm9vZlBLCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg4OAoJLy8gdm90ZUZpcnN0OiB2b3RlRmlyc3QKCWZyYW1lX2RpZyAtNSAvLyB2b3RlRmlyc3Q6IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlRmlyc3QKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg5CgkvLyB2b3RlTGFzdDogdm90ZUxhc3QKCWZyYW1lX2RpZyAtNiAvLyB2b3RlTGFzdDogdWludDY0CglpdHhuX2ZpZWxkIFZvdGVMYXN0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg5MAoJLy8gdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24KCWZyYW1lX2RpZyAtNyAvLyB2b3RlS2V5RGlsdXRpb246IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlS2V5RGlsdXRpb24KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODkxCgkvLyBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGdvT2ZmbGluZSgpdm9pZAoqYWJpX3JvdXRlX2dvT2ZmbGluZToKCS8vIGV4ZWN1dGUgZ29PZmZsaW5lKCl2b2lkCgljYWxsc3ViIGdvT2ZmbGluZQoJaW50IDEKCXJldHVybgoKLy8gZ29PZmZsaW5lKCk6IHZvaWQKLy8KLy8gTWFya3MgYSBzdGFraW5nIHBvb2wga2V5IE9GRkxJTkUuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KZ29PZmZsaW5lOgoJcHJvdG8gMCAwCgoJLy8gKmlmNDZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTAzCgkvLyB0aGlzLnR4bi5zZW5kZXIgIT09IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCSE9CglieiAqaWY0Nl9lbmQKCgkvLyAqaWY0Nl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTA0CgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MDcKCS8vIHNlbmRPZmZsaW5lS2V5UmVnaXN0cmF0aW9uKHt9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gbGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2xpbmtUb05GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBsaW5rVG9ORkQodWludDY0LHN0cmluZyl2b2lkCgljYWxsc3ViIGxpbmtUb05GRAoJaW50IDEKCXJldHVybgoKLy8gbGlua1RvTkZEKG5mZEFwcElkOiB1aW50NjQsIG5mZE5hbWU6IHN0cmluZyk6IHZvaWQKbGlua1RvTkZEOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNAoJLy8gYXNzZXJ0KHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLCAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yJykKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3ZlcmlmeV9uZmRfYWRkcicsIG5mZE5hbWUsIGl0b2IobmZkQXBwSWQpLCByYXdCeXRlcyh0aGlzLmFwcC5hZGRyZXNzKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElkKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNwoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MTgKCS8vIGFwcGxpY2F0aW9uQXJnczogWyd2ZXJpZnlfbmZkX2FkZHInLCBuZmROYW1lLCBpdG9iKG5mZEFwcElkKSwgcmF3Qnl0ZXModGhpcy5hcHAuYWRkcmVzcyldCglieXRlIDB4NzY2NTcyNjk2Njc5NWY2ZTY2NjQ1ZjYxNjQ2NDcyIC8vICJ2ZXJpZnlfbmZkX2FkZHIiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJZDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxOQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJZCldCglmcmFtZV9kaWcgLTEgLy8gbmZkQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHByb3hpZWRTZXRUb2tlblBheW91dFJhdGlvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX3Byb3hpZWRTZXRUb2tlblBheW91dFJhdGlvOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBvb2xLZXkpIGZvciBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyhwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5KTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8gaXMgbWVhbnQgdG8gYmUgY2FsbGVkIGJ5IHBvb2xzICE9IDEgLSBjYWxsaW5nIFVTLCBwb29sICMxCi8vIFdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgd2UgYXJlIGluIGZhY3QgYmVpbmcgY2FsbGVkIGJ5IGFub3RoZXIgb2YgT1VSIHBvb2xzIChub3QgdXMpCi8vIGFuZCB0aGVuIHdlJ2xsIGNhbGwgdGhlIHZhbGlkYXRvciBvbiB0aGVpciBiZWhhbGYgdG8gdXBkYXRlIHRoZSB0b2tlbiBwYXlvdXRzCi8vIEBwYXJhbSBwb29sS2V5IC0gVmFsaWRhdG9yUG9vbEtleSB0dXBsZQpwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9ySWQudmFsdWUgPT09IHBvb2xLZXkuaWQsICdjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEnKQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyBjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzEKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ2NhbGxlZSBtdXN0IGJlIHBvb2wgMScpCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgoJLy8gY2FsbGVlIG11c3QgYmUgcG9vbCAxCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTMyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgIT09IDEsICdjYWxsZXIgbXVzdCBOT1QgYmUgcG9vbCAxJykKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCSE9CgoJLy8gY2FsbGVyIG11c3QgTk9UIGJlIHBvb2wgMQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzNAoJLy8gY2FsbGVyUG9vbEFwcElEID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5nZXRQb29sQXBwSWQ+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3Bvb2xLZXkuaWQsIHBvb2xLZXkucG9vbElkXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzYKCS8vIG1ldGhvZEFyZ3M6IFtwb29sS2V5LmlkLCBwb29sS2V5LnBvb2xJZF0KCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBjYWxsZXJQb29sQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzgKCS8vIGFzc2VydChjYWxsZXJQb29sQXBwSUQgPT09IHBvb2xLZXkucG9vbEFwcElkKQoJZnJhbWVfZGlnIDAgLy8gY2FsbGVyUG9vbEFwcElEOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM5CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0MQoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuc2V0VG9rZW5QYXlvdXRSYXRpbz4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGlzT3duZXJPck1hbmFnZXJDYWxsZXIoKTogYm9vbGVhbgppc093bmVyT3JNYW5hZ2VyQ2FsbGVyOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQ4CgkvLyBPd25lckFuZE1hbmFnZXIgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcj4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MgoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzBdIHx8IHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzFdOwoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIDAgLy8gT3duZXJBbmRNYW5hZ2VyOiAoYWRkcmVzcyxhZGRyZXNzKQoJZXh0cmFjdCAwIDMyCgk9PQoJZHVwCglibnogKnNraXBfb3IyCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCglleHRyYWN0IDMyIDMyCgk9PQoJfHwKCipza2lwX29yMjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBnZXRGZWVTaW5rKCk6IEFkZHJlc3MKZ2V0RmVlU2luazoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NTYKCS8vIHJldHVybiB0aGlzLmZlZVNpbmtBZGRyOwoJbG9hZCAyMDEgLy8gVE1QTF9mZWVTaW5rQWRkcgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk2NgoJLy8gb25saW5lID0gdGhpcy5nZXRDdXJyZW50T25saW5lU3Rha2UoKQoJY2FsbHN1YiBnZXRDdXJyZW50T25saW5lU3Rha2UKCWZyYW1lX2J1cnkgMCAvLyBvbmxpbmU6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NjgKCS8vIHJldHVybiB3aWRlUmF0aW8oW29ubGluZSwgTUFYX1ZBTElEQVRPUl9TT0ZUX1BDVF9PRl9PTkxJTkVfMURFQ0lNQUxdLCBbMTAwMF0pOwoJZnJhbWVfZGlnIDAgLy8gb25saW5lOiB1aW50NjQKCWludCAxMDAKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gZ2V0R29PbmxpbmVGZWUoKTogdWludDY0CmdldEdvT25saW5lRmVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc1CgkvLyBpc09ubGluZSA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGlzT25saW5lOiBib29sCgoJLy8gKmlmNDdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc2CgkvLyAhaXNPbmxpbmUKCWZyYW1lX2RpZyAwIC8vIGlzT25saW5lOiBib29sCgkhCglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc4CgkvLyByZXR1cm4gMl8wMDBfMDAwOwoJaW50IDJfMDAwXzAwMAoJYiAqZ2V0R29PbmxpbmVGZWUqcmV0dXJuCgoqaWY0N19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTgwCgkvLyByZXR1cm4gMDsKCWludCAwCgoqZ2V0R29PbmxpbmVGZWUqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk4NQoJLy8gcmV0dXJuIDJfMDAwXzAwMF8wMDBfMDAwXzAwMDsKCWludCAyXzAwMF8wMDBfMDAwXzAwMF8wMDAKCXJldHN1YgoKLy8gY2hlY2tJZkJpbkNsb3NlZCgpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiB0aGUgY3VycmVudCByb3VuZCBpcyBpbiBhICduZXcgY2FsY3VsYXRpb24gYmluJyAoYXBwcm94aW1hdGVseSBkYWlseSkKY2hlY2tJZkJpbkNsb3NlZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkyCgkvLyBjdXJyZW50QmluU2l6ZSA9IHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIGFzIHVpbnQxMjgKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgoJLy8gKmlmNDhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkzCgkvLyBnbG9iYWxzLnJvdW5kID49IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIChjdXJyZW50QmluU2l6ZSBhcyB1aW50NjQpCglnbG9iYWwgUm91bmQKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMCAvLyBjdXJyZW50QmluU2l6ZTogdW5zYWZlIHVpbnQxMjgKCWR1cAoJYml0bGVuCglpbnQgNjQKCTw9CgoJLy8gY3VycmVudEJpblNpemUgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCgkrCgk+PQoJYnogKmlmNDhfZW5kCgoJLy8gKmlmNDhfY29uc2VxdWVudAoJLy8gKmlmNDlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTk0CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmNDlfZW5kCgoJLy8gKmlmNDlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmNDlfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NwoJLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOCA9IGN1cnJlbnRCaW5TaXplICogKDM2NSBhcyB1aW50MTI4KQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNmQKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyBjdXJyZW50QmluU2l6ZSAqICgzNjUgYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWZyYW1lX2J1cnkgMSAvLyBhcHByb3hSb3VuZHNQZXJZZWFyOiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5OAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgLyBjdXJyZW50QmluU2l6ZQoJYnl0ZSAweDczNzQ2MTZiNjU0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJzdGFrZUFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAwIC8vIGN1cnJlbnRCaW5TaXplOiB1bnNhZmUgdWludDEyOAoJYi8KCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSAvIGN1cnJlbnRCaW5TaXplIG92ZXJmbG93ZWQgMTI4IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDE2CgktCglzd2FwCglzdWJzdHJpbmczCglmcmFtZV9idXJ5IDIgLy8gYXZnU3Rha2U6IHVpbnQxMjgKCgkvLyAqaWY1MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5OTkKCS8vIGF2Z1N0YWtlICE9PSAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliIT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDAzCgkvLyBhcHI6IHVpbnQxMjggPQoJLy8gICAgICAgICAgICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICoKCS8vICAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjcxMAoJYioKCWZyYW1lX2RpZyAyIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgliLwoJZnJhbWVfZGlnIDEgLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOAoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgliLwoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICpcbiAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAzIC8vIGFwcjogdWludDEyOAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDA3CgkvLyBhbHBoYTogdWludDEyOCA9IDEwIGFzIHVpbnQxMjgKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYQoJZnJhbWVfYnVyeSA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoKCS8vICppZjUxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMDkKCS8vIGF2Z1N0YWtlID4gMzAwMDAwMDAwMDAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NWQ5NjRiODAwCgliPgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMTAKCS8vIGFscGhhID0gOTAgYXMgdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDVhCglmcmFtZV9idXJ5IDQgLy8gYWxwaGE6IHVuc2FmZSB1aW50MTI4CgoqaWY1MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAxMgoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPQoJLy8gICAgICAgICAgICh0aGlzLndlaWdodGVkTW92aW5nQXZlcmFnZS52YWx1ZSAqICgoMTAwIGFzIHVpbnQxMjgpIC0gYWxwaGEpKSAvICgxMDAgYXMgdWludDEyOCkgKwoJLy8gICAgICAgICAgIChhcHIgKiBhbHBoYSkgLyAoMTAwIGFzIHVpbnQxMjgpCglieXRlIDB4NjU3NzZkNjEgLy8gImV3bWEiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYi0KCWIqCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWIvCglmcmFtZV9kaWcgMyAvLyBhcHI6IHVpbnQxMjgKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYioKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2NAoJYi8KCWIrCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAodGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgKiAoKDEwMCBhcyB1aW50MTI4KSAtIGFscGhhKSkgLyAoMTAwIGFzIHVpbnQxMjgpICtcbiAgICAgICAgICAoYXByICogYWxwaGEpIC8gKDEwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCippZjUwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE4CgkvLyB0aGlzLnNldFJvdW5kc1BlckRheSgpCgljYWxsc3ViIHNldFJvdW5kc1BlckRheQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE5CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAodGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgYXMgdWludDEyOCkgKiAodGhpcy5yb3VuZHNQZXJEYXkudmFsdWUgYXMgdWludDEyOCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICh0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSBhcyB1aW50MTI4KSAqICh0aGlzLnJvdW5kc1BlckRheS52YWx1ZSBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAyMAoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IDAKCWJ5dGUgMHg3MjY1Nzc2MTcyNjQ0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJyZXdhcmRBY2N1bXVsYXRvciIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDIxCgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCippZjQ4X2VuZDoKCXJldHN1YgoKLy8gc2V0Um91bmRzUGVyRGF5KCk6IHZvaWQKc2V0Um91bmRzUGVyRGF5OgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMjYKCS8vIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlID0gQVZHX1JPVU5EU19QRVJfREFZCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglpbnQgMzA4NTcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiaW5pdFN0b3JhZ2UocGF5KXZvaWQiCgltZXRob2QgImFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NCIKCW1ldGhvZCAicmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZCIKCW1ldGhvZCAiY2xhaW1Ub2tlbnMoKXZvaWQiCgltZXRob2QgImdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAidXBkYXRlQWxnb2RWZXIoc3RyaW5nKXZvaWQiCgltZXRob2QgImVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZCIKCW1ldGhvZCAiZ29PbmxpbmUocGF5LGJ5dGVbXSxieXRlW10sYnl0ZVtdLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImdvT2ZmbGluZSgpdm9pZCIKCW1ldGhvZCAibGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZCIKCW1ldGhvZCAicHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0WzI0XSx1aW50NjQpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9nYXMgKmFiaV9yb3V0ZV9pbml0U3RvcmFnZSAqYWJpX3JvdXRlX2FkZFN0YWtlICphYmlfcm91dGVfcmVtb3ZlU3Rha2UgKmFiaV9yb3V0ZV9jbGFpbVRva2VucyAqYWJpX3JvdXRlX2dldFN0YWtlckluZm8gKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZCAqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyICphYmlfcm91dGVfZXBvY2hCYWxhbmNlVXBkYXRlICphYmlfcm91dGVfZ29PbmxpbmUgKmFiaV9yb3V0ZV9nb09mZmxpbmUgKmFiaV9yb3V0ZV9saW5rVG9ORkQgKmFiaV9yb3V0ZV9wcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfVXBkYXRlQXBwbGljYXRpb246CgltZXRob2QgInVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIFVwZGF0ZUFwcGxpY2F0aW9uCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9mZWVTaW5rQWRkcgpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfbmZkUmVnaXN0cnlBcHBJZApidG9pCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNhbGxfVXBkYXRlQXBwbGljYXRpb24gKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfdXBkYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIHVwZGF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBcHBsaWNhdGlvbigpOiB2b2lkCnVwZGF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0CgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0xaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEnKSwKCS8vICAgICAgICdUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWFkZHIgTFo0VjJJUlZMQ1hGSks0UkVKVjRUQUdFS0VZVEEyR01SNlRDMjM0NE9CM0wzQUYzTVdYWjZaQUZJUQoJPT0KCgkvLyBUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50Cglhc3NlcnQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJYnRvaQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGNyZWF0aW5nQ29udHJhY3RJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oY3JlYXRpbmdDb250cmFjdElkOiB1aW50NjQsIHZhbGlkYXRvcklkOiB1aW50NjQsIHBvb2xJZDogdWludDY0LCBtaW5FbnRyeVN0YWtlOiB1aW50NjQpOiB2b2lkCi8vCi8vIEluaXRpYWxpemUgdGhlIHN0YWtpbmcgcG9vbCB3LyBvd25lciBhbmQgbWFuYWdlciwgYnV0IGNhbiBvbmx5IGJlIGNyZWF0ZWQgYnkgdGhlIHZhbGlkYXRvciBjb250cmFjdC4KLy8gQHBhcmFtIHt1aW50NjR9IGNyZWF0aW5nQ29udHJhY3RJZCAtIGlkIG9mIGNvbnRyYWN0IHRoYXQgY29uc3RydWN0ZWQgdXMgLSB0aGUgdmFsaWRhdG9yIGFwcGxpY2F0aW9uIChzaW5nbGUgZ2xvYmFsIGluc3RhbmNlKQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgLSBpZCBvZiB2YWxpZGF0b3Igd2UncmUgYSBzdGFraW5nIHBvb2wgb2YKLy8gQHBhcmFtIHt1aW50NjR9IHBvb2xJZCAtIHdoaWNoIHBvb2wgaWQgYXJlIHdlCi8vIEBwYXJhbSB7dWludDY0fSBtaW5FbnRyeVN0YWtlIC0gbWluaW11bSBhbW91bnQgdG8gYmUgaW4gcG9vbCwgYnV0IGFsc28gbWluaW11bSBhbW91bnQgYmFsYW5jZSBjYW4ndCBnbyBiZWxvdyAod2l0aG91dCByZW1vdmluZyBhbGwhKQpjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDQgMAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTA4CgkvLyBjcmVhdGluZ0NvbnRyYWN0SWQgPT09IDAKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTAKCS8vIGFzc2VydCh2YWxpZGF0b3JJZCA9PT0gMCkKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTEKCS8vIGFzc2VydChwb29sSWQgPT09IDApCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWludCAwCgk9PQoJYXNzZXJ0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTEzCgkvLyBhc3NlcnQodmFsaWRhdG9ySWQgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE0CgkvLyBhc3NlcnQocG9vbElkICE9PSAwKQoJZnJhbWVfZGlnIC0zIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE2CgkvLyBhc3NlcnQobWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC00IC8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJaW50IDEwMDAwMDAKCT49CgoJLy8gc3Rha2luZyBwb29sIG11c3QgaGF2ZSBtaW5pbXVtIGVudHJ5IG9mIDEgYWxnbwoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjExNwoJLy8gdGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUgPSBjcmVhdGluZ0NvbnRyYWN0SWQKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE4CgkvLyB0aGlzLnZhbGlkYXRvcklkLnZhbHVlID0gdmFsaWRhdG9ySWQKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzI0OTY0IC8vICJ2YWxpZGF0b3JJZCIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTkKCS8vIHRoaXMucG9vbElkLnZhbHVlID0gcG9vbElkCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMAoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlID0gMAoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgPSAwCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglpbnQgMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTIyCgkvLyB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUgPSBtaW5FbnRyeVN0YWtlCglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglmcmFtZV9kaWcgLTQgLy8gbWluRW50cnlTdGFrZTogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMjMKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGdsb2JhbHMucm91bmQKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWdsb2JhbCBSb3VuZAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI0CgkvLyB0aGlzLmVwb2NoTnVtYmVyLnZhbHVlID0gMAoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyNgoJLy8gdGhpcy5zZXRSb3VuZHNQZXJEYXkoKQoJY2FsbHN1YiBzZXRSb3VuZHNQZXJEYXkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI3CgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI4CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI5CgkvLyB0aGlzLnJld2FyZEFjY3VtdWxhdG9yLnZhbHVlID0gMAoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEzMAoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg2NTc3NmQ2MSAvLyAiZXdtYSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE0MgoJLy8gcmV0dXJuIFNDQk9YX1BFUkJPWCArIHRvdGFsTnVtQnl0ZXMgKiBTQ0JPWF9QRVJCWVRFOwoJaW50IDI1MDAKCWZyYW1lX2RpZyAtMSAvLyB0b3RhbE51bUJ5dGVzOiB1aW50NjQKCWludCA0MDAKCSoKCSsKCXJldHN1YgoKLy8gaW5pdFN0b3JhZ2UocGF5KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3RvcmFnZToKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKG1iclBheW1lbnQpIGZvciBpbml0U3RvcmFnZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGluaXRTdG9yYWdlKHBheSl2b2lkCgljYWxsc3ViIGluaXRTdG9yYWdlCglpbnQgMQoJcmV0dXJuCgovLyBpbml0U3RvcmFnZShtYnJQYXltZW50OiBQYXlUeG4pOiB2b2lkCi8vCi8vIENhbGxlZCBhZnRlciB3ZSdyZSBjcmVhdGVkIGFuZCB0aGVuIGZ1bmRlZCwgc28gd2UgY2FuIGNyZWF0ZSBvdXIgbGFyZ2Ugc3Rha2VycyBsZWRnZXIgc3RvcmFnZQovLyBDYWxsZXIgaGFzIHRvIGdldCBNQlIgYW1vdW50cyBmcm9tIFZhbGlkYXRvclJlZ2lzdHJ5IHRvIGtub3cgaG93IG11Y2ggdG8gZnVuZCB1cyB0byBjb3ZlciB0aGUgYm94IHN0b3JhZ2UgY29zdAovLyBJZiB0aGlzIGlzIHBvb2wgMSBBTkQgdGhlIHZhbGlkYXRvciBoYXMgc3BlY2lmaWVkIGEgcmV3YXJkIHRva2VuLCBvcHQtaW4gdG8gdGhhdCB0b2tlbgovLyBzbyB0aGF0IHRoZSB2YWxpZGF0b3IgY2FuIHNlZWQgdGhlIHBvb2wgd2l0aCBmdXR1cmUgcmV3YXJkcyBvZiB0aGF0IHRva2VuLgovLyBAcGFyYW0gbWJyUGF5bWVudCBwYXltZW50IGZyb20gY2FsbGVyIHdoaWNoIGNvdmVycyBtYnIgaW5jcmVhc2Ugb2YgbmV3IHN0YWtpbmcgcG9vbHMnIHN0b3JhZ2UKaW5pdFN0b3JhZ2U6Cglwcm90byAxIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1MwoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCgoJLy8gc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTYKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjAKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDEgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MQoJLy8gZXh0cmFNQlIgPSBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEgPyBBU1NFVF9IT0xESU5HX0ZFRSA6IDAKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMDoKCWJ6ICp0ZXJuYXJ5MF9mYWxzZQoJaW50IDEwMDAwMAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyBleHRyYU1CUjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MgoJLy8gUG9vbEluaXRNYnIgPQoJLy8gICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICBleHRyYU1CUiArCgkvLyAgICAgICB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDcgLyogJ3N0YWtlcnMnIG5hbWUgKi8gKyBsZW48U3Rha2VkSW5mbz4oKSAqIE1BWF9TVEFLRVJTX1BFUl9QT09MKQoJaW50IDEwMDAwMAoJZnJhbWVfZGlnIDIgLy8gZXh0cmFNQlI6IHVpbnQ2NAoJKwoJaW50IDEyODA3CgljYWxsc3ViIGNvc3RGb3JCb3hTdG9yYWdlCgkrCglmcmFtZV9idXJ5IDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IFBvb2xJbml0TWJyIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoiUG9vbEluaXRNYnIifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2OQoJLy8gdGhpcy5zdGFrZXJzLmNyZWF0ZSgpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCglpbnQgMTI4MDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTcxCgkvLyBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQxCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTczCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgICAgYXNzZXRBbW91bnQ6IDAsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NAoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTc1CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NgoJLy8gYXNzZXRBbW91bnQ6IDAKCWludCAwCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMV9lbmQ6CglyZXRzdWIKCi8vIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoc3Rha2VyKSBmb3IgYWRkU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlZEFtb3VudFBheW1lbnQpIGZvciBhZGRTdGFrZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoJY2FsbHN1YiBhZGRTdGFrZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgc3Rha2VyOiBBZGRyZXNzKTogdWludDY0Ci8vCi8vIEFkZHMgc3Rha2UgdG8gdGhlIGdpdmVuIGFjY291bnQuCi8vIENhbiBPTkxZIGJlIGNhbGxlZCBieSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0IHRoYXQgY3JlYXRlZCB1cwovLyBNdXN0IHJlY2VpdmUgcGF5bWVudCBmcm9tIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIGFtb3VudCBiZWluZyBzdGFrZWQuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IHByaW9yIHBheW1lbnQgY29taW5nIGZyb20gdmFsaWRhdG9yIGNvbnRyYWN0IHRvIHVzIG9uIGJlaGFsZiBvZiBzdGFrZXIuCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgYWRkaW5nIG5ldyBzdGFrZQovLyBAdGhyb3dzIHtFcnJvcn0gLSBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0YWtpbmcgcG9vbCBpcyBmdWxsLgovLyBAcmV0dXJucyB7dWludDY0fSBuZXcgJ2VudHJ5IHJvdW5kJyByb3VuZCBudW1iZXIgb2Ygc3Rha2UgYWRkCmFkZFN0YWtlOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTIKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTUKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcywKCS8vICAgICAgICdzdGFrZSBjYW4gb25seSBiZSBhZGRlZCB2aWEgdGhlIHZhbGlkYXRvciBjb250cmFjdCcKCS8vICAgICApCgl0eG4gU2VuZGVyCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoKCS8vIHN0YWtlIGNhbiBvbmx5IGJlIGFkZGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTk5CgkvLyBhc3NlcnQoc3Rha2VyICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIwMgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMDYKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MsCgkvLyAgICAgICByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjE1CgkvLyBlbnRyeVJvdW5kID0gZ2xvYmFscy5yb3VuZCArIEFMR09SQU5EX1NUQUtJTkdfQkxPQ0tfREVMQVkKCWdsb2JhbCBSb3VuZAoJaW50IDMyMAoJKwoJZnJhbWVfYnVyeSAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTYKCS8vIGZpcnN0RW1wdHkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50CglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjAKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMiAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjEKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWZyYW1lX2RpZyAyIC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjI2CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyOQoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMwCgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjNfZW5kCgoJLy8gKmlmM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMzCgkvLyBjbXBTdGFrZXIuZW50cnlSb3VuZCA9IGVudHJ5Um91bmQKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDU2IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM2CgkvLyB0aGlzLnN0YWtlcnMudmFsdWVbaV0gPSBjbXBTdGFrZXIKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM4CgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJYiAqYWRkU3Rha2UqcmV0dXJuCgoqaWYzX2VuZDoKCS8vICppZjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjQwCgkvLyBmaXJzdEVtcHR5ID09PSAwICYmIGNtcFN0YWtlci5hY2NvdW50ID09PSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDI6CglieiAqaWY0X2VuZAoKCS8vICppZjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0MQoJLy8gZmlyc3RFbXB0eSA9IGkgKyAxCglmcmFtZV9kaWcgMyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gZmlyc3RFbXB0eTogdWludDY0CgoqaWY0X2VuZDoKCipmb3JfMF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjUKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0NQoJLy8gZmlyc3RFbXB0eSA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjVfZW5kCgoJLy8gKmlmNV9jb25zZXF1ZW50CgkvLyBTdGFraW5nIHBvb2wgZnVsbAoJZXJyCgoqaWY1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTIKCS8vIGFzc2VydChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCA+PSB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUsICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnKQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglhcHBfZ2xvYmFsX2dldAoJPj0KCgkvLyBtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTQKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMudmFsdWVbZmlyc3RFbXB0eSAtIDFdLmFjY291bnQgPT09IGdsb2JhbHMuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAxCgktCglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTUKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtmaXJzdEVtcHR5IC0gMV0gPSB7CgkvLyAgICAgICBhY2NvdW50OiBzdGFrZXIsCgkvLyAgICAgICBiYWxhbmNlOiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCwKCS8vICAgICAgIHRvdGFsUmV3YXJkZWQ6IDAsCgkvLyAgICAgICByZXdhcmRUb2tlbkJhbGFuY2U6IDAsCgkvLyAgICAgICBlbnRyeVJvdW5kOiBlbnRyeVJvdW5kLAoJLy8gICAgIH0KCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50IDEKCS0KCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gZW50cnlSb3VuZDogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI2MgoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlICs9IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjYzCgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKKmFkZFN0YWtlKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKLy8gcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX3JlbW92ZVN0YWtlOgoJLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoc3Rha2VyKSBmb3IgcmVtb3ZlU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoJY2FsbHN1YiByZW1vdmVTdGFrZQoJaW50IDEKCXJldHVybgoKLy8gcmVtb3ZlU3Rha2Uoc3Rha2VyOiBBZGRyZXNzLCBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gUmVtb3ZlcyBzdGFrZSBvbiBiZWhhbGYgb2YgY2FsbGVyIChyZW1vdmluZyBvd24gc3Rha2UpLiAgSWYgYW55IHRva2VuIHJld2FyZHMgZXhpc3QsIHRob3NlIGFyZSBhbHdheXMgc2VudCBpbgovLyBmdWxsLiBBbHNvIG5vdGlmaWVzIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIHRoaXMgcG9vbHMgdmFsaWRhdG9yIG9mIHRoZSBzdGFrZXIgLyBiYWxhbmNlIGNoYW5nZXMuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gYWNjb3VudCB0byByZW1vdmUuICBub3JtYWxseSBzYW1lIGFzIHNlbmRlciwgYnV0IHRoZSB2YWxpZGF0b3Igb3duZXIgb3IgbWFuYWdlciBjYW4gYWxzbyBjYWxsCi8vIHRoaXMgdG8gcmVtb3ZlIHRoZSBzcGVjaWZpZWQgc3Rha2VyIGV4cGxpY2l0bHkuIFRoZSByZW1vdmVkIHN0YWtlIE1VU1Qgb25seSBnbyB0byB0aGUgc3Rha2VyIG9mIGNvdXJzZS4gIFRoaXMgaXMKLy8gc28gYSB2YWxpZGF0b3IgY2FuIHNodXQgZG93biBhIHBvb29sIGFuZCByZWZ1bmQgdGhlIHN0YWtlcnMuICBJdCBjYW4gYWxzbyBiZSB1c2VkIHRvIGtpY2sgb3V0IHN0YWtlcnMgd2hvIG5vIGxvbmdlcgovLyBtZWV0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzIChkZXRlcm1pbmVkIGJ5IHRoZSBub2RlIGRhZW1vbikuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1Vuc3Rha2UgLSBUaGUgYW1vdW50IG9mIHN0YWtlIHRvIGJlIHJlbW92ZWQuICBTcGVjaWZ5IDAgdG8gcmVtb3ZlIGFsbCBzdGFrZS4KLy8gQHRocm93cyB7RXJyb3J9IElmIHRoZSBhY2NvdW50IGhhcyBpbnN1ZmZpY2llbnQgYmFsYW5jZSBvciBpZiB0aGUgYWNjb3VudCBpcyBub3QgZm91bmQuCnJlbW92ZVN0YWtlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNgoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgwCgkvLyBzdGFrZXIgIT09IHRoaXMudHhuLnNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJdHhuIFNlbmRlcgoJIT0KCWJ6ICppZjZfZW5kCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLAoJLy8gICAgICAgICAnSWYgc3Rha2VyIGlzIG5vdCBzZW5kZXIgaW4gcmVtb3ZlU3Rha2UgY2FsbCwgdGhlbiBzZW5kZXIgTVVTVCBiZSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICAgICkKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIElmIHN0YWtlciBpcyBub3Qgc2VuZGVyIGluIHJlbW92ZVN0YWtlIGNhbGwsIHRoZW4gc2VuZGVyIE1VU1QgYmUgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKKmlmNl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjg3CgkvLyB0aGlzLmNoZWNrSWZCaW5DbG9zZWQoKQoJY2FsbHN1YiBjaGVja0lmQmluQ2xvc2VkCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8xX2VuZAoKCS8vICppZjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjkwCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTEKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5MwoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjk0CgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjhfZW5kCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyAqaWY5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5NQoJLy8gYW1vdW50VG9VbnN0YWtlID09PSAwCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmOV9lbmQKCgkvLyAqaWY5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTcKCS8vIGFtb3VudFRvVW5zdGFrZSA9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfYnVyeSAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoKKmlmOV9lbmQ6CgkvLyAqaWYxMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTkKCS8vIGNtcFN0YWtlci5iYWxhbmNlIDwgYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0Cgk8CglieiAqaWYxMF9lbmQKCgkvLyAqaWYxMF9jb25zZXF1ZW50CgkvLyBJbnN1ZmZpY2llbnQgYmFsYW5jZQoJZXJyCgoqaWYxMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzAyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSAtPSBhbW91bnRUb1Vuc3Rha2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCS0KCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwMwoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLT0gYW1vdW50VG9VbnN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDUKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDYKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPiAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDggOAoJYnRvaQoJaW50IDAKCT4KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vICppZjEyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwOAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjEyX2Vsc2UKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzA5CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzEwCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTEKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDMgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgICAgICAgYXNzZXRSZWNlaXZlcjogc3Rha2VyLAoJLy8gICAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE4CgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkKCWZyYW1lX2RpZyAzIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTkKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyMAoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjIKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzIzCgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTJfZW5kCgoqaWYxMl9lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyOAoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTJfZW5kOgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMzNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgIGNtcFN0YWtlci5iYWxhbmNlID09PSAwIHx8IGNtcFN0YWtlci5iYWxhbmNlID49IHRoaXMubWluRW50cnlTdGFrZS52YWx1ZSwKCS8vICAgICAgICAgICAnY2Fubm90IHJlZHVjZSBiYWxhbmNlIGJlbG93IG1pbmltdW0gYWxsb3dlZCBzdGFrZSB1bmxlc3MgYWxsIGlzIHJlbW92ZWQnCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWR1cAoJYm56ICpza2lwX29yMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWJ5dGUgMHg2ZDY5NmU0NTZlNzQ3Mjc5NTM3NDYxNmI2NSAvLyAibWluRW50cnlTdGFrZSIKCWFwcF9nbG9iYWxfZ2V0Cgk+PQoJfHwKCipza2lwX29yMDoKCS8vIGNhbm5vdCByZWR1Y2UgYmFsYW5jZSBiZWxvdyBtaW5pbXVtIGFsbG93ZWQgc3Rha2UgdW5sZXNzIGFsbCBpcyByZW1vdmVkCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQyCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgYW1vdW50OiBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgcmVjZWl2ZXI6IHN0YWtlciwKCS8vICAgICAgICAgICBub3RlOiAndW5zdGFrZWQnLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDMKCS8vIGFtb3VudDogYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0NAoJLy8gcmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDUKCS8vIG5vdGU6ICd1bnN0YWtlZCcKCWJ5dGUgMHg3NTZlNzM3NDYxNmI2NTY0IC8vICJ1bnN0YWtlZCIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQ3CgkvLyBzdGFrZXJSZW1vdmVkID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gc3Rha2VyUmVtb3ZlZDogYm9vbAoKCS8vICppZjEzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0OAoJLy8gY21wU3Rha2VyLmJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTAKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSAtPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MQoJLy8gY21wU3Rha2VyLmFjY291bnQgPSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCAwCglnbG9iYWwgWmVyb0FkZHJlc3MKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MgoJLy8gY21wU3Rha2VyLnRvdGFsUmV3YXJkZWQgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0MAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTQKCS8vIHN0YWtlclJlbW92ZWQgPSB0cnVlCglpbnQgMQoJZnJhbWVfYnVyeSA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCippZjEzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTcKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTkKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgNSAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjAKCS8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4ID0gKGFtb3VudFRvVW5zdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkKCWZyYW1lX2RpZyAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDUgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCWl0b2IKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAoYW1vdW50VG9VbnN0YWtlIGFzIHVpbnQxMjgpICogKHJvdW5kc0xlZnRJbkJpbiBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2MQoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlID0gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgliLQoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2NgoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgICBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQsCgkvLyAgICAgICAgICAgICBzdGFrZXJSZW1vdmVkLAoJLy8gICAgICAgICAgIF0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzY3CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjgKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgICAgIHsgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfSwKCS8vICAgICAgICAgICAgIHN0YWtlciwKCS8vICAgICAgICAgICAgIGFtb3VudFRvVW5zdGFrZSwKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIHN0YWtlclJlbW92ZWQsCgkvLyAgICAgICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mzc2CgkvLyByZXR1cm47CglyZXRzdWIKCippZjhfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGFjY291bnQgbm90IGZvdW5kCgllcnIKCXJldHN1YgoKLy8gY2xhaW1Ub2tlbnMoKXZvaWQKKmFiaV9yb3V0ZV9jbGFpbVRva2VuczoKCS8vIGV4ZWN1dGUgY2xhaW1Ub2tlbnMoKXZvaWQKCWNhbGxzdWIgY2xhaW1Ub2tlbnMKCWludCAxCglyZXR1cm4KCi8vIGNsYWltVG9rZW5zKCk6IHZvaWQKLy8KLy8gQ2xhaW1zIGFsbCB0aGUgYXZhaWxhYmxlIHJld2FyZCB0b2tlbnMgYSBzdGFrZXIgaGFzIGF2YWlsYWJsZSwgc2VuZGluZyB0aGVpciBlbnRpcmUgYmFsYW5jZSB0byB0aGUgc3Rha2VyIGZyb20KLy8gcG9vbCAxIChlaXRoZXIgZGlyZWN0bHksIG9yIHZpYSB2YWxpZGF0b3ItPnBvb2wxIHRvIHBheSBpdCBvdXQpCi8vIEFsc28gbm90aWZpZXMgdGhlIHZhbGlkYXRvciBjb250cmFjdCBmb3IgdGhpcyBwb29scyB2YWxpZGF0b3Igb2YgdGhlIHN0YWtlciAvIGJhbGFuY2UgY2hhbmdlcy4KY2xhaW1Ub2tlbnM6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDAgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8yX2VuZAoKCS8vICppZjE0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5NAoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTUKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE0X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTcKCS8vIGNtcFN0YWtlciA9IGNsb25lKHRoaXMuc3Rha2Vycy52YWx1ZVtpXSkKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWYxNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTgKCS8vIGNtcFN0YWtlci5hY2NvdW50ID09PSBzdGFrZXIKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglieiAqaWYxNV9lbmQKCgkvLyAqaWYxNV9jb25zZXF1ZW50CgkvLyAqaWYxNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjE2X2VuZAoKCS8vICppZjE2X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDAKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMTZfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwMgoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vICppZjE3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwNAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjE3X2Vsc2UKCgkvLyAqaWYxN19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA1CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA2CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDcKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDQgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDEyCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCksCgkvLyAgICAgICAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxMwoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgNCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE0CgkvLyBhc3NldFJlY2VpdmVyOiBzdGFrZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxNQoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MTcKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDMgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE4CgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTdfZW5kCgoqaWYxN19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyMwoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MjQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyOAoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzMwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzNAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDM1CgkvLyBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ0MwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWYxNV9lbmQ6CgoqZm9yXzJfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzkzCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8yCgoqZm9yXzJfZW5kOgoJLy8gYWNjb3VudCBub3QgZm91bmQKCWVycgoJcmV0c3ViCgovLyBnZXRTdGFrZXJJbmZvKGFkZHJlc3MpKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFN0YWtlckluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZXJJbmZvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFN0YWtlckluZm8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTdGFrZXJJbmZvKHN0YWtlcjogQWRkcmVzcyk6IFN0YWtlZEluZm8KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIGEgZ2l2ZW4gc3Rha2VyLgovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEByZXR1cm5zIHtTdGFrZWRJbmZvfSAtIFRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIHRoZSBnaXZlbiBzdGFrZXIuCi8vIEB0aHJvd3Mge0Vycm9yfSAtIElmIHRoZSBzdGFrZXIncyBhY2NvdW50IGlzIG5vdCBmb3VuZC4KZ2V0U3Rha2VySW5mbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8zOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OQoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAyMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAyMDAKCTwKCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NjAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE4X2VuZDoKCS8vICppZjE5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ2MgoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldLmFjY291bnQgPT09IHN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCT09CglieiAqaWYxOV9lbmQKCgkvLyAqaWYxOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDYzCgkvLyByZXR1cm4gdGhpcy5zdGFrZXJzLnZhbHVlW2ldOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJYiAqZ2V0U3Rha2VySW5mbypyZXR1cm4KCippZjE5X2VuZDoKCipmb3JfM19jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NTgKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzMKCipmb3JfM19lbmQ6CgkvLyBhY2NvdW50IG5vdCBmb3VuZAoJZXJyCgoqZ2V0U3Rha2VySW5mbypyZXR1cm46CgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZDoKCS8vIGFtb3VudFRvU2VuZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAyIChzdGFrZXIpIGZvciBwYXlUb2tlblJld2FyZCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBwYXlUb2tlblJld2FyZAoJaW50IDEKCXJldHVybgoKLy8gcGF5VG9rZW5SZXdhcmQoc3Rha2VyOiBBZGRyZXNzLCByZXdhcmRUb2tlbjogdWludDY0LCBhbW91bnRUb1NlbmQ6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gW0ludGVybmFsIHByb3RvY29sIG1ldGhvZF0gUmVtb3ZlIGEgc3BlY2lmaWVkIGFtb3VudCBvZiAnY29tbXVuaXR5IHRva2VuJyByZXdhcmRzIGZvciBhIHN0YWtlci4KLy8gVGhpcyBjYW4gT05MWSBiZSBjYWxsZWQgYnkgb3VyIHZhbGlkYXRvciBhbmQgb25seSBpZiB3ZSdyZSBwb29sIDEgLSB3aXRoIHRoZSB0b2tlbi4KLy8gTm90ZTogdGhpcyBjYW4gYWxzbyBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIGFzIHBhcnQgb2YgT1dORVIgd2FudGluZyB0byBzZW5kIHRoZSByZXdhcmQgdG9rZW5zCi8vIHNvbWV3aGVyZSBlbHNlIChpZSBpZiB0aGV5J3JlIHN1bnNldHRpbmcgdGhlaXIgdmFsaWRhdG9yIGFuZCBuZWVkIHRoZSByZXdhcmQgdG9rZW5zIGJhY2spLgovLyBJdCdzIHVwIHRvIHRoZSB2YWxpZGF0b3IgdG8gZW5zdXJlIHRoYXQgdGhlIGJhbGFuY2UgaW4gcmV3YXJkVG9rZW5IZWxkQmFjayBpcyBob25vcmVkLgovLyBAcGFyYW0gc3Rha2VyIC0gdGhlIHN0YWtlciBhY2NvdW50IHRvIHNlbmQgcmV3YXJkcyB0bwovLyBAcGFyYW0gcmV3YXJkVG9rZW4gLSBpZCBvZiByZXdhcmQgdG9rZW4gKHRvIGF2b2lkIHJlLWVudHJhbmN5IGluIGNhbGxpbmcgdmFsaWRhdG9yIGJhY2sgdG8gZ2V0IGlkKQovLyBAcGFyYW0gYW1vdW50VG9TZW5kIC0gYW1vdW50IHRvIHNlbmQgdGhlIHN0YWtlciAodGhlcmUgaXMgc2lnbmlmaWNhbnQgdHJ1c3QgaGVyZSghKSAtIGFsc28gd2h5IG9ubHkgdmFsaWRhdG9yIGNhbiBjYWxsIHVzCnBheVRva2VuUmV3YXJkOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ4MQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKS5hZGRyZXNzLAoJLy8gICAgICAgJ3RoaXMgY2FuIG9ubHkgYmUgY2FsbGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCT09CgoJLy8gdGhpcyBjYW4gb25seSBiZSBjYWxsZWQgdmlhIHRoZSB2YWxpZGF0b3IgY29udHJhY3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODUKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ211c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMnKQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoKCS8vIG11c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODYKCS8vIGFzc2VydChyZXdhcmRUb2tlbiAhPT0gMCwgJ2NhbiBvbmx5IGNsYWltIHRva2VuIHJld2FyZHMgZnJvbSB2YWxpZGF0b3IgdGhhdCBoYXMgdGhlbScpCglmcmFtZV9kaWcgLTIgLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gY2FuIG9ubHkgY2xhaW0gdG9rZW4gcmV3YXJkcyBmcm9tIHZhbGlkYXRvciB0aGF0IGhhcyB0aGVtCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDg5CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbiksCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50VG9TZW5kLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDkwCgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbikKCWZyYW1lX2RpZyAtMiAvLyByZXdhcmRUb2tlbjogdWludDY0CglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0OTEKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ5MgoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudFRvU2VuZAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU2VuZDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyB1cGRhdGVBbGdvZFZlcihzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyOgoJLy8gYWxnb2RWZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHVwZGF0ZUFsZ29kVmVyKHN0cmluZyl2b2lkCgljYWxsc3ViIHVwZGF0ZUFsZ29kVmVyCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBbGdvZFZlcihhbGdvZFZlcjogc3RyaW5nKTogdm9pZAovLwovLyBVcGRhdGUgdGhlIChob25vciBzeXN0ZW0pIGFsZ29kIHZlcnNpb24gZm9yIHRoZSBub2RlIGFzc29jaWF0ZWQgdG8gdGhpcyBwb29sLiAgVGhlIG5vZGUgbWFuYWdlbWVudCBkYWVtb24KLy8gc2hvdWxkIGNvbXBhcmUgaXRzIGN1cnJlbnQgbm9kZXMgdmVyc2lvbiB0byB0aGUgdmVyc2lvbiBzdG9yZWQgaW4gZ2xvYmFsIHN0YXRlLCB1cGRhdGluZyB3aGVuIGRpZmZlcmVudC4KLy8gVGhlIHJldGkgbm9kZSBkYWVtb24gY29tcG9zZXMgaXRzIG93biB2ZXJzaW9uIHN0cmluZyB1c2luZyBmb3JtYXQ6Ci8vIHttYWpvcn0ue21pbm9yfS57YnVpbGR9IHticmFuY2h9IFt7Y29tbWl0IGhhc2h9XSwKLy8gaWU6IDMuMjIuMCByZWwvc3RhYmxlIFs2YjUwODk3NV0KLy8gWyBPTkxZIE9XTkVSIE9SIE1BTkFHRVIgQ0FOIENBTEwgXQovLyBAcGFyYW0ge3N0cmluZ30gYWxnb2RWZXIgLSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBhbGdvcmFuZCBub2RlIGRhZW1vbiB2ZXJzaW9uIChyZXRpIG5vZGUgZGFlbW9uIGNvbXBvc2VzIGl0cyBvd24gbWV0YSB2ZXJzaW9uKQp1cGRhdGVBbGdvZFZlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDYKCS8vIGFzc2VydCh0aGlzLmlzT3duZXJPck1hbmFnZXJDYWxsZXIoKSwgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicpCgljYWxsc3ViIGlzT3duZXJPck1hbmFnZXJDYWxsZXIKCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDcKCS8vIHRoaXMuYWxnb2RWZXIudmFsdWUgPSBhbGdvZFZlcgoJYnl0ZSAweDYxNmM2NzZmNjQ1NjY1NzIgLy8gImFsZ29kVmVyIgoJZnJhbWVfZGlnIC0xIC8vIGFsZ29kVmVyOiBzdHJpbmcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZAoqYWJpX3JvdXRlX2Vwb2NoQmFsYW5jZVVwZGF0ZToKCS8vIGV4ZWN1dGUgZXBvY2hCYWxhbmNlVXBkYXRlKCl2b2lkCgljYWxsc3ViIGVwb2NoQmFsYW5jZVVwZGF0ZQoJaW50IDEKCXJldHVybgoKLy8gZXBvY2hCYWxhbmNlVXBkYXRlKCk6IHZvaWQKLy8KLy8gVXBkYXRlcyB0aGUgYmFsYW5jZSBvZiBzdGFrZXJzIGluIHRoZSBwb29sIGJhc2VkIG9uIHRoZSByZWNlaXZlZCAncmV3YXJkcycgKGN1cnJlbnQgYmFsYW5jZSB2cyBrbm93biBzdGFrZWQgYmFsYW5jZSkKLy8gc3Rha2VycyBvdXRzdGFuZGluZyBiYWxhbmNlIGlzIGFkanVzdGVkIGJhc2VkIG9uIHRoZWlyICUgb2Ygc3Rha2UgYW5kIHRpbWUgaW4gdGhlIGN1cnJlbnQgZXBvY2ggLSBzbyB0aGF0IGJhbGFuY2UKLy8gY29tcG91bmRzIG92ZXIgdGltZSBhbmQgc3Rha2VyIGNhbiByZW1vdmUgdGhhdCBhbW91bnQgYXQgd2lsbC4KLy8gVGhlIHZhbGlkYXRvciBpcyBwYWlkIHRoZWlyIHBlcmNlbnRhZ2UgZWFjaCBlcG9jaCBwYXlvdXQuCi8vCi8vIE5vdGU6IEFOWU9ORSBjYW4gY2FsbCB0aGlzLgplcG9jaEJhbGFuY2VVcGRhdGU6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzNgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjAKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjEKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUyMgoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjkKCS8vIGVwb2NoUm91bmRMZW5ndGggPSB2YWxpZGF0b3JDb25maWcuZXBvY2hSb3VuZExlbmd0aCBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2OSA0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMiAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMQoJLy8gdGhpc0Vwb2NoQmVnaW4gPSBjdXJSb3VuZCAtIChjdXJSb3VuZCAlIGVwb2NoUm91bmRMZW5ndGgpCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCSUKCS0KCWZyYW1lX2J1cnkgMyAvLyB0aGlzRXBvY2hCZWdpbjogdWludDY0CgoJLy8gKmlmMjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM0CgkvLyB0aGlzLmxhc3RQYXlvdXQuZXhpc3RzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoJc3dhcAoJcG9wCglieiAqaWYyMF9lbmQKCgkvLyAqaWYyMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM1CgkvLyBsYXN0UGF5b3V0RXBvY2ggPSB0aGlzLmxhc3RQYXlvdXQudmFsdWUgLSAodGhpcy5sYXN0UGF5b3V0LnZhbHVlICUgZXBvY2hSb3VuZExlbmd0aCkKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgklCgktCglmcmFtZV9idXJ5IDQgLy8gbGFzdFBheW91dEVwb2NoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM5CgkvLyBhc3NlcnQobGFzdFBheW91dEVwb2NoICE9PSB0aGlzRXBvY2hCZWdpbiwgImNhbid0IGNhbGwgZXBvY2hCYWxhbmNlVXBkYXRlIGluIHNhbWUgZXBvY2ggYXMgcHJpb3IgY2FsbCIpCglmcmFtZV9kaWcgNCAvLyBsYXN0UGF5b3V0RXBvY2g6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJIT0KCgkvLyBjYW4ndCBjYWxsIGVwb2NoQmFsYW5jZVVwZGF0ZSBpbiBzYW1lIGVwb2NoIGFzIHByaW9yIGNhbGwKCWFzc2VydAoKKmlmMjBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU0MgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDUKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGN1clJvdW5kCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDYKCS8vIHRoaXMuZXBvY2hOdW1iZXIudmFsdWUgKz0gMQoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgkrCglieXRlIDB4NjU3MDZmNjM2ODRlNzU2ZDYyNjU3MiAvLyAiZXBvY2hOdW1iZXIiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTEKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDUgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1MgoJLy8gcG9vbE9uZUFwcElEID0gdGhpcy5hcHAuaWQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTMKCS8vIHBvb2xPbmVBZGRyZXNzID0gdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKCS8vICppZjIxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OAoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjIxX2VuZAoKCS8vICppZjIxX2NvbnNlcXVlbnQKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OQoJLy8gdGhpcy5wb29sSWQudmFsdWUgIT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJIT0KCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjEKCS8vIHBvb2xPbmVBcHBJRCA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0UG9vbEFwcElkPih7CgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWUsIDFdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTYyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCAxXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjUKCS8vIHBvb2xPbmVBZGRyZXNzID0gQXBwSUQuZnJvbVVpbnQ2NChwb29sT25lQXBwSUQpLmFkZHJlc3MKCWZyYW1lX2RpZyA2IC8vIHBvb2xPbmVBcHBJRDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKKmlmMjJfZW5kOgoJLy8gKmlmMjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcwCgkvLyB0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoJYnogKmlmMjNfZWxzZQoKCS8vICppZjIzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzEKCS8vIHRva2VuUGF5b3V0UmF0aW8gPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLnNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWIgKmlmMjNfZW5kCgoqaWYyM19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU3NwoJLy8gdG9rZW5QYXlvdXRSYXRpbyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xPbmVBcHBJRCksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3sgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzgKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQocG9vbE9uZUFwcElEKQoJZnJhbWVfZGlnIDYgLy8gcG9vbE9uZUFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzkKCS8vIG1ldGhvZEFyZ3M6IFt7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH1dCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJZnJhbWVfYnVyeSA4IC8vIHRva2VuUGF5b3V0UmF0aW86IFBvb2xUb2tlblBheW91dFJhdGlvCgoqaWYyM19lbmQ6CgoqaWYyMV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTg2CgkvLyB2YWxpZGF0b3JTdGF0ZSA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yU3RhdGU+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnZXRWYWxpZGF0b3JTdGF0ZSh1aW50NjQpKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1ODcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU4OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTkwCgkvLyByZXdhcmRUb2tlbkhlbGRCYWNrID0gdmFsaWRhdG9yU3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDkgLy8gdmFsaWRhdG9yU3RhdGU6ICh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMTAgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU5NgoJLy8gYWxnb1Jld2FyZEF2YWlsID0gdGhpcy5hcHAuYWRkcmVzcy5iYWxhbmNlIC0gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLSB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1OTcKCS8vIGlzUG9vbFNhdHVyYXRlZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAxMiAvLyBpc1Bvb2xTYXR1cmF0ZWQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTk4CgkvLyBhbGdvU2F0dXJhdGlvbkFtdCA9IHRoaXMuYWxnb1NhdHVyYXRpb25MZXZlbCgpCgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWZyYW1lX2J1cnkgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoKCS8vICppZjI0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNgoJLy8gdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkID4gYWxnb1NhdHVyYXRpb25BbXQKCWZyYW1lX2RpZyA5IC8vIHZhbGlkYXRvclN0YXRlOiAodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMCA4CglidG9pCglmcmFtZV9kaWcgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoJPgoJYnogKmlmMjRfZW5kCgoJLy8gKmlmMjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNwoJLy8gaXNQb29sU2F0dXJhdGVkID0gdHJ1ZQoJaW50IDEKCWZyYW1lX2J1cnkgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCgoqaWYyNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjEzCgkvLyB0b2tlblJld2FyZEF2YWlsID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNAoJLy8gdG9rZW5SZXdhcmRQYWlkT3V0ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE1CgkvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE2CgkvLyBleGNlc3NUb0ZlZVNpbmsgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxNyAvLyBleGNlc3NUb0ZlZVNpbms6IHVpbnQ2NAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNwoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2MTgKCS8vIHRva2VuUmV3YXJkQmFsID0KCS8vICAgICAgICAgcG9vbE9uZUFkZHJlc3MuYXNzZXRCYWxhbmNlKEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDcgLy8gcG9vbE9uZUFkZHJlc3M6IGFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEwIC8vIHJld2FyZFRva2VuSGVsZEJhY2s6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxOCAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gKmlmMjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjIzCgkvLyB0b2tlblJld2FyZEJhbCA+PSB2YWxpZGF0b3JDb25maWcucmV3YXJkUGVyUGF5b3V0CglmcmFtZV9kaWcgMTggLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTYxIDgKCWJ0b2kKCT49CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjI5CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHRva2VuUGF5b3V0UmF0aW8ucG9vbFBjdE9mV2hvbGVbdGhpcy5wb29sSWQudmFsdWUgLSAxXQoJZnJhbWVfZGlnIDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWludCAwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfYnVyeSAxOSAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYzMgoJLy8gdG9rZW5SZXdhcmRBdmFpbCA9IHdpZGVSYXRpbyhbdmFsaWRhdG9yQ29uZmlnLnJld2FyZFBlclBheW91dCwgb3VyUG9vbFBjdE9mV2hvbGVdLCBbMV8wMDBfMDAwXSkKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2MSA4CglidG9pCglmcmFtZV9kaWcgMTkgLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJbXVsdwoJaW50IDAKCWludCAxXzAwMF8wMDAKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKKmlmMjZfZW5kOgoKKmlmMjVfZW5kOgoJLy8gKmlmMjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjM1CgkvLyB0b2tlblJld2FyZEF2YWlsID09PSAwCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjI3X2VuZAoKCS8vICppZjI3X2NvbnNlcXVlbnQKCS8vICppZjI4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0MAoJLy8gYWxnb1Jld2FyZEF2YWlsIDwgMV8wMDBfMDAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAxXzAwMF8wMDAKCTwKCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDEKCS8vIGxvZygnIXRva2VuJiYhbm9hbGdvIHRvIHBheScpCglieXRlIDB4MjE3NDZmNmI2NTZlMjYyNjIxNmU2ZjYxNmM2NzZmMjA3NDZmMjA3MDYxNzkgLy8gIiF0b2tlbiYmIW5vYWxnbyB0byBwYXkiCglsb2cKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjQyCgkvLyByZXR1cm47CglyZXRzdWIKCippZjI4X2VuZDoKCippZjI3X2VuZDoKCS8vICppZjI5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0NgoJLy8gaXNQb29sU2F0dXJhdGVkCglmcmFtZV9kaWcgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCglieiAqaWYyOV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjI5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDkKCS8vIGRpbWluaXNoZWRSZXdhcmQgPSB3aWRlUmF0aW8oW2FsZ29SZXdhcmRBdmFpbCwgYWxnb1NhdHVyYXRpb25BbXRdLCBbdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkXSkKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDEzIC8vIGFsZ29TYXR1cmF0aW9uQW10OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTAgOAoJYnRvaQoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MQoJLy8gZXhjZXNzVG9GZWVTaW5rID0gYWxnb1Jld2FyZEF2YWlsIC0gZGltaW5pc2hlZFJld2FyZAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE3IC8vIGV4Y2Vzc1RvRmVlU2luazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgICBhbW91bnQ6IGV4Y2Vzc1RvRmVlU2luaywKCS8vICAgICAgICAgcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpLAoJLy8gICAgICAgICBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NTMKCS8vIGFtb3VudDogZXhjZXNzVG9GZWVTaW5rCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1NAoJLy8gcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpCgljYWxsc3ViIGdldEZlZVNpbmsKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU1CgkvLyBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycKCWJ5dGUgMHg3MDZmNmY2YzIwNzM2MTc0NzU3MjYxNzQ2NTY0MmMyMDY1Nzg2MzY1NzM3MzIwNzQ2ZjIwNjY2NTY1MjA3MzY5NmU2YiAvLyAicG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luayIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU4CgkvLyBhbGdvUmV3YXJkQXZhaWwgPSBkaW1pbmlzaGVkUmV3YXJkCglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CglmcmFtZV9idXJ5IDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgliICppZjI5X2VuZAoKKmlmMjlfZWxzZWlmMV9jb25kaXRpb246CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU5CgkvLyB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjIKCS8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0ID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICBbYWxnb1Jld2FyZEF2YWlsLCB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yIGFzIHVpbnQ2NF0sCgkvLyAgICAgICAgIFsxXzAwMF8wMDBdCgkvLyAgICAgICApCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3MyA0CglidG9pCgltdWx3CglpbnQgMAoJaW50IDFfMDAwXzAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjgKCS8vIGFsZ29SZXdhcmRBdmFpbCAtPSB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vICppZjMwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY3NQoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgPiAwCglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjMwX2VuZAoKCS8vICppZjMwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NzgKCS8vIG1hbmFnZXJUb3BPZmYgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCgkvLyAqaWYzMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODAKCS8vIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgJiYKCS8vICAgICAgICAgICB2YWxpZGF0b3JDb25maWcubWFuYWdlci5iYWxhbmNlIC0gdmFsaWRhdG9yQ29uZmlnLm1hbmFnZXIubWluQmFsYW5jZSA8IDJfMTAwXzAwMAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3NyAzMgoJIT0KCWR1cAoJYnogKnNraXBfYW5kMwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWludCAyXzEwMF8wMDAKCTwKCSYmCgoqc2tpcF9hbmQzOgoJYnogKmlmMzFfZW5kCgoJLy8gKmlmMzFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4MwoJLy8gbWFuYWdlclRvcE9mZiA9IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IDwgMl8xMDBfMDAwID8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgOiAyXzEwMF8wMDAKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CglpbnQgMl8xMDBfMDAwCgk8CglieiAqdGVybmFyeTFfZmFsc2UKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWludCAyXzEwMF8wMDAKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDIxIC8vIG1hbmFnZXJUb3BPZmY6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODQKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgICAgICAgIGFtb3VudDogbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcubWFuYWdlciwKCS8vICAgICAgICAgICAgIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Njg1CgkvLyBhbW91bnQ6IG1hbmFnZXJUb3BPZmYKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4NgoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODcKCS8vIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzIyMDcyNjU3NzYxNzI2NDIwNzQ2ZjIwNmQ2MTZlNjE2NzY1NzIyMDY2NmY3MjIwNjY3NTZlNjQ2OTZlNjcyMDY1NzA2ZjYzNjgyMDc1NzA2NDYxNzQ2NTczIC8vICJ2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcyIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCippZjMxX2VuZDoKCS8vICppZjMyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MAoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgLSBtYW5hZ2VyVG9wT2ZmID4gMAoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWludCAwCgk+CglieiAqaWYzMl9lbmQKCgkvLyAqaWYzMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgICBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MsCgkvLyAgICAgICAgICAgICBub3RlOiAndmFsaWRhdG9yIHJld2FyZCcsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkyCgkvLyBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZgoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MwoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy52YWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTc3IDMyCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5NAoJLy8gbm90ZTogJ3ZhbGlkYXRvciByZXdhcmQnCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyMjA3MjY1Nzc2MTcyNjQgLy8gInZhbGlkYXRvciByZXdhcmQiCglpdHhuX2ZpZWxkIE5vdGUKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgoqaWYzMF9lbmQ6CgoqaWYyOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzA2CgkvLyBpbmNyZWFzZWRTdGFrZSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCgkvLyAqaWYzM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzAKCS8vIGFsZ29SZXdhcmRBdmFpbCAhPT0gMCB8fCB0b2tlblJld2FyZEF2YWlsICE9PSAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgkhPQoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJIT0KCXx8Cgoqc2tpcF9vcjE6CglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMxCgkvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczMgoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyNCAvLyBpOiB1aW50NjQKCipmb3JfNDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzIKCS8vIGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgMjQgLy8gaTogdWludDY0CglpbnQgMjAwCgk8CglieiAqZm9yXzRfZW5kCgoJLy8gKmlmMzRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMzCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDQwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDQwMAoJPAoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMzRfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNgoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gKmlmMzVfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzM3CgkvLyBjbXBTdGFrZXIuYWNjb3VudCAhPT0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglieiAqaWYzNV9lbmQKCgkvLyAqaWYzNV9jb25zZXF1ZW50CgkvLyAqaWYzNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzgKCS8vIGNtcFN0YWtlci5lbnRyeVJvdW5kID49IHRoaXNFcG9jaEJlZ2luCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCT49CglieiAqaWYzNl9lbHNlCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0MQoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoJYiAqaWYzNl9lbmQKCippZjM2X2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzQ1CgkvLyB0aW1lSW5Qb29sID0gdGhpc0Vwb2NoQmVnaW4gLSBjbXBTdGFrZXIuZW50cnlSb3VuZAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA1NiA4CglidG9pCgktCglmcmFtZV9idXJ5IDI2IC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoKCS8vICppZjM3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0OQoJLy8gdGltZUluUG9vbCA8IGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJPAoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MAoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NTEKCS8vIHRpbWVQZXJjZW50YWdlID0gKHRpbWVJblBvb2wgKiAxMDAwKSAvIGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWludCAxMDAwCgkqCglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMjcgLy8gdGltZVBlcmNlbnRhZ2U6IHVpbnQ2NAoKCS8vICppZjM4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MwoJLy8gdG9rZW5SZXdhcmRBdmFpbCA+IDAKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzU1CgkvLyBzdGFrZXJUb2tlblJld2FyZCA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgICAgICAgICAgIFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbCwgdGltZVBlcmNlbnRhZ2VdLAoJLy8gICAgICAgICAgICAgICAgICAgW3RoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlLCAxMDAwXQoJLy8gICAgICAgICAgICAgICAgICkKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjggLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjIKCS8vIHRva2VuUmV3YXJkQXZhaWwgLT0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzY0CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDI4IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjM4X2VuZDoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2NgoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmMzlfZW5kCgoJLy8gKmlmMzlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2OAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICAgICAgICAgICAgW2NtcFN0YWtlci5iYWxhbmNlLCBhbGdvUmV3YXJkQXZhaWwsIHRpbWVQZXJjZW50YWdlXSwKCS8vICAgICAgICAgICAgICAgICAgIFt0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSwgMTAwMF0KCS8vICAgICAgICAgICAgICAgICApCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjkgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc1CgkvLyBhbGdvUmV3YXJkQXZhaWwgLT0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NzgKCS8vIGNtcFN0YWtlci5iYWxhbmNlICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc5CgkvLyBjbXBTdGFrZXIudG90YWxSZXdhcmRlZCArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0MCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQwIDgKCWJ0b2kKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc4MAoJLy8gaW5jcmVhc2VkU3Rha2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCippZjM5X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3ODMKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYzN19lbmQ6CgoqaWYzNl9lbmQ6CgoqaWYzNV9lbmQ6CgoqZm9yXzRfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMyCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDI0IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzQKCipmb3JfNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzkxCgkvLyBuZXdQb29sVG90YWxTdGFrZSA9IHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC0gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgktCglmcmFtZV9idXJ5IDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCgkvLyAqaWY0MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTUKCS8vIG5ld1Bvb2xUb3RhbFN0YWtlID4gMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWludCAwCgk+CglieiAqaWY0MF9lbmQKCgkvLyAqaWY0MF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDMxIC8vIGk6IHVpbnQ2NAoKKmZvcl81OgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc5NwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzMSAvLyBpOiB1aW50NjQKCWludCAyMDAKCTwKCWJ6ICpmb3JfNV9lbmQKCgkvLyAqaWY0MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTgKCS8vIGdsb2JhbHMub3Bjb2RlQnVkZ2V0IDwgMjAwCglnbG9iYWwgT3Bjb2RlQnVkZ2V0CglpbnQgMjAwCgk8CglieiAqaWY0MV9lbmQKCgkvLyAqaWY0MV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODAxCgkvLyBjbXBTdGFrZXIgPSBjbG9uZSh0aGlzLnN0YWtlcnMudmFsdWVbaV0pCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0Ml9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDIKCS8vIGNtcFN0YWtlci5hY2NvdW50ICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzICYmIGNtcFN0YWtlci5lbnRyeVJvdW5kIDwgdGhpc0Vwb2NoQmVnaW4KCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQ0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCTwKCSYmCgoqc2tpcF9hbmQ0OgoJYnogKmlmNDJfZW5kCgoJLy8gKmlmNDJfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgwMwoJLy8gdGltZUluUG9vbCA9IHRoaXNFcG9jaEJlZ2luIC0gY21wU3Rha2VyLmVudHJ5Um91bmQKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNTYgOAoJYnRvaQoJLQoJZnJhbWVfYnVyeSAzMyAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDUKCS8vIHRpbWVJblBvb2wgPj0gZXBvY2hSb3VuZExlbmd0aAoJZnJhbWVfZGlnIDMzIC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0Cgk+PQoJYnogKmlmNDNfZW5kCgoJLy8gKmlmNDNfY29uc2VxdWVudAoJLy8gKmlmNDRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODEwCgkvLyB0b2tlblJld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjQ0X2VuZAoKCS8vICppZjQ0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTEKCS8vIHN0YWtlclRva2VuUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbF0sIFtuZXdQb29sVG90YWxTdGFrZV0pCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgMzAgLy8gbmV3UG9vbFRvdGFsU3Rha2U6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMzQgLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAzNCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODE1CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDM0IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjQ0X2VuZDoKCS8vICppZjQ1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxNwoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmNDVfZW5kCgoJLy8gKmlmNDVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxOAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgYWxnb1Jld2FyZEF2YWlsXSwgW25ld1Bvb2xUb3RhbFN0YWtlXSkKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyMQoJLy8gY21wU3Rha2VyLmJhbGFuY2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MjIKCS8vIGNtcFN0YWtlci50b3RhbFJld2FyZGVkICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDQwIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgOAoJYnRvaQoJZnJhbWVfZGlnIDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODIzCgkvLyBpbmNyZWFzZWRTdGFrZSArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoKKmlmNDVfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyNwoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjQzX2VuZDoKCippZjQyX2VuZDoKCipmb3JfNV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTcKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMzEgLy8gaTogdWludDY0CgliICpmb3JfNQoKKmZvcl81X2VuZDoKCippZjQwX2VuZDoKCippZjMzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzcKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMzYgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODM4CgkvLyB0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSArPSBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzkKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoaW5jcmVhc2VkU3Rha2UgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDM2IC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChpbmNyZWFzZWRTdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0MQoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgKyBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJZHVwCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCSsKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0NwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODQ4CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4NDkKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE1IC8vIHRva2VuUmV3YXJkUGFpZE91dDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBnb09ubGluZShwYXksYnl0ZVtdLGJ5dGVbXSxieXRlW10sdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2dvT25saW5lOgoJLy8gdm90ZUtleURpbHV0aW9uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWJ0b2kKCgkvLyB2b3RlTGFzdDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdm90ZUZpcnN0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBzdGF0ZVByb29mUEs6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBzZWxlY3Rpb25QSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIHZvdGVQSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGZlZVBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDYgKGZlZVBheW1lbnQpIGZvciBnb09ubGluZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGdvT25saW5lKHBheSxieXRlW10sYnl0ZVtdLGJ5dGVbXSx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGdvT25saW5lCglpbnQgMQoJcmV0dXJuCgovLyBnb09ubGluZShmZWVQYXltZW50OiBQYXlUeG4sIHZvdGVQSzogYnl0ZXMsIHNlbGVjdGlvblBLOiBieXRlcywgc3RhdGVQcm9vZlBLOiBieXRlcywgdm90ZUZpcnN0OiB1aW50NjQsIHZvdGVMYXN0OiB1aW50NjQsIHZvdGVLZXlEaWx1dGlvbjogdWludDY0KTogdm9pZAovLwovLyBSZWdpc3RlcnMgYSBzdGFraW5nIHBvb2wga2V5IG9ubGluZSBhZ2FpbnN0IGEgcGFydGljaXBhdGlvbiBrZXkuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KLy8KLy8gQHBhcmFtIHtQYXlUeG59IGZlZVBheW1lbnQgLSBwYXltZW50IHRvIGNvdmVyIGV4dHJhIGZlZSBvZiBnb2luZyBvbmxpbmUgaWYgb2ZmbGluZSAtIG9yIDAgaWYgbm90IHJlbmV3YWwKLy8gQHBhcmFtIHtieXRlc30gdm90ZVBLIC0gVGhlIHZvdGUgcHVibGljIGtleS4KLy8gQHBhcmFtIHtieXRlc30gc2VsZWN0aW9uUEsgLSBUaGUgc2VsZWN0aW9uIHB1YmxpYyBrZXkuCi8vIEBwYXJhbSB7Ynl0ZXN9IHN0YXRlUHJvb2ZQSyAtIFRoZSBzdGF0ZSBwcm9vZiBwdWJsaWMga2V5LgovLyBAcGFyYW0ge3VpbnQ2NH0gdm90ZUZpcnN0IC0gVGhlIGZpcnN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlTGFzdCAtIFRoZSBsYXN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlS2V5RGlsdXRpb24gLSBUaGUgdm90ZSBrZXkgZGlsdXRpb24gdmFsdWUuCi8vIEB0aHJvd3Mge0Vycm9yfSBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBjYWxsZXIgaXMgbm90IHRoZSBvd25lciBvciBhIG1hbmFnZXIuCmdvT25saW5lOgoJcHJvdG8gNyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgxCgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgyCgkvLyBleHRyYUZlZSA9IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJZnJhbWVfYnVyeSAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgzCgkvLyB2ZXJpZnlQYXlUeG4oZmVlUGF5bWVudCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiBleHRyYUZlZSB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6ImV4dHJhRmVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODQKCS8vIHNlbmRPbmxpbmVLZXlSZWdpc3RyYXRpb24oewoJLy8gICAgICAgdm90ZVBLOiB2b3RlUEssCgkvLyAgICAgICBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEssCgkvLyAgICAgICBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSywKCS8vICAgICAgIHZvdGVGaXJzdDogdm90ZUZpcnN0LAoJLy8gICAgICAgdm90ZUxhc3Q6IHZvdGVMYXN0LAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24sCgkvLyAgICAgICBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODUKCS8vIHZvdGVQSzogdm90ZVBLCglmcmFtZV9kaWcgLTIgLy8gdm90ZVBLOiBieXRlcwoJaXR4bl9maWVsZCBWb3RlUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg2CgkvLyBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEsKCWZyYW1lX2RpZyAtMyAvLyBzZWxlY3Rpb25QSzogYnl0ZXMKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg3CgkvLyBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSwoJZnJhbWVfZGlnIC00IC8vIHN0YXRlUHJvb2ZQSzogYnl0ZXMKCWl0eG5fZmllbGQgU3RhdGVQcm9vZlBLCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg4OAoJLy8gdm90ZUZpcnN0OiB2b3RlRmlyc3QKCWZyYW1lX2RpZyAtNSAvLyB2b3RlRmlyc3Q6IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlRmlyc3QKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg5CgkvLyB2b3RlTGFzdDogdm90ZUxhc3QKCWZyYW1lX2RpZyAtNiAvLyB2b3RlTGFzdDogdWludDY0CglpdHhuX2ZpZWxkIFZvdGVMYXN0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg5MAoJLy8gdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24KCWZyYW1lX2RpZyAtNyAvLyB2b3RlS2V5RGlsdXRpb246IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlS2V5RGlsdXRpb24KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODkxCgkvLyBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGdvT2ZmbGluZSgpdm9pZAoqYWJpX3JvdXRlX2dvT2ZmbGluZToKCS8vIGV4ZWN1dGUgZ29PZmZsaW5lKCl2b2lkCgljYWxsc3ViIGdvT2ZmbGluZQoJaW50IDEKCXJldHVybgoKLy8gZ29PZmZsaW5lKCk6IHZvaWQKLy8KLy8gTWFya3MgYSBzdGFraW5nIHBvb2wga2V5IE9GRkxJTkUuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KZ29PZmZsaW5lOgoJcHJvdG8gMCAwCgoJLy8gKmlmNDZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTAzCgkvLyB0aGlzLnR4bi5zZW5kZXIgIT09IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCSE9CglieiAqaWY0Nl9lbmQKCgkvLyAqaWY0Nl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTA0CgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MDcKCS8vIHNlbmRPZmZsaW5lS2V5UmVnaXN0cmF0aW9uKHt9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gbGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2xpbmtUb05GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBsaW5rVG9ORkQodWludDY0LHN0cmluZyl2b2lkCgljYWxsc3ViIGxpbmtUb05GRAoJaW50IDEKCXJldHVybgoKLy8gbGlua1RvTkZEKG5mZEFwcElkOiB1aW50NjQsIG5mZE5hbWU6IHN0cmluZyk6IHZvaWQKbGlua1RvTkZEOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNAoJLy8gYXNzZXJ0KHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLCAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yJykKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3ZlcmlmeV9uZmRfYWRkcicsIG5mZE5hbWUsIGl0b2IobmZkQXBwSWQpLCByYXdCeXRlcyh0aGlzLmFwcC5hZGRyZXNzKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElkKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNwoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MTgKCS8vIGFwcGxpY2F0aW9uQXJnczogWyd2ZXJpZnlfbmZkX2FkZHInLCBuZmROYW1lLCBpdG9iKG5mZEFwcElkKSwgcmF3Qnl0ZXModGhpcy5hcHAuYWRkcmVzcyldCglieXRlIDB4NzY2NTcyNjk2Njc5NWY2ZTY2NjQ1ZjYxNjQ2NDcyIC8vICJ2ZXJpZnlfbmZkX2FkZHIiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJZDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxOQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJZCldCglmcmFtZV9kaWcgLTEgLy8gbmZkQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHByb3hpZWRTZXRUb2tlblBheW91dFJhdGlvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX3Byb3hpZWRTZXRUb2tlblBheW91dFJhdGlvOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBvb2xLZXkpIGZvciBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyhwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5KTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8gaXMgbWVhbnQgdG8gYmUgY2FsbGVkIGJ5IHBvb2xzICE9IDEgLSBjYWxsaW5nIFVTLCBwb29sICMxCi8vIFdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgd2UgYXJlIGluIGZhY3QgYmVpbmcgY2FsbGVkIGJ5IGFub3RoZXIgb2YgT1VSIHBvb2xzIChub3QgdXMpCi8vIGFuZCB0aGVuIHdlJ2xsIGNhbGwgdGhlIHZhbGlkYXRvciBvbiB0aGVpciBiZWhhbGYgdG8gdXBkYXRlIHRoZSB0b2tlbiBwYXlvdXRzCi8vIEBwYXJhbSBwb29sS2V5IC0gVmFsaWRhdG9yUG9vbEtleSB0dXBsZQpwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9ySWQudmFsdWUgPT09IHBvb2xLZXkuaWQsICdjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEnKQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyBjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzEKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ2NhbGxlZSBtdXN0IGJlIHBvb2wgMScpCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgoJLy8gY2FsbGVlIG11c3QgYmUgcG9vbCAxCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTMyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgIT09IDEsICdjYWxsZXIgbXVzdCBOT1QgYmUgcG9vbCAxJykKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCSE9CgoJLy8gY2FsbGVyIG11c3QgTk9UIGJlIHBvb2wgMQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzNAoJLy8gY2FsbGVyUG9vbEFwcElEID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5nZXRQb29sQXBwSWQ+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3Bvb2xLZXkuaWQsIHBvb2xLZXkucG9vbElkXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzYKCS8vIG1ldGhvZEFyZ3M6IFtwb29sS2V5LmlkLCBwb29sS2V5LnBvb2xJZF0KCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBjYWxsZXJQb29sQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzgKCS8vIGFzc2VydChjYWxsZXJQb29sQXBwSUQgPT09IHBvb2xLZXkucG9vbEFwcElkKQoJZnJhbWVfZGlnIDAgLy8gY2FsbGVyUG9vbEFwcElEOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM5CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0MQoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuc2V0VG9rZW5QYXlvdXRSYXRpbz4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGlzT3duZXJPck1hbmFnZXJDYWxsZXIoKTogYm9vbGVhbgppc093bmVyT3JNYW5hZ2VyQ2FsbGVyOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQ4CgkvLyBPd25lckFuZE1hbmFnZXIgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcj4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MgoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzBdIHx8IHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzFdOwoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIDAgLy8gT3duZXJBbmRNYW5hZ2VyOiAoYWRkcmVzcyxhZGRyZXNzKQoJZXh0cmFjdCAwIDMyCgk9PQoJZHVwCglibnogKnNraXBfb3IyCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCglleHRyYWN0IDMyIDMyCgk9PQoJfHwKCipza2lwX29yMjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBnZXRGZWVTaW5rKCk6IEFkZHJlc3MKZ2V0RmVlU2luazoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NTYKCS8vIHJldHVybiB0aGlzLmZlZVNpbmtBZGRyOwoJbG9hZCAyMDEgLy8gVE1QTF9mZWVTaW5rQWRkcgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk2NgoJLy8gb25saW5lID0gdGhpcy5nZXRDdXJyZW50T25saW5lU3Rha2UoKQoJY2FsbHN1YiBnZXRDdXJyZW50T25saW5lU3Rha2UKCWZyYW1lX2J1cnkgMCAvLyBvbmxpbmU6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NjgKCS8vIHJldHVybiB3aWRlUmF0aW8oW29ubGluZSwgTUFYX1ZBTElEQVRPUl9TT0ZUX1BDVF9PRl9PTkxJTkVfMURFQ0lNQUxdLCBbMTAwMF0pOwoJZnJhbWVfZGlnIDAgLy8gb25saW5lOiB1aW50NjQKCWludCAxMDAKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gZ2V0R29PbmxpbmVGZWUoKTogdWludDY0CmdldEdvT25saW5lRmVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc1CgkvLyBpc09ubGluZSA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGlzT25saW5lOiBib29sCgoJLy8gKmlmNDdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc2CgkvLyAhaXNPbmxpbmUKCWZyYW1lX2RpZyAwIC8vIGlzT25saW5lOiBib29sCgkhCglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc4CgkvLyByZXR1cm4gMl8wMDBfMDAwOwoJaW50IDJfMDAwXzAwMAoJYiAqZ2V0R29PbmxpbmVGZWUqcmV0dXJuCgoqaWY0N19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTgwCgkvLyByZXR1cm4gMDsKCWludCAwCgoqZ2V0R29PbmxpbmVGZWUqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk4NQoJLy8gcmV0dXJuIDJfMDAwXzAwMF8wMDBfMDAwXzAwMDsKCWludCAyXzAwMF8wMDBfMDAwXzAwMF8wMDAKCXJldHN1YgoKLy8gY2hlY2tJZkJpbkNsb3NlZCgpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiB0aGUgY3VycmVudCByb3VuZCBpcyBpbiBhICduZXcgY2FsY3VsYXRpb24gYmluJyAoYXBwcm94aW1hdGVseSBkYWlseSkKY2hlY2tJZkJpbkNsb3NlZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkyCgkvLyBjdXJyZW50QmluU2l6ZSA9IHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIGFzIHVpbnQxMjgKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgoJLy8gKmlmNDhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkzCgkvLyBnbG9iYWxzLnJvdW5kID49IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIChjdXJyZW50QmluU2l6ZSBhcyB1aW50NjQpCglnbG9iYWwgUm91bmQKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMCAvLyBjdXJyZW50QmluU2l6ZTogdW5zYWZlIHVpbnQxMjgKCWR1cAoJYml0bGVuCglpbnQgNjQKCTw9CgoJLy8gY3VycmVudEJpblNpemUgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCgkrCgk+PQoJYnogKmlmNDhfZW5kCgoJLy8gKmlmNDhfY29uc2VxdWVudAoJLy8gKmlmNDlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTk0CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmNDlfZW5kCgoJLy8gKmlmNDlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmNDlfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NwoJLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOCA9IGN1cnJlbnRCaW5TaXplICogKDM2NSBhcyB1aW50MTI4KQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNmQKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyBjdXJyZW50QmluU2l6ZSAqICgzNjUgYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWZyYW1lX2J1cnkgMSAvLyBhcHByb3hSb3VuZHNQZXJZZWFyOiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5OAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgLyBjdXJyZW50QmluU2l6ZQoJYnl0ZSAweDczNzQ2MTZiNjU0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJzdGFrZUFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAwIC8vIGN1cnJlbnRCaW5TaXplOiB1bnNhZmUgdWludDEyOAoJYi8KCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSAvIGN1cnJlbnRCaW5TaXplIG92ZXJmbG93ZWQgMTI4IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDE2CgktCglzd2FwCglzdWJzdHJpbmczCglmcmFtZV9idXJ5IDIgLy8gYXZnU3Rha2U6IHVpbnQxMjgKCgkvLyAqaWY1MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5OTkKCS8vIGF2Z1N0YWtlICE9PSAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliIT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDAzCgkvLyBhcHI6IHVpbnQxMjggPQoJLy8gICAgICAgICAgICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICoKCS8vICAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjcxMAoJYioKCWZyYW1lX2RpZyAyIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgliLwoJZnJhbWVfZGlnIDEgLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOAoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgliLwoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICpcbiAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAzIC8vIGFwcjogdWludDEyOAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDA3CgkvLyBhbHBoYTogdWludDEyOCA9IDEwIGFzIHVpbnQxMjgKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYQoJZnJhbWVfYnVyeSA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoKCS8vICppZjUxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMDkKCS8vIGF2Z1N0YWtlID4gMzAwMDAwMDAwMDAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NWQ5NjRiODAwCgliPgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMTAKCS8vIGFscGhhID0gOTAgYXMgdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDVhCglmcmFtZV9idXJ5IDQgLy8gYWxwaGE6IHVuc2FmZSB1aW50MTI4CgoqaWY1MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAxMgoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPQoJLy8gICAgICAgICAgICh0aGlzLndlaWdodGVkTW92aW5nQXZlcmFnZS52YWx1ZSAqICgoMTAwIGFzIHVpbnQxMjgpIC0gYWxwaGEpKSAvICgxMDAgYXMgdWludDEyOCkgKwoJLy8gICAgICAgICAgIChhcHIgKiBhbHBoYSkgLyAoMTAwIGFzIHVpbnQxMjgpCglieXRlIDB4NjU3NzZkNjEgLy8gImV3bWEiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYi0KCWIqCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWIvCglmcmFtZV9kaWcgMyAvLyBhcHI6IHVpbnQxMjgKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYioKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2NAoJYi8KCWIrCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAodGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgKiAoKDEwMCBhcyB1aW50MTI4KSAtIGFscGhhKSkgLyAoMTAwIGFzIHVpbnQxMjgpICtcbiAgICAgICAgICAoYXByICogYWxwaGEpIC8gKDEwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCippZjUwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE4CgkvLyB0aGlzLnNldFJvdW5kc1BlckRheSgpCgljYWxsc3ViIHNldFJvdW5kc1BlckRheQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE5CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAodGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgYXMgdWludDEyOCkgKiAodGhpcy5yb3VuZHNQZXJEYXkudmFsdWUgYXMgdWludDEyOCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICh0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSBhcyB1aW50MTI4KSAqICh0aGlzLnJvdW5kc1BlckRheS52YWx1ZSBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAyMAoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IDAKCWJ5dGUgMHg3MjY1Nzc2MTcyNjQ0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJyZXdhcmRBY2N1bXVsYXRvciIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDIxCgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCippZjQ4X2VuZDoKCXJldHN1YgoKLy8gc2V0Um91bmRzUGVyRGF5KCk6IHZvaWQKc2V0Um91bmRzUGVyRGF5OgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMjYKCS8vIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlID0gQVZHX1JPVU5EU19QRVJfREFZCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglpbnQgMzA4NTcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiaW5pdFN0b3JhZ2UocGF5KXZvaWQiCgltZXRob2QgImFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NCIKCW1ldGhvZCAicmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZCIKCW1ldGhvZCAiY2xhaW1Ub2tlbnMoKXZvaWQiCgltZXRob2QgImdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAidXBkYXRlQWxnb2RWZXIoc3RyaW5nKXZvaWQiCgltZXRob2QgImVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZCIKCW1ldGhvZCAiZ29PbmxpbmUocGF5LGJ5dGVbXSxieXRlW10sYnl0ZVtdLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImdvT2ZmbGluZSgpdm9pZCIKCW1ldGhvZCAibGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZCIKCW1ldGhvZCAicHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0WzI0XSx1aW50NjQpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9nYXMgKmFiaV9yb3V0ZV9pbml0U3RvcmFnZSAqYWJpX3JvdXRlX2FkZFN0YWtlICphYmlfcm91dGVfcmVtb3ZlU3Rha2UgKmFiaV9yb3V0ZV9jbGFpbVRva2VucyAqYWJpX3JvdXRlX2dldFN0YWtlckluZm8gKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZCAqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyICphYmlfcm91dGVfZXBvY2hCYWxhbmNlVXBkYXRlICphYmlfcm91dGVfZ29PbmxpbmUgKmFiaV9yb3V0ZV9nb09mZmxpbmUgKmFiaV9yb3V0ZV9saW5rVG9ORkQgKmFiaV9yb3V0ZV9wcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfVXBkYXRlQXBwbGljYXRpb246CgltZXRob2QgInVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIFVwZGF0ZUFwcGxpY2F0aW9uCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/reti/artifacts/StakingPool.arc56_draft.json b/examples/reti/artifacts/StakingPool.arc56_draft.json index a5ed0d8bf..2c235b893 100644 --- a/examples/reti/artifacts/StakingPool.arc56_draft.json +++ b/examples/reti/artifacts/StakingPool.arc56_draft.json @@ -349,22 +349,52 @@ 56 ], "structs": { - "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/stakingPool.algo\").StakedInfo": { - "account": "address", - "balance": "uint64", - "totalRewarded": "uint64", - "rewardTokenBalance": "uint64", - "entryRound": "uint64" - }, - "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").PoolTokenPayoutRatio": { - "poolPctOfWhole": "uint64[24]", - "updatedForPayout": "uint64" - }, - "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").ValidatorPoolKey": { - "id": "uint64", - "poolId": "uint64", - "poolAppId": "uint64" - } + "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/stakingPool.algo\").StakedInfo": [ + { + "name": "account", + "type": "address" + }, + { + "name": "balance", + "type": "uint64" + }, + { + "name": "totalRewarded", + "type": "uint64" + }, + { + "name": "rewardTokenBalance", + "type": "uint64" + }, + { + "name": "entryRound", + "type": "uint64" + } + ], + "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").PoolTokenPayoutRatio": [ + { + "name": "poolPctOfWhole", + "type": "uint64[24]" + }, + { + "name": "updatedForPayout", + "type": "uint64" + } + ], + "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").ValidatorPoolKey": [ + { + "name": "id", + "type": "uint64" + }, + { + "name": "poolId", + "type": "uint64" + }, + { + "name": "poolAppId", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -469,18930 +499,18933 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 38, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192, - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223, - 224, - 225, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258, - 259, - 260, - 261, - 262, - 263, - 264, - 265, - 266, - 267, - 268, - 269, - 270, - 271, - 272, - 273, - 274, - 275, - 276, - 277, - 278, - 279, - 280, - 281, - 282, - 283, - 284, - 285, - 286, - 287, - 288, - 289, - 290, - 291, - 292, - 293 - ] - }, - { - "teal": 9, - "source": 38, - "pc": [ - 294, - 295, - 296, - 297, - 298, - 299, - 300, - 301, - 302, - 303, - 304, - 305, - 306, - 307, - 308, - 309, - 310, - 311, - 312, - 313, - 314, - 315, - 316, - 317, - 318, - 319, - 320, - 321, - 322, - 323, - 324, - 325, - 326, - 327 - ] - }, - { - "teal": 10, - "source": 38, - "pc": [ - 328, - 329 - ] - }, - { - "teal": 11, - "source": 38, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 12, - "source": 38, - "pc": [ - 332 - ] - }, - { - "teal": 13, - "source": 38, - "pc": [ - 333, - 334 - ] - }, - { - "teal": 20, - "source": 38, - "pc": [ - 335, - 336 - ] - }, - { - "teal": 21, - "source": 38, - "pc": [ - 337 - ] - }, - { - "teal": 22, - "source": 38, - "pc": [ - 338 - ] - }, - { - "teal": 23, - "source": 38, - "pc": [ - 339 - ] - }, - { - "teal": 24, - "source": 38, - "pc": [ - 340, - 341 - ] - }, - { - "teal": 25, - "source": 38, - "pc": [ - 342 - ] - }, - { - "teal": 26, - "source": 38, - "pc": [ - 343, - 344, - 345, - 346, - 347, - 348, - 349, - 350, - 351, - 352, - 353, - 354, - 355, - 356, - 357, - 358, - 359, - 360, - 361, - 362, - 363, - 364, - 365, - 366, - 367, - 368 - ] - }, - { - "teal": 30, - "source": 38, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 369 - ] - }, - { - "teal": 35, - "source": 93, - "pc": [ - 370, - 371, - 372 - ] - }, - { - "teal": 36, - "source": 93, - "pc": [ - 373 - ] - }, - { - "teal": 37, - "source": 93, - "pc": [ - 374 - ] - }, - { - "teal": 41, - "source": 93, - "pc": [ - 375, - 376, - 377 - ] - }, - { - "teal": 48, - "source": 95, - "pc": [ - 378, - 379 - ] - }, - { - "teal": 49, - "source": 95, - "pc": [ - 380, - 381, - 382, - 383, - 384, - 385, - 386, - 387, - 388, - 389, - 390, - 391, - 392, - 393, - 394, - 395, - 396, - 397, - 398, - 399, - 400, - 401, - 402, - 403, - 404, - 405, - 406, - 407, - 408, - 409, - 410, - 411, - 412, - 413 - ] - }, - { - "teal": 50, - "source": 95, - "pc": [ - 414 - ] - }, - { - "teal": 53, - "source": 94, - "errorMessage": "Temporary: contract is upgradeable but only during testing and only from a development account", - "pc": [ - 415 - ] - }, - { - "teal": 54, - "source": 93, - "pc": [ - 416 - ] - }, - { - "teal": 59, - "source": 107, - "pc": [ - 417, - 418, - 419 - ] - }, - { - "teal": 60, - "source": 107, - "pc": [ - 420 - ] - }, - { - "teal": 63, - "source": 107, - "pc": [ - 421, - 422, - 423 - ] - }, - { - "teal": 64, - "source": 107, - "pc": [ - 424 - ] - }, - { - "teal": 67, - "source": 107, - "pc": [ - 425, - 426, - 427 - ] - }, - { - "teal": 68, - "source": 107, - "pc": [ - 428 - ] - }, - { - "teal": 71, - "source": 107, - "pc": [ - 429, - 430, - 431 - ] - }, - { - "teal": 72, - "source": 107, - "pc": [ - 432 - ] - }, - { - "teal": 75, - "source": 107, - "pc": [ - 433, - 434, - 435 - ] - }, - { - "teal": 76, - "source": 107, - "pc": [ - 436 - ] - }, - { - "teal": 77, - "source": 107, - "pc": [ - 437 - ] - }, - { - "teal": 87, - "source": 107, - "pc": [ - 438, - 439, - 440 - ] - }, - { - "teal": 92, - "source": 108, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 93, - "source": 108, - "pc": [ - 443 - ] - }, - { - "teal": 94, - "source": 108, - "pc": [ - 444 - ] - }, - { - "teal": 95, - "source": 108, - "pc": [ - 445, - 446, - 447 - ] - }, - { - "teal": 100, - "source": 110, - "pc": [ - 448, - 449 - ] - }, - { - "teal": 101, - "source": 110, - "pc": [ - 450 - ] - }, - { - "teal": 102, - "source": 110, - "pc": [ - 451 - ] - }, - { - "teal": 103, - "source": 110, - "pc": [ - 452 - ] - }, - { - "teal": 107, - "source": 111, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 108, - "source": 111, - "pc": [ - 455 - ] - }, - { - "teal": 109, - "source": 111, - "pc": [ - 456 - ] - }, - { - "teal": 110, - "source": 111, - "pc": [ - 457 - ] - }, - { - "teal": 111, - "source": 108, - "pc": [ - 458, - 459, - 460 - ] - }, - { - "teal": 116, - "source": 113, - "pc": [ - 461, - 462 - ] - }, - { - "teal": 117, - "source": 113, - "pc": [ - 463 - ] - }, - { - "teal": 118, - "source": 113, - "pc": [ - 464 - ] - }, - { - "teal": 119, - "source": 113, - "pc": [ - 465 - ] - }, - { - "teal": 123, - "source": 114, - "pc": [ - 466, - 467 - ] - }, - { - "teal": 124, - "source": 114, - "pc": [ - 468 - ] - }, - { - "teal": 125, - "source": 114, - "pc": [ - 469 - ] - }, - { - "teal": 126, - "source": 114, - "pc": [ - 470 - ] - }, - { - "teal": 131, - "source": 116, - "pc": [ - 471, - 472 - ] - }, - { - "teal": 132, - "source": 116, - "pc": [ - 473, - 474 - ] - }, - { - "teal": 133, - "source": 116, - "pc": [ - 475 - ] - }, - { - "teal": 136, - "source": 116, - "errorMessage": "staking pool must have minimum entry of 1 algo", - "pc": [ - 476 - ] - }, - { - "teal": 140, - "source": 117, - "pc": [ - 477 - ] - }, - { - "teal": 141, - "source": 117, - "pc": [ - 478, - 479 - ] - }, - { - "teal": 142, - "source": 117, - "pc": [ - 480 - ] - }, - { - "teal": 146, - "source": 118, - "pc": [ - 481 - ] - }, - { - "teal": 147, - "source": 118, - "pc": [ - 482, - 483 - ] - }, - { - "teal": 148, - "source": 118, - "pc": [ - 484 - ] - }, - { - "teal": 152, - "source": 119, - "pc": [ - 485 - ] - }, - { - "teal": 153, - "source": 119, - "pc": [ - 486, - 487 - ] - }, - { - "teal": 154, - "source": 119, - "pc": [ - 488 - ] - }, - { - "teal": 158, - "source": 120, - "pc": [ - 489, - 490 - ] - }, - { - "teal": 159, - "source": 120, - "pc": [ - 491 - ] - }, - { - "teal": 160, - "source": 120, - "pc": [ - 492 - ] - }, - { - "teal": 164, - "source": 121, - "pc": [ - 493, - 494 - ] - }, - { - "teal": 165, - "source": 121, - "pc": [ - 495 - ] - }, - { - "teal": 166, - "source": 121, - "pc": [ - 496 - ] - }, - { - "teal": 170, - "source": 122, - "pc": [ - 497, - 498 - ] - }, - { - "teal": 171, - "source": 122, - "pc": [ - 499, - 500 - ] - }, - { - "teal": 172, - "source": 122, - "pc": [ - 501 - ] - }, - { - "teal": 176, - "source": 123, - "pc": [ - 502, - 503 - ] - }, - { - "teal": 177, - "source": 123, - "pc": [ - 504, - 505 - ] - }, - { - "teal": 178, - "source": 123, - "pc": [ - 506 - ] - }, - { - "teal": 182, - "source": 124, - "pc": [ - 507, - 508 - ] - }, - { - "teal": 183, - "source": 124, - "pc": [ - 509 - ] - }, - { - "teal": 184, - "source": 124, - "pc": [ - 510 - ] - }, - { - "teal": 188, - "source": 126, - "pc": [ - 511, - 512, - 513 - ] - }, - { - "teal": 192, - "source": 127, - "pc": [ - 514, - 515 - ] - }, - { - "teal": 193, - "source": 127, - "pc": [ - 516, - 517 - ] - }, - { - "teal": 194, - "source": 127, - "pc": [ - 518, - 519 - ] - }, - { - "teal": 195, - "source": 127, - "pc": [ - 520, - 521 - ] - }, - { - "teal": 196, - "source": 127, - "pc": [ - 522 - ] - }, - { - "teal": 197, - "source": 127, - "pc": [ - 523 - ] - }, - { - "teal": 198, - "source": 127, - "pc": [ - 524 - ] - }, - { - "teal": 199, - "source": 127, - "pc": [ - 525 - ] - }, - { - "teal": 203, - "source": 128, - "pc": [ - 526, - 527 - ] - }, - { - "teal": 204, - "source": 128, - "pc": [ - 528, - 529 - ] - }, - { - "teal": 205, - "source": 128, - "pc": [ - 530 - ] - }, - { - "teal": 209, - "source": 129, - "pc": [ - 531, - 532 - ] - }, - { - "teal": 210, - "source": 129, - "pc": [ - 533 - ] - }, - { - "teal": 211, - "source": 129, - "pc": [ - 534 - ] - }, - { - "teal": 215, - "source": 130, - "pc": [ - 535, - 536 - ] - }, - { - "teal": 216, - "source": 130, - "pc": [ - 537, - 538 - ] - }, - { - "teal": 217, - "source": 130, - "pc": [ - 539 - ] - }, - { - "teal": 218, - "source": 107, - "pc": [ - 540 - ] - }, - { - "teal": 223, - "source": 136, - "pc": [ - 541, - 542, - 543 - ] - }, - { - "teal": 224, - "source": 136, - "pc": [ - 544 - ] - }, - { - "teal": 225, - "source": 136, - "pc": [ - 545 - ] - }, - { - "teal": 231, - "source": 136, - "pc": [ - 546, - 547, - 548 - ] - }, - { - "teal": 232, - "source": 136, - "pc": [ - 549 - ] - }, - { - "teal": 236, - "source": 138, - "pc": [ - 550, - 551, - 552 - ] - }, - { - "teal": 240, - "source": 142, - "pc": [ - 553, - 554, - 555 - ] - }, - { - "teal": 241, - "source": 142, - "pc": [ - 556, - 557 - ] - }, - { - "teal": 242, - "source": 142, - "pc": [ - 558, - 559 - ] - }, - { - "teal": 243, - "source": 142, - "pc": [ - 560 - ] - }, - { - "teal": 244, - "source": 142, - "pc": [ - 561 - ] - }, - { - "teal": 245, - "source": 138, - "pc": [ - 562 - ] - }, - { - "teal": 250, - "source": 152, - "pc": [ - 563, - 564 - ] - }, - { - "teal": 251, - "source": 152, - "pc": [ - 565 - ] - }, - { - "teal": 252, - "source": 152, - "pc": [ - 566 - ] - }, - { - "teal": 253, - "source": 152, - "pc": [ - 567 - ] - }, - { - "teal": 254, - "source": 152, - "pc": [ - 568, - 569 - ] - }, - { - "teal": 255, - "source": 152, - "pc": [ - 570 - ] - }, - { - "teal": 256, - "source": 152, - "pc": [ - 571 - ] - }, - { - "teal": 259, - "source": 152, - "errorMessage": "argument 0 (mbrPayment) for initStorage must be a pay transaction", - "pc": [ - 572 - ] - }, - { - "teal": 262, - "source": 152, - "pc": [ - 573, - 574, - 575 - ] - }, - { - "teal": 263, - "source": 152, - "pc": [ - 576 - ] - }, - { - "teal": 264, - "source": 152, - "pc": [ - 577 - ] - }, - { - "teal": 274, - "source": 152, - "pc": [ - 578, - 579, - 580 - ] - }, - { - "teal": 277, - "source": 152, - "pc": [ - 581, - 582 - ] - }, - { - "teal": 278, - "source": 152, - "pc": [ - 583, - 584 - ] - }, - { - "teal": 282, - "source": 153, - "pc": [ - 585 - ] - }, - { - "teal": 283, - "source": 153, - "pc": [ - 586 - ] - }, - { - "teal": 284, - "source": 153, - "pc": [ - 587 - ] - }, - { - "teal": 285, - "source": 153, - "pc": [ - 588 - ] - }, - { - "teal": 286, - "source": 153, - "pc": [ - 589 - ] - }, - { - "teal": 289, - "source": 153, - "errorMessage": "staking pool already initialized", - "pc": [ - 590 - ] - }, - { - "teal": 296, - "source": 156, - "pc": [ - 591 - ] - }, - { - "teal": 297, - "source": 156, - "pc": [ - 592 - ] - }, - { - "teal": 298, - "source": 156, - "pc": [ - 593, - 594 - ] - }, - { - "teal": 299, - "source": 156, - "pc": [ - 595, - 596 - ] - }, - { - "teal": 300, - "source": 156, - "pc": [ - 597, - 598 - ] - }, - { - "teal": 304, - "source": 157, - "pc": [ - 599 - ] - }, - { - "teal": 305, - "source": 157, - "pc": [ - 600 - ] - }, - { - "teal": 306, - "source": 157, - "pc": [ - 601, - 602 - ] - }, - { - "teal": 310, - "source": 158, - "pc": [ - 603 - ] - }, - { - "teal": 311, - "source": 158, - "pc": [ - 604 - ] - }, - { - "teal": 312, - "source": 158, - "pc": [ - 605 - ] - }, - { - "teal": 313, - "source": 158, - "pc": [ - 606, - 607 - ] - }, - { - "teal": 316, - "source": 156, - "pc": [ - 608 - ] - }, - { - "teal": 317, - "source": 156, - "pc": [ - 609, - 610 - ] - }, - { - "teal": 320, - "source": 156, - "pc": [ - 611 - ] - }, - { - "teal": 321, - "source": 156, - "pc": [ - 612, - 613 - ] - }, - { - "teal": 322, - "source": 156, - "pc": [ - 614 - ] - }, - { - "teal": 323, - "source": 156, - "pc": [ - 615 - ] - }, - { - "teal": 324, - "source": 156, - "pc": [ - 616, - 617 - ] - }, - { - "teal": 325, - "source": 156, - "pc": [ - 618, - 619, - 620 - ] - }, - { - "teal": 326, - "source": 156, - "pc": [ - 621, - 622 - ] - }, - { - "teal": 330, - "source": 160, - "pc": [ - 623, - 624 - ] - }, - { - "teal": 331, - "source": 160, - "pc": [ - 625, - 626, - 627 - ] - }, - { - "teal": 332, - "source": 160, - "pc": [ - 628 - ] - }, - { - "teal": 333, - "source": 160, - "pc": [ - 629 - ] - }, - { - "teal": 334, - "source": 160, - "pc": [ - 630 - ] - }, - { - "teal": 335, - "source": 160, - "pc": [ - 631, - 632 - ] - }, - { - "teal": 339, - "source": 161, - "pc": [ - 633, - 634 - ] - }, - { - "teal": 340, - "source": 161, - "pc": [ - 635 - ] - }, - { - "teal": 341, - "source": 161, - "pc": [ - 636, - 637, - 638 - ] - }, - { - "teal": 342, - "source": 161, - "pc": [ - 639 - ] - }, - { - "teal": 343, - "source": 161, - "pc": [ - 640 - ] - }, - { - "teal": 344, - "source": 161, - "pc": [ - 641 - ] - }, - { - "teal": 345, - "source": 161, - "pc": [ - 642 - ] - }, - { - "teal": 346, - "source": 161, - "pc": [ - 643 - ] - }, - { - "teal": 349, - "source": 161, - "pc": [ - 644, - 645, - 646 - ] - }, - { - "teal": 350, - "source": 161, - "pc": [ - 647, - 648 - ] - }, - { - "teal": 351, - "source": 161, - "pc": [ - 649, - 650, - 651 - ] - }, - { - "teal": 354, - "source": 161, - "pc": [ - 652 - ] - }, - { - "teal": 357, - "source": 161, - "pc": [ - 653, - 654 - ] - }, - { - "teal": 364, - "source": 163, - "pc": [ - 655, - 656 - ] - }, - { - "teal": 365, - "source": 164, - "pc": [ - 657, - 658 - ] - }, - { - "teal": 366, - "source": 163, - "pc": [ - 659 - ] - }, - { - "teal": 367, - "source": 165, - "pc": [ - 660, - 661, - 662 - ] - }, - { - "teal": 368, - "source": 165, - "pc": [ - 663, - 664, - 665 - ] - }, - { - "teal": 369, - "source": 164, - "pc": [ - 666 - ] - }, - { - "teal": 370, - "source": 162, - "pc": [ - 667, - 668 - ] - }, - { - "teal": 375, - "source": 168, - "pc": [ - 669, - 670 - ] - }, - { - "teal": 376, - "source": 168, - "pc": [ - 671, - 672 - ] - }, - { - "teal": 377, - "source": 168, - "pc": [ - 673, - 674 - ] - }, - { - "teal": 378, - "source": 168, - "pc": [ - 675 - ] - }, - { - "teal": 381, - "source": 168, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 676 - ] - }, - { - "teal": 384, - "source": 168, - "pc": [ - 677, - 678 - ] - }, - { - "teal": 385, - "source": 168, - "pc": [ - 679, - 680 - ] - }, - { - "teal": 386, - "source": 168, - "pc": [ - 681, - 682 - ] - }, - { - "teal": 387, - "source": 168, - "pc": [ - 683 - ] - }, - { - "teal": 390, - "source": 168, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"PoolInitMbr\"}", - "pc": [ - 684 - ] - }, - { - "teal": 394, - "source": 169, - "pc": [ - 685 - ] - }, - { - "teal": 395, - "source": 169, - "pc": [ - 686, - 687, - 688 - ] - }, - { - "teal": 396, - "source": 169, - "pc": [ - 689 - ] - }, - { - "teal": 397, - "source": 169, - "pc": [ - 690 - ] - }, - { - "teal": 402, - "source": 171, - "pc": [ - 691, - 692 - ] - }, - { - "teal": 403, - "source": 171, - "pc": [ - 693 - ] - }, - { - "teal": 404, - "source": 171, - "pc": [ - 694, - 695, - 696 - ] - }, - { - "teal": 405, - "source": 171, - "pc": [ - 697 - ] - }, - { - "teal": 406, - "source": 171, - "pc": [ - 698 - ] - }, - { - "teal": 407, - "source": 171, - "pc": [ - 699 - ] - }, - { - "teal": 408, - "source": 171, - "pc": [ - 700 - ] - }, - { - "teal": 409, - "source": 171, - "pc": [ - 701 - ] - }, - { - "teal": 412, - "source": 171, - "pc": [ - 702, - 703, - 704 - ] - }, - { - "teal": 421, - "source": 173, - "pc": [ - 705 - ] - }, - { - "teal": 422, - "source": 173, - "pc": [ - 706, - 707 - ] - }, - { - "teal": 423, - "source": 173, - "pc": [ - 708, - 709 - ] - }, - { - "teal": 427, - "source": 174, - "pc": [ - 710, - 711 - ] - }, - { - "teal": 428, - "source": 174, - "pc": [ - 712, - 713, - 714 - ] - }, - { - "teal": 429, - "source": 174, - "pc": [ - 715 - ] - }, - { - "teal": 430, - "source": 174, - "pc": [ - 716, - 717 - ] - }, - { - "teal": 434, - "source": 175, - "pc": [ - 718, - 719 - ] - }, - { - "teal": 435, - "source": 175, - "pc": [ - 720, - 721 - ] - }, - { - "teal": 439, - "source": 176, - "pc": [ - 722 - ] - }, - { - "teal": 440, - "source": 176, - "pc": [ - 723, - 724 - ] - }, - { - "teal": 443, - "source": 173, - "pc": [ - 725 - ] - }, - { - "teal": 444, - "source": 173, - "pc": [ - 726, - 727 - ] - }, - { - "teal": 447, - "source": 173, - "pc": [ - 728 - ] - }, - { - "teal": 450, - "source": 152, - "pc": [ - 729 - ] - }, - { - "teal": 455, - "source": 191, - "pc": [ - 730, - 731 - ] - }, - { - "teal": 458, - "source": 191, - "pc": [ - 732, - 733, - 734 - ] - }, - { - "teal": 459, - "source": 191, - "pc": [ - 735 - ] - }, - { - "teal": 460, - "source": 191, - "pc": [ - 736 - ] - }, - { - "teal": 461, - "source": 191, - "pc": [ - 737, - 738 - ] - }, - { - "teal": 462, - "source": 191, - "pc": [ - 739 - ] - }, - { - "teal": 465, - "source": 191, - "errorMessage": "argument 0 (staker) for addStake must be a address", - "pc": [ - 740 - ] - }, - { - "teal": 468, - "source": 191, - "pc": [ - 741, - 742 - ] - }, - { - "teal": 469, - "source": 191, - "pc": [ - 743 - ] - }, - { - "teal": 470, - "source": 191, - "pc": [ - 744 - ] - }, - { - "teal": 471, - "source": 191, - "pc": [ - 745 - ] - }, - { - "teal": 472, - "source": 191, - "pc": [ - 746, - 747 - ] - }, - { - "teal": 473, - "source": 191, - "pc": [ - 748 - ] - }, - { - "teal": 474, - "source": 191, - "pc": [ - 749 - ] - }, - { - "teal": 477, - "source": 191, - "errorMessage": "argument 1 (stakedAmountPayment) for addStake must be a pay transaction", - "pc": [ - 750 - ] - }, - { - "teal": 480, - "source": 191, - "pc": [ - 751, - 752, - 753 - ] - }, - { - "teal": 481, - "source": 191, - "pc": [ - 754 - ] - }, - { - "teal": 482, - "source": 191, - "pc": [ - 755 - ] - }, - { - "teal": 483, - "source": 191, - "pc": [ - 756 - ] - }, - { - "teal": 484, - "source": 191, - "pc": [ - 757 - ] - }, - { - "teal": 485, - "source": 191, - "pc": [ - 758 - ] - }, - { - "teal": 498, - "source": 191, - "pc": [ - 759, - 760, - 761 - ] - }, - { - "teal": 501, - "source": 191, - "pc": [ - 762, - 763 - ] - }, - { - "teal": 502, - "source": 191, - "pc": [ - 764, - 765 - ] - }, - { - "teal": 506, - "source": 192, - "pc": [ - 766 - ] - }, - { - "teal": 507, - "source": 192, - "pc": [ - 767 - ] - }, - { - "teal": 508, - "source": 192, - "pc": [ - 768 - ] - }, - { - "teal": 509, - "source": 192, - "pc": [ - 769 - ] - }, - { - "teal": 512, - "source": 192, - "errorMessage": "staking pool must be initialized first", - "pc": [ - 770 - ] - }, - { - "teal": 519, - "source": 196, - "pc": [ - 771, - 772 - ] - }, - { - "teal": 520, - "source": 196, - "pc": [ - 773 - ] - }, - { - "teal": 521, - "source": 196, - "pc": [ - 774 - ] - }, - { - "teal": 522, - "source": 196, - "pc": [ - 775, - 776 - ] - }, - { - "teal": 523, - "source": 196, - "pc": [ - 777 - ] - }, - { - "teal": 524, - "source": 196, - "pc": [ - 778 - ] - }, - { - "teal": 527, - "source": 195, - "errorMessage": "stake can only be added via the validator contract", - "pc": [ - 779 - ] - }, - { - "teal": 531, - "source": 199, - "pc": [ - 780, - 781 - ] - }, - { - "teal": 532, - "source": 199, - "pc": [ - 782, - 783 - ] - }, - { - "teal": 533, - "source": 199, - "pc": [ - 784 - ] - }, - { - "teal": 534, - "source": 199, - "pc": [ - 785 - ] - }, - { - "teal": 538, - "source": 202, - "pc": [ - 786, - 787, - 788 - ] - }, - { - "teal": 547, - "source": 206, - "pc": [ - 789, - 790 - ] - }, - { - "teal": 548, - "source": 207, - "pc": [ - 791, - 792 - ] - }, - { - "teal": 549, - "source": 207, - "pc": [ - 793 - ] - }, - { - "teal": 550, - "source": 207, - "pc": [ - 794 - ] - }, - { - "teal": 551, - "source": 207, - "pc": [ - 795, - 796 - ] - }, - { - "teal": 552, - "source": 207, - "pc": [ - 797 - ] - }, - { - "teal": 553, - "source": 207, - "pc": [ - 798 - ] - }, - { - "teal": 556, - "source": 207, - "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"sender\",\"expected\":\"AppID.fromUint64(this.creatingValidatorContractAppId.value).address\"}", - "pc": [ - 799 - ] - }, - { - "teal": 559, - "source": 206, - "pc": [ - 800, - 801 - ] - }, - { - "teal": 560, - "source": 208, - "pc": [ - 802, - 803 - ] - }, - { - "teal": 561, - "source": 208, - "pc": [ - 804, - 805 - ] - }, - { - "teal": 562, - "source": 208, - "pc": [ - 806 - ] - }, - { - "teal": 565, - "source": 208, - "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 807 - ] - }, - { - "teal": 568, - "source": 206, - "pc": [ - 808, - 809 - ] - }, - { - "teal": 569, - "source": 209, - "pc": [ - 810, - 811 - ] - }, - { - "teal": 570, - "source": 209, - "pc": [ - 812, - 813 - ] - }, - { - "teal": 571, - "source": 209, - "pc": [ - 814, - 815 - ] - }, - { - "teal": 572, - "source": 209, - "pc": [ - 816 - ] - }, - { - "teal": 575, - "source": 209, - "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"amount\",\"expected\":\"stakedAmountPayment.amount\"}", - "pc": [ - 817 - ] - }, - { - "teal": 579, - "source": 215, - "pc": [ - 818, - 819 - ] - }, - { - "teal": 580, - "source": 215, - "pc": [ - 820, - 821, - 822 - ] - }, - { - "teal": 581, - "source": 215, - "pc": [ - 823 - ] - }, - { - "teal": 582, - "source": 215, - "pc": [ - 824, - 825 - ] - }, - { - "teal": 586, - "source": 216, - "pc": [ - 826 - ] - }, - { - "teal": 587, - "source": 216, - "pc": [ - 827, - 828 - ] - }, - { - "teal": 591, - "source": 218, - "pc": [ - 829, - 830 - ] - }, - { - "teal": 592, - "source": 218, - "pc": [ - 831 - ] - }, - { - "teal": 593, - "source": 218, - "pc": [ - 832, - 833 - ] - }, - { - "teal": 594, - "source": 218, - "pc": [ - 834, - 835 - ] - }, - { - "teal": 595, - "source": 218, - "pc": [ - 836 - ] - }, - { - "teal": 596, - "source": 218, - "pc": [ - 837, - 838 - ] - }, - { - "teal": 597, - "source": 218, - "pc": [ - 839 - ] - }, - { - "teal": 598, - "source": 218, - "pc": [ - 840 - ] - }, - { - "teal": 602, - "source": 220, - "pc": [ - 841, - 842 - ] - }, - { - "teal": 603, - "source": 220, - "pc": [ - 843 - ] - }, - { - "teal": 604, - "source": 220, - "pc": [ - 844, - 845 - ] - }, - { - "teal": 605, - "source": 220, - "pc": [ - 846 - ] - }, - { - "teal": 606, - "source": 220, - "pc": [ - 847 - ] - }, - { - "teal": 607, - "source": 220, - "pc": [ - 848, - 849 - ] - }, - { - "teal": 608, - "source": 220, - "pc": [ - 850 - ] - }, - { - "teal": 609, - "source": 220, - "pc": [ - 851, - 852 - ] - }, - { - "teal": 614, - "source": 221, - "pc": [ - 853, - 854 - ] - }, - { - "teal": 615, - "source": 221, - "pc": [ - 855 - ] - }, - { - "teal": 616, - "source": 222, - "pc": [ - 856 - ] - }, - { - "teal": 617, - "source": 222, - "pc": [ - 857, - 858 - ] - }, - { - "teal": 618, - "source": 222, - "pc": [ - 859, - 860 - ] - }, - { - "teal": 619, - "source": 222, - "pc": [ - 861 - ] - }, - { - "teal": 620, - "source": 222, - "pc": [ - 862, - 863 - ] - }, - { - "teal": 621, - "source": 222, - "pc": [ - 864 - ] - }, - { - "teal": 622, - "source": 222, - "pc": [ - 865 - ] - }, - { - "teal": 623, - "source": 222, - "pc": [ - 866 - ] - }, - { - "teal": 624, - "source": 222, - "pc": [ - 867 - ] - }, - { - "teal": 625, - "source": 222, - "pc": [ - 868 - ] - }, - { - "teal": 626, - "source": 222, - "pc": [ - 869, - 870 - ] - }, - { - "teal": 627, - "source": 222, - "pc": [ - 871 - ] - }, - { - "teal": 630, - "source": 222, - "errorMessage": "this.stakeAccumulator.value + (stakedAmountPayment.amount as uint128) * (roundsLeftInBin as uint128) overflowed 128 bits", - "pc": [ - 872 - ] - }, - { - "teal": 631, - "source": 222, - "pc": [ - 873, - 874 - ] - }, - { - "teal": 632, - "source": 222, - "pc": [ - 875 - ] - }, - { - "teal": 633, - "source": 222, - "pc": [ - 876 - ] - }, - { - "teal": 634, - "source": 222, - "pc": [ - 877 - ] - }, - { - "teal": 635, - "source": 222, - "pc": [ - 878 - ] - }, - { - "teal": 636, - "source": 222, - "pc": [ - 879, - 880 - ] - }, - { - "teal": 637, - "source": 222, - "pc": [ - 881 - ] - }, - { - "teal": 638, - "source": 222, - "pc": [ - 882 - ] - }, - { - "teal": 639, - "source": 222, - "pc": [ - 883 - ] - }, - { - "teal": 640, - "source": 221, - "pc": [ - 884 - ] - }, - { - "teal": 644, - "source": 225, - "pc": [ - 885 - ] - }, - { - "teal": 645, - "source": 225, - "pc": [ - 886, - 887 - ] - }, - { - "teal": 650, - "source": 225, - "pc": [ - 888, - 889 - ] - }, - { - "teal": 651, - "source": 225, - "pc": [ - 890, - 891 - ] - }, - { - "teal": 652, - "source": 225, - "pc": [ - 892 - ] - }, - { - "teal": 653, - "source": 225, - "pc": [ - 893, - 894, - 895 - ] - }, - { - "teal": 658, - "source": 226, - "pc": [ - 896, - 897 - ] - }, - { - "teal": 659, - "source": 226, - "pc": [ - 898, - 899 - ] - }, - { - "teal": 660, - "source": 226, - "pc": [ - 900 - ] - }, - { - "teal": 661, - "source": 226, - "pc": [ - 901, - 902, - 903 - ] - }, - { - "teal": 666, - "source": 227, - "pc": [ - 904 - ] - }, - { - "teal": 667, - "source": 227, - "pc": [ - 905 - ] - }, - { - "teal": 668, - "source": 227, - "pc": [ - 906, - 907 - ] - }, - { - "teal": 669, - "source": 227, - "pc": [ - 908 - ] - }, - { - "teal": 670, - "source": 227, - "pc": [ - 909, - 910 - ] - }, - { - "teal": 671, - "source": 227, - "pc": [ - 911, - 912 - ] - }, - { - "teal": 672, - "source": 227, - "pc": [ - 913 - ] - }, - { - "teal": 673, - "source": 227, - "pc": [ - 914, - 915 - ] - }, - { - "teal": 674, - "source": 227, - "pc": [ - 916, - 917 - ] - }, - { - "teal": 675, - "source": 227, - "pc": [ - 918, - 919 - ] - }, - { - "teal": 676, - "source": 227, - "pc": [ - 920, - 921 - ] - }, - { - "teal": 677, - "source": 227, - "pc": [ - 922 - ] - }, - { - "teal": 682, - "source": 229, - "pc": [ - 923, - 924 - ] - }, - { - "teal": 683, - "source": 229, - "pc": [ - 925 - ] - }, - { - "teal": 684, - "source": 229, - "pc": [ - 926 - ] - }, - { - "teal": 685, - "source": 229, - "pc": [ - 927 - ] - }, - { - "teal": 686, - "source": 229, - "pc": [ - 928 - ] - }, - { - "teal": 687, - "source": 229, - "pc": [ - 929, - 930 - ] - }, - { - "teal": 688, - "source": 229, - "pc": [ - 931 - ] - }, - { - "teal": 689, - "source": 229, - "pc": [ - 932, - 933 - ] - }, - { - "teal": 694, - "source": 230, - "pc": [ - 934, - 935 - ] - }, - { - "teal": 695, - "source": 230, - "pc": [ - 936, - 937, - 938 - ] - }, - { - "teal": 696, - "source": 230, - "pc": [ - 939, - 940 - ] - }, - { - "teal": 697, - "source": 230, - "pc": [ - 941 - ] - }, - { - "teal": 698, - "source": 230, - "pc": [ - 942, - 943, - 944 - ] - }, - { - "teal": 703, - "source": 232, - "pc": [ - 945, - 946 - ] - }, - { - "teal": 704, - "source": 232, - "pc": [ - 947, - 948 - ] - }, - { - "teal": 705, - "source": 232, - "pc": [ - 949, - 950 - ] - }, - { - "teal": 706, - "source": 232, - "pc": [ - 951, - 952, - 953 - ] - }, - { - "teal": 707, - "source": 232, - "pc": [ - 954 - ] - }, - { - "teal": 708, - "source": 232, - "pc": [ - 955, - 956 - ] - }, - { - "teal": 709, - "source": 232, - "pc": [ - 957, - 958 - ] - }, - { - "teal": 710, - "source": 232, - "pc": [ - 959 - ] - }, - { - "teal": 711, - "source": 232, - "pc": [ - 960 - ] - }, - { - "teal": 712, - "source": 232, - "pc": [ - 961 - ] - }, - { - "teal": 713, - "source": 232, - "pc": [ - 962, - 963 - ] - }, - { - "teal": 717, - "source": 233, - "pc": [ - 964, - 965 - ] - }, - { - "teal": 718, - "source": 233, - "pc": [ - 966, - 967 - ] - }, - { - "teal": 719, - "source": 233, - "pc": [ - 968, - 969 - ] - }, - { - "teal": 720, - "source": 233, - "pc": [ - 970 - ] - }, - { - "teal": 721, - "source": 233, - "pc": [ - 971 - ] - }, - { - "teal": 722, - "source": 233, - "pc": [ - 972, - 973 - ] - }, - { - "teal": 726, - "source": 236, - "pc": [ - 974, - 975 - ] - }, - { - "teal": 727, - "source": 236, - "pc": [ - 976 - ] - }, - { - "teal": 728, - "source": 236, - "pc": [ - 977 - ] - }, - { - "teal": 729, - "source": 236, - "pc": [ - 978, - 979 - ] - }, - { - "teal": 730, - "source": 236, - "pc": [ - 980 - ] - }, - { - "teal": 731, - "source": 236, - "pc": [ - 981, - 982 - ] - }, - { - "teal": 732, - "source": 236, - "pc": [ - 983 - ] - }, - { - "teal": 736, - "source": 238, - "pc": [ - 984, - 985 - ] - }, - { - "teal": 737, - "source": 238, - "pc": [ - 986, - 987, - 988 - ] - }, - { - "teal": 743, - "source": 240, - "pc": [ - 989, - 990 - ] - }, - { - "teal": 744, - "source": 240, - "pc": [ - 991 - ] - }, - { - "teal": 745, - "source": 240, - "pc": [ - 992 - ] - }, - { - "teal": 746, - "source": 240, - "pc": [ - 993 - ] - }, - { - "teal": 747, - "source": 240, - "pc": [ - 994, - 995, - 996 - ] - }, - { - "teal": 748, - "source": 240, - "pc": [ - 997, - 998 - ] - }, - { - "teal": 749, - "source": 240, - "pc": [ - 999, - 1000, - 1001 - ] - }, - { - "teal": 750, - "source": 240, - "pc": [ - 1002, - 1003 - ] - }, - { - "teal": 751, - "source": 240, - "pc": [ - 1004 - ] - }, - { - "teal": 752, - "source": 240, - "pc": [ - 1005 - ] - }, - { - "teal": 755, - "source": 240, - "pc": [ - 1006, - 1007, - 1008 - ] - }, - { - "teal": 760, - "source": 241, - "pc": [ - 1009, - 1010 - ] - }, - { - "teal": 761, - "source": 241, - "pc": [ - 1011 - ] - }, - { - "teal": 762, - "source": 241, - "pc": [ - 1012 - ] - }, - { - "teal": 763, - "source": 241, - "pc": [ - 1013, - 1014 - ] - }, - { - "teal": 770, - "source": 225, - "pc": [ - 1015, - 1016 - ] - }, - { - "teal": 771, - "source": 225, - "pc": [ - 1017 - ] - }, - { - "teal": 772, - "source": 225, - "pc": [ - 1018 - ] - }, - { - "teal": 773, - "source": 225, - "pc": [ - 1019, - 1020 - ] - }, - { - "teal": 774, - "source": 225, - "pc": [ - 1021, - 1022, - 1023 - ] - }, - { - "teal": 780, - "source": 245, - "pc": [ - 1024, - 1025 - ] - }, - { - "teal": 781, - "source": 245, - "pc": [ - 1026 - ] - }, - { - "teal": 782, - "source": 245, - "pc": [ - 1027 - ] - }, - { - "teal": 783, - "source": 245, - "pc": [ - 1028, - 1029, - 1030 - ] - }, - { - "teal": 787, - "source": 247, - "errorMessage": "Staking pool full", - "pc": [ - 1031 - ] - }, - { - "teal": 792, - "source": 252, - "pc": [ - 1032, - 1033 - ] - }, - { - "teal": 793, - "source": 252, - "pc": [ - 1034, - 1035 - ] - }, - { - "teal": 794, - "source": 252, - "pc": [ - 1036, - 1037 - ] - }, - { - "teal": 795, - "source": 252, - "pc": [ - 1038 - ] - }, - { - "teal": 796, - "source": 252, - "pc": [ - 1039 - ] - }, - { - "teal": 799, - "source": 252, - "errorMessage": "must stake at least the minimum for this pool", - "pc": [ - 1040 - ] - }, - { - "teal": 803, - "source": 254, - "pc": [ - 1041, - 1042 - ] - }, - { - "teal": 804, - "source": 254, - "pc": [ - 1043 - ] - }, - { - "teal": 805, - "source": 254, - "pc": [ - 1044 - ] - }, - { - "teal": 806, - "source": 254, - "pc": [ - 1045 - ] - }, - { - "teal": 807, - "source": 254, - "pc": [ - 1046 - ] - }, - { - "teal": 808, - "source": 254, - "pc": [ - 1047 - ] - }, - { - "teal": 809, - "source": 254, - "pc": [ - 1048 - ] - }, - { - "teal": 810, - "source": 254, - "pc": [ - 1049, - 1050 - ] - }, - { - "teal": 811, - "source": 254, - "pc": [ - 1051 - ] - }, - { - "teal": 812, - "source": 254, - "pc": [ - 1052, - 1053 - ] - }, - { - "teal": 813, - "source": 254, - "pc": [ - 1054 - ] - }, - { - "teal": 814, - "source": 254, - "pc": [ - 1055, - 1056 - ] - }, - { - "teal": 815, - "source": 254, - "pc": [ - 1057 - ] - }, - { - "teal": 816, - "source": 254, - "pc": [ - 1058 - ] - }, - { - "teal": 826, - "source": 255, - "pc": [ - 1059, - 1060 - ] - }, - { - "teal": 827, - "source": 255, - "pc": [ - 1061 - ] - }, - { - "teal": 828, - "source": 255, - "pc": [ - 1062 - ] - }, - { - "teal": 829, - "source": 255, - "pc": [ - 1063 - ] - }, - { - "teal": 830, - "source": 255, - "pc": [ - 1064 - ] - }, - { - "teal": 831, - "source": 256, - "pc": [ - 1065, - 1066 - ] - }, - { - "teal": 832, - "source": 257, - "pc": [ - 1067, - 1068 - ] - }, - { - "teal": 833, - "source": 257, - "pc": [ - 1069, - 1070 - ] - }, - { - "teal": 834, - "source": 257, - "pc": [ - 1071 - ] - }, - { - "teal": 835, - "source": 257, - "pc": [ - 1072 - ] - }, - { - "teal": 836, - "source": 258, - "pc": [ - 1073, - 1074 - ] - }, - { - "teal": 837, - "source": 258, - "pc": [ - 1075 - ] - }, - { - "teal": 838, - "source": 259, - "pc": [ - 1076, - 1077 - ] - }, - { - "teal": 839, - "source": 259, - "pc": [ - 1078 - ] - }, - { - "teal": 840, - "source": 260, - "pc": [ - 1079, - 1080 - ] - }, - { - "teal": 841, - "source": 260, - "pc": [ - 1081 - ] - }, - { - "teal": 842, - "source": 260, - "pc": [ - 1082 - ] - }, - { - "teal": 843, - "source": 255, - "pc": [ - 1083 - ] - }, - { - "teal": 844, - "source": 255, - "pc": [ - 1084, - 1085 - ] - }, - { - "teal": 845, - "source": 255, - "pc": [ - 1086 - ] - }, - { - "teal": 849, - "source": 262, - "pc": [ - 1087, - 1088 - ] - }, - { - "teal": 850, - "source": 262, - "pc": [ - 1089 - ] - }, - { - "teal": 851, - "source": 262, - "pc": [ - 1090 - ] - }, - { - "teal": 852, - "source": 262, - "pc": [ - 1091 - ] - }, - { - "teal": 853, - "source": 262, - "pc": [ - 1092, - 1093 - ] - }, - { - "teal": 854, - "source": 262, - "pc": [ - 1094 - ] - }, - { - "teal": 855, - "source": 262, - "pc": [ - 1095 - ] - }, - { - "teal": 859, - "source": 263, - "pc": [ - 1096, - 1097 - ] - }, - { - "teal": 863, - "source": 191, - "pc": [ - 1098, - 1099 - ] - }, - { - "teal": 866, - "source": 191, - "pc": [ - 1100, - 1101 - ] - }, - { - "teal": 867, - "source": 191, - "pc": [ - 1102 - ] - }, - { - "teal": 872, - "source": 277, - "pc": [ - 1103, - 1104, - 1105 - ] - }, - { - "teal": 873, - "source": 277, - "pc": [ - 1106 - ] - }, - { - "teal": 876, - "source": 277, - "pc": [ - 1107, - 1108, - 1109 - ] - }, - { - "teal": 877, - "source": 277, - "pc": [ - 1110 - ] - }, - { - "teal": 878, - "source": 277, - "pc": [ - 1111 - ] - }, - { - "teal": 879, - "source": 277, - "pc": [ - 1112, - 1113 - ] - }, - { - "teal": 880, - "source": 277, - "pc": [ - 1114 - ] - }, - { - "teal": 883, - "source": 277, - "errorMessage": "argument 1 (staker) for removeStake must be a address", - "pc": [ - 1115 - ] - }, - { - "teal": 886, - "source": 277, - "pc": [ - 1116, - 1117, - 1118 - ] - }, - { - "teal": 887, - "source": 277, - "pc": [ - 1119 - ] - }, - { - "teal": 888, - "source": 277, - "pc": [ - 1120 - ] - }, - { - "teal": 902, - "source": 277, - "pc": [ - 1121, - 1122, - 1123 - ] - }, - { - "teal": 905, - "source": 277, - "pc": [ - 1124, - 1125 - ] - }, - { - "teal": 906, - "source": 277, - "pc": [ - 1126, - 1127 - ] - }, - { - "teal": 911, - "source": 280, - "pc": [ - 1128, - 1129 - ] - }, - { - "teal": 912, - "source": 280, - "pc": [ - 1130, - 1131 - ] - }, - { - "teal": 913, - "source": 280, - "pc": [ - 1132 - ] - }, - { - "teal": 914, - "source": 280, - "pc": [ - 1133, - 1134, - 1135 - ] - }, - { - "teal": 922, - "source": 282, - "pc": [ - 1136, - 1137, - 1138 - ] - }, - { - "teal": 925, - "source": 281, - "errorMessage": "If staker is not sender in removeStake call, then sender MUST be owner or manager of validator", - "pc": [ - 1139 - ] - }, - { - "teal": 930, - "source": 287, - "pc": [ - 1140, - 1141, - 1142 - ] - }, - { - "teal": 934, - "source": 289, - "pc": [ - 1143 - ] - }, - { - "teal": 935, - "source": 289, - "pc": [ - 1144, - 1145 - ] - }, - { - "teal": 940, - "source": 289, - "pc": [ - 1146, - 1147 - ] - }, - { - "teal": 941, - "source": 289, - "pc": [ - 1148, - 1149 - ] - }, - { - "teal": 942, - "source": 289, - "pc": [ - 1150 - ] - }, - { - "teal": 943, - "source": 289, - "pc": [ - 1151, - 1152, - 1153 - ] - }, - { - "teal": 948, - "source": 290, - "pc": [ - 1154, - 1155 - ] - }, - { - "teal": 949, - "source": 290, - "pc": [ - 1156, - 1157 - ] - }, - { - "teal": 950, - "source": 290, - "pc": [ - 1158 - ] - }, - { - "teal": 951, - "source": 290, - "pc": [ - 1159, - 1160, - 1161 - ] - }, - { - "teal": 956, - "source": 291, - "pc": [ - 1162 - ] - }, - { - "teal": 957, - "source": 291, - "pc": [ - 1163 - ] - }, - { - "teal": 958, - "source": 291, - "pc": [ - 1164, - 1165 - ] - }, - { - "teal": 959, - "source": 291, - "pc": [ - 1166 - ] - }, - { - "teal": 960, - "source": 291, - "pc": [ - 1167, - 1168 - ] - }, - { - "teal": 961, - "source": 291, - "pc": [ - 1169, - 1170 - ] - }, - { - "teal": 962, - "source": 291, - "pc": [ - 1171 - ] - }, - { - "teal": 963, - "source": 291, - "pc": [ - 1172, - 1173 - ] - }, - { - "teal": 964, - "source": 291, - "pc": [ - 1174, - 1175 - ] - }, - { - "teal": 965, - "source": 291, - "pc": [ - 1176, - 1177 - ] - }, - { - "teal": 966, - "source": 291, - "pc": [ - 1178, - 1179 - ] - }, - { - "teal": 967, - "source": 291, - "pc": [ - 1180 - ] - }, - { - "teal": 972, - "source": 293, - "pc": [ - 1181, - 1182 - ] - }, - { - "teal": 973, - "source": 293, - "pc": [ - 1183 - ] - }, - { - "teal": 974, - "source": 293, - "pc": [ - 1184 - ] - }, - { - "teal": 975, - "source": 293, - "pc": [ - 1185 - ] - }, - { - "teal": 976, - "source": 293, - "pc": [ - 1186 - ] - }, - { - "teal": 977, - "source": 293, - "pc": [ - 1187, - 1188 - ] - }, - { - "teal": 978, - "source": 293, - "pc": [ - 1189 - ] - }, - { - "teal": 979, - "source": 293, - "pc": [ - 1190, - 1191 - ] - }, - { - "teal": 984, - "source": 294, - "pc": [ - 1192, - 1193 - ] - }, - { - "teal": 985, - "source": 294, - "pc": [ - 1194, - 1195, - 1196 - ] - }, - { - "teal": 986, - "source": 294, - "pc": [ - 1197, - 1198 - ] - }, - { - "teal": 987, - "source": 294, - "pc": [ - 1199 - ] - }, - { - "teal": 988, - "source": 294, - "pc": [ - 1200, - 1201, - 1202 - ] - }, - { - "teal": 994, - "source": 295, - "pc": [ - 1203, - 1204 - ] - }, - { - "teal": 995, - "source": 295, - "pc": [ - 1205 - ] - }, - { - "teal": 996, - "source": 295, - "pc": [ - 1206 - ] - }, - { - "teal": 997, - "source": 295, - "pc": [ - 1207, - 1208, - 1209 - ] - }, - { - "teal": 1002, - "source": 297, - "pc": [ - 1210, - 1211 - ] - }, - { - "teal": 1003, - "source": 297, - "pc": [ - 1212, - 1213, - 1214 - ] - }, - { - "teal": 1004, - "source": 297, - "pc": [ - 1215 - ] - }, - { - "teal": 1005, - "source": 297, - "pc": [ - 1216, - 1217 - ] - }, - { - "teal": 1011, - "source": 299, - "pc": [ - 1218, - 1219 - ] - }, - { - "teal": 1012, - "source": 299, - "pc": [ - 1220, - 1221, - 1222 - ] - }, - { - "teal": 1013, - "source": 299, - "pc": [ - 1223 - ] - }, - { - "teal": 1014, - "source": 299, - "pc": [ - 1224, - 1225 - ] - }, - { - "teal": 1015, - "source": 299, - "pc": [ - 1226 - ] - }, - { - "teal": 1016, - "source": 299, - "pc": [ - 1227, - 1228, - 1229 - ] - }, - { - "teal": 1020, - "source": 300, - "errorMessage": "Insufficient balance", - "pc": [ - 1230 - ] - }, - { - "teal": 1025, - "source": 302, - "pc": [ - 1231, - 1232 - ] - }, - { - "teal": 1026, - "source": 302, - "pc": [ - 1233, - 1234 - ] - }, - { - "teal": 1027, - "source": 302, - "pc": [ - 1235, - 1236 - ] - }, - { - "teal": 1028, - "source": 302, - "pc": [ - 1237, - 1238, - 1239 - ] - }, - { - "teal": 1029, - "source": 302, - "pc": [ - 1240 - ] - }, - { - "teal": 1030, - "source": 302, - "pc": [ - 1241, - 1242 - ] - }, - { - "teal": 1031, - "source": 302, - "pc": [ - 1243 - ] - }, - { - "teal": 1032, - "source": 302, - "pc": [ - 1244 - ] - }, - { - "teal": 1033, - "source": 302, - "pc": [ - 1245 - ] - }, - { - "teal": 1034, - "source": 302, - "pc": [ - 1246, - 1247 - ] - }, - { - "teal": 1038, - "source": 303, - "pc": [ - 1248, - 1249 - ] - }, - { - "teal": 1039, - "source": 303, - "pc": [ - 1250 - ] - }, - { - "teal": 1040, - "source": 303, - "pc": [ - 1251, - 1252 - ] - }, - { - "teal": 1041, - "source": 303, - "pc": [ - 1253 - ] - }, - { - "teal": 1042, - "source": 303, - "pc": [ - 1254, - 1255 - ] - }, - { - "teal": 1043, - "source": 303, - "pc": [ - 1256 - ] - }, - { - "teal": 1044, - "source": 303, - "pc": [ - 1257 - ] - }, - { - "teal": 1048, - "source": 305, - "pc": [ - 1258 - ] - }, - { - "teal": 1049, - "source": 305, - "pc": [ - 1259, - 1260 - ] - }, - { - "teal": 1054, - "source": 306, - "pc": [ - 1261, - 1262 - ] - }, - { - "teal": 1055, - "source": 306, - "pc": [ - 1263, - 1264, - 1265 - ] - }, - { - "teal": 1056, - "source": 306, - "pc": [ - 1266 - ] - }, - { - "teal": 1057, - "source": 306, - "pc": [ - 1267 - ] - }, - { - "teal": 1058, - "source": 306, - "pc": [ - 1268 - ] - }, - { - "teal": 1059, - "source": 306, - "pc": [ - 1269, - 1270, - 1271 - ] - }, - { - "teal": 1065, - "source": 308, - "pc": [ - 1272 - ] - }, - { - "teal": 1066, - "source": 308, - "pc": [ - 1273 - ] - }, - { - "teal": 1067, - "source": 308, - "pc": [ - 1274 - ] - }, - { - "teal": 1068, - "source": 308, - "pc": [ - 1275 - ] - }, - { - "teal": 1069, - "source": 308, - "pc": [ - 1276, - 1277, - 1278 - ] - }, - { - "teal": 1077, - "source": 309, - "pc": [ - 1279 - ] - }, - { - "teal": 1078, - "source": 309, - "pc": [ - 1280 - ] - }, - { - "teal": 1079, - "source": 309, - "pc": [ - 1281, - 1282 - ] - }, - { - "teal": 1080, - "source": 309, - "pc": [ - 1283, - 1284 - ] - }, - { - "teal": 1081, - "source": 309, - "pc": [ - 1285, - 1286 - ] - }, - { - "teal": 1085, - "source": 310, - "pc": [ - 1287 - ] - }, - { - "teal": 1086, - "source": 310, - "pc": [ - 1288 - ] - }, - { - "teal": 1087, - "source": 310, - "pc": [ - 1289, - 1290 - ] - }, - { - "teal": 1091, - "source": 311, - "pc": [ - 1291 - ] - }, - { - "teal": 1092, - "source": 311, - "pc": [ - 1292 - ] - }, - { - "teal": 1093, - "source": 311, - "pc": [ - 1293 - ] - }, - { - "teal": 1094, - "source": 311, - "pc": [ - 1294, - 1295 - ] - }, - { - "teal": 1097, - "source": 309, - "pc": [ - 1296 - ] - }, - { - "teal": 1098, - "source": 309, - "pc": [ - 1297, - 1298 - ] - }, - { - "teal": 1101, - "source": 309, - "pc": [ - 1299 - ] - }, - { - "teal": 1102, - "source": 309, - "pc": [ - 1300, - 1301 - ] - }, - { - "teal": 1103, - "source": 309, - "pc": [ - 1302 - ] - }, - { - "teal": 1104, - "source": 309, - "pc": [ - 1303 - ] - }, - { - "teal": 1105, - "source": 309, - "pc": [ - 1304, - 1305 - ] - }, - { - "teal": 1106, - "source": 309, - "pc": [ - 1306, - 1307, - 1308 - ] - }, - { - "teal": 1107, - "source": 309, - "pc": [ - 1309, - 1310 - ] - }, - { - "teal": 1115, - "source": 317, - "pc": [ - 1311 - ] - }, - { - "teal": 1116, - "source": 317, - "pc": [ - 1312, - 1313 - ] - }, - { - "teal": 1117, - "source": 317, - "pc": [ - 1314, - 1315 - ] - }, - { - "teal": 1121, - "source": 318, - "pc": [ - 1316, - 1317 - ] - }, - { - "teal": 1122, - "source": 318, - "pc": [ - 1318, - 1319, - 1320 - ] - }, - { - "teal": 1123, - "source": 318, - "pc": [ - 1321 - ] - }, - { - "teal": 1124, - "source": 318, - "pc": [ - 1322, - 1323 - ] - }, - { - "teal": 1128, - "source": 319, - "pc": [ - 1324, - 1325 - ] - }, - { - "teal": 1129, - "source": 319, - "pc": [ - 1326, - 1327 - ] - }, - { - "teal": 1133, - "source": 320, - "pc": [ - 1328, - 1329 - ] - }, - { - "teal": 1134, - "source": 320, - "pc": [ - 1330, - 1331, - 1332 - ] - }, - { - "teal": 1135, - "source": 320, - "pc": [ - 1333 - ] - }, - { - "teal": 1136, - "source": 320, - "pc": [ - 1334, - 1335 - ] - }, - { - "teal": 1139, - "source": 317, - "pc": [ - 1336 - ] - }, - { - "teal": 1140, - "source": 317, - "pc": [ - 1337, - 1338 - ] - }, - { - "teal": 1143, - "source": 317, - "pc": [ - 1339 - ] - }, - { - "teal": 1147, - "source": 322, - "pc": [ - 1340, - 1341 - ] - }, - { - "teal": 1148, - "source": 322, - "pc": [ - 1342, - 1343, - 1344 - ] - }, - { - "teal": 1149, - "source": 322, - "pc": [ - 1345 - ] - }, - { - "teal": 1150, - "source": 322, - "pc": [ - 1346, - 1347 - ] - }, - { - "teal": 1154, - "source": 323, - "pc": [ - 1348, - 1349 - ] - }, - { - "teal": 1155, - "source": 323, - "pc": [ - 1350, - 1351 - ] - }, - { - "teal": 1156, - "source": 323, - "pc": [ - 1352, - 1353 - ] - }, - { - "teal": 1157, - "source": 323, - "pc": [ - 1354, - 1355 - ] - }, - { - "teal": 1158, - "source": 308, - "pc": [ - 1356, - 1357, - 1358 - ] - }, - { - "teal": 1163, - "source": 328, - "pc": [ - 1359, - 1360 - ] - }, - { - "teal": 1164, - "source": 328, - "pc": [ - 1361, - 1362, - 1363 - ] - }, - { - "teal": 1165, - "source": 328, - "pc": [ - 1364 - ] - }, - { - "teal": 1166, - "source": 328, - "pc": [ - 1365, - 1366 - ] - }, - { - "teal": 1170, - "source": 329, - "pc": [ - 1367, - 1368 - ] - }, - { - "teal": 1171, - "source": 329, - "pc": [ - 1369, - 1370 - ] - }, - { - "teal": 1172, - "source": 329, - "pc": [ - 1371, - 1372 - ] - }, - { - "teal": 1173, - "source": 329, - "pc": [ - 1373, - 1374 - ] - }, - { - "teal": 1183, - "source": 335, - "pc": [ - 1375, - 1376 - ] - }, - { - "teal": 1184, - "source": 335, - "pc": [ - 1377, - 1378, - 1379 - ] - }, - { - "teal": 1185, - "source": 335, - "pc": [ - 1380 - ] - }, - { - "teal": 1186, - "source": 335, - "pc": [ - 1381 - ] - }, - { - "teal": 1187, - "source": 335, - "pc": [ - 1382 - ] - }, - { - "teal": 1188, - "source": 335, - "pc": [ - 1383 - ] - }, - { - "teal": 1189, - "source": 335, - "pc": [ - 1384, - 1385, - 1386 - ] - }, - { - "teal": 1190, - "source": 335, - "pc": [ - 1387, - 1388 - ] - }, - { - "teal": 1191, - "source": 335, - "pc": [ - 1389, - 1390, - 1391 - ] - }, - { - "teal": 1192, - "source": 335, - "pc": [ - 1392 - ] - }, - { - "teal": 1193, - "source": 335, - "pc": [ - 1393, - 1394 - ] - }, - { - "teal": 1194, - "source": 335, - "pc": [ - 1395 - ] - }, - { - "teal": 1195, - "source": 335, - "pc": [ - 1396 - ] - }, - { - "teal": 1196, - "source": 335, - "pc": [ - 1397 - ] - }, - { - "teal": 1200, - "source": 334, - "errorMessage": "cannot reduce balance below minimum allowed stake unless all is removed", - "pc": [ - 1398 - ] - }, - { - "teal": 1208, - "source": 342, - "pc": [ - 1399 - ] - }, - { - "teal": 1209, - "source": 342, - "pc": [ - 1400 - ] - }, - { - "teal": 1210, - "source": 342, - "pc": [ - 1401, - 1402 - ] - }, - { - "teal": 1214, - "source": 343, - "pc": [ - 1403, - 1404 - ] - }, - { - "teal": 1215, - "source": 343, - "pc": [ - 1405, - 1406 - ] - }, - { - "teal": 1219, - "source": 344, - "pc": [ - 1407, - 1408 - ] - }, - { - "teal": 1220, - "source": 344, - "pc": [ - 1409, - 1410 - ] - }, - { - "teal": 1224, - "source": 345, - "pc": [ - 1411, - 1412, - 1413, - 1414, - 1415, - 1416, - 1417, - 1418, - 1419, - 1420 - ] - }, - { - "teal": 1225, - "source": 345, - "pc": [ - 1421, - 1422 - ] - }, - { - "teal": 1228, - "source": 342, - "pc": [ - 1423 - ] - }, - { - "teal": 1229, - "source": 342, - "pc": [ - 1424, - 1425 - ] - }, - { - "teal": 1232, - "source": 342, - "pc": [ - 1426 - ] - }, - { - "teal": 1236, - "source": 347, - "pc": [ - 1427 - ] - }, - { - "teal": 1237, - "source": 347, - "pc": [ - 1428, - 1429 - ] - }, - { - "teal": 1242, - "source": 348, - "pc": [ - 1430, - 1431 - ] - }, - { - "teal": 1243, - "source": 348, - "pc": [ - 1432, - 1433, - 1434 - ] - }, - { - "teal": 1244, - "source": 348, - "pc": [ - 1435 - ] - }, - { - "teal": 1245, - "source": 348, - "pc": [ - 1436 - ] - }, - { - "teal": 1246, - "source": 348, - "pc": [ - 1437 - ] - }, - { - "teal": 1247, - "source": 348, - "pc": [ - 1438, - 1439, - 1440 - ] - }, - { - "teal": 1252, - "source": 350, - "pc": [ - 1441, - 1442 - ] - }, - { - "teal": 1253, - "source": 350, - "pc": [ - 1443 - ] - }, - { - "teal": 1254, - "source": 350, - "pc": [ - 1444 - ] - }, - { - "teal": 1255, - "source": 350, - "pc": [ - 1445 - ] - }, - { - "teal": 1256, - "source": 350, - "pc": [ - 1446, - 1447 - ] - }, - { - "teal": 1257, - "source": 350, - "pc": [ - 1448 - ] - }, - { - "teal": 1258, - "source": 350, - "pc": [ - 1449 - ] - }, - { - "teal": 1262, - "source": 351, - "pc": [ - 1450, - 1451 - ] - }, - { - "teal": 1263, - "source": 351, - "pc": [ - 1452 - ] - }, - { - "teal": 1264, - "source": 351, - "pc": [ - 1453, - 1454 - ] - }, - { - "teal": 1265, - "source": 351, - "pc": [ - 1455 - ] - }, - { - "teal": 1266, - "source": 351, - "pc": [ - 1456, - 1457 - ] - }, - { - "teal": 1270, - "source": 352, - "pc": [ - 1458, - 1459 - ] - }, - { - "teal": 1271, - "source": 352, - "pc": [ - 1460, - 1461 - ] - }, - { - "teal": 1272, - "source": 352, - "pc": [ - 1462, - 1463 - ] - }, - { - "teal": 1273, - "source": 352, - "pc": [ - 1464, - 1465 - ] - }, - { - "teal": 1277, - "source": 353, - "pc": [ - 1466, - 1467 - ] - }, - { - "teal": 1278, - "source": 353, - "pc": [ - 1468, - 1469 - ] - }, - { - "teal": 1279, - "source": 353, - "pc": [ - 1470, - 1471 - ] - }, - { - "teal": 1280, - "source": 353, - "pc": [ - 1472, - 1473 - ] - }, - { - "teal": 1284, - "source": 354, - "pc": [ - 1474 - ] - }, - { - "teal": 1285, - "source": 354, - "pc": [ - 1475, - 1476 - ] - }, - { - "teal": 1290, - "source": 357, - "pc": [ - 1477, - 1478 - ] - }, - { - "teal": 1291, - "source": 357, - "pc": [ - 1479 - ] - }, - { - "teal": 1292, - "source": 357, - "pc": [ - 1480 - ] - }, - { - "teal": 1293, - "source": 357, - "pc": [ - 1481, - 1482 - ] - }, - { - "teal": 1294, - "source": 357, - "pc": [ - 1483 - ] - }, - { - "teal": 1295, - "source": 357, - "pc": [ - 1484, - 1485 - ] - }, - { - "teal": 1296, - "source": 357, - "pc": [ - 1486 - ] - }, - { - "teal": 1300, - "source": 359, - "pc": [ - 1487, - 1488 - ] - }, - { - "teal": 1301, - "source": 359, - "pc": [ - 1489 - ] - }, - { - "teal": 1302, - "source": 359, - "pc": [ - 1490, - 1491 - ] - }, - { - "teal": 1303, - "source": 359, - "pc": [ - 1492 - ] - }, - { - "teal": 1304, - "source": 359, - "pc": [ - 1493 - ] - }, - { - "teal": 1305, - "source": 359, - "pc": [ - 1494, - 1495 - ] - }, - { - "teal": 1306, - "source": 359, - "pc": [ - 1496 - ] - }, - { - "teal": 1307, - "source": 359, - "pc": [ - 1497, - 1498 - ] - }, - { - "teal": 1311, - "source": 360, - "pc": [ - 1499, - 1500 - ] - }, - { - "teal": 1312, - "source": 360, - "pc": [ - 1501 - ] - }, - { - "teal": 1313, - "source": 360, - "pc": [ - 1502, - 1503 - ] - }, - { - "teal": 1314, - "source": 360, - "pc": [ - 1504 - ] - }, - { - "teal": 1315, - "source": 360, - "pc": [ - 1505 - ] - }, - { - "teal": 1316, - "source": 360, - "pc": [ - 1506 - ] - }, - { - "teal": 1317, - "source": 360, - "pc": [ - 1507 - ] - }, - { - "teal": 1318, - "source": 360, - "pc": [ - 1508, - 1509 - ] - }, - { - "teal": 1319, - "source": 360, - "pc": [ - 1510 - ] - }, - { - "teal": 1322, - "source": 360, - "errorMessage": "(amountToUnstake as uint128) * (roundsLeftInBin as uint128) overflowed 128 bits", - "pc": [ - 1511 - ] - }, - { - "teal": 1323, - "source": 360, - "pc": [ - 1512, - 1513 - ] - }, - { - "teal": 1324, - "source": 360, - "pc": [ - 1514 - ] - }, - { - "teal": 1325, - "source": 360, - "pc": [ - 1515 - ] - }, - { - "teal": 1326, - "source": 360, - "pc": [ - 1516 - ] - }, - { - "teal": 1327, - "source": 360, - "pc": [ - 1517 - ] - }, - { - "teal": 1328, - "source": 360, - "pc": [ - 1518, - 1519 - ] - }, - { - "teal": 1329, - "source": 360, - "pc": [ - 1520 - ] - }, - { - "teal": 1330, - "source": 360, - "pc": [ - 1521 - ] - }, - { - "teal": 1331, - "source": 360, - "pc": [ - 1522 - ] - }, - { - "teal": 1332, - "source": 360, - "pc": [ - 1523, - 1524 - ] - }, - { - "teal": 1336, - "source": 361, - "pc": [ - 1525, - 1526 - ] - }, - { - "teal": 1337, - "source": 361, - "pc": [ - 1527 - ] - }, - { - "teal": 1338, - "source": 361, - "pc": [ - 1528 - ] - }, - { - "teal": 1339, - "source": 361, - "pc": [ - 1529, - 1530 - ] - }, - { - "teal": 1340, - "source": 361, - "pc": [ - 1531 - ] - }, - { - "teal": 1341, - "source": 361, - "pc": [ - 1532 - ] - }, - { - "teal": 1342, - "source": 361, - "pc": [ - 1533 - ] - }, - { - "teal": 1343, - "source": 361, - "pc": [ - 1534, - 1535 - ] - }, - { - "teal": 1344, - "source": 361, - "pc": [ - 1536 - ] - }, - { - "teal": 1347, - "source": 361, - "errorMessage": "this.stakeAccumulator.value - subtractAmount overflowed 128 bits", - "pc": [ - 1537 - ] - }, - { - "teal": 1348, - "source": 361, - "pc": [ - 1538, - 1539 - ] - }, - { - "teal": 1349, - "source": 361, - "pc": [ - 1540 - ] - }, - { - "teal": 1350, - "source": 361, - "pc": [ - 1541 - ] - }, - { - "teal": 1351, - "source": 361, - "pc": [ - 1542 - ] - }, - { - "teal": 1352, - "source": 361, - "pc": [ - 1543 - ] - }, - { - "teal": 1353, - "source": 361, - "pc": [ - 1544, - 1545 - ] - }, - { - "teal": 1354, - "source": 361, - "pc": [ - 1546 - ] - }, - { - "teal": 1355, - "source": 361, - "pc": [ - 1547 - ] - }, - { - "teal": 1356, - "source": 361, - "pc": [ - 1548 - ] - }, - { - "teal": 1357, - "source": 361, - "pc": [ - 1549 - ] - }, - { - "teal": 1370, - "source": 366, - "pc": [ - 1550 - ] - }, - { - "teal": 1371, - "source": 366, - "pc": [ - 1551 - ] - }, - { - "teal": 1372, - "source": 366, - "pc": [ - 1552, - 1553 - ] - }, - { - "teal": 1373, - "source": 366, - "pc": [ - 1554, - 1555 - ] - }, - { - "teal": 1374, - "source": 366, - "pc": [ - 1556, - 1557 - ] - }, - { - "teal": 1378, - "source": 367, - "pc": [ - 1558 - ] - }, - { - "teal": 1379, - "source": 367, - "pc": [ - 1559 - ] - }, - { - "teal": 1380, - "source": 367, - "pc": [ - 1560, - 1561 - ] - }, - { - "teal": 1390, - "source": 369, - "pc": [ - 1562 - ] - }, - { - "teal": 1391, - "source": 369, - "pc": [ - 1563 - ] - }, - { - "teal": 1392, - "source": 369, - "pc": [ - 1564 - ] - }, - { - "teal": 1393, - "source": 369, - "pc": [ - 1565 - ] - }, - { - "teal": 1394, - "source": 369, - "pc": [ - 1566 - ] - }, - { - "teal": 1395, - "source": 369, - "pc": [ - 1567 - ] - }, - { - "teal": 1396, - "source": 369, - "pc": [ - 1568 - ] - }, - { - "teal": 1397, - "source": 369, - "pc": [ - 1569, - 1570, - 1571 - ] - }, - { - "teal": 1398, - "source": 369, - "pc": [ - 1572 - ] - }, - { - "teal": 1399, - "source": 369, - "pc": [ - 1573 - ] - }, - { - "teal": 1400, - "source": 369, - "pc": [ - 1574, - 1575 - ] - }, - { - "teal": 1401, - "source": 370, - "pc": [ - 1576, - 1577 - ] - }, - { - "teal": 1402, - "source": 370, - "pc": [ - 1578, - 1579 - ] - }, - { - "teal": 1403, - "source": 371, - "pc": [ - 1580, - 1581 - ] - }, - { - "teal": 1404, - "source": 371, - "pc": [ - 1582 - ] - }, - { - "teal": 1405, - "source": 371, - "pc": [ - 1583, - 1584 - ] - }, - { - "teal": 1406, - "source": 372, - "pc": [ - 1585, - 1586 - ] - }, - { - "teal": 1407, - "source": 372, - "pc": [ - 1587 - ] - }, - { - "teal": 1408, - "source": 372, - "pc": [ - 1588, - 1589 - ] - }, - { - "teal": 1409, - "source": 373, - "pc": [ - 1590, - 1591 - ] - }, - { - "teal": 1410, - "source": 373, - "pc": [ - 1592, - 1593 - ] - }, - { - "teal": 1411, - "source": 373, - "pc": [ - 1594 - ] - }, - { - "teal": 1412, - "source": 373, - "pc": [ - 1595, - 1596 - ] - }, - { - "teal": 1413, - "source": 373, - "pc": [ - 1597 - ] - }, - { - "teal": 1414, - "source": 373, - "pc": [ - 1598, - 1599 - ] - }, - { - "teal": 1417, - "source": 366, - "pc": [ - 1600 - ] - }, - { - "teal": 1418, - "source": 366, - "pc": [ - 1601, - 1602 - ] - }, - { - "teal": 1421, - "source": 366, - "pc": [ - 1603 - ] - }, - { - "teal": 1425, - "source": 376, - "pc": [ - 1604 - ] - }, - { - "teal": 1432, - "source": 289, - "pc": [ - 1605, - 1606 - ] - }, - { - "teal": 1433, - "source": 289, - "pc": [ - 1607 - ] - }, - { - "teal": 1434, - "source": 289, - "pc": [ - 1608 - ] - }, - { - "teal": 1435, - "source": 289, - "pc": [ - 1609, - 1610 - ] - }, - { - "teal": 1436, - "source": 289, - "pc": [ - 1611, - 1612, - 1613 - ] - }, - { - "teal": 1440, - "source": 379, - "errorMessage": "account not found", - "pc": [ - 1614 - ] - }, - { - "teal": 1441, - "source": 277, - "pc": [ - 1615 - ] - }, - { - "teal": 1446, - "source": 387, - "pc": [ - 1616, - 1617, - 1618 - ] - }, - { - "teal": 1447, - "source": 387, - "pc": [ - 1619 - ] - }, - { - "teal": 1448, - "source": 387, - "pc": [ - 1620 - ] - }, - { - "teal": 1456, - "source": 387, - "pc": [ - 1621, - 1622, - 1623 - ] - }, - { - "teal": 1459, - "source": 387, - "pc": [ - 1624, - 1625 - ] - }, - { - "teal": 1460, - "source": 387, - "pc": [ - 1626, - 1627 - ] - }, - { - "teal": 1464, - "source": 391, - "pc": [ - 1628, - 1629 - ] - }, - { - "teal": 1465, - "source": 391, - "pc": [ - 1630, - 1631 - ] - }, - { - "teal": 1469, - "source": 393, - "pc": [ - 1632 - ] - }, - { - "teal": 1470, - "source": 393, - "pc": [ - 1633, - 1634 - ] - }, - { - "teal": 1475, - "source": 393, - "pc": [ - 1635, - 1636 - ] - }, - { - "teal": 1476, - "source": 393, - "pc": [ - 1637, - 1638 - ] - }, - { - "teal": 1477, - "source": 393, - "pc": [ - 1639 - ] - }, - { - "teal": 1478, - "source": 393, - "pc": [ - 1640, - 1641, - 1642 - ] - }, - { - "teal": 1483, - "source": 394, - "pc": [ - 1643, - 1644 - ] - }, - { - "teal": 1484, - "source": 394, - "pc": [ - 1645, - 1646 - ] - }, - { - "teal": 1485, - "source": 394, - "pc": [ - 1647 - ] - }, - { - "teal": 1486, - "source": 394, - "pc": [ - 1648, - 1649, - 1650 - ] - }, - { - "teal": 1491, - "source": 395, - "pc": [ - 1651 - ] - }, - { - "teal": 1492, - "source": 395, - "pc": [ - 1652 - ] - }, - { - "teal": 1493, - "source": 395, - "pc": [ - 1653, - 1654 - ] - }, - { - "teal": 1494, - "source": 395, - "pc": [ - 1655 - ] - }, - { - "teal": 1495, - "source": 395, - "pc": [ - 1656, - 1657 - ] - }, - { - "teal": 1496, - "source": 395, - "pc": [ - 1658, - 1659 - ] - }, - { - "teal": 1497, - "source": 395, - "pc": [ - 1660 - ] - }, - { - "teal": 1498, - "source": 395, - "pc": [ - 1661, - 1662 - ] - }, - { - "teal": 1499, - "source": 395, - "pc": [ - 1663, - 1664 - ] - }, - { - "teal": 1500, - "source": 395, - "pc": [ - 1665, - 1666 - ] - }, - { - "teal": 1501, - "source": 395, - "pc": [ - 1667, - 1668 - ] - }, - { - "teal": 1502, - "source": 395, - "pc": [ - 1669 - ] - }, - { - "teal": 1507, - "source": 397, - "pc": [ - 1670, - 1671 - ] - }, - { - "teal": 1508, - "source": 397, - "pc": [ - 1672 - ] - }, - { - "teal": 1509, - "source": 397, - "pc": [ - 1673 - ] - }, - { - "teal": 1510, - "source": 397, - "pc": [ - 1674 - ] - }, - { - "teal": 1511, - "source": 397, - "pc": [ - 1675 - ] - }, - { - "teal": 1512, - "source": 397, - "pc": [ - 1676, - 1677 - ] - }, - { - "teal": 1513, - "source": 397, - "pc": [ - 1678 - ] - }, - { - "teal": 1514, - "source": 397, - "pc": [ - 1679, - 1680 - ] - }, - { - "teal": 1519, - "source": 398, - "pc": [ - 1681, - 1682 - ] - }, - { - "teal": 1520, - "source": 398, - "pc": [ - 1683, - 1684, - 1685 - ] - }, - { - "teal": 1521, - "source": 398, - "pc": [ - 1686, - 1687 - ] - }, - { - "teal": 1522, - "source": 398, - "pc": [ - 1688 - ] - }, - { - "teal": 1523, - "source": 398, - "pc": [ - 1689, - 1690, - 1691 - ] - }, - { - "teal": 1529, - "source": 399, - "pc": [ - 1692, - 1693 - ] - }, - { - "teal": 1530, - "source": 399, - "pc": [ - 1694, - 1695, - 1696 - ] - }, - { - "teal": 1531, - "source": 399, - "pc": [ - 1697 - ] - }, - { - "teal": 1532, - "source": 399, - "pc": [ - 1698 - ] - }, - { - "teal": 1533, - "source": 399, - "pc": [ - 1699 - ] - }, - { - "teal": 1534, - "source": 399, - "pc": [ - 1700, - 1701, - 1702 - ] - }, - { - "teal": 1539, - "source": 400, - "pc": [ - 1703 - ] - }, - { - "teal": 1544, - "source": 402, - "pc": [ - 1704 - ] - }, - { - "teal": 1545, - "source": 402, - "pc": [ - 1705, - 1706 - ] - }, - { - "teal": 1550, - "source": 404, - "pc": [ - 1707 - ] - }, - { - "teal": 1551, - "source": 404, - "pc": [ - 1708 - ] - }, - { - "teal": 1552, - "source": 404, - "pc": [ - 1709 - ] - }, - { - "teal": 1553, - "source": 404, - "pc": [ - 1710 - ] - }, - { - "teal": 1554, - "source": 404, - "pc": [ - 1711, - 1712, - 1713 - ] - }, - { - "teal": 1562, - "source": 405, - "pc": [ - 1714 - ] - }, - { - "teal": 1563, - "source": 405, - "pc": [ - 1715 - ] - }, - { - "teal": 1564, - "source": 405, - "pc": [ - 1716, - 1717 - ] - }, - { - "teal": 1565, - "source": 405, - "pc": [ - 1718, - 1719 - ] - }, - { - "teal": 1566, - "source": 405, - "pc": [ - 1720, - 1721 - ] - }, - { - "teal": 1570, - "source": 406, - "pc": [ - 1722 - ] - }, - { - "teal": 1571, - "source": 406, - "pc": [ - 1723 - ] - }, - { - "teal": 1572, - "source": 406, - "pc": [ - 1724, - 1725 - ] - }, - { - "teal": 1576, - "source": 407, - "pc": [ - 1726 - ] - }, - { - "teal": 1577, - "source": 407, - "pc": [ - 1727 - ] - }, - { - "teal": 1578, - "source": 407, - "pc": [ - 1728 - ] - }, - { - "teal": 1579, - "source": 407, - "pc": [ - 1729, - 1730 - ] - }, - { - "teal": 1582, - "source": 405, - "pc": [ - 1731 - ] - }, - { - "teal": 1583, - "source": 405, - "pc": [ - 1732, - 1733 - ] - }, - { - "teal": 1586, - "source": 405, - "pc": [ - 1734 - ] - }, - { - "teal": 1587, - "source": 405, - "pc": [ - 1735, - 1736 - ] - }, - { - "teal": 1588, - "source": 405, - "pc": [ - 1737 - ] - }, - { - "teal": 1589, - "source": 405, - "pc": [ - 1738 - ] - }, - { - "teal": 1590, - "source": 405, - "pc": [ - 1739, - 1740 - ] - }, - { - "teal": 1591, - "source": 405, - "pc": [ - 1741, - 1742, - 1743 - ] - }, - { - "teal": 1592, - "source": 405, - "pc": [ - 1744, - 1745 - ] - }, - { - "teal": 1600, - "source": 412, - "pc": [ - 1746 - ] - }, - { - "teal": 1601, - "source": 412, - "pc": [ - 1747, - 1748 - ] - }, - { - "teal": 1602, - "source": 412, - "pc": [ - 1749, - 1750 - ] - }, - { - "teal": 1606, - "source": 413, - "pc": [ - 1751, - 1752 - ] - }, - { - "teal": 1607, - "source": 413, - "pc": [ - 1753, - 1754, - 1755 - ] - }, - { - "teal": 1608, - "source": 413, - "pc": [ - 1756 - ] - }, - { - "teal": 1609, - "source": 413, - "pc": [ - 1757, - 1758 - ] - }, - { - "teal": 1613, - "source": 414, - "pc": [ - 1759, - 1760 - ] - }, - { - "teal": 1614, - "source": 414, - "pc": [ - 1761, - 1762 - ] - }, - { - "teal": 1618, - "source": 415, - "pc": [ - 1763, - 1764 - ] - }, - { - "teal": 1619, - "source": 415, - "pc": [ - 1765, - 1766, - 1767 - ] - }, - { - "teal": 1620, - "source": 415, - "pc": [ - 1768 - ] - }, - { - "teal": 1621, - "source": 415, - "pc": [ - 1769, - 1770 - ] - }, - { - "teal": 1624, - "source": 412, - "pc": [ - 1771 - ] - }, - { - "teal": 1625, - "source": 412, - "pc": [ - 1772, - 1773 - ] - }, - { - "teal": 1628, - "source": 412, - "pc": [ - 1774 - ] - }, - { - "teal": 1632, - "source": 417, - "pc": [ - 1775, - 1776 - ] - }, - { - "teal": 1633, - "source": 417, - "pc": [ - 1777, - 1778, - 1779 - ] - }, - { - "teal": 1634, - "source": 417, - "pc": [ - 1780 - ] - }, - { - "teal": 1635, - "source": 417, - "pc": [ - 1781, - 1782 - ] - }, - { - "teal": 1639, - "source": 418, - "pc": [ - 1783, - 1784 - ] - }, - { - "teal": 1640, - "source": 418, - "pc": [ - 1785, - 1786 - ] - }, - { - "teal": 1641, - "source": 418, - "pc": [ - 1787, - 1788 - ] - }, - { - "teal": 1642, - "source": 418, - "pc": [ - 1789, - 1790 - ] - }, - { - "teal": 1643, - "source": 404, - "pc": [ - 1791, - 1792, - 1793 - ] - }, - { - "teal": 1648, - "source": 423, - "pc": [ - 1794, - 1795 - ] - }, - { - "teal": 1649, - "source": 423, - "pc": [ - 1796, - 1797, - 1798 - ] - }, - { - "teal": 1650, - "source": 423, - "pc": [ - 1799 - ] - }, - { - "teal": 1651, - "source": 423, - "pc": [ - 1800, - 1801 - ] - }, - { - "teal": 1655, - "source": 424, - "pc": [ - 1802, - 1803 - ] - }, - { - "teal": 1656, - "source": 424, - "pc": [ - 1804, - 1805 - ] - }, - { - "teal": 1657, - "source": 424, - "pc": [ - 1806, - 1807 - ] - }, - { - "teal": 1658, - "source": 424, - "pc": [ - 1808, - 1809 - ] - }, - { - "teal": 1663, - "source": 428, - "pc": [ - 1810, - 1811 - ] - }, - { - "teal": 1664, - "source": 428, - "pc": [ - 1812 - ] - }, - { - "teal": 1665, - "source": 428, - "pc": [ - 1813 - ] - }, - { - "teal": 1666, - "source": 428, - "pc": [ - 1814, - 1815 - ] - }, - { - "teal": 1667, - "source": 428, - "pc": [ - 1816 - ] - }, - { - "teal": 1668, - "source": 428, - "pc": [ - 1817, - 1818 - ] - }, - { - "teal": 1669, - "source": 428, - "pc": [ - 1819 - ] - }, - { - "teal": 1682, - "source": 433, - "pc": [ - 1820 - ] - }, - { - "teal": 1683, - "source": 433, - "pc": [ - 1821 - ] - }, - { - "teal": 1684, - "source": 433, - "pc": [ - 1822, - 1823 - ] - }, - { - "teal": 1685, - "source": 433, - "pc": [ - 1824, - 1825 - ] - }, - { - "teal": 1686, - "source": 433, - "pc": [ - 1826, - 1827 - ] - }, - { - "teal": 1690, - "source": 434, - "pc": [ - 1828 - ] - }, - { - "teal": 1691, - "source": 434, - "pc": [ - 1829 - ] - }, - { - "teal": 1692, - "source": 434, - "pc": [ - 1830, - 1831 - ] - }, - { - "teal": 1702, - "source": 436, - "pc": [ - 1832 - ] - }, - { - "teal": 1703, - "source": 436, - "pc": [ - 1833 - ] - }, - { - "teal": 1704, - "source": 436, - "pc": [ - 1834 - ] - }, - { - "teal": 1705, - "source": 436, - "pc": [ - 1835 - ] - }, - { - "teal": 1706, - "source": 436, - "pc": [ - 1836 - ] - }, - { - "teal": 1707, - "source": 436, - "pc": [ - 1837 - ] - }, - { - "teal": 1708, - "source": 436, - "pc": [ - 1838 - ] - }, - { - "teal": 1709, - "source": 436, - "pc": [ - 1839, - 1840, - 1841 - ] - }, - { - "teal": 1710, - "source": 436, - "pc": [ - 1842 - ] - }, - { - "teal": 1711, - "source": 436, - "pc": [ - 1843 - ] - }, - { - "teal": 1712, - "source": 436, - "pc": [ - 1844, - 1845 - ] - }, - { - "teal": 1713, - "source": 437, - "pc": [ - 1846, - 1847 - ] - }, - { - "teal": 1714, - "source": 437, - "pc": [ - 1848, - 1849 - ] - }, - { - "teal": 1715, - "source": 438, - "pc": [ - 1850, - 1851 - ] - }, - { - "teal": 1716, - "source": 438, - "pc": [ - 1852, - 1853 - ] - }, - { - "teal": 1717, - "source": 439, - "pc": [ - 1854, - 1855 - ] - }, - { - "teal": 1718, - "source": 439, - "pc": [ - 1856 - ] - }, - { - "teal": 1719, - "source": 439, - "pc": [ - 1857, - 1858 - ] - }, - { - "teal": 1720, - "source": 440, - "pc": [ - 1859 - ] - }, - { - "teal": 1721, - "source": 440, - "pc": [ - 1860, - 1861 - ] - }, - { - "teal": 1722, - "source": 440, - "pc": [ - 1862 - ] - }, - { - "teal": 1723, - "source": 440, - "pc": [ - 1863, - 1864 - ] - }, - { - "teal": 1724, - "source": 440, - "pc": [ - 1865 - ] - }, - { - "teal": 1725, - "source": 440, - "pc": [ - 1866, - 1867 - ] - }, - { - "teal": 1728, - "source": 433, - "pc": [ - 1868 - ] - }, - { - "teal": 1729, - "source": 433, - "pc": [ - 1869, - 1870 - ] - }, - { - "teal": 1732, - "source": 433, - "pc": [ - 1871 - ] - }, - { - "teal": 1736, - "source": 443, - "pc": [ - 1872 - ] - }, - { - "teal": 1743, - "source": 393, - "pc": [ - 1873, - 1874 - ] - }, - { - "teal": 1744, - "source": 393, - "pc": [ - 1875 - ] - }, - { - "teal": 1745, - "source": 393, - "pc": [ - 1876 - ] - }, - { - "teal": 1746, - "source": 393, - "pc": [ - 1877, - 1878 - ] - }, - { - "teal": 1747, - "source": 393, - "pc": [ - 1879, - 1880, - 1881 - ] - }, - { - "teal": 1751, - "source": 446, - "errorMessage": "account not found", - "pc": [ - 1882 - ] - }, - { - "teal": 1752, - "source": 387, - "pc": [ - 1883 - ] - }, - { - "teal": 1757, - "source": 457, - "pc": [ - 1884, - 1885 - ] - }, - { - "teal": 1760, - "source": 457, - "pc": [ - 1886, - 1887, - 1888 - ] - }, - { - "teal": 1761, - "source": 457, - "pc": [ - 1889 - ] - }, - { - "teal": 1762, - "source": 457, - "pc": [ - 1890 - ] - }, - { - "teal": 1763, - "source": 457, - "pc": [ - 1891, - 1892 - ] - }, - { - "teal": 1764, - "source": 457, - "pc": [ - 1893 - ] - }, - { - "teal": 1767, - "source": 457, - "errorMessage": "argument 0 (staker) for getStakerInfo must be a address", - "pc": [ - 1894 - ] - }, - { - "teal": 1770, - "source": 457, - "pc": [ - 1895, - 1896, - 1897 - ] - }, - { - "teal": 1771, - "source": 457, - "pc": [ - 1898 - ] - }, - { - "teal": 1772, - "source": 457, - "pc": [ - 1899 - ] - }, - { - "teal": 1773, - "source": 457, - "pc": [ - 1900 - ] - }, - { - "teal": 1774, - "source": 457, - "pc": [ - 1901 - ] - }, - { - "teal": 1784, - "source": 457, - "pc": [ - 1902, - 1903, - 1904 - ] - }, - { - "teal": 1787, - "source": 457, - "pc": [ - 1905, - 1906 - ] - }, - { - "teal": 1791, - "source": 458, - "pc": [ - 1907 - ] - }, - { - "teal": 1792, - "source": 458, - "pc": [ - 1908, - 1909 - ] - }, - { - "teal": 1797, - "source": 458, - "pc": [ - 1910, - 1911 - ] - }, - { - "teal": 1798, - "source": 458, - "pc": [ - 1912, - 1913 - ] - }, - { - "teal": 1799, - "source": 458, - "pc": [ - 1914 - ] - }, - { - "teal": 1800, - "source": 458, - "pc": [ - 1915, - 1916, - 1917 - ] - }, - { - "teal": 1805, - "source": 459, - "pc": [ - 1918, - 1919 - ] - }, - { - "teal": 1806, - "source": 459, - "pc": [ - 1920, - 1921 - ] - }, - { - "teal": 1807, - "source": 459, - "pc": [ - 1922 - ] - }, - { - "teal": 1808, - "source": 459, - "pc": [ - 1923, - 1924, - 1925 - ] - }, - { - "teal": 1813, - "source": 460, - "pc": [ - 1926 - ] - }, - { - "teal": 1814, - "source": 460, - "pc": [ - 1927 - ] - }, - { - "teal": 1815, - "source": 460, - "pc": [ - 1928, - 1929 - ] - }, - { - "teal": 1816, - "source": 460, - "pc": [ - 1930 - ] - }, - { - "teal": 1817, - "source": 460, - "pc": [ - 1931, - 1932 - ] - }, - { - "teal": 1818, - "source": 460, - "pc": [ - 1933, - 1934 - ] - }, - { - "teal": 1819, - "source": 460, - "pc": [ - 1935 - ] - }, - { - "teal": 1820, - "source": 460, - "pc": [ - 1936, - 1937 - ] - }, - { - "teal": 1821, - "source": 460, - "pc": [ - 1938, - 1939 - ] - }, - { - "teal": 1822, - "source": 460, - "pc": [ - 1940, - 1941 - ] - }, - { - "teal": 1823, - "source": 460, - "pc": [ - 1942, - 1943 - ] - }, - { - "teal": 1824, - "source": 460, - "pc": [ - 1944 - ] - }, - { - "teal": 1830, - "source": 462, - "pc": [ - 1945, - 1946 - ] - }, - { - "teal": 1831, - "source": 462, - "pc": [ - 1947 - ] - }, - { - "teal": 1832, - "source": 462, - "pc": [ - 1948 - ] - }, - { - "teal": 1833, - "source": 462, - "pc": [ - 1949 - ] - }, - { - "teal": 1834, - "source": 462, - "pc": [ - 1950 - ] - }, - { - "teal": 1835, - "source": 462, - "pc": [ - 1951, - 1952 - ] - }, - { - "teal": 1836, - "source": 462, - "pc": [ - 1953 - ] - }, - { - "teal": 1837, - "source": 462, - "pc": [ - 1954, - 1955 - ] - }, - { - "teal": 1838, - "source": 462, - "pc": [ - 1956 - ] - }, - { - "teal": 1839, - "source": 462, - "pc": [ - 1957, - 1958 - ] - }, - { - "teal": 1840, - "source": 462, - "pc": [ - 1959 - ] - }, - { - "teal": 1841, - "source": 462, - "pc": [ - 1960, - 1961, - 1962 - ] - }, - { - "teal": 1846, - "source": 463, - "pc": [ - 1963, - 1964 - ] - }, - { - "teal": 1847, - "source": 463, - "pc": [ - 1965 - ] - }, - { - "teal": 1848, - "source": 463, - "pc": [ - 1966 - ] - }, - { - "teal": 1849, - "source": 463, - "pc": [ - 1967 - ] - }, - { - "teal": 1850, - "source": 463, - "pc": [ - 1968 - ] - }, - { - "teal": 1851, - "source": 463, - "pc": [ - 1969, - 1970 - ] - }, - { - "teal": 1852, - "source": 463, - "pc": [ - 1971 - ] - }, - { - "teal": 1853, - "source": 463, - "pc": [ - 1972, - 1973, - 1974 - ] - }, - { - "teal": 1860, - "source": 458, - "pc": [ - 1975, - 1976 - ] - }, - { - "teal": 1861, - "source": 458, - "pc": [ - 1977 - ] - }, - { - "teal": 1862, - "source": 458, - "pc": [ - 1978 - ] - }, - { - "teal": 1863, - "source": 458, - "pc": [ - 1979, - 1980 - ] - }, - { - "teal": 1864, - "source": 458, - "pc": [ - 1981, - 1982, - 1983 - ] - }, - { - "teal": 1868, - "source": 466, - "errorMessage": "account not found", - "pc": [ - 1984 - ] - }, - { - "teal": 1872, - "source": 457, - "pc": [ - 1985, - 1986 - ] - }, - { - "teal": 1873, - "source": 457, - "pc": [ - 1987 - ] - }, - { - "teal": 1878, - "source": 479, - "pc": [ - 1988, - 1989, - 1990 - ] - }, - { - "teal": 1879, - "source": 479, - "pc": [ - 1991 - ] - }, - { - "teal": 1882, - "source": 479, - "pc": [ - 1992, - 1993, - 1994 - ] - }, - { - "teal": 1883, - "source": 479, - "pc": [ - 1995 - ] - }, - { - "teal": 1886, - "source": 479, - "pc": [ - 1996, - 1997, - 1998 - ] - }, - { - "teal": 1887, - "source": 479, - "pc": [ - 1999 - ] - }, - { - "teal": 1888, - "source": 479, - "pc": [ - 2000 - ] - }, - { - "teal": 1889, - "source": 479, - "pc": [ - 2001, - 2002 - ] - }, - { - "teal": 1890, - "source": 479, - "pc": [ - 2003 - ] - }, - { - "teal": 1893, - "source": 479, - "errorMessage": "argument 2 (staker) for payTokenReward must be a address", - "pc": [ - 2004 - ] - }, - { - "teal": 1896, - "source": 479, - "pc": [ - 2005, - 2006, - 2007 - ] - }, - { - "teal": 1897, - "source": 479, - "pc": [ - 2008 - ] - }, - { - "teal": 1898, - "source": 479, - "pc": [ - 2009 - ] - }, - { - "teal": 1911, - "source": 479, - "pc": [ - 2010, - 2011, - 2012 - ] - }, - { - "teal": 1918, - "source": 482, - "pc": [ - 2013, - 2014 - ] - }, - { - "teal": 1919, - "source": 482, - "pc": [ - 2015 - ] - }, - { - "teal": 1920, - "source": 482, - "pc": [ - 2016 - ] - }, - { - "teal": 1921, - "source": 482, - "pc": [ - 2017, - 2018 - ] - }, - { - "teal": 1922, - "source": 482, - "pc": [ - 2019 - ] - }, - { - "teal": 1923, - "source": 482, - "pc": [ - 2020 - ] - }, - { - "teal": 1926, - "source": 481, - "errorMessage": "this can only be called via the validator contract", - "pc": [ - 2021 - ] - }, - { - "teal": 1930, - "source": 485, - "pc": [ - 2022 - ] - }, - { - "teal": 1931, - "source": 485, - "pc": [ - 2023 - ] - }, - { - "teal": 1932, - "source": 485, - "pc": [ - 2024 - ] - }, - { - "teal": 1933, - "source": 485, - "pc": [ - 2025 - ] - }, - { - "teal": 1936, - "source": 485, - "errorMessage": "must be pool 1 in order to be called to pay out token rewards", - "pc": [ - 2026 - ] - }, - { - "teal": 1940, - "source": 486, - "pc": [ - 2027, - 2028 - ] - }, - { - "teal": 1941, - "source": 486, - "pc": [ - 2029 - ] - }, - { - "teal": 1942, - "source": 486, - "pc": [ - 2030 - ] - }, - { - "teal": 1945, - "source": 486, - "errorMessage": "can only claim token rewards from validator that has them", - "pc": [ - 2031 - ] - }, - { - "teal": 1953, - "source": 489, - "pc": [ - 2032 - ] - }, - { - "teal": 1954, - "source": 489, - "pc": [ - 2033, - 2034 - ] - }, - { - "teal": 1955, - "source": 489, - "pc": [ - 2035, - 2036 - ] - }, - { - "teal": 1959, - "source": 490, - "pc": [ - 2037, - 2038 - ] - }, - { - "teal": 1960, - "source": 490, - "pc": [ - 2039, - 2040 - ] - }, - { - "teal": 1964, - "source": 491, - "pc": [ - 2041, - 2042 - ] - }, - { - "teal": 1965, - "source": 491, - "pc": [ - 2043, - 2044 - ] - }, - { - "teal": 1969, - "source": 492, - "pc": [ - 2045, - 2046 - ] - }, - { - "teal": 1970, - "source": 492, - "pc": [ - 2047, - 2048 - ] - }, - { - "teal": 1973, - "source": 489, - "pc": [ - 2049 - ] - }, - { - "teal": 1974, - "source": 489, - "pc": [ - 2050, - 2051 - ] - }, - { - "teal": 1977, - "source": 489, - "pc": [ - 2052 - ] - }, - { - "teal": 1978, - "source": 479, - "pc": [ - 2053 - ] - }, - { - "teal": 1983, - "source": 505, - "pc": [ - 2054, - 2055, - 2056 - ] - }, - { - "teal": 1984, - "source": 505, - "pc": [ - 2057, - 2058, - 2059 - ] - }, - { - "teal": 1987, - "source": 505, - "pc": [ - 2060, - 2061, - 2062 - ] - }, - { - "teal": 1988, - "source": 505, - "pc": [ - 2063 - ] - }, - { - "teal": 1989, - "source": 505, - "pc": [ - 2064 - ] - }, - { - "teal": 2001, - "source": 505, - "pc": [ - 2065, - 2066, - 2067 - ] - }, - { - "teal": 2005, - "source": 506, - "pc": [ - 2068, - 2069, - 2070 - ] - }, - { - "teal": 2008, - "source": 506, - "errorMessage": "can only be called by owner or manager of validator", - "pc": [ - 2071 - ] - }, - { - "teal": 2012, - "source": 507, - "pc": [ - 2072, - 2073, - 2074, - 2075, - 2076, - 2077, - 2078, - 2079, - 2080, - 2081 - ] - }, - { - "teal": 2013, - "source": 507, - "pc": [ - 2082, - 2083 - ] - }, - { - "teal": 2014, - "source": 507, - "pc": [ - 2084 - ] - }, - { - "teal": 2015, - "source": 505, - "pc": [ - 2085 - ] - }, - { - "teal": 2020, - "source": 518, - "pc": [ - 2086, - 2087, - 2088 - ] - }, - { - "teal": 2021, - "source": 518, - "pc": [ - 2089 - ] - }, - { - "teal": 2022, - "source": 518, - "pc": [ - 2090 - ] - }, - { - "teal": 2033, - "source": 518, - "pc": [ - 2091, - 2092, - 2093 - ] - }, - { - "teal": 2036, - "source": 518, - "pc": [ - 2094, - 2095 - ] - }, - { - "teal": 2037, - "source": 518, - "pc": [ - 2096, - 2097 - ] - }, - { - "teal": 2044, - "source": 520, - "pc": [ - 2098 - ] - }, - { - "teal": 2045, - "source": 520, - "pc": [ - 2099 - ] - }, - { - "teal": 2046, - "source": 520, - "pc": [ - 2100, - 2101 - ] - }, - { - "teal": 2047, - "source": 520, - "pc": [ - 2102, - 2103 - ] - }, - { - "teal": 2048, - "source": 520, - "pc": [ - 2104, - 2105 - ] - }, - { - "teal": 2052, - "source": 521, - "pc": [ - 2106 - ] - }, - { - "teal": 2053, - "source": 521, - "pc": [ - 2107 - ] - }, - { - "teal": 2054, - "source": 521, - "pc": [ - 2108, - 2109 - ] - }, - { - "teal": 2058, - "source": 522, - "pc": [ - 2110 - ] - }, - { - "teal": 2059, - "source": 522, - "pc": [ - 2111 - ] - }, - { - "teal": 2060, - "source": 522, - "pc": [ - 2112 - ] - }, - { - "teal": 2061, - "source": 522, - "pc": [ - 2113, - 2114 - ] - }, - { - "teal": 2064, - "source": 520, - "pc": [ - 2115 - ] - }, - { - "teal": 2065, - "source": 520, - "pc": [ - 2116, - 2117 - ] - }, - { - "teal": 2068, - "source": 520, - "pc": [ - 2118 - ] - }, - { - "teal": 2069, - "source": 520, - "pc": [ - 2119, - 2120 - ] - }, - { - "teal": 2070, - "source": 520, - "pc": [ - 2121 - ] - }, - { - "teal": 2071, - "source": 520, - "pc": [ - 2122 - ] - }, - { - "teal": 2072, - "source": 520, - "pc": [ - 2123, - 2124 - ] - }, - { - "teal": 2073, - "source": 520, - "pc": [ - 2125, - 2126, - 2127 - ] - }, - { - "teal": 2074, - "source": 520, - "pc": [ - 2128, - 2129 - ] - }, - { - "teal": 2078, - "source": 529, - "pc": [ - 2130, - 2131 - ] - }, - { - "teal": 2079, - "source": 529, - "pc": [ - 2132, - 2133, - 2134 - ] - }, - { - "teal": 2080, - "source": 529, - "pc": [ - 2135 - ] - }, - { - "teal": 2081, - "source": 529, - "pc": [ - 2136, - 2137 - ] - }, - { - "teal": 2085, - "source": 530, - "pc": [ - 2138, - 2139 - ] - }, - { - "teal": 2086, - "source": 530, - "pc": [ - 2140, - 2141 - ] - }, - { - "teal": 2090, - "source": 531, - "pc": [ - 2142, - 2143 - ] - }, - { - "teal": 2091, - "source": 531, - "pc": [ - 2144, - 2145 - ] - }, - { - "teal": 2092, - "source": 531, - "pc": [ - 2146, - 2147 - ] - }, - { - "teal": 2093, - "source": 531, - "pc": [ - 2148 - ] - }, - { - "teal": 2094, - "source": 531, - "pc": [ - 2149 - ] - }, - { - "teal": 2095, - "source": 531, - "pc": [ - 2150, - 2151 - ] - }, - { - "teal": 2100, - "source": 534, - "pc": [ - 2152, - 2153, - 2154 - ] - }, - { - "teal": 2101, - "source": 534, - "pc": [ - 2155, - 2156 - ] - }, - { - "teal": 2102, - "source": 534, - "pc": [ - 2157 - ] - }, - { - "teal": 2103, - "source": 534, - "pc": [ - 2158 - ] - }, - { - "teal": 2104, - "source": 534, - "pc": [ - 2159 - ] - }, - { - "teal": 2105, - "source": 534, - "pc": [ - 2160, - 2161, - 2162 - ] - }, - { - "teal": 2110, - "source": 535, - "pc": [ - 2163, - 2164 - ] - }, - { - "teal": 2111, - "source": 535, - "pc": [ - 2165 - ] - }, - { - "teal": 2112, - "source": 535, - "pc": [ - 2166, - 2167 - ] - }, - { - "teal": 2113, - "source": 535, - "pc": [ - 2168 - ] - }, - { - "teal": 2114, - "source": 535, - "pc": [ - 2169, - 2170 - ] - }, - { - "teal": 2115, - "source": 535, - "pc": [ - 2171 - ] - }, - { - "teal": 2116, - "source": 535, - "pc": [ - 2172 - ] - }, - { - "teal": 2117, - "source": 535, - "pc": [ - 2173, - 2174 - ] - }, - { - "teal": 2121, - "source": 539, - "pc": [ - 2175, - 2176 - ] - }, - { - "teal": 2122, - "source": 539, - "pc": [ - 2177, - 2178 - ] - }, - { - "teal": 2123, - "source": 539, - "pc": [ - 2179 - ] - }, - { - "teal": 2126, - "source": 539, - "errorMessage": "can't call epochBalanceUpdate in same epoch as prior call", - "pc": [ - 2180 - ] - }, - { - "teal": 2131, - "source": 542, - "pc": [ - 2181, - 2182, - 2183 - ] - }, - { - "teal": 2135, - "source": 545, - "pc": [ - 2184, - 2185 - ] - }, - { - "teal": 2136, - "source": 545, - "pc": [ - 2186, - 2187 - ] - }, - { - "teal": 2137, - "source": 545, - "pc": [ - 2188 - ] - }, - { - "teal": 2141, - "source": 546, - "pc": [ - 2189, - 2190 - ] - }, - { - "teal": 2142, - "source": 546, - "pc": [ - 2191 - ] - }, - { - "teal": 2143, - "source": 546, - "pc": [ - 2192 - ] - }, - { - "teal": 2144, - "source": 546, - "pc": [ - 2193 - ] - }, - { - "teal": 2145, - "source": 546, - "pc": [ - 2194, - 2195 - ] - }, - { - "teal": 2146, - "source": 546, - "pc": [ - 2196 - ] - }, - { - "teal": 2147, - "source": 546, - "pc": [ - 2197 - ] - }, - { - "teal": 2151, - "source": 551, - "pc": [ - 2198, - 2199 - ] - }, - { - "teal": 2152, - "source": 551, - "pc": [ - 2200, - 2201, - 2202 - ] - }, - { - "teal": 2153, - "source": 551, - "pc": [ - 2203 - ] - }, - { - "teal": 2154, - "source": 551, - "pc": [ - 2204 - ] - }, - { - "teal": 2155, - "source": 551, - "pc": [ - 2205 - ] - }, - { - "teal": 2156, - "source": 551, - "pc": [ - 2206, - 2207 - ] - }, - { - "teal": 2160, - "source": 552, - "pc": [ - 2208, - 2209, - 2210 - ] - }, - { - "teal": 2161, - "source": 552, - "pc": [ - 2211, - 2212 - ] - }, - { - "teal": 2165, - "source": 553, - "pc": [ - 2213, - 2214 - ] - }, - { - "teal": 2166, - "source": 553, - "pc": [ - 2215, - 2216 - ] - }, - { - "teal": 2171, - "source": 558, - "pc": [ - 2217, - 2218 - ] - }, - { - "teal": 2172, - "source": 558, - "pc": [ - 2219, - 2220, - 2221 - ] - }, - { - "teal": 2178, - "source": 559, - "pc": [ - 2222 - ] - }, - { - "teal": 2179, - "source": 559, - "pc": [ - 2223 - ] - }, - { - "teal": 2180, - "source": 559, - "pc": [ - 2224 - ] - }, - { - "teal": 2181, - "source": 559, - "pc": [ - 2225 - ] - }, - { - "teal": 2182, - "source": 559, - "pc": [ - 2226, - 2227, - 2228 - ] - }, - { - "teal": 2190, - "source": 561, - "pc": [ - 2229 - ] - }, - { - "teal": 2191, - "source": 561, - "pc": [ - 2230 - ] - }, - { - "teal": 2192, - "source": 561, - "pc": [ - 2231, - 2232 - ] - }, - { - "teal": 2193, - "source": 561, - "pc": [ - 2233, - 2234 - ] - }, - { - "teal": 2194, - "source": 561, - "pc": [ - 2235, - 2236 - ] - }, - { - "teal": 2198, - "source": 562, - "pc": [ - 2237 - ] - }, - { - "teal": 2199, - "source": 562, - "pc": [ - 2238 - ] - }, - { - "teal": 2200, - "source": 562, - "pc": [ - 2239, - 2240 - ] - }, - { - "teal": 2204, - "source": 563, - "pc": [ - 2241 - ] - }, - { - "teal": 2205, - "source": 563, - "pc": [ - 2242 - ] - }, - { - "teal": 2206, - "source": 563, - "pc": [ - 2243 - ] - }, - { - "teal": 2207, - "source": 563, - "pc": [ - 2244, - 2245 - ] - }, - { - "teal": 2208, - "source": 563, - "pc": [ - 2246, - 2247, - 2248, - 2249, - 2250, - 2251, - 2252, - 2253, - 2254, - 2255 - ] - }, - { - "teal": 2209, - "source": 563, - "pc": [ - 2256, - 2257 - ] - }, - { - "teal": 2212, - "source": 561, - "pc": [ - 2258 - ] - }, - { - "teal": 2213, - "source": 561, - "pc": [ - 2259, - 2260 - ] - }, - { - "teal": 2216, - "source": 561, - "pc": [ - 2261 - ] - }, - { - "teal": 2217, - "source": 561, - "pc": [ - 2262, - 2263 - ] - }, - { - "teal": 2218, - "source": 561, - "pc": [ - 2264 - ] - }, - { - "teal": 2219, - "source": 561, - "pc": [ - 2265 - ] - }, - { - "teal": 2220, - "source": 561, - "pc": [ - 2266, - 2267 - ] - }, - { - "teal": 2221, - "source": 561, - "pc": [ - 2268, - 2269, - 2270 - ] - }, - { - "teal": 2222, - "source": 561, - "pc": [ - 2271 - ] - }, - { - "teal": 2223, - "source": 561, - "pc": [ - 2272, - 2273 - ] - }, - { - "teal": 2227, - "source": 565, - "pc": [ - 2274, - 2275 - ] - }, - { - "teal": 2228, - "source": 565, - "pc": [ - 2276, - 2277 - ] - }, - { - "teal": 2229, - "source": 565, - "pc": [ - 2278 - ] - }, - { - "teal": 2230, - "source": 565, - "pc": [ - 2279, - 2280 - ] - }, - { - "teal": 2236, - "source": 570, - "pc": [ - 2281 - ] - }, - { - "teal": 2237, - "source": 570, - "pc": [ - 2282 - ] - }, - { - "teal": 2238, - "source": 570, - "pc": [ - 2283 - ] - }, - { - "teal": 2239, - "source": 570, - "pc": [ - 2284 - ] - }, - { - "teal": 2240, - "source": 570, - "pc": [ - 2285, - 2286, - 2287 - ] - }, - { - "teal": 2248, - "source": 571, - "pc": [ - 2288 - ] - }, - { - "teal": 2249, - "source": 571, - "pc": [ - 2289 - ] - }, - { - "teal": 2250, - "source": 571, - "pc": [ - 2290, - 2291 - ] - }, - { - "teal": 2251, - "source": 571, - "pc": [ - 2292, - 2293 - ] - }, - { - "teal": 2252, - "source": 571, - "pc": [ - 2294, - 2295 - ] - }, - { - "teal": 2256, - "source": 572, - "pc": [ - 2296 - ] - }, - { - "teal": 2257, - "source": 572, - "pc": [ - 2297 - ] - }, - { - "teal": 2258, - "source": 572, - "pc": [ - 2298, - 2299 - ] - }, - { - "teal": 2262, - "source": 573, - "pc": [ - 2300 - ] - }, - { - "teal": 2263, - "source": 573, - "pc": [ - 2301 - ] - }, - { - "teal": 2264, - "source": 573, - "pc": [ - 2302 - ] - }, - { - "teal": 2265, - "source": 573, - "pc": [ - 2303, - 2304 - ] - }, - { - "teal": 2268, - "source": 571, - "pc": [ - 2305 - ] - }, - { - "teal": 2269, - "source": 571, - "pc": [ - 2306, - 2307 - ] - }, - { - "teal": 2272, - "source": 571, - "pc": [ - 2308 - ] - }, - { - "teal": 2273, - "source": 571, - "pc": [ - 2309, - 2310 - ] - }, - { - "teal": 2274, - "source": 571, - "pc": [ - 2311 - ] - }, - { - "teal": 2275, - "source": 571, - "pc": [ - 2312 - ] - }, - { - "teal": 2276, - "source": 571, - "pc": [ - 2313, - 2314 - ] - }, - { - "teal": 2277, - "source": 571, - "pc": [ - 2315, - 2316, - 2317 - ] - }, - { - "teal": 2278, - "source": 571, - "pc": [ - 2318, - 2319 - ] - }, - { - "teal": 2279, - "source": 570, - "pc": [ - 2320, - 2321, - 2322 - ] - }, - { - "teal": 2287, - "source": 577, - "pc": [ - 2323 - ] - }, - { - "teal": 2288, - "source": 577, - "pc": [ - 2324 - ] - }, - { - "teal": 2289, - "source": 577, - "pc": [ - 2325, - 2326 - ] - }, - { - "teal": 2290, - "source": 577, - "pc": [ - 2327, - 2328 - ] - }, - { - "teal": 2291, - "source": 577, - "pc": [ - 2329, - 2330 - ] - }, - { - "teal": 2295, - "source": 578, - "pc": [ - 2331, - 2332 - ] - }, - { - "teal": 2296, - "source": 578, - "pc": [ - 2333, - 2334 - ] - }, - { - "teal": 2300, - "source": 579, - "pc": [ - 2335 - ] - }, - { - "teal": 2301, - "source": 579, - "pc": [ - 2336 - ] - }, - { - "teal": 2302, - "source": 579, - "pc": [ - 2337 - ] - }, - { - "teal": 2303, - "source": 579, - "pc": [ - 2338 - ] - }, - { - "teal": 2304, - "source": 579, - "pc": [ - 2339 - ] - }, - { - "teal": 2305, - "source": 579, - "pc": [ - 2340 - ] - }, - { - "teal": 2306, - "source": 579, - "pc": [ - 2341 - ] - }, - { - "teal": 2307, - "source": 579, - "pc": [ - 2342, - 2343, - 2344 - ] - }, - { - "teal": 2308, - "source": 579, - "pc": [ - 2345 - ] - }, - { - "teal": 2309, - "source": 579, - "pc": [ - 2346 - ] - }, - { - "teal": 2310, - "source": 579, - "pc": [ - 2347, - 2348 - ] - }, - { - "teal": 2313, - "source": 577, - "pc": [ - 2349 - ] - }, - { - "teal": 2314, - "source": 577, - "pc": [ - 2350, - 2351 - ] - }, - { - "teal": 2317, - "source": 577, - "pc": [ - 2352 - ] - }, - { - "teal": 2318, - "source": 577, - "pc": [ - 2353, - 2354 - ] - }, - { - "teal": 2319, - "source": 577, - "pc": [ - 2355 - ] - }, - { - "teal": 2320, - "source": 577, - "pc": [ - 2356 - ] - }, - { - "teal": 2321, - "source": 577, - "pc": [ - 2357, - 2358 - ] - }, - { - "teal": 2322, - "source": 577, - "pc": [ - 2359, - 2360, - 2361 - ] - }, - { - "teal": 2323, - "source": 577, - "pc": [ - 2362, - 2363 - ] - }, - { - "teal": 2333, - "source": 586, - "pc": [ - 2364 - ] - }, - { - "teal": 2334, - "source": 586, - "pc": [ - 2365 - ] - }, - { - "teal": 2335, - "source": 586, - "pc": [ - 2366, - 2367 - ] - }, - { - "teal": 2336, - "source": 586, - "pc": [ - 2368, - 2369, - 2370, - 2371, - 2372, - 2373 - ] - }, - { - "teal": 2337, - "source": 586, - "pc": [ - 2374, - 2375 - ] - }, - { - "teal": 2341, - "source": 587, - "pc": [ - 2376 - ] - }, - { - "teal": 2342, - "source": 587, - "pc": [ - 2377 - ] - }, - { - "teal": 2343, - "source": 587, - "pc": [ - 2378, - 2379 - ] - }, - { - "teal": 2347, - "source": 588, - "pc": [ - 2380 - ] - }, - { - "teal": 2348, - "source": 588, - "pc": [ - 2381 - ] - }, - { - "teal": 2349, - "source": 588, - "pc": [ - 2382 - ] - }, - { - "teal": 2350, - "source": 588, - "pc": [ - 2383, - 2384 - ] - }, - { - "teal": 2353, - "source": 586, - "pc": [ - 2385 - ] - }, - { - "teal": 2354, - "source": 586, - "pc": [ - 2386, - 2387 - ] - }, - { - "teal": 2357, - "source": 586, - "pc": [ - 2388 - ] - }, - { - "teal": 2358, - "source": 586, - "pc": [ - 2389, - 2390 - ] - }, - { - "teal": 2359, - "source": 586, - "pc": [ - 2391 - ] - }, - { - "teal": 2360, - "source": 586, - "pc": [ - 2392 - ] - }, - { - "teal": 2361, - "source": 586, - "pc": [ - 2393, - 2394 - ] - }, - { - "teal": 2362, - "source": 586, - "pc": [ - 2395, - 2396, - 2397 - ] - }, - { - "teal": 2363, - "source": 586, - "pc": [ - 2398, - 2399 - ] - }, - { - "teal": 2367, - "source": 590, - "pc": [ - 2400, - 2401 - ] - }, - { - "teal": 2368, - "source": 590, - "pc": [ - 2402, - 2403, - 2404 - ] - }, - { - "teal": 2369, - "source": 590, - "pc": [ - 2405 - ] - }, - { - "teal": 2370, - "source": 590, - "pc": [ - 2406, - 2407 - ] - }, - { - "teal": 2374, - "source": 596, - "pc": [ - 2408, - 2409 - ] - }, - { - "teal": 2375, - "source": 596, - "pc": [ - 2410, - 2411 - ] - }, - { - "teal": 2376, - "source": 596, - "pc": [ - 2412 - ] - }, - { - "teal": 2377, - "source": 596, - "pc": [ - 2413, - 2414 - ] - }, - { - "teal": 2378, - "source": 596, - "pc": [ - 2415 - ] - }, - { - "teal": 2379, - "source": 596, - "pc": [ - 2416 - ] - }, - { - "teal": 2380, - "source": 596, - "pc": [ - 2417, - 2418 - ] - }, - { - "teal": 2381, - "source": 596, - "pc": [ - 2419, - 2420 - ] - }, - { - "teal": 2382, - "source": 596, - "pc": [ - 2421 - ] - }, - { - "teal": 2383, - "source": 596, - "pc": [ - 2422 - ] - }, - { - "teal": 2384, - "source": 596, - "pc": [ - 2423, - 2424 - ] - }, - { - "teal": 2388, - "source": 597, - "pc": [ - 2425 - ] - }, - { - "teal": 2389, - "source": 597, - "pc": [ - 2426, - 2427 - ] - }, - { - "teal": 2393, - "source": 598, - "pc": [ - 2428, - 2429, - 2430 - ] - }, - { - "teal": 2394, - "source": 598, - "pc": [ - 2431, - 2432 - ] - }, - { - "teal": 2399, - "source": 606, - "pc": [ - 2433, - 2434 - ] - }, - { - "teal": 2400, - "source": 606, - "pc": [ - 2435, - 2436, - 2437 - ] - }, - { - "teal": 2401, - "source": 606, - "pc": [ - 2438 - ] - }, - { - "teal": 2402, - "source": 606, - "pc": [ - 2439, - 2440 - ] - }, - { - "teal": 2403, - "source": 606, - "pc": [ - 2441 - ] - }, - { - "teal": 2404, - "source": 606, - "pc": [ - 2442, - 2443, - 2444 - ] - }, - { - "teal": 2409, - "source": 607, - "pc": [ - 2445 - ] - }, - { - "teal": 2410, - "source": 607, - "pc": [ - 2446, - 2447 - ] - }, - { - "teal": 2415, - "source": 613, - "pc": [ - 2448 - ] - }, - { - "teal": 2416, - "source": 613, - "pc": [ - 2449, - 2450 - ] - }, - { - "teal": 2420, - "source": 614, - "pc": [ - 2451 - ] - }, - { - "teal": 2421, - "source": 614, - "pc": [ - 2452, - 2453 - ] - }, - { - "teal": 2425, - "source": 615, - "pc": [ - 2454 - ] - }, - { - "teal": 2426, - "source": 615, - "pc": [ - 2455, - 2456 - ] - }, - { - "teal": 2430, - "source": 616, - "pc": [ - 2457 - ] - }, - { - "teal": 2431, - "source": 616, - "pc": [ - 2458, - 2459 - ] - }, - { - "teal": 2436, - "source": 617, - "pc": [ - 2460, - 2461 - ] - }, - { - "teal": 2437, - "source": 617, - "pc": [ - 2462, - 2463, - 2464 - ] - }, - { - "teal": 2443, - "source": 619, - "pc": [ - 2465, - 2466 - ] - }, - { - "teal": 2444, - "source": 619, - "pc": [ - 2467, - 2468 - ] - }, - { - "teal": 2445, - "source": 619, - "pc": [ - 2469, - 2470, - 2471 - ] - }, - { - "teal": 2446, - "source": 619, - "pc": [ - 2472 - ] - }, - { - "teal": 2447, - "source": 619, - "pc": [ - 2473, - 2474 - ] - }, - { - "teal": 2448, - "source": 619, - "pc": [ - 2475 - ] - }, - { - "teal": 2449, - "source": 619, - "pc": [ - 2476, - 2477 - ] - }, - { - "teal": 2450, - "source": 619, - "pc": [ - 2478 - ] - }, - { - "teal": 2451, - "source": 618, - "pc": [ - 2479, - 2480 - ] - }, - { - "teal": 2456, - "source": 623, - "pc": [ - 2481, - 2482 - ] - }, - { - "teal": 2457, - "source": 623, - "pc": [ - 2483, - 2484 - ] - }, - { - "teal": 2458, - "source": 623, - "pc": [ - 2485, - 2486, - 2487 - ] - }, - { - "teal": 2459, - "source": 623, - "pc": [ - 2488 - ] - }, - { - "teal": 2460, - "source": 623, - "pc": [ - 2489 - ] - }, - { - "teal": 2461, - "source": 623, - "pc": [ - 2490, - 2491, - 2492 - ] - }, - { - "teal": 2466, - "source": 629, - "pc": [ - 2493, - 2494 - ] - }, - { - "teal": 2467, - "source": 629, - "pc": [ - 2495 - ] - }, - { - "teal": 2468, - "source": 629, - "pc": [ - 2496 - ] - }, - { - "teal": 2469, - "source": 629, - "pc": [ - 2497 - ] - }, - { - "teal": 2470, - "source": 629, - "pc": [ - 2498 - ] - }, - { - "teal": 2471, - "source": 629, - "pc": [ - 2499 - ] - }, - { - "teal": 2472, - "source": 629, - "pc": [ - 2500, - 2501 - ] - }, - { - "teal": 2473, - "source": 629, - "pc": [ - 2502 - ] - }, - { - "teal": 2474, - "source": 629, - "pc": [ - 2503 - ] - }, - { - "teal": 2475, - "source": 629, - "pc": [ - 2504, - 2505 - ] - }, - { - "teal": 2476, - "source": 629, - "pc": [ - 2506 - ] - }, - { - "teal": 2477, - "source": 629, - "pc": [ - 2507 - ] - }, - { - "teal": 2478, - "source": 629, - "pc": [ - 2508, - 2509 - ] - }, - { - "teal": 2482, - "source": 632, - "pc": [ - 2510, - 2511 - ] - }, - { - "teal": 2483, - "source": 632, - "pc": [ - 2512, - 2513, - 2514 - ] - }, - { - "teal": 2484, - "source": 632, - "pc": [ - 2515 - ] - }, - { - "teal": 2485, - "source": 632, - "pc": [ - 2516, - 2517 - ] - }, - { - "teal": 2486, - "source": 632, - "pc": [ - 2518 - ] - }, - { - "teal": 2487, - "source": 632, - "pc": [ - 2519 - ] - }, - { - "teal": 2488, - "source": 632, - "pc": [ - 2520, - 2521 - ] - }, - { - "teal": 2489, - "source": 632, - "pc": [ - 2522 - ] - }, - { - "teal": 2490, - "source": 632, - "pc": [ - 2523 - ] - }, - { - "teal": 2491, - "source": 632, - "pc": [ - 2524 - ] - }, - { - "teal": 2492, - "source": 632, - "pc": [ - 2525 - ] - }, - { - "teal": 2493, - "source": 632, - "pc": [ - 2526 - ] - }, - { - "teal": 2496, - "source": 632, - "errorMessage": "wideRatio failed", - "pc": [ - 2527 - ] - }, - { - "teal": 2497, - "source": 632, - "pc": [ - 2528, - 2529 - ] - }, - { - "teal": 2505, - "source": 635, - "pc": [ - 2530, - 2531 - ] - }, - { - "teal": 2506, - "source": 635, - "pc": [ - 2532 - ] - }, - { - "teal": 2507, - "source": 635, - "pc": [ - 2533 - ] - }, - { - "teal": 2508, - "source": 635, - "pc": [ - 2534, - 2535, - 2536 - ] - }, - { - "teal": 2514, - "source": 640, - "pc": [ - 2537, - 2538 - ] - }, - { - "teal": 2515, - "source": 640, - "pc": [ - 2539, - 2540 - ] - }, - { - "teal": 2516, - "source": 640, - "pc": [ - 2541 - ] - }, - { - "teal": 2517, - "source": 640, - "pc": [ - 2542, - 2543, - 2544 - ] - }, - { - "teal": 2522, - "source": 641, - "pc": [ - 2545, - 2546, - 2547, - 2548, - 2549, - 2550, - 2551, - 2552, - 2553, - 2554, - 2555, - 2556, - 2557, - 2558, - 2559, - 2560, - 2561, - 2562, - 2563, - 2564, - 2565, - 2566, - 2567, - 2568 - ] - }, - { - "teal": 2523, - "source": 641, - "pc": [ - 2569 - ] - }, - { - "teal": 2527, - "source": 642, - "pc": [ - 2570 - ] - }, - { - "teal": 2535, - "source": 646, - "pc": [ - 2571, - 2572 - ] - }, - { - "teal": 2536, - "source": 646, - "pc": [ - 2573, - 2574, - 2575 - ] - }, - { - "teal": 2541, - "source": 649, - "pc": [ - 2576, - 2577 - ] - }, - { - "teal": 2542, - "source": 649, - "pc": [ - 2578, - 2579 - ] - }, - { - "teal": 2543, - "source": 649, - "pc": [ - 2580 - ] - }, - { - "teal": 2544, - "source": 649, - "pc": [ - 2581 - ] - }, - { - "teal": 2545, - "source": 649, - "pc": [ - 2582, - 2583 - ] - }, - { - "teal": 2546, - "source": 649, - "pc": [ - 2584, - 2585, - 2586 - ] - }, - { - "teal": 2547, - "source": 649, - "pc": [ - 2587 - ] - }, - { - "teal": 2548, - "source": 649, - "pc": [ - 2588 - ] - }, - { - "teal": 2549, - "source": 649, - "pc": [ - 2589 - ] - }, - { - "teal": 2550, - "source": 649, - "pc": [ - 2590 - ] - }, - { - "teal": 2551, - "source": 649, - "pc": [ - 2591 - ] - }, - { - "teal": 2552, - "source": 649, - "pc": [ - 2592 - ] - }, - { - "teal": 2555, - "source": 649, - "errorMessage": "wideRatio failed", - "pc": [ - 2593 - ] - }, - { - "teal": 2556, - "source": 649, - "pc": [ - 2594, - 2595 - ] - }, - { - "teal": 2560, - "source": 651, - "pc": [ - 2596, - 2597 - ] - }, - { - "teal": 2561, - "source": 651, - "pc": [ - 2598, - 2599 - ] - }, - { - "teal": 2562, - "source": 651, - "pc": [ - 2600 - ] - }, - { - "teal": 2563, - "source": 651, - "pc": [ - 2601, - 2602 - ] - }, - { - "teal": 2571, - "source": 652, - "pc": [ - 2603 - ] - }, - { - "teal": 2572, - "source": 652, - "pc": [ - 2604 - ] - }, - { - "teal": 2573, - "source": 652, - "pc": [ - 2605, - 2606 - ] - }, - { - "teal": 2577, - "source": 653, - "pc": [ - 2607, - 2608 - ] - }, - { - "teal": 2578, - "source": 653, - "pc": [ - 2609, - 2610 - ] - }, - { - "teal": 2582, - "source": 654, - "pc": [ - 2611, - 2612, - 2613 - ] - }, - { - "teal": 2583, - "source": 654, - "pc": [ - 2614, - 2615 - ] - }, - { - "teal": 2587, - "source": 655, - "pc": [ - 2616, - 2617, - 2618, - 2619, - 2620, - 2621, - 2622, - 2623, - 2624, - 2625, - 2626, - 2627, - 2628, - 2629, - 2630, - 2631, - 2632, - 2633, - 2634, - 2635, - 2636, - 2637, - 2638, - 2639, - 2640, - 2641, - 2642, - 2643, - 2644, - 2645, - 2646, - 2647, - 2648, - 2649, - 2650, - 2651 - ] - }, - { - "teal": 2588, - "source": 655, - "pc": [ - 2652, - 2653 - ] - }, - { - "teal": 2591, - "source": 652, - "pc": [ - 2654 - ] - }, - { - "teal": 2592, - "source": 652, - "pc": [ - 2655, - 2656 - ] - }, - { - "teal": 2595, - "source": 652, - "pc": [ - 2657 - ] - }, - { - "teal": 2599, - "source": 658, - "pc": [ - 2658, - 2659 - ] - }, - { - "teal": 2600, - "source": 658, - "pc": [ - 2660, - 2661 - ] - }, - { - "teal": 2601, - "source": 646, - "pc": [ - 2662, - 2663, - 2664 - ] - }, - { - "teal": 2606, - "source": 659, - "pc": [ - 2665, - 2666 - ] - }, - { - "teal": 2607, - "source": 659, - "pc": [ - 2667, - 2668, - 2669 - ] - }, - { - "teal": 2608, - "source": 659, - "pc": [ - 2670 - ] - }, - { - "teal": 2609, - "source": 659, - "pc": [ - 2671 - ] - }, - { - "teal": 2610, - "source": 659, - "pc": [ - 2672 - ] - }, - { - "teal": 2611, - "source": 659, - "pc": [ - 2673, - 2674, - 2675 - ] - }, - { - "teal": 2619, - "source": 663, - "pc": [ - 2676, - 2677 - ] - }, - { - "teal": 2620, - "source": 663, - "pc": [ - 2678, - 2679 - ] - }, - { - "teal": 2621, - "source": 663, - "pc": [ - 2680, - 2681, - 2682 - ] - }, - { - "teal": 2622, - "source": 663, - "pc": [ - 2683 - ] - }, - { - "teal": 2623, - "source": 662, - "pc": [ - 2684 - ] - }, - { - "teal": 2624, - "source": 662, - "pc": [ - 2685 - ] - }, - { - "teal": 2625, - "source": 664, - "pc": [ - 2686, - 2687 - ] - }, - { - "teal": 2626, - "source": 662, - "pc": [ - 2688 - ] - }, - { - "teal": 2627, - "source": 662, - "pc": [ - 2689 - ] - }, - { - "teal": 2628, - "source": 662, - "pc": [ - 2690 - ] - }, - { - "teal": 2629, - "source": 662, - "pc": [ - 2691 - ] - }, - { - "teal": 2630, - "source": 662, - "pc": [ - 2692 - ] - }, - { - "teal": 2633, - "source": 662, - "errorMessage": "wideRatio failed", - "pc": [ - 2693 - ] - }, - { - "teal": 2634, - "source": 662, - "pc": [ - 2694, - 2695 - ] - }, - { - "teal": 2638, - "source": 668, - "pc": [ - 2696, - 2697 - ] - }, - { - "teal": 2639, - "source": 668, - "pc": [ - 2698, - 2699 - ] - }, - { - "teal": 2640, - "source": 668, - "pc": [ - 2700 - ] - }, - { - "teal": 2641, - "source": 668, - "pc": [ - 2701, - 2702 - ] - }, - { - "teal": 2646, - "source": 675, - "pc": [ - 2703, - 2704 - ] - }, - { - "teal": 2647, - "source": 675, - "pc": [ - 2705 - ] - }, - { - "teal": 2648, - "source": 675, - "pc": [ - 2706 - ] - }, - { - "teal": 2649, - "source": 675, - "pc": [ - 2707, - 2708, - 2709 - ] - }, - { - "teal": 2654, - "source": 678, - "pc": [ - 2710 - ] - }, - { - "teal": 2655, - "source": 678, - "pc": [ - 2711, - 2712 - ] - }, - { - "teal": 2661, - "source": 680, - "pc": [ - 2713, - 2714 - ] - }, - { - "teal": 2662, - "source": 680, - "pc": [ - 2715, - 2716, - 2717 - ] - }, - { - "teal": 2663, - "source": 680, - "pc": [ - 2718, - 2719 - ] - }, - { - "teal": 2664, - "source": 680, - "pc": [ - 2720, - 2721, - 2722 - ] - }, - { - "teal": 2665, - "source": 680, - "pc": [ - 2723 - ] - }, - { - "teal": 2666, - "source": 680, - "pc": [ - 2724 - ] - }, - { - "teal": 2667, - "source": 680, - "pc": [ - 2725, - 2726, - 2727 - ] - }, - { - "teal": 2668, - "source": 681, - "pc": [ - 2728, - 2729 - ] - }, - { - "teal": 2669, - "source": 681, - "pc": [ - 2730, - 2731, - 2732 - ] - }, - { - "teal": 2670, - "source": 681, - "pc": [ - 2733, - 2734 - ] - }, - { - "teal": 2671, - "source": 681, - "pc": [ - 2735 - ] - }, - { - "teal": 2672, - "source": 681, - "pc": [ - 2736, - 2737 - ] - }, - { - "teal": 2673, - "source": 681, - "pc": [ - 2738, - 2739, - 2740 - ] - }, - { - "teal": 2674, - "source": 681, - "pc": [ - 2741, - 2742 - ] - }, - { - "teal": 2675, - "source": 681, - "pc": [ - 2743 - ] - }, - { - "teal": 2676, - "source": 681, - "pc": [ - 2744 - ] - }, - { - "teal": 2677, - "source": 681, - "pc": [ - 2745, - 2746 - ] - }, - { - "teal": 2678, - "source": 681, - "pc": [ - 2747 - ] - }, - { - "teal": 2679, - "source": 680, - "pc": [ - 2748 - ] - }, - { - "teal": 2682, - "source": 679, - "pc": [ - 2749, - 2750, - 2751 - ] - }, - { - "teal": 2687, - "source": 683, - "pc": [ - 2752, - 2753 - ] - }, - { - "teal": 2688, - "source": 683, - "pc": [ - 2754, - 2755 - ] - }, - { - "teal": 2689, - "source": 683, - "pc": [ - 2756 - ] - }, - { - "teal": 2690, - "source": 683, - "pc": [ - 2757, - 2758, - 2759 - ] - }, - { - "teal": 2691, - "source": 683, - "pc": [ - 2760, - 2761 - ] - }, - { - "teal": 2692, - "source": 683, - "pc": [ - 2762, - 2763, - 2764 - ] - }, - { - "teal": 2695, - "source": 683, - "pc": [ - 2765, - 2766 - ] - }, - { - "teal": 2698, - "source": 683, - "pc": [ - 2767, - 2768 - ] - }, - { - "teal": 2706, - "source": 684, - "pc": [ - 2769 - ] - }, - { - "teal": 2707, - "source": 684, - "pc": [ - 2770 - ] - }, - { - "teal": 2708, - "source": 684, - "pc": [ - 2771, - 2772 - ] - }, - { - "teal": 2712, - "source": 685, - "pc": [ - 2773, - 2774 - ] - }, - { - "teal": 2713, - "source": 685, - "pc": [ - 2775, - 2776 - ] - }, - { - "teal": 2717, - "source": 686, - "pc": [ - 2777, - 2778 - ] - }, - { - "teal": 2718, - "source": 686, - "pc": [ - 2779, - 2780, - 2781 - ] - }, - { - "teal": 2719, - "source": 686, - "pc": [ - 2782, - 2783 - ] - }, - { - "teal": 2723, - "source": 687, - "pc": [ - 2784, - 2785, - 2786, - 2787, - 2788, - 2789, - 2790, - 2791, - 2792, - 2793, - 2794, - 2795, - 2796, - 2797, - 2798, - 2799, - 2800, - 2801, - 2802, - 2803, - 2804, - 2805, - 2806, - 2807, - 2808, - 2809, - 2810, - 2811, - 2812, - 2813, - 2814, - 2815, - 2816, - 2817, - 2818, - 2819, - 2820, - 2821, - 2822, - 2823, - 2824, - 2825, - 2826, - 2827, - 2828, - 2829, - 2830, - 2831, - 2832, - 2833, - 2834, - 2835, - 2836, - 2837, - 2838 - ] - }, - { - "teal": 2724, - "source": 687, - "pc": [ - 2839, - 2840 - ] - }, - { - "teal": 2727, - "source": 684, - "pc": [ - 2841 - ] - }, - { - "teal": 2728, - "source": 684, - "pc": [ - 2842, - 2843 - ] - }, - { - "teal": 2731, - "source": 684, - "pc": [ - 2844 - ] - }, - { - "teal": 2737, - "source": 690, - "pc": [ - 2845, - 2846 - ] - }, - { - "teal": 2738, - "source": 690, - "pc": [ - 2847, - 2848 - ] - }, - { - "teal": 2739, - "source": 690, - "pc": [ - 2849 - ] - }, - { - "teal": 2740, - "source": 690, - "pc": [ - 2850 - ] - }, - { - "teal": 2741, - "source": 690, - "pc": [ - 2851 - ] - }, - { - "teal": 2742, - "source": 690, - "pc": [ - 2852, - 2853, - 2854 - ] - }, - { - "teal": 2751, - "source": 691, - "pc": [ - 2855 - ] - }, - { - "teal": 2752, - "source": 691, - "pc": [ - 2856 - ] - }, - { - "teal": 2753, - "source": 691, - "pc": [ - 2857, - 2858 - ] - }, - { - "teal": 2757, - "source": 692, - "pc": [ - 2859, - 2860 - ] - }, - { - "teal": 2758, - "source": 692, - "pc": [ - 2861, - 2862 - ] - }, - { - "teal": 2759, - "source": 692, - "pc": [ - 2863 - ] - }, - { - "teal": 2760, - "source": 692, - "pc": [ - 2864, - 2865 - ] - }, - { - "teal": 2764, - "source": 693, - "pc": [ - 2866, - 2867 - ] - }, - { - "teal": 2765, - "source": 693, - "pc": [ - 2868, - 2869, - 2870 - ] - }, - { - "teal": 2766, - "source": 693, - "pc": [ - 2871, - 2872 - ] - }, - { - "teal": 2770, - "source": 694, - "pc": [ - 2873, - 2874, - 2875, - 2876, - 2877, - 2878, - 2879, - 2880, - 2881, - 2882, - 2883, - 2884, - 2885, - 2886, - 2887, - 2888, - 2889, - 2890 - ] - }, - { - "teal": 2771, - "source": 694, - "pc": [ - 2891, - 2892 - ] - }, - { - "teal": 2774, - "source": 691, - "pc": [ - 2893 - ] - }, - { - "teal": 2775, - "source": 691, - "pc": [ - 2894, - 2895 - ] - }, - { - "teal": 2778, - "source": 691, - "pc": [ - 2896 - ] - }, - { - "teal": 2787, - "source": 706, - "pc": [ - 2897 - ] - }, - { - "teal": 2788, - "source": 706, - "pc": [ - 2898, - 2899 - ] - }, - { - "teal": 2793, - "source": 730, - "pc": [ - 2900, - 2901 - ] - }, - { - "teal": 2794, - "source": 730, - "pc": [ - 2902 - ] - }, - { - "teal": 2795, - "source": 730, - "pc": [ - 2903 - ] - }, - { - "teal": 2796, - "source": 730, - "pc": [ - 2904 - ] - }, - { - "teal": 2797, - "source": 730, - "pc": [ - 2905, - 2906, - 2907 - ] - }, - { - "teal": 2798, - "source": 730, - "pc": [ - 2908, - 2909 - ] - }, - { - "teal": 2799, - "source": 730, - "pc": [ - 2910 - ] - }, - { - "teal": 2800, - "source": 730, - "pc": [ - 2911 - ] - }, - { - "teal": 2801, - "source": 730, - "pc": [ - 2912 - ] - }, - { - "teal": 2804, - "source": 730, - "pc": [ - 2913, - 2914, - 2915 - ] - }, - { - "teal": 2809, - "source": 731, - "pc": [ - 2916 - ] - }, - { - "teal": 2810, - "source": 731, - "pc": [ - 2917, - 2918 - ] - }, - { - "teal": 2814, - "source": 732, - "pc": [ - 2919 - ] - }, - { - "teal": 2815, - "source": 732, - "pc": [ - 2920, - 2921 - ] - }, - { - "teal": 2820, - "source": 732, - "pc": [ - 2922, - 2923 - ] - }, - { - "teal": 2821, - "source": 732, - "pc": [ - 2924, - 2925 - ] - }, - { - "teal": 2822, - "source": 732, - "pc": [ - 2926 - ] - }, - { - "teal": 2823, - "source": 732, - "pc": [ - 2927, - 2928, - 2929 - ] - }, - { - "teal": 2828, - "source": 733, - "pc": [ - 2930, - 2931 - ] - }, - { - "teal": 2829, - "source": 733, - "pc": [ - 2932, - 2933 - ] - }, - { - "teal": 2830, - "source": 733, - "pc": [ - 2934 - ] - }, - { - "teal": 2831, - "source": 733, - "pc": [ - 2935, - 2936, - 2937 - ] - }, - { - "teal": 2836, - "source": 734, - "pc": [ - 2938 - ] - }, - { - "teal": 2837, - "source": 734, - "pc": [ - 2939 - ] - }, - { - "teal": 2838, - "source": 734, - "pc": [ - 2940, - 2941 - ] - }, - { - "teal": 2839, - "source": 734, - "pc": [ - 2942 - ] - }, - { - "teal": 2840, - "source": 734, - "pc": [ - 2943, - 2944 - ] - }, - { - "teal": 2841, - "source": 734, - "pc": [ - 2945, - 2946 - ] - }, - { - "teal": 2842, - "source": 734, - "pc": [ - 2947 - ] - }, - { - "teal": 2843, - "source": 734, - "pc": [ - 2948, - 2949 - ] - }, - { - "teal": 2844, - "source": 734, - "pc": [ - 2950, - 2951 - ] - }, - { - "teal": 2845, - "source": 734, - "pc": [ - 2952, - 2953 - ] - }, - { - "teal": 2846, - "source": 734, - "pc": [ - 2954, - 2955 - ] - }, - { - "teal": 2847, - "source": 734, - "pc": [ - 2956 - ] - }, - { - "teal": 2852, - "source": 736, - "pc": [ - 2957, - 2958 - ] - }, - { - "teal": 2853, - "source": 736, - "pc": [ - 2959 - ] - }, - { - "teal": 2854, - "source": 736, - "pc": [ - 2960 - ] - }, - { - "teal": 2855, - "source": 736, - "pc": [ - 2961 - ] - }, - { - "teal": 2856, - "source": 736, - "pc": [ - 2962 - ] - }, - { - "teal": 2857, - "source": 736, - "pc": [ - 2963, - 2964 - ] - }, - { - "teal": 2858, - "source": 736, - "pc": [ - 2965 - ] - }, - { - "teal": 2859, - "source": 736, - "pc": [ - 2966, - 2967 - ] - }, - { - "teal": 2864, - "source": 737, - "pc": [ - 2968, - 2969 - ] - }, - { - "teal": 2865, - "source": 737, - "pc": [ - 2970, - 2971, - 2972 - ] - }, - { - "teal": 2866, - "source": 737, - "pc": [ - 2973, - 2974 - ] - }, - { - "teal": 2867, - "source": 737, - "pc": [ - 2975 - ] - }, - { - "teal": 2868, - "source": 737, - "pc": [ - 2976, - 2977, - 2978 - ] - }, - { - "teal": 2874, - "source": 738, - "pc": [ - 2979, - 2980 - ] - }, - { - "teal": 2875, - "source": 738, - "pc": [ - 2981, - 2982, - 2983 - ] - }, - { - "teal": 2876, - "source": 738, - "pc": [ - 2984 - ] - }, - { - "teal": 2877, - "source": 738, - "pc": [ - 2985, - 2986 - ] - }, - { - "teal": 2878, - "source": 738, - "pc": [ - 2987 - ] - }, - { - "teal": 2879, - "source": 738, - "pc": [ - 2988, - 2989, - 2990 - ] - }, - { - "teal": 2884, - "source": 741, - "pc": [ - 2991, - 2992 - ] - }, - { - "teal": 2885, - "source": 741, - "pc": [ - 2993, - 2994 - ] - }, - { - "teal": 2886, - "source": 741, - "pc": [ - 2995, - 2996, - 2997 - ] - }, - { - "teal": 2887, - "source": 741, - "pc": [ - 2998 - ] - }, - { - "teal": 2888, - "source": 741, - "pc": [ - 2999 - ] - }, - { - "teal": 2889, - "source": 741, - "pc": [ - 3000, - 3001 - ] - }, - { - "teal": 2890, - "source": 738, - "pc": [ - 3002, - 3003, - 3004 - ] - }, - { - "teal": 2895, - "source": 745, - "pc": [ - 3005, - 3006 - ] - }, - { - "teal": 2896, - "source": 745, - "pc": [ - 3007, - 3008 - ] - }, - { - "teal": 2897, - "source": 745, - "pc": [ - 3009, - 3010, - 3011 - ] - }, - { - "teal": 2898, - "source": 745, - "pc": [ - 3012 - ] - }, - { - "teal": 2899, - "source": 745, - "pc": [ - 3013 - ] - }, - { - "teal": 2900, - "source": 745, - "pc": [ - 3014, - 3015 - ] - }, - { - "teal": 2905, - "source": 749, - "pc": [ - 3016, - 3017 - ] - }, - { - "teal": 2906, - "source": 749, - "pc": [ - 3018, - 3019 - ] - }, - { - "teal": 2907, - "source": 749, - "pc": [ - 3020 - ] - }, - { - "teal": 2908, - "source": 749, - "pc": [ - 3021, - 3022, - 3023 - ] - }, - { - "teal": 2913, - "source": 750, - "pc": [ - 3024, - 3025 - ] - }, - { - "teal": 2914, - "source": 750, - "pc": [ - 3026, - 3027 - ] - }, - { - "teal": 2915, - "source": 750, - "pc": [ - 3028, - 3029, - 3030 - ] - }, - { - "teal": 2916, - "source": 750, - "pc": [ - 3031 - ] - }, - { - "teal": 2917, - "source": 750, - "pc": [ - 3032 - ] - }, - { - "teal": 2918, - "source": 750, - "pc": [ - 3033, - 3034 - ] - }, - { - "teal": 2922, - "source": 751, - "pc": [ - 3035, - 3036 - ] - }, - { - "teal": 2923, - "source": 751, - "pc": [ - 3037, - 3038 - ] - }, - { - "teal": 2924, - "source": 751, - "pc": [ - 3039 - ] - }, - { - "teal": 2925, - "source": 751, - "pc": [ - 3040, - 3041 - ] - }, - { - "teal": 2926, - "source": 751, - "pc": [ - 3042 - ] - }, - { - "teal": 2927, - "source": 751, - "pc": [ - 3043, - 3044 - ] - }, - { - "teal": 2932, - "source": 753, - "pc": [ - 3045, - 3046 - ] - }, - { - "teal": 2933, - "source": 753, - "pc": [ - 3047 - ] - }, - { - "teal": 2934, - "source": 753, - "pc": [ - 3048 - ] - }, - { - "teal": 2935, - "source": 753, - "pc": [ - 3049, - 3050, - 3051 - ] - }, - { - "teal": 2943, - "source": 756, - "pc": [ - 3052, - 3053 - ] - }, - { - "teal": 2944, - "source": 756, - "pc": [ - 3054, - 3055, - 3056 - ] - }, - { - "teal": 2945, - "source": 756, - "pc": [ - 3057 - ] - }, - { - "teal": 2946, - "source": 756, - "pc": [ - 3058, - 3059 - ] - }, - { - "teal": 2947, - "source": 755, - "pc": [ - 3060 - ] - }, - { - "teal": 2948, - "source": 756, - "pc": [ - 3061, - 3062 - ] - }, - { - "teal": 2949, - "source": 755, - "pc": [ - 3063, - 3064 - ] - }, - { - "teal": 2950, - "source": 755, - "pc": [ - 3065, - 3066 - ] - }, - { - "teal": 2951, - "source": 755, - "pc": [ - 3067 - ] - }, - { - "teal": 2952, - "source": 755, - "pc": [ - 3068, - 3069 - ] - }, - { - "teal": 2953, - "source": 755, - "pc": [ - 3070 - ] - }, - { - "teal": 2954, - "source": 755, - "pc": [ - 3071, - 3072 - ] - }, - { - "teal": 2955, - "source": 755, - "pc": [ - 3073 - ] - }, - { - "teal": 2956, - "source": 755, - "pc": [ - 3074 - ] - }, - { - "teal": 2957, - "source": 757, - "pc": [ - 3075, - 3076 - ] - }, - { - "teal": 2958, - "source": 757, - "pc": [ - 3077 - ] - }, - { - "teal": 2959, - "source": 757, - "pc": [ - 3078, - 3079 - ] - }, - { - "teal": 2960, - "source": 755, - "pc": [ - 3080 - ] - }, - { - "teal": 2961, - "source": 755, - "pc": [ - 3081 - ] - }, - { - "teal": 2962, - "source": 755, - "pc": [ - 3082 - ] - }, - { - "teal": 2963, - "source": 755, - "pc": [ - 3083 - ] - }, - { - "teal": 2964, - "source": 755, - "pc": [ - 3084 - ] - }, - { - "teal": 2965, - "source": 755, - "pc": [ - 3085 - ] - }, - { - "teal": 2968, - "source": 755, - "errorMessage": "wideRatio failed", - "pc": [ - 3086 - ] - }, - { - "teal": 2969, - "source": 755, - "pc": [ - 3087, - 3088 - ] - }, - { - "teal": 2973, - "source": 762, - "pc": [ - 3089, - 3090 - ] - }, - { - "teal": 2974, - "source": 762, - "pc": [ - 3091, - 3092 - ] - }, - { - "teal": 2975, - "source": 762, - "pc": [ - 3093 - ] - }, - { - "teal": 2976, - "source": 762, - "pc": [ - 3094, - 3095 - ] - }, - { - "teal": 2980, - "source": 763, - "pc": [ - 3096, - 3097 - ] - }, - { - "teal": 2981, - "source": 763, - "pc": [ - 3098, - 3099 - ] - }, - { - "teal": 2982, - "source": 763, - "pc": [ - 3100, - 3101 - ] - }, - { - "teal": 2983, - "source": 763, - "pc": [ - 3102, - 3103, - 3104 - ] - }, - { - "teal": 2984, - "source": 763, - "pc": [ - 3105 - ] - }, - { - "teal": 2985, - "source": 763, - "pc": [ - 3106, - 3107 - ] - }, - { - "teal": 2986, - "source": 763, - "pc": [ - 3108 - ] - }, - { - "teal": 2987, - "source": 763, - "pc": [ - 3109 - ] - }, - { - "teal": 2988, - "source": 763, - "pc": [ - 3110 - ] - }, - { - "teal": 2989, - "source": 763, - "pc": [ - 3111, - 3112 - ] - }, - { - "teal": 2993, - "source": 764, - "pc": [ - 3113, - 3114 - ] - }, - { - "teal": 2994, - "source": 764, - "pc": [ - 3115, - 3116 - ] - }, - { - "teal": 2995, - "source": 764, - "pc": [ - 3117 - ] - }, - { - "teal": 2996, - "source": 764, - "pc": [ - 3118, - 3119 - ] - }, - { - "teal": 3002, - "source": 766, - "pc": [ - 3120, - 3121 - ] - }, - { - "teal": 3003, - "source": 766, - "pc": [ - 3122 - ] - }, - { - "teal": 3004, - "source": 766, - "pc": [ - 3123 - ] - }, - { - "teal": 3005, - "source": 766, - "pc": [ - 3124, - 3125, - 3126 - ] - }, - { - "teal": 3013, - "source": 769, - "pc": [ - 3127, - 3128 - ] - }, - { - "teal": 3014, - "source": 769, - "pc": [ - 3129, - 3130, - 3131 - ] - }, - { - "teal": 3015, - "source": 769, - "pc": [ - 3132 - ] - }, - { - "teal": 3016, - "source": 769, - "pc": [ - 3133, - 3134 - ] - }, - { - "teal": 3017, - "source": 768, - "pc": [ - 3135 - ] - }, - { - "teal": 3018, - "source": 769, - "pc": [ - 3136, - 3137 - ] - }, - { - "teal": 3019, - "source": 768, - "pc": [ - 3138, - 3139 - ] - }, - { - "teal": 3020, - "source": 768, - "pc": [ - 3140, - 3141 - ] - }, - { - "teal": 3021, - "source": 768, - "pc": [ - 3142 - ] - }, - { - "teal": 3022, - "source": 768, - "pc": [ - 3143, - 3144 - ] - }, - { - "teal": 3023, - "source": 768, - "pc": [ - 3145 - ] - }, - { - "teal": 3024, - "source": 768, - "pc": [ - 3146, - 3147 - ] - }, - { - "teal": 3025, - "source": 768, - "pc": [ - 3148 - ] - }, - { - "teal": 3026, - "source": 768, - "pc": [ - 3149 - ] - }, - { - "teal": 3027, - "source": 770, - "pc": [ - 3150, - 3151 - ] - }, - { - "teal": 3028, - "source": 770, - "pc": [ - 3152 - ] - }, - { - "teal": 3029, - "source": 770, - "pc": [ - 3153, - 3154 - ] - }, - { - "teal": 3030, - "source": 768, - "pc": [ - 3155 - ] - }, - { - "teal": 3031, - "source": 768, - "pc": [ - 3156 - ] - }, - { - "teal": 3032, - "source": 768, - "pc": [ - 3157 - ] - }, - { - "teal": 3033, - "source": 768, - "pc": [ - 3158 - ] - }, - { - "teal": 3034, - "source": 768, - "pc": [ - 3159 - ] - }, - { - "teal": 3035, - "source": 768, - "pc": [ - 3160 - ] - }, - { - "teal": 3038, - "source": 768, - "errorMessage": "wideRatio failed", - "pc": [ - 3161 - ] - }, - { - "teal": 3039, - "source": 768, - "pc": [ - 3162, - 3163 - ] - }, - { - "teal": 3043, - "source": 775, - "pc": [ - 3164, - 3165 - ] - }, - { - "teal": 3044, - "source": 775, - "pc": [ - 3166, - 3167 - ] - }, - { - "teal": 3045, - "source": 775, - "pc": [ - 3168 - ] - }, - { - "teal": 3046, - "source": 775, - "pc": [ - 3169, - 3170 - ] - }, - { - "teal": 3050, - "source": 778, - "pc": [ - 3171, - 3172 - ] - }, - { - "teal": 3051, - "source": 778, - "pc": [ - 3173, - 3174 - ] - }, - { - "teal": 3052, - "source": 778, - "pc": [ - 3175, - 3176 - ] - }, - { - "teal": 3053, - "source": 778, - "pc": [ - 3177, - 3178, - 3179 - ] - }, - { - "teal": 3054, - "source": 778, - "pc": [ - 3180 - ] - }, - { - "teal": 3055, - "source": 778, - "pc": [ - 3181, - 3182 - ] - }, - { - "teal": 3056, - "source": 778, - "pc": [ - 3183 - ] - }, - { - "teal": 3057, - "source": 778, - "pc": [ - 3184 - ] - }, - { - "teal": 3058, - "source": 778, - "pc": [ - 3185 - ] - }, - { - "teal": 3059, - "source": 778, - "pc": [ - 3186, - 3187 - ] - }, - { - "teal": 3063, - "source": 779, - "pc": [ - 3188, - 3189 - ] - }, - { - "teal": 3064, - "source": 779, - "pc": [ - 3190, - 3191 - ] - }, - { - "teal": 3065, - "source": 779, - "pc": [ - 3192, - 3193 - ] - }, - { - "teal": 3066, - "source": 779, - "pc": [ - 3194, - 3195, - 3196 - ] - }, - { - "teal": 3067, - "source": 779, - "pc": [ - 3197 - ] - }, - { - "teal": 3068, - "source": 779, - "pc": [ - 3198, - 3199 - ] - }, - { - "teal": 3069, - "source": 779, - "pc": [ - 3200 - ] - }, - { - "teal": 3070, - "source": 779, - "pc": [ - 3201 - ] - }, - { - "teal": 3071, - "source": 779, - "pc": [ - 3202 - ] - }, - { - "teal": 3072, - "source": 779, - "pc": [ - 3203, - 3204 - ] - }, - { - "teal": 3076, - "source": 780, - "pc": [ - 3205, - 3206 - ] - }, - { - "teal": 3077, - "source": 780, - "pc": [ - 3207, - 3208 - ] - }, - { - "teal": 3078, - "source": 780, - "pc": [ - 3209 - ] - }, - { - "teal": 3079, - "source": 780, - "pc": [ - 3210, - 3211 - ] - }, - { - "teal": 3084, - "source": 783, - "pc": [ - 3212, - 3213 - ] - }, - { - "teal": 3085, - "source": 783, - "pc": [ - 3214 - ] - }, - { - "teal": 3086, - "source": 783, - "pc": [ - 3215 - ] - }, - { - "teal": 3087, - "source": 783, - "pc": [ - 3216, - 3217 - ] - }, - { - "teal": 3088, - "source": 783, - "pc": [ - 3218 - ] - }, - { - "teal": 3089, - "source": 783, - "pc": [ - 3219, - 3220 - ] - }, - { - "teal": 3090, - "source": 783, - "pc": [ - 3221 - ] - }, - { - "teal": 3101, - "source": 732, - "pc": [ - 3222, - 3223 - ] - }, - { - "teal": 3102, - "source": 732, - "pc": [ - 3224 - ] - }, - { - "teal": 3103, - "source": 732, - "pc": [ - 3225 - ] - }, - { - "teal": 3104, - "source": 732, - "pc": [ - 3226, - 3227 - ] - }, - { - "teal": 3105, - "source": 732, - "pc": [ - 3228, - 3229, - 3230 - ] - }, - { - "teal": 3110, - "source": 791, - "pc": [ - 3231, - 3232 - ] - }, - { - "teal": 3111, - "source": 791, - "pc": [ - 3233 - ] - }, - { - "teal": 3112, - "source": 791, - "pc": [ - 3234, - 3235 - ] - }, - { - "teal": 3113, - "source": 791, - "pc": [ - 3236 - ] - }, - { - "teal": 3114, - "source": 791, - "pc": [ - 3237, - 3238 - ] - }, - { - "teal": 3119, - "source": 795, - "pc": [ - 3239, - 3240 - ] - }, - { - "teal": 3120, - "source": 795, - "pc": [ - 3241 - ] - }, - { - "teal": 3121, - "source": 795, - "pc": [ - 3242 - ] - }, - { - "teal": 3122, - "source": 795, - "pc": [ - 3243, - 3244, - 3245 - ] - }, - { - "teal": 3127, - "source": 797, - "pc": [ - 3246 - ] - }, - { - "teal": 3128, - "source": 797, - "pc": [ - 3247, - 3248 - ] - }, - { - "teal": 3133, - "source": 797, - "pc": [ - 3249, - 3250 - ] - }, - { - "teal": 3134, - "source": 797, - "pc": [ - 3251, - 3252 - ] - }, - { - "teal": 3135, - "source": 797, - "pc": [ - 3253 - ] - }, - { - "teal": 3136, - "source": 797, - "pc": [ - 3254, - 3255, - 3256 - ] - }, - { - "teal": 3141, - "source": 798, - "pc": [ - 3257, - 3258 - ] - }, - { - "teal": 3142, - "source": 798, - "pc": [ - 3259, - 3260 - ] - }, - { - "teal": 3143, - "source": 798, - "pc": [ - 3261 - ] - }, - { - "teal": 3144, - "source": 798, - "pc": [ - 3262, - 3263, - 3264 - ] - }, - { - "teal": 3149, - "source": 799, - "pc": [ - 3265 - ] - }, - { - "teal": 3150, - "source": 799, - "pc": [ - 3266 - ] - }, - { - "teal": 3151, - "source": 799, - "pc": [ - 3267, - 3268 - ] - }, - { - "teal": 3152, - "source": 799, - "pc": [ - 3269 - ] - }, - { - "teal": 3153, - "source": 799, - "pc": [ - 3270, - 3271 - ] - }, - { - "teal": 3154, - "source": 799, - "pc": [ - 3272, - 3273 - ] - }, - { - "teal": 3155, - "source": 799, - "pc": [ - 3274 - ] - }, - { - "teal": 3156, - "source": 799, - "pc": [ - 3275, - 3276 - ] - }, - { - "teal": 3157, - "source": 799, - "pc": [ - 3277, - 3278 - ] - }, - { - "teal": 3158, - "source": 799, - "pc": [ - 3279, - 3280 - ] - }, - { - "teal": 3159, - "source": 799, - "pc": [ - 3281, - 3282 - ] - }, - { - "teal": 3160, - "source": 799, - "pc": [ - 3283 - ] - }, - { - "teal": 3165, - "source": 801, - "pc": [ - 3284, - 3285 - ] - }, - { - "teal": 3166, - "source": 801, - "pc": [ - 3286 - ] - }, - { - "teal": 3167, - "source": 801, - "pc": [ - 3287 - ] - }, - { - "teal": 3168, - "source": 801, - "pc": [ - 3288 - ] - }, - { - "teal": 3169, - "source": 801, - "pc": [ - 3289 - ] - }, - { - "teal": 3170, - "source": 801, - "pc": [ - 3290, - 3291 - ] - }, - { - "teal": 3171, - "source": 801, - "pc": [ - 3292 - ] - }, - { - "teal": 3172, - "source": 801, - "pc": [ - 3293, - 3294 - ] - }, - { - "teal": 3177, - "source": 802, - "pc": [ - 3295, - 3296 - ] - }, - { - "teal": 3178, - "source": 802, - "pc": [ - 3297, - 3298, - 3299 - ] - }, - { - "teal": 3179, - "source": 802, - "pc": [ - 3300, - 3301 - ] - }, - { - "teal": 3180, - "source": 802, - "pc": [ - 3302 - ] - }, - { - "teal": 3181, - "source": 802, - "pc": [ - 3303 - ] - }, - { - "teal": 3182, - "source": 802, - "pc": [ - 3304, - 3305, - 3306 - ] - }, - { - "teal": 3183, - "source": 802, - "pc": [ - 3307, - 3308 - ] - }, - { - "teal": 3184, - "source": 802, - "pc": [ - 3309, - 3310, - 3311 - ] - }, - { - "teal": 3185, - "source": 802, - "pc": [ - 3312 - ] - }, - { - "teal": 3186, - "source": 802, - "pc": [ - 3313, - 3314 - ] - }, - { - "teal": 3187, - "source": 802, - "pc": [ - 3315 - ] - }, - { - "teal": 3188, - "source": 802, - "pc": [ - 3316 - ] - }, - { - "teal": 3191, - "source": 802, - "pc": [ - 3317, - 3318, - 3319 - ] - }, - { - "teal": 3196, - "source": 803, - "pc": [ - 3320, - 3321 - ] - }, - { - "teal": 3197, - "source": 803, - "pc": [ - 3322, - 3323 - ] - }, - { - "teal": 3198, - "source": 803, - "pc": [ - 3324, - 3325, - 3326 - ] - }, - { - "teal": 3199, - "source": 803, - "pc": [ - 3327 - ] - }, - { - "teal": 3200, - "source": 803, - "pc": [ - 3328 - ] - }, - { - "teal": 3201, - "source": 803, - "pc": [ - 3329, - 3330 - ] - }, - { - "teal": 3206, - "source": 805, - "pc": [ - 3331, - 3332 - ] - }, - { - "teal": 3207, - "source": 805, - "pc": [ - 3333, - 3334 - ] - }, - { - "teal": 3208, - "source": 805, - "pc": [ - 3335 - ] - }, - { - "teal": 3209, - "source": 805, - "pc": [ - 3336, - 3337, - 3338 - ] - }, - { - "teal": 3215, - "source": 810, - "pc": [ - 3339, - 3340 - ] - }, - { - "teal": 3216, - "source": 810, - "pc": [ - 3341 - ] - }, - { - "teal": 3217, - "source": 810, - "pc": [ - 3342 - ] - }, - { - "teal": 3218, - "source": 810, - "pc": [ - 3343, - 3344, - 3345 - ] - }, - { - "teal": 3223, - "source": 811, - "pc": [ - 3346, - 3347 - ] - }, - { - "teal": 3224, - "source": 811, - "pc": [ - 3348, - 3349, - 3350 - ] - }, - { - "teal": 3225, - "source": 811, - "pc": [ - 3351 - ] - }, - { - "teal": 3226, - "source": 811, - "pc": [ - 3352, - 3353 - ] - }, - { - "teal": 3227, - "source": 811, - "pc": [ - 3354 - ] - }, - { - "teal": 3228, - "source": 811, - "pc": [ - 3355 - ] - }, - { - "teal": 3229, - "source": 811, - "pc": [ - 3356, - 3357 - ] - }, - { - "teal": 3230, - "source": 811, - "pc": [ - 3358 - ] - }, - { - "teal": 3231, - "source": 811, - "pc": [ - 3359 - ] - }, - { - "teal": 3232, - "source": 811, - "pc": [ - 3360 - ] - }, - { - "teal": 3233, - "source": 811, - "pc": [ - 3361 - ] - }, - { - "teal": 3234, - "source": 811, - "pc": [ - 3362 - ] - }, - { - "teal": 3237, - "source": 811, - "errorMessage": "wideRatio failed", - "pc": [ - 3363 - ] - }, - { - "teal": 3238, - "source": 811, - "pc": [ - 3364, - 3365 - ] - }, - { - "teal": 3242, - "source": 814, - "pc": [ - 3366, - 3367 - ] - }, - { - "teal": 3243, - "source": 814, - "pc": [ - 3368, - 3369 - ] - }, - { - "teal": 3244, - "source": 814, - "pc": [ - 3370, - 3371 - ] - }, - { - "teal": 3245, - "source": 814, - "pc": [ - 3372, - 3373, - 3374 - ] - }, - { - "teal": 3246, - "source": 814, - "pc": [ - 3375 - ] - }, - { - "teal": 3247, - "source": 814, - "pc": [ - 3376, - 3377 - ] - }, - { - "teal": 3248, - "source": 814, - "pc": [ - 3378 - ] - }, - { - "teal": 3249, - "source": 814, - "pc": [ - 3379 - ] - }, - { - "teal": 3250, - "source": 814, - "pc": [ - 3380 - ] - }, - { - "teal": 3251, - "source": 814, - "pc": [ - 3381, - 3382 - ] - }, - { - "teal": 3255, - "source": 815, - "pc": [ - 3383, - 3384 - ] - }, - { - "teal": 3256, - "source": 815, - "pc": [ - 3385, - 3386 - ] - }, - { - "teal": 3257, - "source": 815, - "pc": [ - 3387 - ] - }, - { - "teal": 3258, - "source": 815, - "pc": [ - 3388, - 3389 - ] - }, - { - "teal": 3264, - "source": 817, - "pc": [ - 3390, - 3391 - ] - }, - { - "teal": 3265, - "source": 817, - "pc": [ - 3392 - ] - }, - { - "teal": 3266, - "source": 817, - "pc": [ - 3393 - ] - }, - { - "teal": 3267, - "source": 817, - "pc": [ - 3394, - 3395, - 3396 - ] - }, - { - "teal": 3272, - "source": 818, - "pc": [ - 3397, - 3398 - ] - }, - { - "teal": 3273, - "source": 818, - "pc": [ - 3399, - 3400, - 3401 - ] - }, - { - "teal": 3274, - "source": 818, - "pc": [ - 3402 - ] - }, - { - "teal": 3275, - "source": 818, - "pc": [ - 3403, - 3404 - ] - }, - { - "teal": 3276, - "source": 818, - "pc": [ - 3405 - ] - }, - { - "teal": 3277, - "source": 818, - "pc": [ - 3406 - ] - }, - { - "teal": 3278, - "source": 818, - "pc": [ - 3407, - 3408 - ] - }, - { - "teal": 3279, - "source": 818, - "pc": [ - 3409 - ] - }, - { - "teal": 3280, - "source": 818, - "pc": [ - 3410 - ] - }, - { - "teal": 3281, - "source": 818, - "pc": [ - 3411 - ] - }, - { - "teal": 3282, - "source": 818, - "pc": [ - 3412 - ] - }, - { - "teal": 3283, - "source": 818, - "pc": [ - 3413 - ] - }, - { - "teal": 3286, - "source": 818, - "errorMessage": "wideRatio failed", - "pc": [ - 3414 - ] - }, - { - "teal": 3287, - "source": 818, - "pc": [ - 3415, - 3416 - ] - }, - { - "teal": 3291, - "source": 821, - "pc": [ - 3417, - 3418 - ] - }, - { - "teal": 3292, - "source": 821, - "pc": [ - 3419, - 3420 - ] - }, - { - "teal": 3293, - "source": 821, - "pc": [ - 3421, - 3422 - ] - }, - { - "teal": 3294, - "source": 821, - "pc": [ - 3423, - 3424, - 3425 - ] - }, - { - "teal": 3295, - "source": 821, - "pc": [ - 3426 - ] - }, - { - "teal": 3296, - "source": 821, - "pc": [ - 3427, - 3428 - ] - }, - { - "teal": 3297, - "source": 821, - "pc": [ - 3429 - ] - }, - { - "teal": 3298, - "source": 821, - "pc": [ - 3430 - ] - }, - { - "teal": 3299, - "source": 821, - "pc": [ - 3431 - ] - }, - { - "teal": 3300, - "source": 821, - "pc": [ - 3432, - 3433 - ] - }, - { - "teal": 3304, - "source": 822, - "pc": [ - 3434, - 3435 - ] - }, - { - "teal": 3305, - "source": 822, - "pc": [ - 3436, - 3437 - ] - }, - { - "teal": 3306, - "source": 822, - "pc": [ - 3438, - 3439 - ] - }, - { - "teal": 3307, - "source": 822, - "pc": [ - 3440, - 3441, - 3442 - ] - }, - { - "teal": 3308, - "source": 822, - "pc": [ - 3443 - ] - }, - { - "teal": 3309, - "source": 822, - "pc": [ - 3444, - 3445 - ] - }, - { - "teal": 3310, - "source": 822, - "pc": [ - 3446 - ] - }, - { - "teal": 3311, - "source": 822, - "pc": [ - 3447 - ] - }, - { - "teal": 3312, - "source": 822, - "pc": [ - 3448 - ] - }, - { - "teal": 3313, - "source": 822, - "pc": [ - 3449, - 3450 - ] - }, - { - "teal": 3317, - "source": 823, - "pc": [ - 3451, - 3452 - ] - }, - { - "teal": 3318, - "source": 823, - "pc": [ - 3453, - 3454 - ] - }, - { - "teal": 3319, - "source": 823, - "pc": [ - 3455 - ] - }, - { - "teal": 3320, - "source": 823, - "pc": [ - 3456, - 3457 - ] - }, - { - "teal": 3325, - "source": 827, - "pc": [ - 3458, - 3459 - ] - }, - { - "teal": 3326, - "source": 827, - "pc": [ - 3460 - ] - }, - { - "teal": 3327, - "source": 827, - "pc": [ - 3461 - ] - }, - { - "teal": 3328, - "source": 827, - "pc": [ - 3462, - 3463 - ] - }, - { - "teal": 3329, - "source": 827, - "pc": [ - 3464 - ] - }, - { - "teal": 3330, - "source": 827, - "pc": [ - 3465, - 3466 - ] - }, - { - "teal": 3331, - "source": 827, - "pc": [ - 3467 - ] - }, - { - "teal": 3340, - "source": 797, - "pc": [ - 3468, - 3469 - ] - }, - { - "teal": 3341, - "source": 797, - "pc": [ - 3470 - ] - }, - { - "teal": 3342, - "source": 797, - "pc": [ - 3471 - ] - }, - { - "teal": 3343, - "source": 797, - "pc": [ - 3472, - 3473 - ] - }, - { - "teal": 3344, - "source": 797, - "pc": [ - 3474, - 3475, - 3476 - ] - }, - { - "teal": 3353, - "source": 837, - "pc": [ - 3477, - 3478 - ] - }, - { - "teal": 3354, - "source": 837, - "pc": [ - 3479 - ] - }, - { - "teal": 3355, - "source": 837, - "pc": [ - 3480, - 3481 - ] - }, - { - "teal": 3356, - "source": 837, - "pc": [ - 3482 - ] - }, - { - "teal": 3357, - "source": 837, - "pc": [ - 3483 - ] - }, - { - "teal": 3358, - "source": 837, - "pc": [ - 3484, - 3485 - ] - }, - { - "teal": 3359, - "source": 837, - "pc": [ - 3486 - ] - }, - { - "teal": 3360, - "source": 837, - "pc": [ - 3487, - 3488 - ] - }, - { - "teal": 3364, - "source": 838, - "pc": [ - 3489, - 3490 - ] - }, - { - "teal": 3365, - "source": 838, - "pc": [ - 3491 - ] - }, - { - "teal": 3366, - "source": 838, - "pc": [ - 3492, - 3493 - ] - }, - { - "teal": 3367, - "source": 838, - "pc": [ - 3494 - ] - }, - { - "teal": 3368, - "source": 838, - "pc": [ - 3495, - 3496 - ] - }, - { - "teal": 3369, - "source": 838, - "pc": [ - 3497 - ] - }, - { - "teal": 3370, - "source": 838, - "pc": [ - 3498 - ] - }, - { - "teal": 3375, - "source": 839, - "pc": [ - 3499, - 3500 - ] - }, - { - "teal": 3376, - "source": 839, - "pc": [ - 3501 - ] - }, - { - "teal": 3377, - "source": 840, - "pc": [ - 3502 - ] - }, - { - "teal": 3378, - "source": 840, - "pc": [ - 3503, - 3504 - ] - }, - { - "teal": 3379, - "source": 840, - "pc": [ - 3505 - ] - }, - { - "teal": 3380, - "source": 840, - "pc": [ - 3506, - 3507 - ] - }, - { - "teal": 3381, - "source": 840, - "pc": [ - 3508 - ] - }, - { - "teal": 3382, - "source": 840, - "pc": [ - 3509 - ] - }, - { - "teal": 3383, - "source": 840, - "pc": [ - 3510 - ] - }, - { - "teal": 3384, - "source": 840, - "pc": [ - 3511 - ] - }, - { - "teal": 3385, - "source": 840, - "pc": [ - 3512 - ] - }, - { - "teal": 3386, - "source": 840, - "pc": [ - 3513, - 3514 - ] - }, - { - "teal": 3387, - "source": 840, - "pc": [ - 3515 - ] - }, - { - "teal": 3390, - "source": 840, - "errorMessage": "this.stakeAccumulator.value + (increasedStake as uint128) * (roundsLeftInBin as uint128) overflowed 128 bits", - "pc": [ - 3516 - ] - }, - { - "teal": 3391, - "source": 840, - "pc": [ - 3517, - 3518 - ] - }, - { - "teal": 3392, - "source": 840, - "pc": [ - 3519 - ] - }, - { - "teal": 3393, - "source": 840, - "pc": [ - 3520 - ] - }, - { - "teal": 3394, - "source": 840, - "pc": [ - 3521 - ] - }, - { - "teal": 3395, - "source": 840, - "pc": [ - 3522 - ] - }, - { - "teal": 3396, - "source": 840, - "pc": [ - 3523, - 3524 - ] - }, - { - "teal": 3397, - "source": 840, - "pc": [ - 3525 - ] - }, - { - "teal": 3398, - "source": 840, - "pc": [ - 3526 - ] - }, - { - "teal": 3399, - "source": 840, - "pc": [ - 3527 - ] - }, - { - "teal": 3400, - "source": 839, - "pc": [ - 3528 - ] - }, - { - "teal": 3404, - "source": 841, - "pc": [ - 3529, - 3530 - ] - }, - { - "teal": 3405, - "source": 841, - "pc": [ - 3531 - ] - }, - { - "teal": 3406, - "source": 841, - "pc": [ - 3532 - ] - }, - { - "teal": 3407, - "source": 841, - "pc": [ - 3533, - 3534 - ] - }, - { - "teal": 3408, - "source": 841, - "pc": [ - 3535 - ] - }, - { - "teal": 3409, - "source": 841, - "pc": [ - 3536 - ] - }, - { - "teal": 3422, - "source": 847, - "pc": [ - 3537 - ] - }, - { - "teal": 3423, - "source": 847, - "pc": [ - 3538 - ] - }, - { - "teal": 3424, - "source": 847, - "pc": [ - 3539, - 3540 - ] - }, - { - "teal": 3425, - "source": 847, - "pc": [ - 3541, - 3542, - 3543, - 3544, - 3545, - 3546 - ] - }, - { - "teal": 3426, - "source": 847, - "pc": [ - 3547, - 3548 - ] - }, - { - "teal": 3430, - "source": 848, - "pc": [ - 3549 - ] - }, - { - "teal": 3431, - "source": 848, - "pc": [ - 3550 - ] - }, - { - "teal": 3432, - "source": 848, - "pc": [ - 3551, - 3552 - ] - }, - { - "teal": 3442, - "source": 850, - "pc": [ - 3553 - ] - }, - { - "teal": 3443, - "source": 850, - "pc": [ - 3554 - ] - }, - { - "teal": 3444, - "source": 850, - "pc": [ - 3555 - ] - }, - { - "teal": 3445, - "source": 850, - "pc": [ - 3556 - ] - }, - { - "teal": 3446, - "source": 850, - "pc": [ - 3557 - ] - }, - { - "teal": 3447, - "source": 850, - "pc": [ - 3558 - ] - }, - { - "teal": 3448, - "source": 850, - "pc": [ - 3559 - ] - }, - { - "teal": 3449, - "source": 850, - "pc": [ - 3560, - 3561, - 3562 - ] - }, - { - "teal": 3450, - "source": 850, - "pc": [ - 3563 - ] - }, - { - "teal": 3451, - "source": 850, - "pc": [ - 3564 - ] - }, - { - "teal": 3452, - "source": 850, - "pc": [ - 3565, - 3566 - ] - }, - { - "teal": 3453, - "source": 851, - "pc": [ - 3567, - 3568 - ] - }, - { - "teal": 3454, - "source": 851, - "pc": [ - 3569 - ] - }, - { - "teal": 3455, - "source": 851, - "pc": [ - 3570, - 3571 - ] - }, - { - "teal": 3456, - "source": 852, - "pc": [ - 3572, - 3573 - ] - }, - { - "teal": 3457, - "source": 852, - "pc": [ - 3574 - ] - }, - { - "teal": 3458, - "source": 852, - "pc": [ - 3575, - 3576 - ] - }, - { - "teal": 3459, - "source": 853, - "pc": [ - 3577, - 3578 - ] - }, - { - "teal": 3460, - "source": 853, - "pc": [ - 3579 - ] - }, - { - "teal": 3461, - "source": 853, - "pc": [ - 3580, - 3581 - ] - }, - { - "teal": 3462, - "source": 854, - "pc": [ - 3582, - 3583 - ] - }, - { - "teal": 3463, - "source": 854, - "pc": [ - 3584 - ] - }, - { - "teal": 3464, - "source": 854, - "pc": [ - 3585, - 3586 - ] - }, - { - "teal": 3467, - "source": 847, - "pc": [ - 3587 - ] - }, - { - "teal": 3468, - "source": 847, - "pc": [ - 3588, - 3589 - ] - }, - { - "teal": 3471, - "source": 847, - "pc": [ - 3590 - ] - }, - { - "teal": 3472, - "source": 518, - "pc": [ - 3591 - ] - }, - { - "teal": 3477, - "source": 879, - "pc": [ - 3592, - 3593, - 3594 - ] - }, - { - "teal": 3478, - "source": 879, - "pc": [ - 3595 - ] - }, - { - "teal": 3481, - "source": 878, - "pc": [ - 3596, - 3597, - 3598 - ] - }, - { - "teal": 3482, - "source": 878, - "pc": [ - 3599 - ] - }, - { - "teal": 3485, - "source": 877, - "pc": [ - 3600, - 3601, - 3602 - ] - }, - { - "teal": 3486, - "source": 877, - "pc": [ - 3603 - ] - }, - { - "teal": 3489, - "source": 876, - "pc": [ - 3604, - 3605, - 3606 - ] - }, - { - "teal": 3490, - "source": 876, - "pc": [ - 3607, - 3608, - 3609 - ] - }, - { - "teal": 3493, - "source": 875, - "pc": [ - 3610, - 3611, - 3612 - ] - }, - { - "teal": 3494, - "source": 875, - "pc": [ - 3613, - 3614, - 3615 - ] - }, - { - "teal": 3497, - "source": 874, - "pc": [ - 3616, - 3617, - 3618 - ] - }, - { - "teal": 3498, - "source": 874, - "pc": [ - 3619, - 3620, - 3621 - ] - }, - { - "teal": 3501, - "source": 873, - "pc": [ - 3622, - 3623 - ] - }, - { - "teal": 3502, - "source": 873, - "pc": [ - 3624 - ] - }, - { - "teal": 3503, - "source": 873, - "pc": [ - 3625 - ] - }, - { - "teal": 3504, - "source": 873, - "pc": [ - 3626 - ] - }, - { - "teal": 3505, - "source": 873, - "pc": [ - 3627, - 3628 - ] - }, - { - "teal": 3506, - "source": 873, - "pc": [ - 3629 - ] - }, - { - "teal": 3507, - "source": 873, - "pc": [ - 3630 - ] - }, - { - "teal": 3510, - "source": 873, - "errorMessage": "argument 6 (feePayment) for goOnline must be a pay transaction", - "pc": [ - 3631 - ] - }, - { - "teal": 3513, - "source": 872, - "pc": [ - 3632, - 3633, - 3634 - ] - }, - { - "teal": 3514, - "source": 872, - "pc": [ - 3635 - ] - }, - { - "teal": 3515, - "source": 872, - "pc": [ - 3636 - ] - }, - { - "teal": 3531, - "source": 872, - "pc": [ - 3637, - 3638, - 3639 - ] - }, - { - "teal": 3534, - "source": 872, - "pc": [ - 3640, - 3641 - ] - }, - { - "teal": 3538, - "source": 881, - "pc": [ - 3642, - 3643, - 3644 - ] - }, - { - "teal": 3541, - "source": 881, - "errorMessage": "can only be called by owner or manager of validator", - "pc": [ - 3645 - ] - }, - { - "teal": 3545, - "source": 882, - "pc": [ - 3646, - 3647, - 3648 - ] - }, - { - "teal": 3546, - "source": 882, - "pc": [ - 3649, - 3650 - ] - }, - { - "teal": 3551, - "source": 883, - "pc": [ - 3651, - 3652 - ] - }, - { - "teal": 3552, - "source": 883, - "pc": [ - 3653, - 3654 - ] - }, - { - "teal": 3553, - "source": 883, - "pc": [ - 3655, - 3656 - ] - }, - { - "teal": 3554, - "source": 883, - "pc": [ - 3657 - ] - }, - { - "teal": 3557, - "source": 883, - "errorMessage": "transaction verification failed: {\"txn\":\"feePayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 3658 - ] - }, - { - "teal": 3560, - "source": 883, - "pc": [ - 3659, - 3660 - ] - }, - { - "teal": 3561, - "source": 883, - "pc": [ - 3661, - 3662 - ] - }, - { - "teal": 3562, - "source": 883, - "pc": [ - 3663, - 3664 - ] - }, - { - "teal": 3563, - "source": 883, - "pc": [ - 3665 - ] - }, - { - "teal": 3566, - "source": 883, - "errorMessage": "transaction verification failed: {\"txn\":\"feePayment\",\"field\":\"amount\",\"expected\":\"extraFee\"}", - "pc": [ - 3666 - ] - }, - { - "teal": 3578, - "source": 884, - "pc": [ - 3667 - ] - }, - { - "teal": 3579, - "source": 884, - "pc": [ - 3668, - 3669 - ] - }, - { - "teal": 3580, - "source": 884, - "pc": [ - 3670, - 3671 - ] - }, - { - "teal": 3584, - "source": 885, - "pc": [ - 3672, - 3673 - ] - }, - { - "teal": 3585, - "source": 885, - "pc": [ - 3674, - 3675 - ] - }, - { - "teal": 3589, - "source": 886, - "pc": [ - 3676, - 3677 - ] - }, - { - "teal": 3590, - "source": 886, - "pc": [ - 3678, - 3679 - ] - }, - { - "teal": 3594, - "source": 887, - "pc": [ - 3680, - 3681 - ] - }, - { - "teal": 3595, - "source": 887, - "pc": [ - 3682, - 3683 - ] - }, - { - "teal": 3599, - "source": 888, - "pc": [ - 3684, - 3685 - ] - }, - { - "teal": 3600, - "source": 888, - "pc": [ - 3686, - 3687 - ] - }, - { - "teal": 3604, - "source": 889, - "pc": [ - 3688, - 3689 - ] - }, - { - "teal": 3605, - "source": 889, - "pc": [ - 3690, - 3691 - ] - }, - { - "teal": 3609, - "source": 890, - "pc": [ - 3692, - 3693 - ] - }, - { - "teal": 3610, - "source": 890, - "pc": [ - 3694, - 3695 - ] - }, - { - "teal": 3614, - "source": 891, - "pc": [ - 3696, - 3697, - 3698 - ] - }, - { - "teal": 3615, - "source": 891, - "pc": [ - 3699, - 3700 - ] - }, - { - "teal": 3618, - "source": 884, - "pc": [ - 3701 - ] - }, - { - "teal": 3619, - "source": 872, - "pc": [ - 3702 - ] - }, - { - "teal": 3624, - "source": 900, - "pc": [ - 3703, - 3704, - 3705 - ] - }, - { - "teal": 3625, - "source": 900, - "pc": [ - 3706 - ] - }, - { - "teal": 3626, - "source": 900, - "pc": [ - 3707 - ] - }, - { - "teal": 3633, - "source": 900, - "pc": [ - 3708, - 3709, - 3710 - ] - }, - { - "teal": 3638, - "source": 903, - "pc": [ - 3711, - 3712 - ] - }, - { - "teal": 3639, - "source": 903, - "pc": [ - 3713 - ] - }, - { - "teal": 3640, - "source": 903, - "pc": [ - 3714 - ] - }, - { - "teal": 3641, - "source": 903, - "pc": [ - 3715, - 3716 - ] - }, - { - "teal": 3642, - "source": 903, - "pc": [ - 3717 - ] - }, - { - "teal": 3643, - "source": 903, - "pc": [ - 3718 - ] - }, - { - "teal": 3644, - "source": 903, - "pc": [ - 3719, - 3720, - 3721 - ] - }, - { - "teal": 3649, - "source": 904, - "pc": [ - 3722, - 3723, - 3724 - ] - }, - { - "teal": 3652, - "source": 904, - "errorMessage": "can only be called by owner or manager of validator", - "pc": [ - 3725 - ] - }, - { - "teal": 3657, - "source": 907, - "pc": [ - 3726 - ] - }, - { - "teal": 3658, - "source": 907, - "pc": [ - 3727, - 3728 - ] - }, - { - "teal": 3659, - "source": 907, - "pc": [ - 3729, - 3730 - ] - }, - { - "teal": 3662, - "source": 907, - "pc": [ - 3731 - ] - }, - { - "teal": 3663, - "source": 907, - "pc": [ - 3732, - 3733 - ] - }, - { - "teal": 3666, - "source": 907, - "pc": [ - 3734 - ] - }, - { - "teal": 3667, - "source": 900, - "pc": [ - 3735 - ] - }, - { - "teal": 3672, - "source": 913, - "pc": [ - 3736, - 3737, - 3738 - ] - }, - { - "teal": 3673, - "source": 913, - "pc": [ - 3739, - 3740, - 3741 - ] - }, - { - "teal": 3676, - "source": 913, - "pc": [ - 3742, - 3743, - 3744 - ] - }, - { - "teal": 3677, - "source": 913, - "pc": [ - 3745 - ] - }, - { - "teal": 3680, - "source": 913, - "pc": [ - 3746, - 3747, - 3748 - ] - }, - { - "teal": 3681, - "source": 913, - "pc": [ - 3749 - ] - }, - { - "teal": 3682, - "source": 913, - "pc": [ - 3750 - ] - }, - { - "teal": 3686, - "source": 913, - "pc": [ - 3751, - 3752, - 3753 - ] - }, - { - "teal": 3690, - "source": 914, - "pc": [ - 3754, - 3755, - 3756 - ] - }, - { - "teal": 3693, - "source": 914, - "errorMessage": "can only be called by owner or manager of validator", - "pc": [ - 3757 - ] - }, - { - "teal": 3701, - "source": 916, - "pc": [ - 3758 - ] - }, - { - "teal": 3702, - "source": 916, - "pc": [ - 3759 - ] - }, - { - "teal": 3703, - "source": 916, - "pc": [ - 3760, - 3761 - ] - }, - { - "teal": 3707, - "source": 917, - "pc": [ - 3762, - 3763 - ] - }, - { - "teal": 3708, - "source": 917, - "pc": [ - 3764, - 3765 - ] - }, - { - "teal": 3712, - "source": 918, - "pc": [ - 3766, - 3767, - 3768, - 3769, - 3770, - 3771, - 3772, - 3773, - 3774, - 3775, - 3776, - 3777, - 3778, - 3779, - 3780, - 3781, - 3782 - ] - }, - { - "teal": 3713, - "source": 918, - "pc": [ - 3783, - 3784 - ] - }, - { - "teal": 3714, - "source": 918, - "pc": [ - 3785, - 3786 - ] - }, - { - "teal": 3715, - "source": 918, - "pc": [ - 3787, - 3788 - ] - }, - { - "teal": 3716, - "source": 918, - "pc": [ - 3789, - 3790 - ] - }, - { - "teal": 3717, - "source": 918, - "pc": [ - 3791 - ] - }, - { - "teal": 3718, - "source": 918, - "pc": [ - 3792, - 3793 - ] - }, - { - "teal": 3719, - "source": 918, - "pc": [ - 3794, - 3795 - ] - }, - { - "teal": 3720, - "source": 918, - "pc": [ - 3796, - 3797 - ] - }, - { - "teal": 3724, - "source": 919, - "pc": [ - 3798, - 3799 - ] - }, - { - "teal": 3725, - "source": 919, - "pc": [ - 3800, - 3801 - ] - }, - { - "teal": 3728, - "source": 916, - "pc": [ - 3802 - ] - }, - { - "teal": 3729, - "source": 916, - "pc": [ - 3803, - 3804 - ] - }, - { - "teal": 3732, - "source": 916, - "pc": [ - 3805 - ] - }, - { - "teal": 3733, - "source": 913, - "pc": [ - 3806 - ] - }, - { - "teal": 3738, - "source": 929, - "pc": [ - 3807, - 3808 - ] - }, - { - "teal": 3741, - "source": 929, - "pc": [ - 3809, - 3810, - 3811 - ] - }, - { - "teal": 3742, - "source": 929, - "pc": [ - 3812 - ] - }, - { - "teal": 3743, - "source": 929, - "pc": [ - 3813 - ] - }, - { - "teal": 3744, - "source": 929, - "pc": [ - 3814, - 3815 - ] - }, - { - "teal": 3745, - "source": 929, - "pc": [ - 3816 - ] - }, - { - "teal": 3748, - "source": 929, - "errorMessage": "argument 0 (poolKey) for proxiedSetTokenPayoutRatio must be a (uint64,uint64,uint64)", - "pc": [ - 3817 - ] - }, - { - "teal": 3751, - "source": 929, - "pc": [ - 3818, - 3819, - 3820 - ] - }, - { - "teal": 3752, - "source": 929, - "pc": [ - 3821 - ] - }, - { - "teal": 3753, - "source": 929, - "pc": [ - 3822 - ] - }, - { - "teal": 3754, - "source": 929, - "pc": [ - 3823 - ] - }, - { - "teal": 3755, - "source": 929, - "pc": [ - 3824 - ] - }, - { - "teal": 3764, - "source": 929, - "pc": [ - 3825, - 3826, - 3827 - ] - }, - { - "teal": 3767, - "source": 929, - "pc": [ - 3828, - 3829 - ] - }, - { - "teal": 3771, - "source": 930, - "pc": [ - 3830 - ] - }, - { - "teal": 3772, - "source": 930, - "pc": [ - 3831 - ] - }, - { - "teal": 3773, - "source": 930, - "pc": [ - 3832, - 3833 - ] - }, - { - "teal": 3774, - "source": 930, - "pc": [ - 3834, - 3835, - 3836 - ] - }, - { - "teal": 3775, - "source": 930, - "pc": [ - 3837 - ] - }, - { - "teal": 3776, - "source": 930, - "pc": [ - 3838 - ] - }, - { - "teal": 3779, - "source": 930, - "errorMessage": "caller must be part of same validator set!", - "pc": [ - 3839 - ] - }, - { - "teal": 3783, - "source": 931, - "pc": [ - 3840 - ] - }, - { - "teal": 3784, - "source": 931, - "pc": [ - 3841 - ] - }, - { - "teal": 3785, - "source": 931, - "pc": [ - 3842 - ] - }, - { - "teal": 3786, - "source": 931, - "pc": [ - 3843 - ] - }, - { - "teal": 3789, - "source": 931, - "errorMessage": "callee must be pool 1", - "pc": [ - 3844 - ] - }, - { - "teal": 3793, - "source": 932, - "pc": [ - 3845, - 3846 - ] - }, - { - "teal": 3794, - "source": 932, - "pc": [ - 3847, - 3848, - 3849 - ] - }, - { - "teal": 3795, - "source": 932, - "pc": [ - 3850 - ] - }, - { - "teal": 3796, - "source": 932, - "pc": [ - 3851 - ] - }, - { - "teal": 3797, - "source": 932, - "pc": [ - 3852 - ] - }, - { - "teal": 3800, - "source": 932, - "errorMessage": "caller must NOT be pool 1", - "pc": [ - 3853 - ] - }, - { - "teal": 3807, - "source": 934, - "pc": [ - 3854 - ] - }, - { - "teal": 3808, - "source": 934, - "pc": [ - 3855 - ] - }, - { - "teal": 3809, - "source": 934, - "pc": [ - 3856, - 3857 - ] - }, - { - "teal": 3810, - "source": 934, - "pc": [ - 3858, - 3859 - ] - }, - { - "teal": 3811, - "source": 934, - "pc": [ - 3860, - 3861 - ] - }, - { - "teal": 3815, - "source": 935, - "pc": [ - 3862 - ] - }, - { - "teal": 3816, - "source": 935, - "pc": [ - 3863 - ] - }, - { - "teal": 3817, - "source": 935, - "pc": [ - 3864, - 3865 - ] - }, - { - "teal": 3821, - "source": 936, - "pc": [ - 3866, - 3867 - ] - }, - { - "teal": 3822, - "source": 936, - "pc": [ - 3868, - 3869, - 3870 - ] - }, - { - "teal": 3823, - "source": 936, - "pc": [ - 3871 - ] - }, - { - "teal": 3824, - "source": 936, - "pc": [ - 3872 - ] - }, - { - "teal": 3825, - "source": 936, - "pc": [ - 3873, - 3874 - ] - }, - { - "teal": 3826, - "source": 936, - "pc": [ - 3875, - 3876 - ] - }, - { - "teal": 3827, - "source": 936, - "pc": [ - 3877, - 3878, - 3879 - ] - }, - { - "teal": 3828, - "source": 936, - "pc": [ - 3880 - ] - }, - { - "teal": 3829, - "source": 936, - "pc": [ - 3881 - ] - }, - { - "teal": 3830, - "source": 936, - "pc": [ - 3882, - 3883 - ] - }, - { - "teal": 3833, - "source": 934, - "pc": [ - 3884 - ] - }, - { - "teal": 3834, - "source": 934, - "pc": [ - 3885, - 3886 - ] - }, - { - "teal": 3837, - "source": 934, - "pc": [ - 3887 - ] - }, - { - "teal": 3838, - "source": 934, - "pc": [ - 3888, - 3889 - ] - }, - { - "teal": 3839, - "source": 934, - "pc": [ - 3890 - ] - }, - { - "teal": 3840, - "source": 934, - "pc": [ - 3891 - ] - }, - { - "teal": 3841, - "source": 934, - "pc": [ - 3892, - 3893 - ] - }, - { - "teal": 3842, - "source": 934, - "pc": [ - 3894, - 3895, - 3896 - ] - }, - { - "teal": 3843, - "source": 934, - "pc": [ - 3897 - ] - }, - { - "teal": 3844, - "source": 934, - "pc": [ - 3898, - 3899 - ] - }, - { - "teal": 3848, - "source": 938, - "pc": [ - 3900, - 3901 - ] - }, - { - "teal": 3849, - "source": 938, - "pc": [ - 3902, - 3903 - ] - }, - { - "teal": 3850, - "source": 938, - "pc": [ - 3904, - 3905, - 3906 - ] - }, - { - "teal": 3851, - "source": 938, - "pc": [ - 3907 - ] - }, - { - "teal": 3852, - "source": 938, - "pc": [ - 3908 - ] - }, - { - "teal": 3853, - "source": 938, - "pc": [ - 3909 - ] - }, - { - "teal": 3857, - "source": 939, - "pc": [ - 3910, - 3911 - ] - }, - { - "teal": 3858, - "source": 939, - "pc": [ - 3912, - 3913 - ] - }, - { - "teal": 3859, - "source": 939, - "pc": [ - 3914, - 3915, - 3916 - ] - }, - { - "teal": 3860, - "source": 939, - "pc": [ - 3917 - ] - }, - { - "teal": 3861, - "source": 939, - "pc": [ - 3918, - 3919 - ] - }, - { - "teal": 3862, - "source": 939, - "pc": [ - 3920 - ] - }, - { - "teal": 3863, - "source": 939, - "pc": [ - 3921 - ] - }, - { - "teal": 3864, - "source": 939, - "pc": [ - 3922 - ] - }, - { - "teal": 3871, - "source": 941, - "pc": [ - 3923 - ] - }, - { - "teal": 3872, - "source": 941, - "pc": [ - 3924 - ] - }, - { - "teal": 3873, - "source": 941, - "pc": [ - 3925, - 3926 - ] - }, - { - "teal": 3874, - "source": 941, - "pc": [ - 3927, - 3928 - ] - }, - { - "teal": 3875, - "source": 941, - "pc": [ - 3929, - 3930 - ] - }, - { - "teal": 3879, - "source": 942, - "pc": [ - 3931 - ] - }, - { - "teal": 3880, - "source": 942, - "pc": [ - 3932 - ] - }, - { - "teal": 3881, - "source": 942, - "pc": [ - 3933, - 3934 - ] - }, - { - "teal": 3885, - "source": 943, - "pc": [ - 3935 - ] - }, - { - "teal": 3886, - "source": 943, - "pc": [ - 3936 - ] - }, - { - "teal": 3887, - "source": 943, - "pc": [ - 3937 - ] - }, - { - "teal": 3888, - "source": 943, - "pc": [ - 3938, - 3939 - ] - }, - { - "teal": 3891, - "source": 941, - "pc": [ - 3940 - ] - }, - { - "teal": 3892, - "source": 941, - "pc": [ - 3941, - 3942 - ] - }, - { - "teal": 3895, - "source": 941, - "pc": [ - 3943 - ] - }, - { - "teal": 3896, - "source": 941, - "pc": [ - 3944, - 3945 - ] - }, - { - "teal": 3897, - "source": 941, - "pc": [ - 3946 - ] - }, - { - "teal": 3898, - "source": 941, - "pc": [ - 3947 - ] - }, - { - "teal": 3899, - "source": 941, - "pc": [ - 3948, - 3949 - ] - }, - { - "teal": 3900, - "source": 941, - "pc": [ - 3950, - 3951, - 3952 - ] - }, - { - "teal": 3903, - "source": 929, - "pc": [ - 3953, - 3954 - ] - }, - { - "teal": 3904, - "source": 929, - "pc": [ - 3955 - ] - }, - { - "teal": 3908, - "source": 947, - "pc": [ - 3956, - 3957, - 3958 - ] - }, - { - "teal": 3911, - "source": 947, - "pc": [ - 3959, - 3960 - ] - }, - { - "teal": 3918, - "source": 948, - "pc": [ - 3961 - ] - }, - { - "teal": 3919, - "source": 948, - "pc": [ - 3962 - ] - }, - { - "teal": 3920, - "source": 948, - "pc": [ - 3963, - 3964 - ] - }, - { - "teal": 3921, - "source": 948, - "pc": [ - 3965, - 3966, - 3967, - 3968, - 3969, - 3970 - ] - }, - { - "teal": 3922, - "source": 948, - "pc": [ - 3971, - 3972 - ] - }, - { - "teal": 3926, - "source": 949, - "pc": [ - 3973 - ] - }, - { - "teal": 3927, - "source": 949, - "pc": [ - 3974 - ] - }, - { - "teal": 3928, - "source": 949, - "pc": [ - 3975, - 3976 - ] - }, - { - "teal": 3932, - "source": 950, - "pc": [ - 3977 - ] - }, - { - "teal": 3933, - "source": 950, - "pc": [ - 3978 - ] - }, - { - "teal": 3934, - "source": 950, - "pc": [ - 3979 - ] - }, - { - "teal": 3935, - "source": 950, - "pc": [ - 3980, - 3981 - ] - }, - { - "teal": 3938, - "source": 948, - "pc": [ - 3982 - ] - }, - { - "teal": 3939, - "source": 948, - "pc": [ - 3983, - 3984 - ] - }, - { - "teal": 3942, - "source": 948, - "pc": [ - 3985 - ] - }, - { - "teal": 3943, - "source": 948, - "pc": [ - 3986, - 3987 - ] - }, - { - "teal": 3944, - "source": 948, - "pc": [ - 3988 - ] - }, - { - "teal": 3945, - "source": 948, - "pc": [ - 3989 - ] - }, - { - "teal": 3946, - "source": 948, - "pc": [ - 3990, - 3991 - ] - }, - { - "teal": 3947, - "source": 948, - "pc": [ - 3992, - 3993, - 3994 - ] - }, - { - "teal": 3948, - "source": 948, - "pc": [ - 3995, - 3996 - ] - }, - { - "teal": 3952, - "source": 952, - "pc": [ - 3997, - 3998 - ] - }, - { - "teal": 3953, - "source": 952, - "pc": [ - 3999, - 4000 - ] - }, - { - "teal": 3954, - "source": 952, - "pc": [ - 4001, - 4002, - 4003 - ] - }, - { - "teal": 3955, - "source": 952, - "pc": [ - 4004 - ] - }, - { - "teal": 3956, - "source": 952, - "pc": [ - 4005 - ] - }, - { - "teal": 3957, - "source": 952, - "pc": [ - 4006, - 4007, - 4008 - ] - }, - { - "teal": 3958, - "source": 952, - "pc": [ - 4009, - 4010 - ] - }, - { - "teal": 3959, - "source": 952, - "pc": [ - 4011, - 4012 - ] - }, - { - "teal": 3960, - "source": 952, - "pc": [ - 4013, - 4014, - 4015 - ] - }, - { - "teal": 3961, - "source": 952, - "pc": [ - 4016 - ] - }, - { - "teal": 3962, - "source": 952, - "pc": [ - 4017 - ] - }, - { - "teal": 3966, - "source": 947, - "pc": [ - 4018, - 4019 - ] - }, - { - "teal": 3967, - "source": 947, - "pc": [ - 4020 - ] - }, - { - "teal": 3971, - "source": 955, - "pc": [ - 4021, - 4022, - 4023 - ] - }, - { - "teal": 3975, - "source": 956, - "pc": [ - 4024, - 4025 - ] - }, - { - "teal": 3976, - "source": 955, - "pc": [ - 4026 - ] - }, - { - "teal": 3983, - "source": 965, - "pc": [ - 4027, - 4028, - 4029 - ] - }, - { - "teal": 3986, - "source": 965, - "pc": [ - 4030, - 4031 - ] - }, - { - "teal": 3990, - "source": 966, - "pc": [ - 4032, - 4033, - 4034 - ] - }, - { - "teal": 3991, - "source": 966, - "pc": [ - 4035, - 4036 - ] - }, - { - "teal": 3995, - "source": 968, - "pc": [ - 4037, - 4038 - ] - }, - { - "teal": 3996, - "source": 968, - "pc": [ - 4039, - 4040 - ] - }, - { - "teal": 3997, - "source": 968, - "pc": [ - 4041 - ] - }, - { - "teal": 3998, - "source": 968, - "pc": [ - 4042 - ] - }, - { - "teal": 3999, - "source": 968, - "pc": [ - 4043, - 4044 - ] - }, - { - "teal": 4000, - "source": 968, - "pc": [ - 4045 - ] - }, - { - "teal": 4001, - "source": 968, - "pc": [ - 4046 - ] - }, - { - "teal": 4002, - "source": 968, - "pc": [ - 4047 - ] - }, - { - "teal": 4003, - "source": 968, - "pc": [ - 4048 - ] - }, - { - "teal": 4004, - "source": 968, - "pc": [ - 4049 - ] - }, - { - "teal": 4007, - "source": 968, - "errorMessage": "wideRatio failed", - "pc": [ - 4050 - ] - }, - { - "teal": 4010, - "source": 965, - "pc": [ - 4051, - 4052 - ] - }, - { - "teal": 4011, - "source": 965, - "pc": [ - 4053 - ] - }, - { - "teal": 4015, - "source": 971, - "pc": [ - 4054, - 4055, - 4056 - ] - }, - { - "teal": 4018, - "source": 971, - "pc": [ - 4057, - 4058 - ] - }, - { - "teal": 4022, - "source": 975, - "pc": [ - 4059 - ] - }, - { - "teal": 4023, - "source": 975, - "pc": [ - 4060, - 4061 - ] - }, - { - "teal": 4028, - "source": 976, - "pc": [ - 4062, - 4063 - ] - }, - { - "teal": 4029, - "source": 976, - "pc": [ - 4064 - ] - }, - { - "teal": 4030, - "source": 976, - "pc": [ - 4065, - 4066, - 4067 - ] - }, - { - "teal": 4035, - "source": 978, - "pc": [ - 4068, - 4069, - 4070, - 4071 - ] - }, - { - "teal": 4036, - "source": 978, - "pc": [ - 4072, - 4073, - 4074 - ] - }, - { - "teal": 4041, - "source": 980, - "pc": [ - 4075 - ] - }, - { - "teal": 4045, - "source": 971, - "pc": [ - 4076, - 4077 - ] - }, - { - "teal": 4046, - "source": 971, - "pc": [ - 4078 - ] - }, - { - "teal": 4050, - "source": 983, - "pc": [ - 4079, - 4080, - 4081 - ] - }, - { - "teal": 4054, - "source": 985, - "pc": [ - 4082, - 4083, - 4084, - 4085, - 4086, - 4087, - 4088, - 4089, - 4090 - ] - }, - { - "teal": 4055, - "source": 983, - "pc": [ - 4091 - ] - }, - { - "teal": 4061, - "source": 991, - "pc": [ - 4092, - 4093, - 4094 - ] - }, - { - "teal": 4064, - "source": 991, - "pc": [ - 4095, - 4096 - ] - }, - { - "teal": 4065, - "source": 991, - "pc": [ - 4097, - 4098 - ] - }, - { - "teal": 4069, - "source": 992, - "pc": [ - 4099, - 4100 - ] - }, - { - "teal": 4070, - "source": 992, - "pc": [ - 4101 - ] - }, - { - "teal": 4071, - "source": 992, - "pc": [ - 4102 - ] - }, - { - "teal": 4072, - "source": 992, - "pc": [ - 4103, - 4104 - ] - }, - { - "teal": 4077, - "source": 993, - "pc": [ - 4105, - 4106 - ] - }, - { - "teal": 4078, - "source": 993, - "pc": [ - 4107, - 4108 - ] - }, - { - "teal": 4079, - "source": 993, - "pc": [ - 4109 - ] - }, - { - "teal": 4080, - "source": 993, - "pc": [ - 4110, - 4111 - ] - }, - { - "teal": 4081, - "source": 993, - "pc": [ - 4112 - ] - }, - { - "teal": 4082, - "source": 993, - "pc": [ - 4113 - ] - }, - { - "teal": 4083, - "source": 993, - "pc": [ - 4114 - ] - }, - { - "teal": 4084, - "source": 993, - "pc": [ - 4115 - ] - }, - { - "teal": 4087, - "source": 993, - "errorMessage": "currentBinSize as uint64 overflowed 64 bits", - "pc": [ - 4116 - ] - }, - { - "teal": 4088, - "source": 993, - "pc": [ - 4117, - 4118, - 4119, - 4120, - 4121, - 4122, - 4123, - 4124, - 4125, - 4126 - ] - }, - { - "teal": 4089, - "source": 993, - "pc": [ - 4127 - ] - }, - { - "teal": 4090, - "source": 993, - "pc": [ - 4128 - ] - }, - { - "teal": 4091, - "source": 993, - "pc": [ - 4129 - ] - }, - { - "teal": 4092, - "source": 993, - "pc": [ - 4130 - ] - }, - { - "teal": 4093, - "source": 993, - "pc": [ - 4131, - 4132 - ] - }, - { - "teal": 4094, - "source": 993, - "pc": [ - 4133 - ] - }, - { - "teal": 4095, - "source": 993, - "pc": [ - 4134 - ] - }, - { - "teal": 4096, - "source": 993, - "pc": [ - 4135 - ] - }, - { - "teal": 4097, - "source": 993, - "pc": [ - 4136 - ] - }, - { - "teal": 4098, - "source": 993, - "pc": [ - 4137 - ] - }, - { - "teal": 4099, - "source": 993, - "pc": [ - 4138 - ] - }, - { - "teal": 4100, - "source": 993, - "pc": [ - 4139, - 4140, - 4141 - ] - }, - { - "teal": 4106, - "source": 994, - "pc": [ - 4142, - 4143 - ] - }, - { - "teal": 4107, - "source": 994, - "pc": [ - 4144, - 4145 - ] - }, - { - "teal": 4108, - "source": 994, - "pc": [ - 4146 - ] - }, - { - "teal": 4109, - "source": 994, - "pc": [ - 4147, - 4148, - 4149 - ] - }, - { - "teal": 4114, - "source": 995, - "pc": [ - 4150 - ] - }, - { - "teal": 4115, - "source": 995, - "pc": [ - 4151 - ] - }, - { - "teal": 4116, - "source": 995, - "pc": [ - 4152, - 4153 - ] - }, - { - "teal": 4117, - "source": 995, - "pc": [ - 4154 - ] - }, - { - "teal": 4118, - "source": 995, - "pc": [ - 4155, - 4156 - ] - }, - { - "teal": 4119, - "source": 995, - "pc": [ - 4157, - 4158 - ] - }, - { - "teal": 4120, - "source": 995, - "pc": [ - 4159 - ] - }, - { - "teal": 4121, - "source": 995, - "pc": [ - 4160, - 4161 - ] - }, - { - "teal": 4122, - "source": 995, - "pc": [ - 4162, - 4163 - ] - }, - { - "teal": 4123, - "source": 995, - "pc": [ - 4164, - 4165 - ] - }, - { - "teal": 4124, - "source": 995, - "pc": [ - 4166, - 4167 - ] - }, - { - "teal": 4125, - "source": 995, - "pc": [ - 4168 - ] - }, - { - "teal": 4130, - "source": 997, - "pc": [ - 4169, - 4170 - ] - }, - { - "teal": 4131, - "source": 997, - "pc": [ - 4171, - 4172, - 4173, - 4174, - 4175, - 4176, - 4177, - 4178, - 4179, - 4180, - 4181, - 4182, - 4183, - 4184, - 4185, - 4186, - 4187, - 4188 - ] - }, - { - "teal": 4132, - "source": 997, - "pc": [ - 4189 - ] - }, - { - "teal": 4133, - "source": 997, - "pc": [ - 4190 - ] - }, - { - "teal": 4134, - "source": 997, - "pc": [ - 4191 - ] - }, - { - "teal": 4135, - "source": 997, - "pc": [ - 4192, - 4193 - ] - }, - { - "teal": 4136, - "source": 997, - "pc": [ - 4194 - ] - }, - { - "teal": 4139, - "source": 997, - "errorMessage": "currentBinSize * (365 as uint128) overflowed 128 bits", - "pc": [ - 4195 - ] - }, - { - "teal": 4140, - "source": 997, - "pc": [ - 4196, - 4197 - ] - }, - { - "teal": 4141, - "source": 997, - "pc": [ - 4198 - ] - }, - { - "teal": 4142, - "source": 997, - "pc": [ - 4199 - ] - }, - { - "teal": 4143, - "source": 997, - "pc": [ - 4200 - ] - }, - { - "teal": 4144, - "source": 997, - "pc": [ - 4201 - ] - }, - { - "teal": 4145, - "source": 997, - "pc": [ - 4202, - 4203 - ] - }, - { - "teal": 4146, - "source": 997, - "pc": [ - 4204 - ] - }, - { - "teal": 4147, - "source": 997, - "pc": [ - 4205 - ] - }, - { - "teal": 4148, - "source": 997, - "pc": [ - 4206 - ] - }, - { - "teal": 4149, - "source": 997, - "pc": [ - 4207, - 4208 - ] - }, - { - "teal": 4153, - "source": 998, - "pc": [ - 4209, - 4210 - ] - }, - { - "teal": 4154, - "source": 998, - "pc": [ - 4211 - ] - }, - { - "teal": 4155, - "source": 998, - "pc": [ - 4212, - 4213 - ] - }, - { - "teal": 4156, - "source": 998, - "pc": [ - 4214 - ] - }, - { - "teal": 4157, - "source": 998, - "pc": [ - 4215 - ] - }, - { - "teal": 4158, - "source": 998, - "pc": [ - 4216 - ] - }, - { - "teal": 4159, - "source": 998, - "pc": [ - 4217, - 4218 - ] - }, - { - "teal": 4160, - "source": 998, - "pc": [ - 4219 - ] - }, - { - "teal": 4163, - "source": 998, - "errorMessage": "this.stakeAccumulator.value / currentBinSize overflowed 128 bits", - "pc": [ - 4220 - ] - }, - { - "teal": 4164, - "source": 998, - "pc": [ - 4221, - 4222 - ] - }, - { - "teal": 4165, - "source": 998, - "pc": [ - 4223 - ] - }, - { - "teal": 4166, - "source": 998, - "pc": [ - 4224 - ] - }, - { - "teal": 4167, - "source": 998, - "pc": [ - 4225 - ] - }, - { - "teal": 4168, - "source": 998, - "pc": [ - 4226 - ] - }, - { - "teal": 4169, - "source": 998, - "pc": [ - 4227, - 4228 - ] - }, - { - "teal": 4170, - "source": 998, - "pc": [ - 4229 - ] - }, - { - "teal": 4171, - "source": 998, - "pc": [ - 4230 - ] - }, - { - "teal": 4172, - "source": 998, - "pc": [ - 4231 - ] - }, - { - "teal": 4173, - "source": 998, - "pc": [ - 4232, - 4233 - ] - }, - { - "teal": 4178, - "source": 999, - "pc": [ - 4234, - 4235 - ] - }, - { - "teal": 4179, - "source": 999, - "pc": [ - 4236, - 4237 - ] - }, - { - "teal": 4180, - "source": 999, - "pc": [ - 4238 - ] - }, - { - "teal": 4181, - "source": 999, - "pc": [ - 4239, - 4240, - 4241 - ] - }, - { - "teal": 4188, - "source": 1004, - "pc": [ - 4242, - 4243 - ] - }, - { - "teal": 4189, - "source": 1004, - "pc": [ - 4244 - ] - }, - { - "teal": 4190, - "source": 1004, - "pc": [ - 4245 - ] - }, - { - "teal": 4191, - "source": 1004, - "pc": [ - 4246, - 4247, - 4248, - 4249, - 4250, - 4251, - 4252, - 4253, - 4254, - 4255, - 4256, - 4257, - 4258, - 4259, - 4260, - 4261, - 4262, - 4263 - ] - }, - { - "teal": 4192, - "source": 1004, - "pc": [ - 4264 - ] - }, - { - "teal": 4193, - "source": 1004, - "pc": [ - 4265, - 4266 - ] - }, - { - "teal": 4194, - "source": 1004, - "pc": [ - 4267 - ] - }, - { - "teal": 4195, - "source": 1005, - "pc": [ - 4268, - 4269 - ] - }, - { - "teal": 4196, - "source": 1005, - "pc": [ - 4270, - 4271 - ] - }, - { - "teal": 4197, - "source": 1005, - "pc": [ - 4272 - ] - }, - { - "teal": 4198, - "source": 1004, - "pc": [ - 4273 - ] - }, - { - "teal": 4199, - "source": 1004, - "pc": [ - 4274 - ] - }, - { - "teal": 4200, - "source": 1004, - "pc": [ - 4275 - ] - }, - { - "teal": 4201, - "source": 1004, - "pc": [ - 4276, - 4277 - ] - }, - { - "teal": 4202, - "source": 1004, - "pc": [ - 4278 - ] - }, - { - "teal": 4205, - "source": 1004, - "errorMessage": "(((this.rewardAccumulator.value as uint128) * (10000 as uint128)) / avgStake) *\\n (approxRoundsPerYear / currentBinSize) overflowed 128 bits", - "pc": [ - 4279 - ] - }, - { - "teal": 4206, - "source": 1004, - "pc": [ - 4280, - 4281 - ] - }, - { - "teal": 4207, - "source": 1004, - "pc": [ - 4282 - ] - }, - { - "teal": 4208, - "source": 1004, - "pc": [ - 4283 - ] - }, - { - "teal": 4209, - "source": 1004, - "pc": [ - 4284 - ] - }, - { - "teal": 4210, - "source": 1004, - "pc": [ - 4285 - ] - }, - { - "teal": 4211, - "source": 1004, - "pc": [ - 4286, - 4287 - ] - }, - { - "teal": 4212, - "source": 1004, - "pc": [ - 4288 - ] - }, - { - "teal": 4213, - "source": 1004, - "pc": [ - 4289 - ] - }, - { - "teal": 4214, - "source": 1004, - "pc": [ - 4290 - ] - }, - { - "teal": 4215, - "source": 1003, - "pc": [ - 4291, - 4292 - ] - }, - { - "teal": 4219, - "source": 1007, - "pc": [ - 4293, - 4294, - 4295, - 4296, - 4297, - 4298, - 4299, - 4300, - 4301, - 4302, - 4303, - 4304, - 4305, - 4306, - 4307, - 4308, - 4309, - 4310 - ] - }, - { - "teal": 4220, - "source": 1007, - "pc": [ - 4311, - 4312 - ] - }, - { - "teal": 4225, - "source": 1009, - "pc": [ - 4313, - 4314 - ] - }, - { - "teal": 4226, - "source": 1009, - "pc": [ - 4315, - 4316, - 4317, - 4318, - 4319, - 4320, - 4321, - 4322, - 4323, - 4324, - 4325, - 4326, - 4327, - 4328, - 4329, - 4330, - 4331, - 4332 - ] - }, - { - "teal": 4227, - "source": 1009, - "pc": [ - 4333 - ] - }, - { - "teal": 4228, - "source": 1009, - "pc": [ - 4334, - 4335, - 4336 - ] - }, - { - "teal": 4233, - "source": 1010, - "pc": [ - 4337, - 4338, - 4339, - 4340, - 4341, - 4342, - 4343, - 4344, - 4345, - 4346, - 4347, - 4348, - 4349, - 4350, - 4351, - 4352, - 4353, - 4354 - ] - }, - { - "teal": 4234, - "source": 1010, - "pc": [ - 4355, - 4356 - ] - }, - { - "teal": 4241, - "source": 1012, - "pc": [ - 4357, - 4358 - ] - }, - { - "teal": 4242, - "source": 1012, - "pc": [ - 4359 - ] - }, - { - "teal": 4243, - "source": 1013, - "pc": [ - 4360 - ] - }, - { - "teal": 4244, - "source": 1013, - "pc": [ - 4361, - 4362 - ] - }, - { - "teal": 4245, - "source": 1013, - "pc": [ - 4363, - 4364 - ] - }, - { - "teal": 4246, - "source": 1013, - "pc": [ - 4365 - ] - }, - { - "teal": 4247, - "source": 1013, - "pc": [ - 4366 - ] - }, - { - "teal": 4248, - "source": 1013, - "pc": [ - 4367, - 4368 - ] - }, - { - "teal": 4249, - "source": 1013, - "pc": [ - 4369 - ] - }, - { - "teal": 4250, - "source": 1014, - "pc": [ - 4370, - 4371 - ] - }, - { - "teal": 4251, - "source": 1014, - "pc": [ - 4372, - 4373 - ] - }, - { - "teal": 4252, - "source": 1014, - "pc": [ - 4374 - ] - }, - { - "teal": 4253, - "source": 1014, - "pc": [ - 4375, - 4376 - ] - }, - { - "teal": 4254, - "source": 1014, - "pc": [ - 4377 - ] - }, - { - "teal": 4255, - "source": 1013, - "pc": [ - 4378 - ] - }, - { - "teal": 4256, - "source": 1013, - "pc": [ - 4379 - ] - }, - { - "teal": 4257, - "source": 1013, - "pc": [ - 4380 - ] - }, - { - "teal": 4258, - "source": 1013, - "pc": [ - 4381, - 4382 - ] - }, - { - "teal": 4259, - "source": 1013, - "pc": [ - 4383 - ] - }, - { - "teal": 4262, - "source": 1013, - "errorMessage": "(this.weightedMovingAverage.value * ((100 as uint128) - alpha)) / (100 as uint128) +\\n (apr * alpha) / (100 as uint128) overflowed 128 bits", - "pc": [ - 4384 - ] - }, - { - "teal": 4263, - "source": 1013, - "pc": [ - 4385, - 4386 - ] - }, - { - "teal": 4264, - "source": 1013, - "pc": [ - 4387 - ] - }, - { - "teal": 4265, - "source": 1013, - "pc": [ - 4388 - ] - }, - { - "teal": 4266, - "source": 1013, - "pc": [ - 4389 - ] - }, - { - "teal": 4267, - "source": 1013, - "pc": [ - 4390 - ] - }, - { - "teal": 4268, - "source": 1013, - "pc": [ - 4391, - 4392 - ] - }, - { - "teal": 4269, - "source": 1013, - "pc": [ - 4393 - ] - }, - { - "teal": 4270, - "source": 1013, - "pc": [ - 4394 - ] - }, - { - "teal": 4271, - "source": 1013, - "pc": [ - 4395 - ] - }, - { - "teal": 4272, - "source": 1012, - "pc": [ - 4396 - ] - }, - { - "teal": 4277, - "source": 1018, - "pc": [ - 4397, - 4398, - 4399 - ] - }, - { - "teal": 4281, - "source": 1019, - "pc": [ - 4400, - 4401 - ] - }, - { - "teal": 4282, - "source": 1019, - "pc": [ - 4402, - 4403 - ] - }, - { - "teal": 4283, - "source": 1019, - "pc": [ - 4404 - ] - }, - { - "teal": 4284, - "source": 1019, - "pc": [ - 4405 - ] - }, - { - "teal": 4285, - "source": 1019, - "pc": [ - 4406, - 4407 - ] - }, - { - "teal": 4286, - "source": 1019, - "pc": [ - 4408 - ] - }, - { - "teal": 4287, - "source": 1019, - "pc": [ - 4409 - ] - }, - { - "teal": 4288, - "source": 1019, - "pc": [ - 4410 - ] - }, - { - "teal": 4289, - "source": 1019, - "pc": [ - 4411 - ] - }, - { - "teal": 4290, - "source": 1019, - "pc": [ - 4412 - ] - }, - { - "teal": 4291, - "source": 1019, - "pc": [ - 4413, - 4414 - ] - }, - { - "teal": 4292, - "source": 1019, - "pc": [ - 4415 - ] - }, - { - "teal": 4295, - "source": 1019, - "errorMessage": "(this.totalAlgoStaked.value as uint128) * (this.roundsPerDay.value as uint128) overflowed 128 bits", - "pc": [ - 4416 - ] - }, - { - "teal": 4296, - "source": 1019, - "pc": [ - 4417, - 4418 - ] - }, - { - "teal": 4297, - "source": 1019, - "pc": [ - 4419 - ] - }, - { - "teal": 4298, - "source": 1019, - "pc": [ - 4420 - ] - }, - { - "teal": 4299, - "source": 1019, - "pc": [ - 4421 - ] - }, - { - "teal": 4300, - "source": 1019, - "pc": [ - 4422 - ] - }, - { - "teal": 4301, - "source": 1019, - "pc": [ - 4423, - 4424 - ] - }, - { - "teal": 4302, - "source": 1019, - "pc": [ - 4425 - ] - }, - { - "teal": 4303, - "source": 1019, - "pc": [ - 4426 - ] - }, - { - "teal": 4304, - "source": 1019, - "pc": [ - 4427 - ] - }, - { - "teal": 4305, - "source": 1019, - "pc": [ - 4428 - ] - }, - { - "teal": 4309, - "source": 1020, - "pc": [ - 4429, - 4430 - ] - }, - { - "teal": 4310, - "source": 1020, - "pc": [ - 4431 - ] - }, - { - "teal": 4311, - "source": 1020, - "pc": [ - 4432 - ] - }, - { - "teal": 4315, - "source": 1021, - "pc": [ - 4433, - 4434 - ] - }, - { - "teal": 4316, - "source": 1021, - "pc": [ - 4435, - 4436 - ] - }, - { - "teal": 4317, - "source": 1021, - "pc": [ - 4437, - 4438 - ] - }, - { - "teal": 4318, - "source": 1021, - "pc": [ - 4439, - 4440 - ] - }, - { - "teal": 4319, - "source": 1021, - "pc": [ - 4441 - ] - }, - { - "teal": 4320, - "source": 1021, - "pc": [ - 4442 - ] - }, - { - "teal": 4321, - "source": 1021, - "pc": [ - 4443 - ] - }, - { - "teal": 4322, - "source": 1021, - "pc": [ - 4444 - ] - }, - { - "teal": 4325, - "source": 991, - "pc": [ - 4445 - ] - }, - { - "teal": 4329, - "source": 1025, - "pc": [ - 4446, - 4447, - 4448 - ] - }, - { - "teal": 4333, - "source": 1026, - "pc": [ - 4449, - 4450 - ] - }, - { - "teal": 4334, - "source": 1026, - "pc": [ - 4451, - 4452, - 4453, - 4454 - ] - }, - { - "teal": 4335, - "source": 1026, - "pc": [ - 4455 - ] - }, - { - "teal": 4336, - "source": 1025, - "pc": [ - 4456 - ] - }, - { - "teal": 4339, - "source": 38, - "pc": [ - 4457, - 4458, - 4459, - 4460, - 4461, - 4462 - ] - }, - { - "teal": 4340, - "source": 38, - "pc": [ - 4463, - 4464, - 4465 - ] - }, - { - "teal": 4341, - "source": 38, - "pc": [ - 4466, - 4467, - 4468, - 4469 - ] - }, - { - "teal": 4344, - "source": 38, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 4470 - ] - }, - { - "teal": 4347, - "source": 38, - "pc": [ - 4471, - 4472, - 4473, - 4474, - 4475, - 4476 - ] - }, - { - "teal": 4348, - "source": 38, - "pc": [ - 4477, - 4478, - 4479, - 4480, - 4481, - 4482 - ] - }, - { - "teal": 4349, - "source": 38, - "pc": [ - 4483, - 4484, - 4485, - 4486, - 4487, - 4488 - ] - }, - { - "teal": 4350, - "source": 38, - "pc": [ - 4489, - 4490, - 4491, - 4492, - 4493, - 4494 - ] - }, - { - "teal": 4351, - "source": 38, - "pc": [ - 4495, - 4496, - 4497, - 4498, - 4499, - 4500 - ] - }, - { - "teal": 4352, - "source": 38, - "pc": [ - 4501, - 4502, - 4503, - 4504, - 4505, - 4506 - ] - }, - { - "teal": 4353, - "source": 38, - "pc": [ - 4507, - 4508, - 4509, - 4510, - 4511, - 4512 - ] - }, - { - "teal": 4354, - "source": 38, - "pc": [ - 4513, - 4514, - 4515, - 4516, - 4517, - 4518 - ] - }, - { - "teal": 4355, - "source": 38, - "pc": [ - 4519, - 4520, - 4521, - 4522, - 4523, - 4524 - ] - }, - { - "teal": 4356, - "source": 38, - "pc": [ - 4525, - 4526, - 4527, - 4528, - 4529, - 4530 - ] - }, - { - "teal": 4357, - "source": 38, - "pc": [ - 4531, - 4532, - 4533, - 4534, - 4535, - 4536 - ] - }, - { - "teal": 4358, - "source": 38, - "pc": [ - 4537, - 4538, - 4539, - 4540, - 4541, - 4542 - ] - }, - { - "teal": 4359, - "source": 38, - "pc": [ - 4543, - 4544 - ] - }, - { - "teal": 4360, - "source": 38, - "pc": [ - 4545, - 4546, - 4547 - ] - }, - { - "teal": 4361, - "source": 38, - "pc": [ - 4548, - 4549, - 4550, - 4551, - 4552, - 4553, - 4554, - 4555, - 4556, - 4557, - 4558, - 4559, - 4560, - 4561, - 4562, - 4563, - 4564, - 4565, - 4566, - 4567, - 4568, - 4569, - 4570, - 4571, - 4572, - 4573, - 4574, - 4575 - ] - }, - { - "teal": 4364, - "source": 38, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 4576 - ] - }, - { - "teal": 4367, - "source": 38, - "pc": [ - 4577, - 4578, - 4579, - 4580, - 4581, - 4582 - ] - }, - { - "teal": 4368, - "source": 38, - "pc": [ - 4583, - 4584, - 4585 - ] - }, - { - "teal": 4369, - "source": 38, - "pc": [ - 4586, - 4587, - 4588, - 4589 - ] - }, - { - "teal": 4372, - "source": 38, - "errorMessage": "this contract does not implement the given ABI method for call UpdateApplication", - "pc": [ - 4590 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 38, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293 + ] + }, + { + "teal": 9, + "source": 38, + "pc": [ + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327 + ] + }, + { + "teal": 10, + "source": 38, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 11, + "source": 38, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 12, + "source": 38, + "pc": [ + 332 + ] + }, + { + "teal": 13, + "source": 38, + "pc": [ + 333, + 334 + ] + }, + { + "teal": 20, + "source": 38, + "pc": [ + 335, + 336 + ] + }, + { + "teal": 21, + "source": 38, + "pc": [ + 337 + ] + }, + { + "teal": 22, + "source": 38, + "pc": [ + 338 + ] + }, + { + "teal": 23, + "source": 38, + "pc": [ + 339 + ] + }, + { + "teal": 24, + "source": 38, + "pc": [ + 340, + 341 + ] + }, + { + "teal": 25, + "source": 38, + "pc": [ + 342 + ] + }, + { + "teal": 26, + "source": 38, + "pc": [ + 343, + 344, + 345, + 346, + 347, + 348, + 349, + 350, + 351, + 352, + 353, + 354, + 355, + 356, + 357, + 358, + 359, + 360, + 361, + 362, + 363, + 364, + 365, + 366, + 367, + 368 + ] + }, + { + "teal": 30, + "source": 38, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 369 + ] + }, + { + "teal": 35, + "source": 93, + "pc": [ + 370, + 371, + 372 + ] + }, + { + "teal": 36, + "source": 93, + "pc": [ + 373 + ] + }, + { + "teal": 37, + "source": 93, + "pc": [ + 374 + ] + }, + { + "teal": 41, + "source": 93, + "pc": [ + 375, + 376, + 377 + ] + }, + { + "teal": 48, + "source": 95, + "pc": [ + 378, + 379 + ] + }, + { + "teal": 49, + "source": 95, + "pc": [ + 380, + 381, + 382, + 383, + 384, + 385, + 386, + 387, + 388, + 389, + 390, + 391, + 392, + 393, + 394, + 395, + 396, + 397, + 398, + 399, + 400, + 401, + 402, + 403, + 404, + 405, + 406, + 407, + 408, + 409, + 410, + 411, + 412, + 413 + ] + }, + { + "teal": 50, + "source": 95, + "pc": [ + 414 + ] + }, + { + "teal": 53, + "source": 94, + "errorMessage": "Temporary: contract is upgradeable but only during testing and only from a development account", + "pc": [ + 415 + ] + }, + { + "teal": 54, + "source": 93, + "pc": [ + 416 + ] + }, + { + "teal": 59, + "source": 107, + "pc": [ + 417, + 418, + 419 + ] + }, + { + "teal": 60, + "source": 107, + "pc": [ + 420 + ] + }, + { + "teal": 63, + "source": 107, + "pc": [ + 421, + 422, + 423 + ] + }, + { + "teal": 64, + "source": 107, + "pc": [ + 424 + ] + }, + { + "teal": 67, + "source": 107, + "pc": [ + 425, + 426, + 427 + ] + }, + { + "teal": 68, + "source": 107, + "pc": [ + 428 + ] + }, + { + "teal": 71, + "source": 107, + "pc": [ + 429, + 430, + 431 + ] + }, + { + "teal": 72, + "source": 107, + "pc": [ + 432 + ] + }, + { + "teal": 75, + "source": 107, + "pc": [ + 433, + 434, + 435 + ] + }, + { + "teal": 76, + "source": 107, + "pc": [ + 436 + ] + }, + { + "teal": 77, + "source": 107, + "pc": [ + 437 + ] + }, + { + "teal": 87, + "source": 107, + "pc": [ + 438, + 439, + 440 + ] + }, + { + "teal": 92, + "source": 108, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 93, + "source": 108, + "pc": [ + 443 + ] + }, + { + "teal": 94, + "source": 108, + "pc": [ + 444 + ] + }, + { + "teal": 95, + "source": 108, + "pc": [ + 445, + 446, + 447 + ] + }, + { + "teal": 100, + "source": 110, + "pc": [ + 448, + 449 + ] + }, + { + "teal": 101, + "source": 110, + "pc": [ + 450 + ] + }, + { + "teal": 102, + "source": 110, + "pc": [ + 451 + ] + }, + { + "teal": 103, + "source": 110, + "pc": [ + 452 + ] + }, + { + "teal": 107, + "source": 111, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 108, + "source": 111, + "pc": [ + 455 + ] + }, + { + "teal": 109, + "source": 111, + "pc": [ + 456 + ] + }, + { + "teal": 110, + "source": 111, + "pc": [ + 457 + ] + }, + { + "teal": 111, + "source": 108, + "pc": [ + 458, + 459, + 460 + ] + }, + { + "teal": 116, + "source": 113, + "pc": [ + 461, + 462 + ] + }, + { + "teal": 117, + "source": 113, + "pc": [ + 463 + ] + }, + { + "teal": 118, + "source": 113, + "pc": [ + 464 + ] + }, + { + "teal": 119, + "source": 113, + "pc": [ + 465 + ] + }, + { + "teal": 123, + "source": 114, + "pc": [ + 466, + 467 + ] + }, + { + "teal": 124, + "source": 114, + "pc": [ + 468 + ] + }, + { + "teal": 125, + "source": 114, + "pc": [ + 469 + ] + }, + { + "teal": 126, + "source": 114, + "pc": [ + 470 + ] + }, + { + "teal": 131, + "source": 116, + "pc": [ + 471, + 472 + ] + }, + { + "teal": 132, + "source": 116, + "pc": [ + 473, + 474 + ] + }, + { + "teal": 133, + "source": 116, + "pc": [ + 475 + ] + }, + { + "teal": 136, + "source": 116, + "errorMessage": "staking pool must have minimum entry of 1 algo", + "pc": [ + 476 + ] + }, + { + "teal": 140, + "source": 117, + "pc": [ + 477 + ] + }, + { + "teal": 141, + "source": 117, + "pc": [ + 478, + 479 + ] + }, + { + "teal": 142, + "source": 117, + "pc": [ + 480 + ] + }, + { + "teal": 146, + "source": 118, + "pc": [ + 481 + ] + }, + { + "teal": 147, + "source": 118, + "pc": [ + 482, + 483 + ] + }, + { + "teal": 148, + "source": 118, + "pc": [ + 484 + ] + }, + { + "teal": 152, + "source": 119, + "pc": [ + 485 + ] + }, + { + "teal": 153, + "source": 119, + "pc": [ + 486, + 487 + ] + }, + { + "teal": 154, + "source": 119, + "pc": [ + 488 + ] + }, + { + "teal": 158, + "source": 120, + "pc": [ + 489, + 490 + ] + }, + { + "teal": 159, + "source": 120, + "pc": [ + 491 + ] + }, + { + "teal": 160, + "source": 120, + "pc": [ + 492 + ] + }, + { + "teal": 164, + "source": 121, + "pc": [ + 493, + 494 + ] + }, + { + "teal": 165, + "source": 121, + "pc": [ + 495 + ] + }, + { + "teal": 166, + "source": 121, + "pc": [ + 496 + ] + }, + { + "teal": 170, + "source": 122, + "pc": [ + 497, + 498 + ] + }, + { + "teal": 171, + "source": 122, + "pc": [ + 499, + 500 + ] + }, + { + "teal": 172, + "source": 122, + "pc": [ + 501 + ] + }, + { + "teal": 176, + "source": 123, + "pc": [ + 502, + 503 + ] + }, + { + "teal": 177, + "source": 123, + "pc": [ + 504, + 505 + ] + }, + { + "teal": 178, + "source": 123, + "pc": [ + 506 + ] + }, + { + "teal": 182, + "source": 124, + "pc": [ + 507, + 508 + ] + }, + { + "teal": 183, + "source": 124, + "pc": [ + 509 + ] + }, + { + "teal": 184, + "source": 124, + "pc": [ + 510 + ] + }, + { + "teal": 188, + "source": 126, + "pc": [ + 511, + 512, + 513 + ] + }, + { + "teal": 192, + "source": 127, + "pc": [ + 514, + 515 + ] + }, + { + "teal": 193, + "source": 127, + "pc": [ + 516, + 517 + ] + }, + { + "teal": 194, + "source": 127, + "pc": [ + 518, + 519 + ] + }, + { + "teal": 195, + "source": 127, + "pc": [ + 520, + 521 + ] + }, + { + "teal": 196, + "source": 127, + "pc": [ + 522 + ] + }, + { + "teal": 197, + "source": 127, + "pc": [ + 523 + ] + }, + { + "teal": 198, + "source": 127, + "pc": [ + 524 + ] + }, + { + "teal": 199, + "source": 127, + "pc": [ + 525 + ] + }, + { + "teal": 203, + "source": 128, + "pc": [ + 526, + 527 + ] + }, + { + "teal": 204, + "source": 128, + "pc": [ + 528, + 529 + ] + }, + { + "teal": 205, + "source": 128, + "pc": [ + 530 + ] + }, + { + "teal": 209, + "source": 129, + "pc": [ + 531, + 532 + ] + }, + { + "teal": 210, + "source": 129, + "pc": [ + 533 + ] + }, + { + "teal": 211, + "source": 129, + "pc": [ + 534 + ] + }, + { + "teal": 215, + "source": 130, + "pc": [ + 535, + 536 + ] + }, + { + "teal": 216, + "source": 130, + "pc": [ + 537, + 538 + ] + }, + { + "teal": 217, + "source": 130, + "pc": [ + 539 + ] + }, + { + "teal": 218, + "source": 107, + "pc": [ + 540 + ] + }, + { + "teal": 223, + "source": 136, + "pc": [ + 541, + 542, + 543 + ] + }, + { + "teal": 224, + "source": 136, + "pc": [ + 544 + ] + }, + { + "teal": 225, + "source": 136, + "pc": [ + 545 + ] + }, + { + "teal": 231, + "source": 136, + "pc": [ + 546, + 547, + 548 + ] + }, + { + "teal": 232, + "source": 136, + "pc": [ + 549 + ] + }, + { + "teal": 236, + "source": 138, + "pc": [ + 550, + 551, + 552 + ] + }, + { + "teal": 240, + "source": 142, + "pc": [ + 553, + 554, + 555 + ] + }, + { + "teal": 241, + "source": 142, + "pc": [ + 556, + 557 + ] + }, + { + "teal": 242, + "source": 142, + "pc": [ + 558, + 559 + ] + }, + { + "teal": 243, + "source": 142, + "pc": [ + 560 + ] + }, + { + "teal": 244, + "source": 142, + "pc": [ + 561 + ] + }, + { + "teal": 245, + "source": 138, + "pc": [ + 562 + ] + }, + { + "teal": 250, + "source": 152, + "pc": [ + 563, + 564 + ] + }, + { + "teal": 251, + "source": 152, + "pc": [ + 565 + ] + }, + { + "teal": 252, + "source": 152, + "pc": [ + 566 + ] + }, + { + "teal": 253, + "source": 152, + "pc": [ + 567 + ] + }, + { + "teal": 254, + "source": 152, + "pc": [ + 568, + 569 + ] + }, + { + "teal": 255, + "source": 152, + "pc": [ + 570 + ] + }, + { + "teal": 256, + "source": 152, + "pc": [ + 571 + ] + }, + { + "teal": 259, + "source": 152, + "errorMessage": "argument 0 (mbrPayment) for initStorage must be a pay transaction", + "pc": [ + 572 + ] + }, + { + "teal": 262, + "source": 152, + "pc": [ + 573, + 574, + 575 + ] + }, + { + "teal": 263, + "source": 152, + "pc": [ + 576 + ] + }, + { + "teal": 264, + "source": 152, + "pc": [ + 577 + ] + }, + { + "teal": 274, + "source": 152, + "pc": [ + 578, + 579, + 580 + ] + }, + { + "teal": 277, + "source": 152, + "pc": [ + 581, + 582 + ] + }, + { + "teal": 278, + "source": 152, + "pc": [ + 583, + 584 + ] + }, + { + "teal": 282, + "source": 153, + "pc": [ + 585 + ] + }, + { + "teal": 283, + "source": 153, + "pc": [ + 586 + ] + }, + { + "teal": 284, + "source": 153, + "pc": [ + 587 + ] + }, + { + "teal": 285, + "source": 153, + "pc": [ + 588 + ] + }, + { + "teal": 286, + "source": 153, + "pc": [ + 589 + ] + }, + { + "teal": 289, + "source": 153, + "errorMessage": "staking pool already initialized", + "pc": [ + 590 + ] + }, + { + "teal": 296, + "source": 156, + "pc": [ + 591 + ] + }, + { + "teal": 297, + "source": 156, + "pc": [ + 592 + ] + }, + { + "teal": 298, + "source": 156, + "pc": [ + 593, + 594 + ] + }, + { + "teal": 299, + "source": 156, + "pc": [ + 595, + 596 + ] + }, + { + "teal": 300, + "source": 156, + "pc": [ + 597, + 598 + ] + }, + { + "teal": 304, + "source": 157, + "pc": [ + 599 + ] + }, + { + "teal": 305, + "source": 157, + "pc": [ + 600 + ] + }, + { + "teal": 306, + "source": 157, + "pc": [ + 601, + 602 + ] + }, + { + "teal": 310, + "source": 158, + "pc": [ + 603 + ] + }, + { + "teal": 311, + "source": 158, + "pc": [ + 604 + ] + }, + { + "teal": 312, + "source": 158, + "pc": [ + 605 + ] + }, + { + "teal": 313, + "source": 158, + "pc": [ + 606, + 607 + ] + }, + { + "teal": 316, + "source": 156, + "pc": [ + 608 + ] + }, + { + "teal": 317, + "source": 156, + "pc": [ + 609, + 610 + ] + }, + { + "teal": 320, + "source": 156, + "pc": [ + 611 + ] + }, + { + "teal": 321, + "source": 156, + "pc": [ + 612, + 613 + ] + }, + { + "teal": 322, + "source": 156, + "pc": [ + 614 + ] + }, + { + "teal": 323, + "source": 156, + "pc": [ + 615 + ] + }, + { + "teal": 324, + "source": 156, + "pc": [ + 616, + 617 + ] + }, + { + "teal": 325, + "source": 156, + "pc": [ + 618, + 619, + 620 + ] + }, + { + "teal": 326, + "source": 156, + "pc": [ + 621, + 622 + ] + }, + { + "teal": 330, + "source": 160, + "pc": [ + 623, + 624 + ] + }, + { + "teal": 331, + "source": 160, + "pc": [ + 625, + 626, + 627 + ] + }, + { + "teal": 332, + "source": 160, + "pc": [ + 628 + ] + }, + { + "teal": 333, + "source": 160, + "pc": [ + 629 + ] + }, + { + "teal": 334, + "source": 160, + "pc": [ + 630 + ] + }, + { + "teal": 335, + "source": 160, + "pc": [ + 631, + 632 + ] + }, + { + "teal": 339, + "source": 161, + "pc": [ + 633, + 634 + ] + }, + { + "teal": 340, + "source": 161, + "pc": [ + 635 + ] + }, + { + "teal": 341, + "source": 161, + "pc": [ + 636, + 637, + 638 + ] + }, + { + "teal": 342, + "source": 161, + "pc": [ + 639 + ] + }, + { + "teal": 343, + "source": 161, + "pc": [ + 640 + ] + }, + { + "teal": 344, + "source": 161, + "pc": [ + 641 + ] + }, + { + "teal": 345, + "source": 161, + "pc": [ + 642 + ] + }, + { + "teal": 346, + "source": 161, + "pc": [ + 643 + ] + }, + { + "teal": 349, + "source": 161, + "pc": [ + 644, + 645, + 646 + ] + }, + { + "teal": 350, + "source": 161, + "pc": [ + 647, + 648 + ] + }, + { + "teal": 351, + "source": 161, + "pc": [ + 649, + 650, + 651 + ] + }, + { + "teal": 354, + "source": 161, + "pc": [ + 652 + ] + }, + { + "teal": 357, + "source": 161, + "pc": [ + 653, + 654 + ] + }, + { + "teal": 364, + "source": 163, + "pc": [ + 655, + 656 + ] + }, + { + "teal": 365, + "source": 164, + "pc": [ + 657, + 658 + ] + }, + { + "teal": 366, + "source": 163, + "pc": [ + 659 + ] + }, + { + "teal": 367, + "source": 165, + "pc": [ + 660, + 661, + 662 + ] + }, + { + "teal": 368, + "source": 165, + "pc": [ + 663, + 664, + 665 + ] + }, + { + "teal": 369, + "source": 164, + "pc": [ + 666 + ] + }, + { + "teal": 370, + "source": 162, + "pc": [ + 667, + 668 + ] + }, + { + "teal": 375, + "source": 168, + "pc": [ + 669, + 670 + ] + }, + { + "teal": 376, + "source": 168, + "pc": [ + 671, + 672 + ] + }, + { + "teal": 377, + "source": 168, + "pc": [ + 673, + 674 + ] + }, + { + "teal": 378, + "source": 168, + "pc": [ + 675 + ] + }, + { + "teal": 381, + "source": 168, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 676 + ] + }, + { + "teal": 384, + "source": 168, + "pc": [ + 677, + 678 + ] + }, + { + "teal": 385, + "source": 168, + "pc": [ + 679, + 680 + ] + }, + { + "teal": 386, + "source": 168, + "pc": [ + 681, + 682 + ] + }, + { + "teal": 387, + "source": 168, + "pc": [ + 683 + ] + }, + { + "teal": 390, + "source": 168, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"PoolInitMbr\"}", + "pc": [ + 684 + ] + }, + { + "teal": 394, + "source": 169, + "pc": [ + 685 + ] + }, + { + "teal": 395, + "source": 169, + "pc": [ + 686, + 687, + 688 + ] + }, + { + "teal": 396, + "source": 169, + "pc": [ + 689 + ] + }, + { + "teal": 397, + "source": 169, + "pc": [ + 690 + ] + }, + { + "teal": 402, + "source": 171, + "pc": [ + 691, + 692 + ] + }, + { + "teal": 403, + "source": 171, + "pc": [ + 693 + ] + }, + { + "teal": 404, + "source": 171, + "pc": [ + 694, + 695, + 696 + ] + }, + { + "teal": 405, + "source": 171, + "pc": [ + 697 + ] + }, + { + "teal": 406, + "source": 171, + "pc": [ + 698 + ] + }, + { + "teal": 407, + "source": 171, + "pc": [ + 699 + ] + }, + { + "teal": 408, + "source": 171, + "pc": [ + 700 + ] + }, + { + "teal": 409, + "source": 171, + "pc": [ + 701 + ] + }, + { + "teal": 412, + "source": 171, + "pc": [ + 702, + 703, + 704 + ] + }, + { + "teal": 421, + "source": 173, + "pc": [ + 705 + ] + }, + { + "teal": 422, + "source": 173, + "pc": [ + 706, + 707 + ] + }, + { + "teal": 423, + "source": 173, + "pc": [ + 708, + 709 + ] + }, + { + "teal": 427, + "source": 174, + "pc": [ + 710, + 711 + ] + }, + { + "teal": 428, + "source": 174, + "pc": [ + 712, + 713, + 714 + ] + }, + { + "teal": 429, + "source": 174, + "pc": [ + 715 + ] + }, + { + "teal": 430, + "source": 174, + "pc": [ + 716, + 717 + ] + }, + { + "teal": 434, + "source": 175, + "pc": [ + 718, + 719 + ] + }, + { + "teal": 435, + "source": 175, + "pc": [ + 720, + 721 + ] + }, + { + "teal": 439, + "source": 176, + "pc": [ + 722 + ] + }, + { + "teal": 440, + "source": 176, + "pc": [ + 723, + 724 + ] + }, + { + "teal": 443, + "source": 173, + "pc": [ + 725 + ] + }, + { + "teal": 444, + "source": 173, + "pc": [ + 726, + 727 + ] + }, + { + "teal": 447, + "source": 173, + "pc": [ + 728 + ] + }, + { + "teal": 450, + "source": 152, + "pc": [ + 729 + ] + }, + { + "teal": 455, + "source": 191, + "pc": [ + 730, + 731 + ] + }, + { + "teal": 458, + "source": 191, + "pc": [ + 732, + 733, + 734 + ] + }, + { + "teal": 459, + "source": 191, + "pc": [ + 735 + ] + }, + { + "teal": 460, + "source": 191, + "pc": [ + 736 + ] + }, + { + "teal": 461, + "source": 191, + "pc": [ + 737, + 738 + ] + }, + { + "teal": 462, + "source": 191, + "pc": [ + 739 + ] + }, + { + "teal": 465, + "source": 191, + "errorMessage": "argument 0 (staker) for addStake must be a address", + "pc": [ + 740 + ] + }, + { + "teal": 468, + "source": 191, + "pc": [ + 741, + 742 + ] + }, + { + "teal": 469, + "source": 191, + "pc": [ + 743 + ] + }, + { + "teal": 470, + "source": 191, + "pc": [ + 744 + ] + }, + { + "teal": 471, + "source": 191, + "pc": [ + 745 + ] + }, + { + "teal": 472, + "source": 191, + "pc": [ + 746, + 747 + ] + }, + { + "teal": 473, + "source": 191, + "pc": [ + 748 + ] + }, + { + "teal": 474, + "source": 191, + "pc": [ + 749 + ] + }, + { + "teal": 477, + "source": 191, + "errorMessage": "argument 1 (stakedAmountPayment) for addStake must be a pay transaction", + "pc": [ + 750 + ] + }, + { + "teal": 480, + "source": 191, + "pc": [ + 751, + 752, + 753 + ] + }, + { + "teal": 481, + "source": 191, + "pc": [ + 754 + ] + }, + { + "teal": 482, + "source": 191, + "pc": [ + 755 + ] + }, + { + "teal": 483, + "source": 191, + "pc": [ + 756 + ] + }, + { + "teal": 484, + "source": 191, + "pc": [ + 757 + ] + }, + { + "teal": 485, + "source": 191, + "pc": [ + 758 + ] + }, + { + "teal": 498, + "source": 191, + "pc": [ + 759, + 760, + 761 + ] + }, + { + "teal": 501, + "source": 191, + "pc": [ + 762, + 763 + ] + }, + { + "teal": 502, + "source": 191, + "pc": [ + 764, + 765 + ] + }, + { + "teal": 506, + "source": 192, + "pc": [ + 766 + ] + }, + { + "teal": 507, + "source": 192, + "pc": [ + 767 + ] + }, + { + "teal": 508, + "source": 192, + "pc": [ + 768 + ] + }, + { + "teal": 509, + "source": 192, + "pc": [ + 769 + ] + }, + { + "teal": 512, + "source": 192, + "errorMessage": "staking pool must be initialized first", + "pc": [ + 770 + ] + }, + { + "teal": 519, + "source": 196, + "pc": [ + 771, + 772 + ] + }, + { + "teal": 520, + "source": 196, + "pc": [ + 773 + ] + }, + { + "teal": 521, + "source": 196, + "pc": [ + 774 + ] + }, + { + "teal": 522, + "source": 196, + "pc": [ + 775, + 776 + ] + }, + { + "teal": 523, + "source": 196, + "pc": [ + 777 + ] + }, + { + "teal": 524, + "source": 196, + "pc": [ + 778 + ] + }, + { + "teal": 527, + "source": 195, + "errorMessage": "stake can only be added via the validator contract", + "pc": [ + 779 + ] + }, + { + "teal": 531, + "source": 199, + "pc": [ + 780, + 781 + ] + }, + { + "teal": 532, + "source": 199, + "pc": [ + 782, + 783 + ] + }, + { + "teal": 533, + "source": 199, + "pc": [ + 784 + ] + }, + { + "teal": 534, + "source": 199, + "pc": [ + 785 + ] + }, + { + "teal": 538, + "source": 202, + "pc": [ + 786, + 787, + 788 + ] + }, + { + "teal": 547, + "source": 206, + "pc": [ + 789, + 790 + ] + }, + { + "teal": 548, + "source": 207, + "pc": [ + 791, + 792 + ] + }, + { + "teal": 549, + "source": 207, + "pc": [ + 793 + ] + }, + { + "teal": 550, + "source": 207, + "pc": [ + 794 + ] + }, + { + "teal": 551, + "source": 207, + "pc": [ + 795, + 796 + ] + }, + { + "teal": 552, + "source": 207, + "pc": [ + 797 + ] + }, + { + "teal": 553, + "source": 207, + "pc": [ + 798 + ] + }, + { + "teal": 556, + "source": 207, + "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"sender\",\"expected\":\"AppID.fromUint64(this.creatingValidatorContractAppId.value).address\"}", + "pc": [ + 799 + ] + }, + { + "teal": 559, + "source": 206, + "pc": [ + 800, + 801 + ] + }, + { + "teal": 560, + "source": 208, + "pc": [ + 802, + 803 + ] + }, + { + "teal": 561, + "source": 208, + "pc": [ + 804, + 805 + ] + }, + { + "teal": 562, + "source": 208, + "pc": [ + 806 + ] + }, + { + "teal": 565, + "source": 208, + "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 807 + ] + }, + { + "teal": 568, + "source": 206, + "pc": [ + 808, + 809 + ] + }, + { + "teal": 569, + "source": 209, + "pc": [ + 810, + 811 + ] + }, + { + "teal": 570, + "source": 209, + "pc": [ + 812, + 813 + ] + }, + { + "teal": 571, + "source": 209, + "pc": [ + 814, + 815 + ] + }, + { + "teal": 572, + "source": 209, + "pc": [ + 816 + ] + }, + { + "teal": 575, + "source": 209, + "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"amount\",\"expected\":\"stakedAmountPayment.amount\"}", + "pc": [ + 817 + ] + }, + { + "teal": 579, + "source": 215, + "pc": [ + 818, + 819 + ] + }, + { + "teal": 580, + "source": 215, + "pc": [ + 820, + 821, + 822 + ] + }, + { + "teal": 581, + "source": 215, + "pc": [ + 823 + ] + }, + { + "teal": 582, + "source": 215, + "pc": [ + 824, + 825 + ] + }, + { + "teal": 586, + "source": 216, + "pc": [ + 826 + ] + }, + { + "teal": 587, + "source": 216, + "pc": [ + 827, + 828 + ] + }, + { + "teal": 591, + "source": 218, + "pc": [ + 829, + 830 + ] + }, + { + "teal": 592, + "source": 218, + "pc": [ + 831 + ] + }, + { + "teal": 593, + "source": 218, + "pc": [ + 832, + 833 + ] + }, + { + "teal": 594, + "source": 218, + "pc": [ + 834, + 835 + ] + }, + { + "teal": 595, + "source": 218, + "pc": [ + 836 + ] + }, + { + "teal": 596, + "source": 218, + "pc": [ + 837, + 838 + ] + }, + { + "teal": 597, + "source": 218, + "pc": [ + 839 + ] + }, + { + "teal": 598, + "source": 218, + "pc": [ + 840 + ] + }, + { + "teal": 602, + "source": 220, + "pc": [ + 841, + 842 + ] + }, + { + "teal": 603, + "source": 220, + "pc": [ + 843 + ] + }, + { + "teal": 604, + "source": 220, + "pc": [ + 844, + 845 + ] + }, + { + "teal": 605, + "source": 220, + "pc": [ + 846 + ] + }, + { + "teal": 606, + "source": 220, + "pc": [ + 847 + ] + }, + { + "teal": 607, + "source": 220, + "pc": [ + 848, + 849 + ] + }, + { + "teal": 608, + "source": 220, + "pc": [ + 850 + ] + }, + { + "teal": 609, + "source": 220, + "pc": [ + 851, + 852 + ] + }, + { + "teal": 614, + "source": 221, + "pc": [ + 853, + 854 + ] + }, + { + "teal": 615, + "source": 221, + "pc": [ + 855 + ] + }, + { + "teal": 616, + "source": 222, + "pc": [ + 856 + ] + }, + { + "teal": 617, + "source": 222, + "pc": [ + 857, + 858 + ] + }, + { + "teal": 618, + "source": 222, + "pc": [ + 859, + 860 + ] + }, + { + "teal": 619, + "source": 222, + "pc": [ + 861 + ] + }, + { + "teal": 620, + "source": 222, + "pc": [ + 862, + 863 + ] + }, + { + "teal": 621, + "source": 222, + "pc": [ + 864 + ] + }, + { + "teal": 622, + "source": 222, + "pc": [ + 865 + ] + }, + { + "teal": 623, + "source": 222, + "pc": [ + 866 + ] + }, + { + "teal": 624, + "source": 222, + "pc": [ + 867 + ] + }, + { + "teal": 625, + "source": 222, + "pc": [ + 868 + ] + }, + { + "teal": 626, + "source": 222, + "pc": [ + 869, + 870 + ] + }, + { + "teal": 627, + "source": 222, + "pc": [ + 871 + ] + }, + { + "teal": 630, + "source": 222, + "errorMessage": "this.stakeAccumulator.value + (stakedAmountPayment.amount as uint128) * (roundsLeftInBin as uint128) overflowed 128 bits", + "pc": [ + 872 + ] + }, + { + "teal": 631, + "source": 222, + "pc": [ + 873, + 874 + ] + }, + { + "teal": 632, + "source": 222, + "pc": [ + 875 + ] + }, + { + "teal": 633, + "source": 222, + "pc": [ + 876 + ] + }, + { + "teal": 634, + "source": 222, + "pc": [ + 877 + ] + }, + { + "teal": 635, + "source": 222, + "pc": [ + 878 + ] + }, + { + "teal": 636, + "source": 222, + "pc": [ + 879, + 880 + ] + }, + { + "teal": 637, + "source": 222, + "pc": [ + 881 + ] + }, + { + "teal": 638, + "source": 222, + "pc": [ + 882 + ] + }, + { + "teal": 639, + "source": 222, + "pc": [ + 883 + ] + }, + { + "teal": 640, + "source": 221, + "pc": [ + 884 + ] + }, + { + "teal": 644, + "source": 225, + "pc": [ + 885 + ] + }, + { + "teal": 645, + "source": 225, + "pc": [ + 886, + 887 + ] + }, + { + "teal": 650, + "source": 225, + "pc": [ + 888, + 889 + ] + }, + { + "teal": 651, + "source": 225, + "pc": [ + 890, + 891 + ] + }, + { + "teal": 652, + "source": 225, + "pc": [ + 892 + ] + }, + { + "teal": 653, + "source": 225, + "pc": [ + 893, + 894, + 895 + ] + }, + { + "teal": 658, + "source": 226, + "pc": [ + 896, + 897 + ] + }, + { + "teal": 659, + "source": 226, + "pc": [ + 898, + 899 + ] + }, + { + "teal": 660, + "source": 226, + "pc": [ + 900 + ] + }, + { + "teal": 661, + "source": 226, + "pc": [ + 901, + 902, + 903 + ] + }, + { + "teal": 666, + "source": 227, + "pc": [ + 904 + ] + }, + { + "teal": 667, + "source": 227, + "pc": [ + 905 + ] + }, + { + "teal": 668, + "source": 227, + "pc": [ + 906, + 907 + ] + }, + { + "teal": 669, + "source": 227, + "pc": [ + 908 + ] + }, + { + "teal": 670, + "source": 227, + "pc": [ + 909, + 910 + ] + }, + { + "teal": 671, + "source": 227, + "pc": [ + 911, + 912 + ] + }, + { + "teal": 672, + "source": 227, + "pc": [ + 913 + ] + }, + { + "teal": 673, + "source": 227, + "pc": [ + 914, + 915 + ] + }, + { + "teal": 674, + "source": 227, + "pc": [ + 916, + 917 + ] + }, + { + "teal": 675, + "source": 227, + "pc": [ + 918, + 919 + ] + }, + { + "teal": 676, + "source": 227, + "pc": [ + 920, + 921 + ] + }, + { + "teal": 677, + "source": 227, + "pc": [ + 922 + ] + }, + { + "teal": 682, + "source": 229, + "pc": [ + 923, + 924 + ] + }, + { + "teal": 683, + "source": 229, + "pc": [ + 925 + ] + }, + { + "teal": 684, + "source": 229, + "pc": [ + 926 + ] + }, + { + "teal": 685, + "source": 229, + "pc": [ + 927 + ] + }, + { + "teal": 686, + "source": 229, + "pc": [ + 928 + ] + }, + { + "teal": 687, + "source": 229, + "pc": [ + 929, + 930 + ] + }, + { + "teal": 688, + "source": 229, + "pc": [ + 931 + ] + }, + { + "teal": 689, + "source": 229, + "pc": [ + 932, + 933 + ] + }, + { + "teal": 694, + "source": 230, + "pc": [ + 934, + 935 + ] + }, + { + "teal": 695, + "source": 230, + "pc": [ + 936, + 937, + 938 + ] + }, + { + "teal": 696, + "source": 230, + "pc": [ + 939, + 940 + ] + }, + { + "teal": 697, + "source": 230, + "pc": [ + 941 + ] + }, + { + "teal": 698, + "source": 230, + "pc": [ + 942, + 943, + 944 + ] + }, + { + "teal": 703, + "source": 232, + "pc": [ + 945, + 946 + ] + }, + { + "teal": 704, + "source": 232, + "pc": [ + 947, + 948 + ] + }, + { + "teal": 705, + "source": 232, + "pc": [ + 949, + 950 + ] + }, + { + "teal": 706, + "source": 232, + "pc": [ + 951, + 952, + 953 + ] + }, + { + "teal": 707, + "source": 232, + "pc": [ + 954 + ] + }, + { + "teal": 708, + "source": 232, + "pc": [ + 955, + 956 + ] + }, + { + "teal": 709, + "source": 232, + "pc": [ + 957, + 958 + ] + }, + { + "teal": 710, + "source": 232, + "pc": [ + 959 + ] + }, + { + "teal": 711, + "source": 232, + "pc": [ + 960 + ] + }, + { + "teal": 712, + "source": 232, + "pc": [ + 961 + ] + }, + { + "teal": 713, + "source": 232, + "pc": [ + 962, + 963 + ] + }, + { + "teal": 717, + "source": 233, + "pc": [ + 964, + 965 + ] + }, + { + "teal": 718, + "source": 233, + "pc": [ + 966, + 967 + ] + }, + { + "teal": 719, + "source": 233, + "pc": [ + 968, + 969 + ] + }, + { + "teal": 720, + "source": 233, + "pc": [ + 970 + ] + }, + { + "teal": 721, + "source": 233, + "pc": [ + 971 + ] + }, + { + "teal": 722, + "source": 233, + "pc": [ + 972, + 973 + ] + }, + { + "teal": 726, + "source": 236, + "pc": [ + 974, + 975 + ] + }, + { + "teal": 727, + "source": 236, + "pc": [ + 976 + ] + }, + { + "teal": 728, + "source": 236, + "pc": [ + 977 + ] + }, + { + "teal": 729, + "source": 236, + "pc": [ + 978, + 979 + ] + }, + { + "teal": 730, + "source": 236, + "pc": [ + 980 + ] + }, + { + "teal": 731, + "source": 236, + "pc": [ + 981, + 982 + ] + }, + { + "teal": 732, + "source": 236, + "pc": [ + 983 + ] + }, + { + "teal": 736, + "source": 238, + "pc": [ + 984, + 985 + ] + }, + { + "teal": 737, + "source": 238, + "pc": [ + 986, + 987, + 988 + ] + }, + { + "teal": 743, + "source": 240, + "pc": [ + 989, + 990 + ] + }, + { + "teal": 744, + "source": 240, + "pc": [ + 991 + ] + }, + { + "teal": 745, + "source": 240, + "pc": [ + 992 + ] + }, + { + "teal": 746, + "source": 240, + "pc": [ + 993 + ] + }, + { + "teal": 747, + "source": 240, + "pc": [ + 994, + 995, + 996 + ] + }, + { + "teal": 748, + "source": 240, + "pc": [ + 997, + 998 + ] + }, + { + "teal": 749, + "source": 240, + "pc": [ + 999, + 1000, + 1001 + ] + }, + { + "teal": 750, + "source": 240, + "pc": [ + 1002, + 1003 + ] + }, + { + "teal": 751, + "source": 240, + "pc": [ + 1004 + ] + }, + { + "teal": 752, + "source": 240, + "pc": [ + 1005 + ] + }, + { + "teal": 755, + "source": 240, + "pc": [ + 1006, + 1007, + 1008 + ] + }, + { + "teal": 760, + "source": 241, + "pc": [ + 1009, + 1010 + ] + }, + { + "teal": 761, + "source": 241, + "pc": [ + 1011 + ] + }, + { + "teal": 762, + "source": 241, + "pc": [ + 1012 + ] + }, + { + "teal": 763, + "source": 241, + "pc": [ + 1013, + 1014 + ] + }, + { + "teal": 770, + "source": 225, + "pc": [ + 1015, + 1016 + ] + }, + { + "teal": 771, + "source": 225, + "pc": [ + 1017 + ] + }, + { + "teal": 772, + "source": 225, + "pc": [ + 1018 + ] + }, + { + "teal": 773, + "source": 225, + "pc": [ + 1019, + 1020 + ] + }, + { + "teal": 774, + "source": 225, + "pc": [ + 1021, + 1022, + 1023 + ] + }, + { + "teal": 780, + "source": 245, + "pc": [ + 1024, + 1025 + ] + }, + { + "teal": 781, + "source": 245, + "pc": [ + 1026 + ] + }, + { + "teal": 782, + "source": 245, + "pc": [ + 1027 + ] + }, + { + "teal": 783, + "source": 245, + "pc": [ + 1028, + 1029, + 1030 + ] + }, + { + "teal": 787, + "source": 247, + "errorMessage": "Staking pool full", + "pc": [ + 1031 + ] + }, + { + "teal": 792, + "source": 252, + "pc": [ + 1032, + 1033 + ] + }, + { + "teal": 793, + "source": 252, + "pc": [ + 1034, + 1035 + ] + }, + { + "teal": 794, + "source": 252, + "pc": [ + 1036, + 1037 + ] + }, + { + "teal": 795, + "source": 252, + "pc": [ + 1038 + ] + }, + { + "teal": 796, + "source": 252, + "pc": [ + 1039 + ] + }, + { + "teal": 799, + "source": 252, + "errorMessage": "must stake at least the minimum for this pool", + "pc": [ + 1040 + ] + }, + { + "teal": 803, + "source": 254, + "pc": [ + 1041, + 1042 + ] + }, + { + "teal": 804, + "source": 254, + "pc": [ + 1043 + ] + }, + { + "teal": 805, + "source": 254, + "pc": [ + 1044 + ] + }, + { + "teal": 806, + "source": 254, + "pc": [ + 1045 + ] + }, + { + "teal": 807, + "source": 254, + "pc": [ + 1046 + ] + }, + { + "teal": 808, + "source": 254, + "pc": [ + 1047 + ] + }, + { + "teal": 809, + "source": 254, + "pc": [ + 1048 + ] + }, + { + "teal": 810, + "source": 254, + "pc": [ + 1049, + 1050 + ] + }, + { + "teal": 811, + "source": 254, + "pc": [ + 1051 + ] + }, + { + "teal": 812, + "source": 254, + "pc": [ + 1052, + 1053 + ] + }, + { + "teal": 813, + "source": 254, + "pc": [ + 1054 + ] + }, + { + "teal": 814, + "source": 254, + "pc": [ + 1055, + 1056 + ] + }, + { + "teal": 815, + "source": 254, + "pc": [ + 1057 + ] + }, + { + "teal": 816, + "source": 254, + "pc": [ + 1058 + ] + }, + { + "teal": 826, + "source": 255, + "pc": [ + 1059, + 1060 + ] + }, + { + "teal": 827, + "source": 255, + "pc": [ + 1061 + ] + }, + { + "teal": 828, + "source": 255, + "pc": [ + 1062 + ] + }, + { + "teal": 829, + "source": 255, + "pc": [ + 1063 + ] + }, + { + "teal": 830, + "source": 255, + "pc": [ + 1064 + ] + }, + { + "teal": 831, + "source": 256, + "pc": [ + 1065, + 1066 + ] + }, + { + "teal": 832, + "source": 257, + "pc": [ + 1067, + 1068 + ] + }, + { + "teal": 833, + "source": 257, + "pc": [ + 1069, + 1070 + ] + }, + { + "teal": 834, + "source": 257, + "pc": [ + 1071 + ] + }, + { + "teal": 835, + "source": 257, + "pc": [ + 1072 + ] + }, + { + "teal": 836, + "source": 258, + "pc": [ + 1073, + 1074 + ] + }, + { + "teal": 837, + "source": 258, + "pc": [ + 1075 + ] + }, + { + "teal": 838, + "source": 259, + "pc": [ + 1076, + 1077 + ] + }, + { + "teal": 839, + "source": 259, + "pc": [ + 1078 + ] + }, + { + "teal": 840, + "source": 260, + "pc": [ + 1079, + 1080 + ] + }, + { + "teal": 841, + "source": 260, + "pc": [ + 1081 + ] + }, + { + "teal": 842, + "source": 260, + "pc": [ + 1082 + ] + }, + { + "teal": 843, + "source": 255, + "pc": [ + 1083 + ] + }, + { + "teal": 844, + "source": 255, + "pc": [ + 1084, + 1085 + ] + }, + { + "teal": 845, + "source": 255, + "pc": [ + 1086 + ] + }, + { + "teal": 849, + "source": 262, + "pc": [ + 1087, + 1088 + ] + }, + { + "teal": 850, + "source": 262, + "pc": [ + 1089 + ] + }, + { + "teal": 851, + "source": 262, + "pc": [ + 1090 + ] + }, + { + "teal": 852, + "source": 262, + "pc": [ + 1091 + ] + }, + { + "teal": 853, + "source": 262, + "pc": [ + 1092, + 1093 + ] + }, + { + "teal": 854, + "source": 262, + "pc": [ + 1094 + ] + }, + { + "teal": 855, + "source": 262, + "pc": [ + 1095 + ] + }, + { + "teal": 859, + "source": 263, + "pc": [ + 1096, + 1097 + ] + }, + { + "teal": 863, + "source": 191, + "pc": [ + 1098, + 1099 + ] + }, + { + "teal": 866, + "source": 191, + "pc": [ + 1100, + 1101 + ] + }, + { + "teal": 867, + "source": 191, + "pc": [ + 1102 + ] + }, + { + "teal": 872, + "source": 277, + "pc": [ + 1103, + 1104, + 1105 + ] + }, + { + "teal": 873, + "source": 277, + "pc": [ + 1106 + ] + }, + { + "teal": 876, + "source": 277, + "pc": [ + 1107, + 1108, + 1109 + ] + }, + { + "teal": 877, + "source": 277, + "pc": [ + 1110 + ] + }, + { + "teal": 878, + "source": 277, + "pc": [ + 1111 + ] + }, + { + "teal": 879, + "source": 277, + "pc": [ + 1112, + 1113 + ] + }, + { + "teal": 880, + "source": 277, + "pc": [ + 1114 + ] + }, + { + "teal": 883, + "source": 277, + "errorMessage": "argument 1 (staker) for removeStake must be a address", + "pc": [ + 1115 + ] + }, + { + "teal": 886, + "source": 277, + "pc": [ + 1116, + 1117, + 1118 + ] + }, + { + "teal": 887, + "source": 277, + "pc": [ + 1119 + ] + }, + { + "teal": 888, + "source": 277, + "pc": [ + 1120 + ] + }, + { + "teal": 902, + "source": 277, + "pc": [ + 1121, + 1122, + 1123 + ] + }, + { + "teal": 905, + "source": 277, + "pc": [ + 1124, + 1125 + ] + }, + { + "teal": 906, + "source": 277, + "pc": [ + 1126, + 1127 + ] + }, + { + "teal": 911, + "source": 280, + "pc": [ + 1128, + 1129 + ] + }, + { + "teal": 912, + "source": 280, + "pc": [ + 1130, + 1131 + ] + }, + { + "teal": 913, + "source": 280, + "pc": [ + 1132 + ] + }, + { + "teal": 914, + "source": 280, + "pc": [ + 1133, + 1134, + 1135 + ] + }, + { + "teal": 922, + "source": 282, + "pc": [ + 1136, + 1137, + 1138 + ] + }, + { + "teal": 925, + "source": 281, + "errorMessage": "If staker is not sender in removeStake call, then sender MUST be owner or manager of validator", + "pc": [ + 1139 + ] + }, + { + "teal": 930, + "source": 287, + "pc": [ + 1140, + 1141, + 1142 + ] + }, + { + "teal": 934, + "source": 289, + "pc": [ + 1143 + ] + }, + { + "teal": 935, + "source": 289, + "pc": [ + 1144, + 1145 + ] + }, + { + "teal": 940, + "source": 289, + "pc": [ + 1146, + 1147 + ] + }, + { + "teal": 941, + "source": 289, + "pc": [ + 1148, + 1149 + ] + }, + { + "teal": 942, + "source": 289, + "pc": [ + 1150 + ] + }, + { + "teal": 943, + "source": 289, + "pc": [ + 1151, + 1152, + 1153 + ] + }, + { + "teal": 948, + "source": 290, + "pc": [ + 1154, + 1155 + ] + }, + { + "teal": 949, + "source": 290, + "pc": [ + 1156, + 1157 + ] + }, + { + "teal": 950, + "source": 290, + "pc": [ + 1158 + ] + }, + { + "teal": 951, + "source": 290, + "pc": [ + 1159, + 1160, + 1161 + ] + }, + { + "teal": 956, + "source": 291, + "pc": [ + 1162 + ] + }, + { + "teal": 957, + "source": 291, + "pc": [ + 1163 + ] + }, + { + "teal": 958, + "source": 291, + "pc": [ + 1164, + 1165 + ] + }, + { + "teal": 959, + "source": 291, + "pc": [ + 1166 + ] + }, + { + "teal": 960, + "source": 291, + "pc": [ + 1167, + 1168 + ] + }, + { + "teal": 961, + "source": 291, + "pc": [ + 1169, + 1170 + ] + }, + { + "teal": 962, + "source": 291, + "pc": [ + 1171 + ] + }, + { + "teal": 963, + "source": 291, + "pc": [ + 1172, + 1173 + ] + }, + { + "teal": 964, + "source": 291, + "pc": [ + 1174, + 1175 + ] + }, + { + "teal": 965, + "source": 291, + "pc": [ + 1176, + 1177 + ] + }, + { + "teal": 966, + "source": 291, + "pc": [ + 1178, + 1179 + ] + }, + { + "teal": 967, + "source": 291, + "pc": [ + 1180 + ] + }, + { + "teal": 972, + "source": 293, + "pc": [ + 1181, + 1182 + ] + }, + { + "teal": 973, + "source": 293, + "pc": [ + 1183 + ] + }, + { + "teal": 974, + "source": 293, + "pc": [ + 1184 + ] + }, + { + "teal": 975, + "source": 293, + "pc": [ + 1185 + ] + }, + { + "teal": 976, + "source": 293, + "pc": [ + 1186 + ] + }, + { + "teal": 977, + "source": 293, + "pc": [ + 1187, + 1188 + ] + }, + { + "teal": 978, + "source": 293, + "pc": [ + 1189 + ] + }, + { + "teal": 979, + "source": 293, + "pc": [ + 1190, + 1191 + ] + }, + { + "teal": 984, + "source": 294, + "pc": [ + 1192, + 1193 + ] + }, + { + "teal": 985, + "source": 294, + "pc": [ + 1194, + 1195, + 1196 + ] + }, + { + "teal": 986, + "source": 294, + "pc": [ + 1197, + 1198 + ] + }, + { + "teal": 987, + "source": 294, + "pc": [ + 1199 + ] + }, + { + "teal": 988, + "source": 294, + "pc": [ + 1200, + 1201, + 1202 + ] + }, + { + "teal": 994, + "source": 295, + "pc": [ + 1203, + 1204 + ] + }, + { + "teal": 995, + "source": 295, + "pc": [ + 1205 + ] + }, + { + "teal": 996, + "source": 295, + "pc": [ + 1206 + ] + }, + { + "teal": 997, + "source": 295, + "pc": [ + 1207, + 1208, + 1209 + ] + }, + { + "teal": 1002, + "source": 297, + "pc": [ + 1210, + 1211 + ] + }, + { + "teal": 1003, + "source": 297, + "pc": [ + 1212, + 1213, + 1214 + ] + }, + { + "teal": 1004, + "source": 297, + "pc": [ + 1215 + ] + }, + { + "teal": 1005, + "source": 297, + "pc": [ + 1216, + 1217 + ] + }, + { + "teal": 1011, + "source": 299, + "pc": [ + 1218, + 1219 + ] + }, + { + "teal": 1012, + "source": 299, + "pc": [ + 1220, + 1221, + 1222 + ] + }, + { + "teal": 1013, + "source": 299, + "pc": [ + 1223 + ] + }, + { + "teal": 1014, + "source": 299, + "pc": [ + 1224, + 1225 + ] + }, + { + "teal": 1015, + "source": 299, + "pc": [ + 1226 + ] + }, + { + "teal": 1016, + "source": 299, + "pc": [ + 1227, + 1228, + 1229 + ] + }, + { + "teal": 1020, + "source": 300, + "errorMessage": "Insufficient balance", + "pc": [ + 1230 + ] + }, + { + "teal": 1025, + "source": 302, + "pc": [ + 1231, + 1232 + ] + }, + { + "teal": 1026, + "source": 302, + "pc": [ + 1233, + 1234 + ] + }, + { + "teal": 1027, + "source": 302, + "pc": [ + 1235, + 1236 + ] + }, + { + "teal": 1028, + "source": 302, + "pc": [ + 1237, + 1238, + 1239 + ] + }, + { + "teal": 1029, + "source": 302, + "pc": [ + 1240 + ] + }, + { + "teal": 1030, + "source": 302, + "pc": [ + 1241, + 1242 + ] + }, + { + "teal": 1031, + "source": 302, + "pc": [ + 1243 + ] + }, + { + "teal": 1032, + "source": 302, + "pc": [ + 1244 + ] + }, + { + "teal": 1033, + "source": 302, + "pc": [ + 1245 + ] + }, + { + "teal": 1034, + "source": 302, + "pc": [ + 1246, + 1247 + ] + }, + { + "teal": 1038, + "source": 303, + "pc": [ + 1248, + 1249 + ] + }, + { + "teal": 1039, + "source": 303, + "pc": [ + 1250 + ] + }, + { + "teal": 1040, + "source": 303, + "pc": [ + 1251, + 1252 + ] + }, + { + "teal": 1041, + "source": 303, + "pc": [ + 1253 + ] + }, + { + "teal": 1042, + "source": 303, + "pc": [ + 1254, + 1255 + ] + }, + { + "teal": 1043, + "source": 303, + "pc": [ + 1256 + ] + }, + { + "teal": 1044, + "source": 303, + "pc": [ + 1257 + ] + }, + { + "teal": 1048, + "source": 305, + "pc": [ + 1258 + ] + }, + { + "teal": 1049, + "source": 305, + "pc": [ + 1259, + 1260 + ] + }, + { + "teal": 1054, + "source": 306, + "pc": [ + 1261, + 1262 + ] + }, + { + "teal": 1055, + "source": 306, + "pc": [ + 1263, + 1264, + 1265 + ] + }, + { + "teal": 1056, + "source": 306, + "pc": [ + 1266 + ] + }, + { + "teal": 1057, + "source": 306, + "pc": [ + 1267 + ] + }, + { + "teal": 1058, + "source": 306, + "pc": [ + 1268 + ] + }, + { + "teal": 1059, + "source": 306, + "pc": [ + 1269, + 1270, + 1271 + ] + }, + { + "teal": 1065, + "source": 308, + "pc": [ + 1272 + ] + }, + { + "teal": 1066, + "source": 308, + "pc": [ + 1273 + ] + }, + { + "teal": 1067, + "source": 308, + "pc": [ + 1274 + ] + }, + { + "teal": 1068, + "source": 308, + "pc": [ + 1275 + ] + }, + { + "teal": 1069, + "source": 308, + "pc": [ + 1276, + 1277, + 1278 + ] + }, + { + "teal": 1077, + "source": 309, + "pc": [ + 1279 + ] + }, + { + "teal": 1078, + "source": 309, + "pc": [ + 1280 + ] + }, + { + "teal": 1079, + "source": 309, + "pc": [ + 1281, + 1282 + ] + }, + { + "teal": 1080, + "source": 309, + "pc": [ + 1283, + 1284 + ] + }, + { + "teal": 1081, + "source": 309, + "pc": [ + 1285, + 1286 + ] + }, + { + "teal": 1085, + "source": 310, + "pc": [ + 1287 + ] + }, + { + "teal": 1086, + "source": 310, + "pc": [ + 1288 + ] + }, + { + "teal": 1087, + "source": 310, + "pc": [ + 1289, + 1290 + ] + }, + { + "teal": 1091, + "source": 311, + "pc": [ + 1291 + ] + }, + { + "teal": 1092, + "source": 311, + "pc": [ + 1292 + ] + }, + { + "teal": 1093, + "source": 311, + "pc": [ + 1293 + ] + }, + { + "teal": 1094, + "source": 311, + "pc": [ + 1294, + 1295 + ] + }, + { + "teal": 1097, + "source": 309, + "pc": [ + 1296 + ] + }, + { + "teal": 1098, + "source": 309, + "pc": [ + 1297, + 1298 + ] + }, + { + "teal": 1101, + "source": 309, + "pc": [ + 1299 + ] + }, + { + "teal": 1102, + "source": 309, + "pc": [ + 1300, + 1301 + ] + }, + { + "teal": 1103, + "source": 309, + "pc": [ + 1302 + ] + }, + { + "teal": 1104, + "source": 309, + "pc": [ + 1303 + ] + }, + { + "teal": 1105, + "source": 309, + "pc": [ + 1304, + 1305 + ] + }, + { + "teal": 1106, + "source": 309, + "pc": [ + 1306, + 1307, + 1308 + ] + }, + { + "teal": 1107, + "source": 309, + "pc": [ + 1309, + 1310 + ] + }, + { + "teal": 1115, + "source": 317, + "pc": [ + 1311 + ] + }, + { + "teal": 1116, + "source": 317, + "pc": [ + 1312, + 1313 + ] + }, + { + "teal": 1117, + "source": 317, + "pc": [ + 1314, + 1315 + ] + }, + { + "teal": 1121, + "source": 318, + "pc": [ + 1316, + 1317 + ] + }, + { + "teal": 1122, + "source": 318, + "pc": [ + 1318, + 1319, + 1320 + ] + }, + { + "teal": 1123, + "source": 318, + "pc": [ + 1321 + ] + }, + { + "teal": 1124, + "source": 318, + "pc": [ + 1322, + 1323 + ] + }, + { + "teal": 1128, + "source": 319, + "pc": [ + 1324, + 1325 + ] + }, + { + "teal": 1129, + "source": 319, + "pc": [ + 1326, + 1327 + ] + }, + { + "teal": 1133, + "source": 320, + "pc": [ + 1328, + 1329 + ] + }, + { + "teal": 1134, + "source": 320, + "pc": [ + 1330, + 1331, + 1332 + ] + }, + { + "teal": 1135, + "source": 320, + "pc": [ + 1333 + ] + }, + { + "teal": 1136, + "source": 320, + "pc": [ + 1334, + 1335 + ] + }, + { + "teal": 1139, + "source": 317, + "pc": [ + 1336 + ] + }, + { + "teal": 1140, + "source": 317, + "pc": [ + 1337, + 1338 + ] + }, + { + "teal": 1143, + "source": 317, + "pc": [ + 1339 + ] + }, + { + "teal": 1147, + "source": 322, + "pc": [ + 1340, + 1341 + ] + }, + { + "teal": 1148, + "source": 322, + "pc": [ + 1342, + 1343, + 1344 + ] + }, + { + "teal": 1149, + "source": 322, + "pc": [ + 1345 + ] + }, + { + "teal": 1150, + "source": 322, + "pc": [ + 1346, + 1347 + ] + }, + { + "teal": 1154, + "source": 323, + "pc": [ + 1348, + 1349 + ] + }, + { + "teal": 1155, + "source": 323, + "pc": [ + 1350, + 1351 + ] + }, + { + "teal": 1156, + "source": 323, + "pc": [ + 1352, + 1353 + ] + }, + { + "teal": 1157, + "source": 323, + "pc": [ + 1354, + 1355 + ] + }, + { + "teal": 1158, + "source": 308, + "pc": [ + 1356, + 1357, + 1358 + ] + }, + { + "teal": 1163, + "source": 328, + "pc": [ + 1359, + 1360 + ] + }, + { + "teal": 1164, + "source": 328, + "pc": [ + 1361, + 1362, + 1363 + ] + }, + { + "teal": 1165, + "source": 328, + "pc": [ + 1364 + ] + }, + { + "teal": 1166, + "source": 328, + "pc": [ + 1365, + 1366 + ] + }, + { + "teal": 1170, + "source": 329, + "pc": [ + 1367, + 1368 + ] + }, + { + "teal": 1171, + "source": 329, + "pc": [ + 1369, + 1370 + ] + }, + { + "teal": 1172, + "source": 329, + "pc": [ + 1371, + 1372 + ] + }, + { + "teal": 1173, + "source": 329, + "pc": [ + 1373, + 1374 + ] + }, + { + "teal": 1183, + "source": 335, + "pc": [ + 1375, + 1376 + ] + }, + { + "teal": 1184, + "source": 335, + "pc": [ + 1377, + 1378, + 1379 + ] + }, + { + "teal": 1185, + "source": 335, + "pc": [ + 1380 + ] + }, + { + "teal": 1186, + "source": 335, + "pc": [ + 1381 + ] + }, + { + "teal": 1187, + "source": 335, + "pc": [ + 1382 + ] + }, + { + "teal": 1188, + "source": 335, + "pc": [ + 1383 + ] + }, + { + "teal": 1189, + "source": 335, + "pc": [ + 1384, + 1385, + 1386 + ] + }, + { + "teal": 1190, + "source": 335, + "pc": [ + 1387, + 1388 + ] + }, + { + "teal": 1191, + "source": 335, + "pc": [ + 1389, + 1390, + 1391 + ] + }, + { + "teal": 1192, + "source": 335, + "pc": [ + 1392 + ] + }, + { + "teal": 1193, + "source": 335, + "pc": [ + 1393, + 1394 + ] + }, + { + "teal": 1194, + "source": 335, + "pc": [ + 1395 + ] + }, + { + "teal": 1195, + "source": 335, + "pc": [ + 1396 + ] + }, + { + "teal": 1196, + "source": 335, + "pc": [ + 1397 + ] + }, + { + "teal": 1200, + "source": 334, + "errorMessage": "cannot reduce balance below minimum allowed stake unless all is removed", + "pc": [ + 1398 + ] + }, + { + "teal": 1208, + "source": 342, + "pc": [ + 1399 + ] + }, + { + "teal": 1209, + "source": 342, + "pc": [ + 1400 + ] + }, + { + "teal": 1210, + "source": 342, + "pc": [ + 1401, + 1402 + ] + }, + { + "teal": 1214, + "source": 343, + "pc": [ + 1403, + 1404 + ] + }, + { + "teal": 1215, + "source": 343, + "pc": [ + 1405, + 1406 + ] + }, + { + "teal": 1219, + "source": 344, + "pc": [ + 1407, + 1408 + ] + }, + { + "teal": 1220, + "source": 344, + "pc": [ + 1409, + 1410 + ] + }, + { + "teal": 1224, + "source": 345, + "pc": [ + 1411, + 1412, + 1413, + 1414, + 1415, + 1416, + 1417, + 1418, + 1419, + 1420 + ] + }, + { + "teal": 1225, + "source": 345, + "pc": [ + 1421, + 1422 + ] + }, + { + "teal": 1228, + "source": 342, + "pc": [ + 1423 + ] + }, + { + "teal": 1229, + "source": 342, + "pc": [ + 1424, + 1425 + ] + }, + { + "teal": 1232, + "source": 342, + "pc": [ + 1426 + ] + }, + { + "teal": 1236, + "source": 347, + "pc": [ + 1427 + ] + }, + { + "teal": 1237, + "source": 347, + "pc": [ + 1428, + 1429 + ] + }, + { + "teal": 1242, + "source": 348, + "pc": [ + 1430, + 1431 + ] + }, + { + "teal": 1243, + "source": 348, + "pc": [ + 1432, + 1433, + 1434 + ] + }, + { + "teal": 1244, + "source": 348, + "pc": [ + 1435 + ] + }, + { + "teal": 1245, + "source": 348, + "pc": [ + 1436 + ] + }, + { + "teal": 1246, + "source": 348, + "pc": [ + 1437 + ] + }, + { + "teal": 1247, + "source": 348, + "pc": [ + 1438, + 1439, + 1440 + ] + }, + { + "teal": 1252, + "source": 350, + "pc": [ + 1441, + 1442 + ] + }, + { + "teal": 1253, + "source": 350, + "pc": [ + 1443 + ] + }, + { + "teal": 1254, + "source": 350, + "pc": [ + 1444 + ] + }, + { + "teal": 1255, + "source": 350, + "pc": [ + 1445 + ] + }, + { + "teal": 1256, + "source": 350, + "pc": [ + 1446, + 1447 + ] + }, + { + "teal": 1257, + "source": 350, + "pc": [ + 1448 + ] + }, + { + "teal": 1258, + "source": 350, + "pc": [ + 1449 + ] + }, + { + "teal": 1262, + "source": 351, + "pc": [ + 1450, + 1451 + ] + }, + { + "teal": 1263, + "source": 351, + "pc": [ + 1452 + ] + }, + { + "teal": 1264, + "source": 351, + "pc": [ + 1453, + 1454 + ] + }, + { + "teal": 1265, + "source": 351, + "pc": [ + 1455 + ] + }, + { + "teal": 1266, + "source": 351, + "pc": [ + 1456, + 1457 + ] + }, + { + "teal": 1270, + "source": 352, + "pc": [ + 1458, + 1459 + ] + }, + { + "teal": 1271, + "source": 352, + "pc": [ + 1460, + 1461 + ] + }, + { + "teal": 1272, + "source": 352, + "pc": [ + 1462, + 1463 + ] + }, + { + "teal": 1273, + "source": 352, + "pc": [ + 1464, + 1465 + ] + }, + { + "teal": 1277, + "source": 353, + "pc": [ + 1466, + 1467 + ] + }, + { + "teal": 1278, + "source": 353, + "pc": [ + 1468, + 1469 + ] + }, + { + "teal": 1279, + "source": 353, + "pc": [ + 1470, + 1471 + ] + }, + { + "teal": 1280, + "source": 353, + "pc": [ + 1472, + 1473 + ] + }, + { + "teal": 1284, + "source": 354, + "pc": [ + 1474 + ] + }, + { + "teal": 1285, + "source": 354, + "pc": [ + 1475, + 1476 + ] + }, + { + "teal": 1290, + "source": 357, + "pc": [ + 1477, + 1478 + ] + }, + { + "teal": 1291, + "source": 357, + "pc": [ + 1479 + ] + }, + { + "teal": 1292, + "source": 357, + "pc": [ + 1480 + ] + }, + { + "teal": 1293, + "source": 357, + "pc": [ + 1481, + 1482 + ] + }, + { + "teal": 1294, + "source": 357, + "pc": [ + 1483 + ] + }, + { + "teal": 1295, + "source": 357, + "pc": [ + 1484, + 1485 + ] + }, + { + "teal": 1296, + "source": 357, + "pc": [ + 1486 + ] + }, + { + "teal": 1300, + "source": 359, + "pc": [ + 1487, + 1488 + ] + }, + { + "teal": 1301, + "source": 359, + "pc": [ + 1489 + ] + }, + { + "teal": 1302, + "source": 359, + "pc": [ + 1490, + 1491 + ] + }, + { + "teal": 1303, + "source": 359, + "pc": [ + 1492 + ] + }, + { + "teal": 1304, + "source": 359, + "pc": [ + 1493 + ] + }, + { + "teal": 1305, + "source": 359, + "pc": [ + 1494, + 1495 + ] + }, + { + "teal": 1306, + "source": 359, + "pc": [ + 1496 + ] + }, + { + "teal": 1307, + "source": 359, + "pc": [ + 1497, + 1498 + ] + }, + { + "teal": 1311, + "source": 360, + "pc": [ + 1499, + 1500 + ] + }, + { + "teal": 1312, + "source": 360, + "pc": [ + 1501 + ] + }, + { + "teal": 1313, + "source": 360, + "pc": [ + 1502, + 1503 + ] + }, + { + "teal": 1314, + "source": 360, + "pc": [ + 1504 + ] + }, + { + "teal": 1315, + "source": 360, + "pc": [ + 1505 + ] + }, + { + "teal": 1316, + "source": 360, + "pc": [ + 1506 + ] + }, + { + "teal": 1317, + "source": 360, + "pc": [ + 1507 + ] + }, + { + "teal": 1318, + "source": 360, + "pc": [ + 1508, + 1509 + ] + }, + { + "teal": 1319, + "source": 360, + "pc": [ + 1510 + ] + }, + { + "teal": 1322, + "source": 360, + "errorMessage": "(amountToUnstake as uint128) * (roundsLeftInBin as uint128) overflowed 128 bits", + "pc": [ + 1511 + ] + }, + { + "teal": 1323, + "source": 360, + "pc": [ + 1512, + 1513 + ] + }, + { + "teal": 1324, + "source": 360, + "pc": [ + 1514 + ] + }, + { + "teal": 1325, + "source": 360, + "pc": [ + 1515 + ] + }, + { + "teal": 1326, + "source": 360, + "pc": [ + 1516 + ] + }, + { + "teal": 1327, + "source": 360, + "pc": [ + 1517 + ] + }, + { + "teal": 1328, + "source": 360, + "pc": [ + 1518, + 1519 + ] + }, + { + "teal": 1329, + "source": 360, + "pc": [ + 1520 + ] + }, + { + "teal": 1330, + "source": 360, + "pc": [ + 1521 + ] + }, + { + "teal": 1331, + "source": 360, + "pc": [ + 1522 + ] + }, + { + "teal": 1332, + "source": 360, + "pc": [ + 1523, + 1524 + ] + }, + { + "teal": 1336, + "source": 361, + "pc": [ + 1525, + 1526 + ] + }, + { + "teal": 1337, + "source": 361, + "pc": [ + 1527 + ] + }, + { + "teal": 1338, + "source": 361, + "pc": [ + 1528 + ] + }, + { + "teal": 1339, + "source": 361, + "pc": [ + 1529, + 1530 + ] + }, + { + "teal": 1340, + "source": 361, + "pc": [ + 1531 + ] + }, + { + "teal": 1341, + "source": 361, + "pc": [ + 1532 + ] + }, + { + "teal": 1342, + "source": 361, + "pc": [ + 1533 + ] + }, + { + "teal": 1343, + "source": 361, + "pc": [ + 1534, + 1535 + ] + }, + { + "teal": 1344, + "source": 361, + "pc": [ + 1536 + ] + }, + { + "teal": 1347, + "source": 361, + "errorMessage": "this.stakeAccumulator.value - subtractAmount overflowed 128 bits", + "pc": [ + 1537 + ] + }, + { + "teal": 1348, + "source": 361, + "pc": [ + 1538, + 1539 + ] + }, + { + "teal": 1349, + "source": 361, + "pc": [ + 1540 + ] + }, + { + "teal": 1350, + "source": 361, + "pc": [ + 1541 + ] + }, + { + "teal": 1351, + "source": 361, + "pc": [ + 1542 + ] + }, + { + "teal": 1352, + "source": 361, + "pc": [ + 1543 + ] + }, + { + "teal": 1353, + "source": 361, + "pc": [ + 1544, + 1545 + ] + }, + { + "teal": 1354, + "source": 361, + "pc": [ + 1546 + ] + }, + { + "teal": 1355, + "source": 361, + "pc": [ + 1547 + ] + }, + { + "teal": 1356, + "source": 361, + "pc": [ + 1548 + ] + }, + { + "teal": 1357, + "source": 361, + "pc": [ + 1549 + ] + }, + { + "teal": 1370, + "source": 366, + "pc": [ + 1550 + ] + }, + { + "teal": 1371, + "source": 366, + "pc": [ + 1551 + ] + }, + { + "teal": 1372, + "source": 366, + "pc": [ + 1552, + 1553 + ] + }, + { + "teal": 1373, + "source": 366, + "pc": [ + 1554, + 1555 + ] + }, + { + "teal": 1374, + "source": 366, + "pc": [ + 1556, + 1557 + ] + }, + { + "teal": 1378, + "source": 367, + "pc": [ + 1558 + ] + }, + { + "teal": 1379, + "source": 367, + "pc": [ + 1559 + ] + }, + { + "teal": 1380, + "source": 367, + "pc": [ + 1560, + 1561 + ] + }, + { + "teal": 1390, + "source": 369, + "pc": [ + 1562 + ] + }, + { + "teal": 1391, + "source": 369, + "pc": [ + 1563 + ] + }, + { + "teal": 1392, + "source": 369, + "pc": [ + 1564 + ] + }, + { + "teal": 1393, + "source": 369, + "pc": [ + 1565 + ] + }, + { + "teal": 1394, + "source": 369, + "pc": [ + 1566 + ] + }, + { + "teal": 1395, + "source": 369, + "pc": [ + 1567 + ] + }, + { + "teal": 1396, + "source": 369, + "pc": [ + 1568 + ] + }, + { + "teal": 1397, + "source": 369, + "pc": [ + 1569, + 1570, + 1571 + ] + }, + { + "teal": 1398, + "source": 369, + "pc": [ + 1572 + ] + }, + { + "teal": 1399, + "source": 369, + "pc": [ + 1573 + ] + }, + { + "teal": 1400, + "source": 369, + "pc": [ + 1574, + 1575 + ] + }, + { + "teal": 1401, + "source": 370, + "pc": [ + 1576, + 1577 + ] + }, + { + "teal": 1402, + "source": 370, + "pc": [ + 1578, + 1579 + ] + }, + { + "teal": 1403, + "source": 371, + "pc": [ + 1580, + 1581 + ] + }, + { + "teal": 1404, + "source": 371, + "pc": [ + 1582 + ] + }, + { + "teal": 1405, + "source": 371, + "pc": [ + 1583, + 1584 + ] + }, + { + "teal": 1406, + "source": 372, + "pc": [ + 1585, + 1586 + ] + }, + { + "teal": 1407, + "source": 372, + "pc": [ + 1587 + ] + }, + { + "teal": 1408, + "source": 372, + "pc": [ + 1588, + 1589 + ] + }, + { + "teal": 1409, + "source": 373, + "pc": [ + 1590, + 1591 + ] + }, + { + "teal": 1410, + "source": 373, + "pc": [ + 1592, + 1593 + ] + }, + { + "teal": 1411, + "source": 373, + "pc": [ + 1594 + ] + }, + { + "teal": 1412, + "source": 373, + "pc": [ + 1595, + 1596 + ] + }, + { + "teal": 1413, + "source": 373, + "pc": [ + 1597 + ] + }, + { + "teal": 1414, + "source": 373, + "pc": [ + 1598, + 1599 + ] + }, + { + "teal": 1417, + "source": 366, + "pc": [ + 1600 + ] + }, + { + "teal": 1418, + "source": 366, + "pc": [ + 1601, + 1602 + ] + }, + { + "teal": 1421, + "source": 366, + "pc": [ + 1603 + ] + }, + { + "teal": 1425, + "source": 376, + "pc": [ + 1604 + ] + }, + { + "teal": 1432, + "source": 289, + "pc": [ + 1605, + 1606 + ] + }, + { + "teal": 1433, + "source": 289, + "pc": [ + 1607 + ] + }, + { + "teal": 1434, + "source": 289, + "pc": [ + 1608 + ] + }, + { + "teal": 1435, + "source": 289, + "pc": [ + 1609, + 1610 + ] + }, + { + "teal": 1436, + "source": 289, + "pc": [ + 1611, + 1612, + 1613 + ] + }, + { + "teal": 1440, + "source": 379, + "errorMessage": "account not found", + "pc": [ + 1614 + ] + }, + { + "teal": 1441, + "source": 277, + "pc": [ + 1615 + ] + }, + { + "teal": 1446, + "source": 387, + "pc": [ + 1616, + 1617, + 1618 + ] + }, + { + "teal": 1447, + "source": 387, + "pc": [ + 1619 + ] + }, + { + "teal": 1448, + "source": 387, + "pc": [ + 1620 + ] + }, + { + "teal": 1456, + "source": 387, + "pc": [ + 1621, + 1622, + 1623 + ] + }, + { + "teal": 1459, + "source": 387, + "pc": [ + 1624, + 1625 + ] + }, + { + "teal": 1460, + "source": 387, + "pc": [ + 1626, + 1627 + ] + }, + { + "teal": 1464, + "source": 391, + "pc": [ + 1628, + 1629 + ] + }, + { + "teal": 1465, + "source": 391, + "pc": [ + 1630, + 1631 + ] + }, + { + "teal": 1469, + "source": 393, + "pc": [ + 1632 + ] + }, + { + "teal": 1470, + "source": 393, + "pc": [ + 1633, + 1634 + ] + }, + { + "teal": 1475, + "source": 393, + "pc": [ + 1635, + 1636 + ] + }, + { + "teal": 1476, + "source": 393, + "pc": [ + 1637, + 1638 + ] + }, + { + "teal": 1477, + "source": 393, + "pc": [ + 1639 + ] + }, + { + "teal": 1478, + "source": 393, + "pc": [ + 1640, + 1641, + 1642 + ] + }, + { + "teal": 1483, + "source": 394, + "pc": [ + 1643, + 1644 + ] + }, + { + "teal": 1484, + "source": 394, + "pc": [ + 1645, + 1646 + ] + }, + { + "teal": 1485, + "source": 394, + "pc": [ + 1647 + ] + }, + { + "teal": 1486, + "source": 394, + "pc": [ + 1648, + 1649, + 1650 + ] + }, + { + "teal": 1491, + "source": 395, + "pc": [ + 1651 + ] + }, + { + "teal": 1492, + "source": 395, + "pc": [ + 1652 + ] + }, + { + "teal": 1493, + "source": 395, + "pc": [ + 1653, + 1654 + ] + }, + { + "teal": 1494, + "source": 395, + "pc": [ + 1655 + ] + }, + { + "teal": 1495, + "source": 395, + "pc": [ + 1656, + 1657 + ] + }, + { + "teal": 1496, + "source": 395, + "pc": [ + 1658, + 1659 + ] + }, + { + "teal": 1497, + "source": 395, + "pc": [ + 1660 + ] + }, + { + "teal": 1498, + "source": 395, + "pc": [ + 1661, + 1662 + ] + }, + { + "teal": 1499, + "source": 395, + "pc": [ + 1663, + 1664 + ] + }, + { + "teal": 1500, + "source": 395, + "pc": [ + 1665, + 1666 + ] + }, + { + "teal": 1501, + "source": 395, + "pc": [ + 1667, + 1668 + ] + }, + { + "teal": 1502, + "source": 395, + "pc": [ + 1669 + ] + }, + { + "teal": 1507, + "source": 397, + "pc": [ + 1670, + 1671 + ] + }, + { + "teal": 1508, + "source": 397, + "pc": [ + 1672 + ] + }, + { + "teal": 1509, + "source": 397, + "pc": [ + 1673 + ] + }, + { + "teal": 1510, + "source": 397, + "pc": [ + 1674 + ] + }, + { + "teal": 1511, + "source": 397, + "pc": [ + 1675 + ] + }, + { + "teal": 1512, + "source": 397, + "pc": [ + 1676, + 1677 + ] + }, + { + "teal": 1513, + "source": 397, + "pc": [ + 1678 + ] + }, + { + "teal": 1514, + "source": 397, + "pc": [ + 1679, + 1680 + ] + }, + { + "teal": 1519, + "source": 398, + "pc": [ + 1681, + 1682 + ] + }, + { + "teal": 1520, + "source": 398, + "pc": [ + 1683, + 1684, + 1685 + ] + }, + { + "teal": 1521, + "source": 398, + "pc": [ + 1686, + 1687 + ] + }, + { + "teal": 1522, + "source": 398, + "pc": [ + 1688 + ] + }, + { + "teal": 1523, + "source": 398, + "pc": [ + 1689, + 1690, + 1691 + ] + }, + { + "teal": 1529, + "source": 399, + "pc": [ + 1692, + 1693 + ] + }, + { + "teal": 1530, + "source": 399, + "pc": [ + 1694, + 1695, + 1696 + ] + }, + { + "teal": 1531, + "source": 399, + "pc": [ + 1697 + ] + }, + { + "teal": 1532, + "source": 399, + "pc": [ + 1698 + ] + }, + { + "teal": 1533, + "source": 399, + "pc": [ + 1699 + ] + }, + { + "teal": 1534, + "source": 399, + "pc": [ + 1700, + 1701, + 1702 + ] + }, + { + "teal": 1539, + "source": 400, + "pc": [ + 1703 + ] + }, + { + "teal": 1544, + "source": 402, + "pc": [ + 1704 + ] + }, + { + "teal": 1545, + "source": 402, + "pc": [ + 1705, + 1706 + ] + }, + { + "teal": 1550, + "source": 404, + "pc": [ + 1707 + ] + }, + { + "teal": 1551, + "source": 404, + "pc": [ + 1708 + ] + }, + { + "teal": 1552, + "source": 404, + "pc": [ + 1709 + ] + }, + { + "teal": 1553, + "source": 404, + "pc": [ + 1710 + ] + }, + { + "teal": 1554, + "source": 404, + "pc": [ + 1711, + 1712, + 1713 + ] + }, + { + "teal": 1562, + "source": 405, + "pc": [ + 1714 + ] + }, + { + "teal": 1563, + "source": 405, + "pc": [ + 1715 + ] + }, + { + "teal": 1564, + "source": 405, + "pc": [ + 1716, + 1717 + ] + }, + { + "teal": 1565, + "source": 405, + "pc": [ + 1718, + 1719 + ] + }, + { + "teal": 1566, + "source": 405, + "pc": [ + 1720, + 1721 + ] + }, + { + "teal": 1570, + "source": 406, + "pc": [ + 1722 + ] + }, + { + "teal": 1571, + "source": 406, + "pc": [ + 1723 + ] + }, + { + "teal": 1572, + "source": 406, + "pc": [ + 1724, + 1725 + ] + }, + { + "teal": 1576, + "source": 407, + "pc": [ + 1726 + ] + }, + { + "teal": 1577, + "source": 407, + "pc": [ + 1727 + ] + }, + { + "teal": 1578, + "source": 407, + "pc": [ + 1728 + ] + }, + { + "teal": 1579, + "source": 407, + "pc": [ + 1729, + 1730 + ] + }, + { + "teal": 1582, + "source": 405, + "pc": [ + 1731 + ] + }, + { + "teal": 1583, + "source": 405, + "pc": [ + 1732, + 1733 + ] + }, + { + "teal": 1586, + "source": 405, + "pc": [ + 1734 + ] + }, + { + "teal": 1587, + "source": 405, + "pc": [ + 1735, + 1736 + ] + }, + { + "teal": 1588, + "source": 405, + "pc": [ + 1737 + ] + }, + { + "teal": 1589, + "source": 405, + "pc": [ + 1738 + ] + }, + { + "teal": 1590, + "source": 405, + "pc": [ + 1739, + 1740 + ] + }, + { + "teal": 1591, + "source": 405, + "pc": [ + 1741, + 1742, + 1743 + ] + }, + { + "teal": 1592, + "source": 405, + "pc": [ + 1744, + 1745 + ] + }, + { + "teal": 1600, + "source": 412, + "pc": [ + 1746 + ] + }, + { + "teal": 1601, + "source": 412, + "pc": [ + 1747, + 1748 + ] + }, + { + "teal": 1602, + "source": 412, + "pc": [ + 1749, + 1750 + ] + }, + { + "teal": 1606, + "source": 413, + "pc": [ + 1751, + 1752 + ] + }, + { + "teal": 1607, + "source": 413, + "pc": [ + 1753, + 1754, + 1755 + ] + }, + { + "teal": 1608, + "source": 413, + "pc": [ + 1756 + ] + }, + { + "teal": 1609, + "source": 413, + "pc": [ + 1757, + 1758 + ] + }, + { + "teal": 1613, + "source": 414, + "pc": [ + 1759, + 1760 + ] + }, + { + "teal": 1614, + "source": 414, + "pc": [ + 1761, + 1762 + ] + }, + { + "teal": 1618, + "source": 415, + "pc": [ + 1763, + 1764 + ] + }, + { + "teal": 1619, + "source": 415, + "pc": [ + 1765, + 1766, + 1767 + ] + }, + { + "teal": 1620, + "source": 415, + "pc": [ + 1768 + ] + }, + { + "teal": 1621, + "source": 415, + "pc": [ + 1769, + 1770 + ] + }, + { + "teal": 1624, + "source": 412, + "pc": [ + 1771 + ] + }, + { + "teal": 1625, + "source": 412, + "pc": [ + 1772, + 1773 + ] + }, + { + "teal": 1628, + "source": 412, + "pc": [ + 1774 + ] + }, + { + "teal": 1632, + "source": 417, + "pc": [ + 1775, + 1776 + ] + }, + { + "teal": 1633, + "source": 417, + "pc": [ + 1777, + 1778, + 1779 + ] + }, + { + "teal": 1634, + "source": 417, + "pc": [ + 1780 + ] + }, + { + "teal": 1635, + "source": 417, + "pc": [ + 1781, + 1782 + ] + }, + { + "teal": 1639, + "source": 418, + "pc": [ + 1783, + 1784 + ] + }, + { + "teal": 1640, + "source": 418, + "pc": [ + 1785, + 1786 + ] + }, + { + "teal": 1641, + "source": 418, + "pc": [ + 1787, + 1788 + ] + }, + { + "teal": 1642, + "source": 418, + "pc": [ + 1789, + 1790 + ] + }, + { + "teal": 1643, + "source": 404, + "pc": [ + 1791, + 1792, + 1793 + ] + }, + { + "teal": 1648, + "source": 423, + "pc": [ + 1794, + 1795 + ] + }, + { + "teal": 1649, + "source": 423, + "pc": [ + 1796, + 1797, + 1798 + ] + }, + { + "teal": 1650, + "source": 423, + "pc": [ + 1799 + ] + }, + { + "teal": 1651, + "source": 423, + "pc": [ + 1800, + 1801 + ] + }, + { + "teal": 1655, + "source": 424, + "pc": [ + 1802, + 1803 + ] + }, + { + "teal": 1656, + "source": 424, + "pc": [ + 1804, + 1805 + ] + }, + { + "teal": 1657, + "source": 424, + "pc": [ + 1806, + 1807 + ] + }, + { + "teal": 1658, + "source": 424, + "pc": [ + 1808, + 1809 + ] + }, + { + "teal": 1663, + "source": 428, + "pc": [ + 1810, + 1811 + ] + }, + { + "teal": 1664, + "source": 428, + "pc": [ + 1812 + ] + }, + { + "teal": 1665, + "source": 428, + "pc": [ + 1813 + ] + }, + { + "teal": 1666, + "source": 428, + "pc": [ + 1814, + 1815 + ] + }, + { + "teal": 1667, + "source": 428, + "pc": [ + 1816 + ] + }, + { + "teal": 1668, + "source": 428, + "pc": [ + 1817, + 1818 + ] + }, + { + "teal": 1669, + "source": 428, + "pc": [ + 1819 + ] + }, + { + "teal": 1682, + "source": 433, + "pc": [ + 1820 + ] + }, + { + "teal": 1683, + "source": 433, + "pc": [ + 1821 + ] + }, + { + "teal": 1684, + "source": 433, + "pc": [ + 1822, + 1823 + ] + }, + { + "teal": 1685, + "source": 433, + "pc": [ + 1824, + 1825 + ] + }, + { + "teal": 1686, + "source": 433, + "pc": [ + 1826, + 1827 + ] + }, + { + "teal": 1690, + "source": 434, + "pc": [ + 1828 + ] + }, + { + "teal": 1691, + "source": 434, + "pc": [ + 1829 + ] + }, + { + "teal": 1692, + "source": 434, + "pc": [ + 1830, + 1831 + ] + }, + { + "teal": 1702, + "source": 436, + "pc": [ + 1832 + ] + }, + { + "teal": 1703, + "source": 436, + "pc": [ + 1833 + ] + }, + { + "teal": 1704, + "source": 436, + "pc": [ + 1834 + ] + }, + { + "teal": 1705, + "source": 436, + "pc": [ + 1835 + ] + }, + { + "teal": 1706, + "source": 436, + "pc": [ + 1836 + ] + }, + { + "teal": 1707, + "source": 436, + "pc": [ + 1837 + ] + }, + { + "teal": 1708, + "source": 436, + "pc": [ + 1838 + ] + }, + { + "teal": 1709, + "source": 436, + "pc": [ + 1839, + 1840, + 1841 + ] + }, + { + "teal": 1710, + "source": 436, + "pc": [ + 1842 + ] + }, + { + "teal": 1711, + "source": 436, + "pc": [ + 1843 + ] + }, + { + "teal": 1712, + "source": 436, + "pc": [ + 1844, + 1845 + ] + }, + { + "teal": 1713, + "source": 437, + "pc": [ + 1846, + 1847 + ] + }, + { + "teal": 1714, + "source": 437, + "pc": [ + 1848, + 1849 + ] + }, + { + "teal": 1715, + "source": 438, + "pc": [ + 1850, + 1851 + ] + }, + { + "teal": 1716, + "source": 438, + "pc": [ + 1852, + 1853 + ] + }, + { + "teal": 1717, + "source": 439, + "pc": [ + 1854, + 1855 + ] + }, + { + "teal": 1718, + "source": 439, + "pc": [ + 1856 + ] + }, + { + "teal": 1719, + "source": 439, + "pc": [ + 1857, + 1858 + ] + }, + { + "teal": 1720, + "source": 440, + "pc": [ + 1859 + ] + }, + { + "teal": 1721, + "source": 440, + "pc": [ + 1860, + 1861 + ] + }, + { + "teal": 1722, + "source": 440, + "pc": [ + 1862 + ] + }, + { + "teal": 1723, + "source": 440, + "pc": [ + 1863, + 1864 + ] + }, + { + "teal": 1724, + "source": 440, + "pc": [ + 1865 + ] + }, + { + "teal": 1725, + "source": 440, + "pc": [ + 1866, + 1867 + ] + }, + { + "teal": 1728, + "source": 433, + "pc": [ + 1868 + ] + }, + { + "teal": 1729, + "source": 433, + "pc": [ + 1869, + 1870 + ] + }, + { + "teal": 1732, + "source": 433, + "pc": [ + 1871 + ] + }, + { + "teal": 1736, + "source": 443, + "pc": [ + 1872 + ] + }, + { + "teal": 1743, + "source": 393, + "pc": [ + 1873, + 1874 + ] + }, + { + "teal": 1744, + "source": 393, + "pc": [ + 1875 + ] + }, + { + "teal": 1745, + "source": 393, + "pc": [ + 1876 + ] + }, + { + "teal": 1746, + "source": 393, + "pc": [ + 1877, + 1878 + ] + }, + { + "teal": 1747, + "source": 393, + "pc": [ + 1879, + 1880, + 1881 + ] + }, + { + "teal": 1751, + "source": 446, + "errorMessage": "account not found", + "pc": [ + 1882 + ] + }, + { + "teal": 1752, + "source": 387, + "pc": [ + 1883 + ] + }, + { + "teal": 1757, + "source": 457, + "pc": [ + 1884, + 1885 + ] + }, + { + "teal": 1760, + "source": 457, + "pc": [ + 1886, + 1887, + 1888 + ] + }, + { + "teal": 1761, + "source": 457, + "pc": [ + 1889 + ] + }, + { + "teal": 1762, + "source": 457, + "pc": [ + 1890 + ] + }, + { + "teal": 1763, + "source": 457, + "pc": [ + 1891, + 1892 + ] + }, + { + "teal": 1764, + "source": 457, + "pc": [ + 1893 + ] + }, + { + "teal": 1767, + "source": 457, + "errorMessage": "argument 0 (staker) for getStakerInfo must be a address", + "pc": [ + 1894 + ] + }, + { + "teal": 1770, + "source": 457, + "pc": [ + 1895, + 1896, + 1897 + ] + }, + { + "teal": 1771, + "source": 457, + "pc": [ + 1898 + ] + }, + { + "teal": 1772, + "source": 457, + "pc": [ + 1899 + ] + }, + { + "teal": 1773, + "source": 457, + "pc": [ + 1900 + ] + }, + { + "teal": 1774, + "source": 457, + "pc": [ + 1901 + ] + }, + { + "teal": 1784, + "source": 457, + "pc": [ + 1902, + 1903, + 1904 + ] + }, + { + "teal": 1787, + "source": 457, + "pc": [ + 1905, + 1906 + ] + }, + { + "teal": 1791, + "source": 458, + "pc": [ + 1907 + ] + }, + { + "teal": 1792, + "source": 458, + "pc": [ + 1908, + 1909 + ] + }, + { + "teal": 1797, + "source": 458, + "pc": [ + 1910, + 1911 + ] + }, + { + "teal": 1798, + "source": 458, + "pc": [ + 1912, + 1913 + ] + }, + { + "teal": 1799, + "source": 458, + "pc": [ + 1914 + ] + }, + { + "teal": 1800, + "source": 458, + "pc": [ + 1915, + 1916, + 1917 + ] + }, + { + "teal": 1805, + "source": 459, + "pc": [ + 1918, + 1919 + ] + }, + { + "teal": 1806, + "source": 459, + "pc": [ + 1920, + 1921 + ] + }, + { + "teal": 1807, + "source": 459, + "pc": [ + 1922 + ] + }, + { + "teal": 1808, + "source": 459, + "pc": [ + 1923, + 1924, + 1925 + ] + }, + { + "teal": 1813, + "source": 460, + "pc": [ + 1926 + ] + }, + { + "teal": 1814, + "source": 460, + "pc": [ + 1927 + ] + }, + { + "teal": 1815, + "source": 460, + "pc": [ + 1928, + 1929 + ] + }, + { + "teal": 1816, + "source": 460, + "pc": [ + 1930 + ] + }, + { + "teal": 1817, + "source": 460, + "pc": [ + 1931, + 1932 + ] + }, + { + "teal": 1818, + "source": 460, + "pc": [ + 1933, + 1934 + ] + }, + { + "teal": 1819, + "source": 460, + "pc": [ + 1935 + ] + }, + { + "teal": 1820, + "source": 460, + "pc": [ + 1936, + 1937 + ] + }, + { + "teal": 1821, + "source": 460, + "pc": [ + 1938, + 1939 + ] + }, + { + "teal": 1822, + "source": 460, + "pc": [ + 1940, + 1941 + ] + }, + { + "teal": 1823, + "source": 460, + "pc": [ + 1942, + 1943 + ] + }, + { + "teal": 1824, + "source": 460, + "pc": [ + 1944 + ] + }, + { + "teal": 1830, + "source": 462, + "pc": [ + 1945, + 1946 + ] + }, + { + "teal": 1831, + "source": 462, + "pc": [ + 1947 + ] + }, + { + "teal": 1832, + "source": 462, + "pc": [ + 1948 + ] + }, + { + "teal": 1833, + "source": 462, + "pc": [ + 1949 + ] + }, + { + "teal": 1834, + "source": 462, + "pc": [ + 1950 + ] + }, + { + "teal": 1835, + "source": 462, + "pc": [ + 1951, + 1952 + ] + }, + { + "teal": 1836, + "source": 462, + "pc": [ + 1953 + ] + }, + { + "teal": 1837, + "source": 462, + "pc": [ + 1954, + 1955 + ] + }, + { + "teal": 1838, + "source": 462, + "pc": [ + 1956 + ] + }, + { + "teal": 1839, + "source": 462, + "pc": [ + 1957, + 1958 + ] + }, + { + "teal": 1840, + "source": 462, + "pc": [ + 1959 + ] + }, + { + "teal": 1841, + "source": 462, + "pc": [ + 1960, + 1961, + 1962 + ] + }, + { + "teal": 1846, + "source": 463, + "pc": [ + 1963, + 1964 + ] + }, + { + "teal": 1847, + "source": 463, + "pc": [ + 1965 + ] + }, + { + "teal": 1848, + "source": 463, + "pc": [ + 1966 + ] + }, + { + "teal": 1849, + "source": 463, + "pc": [ + 1967 + ] + }, + { + "teal": 1850, + "source": 463, + "pc": [ + 1968 + ] + }, + { + "teal": 1851, + "source": 463, + "pc": [ + 1969, + 1970 + ] + }, + { + "teal": 1852, + "source": 463, + "pc": [ + 1971 + ] + }, + { + "teal": 1853, + "source": 463, + "pc": [ + 1972, + 1973, + 1974 + ] + }, + { + "teal": 1860, + "source": 458, + "pc": [ + 1975, + 1976 + ] + }, + { + "teal": 1861, + "source": 458, + "pc": [ + 1977 + ] + }, + { + "teal": 1862, + "source": 458, + "pc": [ + 1978 + ] + }, + { + "teal": 1863, + "source": 458, + "pc": [ + 1979, + 1980 + ] + }, + { + "teal": 1864, + "source": 458, + "pc": [ + 1981, + 1982, + 1983 + ] + }, + { + "teal": 1868, + "source": 466, + "errorMessage": "account not found", + "pc": [ + 1984 + ] + }, + { + "teal": 1872, + "source": 457, + "pc": [ + 1985, + 1986 + ] + }, + { + "teal": 1873, + "source": 457, + "pc": [ + 1987 + ] + }, + { + "teal": 1878, + "source": 479, + "pc": [ + 1988, + 1989, + 1990 + ] + }, + { + "teal": 1879, + "source": 479, + "pc": [ + 1991 + ] + }, + { + "teal": 1882, + "source": 479, + "pc": [ + 1992, + 1993, + 1994 + ] + }, + { + "teal": 1883, + "source": 479, + "pc": [ + 1995 + ] + }, + { + "teal": 1886, + "source": 479, + "pc": [ + 1996, + 1997, + 1998 + ] + }, + { + "teal": 1887, + "source": 479, + "pc": [ + 1999 + ] + }, + { + "teal": 1888, + "source": 479, + "pc": [ + 2000 + ] + }, + { + "teal": 1889, + "source": 479, + "pc": [ + 2001, + 2002 + ] + }, + { + "teal": 1890, + "source": 479, + "pc": [ + 2003 + ] + }, + { + "teal": 1893, + "source": 479, + "errorMessage": "argument 2 (staker) for payTokenReward must be a address", + "pc": [ + 2004 + ] + }, + { + "teal": 1896, + "source": 479, + "pc": [ + 2005, + 2006, + 2007 + ] + }, + { + "teal": 1897, + "source": 479, + "pc": [ + 2008 + ] + }, + { + "teal": 1898, + "source": 479, + "pc": [ + 2009 + ] + }, + { + "teal": 1911, + "source": 479, + "pc": [ + 2010, + 2011, + 2012 + ] + }, + { + "teal": 1918, + "source": 482, + "pc": [ + 2013, + 2014 + ] + }, + { + "teal": 1919, + "source": 482, + "pc": [ + 2015 + ] + }, + { + "teal": 1920, + "source": 482, + "pc": [ + 2016 + ] + }, + { + "teal": 1921, + "source": 482, + "pc": [ + 2017, + 2018 + ] + }, + { + "teal": 1922, + "source": 482, + "pc": [ + 2019 + ] + }, + { + "teal": 1923, + "source": 482, + "pc": [ + 2020 + ] + }, + { + "teal": 1926, + "source": 481, + "errorMessage": "this can only be called via the validator contract", + "pc": [ + 2021 + ] + }, + { + "teal": 1930, + "source": 485, + "pc": [ + 2022 + ] + }, + { + "teal": 1931, + "source": 485, + "pc": [ + 2023 + ] + }, + { + "teal": 1932, + "source": 485, + "pc": [ + 2024 + ] + }, + { + "teal": 1933, + "source": 485, + "pc": [ + 2025 + ] + }, + { + "teal": 1936, + "source": 485, + "errorMessage": "must be pool 1 in order to be called to pay out token rewards", + "pc": [ + 2026 + ] + }, + { + "teal": 1940, + "source": 486, + "pc": [ + 2027, + 2028 + ] + }, + { + "teal": 1941, + "source": 486, + "pc": [ + 2029 + ] + }, + { + "teal": 1942, + "source": 486, + "pc": [ + 2030 + ] + }, + { + "teal": 1945, + "source": 486, + "errorMessage": "can only claim token rewards from validator that has them", + "pc": [ + 2031 + ] + }, + { + "teal": 1953, + "source": 489, + "pc": [ + 2032 + ] + }, + { + "teal": 1954, + "source": 489, + "pc": [ + 2033, + 2034 + ] + }, + { + "teal": 1955, + "source": 489, + "pc": [ + 2035, + 2036 + ] + }, + { + "teal": 1959, + "source": 490, + "pc": [ + 2037, + 2038 + ] + }, + { + "teal": 1960, + "source": 490, + "pc": [ + 2039, + 2040 + ] + }, + { + "teal": 1964, + "source": 491, + "pc": [ + 2041, + 2042 + ] + }, + { + "teal": 1965, + "source": 491, + "pc": [ + 2043, + 2044 + ] + }, + { + "teal": 1969, + "source": 492, + "pc": [ + 2045, + 2046 + ] + }, + { + "teal": 1970, + "source": 492, + "pc": [ + 2047, + 2048 + ] + }, + { + "teal": 1973, + "source": 489, + "pc": [ + 2049 + ] + }, + { + "teal": 1974, + "source": 489, + "pc": [ + 2050, + 2051 + ] + }, + { + "teal": 1977, + "source": 489, + "pc": [ + 2052 + ] + }, + { + "teal": 1978, + "source": 479, + "pc": [ + 2053 + ] + }, + { + "teal": 1983, + "source": 505, + "pc": [ + 2054, + 2055, + 2056 + ] + }, + { + "teal": 1984, + "source": 505, + "pc": [ + 2057, + 2058, + 2059 + ] + }, + { + "teal": 1987, + "source": 505, + "pc": [ + 2060, + 2061, + 2062 + ] + }, + { + "teal": 1988, + "source": 505, + "pc": [ + 2063 + ] + }, + { + "teal": 1989, + "source": 505, + "pc": [ + 2064 + ] + }, + { + "teal": 2001, + "source": 505, + "pc": [ + 2065, + 2066, + 2067 + ] + }, + { + "teal": 2005, + "source": 506, + "pc": [ + 2068, + 2069, + 2070 + ] + }, + { + "teal": 2008, + "source": 506, + "errorMessage": "can only be called by owner or manager of validator", + "pc": [ + 2071 + ] + }, + { + "teal": 2012, + "source": 507, + "pc": [ + 2072, + 2073, + 2074, + 2075, + 2076, + 2077, + 2078, + 2079, + 2080, + 2081 + ] + }, + { + "teal": 2013, + "source": 507, + "pc": [ + 2082, + 2083 + ] + }, + { + "teal": 2014, + "source": 507, + "pc": [ + 2084 + ] + }, + { + "teal": 2015, + "source": 505, + "pc": [ + 2085 + ] + }, + { + "teal": 2020, + "source": 518, + "pc": [ + 2086, + 2087, + 2088 + ] + }, + { + "teal": 2021, + "source": 518, + "pc": [ + 2089 + ] + }, + { + "teal": 2022, + "source": 518, + "pc": [ + 2090 + ] + }, + { + "teal": 2033, + "source": 518, + "pc": [ + 2091, + 2092, + 2093 + ] + }, + { + "teal": 2036, + "source": 518, + "pc": [ + 2094, + 2095 + ] + }, + { + "teal": 2037, + "source": 518, + "pc": [ + 2096, + 2097 + ] + }, + { + "teal": 2044, + "source": 520, + "pc": [ + 2098 + ] + }, + { + "teal": 2045, + "source": 520, + "pc": [ + 2099 + ] + }, + { + "teal": 2046, + "source": 520, + "pc": [ + 2100, + 2101 + ] + }, + { + "teal": 2047, + "source": 520, + "pc": [ + 2102, + 2103 + ] + }, + { + "teal": 2048, + "source": 520, + "pc": [ + 2104, + 2105 + ] + }, + { + "teal": 2052, + "source": 521, + "pc": [ + 2106 + ] + }, + { + "teal": 2053, + "source": 521, + "pc": [ + 2107 + ] + }, + { + "teal": 2054, + "source": 521, + "pc": [ + 2108, + 2109 + ] + }, + { + "teal": 2058, + "source": 522, + "pc": [ + 2110 + ] + }, + { + "teal": 2059, + "source": 522, + "pc": [ + 2111 + ] + }, + { + "teal": 2060, + "source": 522, + "pc": [ + 2112 + ] + }, + { + "teal": 2061, + "source": 522, + "pc": [ + 2113, + 2114 + ] + }, + { + "teal": 2064, + "source": 520, + "pc": [ + 2115 + ] + }, + { + "teal": 2065, + "source": 520, + "pc": [ + 2116, + 2117 + ] + }, + { + "teal": 2068, + "source": 520, + "pc": [ + 2118 + ] + }, + { + "teal": 2069, + "source": 520, + "pc": [ + 2119, + 2120 + ] + }, + { + "teal": 2070, + "source": 520, + "pc": [ + 2121 + ] + }, + { + "teal": 2071, + "source": 520, + "pc": [ + 2122 + ] + }, + { + "teal": 2072, + "source": 520, + "pc": [ + 2123, + 2124 + ] + }, + { + "teal": 2073, + "source": 520, + "pc": [ + 2125, + 2126, + 2127 + ] + }, + { + "teal": 2074, + "source": 520, + "pc": [ + 2128, + 2129 + ] + }, + { + "teal": 2078, + "source": 529, + "pc": [ + 2130, + 2131 + ] + }, + { + "teal": 2079, + "source": 529, + "pc": [ + 2132, + 2133, + 2134 + ] + }, + { + "teal": 2080, + "source": 529, + "pc": [ + 2135 + ] + }, + { + "teal": 2081, + "source": 529, + "pc": [ + 2136, + 2137 + ] + }, + { + "teal": 2085, + "source": 530, + "pc": [ + 2138, + 2139 + ] + }, + { + "teal": 2086, + "source": 530, + "pc": [ + 2140, + 2141 + ] + }, + { + "teal": 2090, + "source": 531, + "pc": [ + 2142, + 2143 + ] + }, + { + "teal": 2091, + "source": 531, + "pc": [ + 2144, + 2145 + ] + }, + { + "teal": 2092, + "source": 531, + "pc": [ + 2146, + 2147 + ] + }, + { + "teal": 2093, + "source": 531, + "pc": [ + 2148 + ] + }, + { + "teal": 2094, + "source": 531, + "pc": [ + 2149 + ] + }, + { + "teal": 2095, + "source": 531, + "pc": [ + 2150, + 2151 + ] + }, + { + "teal": 2100, + "source": 534, + "pc": [ + 2152, + 2153, + 2154 + ] + }, + { + "teal": 2101, + "source": 534, + "pc": [ + 2155, + 2156 + ] + }, + { + "teal": 2102, + "source": 534, + "pc": [ + 2157 + ] + }, + { + "teal": 2103, + "source": 534, + "pc": [ + 2158 + ] + }, + { + "teal": 2104, + "source": 534, + "pc": [ + 2159 + ] + }, + { + "teal": 2105, + "source": 534, + "pc": [ + 2160, + 2161, + 2162 + ] + }, + { + "teal": 2110, + "source": 535, + "pc": [ + 2163, + 2164 + ] + }, + { + "teal": 2111, + "source": 535, + "pc": [ + 2165 + ] + }, + { + "teal": 2112, + "source": 535, + "pc": [ + 2166, + 2167 + ] + }, + { + "teal": 2113, + "source": 535, + "pc": [ + 2168 + ] + }, + { + "teal": 2114, + "source": 535, + "pc": [ + 2169, + 2170 + ] + }, + { + "teal": 2115, + "source": 535, + "pc": [ + 2171 + ] + }, + { + "teal": 2116, + "source": 535, + "pc": [ + 2172 + ] + }, + { + "teal": 2117, + "source": 535, + "pc": [ + 2173, + 2174 + ] + }, + { + "teal": 2121, + "source": 539, + "pc": [ + 2175, + 2176 + ] + }, + { + "teal": 2122, + "source": 539, + "pc": [ + 2177, + 2178 + ] + }, + { + "teal": 2123, + "source": 539, + "pc": [ + 2179 + ] + }, + { + "teal": 2126, + "source": 539, + "errorMessage": "can't call epochBalanceUpdate in same epoch as prior call", + "pc": [ + 2180 + ] + }, + { + "teal": 2131, + "source": 542, + "pc": [ + 2181, + 2182, + 2183 + ] + }, + { + "teal": 2135, + "source": 545, + "pc": [ + 2184, + 2185 + ] + }, + { + "teal": 2136, + "source": 545, + "pc": [ + 2186, + 2187 + ] + }, + { + "teal": 2137, + "source": 545, + "pc": [ + 2188 + ] + }, + { + "teal": 2141, + "source": 546, + "pc": [ + 2189, + 2190 + ] + }, + { + "teal": 2142, + "source": 546, + "pc": [ + 2191 + ] + }, + { + "teal": 2143, + "source": 546, + "pc": [ + 2192 + ] + }, + { + "teal": 2144, + "source": 546, + "pc": [ + 2193 + ] + }, + { + "teal": 2145, + "source": 546, + "pc": [ + 2194, + 2195 + ] + }, + { + "teal": 2146, + "source": 546, + "pc": [ + 2196 + ] + }, + { + "teal": 2147, + "source": 546, + "pc": [ + 2197 + ] + }, + { + "teal": 2151, + "source": 551, + "pc": [ + 2198, + 2199 + ] + }, + { + "teal": 2152, + "source": 551, + "pc": [ + 2200, + 2201, + 2202 + ] + }, + { + "teal": 2153, + "source": 551, + "pc": [ + 2203 + ] + }, + { + "teal": 2154, + "source": 551, + "pc": [ + 2204 + ] + }, + { + "teal": 2155, + "source": 551, + "pc": [ + 2205 + ] + }, + { + "teal": 2156, + "source": 551, + "pc": [ + 2206, + 2207 + ] + }, + { + "teal": 2160, + "source": 552, + "pc": [ + 2208, + 2209, + 2210 + ] + }, + { + "teal": 2161, + "source": 552, + "pc": [ + 2211, + 2212 + ] + }, + { + "teal": 2165, + "source": 553, + "pc": [ + 2213, + 2214 + ] + }, + { + "teal": 2166, + "source": 553, + "pc": [ + 2215, + 2216 + ] + }, + { + "teal": 2171, + "source": 558, + "pc": [ + 2217, + 2218 + ] + }, + { + "teal": 2172, + "source": 558, + "pc": [ + 2219, + 2220, + 2221 + ] + }, + { + "teal": 2178, + "source": 559, + "pc": [ + 2222 + ] + }, + { + "teal": 2179, + "source": 559, + "pc": [ + 2223 + ] + }, + { + "teal": 2180, + "source": 559, + "pc": [ + 2224 + ] + }, + { + "teal": 2181, + "source": 559, + "pc": [ + 2225 + ] + }, + { + "teal": 2182, + "source": 559, + "pc": [ + 2226, + 2227, + 2228 + ] + }, + { + "teal": 2190, + "source": 561, + "pc": [ + 2229 + ] + }, + { + "teal": 2191, + "source": 561, + "pc": [ + 2230 + ] + }, + { + "teal": 2192, + "source": 561, + "pc": [ + 2231, + 2232 + ] + }, + { + "teal": 2193, + "source": 561, + "pc": [ + 2233, + 2234 + ] + }, + { + "teal": 2194, + "source": 561, + "pc": [ + 2235, + 2236 + ] + }, + { + "teal": 2198, + "source": 562, + "pc": [ + 2237 + ] + }, + { + "teal": 2199, + "source": 562, + "pc": [ + 2238 + ] + }, + { + "teal": 2200, + "source": 562, + "pc": [ + 2239, + 2240 + ] + }, + { + "teal": 2204, + "source": 563, + "pc": [ + 2241 + ] + }, + { + "teal": 2205, + "source": 563, + "pc": [ + 2242 + ] + }, + { + "teal": 2206, + "source": 563, + "pc": [ + 2243 + ] + }, + { + "teal": 2207, + "source": 563, + "pc": [ + 2244, + 2245 + ] + }, + { + "teal": 2208, + "source": 563, + "pc": [ + 2246, + 2247, + 2248, + 2249, + 2250, + 2251, + 2252, + 2253, + 2254, + 2255 + ] + }, + { + "teal": 2209, + "source": 563, + "pc": [ + 2256, + 2257 + ] + }, + { + "teal": 2212, + "source": 561, + "pc": [ + 2258 + ] + }, + { + "teal": 2213, + "source": 561, + "pc": [ + 2259, + 2260 + ] + }, + { + "teal": 2216, + "source": 561, + "pc": [ + 2261 + ] + }, + { + "teal": 2217, + "source": 561, + "pc": [ + 2262, + 2263 + ] + }, + { + "teal": 2218, + "source": 561, + "pc": [ + 2264 + ] + }, + { + "teal": 2219, + "source": 561, + "pc": [ + 2265 + ] + }, + { + "teal": 2220, + "source": 561, + "pc": [ + 2266, + 2267 + ] + }, + { + "teal": 2221, + "source": 561, + "pc": [ + 2268, + 2269, + 2270 + ] + }, + { + "teal": 2222, + "source": 561, + "pc": [ + 2271 + ] + }, + { + "teal": 2223, + "source": 561, + "pc": [ + 2272, + 2273 + ] + }, + { + "teal": 2227, + "source": 565, + "pc": [ + 2274, + 2275 + ] + }, + { + "teal": 2228, + "source": 565, + "pc": [ + 2276, + 2277 + ] + }, + { + "teal": 2229, + "source": 565, + "pc": [ + 2278 + ] + }, + { + "teal": 2230, + "source": 565, + "pc": [ + 2279, + 2280 + ] + }, + { + "teal": 2236, + "source": 570, + "pc": [ + 2281 + ] + }, + { + "teal": 2237, + "source": 570, + "pc": [ + 2282 + ] + }, + { + "teal": 2238, + "source": 570, + "pc": [ + 2283 + ] + }, + { + "teal": 2239, + "source": 570, + "pc": [ + 2284 + ] + }, + { + "teal": 2240, + "source": 570, + "pc": [ + 2285, + 2286, + 2287 + ] + }, + { + "teal": 2248, + "source": 571, + "pc": [ + 2288 + ] + }, + { + "teal": 2249, + "source": 571, + "pc": [ + 2289 + ] + }, + { + "teal": 2250, + "source": 571, + "pc": [ + 2290, + 2291 + ] + }, + { + "teal": 2251, + "source": 571, + "pc": [ + 2292, + 2293 + ] + }, + { + "teal": 2252, + "source": 571, + "pc": [ + 2294, + 2295 + ] + }, + { + "teal": 2256, + "source": 572, + "pc": [ + 2296 + ] + }, + { + "teal": 2257, + "source": 572, + "pc": [ + 2297 + ] + }, + { + "teal": 2258, + "source": 572, + "pc": [ + 2298, + 2299 + ] + }, + { + "teal": 2262, + "source": 573, + "pc": [ + 2300 + ] + }, + { + "teal": 2263, + "source": 573, + "pc": [ + 2301 + ] + }, + { + "teal": 2264, + "source": 573, + "pc": [ + 2302 + ] + }, + { + "teal": 2265, + "source": 573, + "pc": [ + 2303, + 2304 + ] + }, + { + "teal": 2268, + "source": 571, + "pc": [ + 2305 + ] + }, + { + "teal": 2269, + "source": 571, + "pc": [ + 2306, + 2307 + ] + }, + { + "teal": 2272, + "source": 571, + "pc": [ + 2308 + ] + }, + { + "teal": 2273, + "source": 571, + "pc": [ + 2309, + 2310 + ] + }, + { + "teal": 2274, + "source": 571, + "pc": [ + 2311 + ] + }, + { + "teal": 2275, + "source": 571, + "pc": [ + 2312 + ] + }, + { + "teal": 2276, + "source": 571, + "pc": [ + 2313, + 2314 + ] + }, + { + "teal": 2277, + "source": 571, + "pc": [ + 2315, + 2316, + 2317 + ] + }, + { + "teal": 2278, + "source": 571, + "pc": [ + 2318, + 2319 + ] + }, + { + "teal": 2279, + "source": 570, + "pc": [ + 2320, + 2321, + 2322 + ] + }, + { + "teal": 2287, + "source": 577, + "pc": [ + 2323 + ] + }, + { + "teal": 2288, + "source": 577, + "pc": [ + 2324 + ] + }, + { + "teal": 2289, + "source": 577, + "pc": [ + 2325, + 2326 + ] + }, + { + "teal": 2290, + "source": 577, + "pc": [ + 2327, + 2328 + ] + }, + { + "teal": 2291, + "source": 577, + "pc": [ + 2329, + 2330 + ] + }, + { + "teal": 2295, + "source": 578, + "pc": [ + 2331, + 2332 + ] + }, + { + "teal": 2296, + "source": 578, + "pc": [ + 2333, + 2334 + ] + }, + { + "teal": 2300, + "source": 579, + "pc": [ + 2335 + ] + }, + { + "teal": 2301, + "source": 579, + "pc": [ + 2336 + ] + }, + { + "teal": 2302, + "source": 579, + "pc": [ + 2337 + ] + }, + { + "teal": 2303, + "source": 579, + "pc": [ + 2338 + ] + }, + { + "teal": 2304, + "source": 579, + "pc": [ + 2339 + ] + }, + { + "teal": 2305, + "source": 579, + "pc": [ + 2340 + ] + }, + { + "teal": 2306, + "source": 579, + "pc": [ + 2341 + ] + }, + { + "teal": 2307, + "source": 579, + "pc": [ + 2342, + 2343, + 2344 + ] + }, + { + "teal": 2308, + "source": 579, + "pc": [ + 2345 + ] + }, + { + "teal": 2309, + "source": 579, + "pc": [ + 2346 + ] + }, + { + "teal": 2310, + "source": 579, + "pc": [ + 2347, + 2348 + ] + }, + { + "teal": 2313, + "source": 577, + "pc": [ + 2349 + ] + }, + { + "teal": 2314, + "source": 577, + "pc": [ + 2350, + 2351 + ] + }, + { + "teal": 2317, + "source": 577, + "pc": [ + 2352 + ] + }, + { + "teal": 2318, + "source": 577, + "pc": [ + 2353, + 2354 + ] + }, + { + "teal": 2319, + "source": 577, + "pc": [ + 2355 + ] + }, + { + "teal": 2320, + "source": 577, + "pc": [ + 2356 + ] + }, + { + "teal": 2321, + "source": 577, + "pc": [ + 2357, + 2358 + ] + }, + { + "teal": 2322, + "source": 577, + "pc": [ + 2359, + 2360, + 2361 + ] + }, + { + "teal": 2323, + "source": 577, + "pc": [ + 2362, + 2363 + ] + }, + { + "teal": 2333, + "source": 586, + "pc": [ + 2364 + ] + }, + { + "teal": 2334, + "source": 586, + "pc": [ + 2365 + ] + }, + { + "teal": 2335, + "source": 586, + "pc": [ + 2366, + 2367 + ] + }, + { + "teal": 2336, + "source": 586, + "pc": [ + 2368, + 2369, + 2370, + 2371, + 2372, + 2373 + ] + }, + { + "teal": 2337, + "source": 586, + "pc": [ + 2374, + 2375 + ] + }, + { + "teal": 2341, + "source": 587, + "pc": [ + 2376 + ] + }, + { + "teal": 2342, + "source": 587, + "pc": [ + 2377 + ] + }, + { + "teal": 2343, + "source": 587, + "pc": [ + 2378, + 2379 + ] + }, + { + "teal": 2347, + "source": 588, + "pc": [ + 2380 + ] + }, + { + "teal": 2348, + "source": 588, + "pc": [ + 2381 + ] + }, + { + "teal": 2349, + "source": 588, + "pc": [ + 2382 + ] + }, + { + "teal": 2350, + "source": 588, + "pc": [ + 2383, + 2384 + ] + }, + { + "teal": 2353, + "source": 586, + "pc": [ + 2385 + ] + }, + { + "teal": 2354, + "source": 586, + "pc": [ + 2386, + 2387 + ] + }, + { + "teal": 2357, + "source": 586, + "pc": [ + 2388 + ] + }, + { + "teal": 2358, + "source": 586, + "pc": [ + 2389, + 2390 + ] + }, + { + "teal": 2359, + "source": 586, + "pc": [ + 2391 + ] + }, + { + "teal": 2360, + "source": 586, + "pc": [ + 2392 + ] + }, + { + "teal": 2361, + "source": 586, + "pc": [ + 2393, + 2394 + ] + }, + { + "teal": 2362, + "source": 586, + "pc": [ + 2395, + 2396, + 2397 + ] + }, + { + "teal": 2363, + "source": 586, + "pc": [ + 2398, + 2399 + ] + }, + { + "teal": 2367, + "source": 590, + "pc": [ + 2400, + 2401 + ] + }, + { + "teal": 2368, + "source": 590, + "pc": [ + 2402, + 2403, + 2404 + ] + }, + { + "teal": 2369, + "source": 590, + "pc": [ + 2405 + ] + }, + { + "teal": 2370, + "source": 590, + "pc": [ + 2406, + 2407 + ] + }, + { + "teal": 2374, + "source": 596, + "pc": [ + 2408, + 2409 + ] + }, + { + "teal": 2375, + "source": 596, + "pc": [ + 2410, + 2411 + ] + }, + { + "teal": 2376, + "source": 596, + "pc": [ + 2412 + ] + }, + { + "teal": 2377, + "source": 596, + "pc": [ + 2413, + 2414 + ] + }, + { + "teal": 2378, + "source": 596, + "pc": [ + 2415 + ] + }, + { + "teal": 2379, + "source": 596, + "pc": [ + 2416 + ] + }, + { + "teal": 2380, + "source": 596, + "pc": [ + 2417, + 2418 + ] + }, + { + "teal": 2381, + "source": 596, + "pc": [ + 2419, + 2420 + ] + }, + { + "teal": 2382, + "source": 596, + "pc": [ + 2421 + ] + }, + { + "teal": 2383, + "source": 596, + "pc": [ + 2422 + ] + }, + { + "teal": 2384, + "source": 596, + "pc": [ + 2423, + 2424 + ] + }, + { + "teal": 2388, + "source": 597, + "pc": [ + 2425 + ] + }, + { + "teal": 2389, + "source": 597, + "pc": [ + 2426, + 2427 + ] + }, + { + "teal": 2393, + "source": 598, + "pc": [ + 2428, + 2429, + 2430 + ] + }, + { + "teal": 2394, + "source": 598, + "pc": [ + 2431, + 2432 + ] + }, + { + "teal": 2399, + "source": 606, + "pc": [ + 2433, + 2434 + ] + }, + { + "teal": 2400, + "source": 606, + "pc": [ + 2435, + 2436, + 2437 + ] + }, + { + "teal": 2401, + "source": 606, + "pc": [ + 2438 + ] + }, + { + "teal": 2402, + "source": 606, + "pc": [ + 2439, + 2440 + ] + }, + { + "teal": 2403, + "source": 606, + "pc": [ + 2441 + ] + }, + { + "teal": 2404, + "source": 606, + "pc": [ + 2442, + 2443, + 2444 + ] + }, + { + "teal": 2409, + "source": 607, + "pc": [ + 2445 + ] + }, + { + "teal": 2410, + "source": 607, + "pc": [ + 2446, + 2447 + ] + }, + { + "teal": 2415, + "source": 613, + "pc": [ + 2448 + ] + }, + { + "teal": 2416, + "source": 613, + "pc": [ + 2449, + 2450 + ] + }, + { + "teal": 2420, + "source": 614, + "pc": [ + 2451 + ] + }, + { + "teal": 2421, + "source": 614, + "pc": [ + 2452, + 2453 + ] + }, + { + "teal": 2425, + "source": 615, + "pc": [ + 2454 + ] + }, + { + "teal": 2426, + "source": 615, + "pc": [ + 2455, + 2456 + ] + }, + { + "teal": 2430, + "source": 616, + "pc": [ + 2457 + ] + }, + { + "teal": 2431, + "source": 616, + "pc": [ + 2458, + 2459 + ] + }, + { + "teal": 2436, + "source": 617, + "pc": [ + 2460, + 2461 + ] + }, + { + "teal": 2437, + "source": 617, + "pc": [ + 2462, + 2463, + 2464 + ] + }, + { + "teal": 2443, + "source": 619, + "pc": [ + 2465, + 2466 + ] + }, + { + "teal": 2444, + "source": 619, + "pc": [ + 2467, + 2468 + ] + }, + { + "teal": 2445, + "source": 619, + "pc": [ + 2469, + 2470, + 2471 + ] + }, + { + "teal": 2446, + "source": 619, + "pc": [ + 2472 + ] + }, + { + "teal": 2447, + "source": 619, + "pc": [ + 2473, + 2474 + ] + }, + { + "teal": 2448, + "source": 619, + "pc": [ + 2475 + ] + }, + { + "teal": 2449, + "source": 619, + "pc": [ + 2476, + 2477 + ] + }, + { + "teal": 2450, + "source": 619, + "pc": [ + 2478 + ] + }, + { + "teal": 2451, + "source": 618, + "pc": [ + 2479, + 2480 + ] + }, + { + "teal": 2456, + "source": 623, + "pc": [ + 2481, + 2482 + ] + }, + { + "teal": 2457, + "source": 623, + "pc": [ + 2483, + 2484 + ] + }, + { + "teal": 2458, + "source": 623, + "pc": [ + 2485, + 2486, + 2487 + ] + }, + { + "teal": 2459, + "source": 623, + "pc": [ + 2488 + ] + }, + { + "teal": 2460, + "source": 623, + "pc": [ + 2489 + ] + }, + { + "teal": 2461, + "source": 623, + "pc": [ + 2490, + 2491, + 2492 + ] + }, + { + "teal": 2466, + "source": 629, + "pc": [ + 2493, + 2494 + ] + }, + { + "teal": 2467, + "source": 629, + "pc": [ + 2495 + ] + }, + { + "teal": 2468, + "source": 629, + "pc": [ + 2496 + ] + }, + { + "teal": 2469, + "source": 629, + "pc": [ + 2497 + ] + }, + { + "teal": 2470, + "source": 629, + "pc": [ + 2498 + ] + }, + { + "teal": 2471, + "source": 629, + "pc": [ + 2499 + ] + }, + { + "teal": 2472, + "source": 629, + "pc": [ + 2500, + 2501 + ] + }, + { + "teal": 2473, + "source": 629, + "pc": [ + 2502 + ] + }, + { + "teal": 2474, + "source": 629, + "pc": [ + 2503 + ] + }, + { + "teal": 2475, + "source": 629, + "pc": [ + 2504, + 2505 + ] + }, + { + "teal": 2476, + "source": 629, + "pc": [ + 2506 + ] + }, + { + "teal": 2477, + "source": 629, + "pc": [ + 2507 + ] + }, + { + "teal": 2478, + "source": 629, + "pc": [ + 2508, + 2509 + ] + }, + { + "teal": 2482, + "source": 632, + "pc": [ + 2510, + 2511 + ] + }, + { + "teal": 2483, + "source": 632, + "pc": [ + 2512, + 2513, + 2514 + ] + }, + { + "teal": 2484, + "source": 632, + "pc": [ + 2515 + ] + }, + { + "teal": 2485, + "source": 632, + "pc": [ + 2516, + 2517 + ] + }, + { + "teal": 2486, + "source": 632, + "pc": [ + 2518 + ] + }, + { + "teal": 2487, + "source": 632, + "pc": [ + 2519 + ] + }, + { + "teal": 2488, + "source": 632, + "pc": [ + 2520, + 2521 + ] + }, + { + "teal": 2489, + "source": 632, + "pc": [ + 2522 + ] + }, + { + "teal": 2490, + "source": 632, + "pc": [ + 2523 + ] + }, + { + "teal": 2491, + "source": 632, + "pc": [ + 2524 + ] + }, + { + "teal": 2492, + "source": 632, + "pc": [ + 2525 + ] + }, + { + "teal": 2493, + "source": 632, + "pc": [ + 2526 + ] + }, + { + "teal": 2496, + "source": 632, + "errorMessage": "wideRatio failed", + "pc": [ + 2527 + ] + }, + { + "teal": 2497, + "source": 632, + "pc": [ + 2528, + 2529 + ] + }, + { + "teal": 2505, + "source": 635, + "pc": [ + 2530, + 2531 + ] + }, + { + "teal": 2506, + "source": 635, + "pc": [ + 2532 + ] + }, + { + "teal": 2507, + "source": 635, + "pc": [ + 2533 + ] + }, + { + "teal": 2508, + "source": 635, + "pc": [ + 2534, + 2535, + 2536 + ] + }, + { + "teal": 2514, + "source": 640, + "pc": [ + 2537, + 2538 + ] + }, + { + "teal": 2515, + "source": 640, + "pc": [ + 2539, + 2540 + ] + }, + { + "teal": 2516, + "source": 640, + "pc": [ + 2541 + ] + }, + { + "teal": 2517, + "source": 640, + "pc": [ + 2542, + 2543, + 2544 + ] + }, + { + "teal": 2522, + "source": 641, + "pc": [ + 2545, + 2546, + 2547, + 2548, + 2549, + 2550, + 2551, + 2552, + 2553, + 2554, + 2555, + 2556, + 2557, + 2558, + 2559, + 2560, + 2561, + 2562, + 2563, + 2564, + 2565, + 2566, + 2567, + 2568 + ] + }, + { + "teal": 2523, + "source": 641, + "pc": [ + 2569 + ] + }, + { + "teal": 2527, + "source": 642, + "pc": [ + 2570 + ] + }, + { + "teal": 2535, + "source": 646, + "pc": [ + 2571, + 2572 + ] + }, + { + "teal": 2536, + "source": 646, + "pc": [ + 2573, + 2574, + 2575 + ] + }, + { + "teal": 2541, + "source": 649, + "pc": [ + 2576, + 2577 + ] + }, + { + "teal": 2542, + "source": 649, + "pc": [ + 2578, + 2579 + ] + }, + { + "teal": 2543, + "source": 649, + "pc": [ + 2580 + ] + }, + { + "teal": 2544, + "source": 649, + "pc": [ + 2581 + ] + }, + { + "teal": 2545, + "source": 649, + "pc": [ + 2582, + 2583 + ] + }, + { + "teal": 2546, + "source": 649, + "pc": [ + 2584, + 2585, + 2586 + ] + }, + { + "teal": 2547, + "source": 649, + "pc": [ + 2587 + ] + }, + { + "teal": 2548, + "source": 649, + "pc": [ + 2588 + ] + }, + { + "teal": 2549, + "source": 649, + "pc": [ + 2589 + ] + }, + { + "teal": 2550, + "source": 649, + "pc": [ + 2590 + ] + }, + { + "teal": 2551, + "source": 649, + "pc": [ + 2591 + ] + }, + { + "teal": 2552, + "source": 649, + "pc": [ + 2592 + ] + }, + { + "teal": 2555, + "source": 649, + "errorMessage": "wideRatio failed", + "pc": [ + 2593 + ] + }, + { + "teal": 2556, + "source": 649, + "pc": [ + 2594, + 2595 + ] + }, + { + "teal": 2560, + "source": 651, + "pc": [ + 2596, + 2597 + ] + }, + { + "teal": 2561, + "source": 651, + "pc": [ + 2598, + 2599 + ] + }, + { + "teal": 2562, + "source": 651, + "pc": [ + 2600 + ] + }, + { + "teal": 2563, + "source": 651, + "pc": [ + 2601, + 2602 + ] + }, + { + "teal": 2571, + "source": 652, + "pc": [ + 2603 + ] + }, + { + "teal": 2572, + "source": 652, + "pc": [ + 2604 + ] + }, + { + "teal": 2573, + "source": 652, + "pc": [ + 2605, + 2606 + ] + }, + { + "teal": 2577, + "source": 653, + "pc": [ + 2607, + 2608 + ] + }, + { + "teal": 2578, + "source": 653, + "pc": [ + 2609, + 2610 + ] + }, + { + "teal": 2582, + "source": 654, + "pc": [ + 2611, + 2612, + 2613 + ] + }, + { + "teal": 2583, + "source": 654, + "pc": [ + 2614, + 2615 + ] + }, + { + "teal": 2587, + "source": 655, + "pc": [ + 2616, + 2617, + 2618, + 2619, + 2620, + 2621, + 2622, + 2623, + 2624, + 2625, + 2626, + 2627, + 2628, + 2629, + 2630, + 2631, + 2632, + 2633, + 2634, + 2635, + 2636, + 2637, + 2638, + 2639, + 2640, + 2641, + 2642, + 2643, + 2644, + 2645, + 2646, + 2647, + 2648, + 2649, + 2650, + 2651 + ] + }, + { + "teal": 2588, + "source": 655, + "pc": [ + 2652, + 2653 + ] + }, + { + "teal": 2591, + "source": 652, + "pc": [ + 2654 + ] + }, + { + "teal": 2592, + "source": 652, + "pc": [ + 2655, + 2656 + ] + }, + { + "teal": 2595, + "source": 652, + "pc": [ + 2657 + ] + }, + { + "teal": 2599, + "source": 658, + "pc": [ + 2658, + 2659 + ] + }, + { + "teal": 2600, + "source": 658, + "pc": [ + 2660, + 2661 + ] + }, + { + "teal": 2601, + "source": 646, + "pc": [ + 2662, + 2663, + 2664 + ] + }, + { + "teal": 2606, + "source": 659, + "pc": [ + 2665, + 2666 + ] + }, + { + "teal": 2607, + "source": 659, + "pc": [ + 2667, + 2668, + 2669 + ] + }, + { + "teal": 2608, + "source": 659, + "pc": [ + 2670 + ] + }, + { + "teal": 2609, + "source": 659, + "pc": [ + 2671 + ] + }, + { + "teal": 2610, + "source": 659, + "pc": [ + 2672 + ] + }, + { + "teal": 2611, + "source": 659, + "pc": [ + 2673, + 2674, + 2675 + ] + }, + { + "teal": 2619, + "source": 663, + "pc": [ + 2676, + 2677 + ] + }, + { + "teal": 2620, + "source": 663, + "pc": [ + 2678, + 2679 + ] + }, + { + "teal": 2621, + "source": 663, + "pc": [ + 2680, + 2681, + 2682 + ] + }, + { + "teal": 2622, + "source": 663, + "pc": [ + 2683 + ] + }, + { + "teal": 2623, + "source": 662, + "pc": [ + 2684 + ] + }, + { + "teal": 2624, + "source": 662, + "pc": [ + 2685 + ] + }, + { + "teal": 2625, + "source": 664, + "pc": [ + 2686, + 2687 + ] + }, + { + "teal": 2626, + "source": 662, + "pc": [ + 2688 + ] + }, + { + "teal": 2627, + "source": 662, + "pc": [ + 2689 + ] + }, + { + "teal": 2628, + "source": 662, + "pc": [ + 2690 + ] + }, + { + "teal": 2629, + "source": 662, + "pc": [ + 2691 + ] + }, + { + "teal": 2630, + "source": 662, + "pc": [ + 2692 + ] + }, + { + "teal": 2633, + "source": 662, + "errorMessage": "wideRatio failed", + "pc": [ + 2693 + ] + }, + { + "teal": 2634, + "source": 662, + "pc": [ + 2694, + 2695 + ] + }, + { + "teal": 2638, + "source": 668, + "pc": [ + 2696, + 2697 + ] + }, + { + "teal": 2639, + "source": 668, + "pc": [ + 2698, + 2699 + ] + }, + { + "teal": 2640, + "source": 668, + "pc": [ + 2700 + ] + }, + { + "teal": 2641, + "source": 668, + "pc": [ + 2701, + 2702 + ] + }, + { + "teal": 2646, + "source": 675, + "pc": [ + 2703, + 2704 + ] + }, + { + "teal": 2647, + "source": 675, + "pc": [ + 2705 + ] + }, + { + "teal": 2648, + "source": 675, + "pc": [ + 2706 + ] + }, + { + "teal": 2649, + "source": 675, + "pc": [ + 2707, + 2708, + 2709 + ] + }, + { + "teal": 2654, + "source": 678, + "pc": [ + 2710 + ] + }, + { + "teal": 2655, + "source": 678, + "pc": [ + 2711, + 2712 + ] + }, + { + "teal": 2661, + "source": 680, + "pc": [ + 2713, + 2714 + ] + }, + { + "teal": 2662, + "source": 680, + "pc": [ + 2715, + 2716, + 2717 + ] + }, + { + "teal": 2663, + "source": 680, + "pc": [ + 2718, + 2719 + ] + }, + { + "teal": 2664, + "source": 680, + "pc": [ + 2720, + 2721, + 2722 + ] + }, + { + "teal": 2665, + "source": 680, + "pc": [ + 2723 + ] + }, + { + "teal": 2666, + "source": 680, + "pc": [ + 2724 + ] + }, + { + "teal": 2667, + "source": 680, + "pc": [ + 2725, + 2726, + 2727 + ] + }, + { + "teal": 2668, + "source": 681, + "pc": [ + 2728, + 2729 + ] + }, + { + "teal": 2669, + "source": 681, + "pc": [ + 2730, + 2731, + 2732 + ] + }, + { + "teal": 2670, + "source": 681, + "pc": [ + 2733, + 2734 + ] + }, + { + "teal": 2671, + "source": 681, + "pc": [ + 2735 + ] + }, + { + "teal": 2672, + "source": 681, + "pc": [ + 2736, + 2737 + ] + }, + { + "teal": 2673, + "source": 681, + "pc": [ + 2738, + 2739, + 2740 + ] + }, + { + "teal": 2674, + "source": 681, + "pc": [ + 2741, + 2742 + ] + }, + { + "teal": 2675, + "source": 681, + "pc": [ + 2743 + ] + }, + { + "teal": 2676, + "source": 681, + "pc": [ + 2744 + ] + }, + { + "teal": 2677, + "source": 681, + "pc": [ + 2745, + 2746 + ] + }, + { + "teal": 2678, + "source": 681, + "pc": [ + 2747 + ] + }, + { + "teal": 2679, + "source": 680, + "pc": [ + 2748 + ] + }, + { + "teal": 2682, + "source": 679, + "pc": [ + 2749, + 2750, + 2751 + ] + }, + { + "teal": 2687, + "source": 683, + "pc": [ + 2752, + 2753 + ] + }, + { + "teal": 2688, + "source": 683, + "pc": [ + 2754, + 2755 + ] + }, + { + "teal": 2689, + "source": 683, + "pc": [ + 2756 + ] + }, + { + "teal": 2690, + "source": 683, + "pc": [ + 2757, + 2758, + 2759 + ] + }, + { + "teal": 2691, + "source": 683, + "pc": [ + 2760, + 2761 + ] + }, + { + "teal": 2692, + "source": 683, + "pc": [ + 2762, + 2763, + 2764 + ] + }, + { + "teal": 2695, + "source": 683, + "pc": [ + 2765, + 2766 + ] + }, + { + "teal": 2698, + "source": 683, + "pc": [ + 2767, + 2768 + ] + }, + { + "teal": 2706, + "source": 684, + "pc": [ + 2769 + ] + }, + { + "teal": 2707, + "source": 684, + "pc": [ + 2770 + ] + }, + { + "teal": 2708, + "source": 684, + "pc": [ + 2771, + 2772 + ] + }, + { + "teal": 2712, + "source": 685, + "pc": [ + 2773, + 2774 + ] + }, + { + "teal": 2713, + "source": 685, + "pc": [ + 2775, + 2776 + ] + }, + { + "teal": 2717, + "source": 686, + "pc": [ + 2777, + 2778 + ] + }, + { + "teal": 2718, + "source": 686, + "pc": [ + 2779, + 2780, + 2781 + ] + }, + { + "teal": 2719, + "source": 686, + "pc": [ + 2782, + 2783 + ] + }, + { + "teal": 2723, + "source": 687, + "pc": [ + 2784, + 2785, + 2786, + 2787, + 2788, + 2789, + 2790, + 2791, + 2792, + 2793, + 2794, + 2795, + 2796, + 2797, + 2798, + 2799, + 2800, + 2801, + 2802, + 2803, + 2804, + 2805, + 2806, + 2807, + 2808, + 2809, + 2810, + 2811, + 2812, + 2813, + 2814, + 2815, + 2816, + 2817, + 2818, + 2819, + 2820, + 2821, + 2822, + 2823, + 2824, + 2825, + 2826, + 2827, + 2828, + 2829, + 2830, + 2831, + 2832, + 2833, + 2834, + 2835, + 2836, + 2837, + 2838 + ] + }, + { + "teal": 2724, + "source": 687, + "pc": [ + 2839, + 2840 + ] + }, + { + "teal": 2727, + "source": 684, + "pc": [ + 2841 + ] + }, + { + "teal": 2728, + "source": 684, + "pc": [ + 2842, + 2843 + ] + }, + { + "teal": 2731, + "source": 684, + "pc": [ + 2844 + ] + }, + { + "teal": 2737, + "source": 690, + "pc": [ + 2845, + 2846 + ] + }, + { + "teal": 2738, + "source": 690, + "pc": [ + 2847, + 2848 + ] + }, + { + "teal": 2739, + "source": 690, + "pc": [ + 2849 + ] + }, + { + "teal": 2740, + "source": 690, + "pc": [ + 2850 + ] + }, + { + "teal": 2741, + "source": 690, + "pc": [ + 2851 + ] + }, + { + "teal": 2742, + "source": 690, + "pc": [ + 2852, + 2853, + 2854 + ] + }, + { + "teal": 2751, + "source": 691, + "pc": [ + 2855 + ] + }, + { + "teal": 2752, + "source": 691, + "pc": [ + 2856 + ] + }, + { + "teal": 2753, + "source": 691, + "pc": [ + 2857, + 2858 + ] + }, + { + "teal": 2757, + "source": 692, + "pc": [ + 2859, + 2860 + ] + }, + { + "teal": 2758, + "source": 692, + "pc": [ + 2861, + 2862 + ] + }, + { + "teal": 2759, + "source": 692, + "pc": [ + 2863 + ] + }, + { + "teal": 2760, + "source": 692, + "pc": [ + 2864, + 2865 + ] + }, + { + "teal": 2764, + "source": 693, + "pc": [ + 2866, + 2867 + ] + }, + { + "teal": 2765, + "source": 693, + "pc": [ + 2868, + 2869, + 2870 + ] + }, + { + "teal": 2766, + "source": 693, + "pc": [ + 2871, + 2872 + ] + }, + { + "teal": 2770, + "source": 694, + "pc": [ + 2873, + 2874, + 2875, + 2876, + 2877, + 2878, + 2879, + 2880, + 2881, + 2882, + 2883, + 2884, + 2885, + 2886, + 2887, + 2888, + 2889, + 2890 + ] + }, + { + "teal": 2771, + "source": 694, + "pc": [ + 2891, + 2892 + ] + }, + { + "teal": 2774, + "source": 691, + "pc": [ + 2893 + ] + }, + { + "teal": 2775, + "source": 691, + "pc": [ + 2894, + 2895 + ] + }, + { + "teal": 2778, + "source": 691, + "pc": [ + 2896 + ] + }, + { + "teal": 2787, + "source": 706, + "pc": [ + 2897 + ] + }, + { + "teal": 2788, + "source": 706, + "pc": [ + 2898, + 2899 + ] + }, + { + "teal": 2793, + "source": 730, + "pc": [ + 2900, + 2901 + ] + }, + { + "teal": 2794, + "source": 730, + "pc": [ + 2902 + ] + }, + { + "teal": 2795, + "source": 730, + "pc": [ + 2903 + ] + }, + { + "teal": 2796, + "source": 730, + "pc": [ + 2904 + ] + }, + { + "teal": 2797, + "source": 730, + "pc": [ + 2905, + 2906, + 2907 + ] + }, + { + "teal": 2798, + "source": 730, + "pc": [ + 2908, + 2909 + ] + }, + { + "teal": 2799, + "source": 730, + "pc": [ + 2910 + ] + }, + { + "teal": 2800, + "source": 730, + "pc": [ + 2911 + ] + }, + { + "teal": 2801, + "source": 730, + "pc": [ + 2912 + ] + }, + { + "teal": 2804, + "source": 730, + "pc": [ + 2913, + 2914, + 2915 + ] + }, + { + "teal": 2809, + "source": 731, + "pc": [ + 2916 + ] + }, + { + "teal": 2810, + "source": 731, + "pc": [ + 2917, + 2918 + ] + }, + { + "teal": 2814, + "source": 732, + "pc": [ + 2919 + ] + }, + { + "teal": 2815, + "source": 732, + "pc": [ + 2920, + 2921 + ] + }, + { + "teal": 2820, + "source": 732, + "pc": [ + 2922, + 2923 + ] + }, + { + "teal": 2821, + "source": 732, + "pc": [ + 2924, + 2925 + ] + }, + { + "teal": 2822, + "source": 732, + "pc": [ + 2926 + ] + }, + { + "teal": 2823, + "source": 732, + "pc": [ + 2927, + 2928, + 2929 + ] + }, + { + "teal": 2828, + "source": 733, + "pc": [ + 2930, + 2931 + ] + }, + { + "teal": 2829, + "source": 733, + "pc": [ + 2932, + 2933 + ] + }, + { + "teal": 2830, + "source": 733, + "pc": [ + 2934 + ] + }, + { + "teal": 2831, + "source": 733, + "pc": [ + 2935, + 2936, + 2937 + ] + }, + { + "teal": 2836, + "source": 734, + "pc": [ + 2938 + ] + }, + { + "teal": 2837, + "source": 734, + "pc": [ + 2939 + ] + }, + { + "teal": 2838, + "source": 734, + "pc": [ + 2940, + 2941 + ] + }, + { + "teal": 2839, + "source": 734, + "pc": [ + 2942 + ] + }, + { + "teal": 2840, + "source": 734, + "pc": [ + 2943, + 2944 + ] + }, + { + "teal": 2841, + "source": 734, + "pc": [ + 2945, + 2946 + ] + }, + { + "teal": 2842, + "source": 734, + "pc": [ + 2947 + ] + }, + { + "teal": 2843, + "source": 734, + "pc": [ + 2948, + 2949 + ] + }, + { + "teal": 2844, + "source": 734, + "pc": [ + 2950, + 2951 + ] + }, + { + "teal": 2845, + "source": 734, + "pc": [ + 2952, + 2953 + ] + }, + { + "teal": 2846, + "source": 734, + "pc": [ + 2954, + 2955 + ] + }, + { + "teal": 2847, + "source": 734, + "pc": [ + 2956 + ] + }, + { + "teal": 2852, + "source": 736, + "pc": [ + 2957, + 2958 + ] + }, + { + "teal": 2853, + "source": 736, + "pc": [ + 2959 + ] + }, + { + "teal": 2854, + "source": 736, + "pc": [ + 2960 + ] + }, + { + "teal": 2855, + "source": 736, + "pc": [ + 2961 + ] + }, + { + "teal": 2856, + "source": 736, + "pc": [ + 2962 + ] + }, + { + "teal": 2857, + "source": 736, + "pc": [ + 2963, + 2964 + ] + }, + { + "teal": 2858, + "source": 736, + "pc": [ + 2965 + ] + }, + { + "teal": 2859, + "source": 736, + "pc": [ + 2966, + 2967 + ] + }, + { + "teal": 2864, + "source": 737, + "pc": [ + 2968, + 2969 + ] + }, + { + "teal": 2865, + "source": 737, + "pc": [ + 2970, + 2971, + 2972 + ] + }, + { + "teal": 2866, + "source": 737, + "pc": [ + 2973, + 2974 + ] + }, + { + "teal": 2867, + "source": 737, + "pc": [ + 2975 + ] + }, + { + "teal": 2868, + "source": 737, + "pc": [ + 2976, + 2977, + 2978 + ] + }, + { + "teal": 2874, + "source": 738, + "pc": [ + 2979, + 2980 + ] + }, + { + "teal": 2875, + "source": 738, + "pc": [ + 2981, + 2982, + 2983 + ] + }, + { + "teal": 2876, + "source": 738, + "pc": [ + 2984 + ] + }, + { + "teal": 2877, + "source": 738, + "pc": [ + 2985, + 2986 + ] + }, + { + "teal": 2878, + "source": 738, + "pc": [ + 2987 + ] + }, + { + "teal": 2879, + "source": 738, + "pc": [ + 2988, + 2989, + 2990 + ] + }, + { + "teal": 2884, + "source": 741, + "pc": [ + 2991, + 2992 + ] + }, + { + "teal": 2885, + "source": 741, + "pc": [ + 2993, + 2994 + ] + }, + { + "teal": 2886, + "source": 741, + "pc": [ + 2995, + 2996, + 2997 + ] + }, + { + "teal": 2887, + "source": 741, + "pc": [ + 2998 + ] + }, + { + "teal": 2888, + "source": 741, + "pc": [ + 2999 + ] + }, + { + "teal": 2889, + "source": 741, + "pc": [ + 3000, + 3001 + ] + }, + { + "teal": 2890, + "source": 738, + "pc": [ + 3002, + 3003, + 3004 + ] + }, + { + "teal": 2895, + "source": 745, + "pc": [ + 3005, + 3006 + ] + }, + { + "teal": 2896, + "source": 745, + "pc": [ + 3007, + 3008 + ] + }, + { + "teal": 2897, + "source": 745, + "pc": [ + 3009, + 3010, + 3011 + ] + }, + { + "teal": 2898, + "source": 745, + "pc": [ + 3012 + ] + }, + { + "teal": 2899, + "source": 745, + "pc": [ + 3013 + ] + }, + { + "teal": 2900, + "source": 745, + "pc": [ + 3014, + 3015 + ] + }, + { + "teal": 2905, + "source": 749, + "pc": [ + 3016, + 3017 + ] + }, + { + "teal": 2906, + "source": 749, + "pc": [ + 3018, + 3019 + ] + }, + { + "teal": 2907, + "source": 749, + "pc": [ + 3020 + ] + }, + { + "teal": 2908, + "source": 749, + "pc": [ + 3021, + 3022, + 3023 + ] + }, + { + "teal": 2913, + "source": 750, + "pc": [ + 3024, + 3025 + ] + }, + { + "teal": 2914, + "source": 750, + "pc": [ + 3026, + 3027 + ] + }, + { + "teal": 2915, + "source": 750, + "pc": [ + 3028, + 3029, + 3030 + ] + }, + { + "teal": 2916, + "source": 750, + "pc": [ + 3031 + ] + }, + { + "teal": 2917, + "source": 750, + "pc": [ + 3032 + ] + }, + { + "teal": 2918, + "source": 750, + "pc": [ + 3033, + 3034 + ] + }, + { + "teal": 2922, + "source": 751, + "pc": [ + 3035, + 3036 + ] + }, + { + "teal": 2923, + "source": 751, + "pc": [ + 3037, + 3038 + ] + }, + { + "teal": 2924, + "source": 751, + "pc": [ + 3039 + ] + }, + { + "teal": 2925, + "source": 751, + "pc": [ + 3040, + 3041 + ] + }, + { + "teal": 2926, + "source": 751, + "pc": [ + 3042 + ] + }, + { + "teal": 2927, + "source": 751, + "pc": [ + 3043, + 3044 + ] + }, + { + "teal": 2932, + "source": 753, + "pc": [ + 3045, + 3046 + ] + }, + { + "teal": 2933, + "source": 753, + "pc": [ + 3047 + ] + }, + { + "teal": 2934, + "source": 753, + "pc": [ + 3048 + ] + }, + { + "teal": 2935, + "source": 753, + "pc": [ + 3049, + 3050, + 3051 + ] + }, + { + "teal": 2943, + "source": 756, + "pc": [ + 3052, + 3053 + ] + }, + { + "teal": 2944, + "source": 756, + "pc": [ + 3054, + 3055, + 3056 + ] + }, + { + "teal": 2945, + "source": 756, + "pc": [ + 3057 + ] + }, + { + "teal": 2946, + "source": 756, + "pc": [ + 3058, + 3059 + ] + }, + { + "teal": 2947, + "source": 755, + "pc": [ + 3060 + ] + }, + { + "teal": 2948, + "source": 756, + "pc": [ + 3061, + 3062 + ] + }, + { + "teal": 2949, + "source": 755, + "pc": [ + 3063, + 3064 + ] + }, + { + "teal": 2950, + "source": 755, + "pc": [ + 3065, + 3066 + ] + }, + { + "teal": 2951, + "source": 755, + "pc": [ + 3067 + ] + }, + { + "teal": 2952, + "source": 755, + "pc": [ + 3068, + 3069 + ] + }, + { + "teal": 2953, + "source": 755, + "pc": [ + 3070 + ] + }, + { + "teal": 2954, + "source": 755, + "pc": [ + 3071, + 3072 + ] + }, + { + "teal": 2955, + "source": 755, + "pc": [ + 3073 + ] + }, + { + "teal": 2956, + "source": 755, + "pc": [ + 3074 + ] + }, + { + "teal": 2957, + "source": 757, + "pc": [ + 3075, + 3076 + ] + }, + { + "teal": 2958, + "source": 757, + "pc": [ + 3077 + ] + }, + { + "teal": 2959, + "source": 757, + "pc": [ + 3078, + 3079 + ] + }, + { + "teal": 2960, + "source": 755, + "pc": [ + 3080 + ] + }, + { + "teal": 2961, + "source": 755, + "pc": [ + 3081 + ] + }, + { + "teal": 2962, + "source": 755, + "pc": [ + 3082 + ] + }, + { + "teal": 2963, + "source": 755, + "pc": [ + 3083 + ] + }, + { + "teal": 2964, + "source": 755, + "pc": [ + 3084 + ] + }, + { + "teal": 2965, + "source": 755, + "pc": [ + 3085 + ] + }, + { + "teal": 2968, + "source": 755, + "errorMessage": "wideRatio failed", + "pc": [ + 3086 + ] + }, + { + "teal": 2969, + "source": 755, + "pc": [ + 3087, + 3088 + ] + }, + { + "teal": 2973, + "source": 762, + "pc": [ + 3089, + 3090 + ] + }, + { + "teal": 2974, + "source": 762, + "pc": [ + 3091, + 3092 + ] + }, + { + "teal": 2975, + "source": 762, + "pc": [ + 3093 + ] + }, + { + "teal": 2976, + "source": 762, + "pc": [ + 3094, + 3095 + ] + }, + { + "teal": 2980, + "source": 763, + "pc": [ + 3096, + 3097 + ] + }, + { + "teal": 2981, + "source": 763, + "pc": [ + 3098, + 3099 + ] + }, + { + "teal": 2982, + "source": 763, + "pc": [ + 3100, + 3101 + ] + }, + { + "teal": 2983, + "source": 763, + "pc": [ + 3102, + 3103, + 3104 + ] + }, + { + "teal": 2984, + "source": 763, + "pc": [ + 3105 + ] + }, + { + "teal": 2985, + "source": 763, + "pc": [ + 3106, + 3107 + ] + }, + { + "teal": 2986, + "source": 763, + "pc": [ + 3108 + ] + }, + { + "teal": 2987, + "source": 763, + "pc": [ + 3109 + ] + }, + { + "teal": 2988, + "source": 763, + "pc": [ + 3110 + ] + }, + { + "teal": 2989, + "source": 763, + "pc": [ + 3111, + 3112 + ] + }, + { + "teal": 2993, + "source": 764, + "pc": [ + 3113, + 3114 + ] + }, + { + "teal": 2994, + "source": 764, + "pc": [ + 3115, + 3116 + ] + }, + { + "teal": 2995, + "source": 764, + "pc": [ + 3117 + ] + }, + { + "teal": 2996, + "source": 764, + "pc": [ + 3118, + 3119 + ] + }, + { + "teal": 3002, + "source": 766, + "pc": [ + 3120, + 3121 + ] + }, + { + "teal": 3003, + "source": 766, + "pc": [ + 3122 + ] + }, + { + "teal": 3004, + "source": 766, + "pc": [ + 3123 + ] + }, + { + "teal": 3005, + "source": 766, + "pc": [ + 3124, + 3125, + 3126 + ] + }, + { + "teal": 3013, + "source": 769, + "pc": [ + 3127, + 3128 + ] + }, + { + "teal": 3014, + "source": 769, + "pc": [ + 3129, + 3130, + 3131 + ] + }, + { + "teal": 3015, + "source": 769, + "pc": [ + 3132 + ] + }, + { + "teal": 3016, + "source": 769, + "pc": [ + 3133, + 3134 + ] + }, + { + "teal": 3017, + "source": 768, + "pc": [ + 3135 + ] + }, + { + "teal": 3018, + "source": 769, + "pc": [ + 3136, + 3137 + ] + }, + { + "teal": 3019, + "source": 768, + "pc": [ + 3138, + 3139 + ] + }, + { + "teal": 3020, + "source": 768, + "pc": [ + 3140, + 3141 + ] + }, + { + "teal": 3021, + "source": 768, + "pc": [ + 3142 + ] + }, + { + "teal": 3022, + "source": 768, + "pc": [ + 3143, + 3144 + ] + }, + { + "teal": 3023, + "source": 768, + "pc": [ + 3145 + ] + }, + { + "teal": 3024, + "source": 768, + "pc": [ + 3146, + 3147 + ] + }, + { + "teal": 3025, + "source": 768, + "pc": [ + 3148 + ] + }, + { + "teal": 3026, + "source": 768, + "pc": [ + 3149 + ] + }, + { + "teal": 3027, + "source": 770, + "pc": [ + 3150, + 3151 + ] + }, + { + "teal": 3028, + "source": 770, + "pc": [ + 3152 + ] + }, + { + "teal": 3029, + "source": 770, + "pc": [ + 3153, + 3154 + ] + }, + { + "teal": 3030, + "source": 768, + "pc": [ + 3155 + ] + }, + { + "teal": 3031, + "source": 768, + "pc": [ + 3156 + ] + }, + { + "teal": 3032, + "source": 768, + "pc": [ + 3157 + ] + }, + { + "teal": 3033, + "source": 768, + "pc": [ + 3158 + ] + }, + { + "teal": 3034, + "source": 768, + "pc": [ + 3159 + ] + }, + { + "teal": 3035, + "source": 768, + "pc": [ + 3160 + ] + }, + { + "teal": 3038, + "source": 768, + "errorMessage": "wideRatio failed", + "pc": [ + 3161 + ] + }, + { + "teal": 3039, + "source": 768, + "pc": [ + 3162, + 3163 + ] + }, + { + "teal": 3043, + "source": 775, + "pc": [ + 3164, + 3165 + ] + }, + { + "teal": 3044, + "source": 775, + "pc": [ + 3166, + 3167 + ] + }, + { + "teal": 3045, + "source": 775, + "pc": [ + 3168 + ] + }, + { + "teal": 3046, + "source": 775, + "pc": [ + 3169, + 3170 + ] + }, + { + "teal": 3050, + "source": 778, + "pc": [ + 3171, + 3172 + ] + }, + { + "teal": 3051, + "source": 778, + "pc": [ + 3173, + 3174 + ] + }, + { + "teal": 3052, + "source": 778, + "pc": [ + 3175, + 3176 + ] + }, + { + "teal": 3053, + "source": 778, + "pc": [ + 3177, + 3178, + 3179 + ] + }, + { + "teal": 3054, + "source": 778, + "pc": [ + 3180 + ] + }, + { + "teal": 3055, + "source": 778, + "pc": [ + 3181, + 3182 + ] + }, + { + "teal": 3056, + "source": 778, + "pc": [ + 3183 + ] + }, + { + "teal": 3057, + "source": 778, + "pc": [ + 3184 + ] + }, + { + "teal": 3058, + "source": 778, + "pc": [ + 3185 + ] + }, + { + "teal": 3059, + "source": 778, + "pc": [ + 3186, + 3187 + ] + }, + { + "teal": 3063, + "source": 779, + "pc": [ + 3188, + 3189 + ] + }, + { + "teal": 3064, + "source": 779, + "pc": [ + 3190, + 3191 + ] + }, + { + "teal": 3065, + "source": 779, + "pc": [ + 3192, + 3193 + ] + }, + { + "teal": 3066, + "source": 779, + "pc": [ + 3194, + 3195, + 3196 + ] + }, + { + "teal": 3067, + "source": 779, + "pc": [ + 3197 + ] + }, + { + "teal": 3068, + "source": 779, + "pc": [ + 3198, + 3199 + ] + }, + { + "teal": 3069, + "source": 779, + "pc": [ + 3200 + ] + }, + { + "teal": 3070, + "source": 779, + "pc": [ + 3201 + ] + }, + { + "teal": 3071, + "source": 779, + "pc": [ + 3202 + ] + }, + { + "teal": 3072, + "source": 779, + "pc": [ + 3203, + 3204 + ] + }, + { + "teal": 3076, + "source": 780, + "pc": [ + 3205, + 3206 + ] + }, + { + "teal": 3077, + "source": 780, + "pc": [ + 3207, + 3208 + ] + }, + { + "teal": 3078, + "source": 780, + "pc": [ + 3209 + ] + }, + { + "teal": 3079, + "source": 780, + "pc": [ + 3210, + 3211 + ] + }, + { + "teal": 3084, + "source": 783, + "pc": [ + 3212, + 3213 + ] + }, + { + "teal": 3085, + "source": 783, + "pc": [ + 3214 + ] + }, + { + "teal": 3086, + "source": 783, + "pc": [ + 3215 + ] + }, + { + "teal": 3087, + "source": 783, + "pc": [ + 3216, + 3217 + ] + }, + { + "teal": 3088, + "source": 783, + "pc": [ + 3218 + ] + }, + { + "teal": 3089, + "source": 783, + "pc": [ + 3219, + 3220 + ] + }, + { + "teal": 3090, + "source": 783, + "pc": [ + 3221 + ] + }, + { + "teal": 3101, + "source": 732, + "pc": [ + 3222, + 3223 + ] + }, + { + "teal": 3102, + "source": 732, + "pc": [ + 3224 + ] + }, + { + "teal": 3103, + "source": 732, + "pc": [ + 3225 + ] + }, + { + "teal": 3104, + "source": 732, + "pc": [ + 3226, + 3227 + ] + }, + { + "teal": 3105, + "source": 732, + "pc": [ + 3228, + 3229, + 3230 + ] + }, + { + "teal": 3110, + "source": 791, + "pc": [ + 3231, + 3232 + ] + }, + { + "teal": 3111, + "source": 791, + "pc": [ + 3233 + ] + }, + { + "teal": 3112, + "source": 791, + "pc": [ + 3234, + 3235 + ] + }, + { + "teal": 3113, + "source": 791, + "pc": [ + 3236 + ] + }, + { + "teal": 3114, + "source": 791, + "pc": [ + 3237, + 3238 + ] + }, + { + "teal": 3119, + "source": 795, + "pc": [ + 3239, + 3240 + ] + }, + { + "teal": 3120, + "source": 795, + "pc": [ + 3241 + ] + }, + { + "teal": 3121, + "source": 795, + "pc": [ + 3242 + ] + }, + { + "teal": 3122, + "source": 795, + "pc": [ + 3243, + 3244, + 3245 + ] + }, + { + "teal": 3127, + "source": 797, + "pc": [ + 3246 + ] + }, + { + "teal": 3128, + "source": 797, + "pc": [ + 3247, + 3248 + ] + }, + { + "teal": 3133, + "source": 797, + "pc": [ + 3249, + 3250 + ] + }, + { + "teal": 3134, + "source": 797, + "pc": [ + 3251, + 3252 + ] + }, + { + "teal": 3135, + "source": 797, + "pc": [ + 3253 + ] + }, + { + "teal": 3136, + "source": 797, + "pc": [ + 3254, + 3255, + 3256 + ] + }, + { + "teal": 3141, + "source": 798, + "pc": [ + 3257, + 3258 + ] + }, + { + "teal": 3142, + "source": 798, + "pc": [ + 3259, + 3260 + ] + }, + { + "teal": 3143, + "source": 798, + "pc": [ + 3261 + ] + }, + { + "teal": 3144, + "source": 798, + "pc": [ + 3262, + 3263, + 3264 + ] + }, + { + "teal": 3149, + "source": 799, + "pc": [ + 3265 + ] + }, + { + "teal": 3150, + "source": 799, + "pc": [ + 3266 + ] + }, + { + "teal": 3151, + "source": 799, + "pc": [ + 3267, + 3268 + ] + }, + { + "teal": 3152, + "source": 799, + "pc": [ + 3269 + ] + }, + { + "teal": 3153, + "source": 799, + "pc": [ + 3270, + 3271 + ] + }, + { + "teal": 3154, + "source": 799, + "pc": [ + 3272, + 3273 + ] + }, + { + "teal": 3155, + "source": 799, + "pc": [ + 3274 + ] + }, + { + "teal": 3156, + "source": 799, + "pc": [ + 3275, + 3276 + ] + }, + { + "teal": 3157, + "source": 799, + "pc": [ + 3277, + 3278 + ] + }, + { + "teal": 3158, + "source": 799, + "pc": [ + 3279, + 3280 + ] + }, + { + "teal": 3159, + "source": 799, + "pc": [ + 3281, + 3282 + ] + }, + { + "teal": 3160, + "source": 799, + "pc": [ + 3283 + ] + }, + { + "teal": 3165, + "source": 801, + "pc": [ + 3284, + 3285 + ] + }, + { + "teal": 3166, + "source": 801, + "pc": [ + 3286 + ] + }, + { + "teal": 3167, + "source": 801, + "pc": [ + 3287 + ] + }, + { + "teal": 3168, + "source": 801, + "pc": [ + 3288 + ] + }, + { + "teal": 3169, + "source": 801, + "pc": [ + 3289 + ] + }, + { + "teal": 3170, + "source": 801, + "pc": [ + 3290, + 3291 + ] + }, + { + "teal": 3171, + "source": 801, + "pc": [ + 3292 + ] + }, + { + "teal": 3172, + "source": 801, + "pc": [ + 3293, + 3294 + ] + }, + { + "teal": 3177, + "source": 802, + "pc": [ + 3295, + 3296 + ] + }, + { + "teal": 3178, + "source": 802, + "pc": [ + 3297, + 3298, + 3299 + ] + }, + { + "teal": 3179, + "source": 802, + "pc": [ + 3300, + 3301 + ] + }, + { + "teal": 3180, + "source": 802, + "pc": [ + 3302 + ] + }, + { + "teal": 3181, + "source": 802, + "pc": [ + 3303 + ] + }, + { + "teal": 3182, + "source": 802, + "pc": [ + 3304, + 3305, + 3306 + ] + }, + { + "teal": 3183, + "source": 802, + "pc": [ + 3307, + 3308 + ] + }, + { + "teal": 3184, + "source": 802, + "pc": [ + 3309, + 3310, + 3311 + ] + }, + { + "teal": 3185, + "source": 802, + "pc": [ + 3312 + ] + }, + { + "teal": 3186, + "source": 802, + "pc": [ + 3313, + 3314 + ] + }, + { + "teal": 3187, + "source": 802, + "pc": [ + 3315 + ] + }, + { + "teal": 3188, + "source": 802, + "pc": [ + 3316 + ] + }, + { + "teal": 3191, + "source": 802, + "pc": [ + 3317, + 3318, + 3319 + ] + }, + { + "teal": 3196, + "source": 803, + "pc": [ + 3320, + 3321 + ] + }, + { + "teal": 3197, + "source": 803, + "pc": [ + 3322, + 3323 + ] + }, + { + "teal": 3198, + "source": 803, + "pc": [ + 3324, + 3325, + 3326 + ] + }, + { + "teal": 3199, + "source": 803, + "pc": [ + 3327 + ] + }, + { + "teal": 3200, + "source": 803, + "pc": [ + 3328 + ] + }, + { + "teal": 3201, + "source": 803, + "pc": [ + 3329, + 3330 + ] + }, + { + "teal": 3206, + "source": 805, + "pc": [ + 3331, + 3332 + ] + }, + { + "teal": 3207, + "source": 805, + "pc": [ + 3333, + 3334 + ] + }, + { + "teal": 3208, + "source": 805, + "pc": [ + 3335 + ] + }, + { + "teal": 3209, + "source": 805, + "pc": [ + 3336, + 3337, + 3338 + ] + }, + { + "teal": 3215, + "source": 810, + "pc": [ + 3339, + 3340 + ] + }, + { + "teal": 3216, + "source": 810, + "pc": [ + 3341 + ] + }, + { + "teal": 3217, + "source": 810, + "pc": [ + 3342 + ] + }, + { + "teal": 3218, + "source": 810, + "pc": [ + 3343, + 3344, + 3345 + ] + }, + { + "teal": 3223, + "source": 811, + "pc": [ + 3346, + 3347 + ] + }, + { + "teal": 3224, + "source": 811, + "pc": [ + 3348, + 3349, + 3350 + ] + }, + { + "teal": 3225, + "source": 811, + "pc": [ + 3351 + ] + }, + { + "teal": 3226, + "source": 811, + "pc": [ + 3352, + 3353 + ] + }, + { + "teal": 3227, + "source": 811, + "pc": [ + 3354 + ] + }, + { + "teal": 3228, + "source": 811, + "pc": [ + 3355 + ] + }, + { + "teal": 3229, + "source": 811, + "pc": [ + 3356, + 3357 + ] + }, + { + "teal": 3230, + "source": 811, + "pc": [ + 3358 + ] + }, + { + "teal": 3231, + "source": 811, + "pc": [ + 3359 + ] + }, + { + "teal": 3232, + "source": 811, + "pc": [ + 3360 + ] + }, + { + "teal": 3233, + "source": 811, + "pc": [ + 3361 + ] + }, + { + "teal": 3234, + "source": 811, + "pc": [ + 3362 + ] + }, + { + "teal": 3237, + "source": 811, + "errorMessage": "wideRatio failed", + "pc": [ + 3363 + ] + }, + { + "teal": 3238, + "source": 811, + "pc": [ + 3364, + 3365 + ] + }, + { + "teal": 3242, + "source": 814, + "pc": [ + 3366, + 3367 + ] + }, + { + "teal": 3243, + "source": 814, + "pc": [ + 3368, + 3369 + ] + }, + { + "teal": 3244, + "source": 814, + "pc": [ + 3370, + 3371 + ] + }, + { + "teal": 3245, + "source": 814, + "pc": [ + 3372, + 3373, + 3374 + ] + }, + { + "teal": 3246, + "source": 814, + "pc": [ + 3375 + ] + }, + { + "teal": 3247, + "source": 814, + "pc": [ + 3376, + 3377 + ] + }, + { + "teal": 3248, + "source": 814, + "pc": [ + 3378 + ] + }, + { + "teal": 3249, + "source": 814, + "pc": [ + 3379 + ] + }, + { + "teal": 3250, + "source": 814, + "pc": [ + 3380 + ] + }, + { + "teal": 3251, + "source": 814, + "pc": [ + 3381, + 3382 + ] + }, + { + "teal": 3255, + "source": 815, + "pc": [ + 3383, + 3384 + ] + }, + { + "teal": 3256, + "source": 815, + "pc": [ + 3385, + 3386 + ] + }, + { + "teal": 3257, + "source": 815, + "pc": [ + 3387 + ] + }, + { + "teal": 3258, + "source": 815, + "pc": [ + 3388, + 3389 + ] + }, + { + "teal": 3264, + "source": 817, + "pc": [ + 3390, + 3391 + ] + }, + { + "teal": 3265, + "source": 817, + "pc": [ + 3392 + ] + }, + { + "teal": 3266, + "source": 817, + "pc": [ + 3393 + ] + }, + { + "teal": 3267, + "source": 817, + "pc": [ + 3394, + 3395, + 3396 + ] + }, + { + "teal": 3272, + "source": 818, + "pc": [ + 3397, + 3398 + ] + }, + { + "teal": 3273, + "source": 818, + "pc": [ + 3399, + 3400, + 3401 + ] + }, + { + "teal": 3274, + "source": 818, + "pc": [ + 3402 + ] + }, + { + "teal": 3275, + "source": 818, + "pc": [ + 3403, + 3404 + ] + }, + { + "teal": 3276, + "source": 818, + "pc": [ + 3405 + ] + }, + { + "teal": 3277, + "source": 818, + "pc": [ + 3406 + ] + }, + { + "teal": 3278, + "source": 818, + "pc": [ + 3407, + 3408 + ] + }, + { + "teal": 3279, + "source": 818, + "pc": [ + 3409 + ] + }, + { + "teal": 3280, + "source": 818, + "pc": [ + 3410 + ] + }, + { + "teal": 3281, + "source": 818, + "pc": [ + 3411 + ] + }, + { + "teal": 3282, + "source": 818, + "pc": [ + 3412 + ] + }, + { + "teal": 3283, + "source": 818, + "pc": [ + 3413 + ] + }, + { + "teal": 3286, + "source": 818, + "errorMessage": "wideRatio failed", + "pc": [ + 3414 + ] + }, + { + "teal": 3287, + "source": 818, + "pc": [ + 3415, + 3416 + ] + }, + { + "teal": 3291, + "source": 821, + "pc": [ + 3417, + 3418 + ] + }, + { + "teal": 3292, + "source": 821, + "pc": [ + 3419, + 3420 + ] + }, + { + "teal": 3293, + "source": 821, + "pc": [ + 3421, + 3422 + ] + }, + { + "teal": 3294, + "source": 821, + "pc": [ + 3423, + 3424, + 3425 + ] + }, + { + "teal": 3295, + "source": 821, + "pc": [ + 3426 + ] + }, + { + "teal": 3296, + "source": 821, + "pc": [ + 3427, + 3428 + ] + }, + { + "teal": 3297, + "source": 821, + "pc": [ + 3429 + ] + }, + { + "teal": 3298, + "source": 821, + "pc": [ + 3430 + ] + }, + { + "teal": 3299, + "source": 821, + "pc": [ + 3431 + ] + }, + { + "teal": 3300, + "source": 821, + "pc": [ + 3432, + 3433 + ] + }, + { + "teal": 3304, + "source": 822, + "pc": [ + 3434, + 3435 + ] + }, + { + "teal": 3305, + "source": 822, + "pc": [ + 3436, + 3437 + ] + }, + { + "teal": 3306, + "source": 822, + "pc": [ + 3438, + 3439 + ] + }, + { + "teal": 3307, + "source": 822, + "pc": [ + 3440, + 3441, + 3442 + ] + }, + { + "teal": 3308, + "source": 822, + "pc": [ + 3443 + ] + }, + { + "teal": 3309, + "source": 822, + "pc": [ + 3444, + 3445 + ] + }, + { + "teal": 3310, + "source": 822, + "pc": [ + 3446 + ] + }, + { + "teal": 3311, + "source": 822, + "pc": [ + 3447 + ] + }, + { + "teal": 3312, + "source": 822, + "pc": [ + 3448 + ] + }, + { + "teal": 3313, + "source": 822, + "pc": [ + 3449, + 3450 + ] + }, + { + "teal": 3317, + "source": 823, + "pc": [ + 3451, + 3452 + ] + }, + { + "teal": 3318, + "source": 823, + "pc": [ + 3453, + 3454 + ] + }, + { + "teal": 3319, + "source": 823, + "pc": [ + 3455 + ] + }, + { + "teal": 3320, + "source": 823, + "pc": [ + 3456, + 3457 + ] + }, + { + "teal": 3325, + "source": 827, + "pc": [ + 3458, + 3459 + ] + }, + { + "teal": 3326, + "source": 827, + "pc": [ + 3460 + ] + }, + { + "teal": 3327, + "source": 827, + "pc": [ + 3461 + ] + }, + { + "teal": 3328, + "source": 827, + "pc": [ + 3462, + 3463 + ] + }, + { + "teal": 3329, + "source": 827, + "pc": [ + 3464 + ] + }, + { + "teal": 3330, + "source": 827, + "pc": [ + 3465, + 3466 + ] + }, + { + "teal": 3331, + "source": 827, + "pc": [ + 3467 + ] + }, + { + "teal": 3340, + "source": 797, + "pc": [ + 3468, + 3469 + ] + }, + { + "teal": 3341, + "source": 797, + "pc": [ + 3470 + ] + }, + { + "teal": 3342, + "source": 797, + "pc": [ + 3471 + ] + }, + { + "teal": 3343, + "source": 797, + "pc": [ + 3472, + 3473 + ] + }, + { + "teal": 3344, + "source": 797, + "pc": [ + 3474, + 3475, + 3476 + ] + }, + { + "teal": 3353, + "source": 837, + "pc": [ + 3477, + 3478 + ] + }, + { + "teal": 3354, + "source": 837, + "pc": [ + 3479 + ] + }, + { + "teal": 3355, + "source": 837, + "pc": [ + 3480, + 3481 + ] + }, + { + "teal": 3356, + "source": 837, + "pc": [ + 3482 + ] + }, + { + "teal": 3357, + "source": 837, + "pc": [ + 3483 + ] + }, + { + "teal": 3358, + "source": 837, + "pc": [ + 3484, + 3485 + ] + }, + { + "teal": 3359, + "source": 837, + "pc": [ + 3486 + ] + }, + { + "teal": 3360, + "source": 837, + "pc": [ + 3487, + 3488 + ] + }, + { + "teal": 3364, + "source": 838, + "pc": [ + 3489, + 3490 + ] + }, + { + "teal": 3365, + "source": 838, + "pc": [ + 3491 + ] + }, + { + "teal": 3366, + "source": 838, + "pc": [ + 3492, + 3493 + ] + }, + { + "teal": 3367, + "source": 838, + "pc": [ + 3494 + ] + }, + { + "teal": 3368, + "source": 838, + "pc": [ + 3495, + 3496 + ] + }, + { + "teal": 3369, + "source": 838, + "pc": [ + 3497 + ] + }, + { + "teal": 3370, + "source": 838, + "pc": [ + 3498 + ] + }, + { + "teal": 3375, + "source": 839, + "pc": [ + 3499, + 3500 + ] + }, + { + "teal": 3376, + "source": 839, + "pc": [ + 3501 + ] + }, + { + "teal": 3377, + "source": 840, + "pc": [ + 3502 + ] + }, + { + "teal": 3378, + "source": 840, + "pc": [ + 3503, + 3504 + ] + }, + { + "teal": 3379, + "source": 840, + "pc": [ + 3505 + ] + }, + { + "teal": 3380, + "source": 840, + "pc": [ + 3506, + 3507 + ] + }, + { + "teal": 3381, + "source": 840, + "pc": [ + 3508 + ] + }, + { + "teal": 3382, + "source": 840, + "pc": [ + 3509 + ] + }, + { + "teal": 3383, + "source": 840, + "pc": [ + 3510 + ] + }, + { + "teal": 3384, + "source": 840, + "pc": [ + 3511 + ] + }, + { + "teal": 3385, + "source": 840, + "pc": [ + 3512 + ] + }, + { + "teal": 3386, + "source": 840, + "pc": [ + 3513, + 3514 + ] + }, + { + "teal": 3387, + "source": 840, + "pc": [ + 3515 + ] + }, + { + "teal": 3390, + "source": 840, + "errorMessage": "this.stakeAccumulator.value + (increasedStake as uint128) * (roundsLeftInBin as uint128) overflowed 128 bits", + "pc": [ + 3516 + ] + }, + { + "teal": 3391, + "source": 840, + "pc": [ + 3517, + 3518 + ] + }, + { + "teal": 3392, + "source": 840, + "pc": [ + 3519 + ] + }, + { + "teal": 3393, + "source": 840, + "pc": [ + 3520 + ] + }, + { + "teal": 3394, + "source": 840, + "pc": [ + 3521 + ] + }, + { + "teal": 3395, + "source": 840, + "pc": [ + 3522 + ] + }, + { + "teal": 3396, + "source": 840, + "pc": [ + 3523, + 3524 + ] + }, + { + "teal": 3397, + "source": 840, + "pc": [ + 3525 + ] + }, + { + "teal": 3398, + "source": 840, + "pc": [ + 3526 + ] + }, + { + "teal": 3399, + "source": 840, + "pc": [ + 3527 + ] + }, + { + "teal": 3400, + "source": 839, + "pc": [ + 3528 + ] + }, + { + "teal": 3404, + "source": 841, + "pc": [ + 3529, + 3530 + ] + }, + { + "teal": 3405, + "source": 841, + "pc": [ + 3531 + ] + }, + { + "teal": 3406, + "source": 841, + "pc": [ + 3532 + ] + }, + { + "teal": 3407, + "source": 841, + "pc": [ + 3533, + 3534 + ] + }, + { + "teal": 3408, + "source": 841, + "pc": [ + 3535 + ] + }, + { + "teal": 3409, + "source": 841, + "pc": [ + 3536 + ] + }, + { + "teal": 3422, + "source": 847, + "pc": [ + 3537 + ] + }, + { + "teal": 3423, + "source": 847, + "pc": [ + 3538 + ] + }, + { + "teal": 3424, + "source": 847, + "pc": [ + 3539, + 3540 + ] + }, + { + "teal": 3425, + "source": 847, + "pc": [ + 3541, + 3542, + 3543, + 3544, + 3545, + 3546 + ] + }, + { + "teal": 3426, + "source": 847, + "pc": [ + 3547, + 3548 + ] + }, + { + "teal": 3430, + "source": 848, + "pc": [ + 3549 + ] + }, + { + "teal": 3431, + "source": 848, + "pc": [ + 3550 + ] + }, + { + "teal": 3432, + "source": 848, + "pc": [ + 3551, + 3552 + ] + }, + { + "teal": 3442, + "source": 850, + "pc": [ + 3553 + ] + }, + { + "teal": 3443, + "source": 850, + "pc": [ + 3554 + ] + }, + { + "teal": 3444, + "source": 850, + "pc": [ + 3555 + ] + }, + { + "teal": 3445, + "source": 850, + "pc": [ + 3556 + ] + }, + { + "teal": 3446, + "source": 850, + "pc": [ + 3557 + ] + }, + { + "teal": 3447, + "source": 850, + "pc": [ + 3558 + ] + }, + { + "teal": 3448, + "source": 850, + "pc": [ + 3559 + ] + }, + { + "teal": 3449, + "source": 850, + "pc": [ + 3560, + 3561, + 3562 + ] + }, + { + "teal": 3450, + "source": 850, + "pc": [ + 3563 + ] + }, + { + "teal": 3451, + "source": 850, + "pc": [ + 3564 + ] + }, + { + "teal": 3452, + "source": 850, + "pc": [ + 3565, + 3566 + ] + }, + { + "teal": 3453, + "source": 851, + "pc": [ + 3567, + 3568 + ] + }, + { + "teal": 3454, + "source": 851, + "pc": [ + 3569 + ] + }, + { + "teal": 3455, + "source": 851, + "pc": [ + 3570, + 3571 + ] + }, + { + "teal": 3456, + "source": 852, + "pc": [ + 3572, + 3573 + ] + }, + { + "teal": 3457, + "source": 852, + "pc": [ + 3574 + ] + }, + { + "teal": 3458, + "source": 852, + "pc": [ + 3575, + 3576 + ] + }, + { + "teal": 3459, + "source": 853, + "pc": [ + 3577, + 3578 + ] + }, + { + "teal": 3460, + "source": 853, + "pc": [ + 3579 + ] + }, + { + "teal": 3461, + "source": 853, + "pc": [ + 3580, + 3581 + ] + }, + { + "teal": 3462, + "source": 854, + "pc": [ + 3582, + 3583 + ] + }, + { + "teal": 3463, + "source": 854, + "pc": [ + 3584 + ] + }, + { + "teal": 3464, + "source": 854, + "pc": [ + 3585, + 3586 + ] + }, + { + "teal": 3467, + "source": 847, + "pc": [ + 3587 + ] + }, + { + "teal": 3468, + "source": 847, + "pc": [ + 3588, + 3589 + ] + }, + { + "teal": 3471, + "source": 847, + "pc": [ + 3590 + ] + }, + { + "teal": 3472, + "source": 518, + "pc": [ + 3591 + ] + }, + { + "teal": 3477, + "source": 879, + "pc": [ + 3592, + 3593, + 3594 + ] + }, + { + "teal": 3478, + "source": 879, + "pc": [ + 3595 + ] + }, + { + "teal": 3481, + "source": 878, + "pc": [ + 3596, + 3597, + 3598 + ] + }, + { + "teal": 3482, + "source": 878, + "pc": [ + 3599 + ] + }, + { + "teal": 3485, + "source": 877, + "pc": [ + 3600, + 3601, + 3602 + ] + }, + { + "teal": 3486, + "source": 877, + "pc": [ + 3603 + ] + }, + { + "teal": 3489, + "source": 876, + "pc": [ + 3604, + 3605, + 3606 + ] + }, + { + "teal": 3490, + "source": 876, + "pc": [ + 3607, + 3608, + 3609 + ] + }, + { + "teal": 3493, + "source": 875, + "pc": [ + 3610, + 3611, + 3612 + ] + }, + { + "teal": 3494, + "source": 875, + "pc": [ + 3613, + 3614, + 3615 + ] + }, + { + "teal": 3497, + "source": 874, + "pc": [ + 3616, + 3617, + 3618 + ] + }, + { + "teal": 3498, + "source": 874, + "pc": [ + 3619, + 3620, + 3621 + ] + }, + { + "teal": 3501, + "source": 873, + "pc": [ + 3622, + 3623 + ] + }, + { + "teal": 3502, + "source": 873, + "pc": [ + 3624 + ] + }, + { + "teal": 3503, + "source": 873, + "pc": [ + 3625 + ] + }, + { + "teal": 3504, + "source": 873, + "pc": [ + 3626 + ] + }, + { + "teal": 3505, + "source": 873, + "pc": [ + 3627, + 3628 + ] + }, + { + "teal": 3506, + "source": 873, + "pc": [ + 3629 + ] + }, + { + "teal": 3507, + "source": 873, + "pc": [ + 3630 + ] + }, + { + "teal": 3510, + "source": 873, + "errorMessage": "argument 6 (feePayment) for goOnline must be a pay transaction", + "pc": [ + 3631 + ] + }, + { + "teal": 3513, + "source": 872, + "pc": [ + 3632, + 3633, + 3634 + ] + }, + { + "teal": 3514, + "source": 872, + "pc": [ + 3635 + ] + }, + { + "teal": 3515, + "source": 872, + "pc": [ + 3636 + ] + }, + { + "teal": 3531, + "source": 872, + "pc": [ + 3637, + 3638, + 3639 + ] + }, + { + "teal": 3534, + "source": 872, + "pc": [ + 3640, + 3641 + ] + }, + { + "teal": 3538, + "source": 881, + "pc": [ + 3642, + 3643, + 3644 + ] + }, + { + "teal": 3541, + "source": 881, + "errorMessage": "can only be called by owner or manager of validator", + "pc": [ + 3645 + ] + }, + { + "teal": 3545, + "source": 882, + "pc": [ + 3646, + 3647, + 3648 + ] + }, + { + "teal": 3546, + "source": 882, + "pc": [ + 3649, + 3650 + ] + }, + { + "teal": 3551, + "source": 883, + "pc": [ + 3651, + 3652 + ] + }, + { + "teal": 3552, + "source": 883, + "pc": [ + 3653, + 3654 + ] + }, + { + "teal": 3553, + "source": 883, + "pc": [ + 3655, + 3656 + ] + }, + { + "teal": 3554, + "source": 883, + "pc": [ + 3657 + ] + }, + { + "teal": 3557, + "source": 883, + "errorMessage": "transaction verification failed: {\"txn\":\"feePayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 3658 + ] + }, + { + "teal": 3560, + "source": 883, + "pc": [ + 3659, + 3660 + ] + }, + { + "teal": 3561, + "source": 883, + "pc": [ + 3661, + 3662 + ] + }, + { + "teal": 3562, + "source": 883, + "pc": [ + 3663, + 3664 + ] + }, + { + "teal": 3563, + "source": 883, + "pc": [ + 3665 + ] + }, + { + "teal": 3566, + "source": 883, + "errorMessage": "transaction verification failed: {\"txn\":\"feePayment\",\"field\":\"amount\",\"expected\":\"extraFee\"}", + "pc": [ + 3666 + ] + }, + { + "teal": 3578, + "source": 884, + "pc": [ + 3667 + ] + }, + { + "teal": 3579, + "source": 884, + "pc": [ + 3668, + 3669 + ] + }, + { + "teal": 3580, + "source": 884, + "pc": [ + 3670, + 3671 + ] + }, + { + "teal": 3584, + "source": 885, + "pc": [ + 3672, + 3673 + ] + }, + { + "teal": 3585, + "source": 885, + "pc": [ + 3674, + 3675 + ] + }, + { + "teal": 3589, + "source": 886, + "pc": [ + 3676, + 3677 + ] + }, + { + "teal": 3590, + "source": 886, + "pc": [ + 3678, + 3679 + ] + }, + { + "teal": 3594, + "source": 887, + "pc": [ + 3680, + 3681 + ] + }, + { + "teal": 3595, + "source": 887, + "pc": [ + 3682, + 3683 + ] + }, + { + "teal": 3599, + "source": 888, + "pc": [ + 3684, + 3685 + ] + }, + { + "teal": 3600, + "source": 888, + "pc": [ + 3686, + 3687 + ] + }, + { + "teal": 3604, + "source": 889, + "pc": [ + 3688, + 3689 + ] + }, + { + "teal": 3605, + "source": 889, + "pc": [ + 3690, + 3691 + ] + }, + { + "teal": 3609, + "source": 890, + "pc": [ + 3692, + 3693 + ] + }, + { + "teal": 3610, + "source": 890, + "pc": [ + 3694, + 3695 + ] + }, + { + "teal": 3614, + "source": 891, + "pc": [ + 3696, + 3697, + 3698 + ] + }, + { + "teal": 3615, + "source": 891, + "pc": [ + 3699, + 3700 + ] + }, + { + "teal": 3618, + "source": 884, + "pc": [ + 3701 + ] + }, + { + "teal": 3619, + "source": 872, + "pc": [ + 3702 + ] + }, + { + "teal": 3624, + "source": 900, + "pc": [ + 3703, + 3704, + 3705 + ] + }, + { + "teal": 3625, + "source": 900, + "pc": [ + 3706 + ] + }, + { + "teal": 3626, + "source": 900, + "pc": [ + 3707 + ] + }, + { + "teal": 3633, + "source": 900, + "pc": [ + 3708, + 3709, + 3710 + ] + }, + { + "teal": 3638, + "source": 903, + "pc": [ + 3711, + 3712 + ] + }, + { + "teal": 3639, + "source": 903, + "pc": [ + 3713 + ] + }, + { + "teal": 3640, + "source": 903, + "pc": [ + 3714 + ] + }, + { + "teal": 3641, + "source": 903, + "pc": [ + 3715, + 3716 + ] + }, + { + "teal": 3642, + "source": 903, + "pc": [ + 3717 + ] + }, + { + "teal": 3643, + "source": 903, + "pc": [ + 3718 + ] + }, + { + "teal": 3644, + "source": 903, + "pc": [ + 3719, + 3720, + 3721 + ] + }, + { + "teal": 3649, + "source": 904, + "pc": [ + 3722, + 3723, + 3724 + ] + }, + { + "teal": 3652, + "source": 904, + "errorMessage": "can only be called by owner or manager of validator", + "pc": [ + 3725 + ] + }, + { + "teal": 3657, + "source": 907, + "pc": [ + 3726 + ] + }, + { + "teal": 3658, + "source": 907, + "pc": [ + 3727, + 3728 + ] + }, + { + "teal": 3659, + "source": 907, + "pc": [ + 3729, + 3730 + ] + }, + { + "teal": 3662, + "source": 907, + "pc": [ + 3731 + ] + }, + { + "teal": 3663, + "source": 907, + "pc": [ + 3732, + 3733 + ] + }, + { + "teal": 3666, + "source": 907, + "pc": [ + 3734 + ] + }, + { + "teal": 3667, + "source": 900, + "pc": [ + 3735 + ] + }, + { + "teal": 3672, + "source": 913, + "pc": [ + 3736, + 3737, + 3738 + ] + }, + { + "teal": 3673, + "source": 913, + "pc": [ + 3739, + 3740, + 3741 + ] + }, + { + "teal": 3676, + "source": 913, + "pc": [ + 3742, + 3743, + 3744 + ] + }, + { + "teal": 3677, + "source": 913, + "pc": [ + 3745 + ] + }, + { + "teal": 3680, + "source": 913, + "pc": [ + 3746, + 3747, + 3748 + ] + }, + { + "teal": 3681, + "source": 913, + "pc": [ + 3749 + ] + }, + { + "teal": 3682, + "source": 913, + "pc": [ + 3750 + ] + }, + { + "teal": 3686, + "source": 913, + "pc": [ + 3751, + 3752, + 3753 + ] + }, + { + "teal": 3690, + "source": 914, + "pc": [ + 3754, + 3755, + 3756 + ] + }, + { + "teal": 3693, + "source": 914, + "errorMessage": "can only be called by owner or manager of validator", + "pc": [ + 3757 + ] + }, + { + "teal": 3701, + "source": 916, + "pc": [ + 3758 + ] + }, + { + "teal": 3702, + "source": 916, + "pc": [ + 3759 + ] + }, + { + "teal": 3703, + "source": 916, + "pc": [ + 3760, + 3761 + ] + }, + { + "teal": 3707, + "source": 917, + "pc": [ + 3762, + 3763 + ] + }, + { + "teal": 3708, + "source": 917, + "pc": [ + 3764, + 3765 + ] + }, + { + "teal": 3712, + "source": 918, + "pc": [ + 3766, + 3767, + 3768, + 3769, + 3770, + 3771, + 3772, + 3773, + 3774, + 3775, + 3776, + 3777, + 3778, + 3779, + 3780, + 3781, + 3782 + ] + }, + { + "teal": 3713, + "source": 918, + "pc": [ + 3783, + 3784 + ] + }, + { + "teal": 3714, + "source": 918, + "pc": [ + 3785, + 3786 + ] + }, + { + "teal": 3715, + "source": 918, + "pc": [ + 3787, + 3788 + ] + }, + { + "teal": 3716, + "source": 918, + "pc": [ + 3789, + 3790 + ] + }, + { + "teal": 3717, + "source": 918, + "pc": [ + 3791 + ] + }, + { + "teal": 3718, + "source": 918, + "pc": [ + 3792, + 3793 + ] + }, + { + "teal": 3719, + "source": 918, + "pc": [ + 3794, + 3795 + ] + }, + { + "teal": 3720, + "source": 918, + "pc": [ + 3796, + 3797 + ] + }, + { + "teal": 3724, + "source": 919, + "pc": [ + 3798, + 3799 + ] + }, + { + "teal": 3725, + "source": 919, + "pc": [ + 3800, + 3801 + ] + }, + { + "teal": 3728, + "source": 916, + "pc": [ + 3802 + ] + }, + { + "teal": 3729, + "source": 916, + "pc": [ + 3803, + 3804 + ] + }, + { + "teal": 3732, + "source": 916, + "pc": [ + 3805 + ] + }, + { + "teal": 3733, + "source": 913, + "pc": [ + 3806 + ] + }, + { + "teal": 3738, + "source": 929, + "pc": [ + 3807, + 3808 + ] + }, + { + "teal": 3741, + "source": 929, + "pc": [ + 3809, + 3810, + 3811 + ] + }, + { + "teal": 3742, + "source": 929, + "pc": [ + 3812 + ] + }, + { + "teal": 3743, + "source": 929, + "pc": [ + 3813 + ] + }, + { + "teal": 3744, + "source": 929, + "pc": [ + 3814, + 3815 + ] + }, + { + "teal": 3745, + "source": 929, + "pc": [ + 3816 + ] + }, + { + "teal": 3748, + "source": 929, + "errorMessage": "argument 0 (poolKey) for proxiedSetTokenPayoutRatio must be a (uint64,uint64,uint64)", + "pc": [ + 3817 + ] + }, + { + "teal": 3751, + "source": 929, + "pc": [ + 3818, + 3819, + 3820 + ] + }, + { + "teal": 3752, + "source": 929, + "pc": [ + 3821 + ] + }, + { + "teal": 3753, + "source": 929, + "pc": [ + 3822 + ] + }, + { + "teal": 3754, + "source": 929, + "pc": [ + 3823 + ] + }, + { + "teal": 3755, + "source": 929, + "pc": [ + 3824 + ] + }, + { + "teal": 3764, + "source": 929, + "pc": [ + 3825, + 3826, + 3827 + ] + }, + { + "teal": 3767, + "source": 929, + "pc": [ + 3828, + 3829 + ] + }, + { + "teal": 3771, + "source": 930, + "pc": [ + 3830 + ] + }, + { + "teal": 3772, + "source": 930, + "pc": [ + 3831 + ] + }, + { + "teal": 3773, + "source": 930, + "pc": [ + 3832, + 3833 + ] + }, + { + "teal": 3774, + "source": 930, + "pc": [ + 3834, + 3835, + 3836 + ] + }, + { + "teal": 3775, + "source": 930, + "pc": [ + 3837 + ] + }, + { + "teal": 3776, + "source": 930, + "pc": [ + 3838 + ] + }, + { + "teal": 3779, + "source": 930, + "errorMessage": "caller must be part of same validator set!", + "pc": [ + 3839 + ] + }, + { + "teal": 3783, + "source": 931, + "pc": [ + 3840 + ] + }, + { + "teal": 3784, + "source": 931, + "pc": [ + 3841 + ] + }, + { + "teal": 3785, + "source": 931, + "pc": [ + 3842 + ] + }, + { + "teal": 3786, + "source": 931, + "pc": [ + 3843 + ] + }, + { + "teal": 3789, + "source": 931, + "errorMessage": "callee must be pool 1", + "pc": [ + 3844 + ] + }, + { + "teal": 3793, + "source": 932, + "pc": [ + 3845, + 3846 + ] + }, + { + "teal": 3794, + "source": 932, + "pc": [ + 3847, + 3848, + 3849 + ] + }, + { + "teal": 3795, + "source": 932, + "pc": [ + 3850 + ] + }, + { + "teal": 3796, + "source": 932, + "pc": [ + 3851 + ] + }, + { + "teal": 3797, + "source": 932, + "pc": [ + 3852 + ] + }, + { + "teal": 3800, + "source": 932, + "errorMessage": "caller must NOT be pool 1", + "pc": [ + 3853 + ] + }, + { + "teal": 3807, + "source": 934, + "pc": [ + 3854 + ] + }, + { + "teal": 3808, + "source": 934, + "pc": [ + 3855 + ] + }, + { + "teal": 3809, + "source": 934, + "pc": [ + 3856, + 3857 + ] + }, + { + "teal": 3810, + "source": 934, + "pc": [ + 3858, + 3859 + ] + }, + { + "teal": 3811, + "source": 934, + "pc": [ + 3860, + 3861 + ] + }, + { + "teal": 3815, + "source": 935, + "pc": [ + 3862 + ] + }, + { + "teal": 3816, + "source": 935, + "pc": [ + 3863 + ] + }, + { + "teal": 3817, + "source": 935, + "pc": [ + 3864, + 3865 + ] + }, + { + "teal": 3821, + "source": 936, + "pc": [ + 3866, + 3867 + ] + }, + { + "teal": 3822, + "source": 936, + "pc": [ + 3868, + 3869, + 3870 + ] + }, + { + "teal": 3823, + "source": 936, + "pc": [ + 3871 + ] + }, + { + "teal": 3824, + "source": 936, + "pc": [ + 3872 + ] + }, + { + "teal": 3825, + "source": 936, + "pc": [ + 3873, + 3874 + ] + }, + { + "teal": 3826, + "source": 936, + "pc": [ + 3875, + 3876 + ] + }, + { + "teal": 3827, + "source": 936, + "pc": [ + 3877, + 3878, + 3879 + ] + }, + { + "teal": 3828, + "source": 936, + "pc": [ + 3880 + ] + }, + { + "teal": 3829, + "source": 936, + "pc": [ + 3881 + ] + }, + { + "teal": 3830, + "source": 936, + "pc": [ + 3882, + 3883 + ] + }, + { + "teal": 3833, + "source": 934, + "pc": [ + 3884 + ] + }, + { + "teal": 3834, + "source": 934, + "pc": [ + 3885, + 3886 + ] + }, + { + "teal": 3837, + "source": 934, + "pc": [ + 3887 + ] + }, + { + "teal": 3838, + "source": 934, + "pc": [ + 3888, + 3889 + ] + }, + { + "teal": 3839, + "source": 934, + "pc": [ + 3890 + ] + }, + { + "teal": 3840, + "source": 934, + "pc": [ + 3891 + ] + }, + { + "teal": 3841, + "source": 934, + "pc": [ + 3892, + 3893 + ] + }, + { + "teal": 3842, + "source": 934, + "pc": [ + 3894, + 3895, + 3896 + ] + }, + { + "teal": 3843, + "source": 934, + "pc": [ + 3897 + ] + }, + { + "teal": 3844, + "source": 934, + "pc": [ + 3898, + 3899 + ] + }, + { + "teal": 3848, + "source": 938, + "pc": [ + 3900, + 3901 + ] + }, + { + "teal": 3849, + "source": 938, + "pc": [ + 3902, + 3903 + ] + }, + { + "teal": 3850, + "source": 938, + "pc": [ + 3904, + 3905, + 3906 + ] + }, + { + "teal": 3851, + "source": 938, + "pc": [ + 3907 + ] + }, + { + "teal": 3852, + "source": 938, + "pc": [ + 3908 + ] + }, + { + "teal": 3853, + "source": 938, + "pc": [ + 3909 + ] + }, + { + "teal": 3857, + "source": 939, + "pc": [ + 3910, + 3911 + ] + }, + { + "teal": 3858, + "source": 939, + "pc": [ + 3912, + 3913 + ] + }, + { + "teal": 3859, + "source": 939, + "pc": [ + 3914, + 3915, + 3916 + ] + }, + { + "teal": 3860, + "source": 939, + "pc": [ + 3917 + ] + }, + { + "teal": 3861, + "source": 939, + "pc": [ + 3918, + 3919 + ] + }, + { + "teal": 3862, + "source": 939, + "pc": [ + 3920 + ] + }, + { + "teal": 3863, + "source": 939, + "pc": [ + 3921 + ] + }, + { + "teal": 3864, + "source": 939, + "pc": [ + 3922 + ] + }, + { + "teal": 3871, + "source": 941, + "pc": [ + 3923 + ] + }, + { + "teal": 3872, + "source": 941, + "pc": [ + 3924 + ] + }, + { + "teal": 3873, + "source": 941, + "pc": [ + 3925, + 3926 + ] + }, + { + "teal": 3874, + "source": 941, + "pc": [ + 3927, + 3928 + ] + }, + { + "teal": 3875, + "source": 941, + "pc": [ + 3929, + 3930 + ] + }, + { + "teal": 3879, + "source": 942, + "pc": [ + 3931 + ] + }, + { + "teal": 3880, + "source": 942, + "pc": [ + 3932 + ] + }, + { + "teal": 3881, + "source": 942, + "pc": [ + 3933, + 3934 + ] + }, + { + "teal": 3885, + "source": 943, + "pc": [ + 3935 + ] + }, + { + "teal": 3886, + "source": 943, + "pc": [ + 3936 + ] + }, + { + "teal": 3887, + "source": 943, + "pc": [ + 3937 + ] + }, + { + "teal": 3888, + "source": 943, + "pc": [ + 3938, + 3939 + ] + }, + { + "teal": 3891, + "source": 941, + "pc": [ + 3940 + ] + }, + { + "teal": 3892, + "source": 941, + "pc": [ + 3941, + 3942 + ] + }, + { + "teal": 3895, + "source": 941, + "pc": [ + 3943 + ] + }, + { + "teal": 3896, + "source": 941, + "pc": [ + 3944, + 3945 + ] + }, + { + "teal": 3897, + "source": 941, + "pc": [ + 3946 + ] + }, + { + "teal": 3898, + "source": 941, + "pc": [ + 3947 + ] + }, + { + "teal": 3899, + "source": 941, + "pc": [ + 3948, + 3949 + ] + }, + { + "teal": 3900, + "source": 941, + "pc": [ + 3950, + 3951, + 3952 + ] + }, + { + "teal": 3903, + "source": 929, + "pc": [ + 3953, + 3954 + ] + }, + { + "teal": 3904, + "source": 929, + "pc": [ + 3955 + ] + }, + { + "teal": 3908, + "source": 947, + "pc": [ + 3956, + 3957, + 3958 + ] + }, + { + "teal": 3911, + "source": 947, + "pc": [ + 3959, + 3960 + ] + }, + { + "teal": 3918, + "source": 948, + "pc": [ + 3961 + ] + }, + { + "teal": 3919, + "source": 948, + "pc": [ + 3962 + ] + }, + { + "teal": 3920, + "source": 948, + "pc": [ + 3963, + 3964 + ] + }, + { + "teal": 3921, + "source": 948, + "pc": [ + 3965, + 3966, + 3967, + 3968, + 3969, + 3970 + ] + }, + { + "teal": 3922, + "source": 948, + "pc": [ + 3971, + 3972 + ] + }, + { + "teal": 3926, + "source": 949, + "pc": [ + 3973 + ] + }, + { + "teal": 3927, + "source": 949, + "pc": [ + 3974 + ] + }, + { + "teal": 3928, + "source": 949, + "pc": [ + 3975, + 3976 + ] + }, + { + "teal": 3932, + "source": 950, + "pc": [ + 3977 + ] + }, + { + "teal": 3933, + "source": 950, + "pc": [ + 3978 + ] + }, + { + "teal": 3934, + "source": 950, + "pc": [ + 3979 + ] + }, + { + "teal": 3935, + "source": 950, + "pc": [ + 3980, + 3981 + ] + }, + { + "teal": 3938, + "source": 948, + "pc": [ + 3982 + ] + }, + { + "teal": 3939, + "source": 948, + "pc": [ + 3983, + 3984 + ] + }, + { + "teal": 3942, + "source": 948, + "pc": [ + 3985 + ] + }, + { + "teal": 3943, + "source": 948, + "pc": [ + 3986, + 3987 + ] + }, + { + "teal": 3944, + "source": 948, + "pc": [ + 3988 + ] + }, + { + "teal": 3945, + "source": 948, + "pc": [ + 3989 + ] + }, + { + "teal": 3946, + "source": 948, + "pc": [ + 3990, + 3991 + ] + }, + { + "teal": 3947, + "source": 948, + "pc": [ + 3992, + 3993, + 3994 + ] + }, + { + "teal": 3948, + "source": 948, + "pc": [ + 3995, + 3996 + ] + }, + { + "teal": 3952, + "source": 952, + "pc": [ + 3997, + 3998 + ] + }, + { + "teal": 3953, + "source": 952, + "pc": [ + 3999, + 4000 + ] + }, + { + "teal": 3954, + "source": 952, + "pc": [ + 4001, + 4002, + 4003 + ] + }, + { + "teal": 3955, + "source": 952, + "pc": [ + 4004 + ] + }, + { + "teal": 3956, + "source": 952, + "pc": [ + 4005 + ] + }, + { + "teal": 3957, + "source": 952, + "pc": [ + 4006, + 4007, + 4008 + ] + }, + { + "teal": 3958, + "source": 952, + "pc": [ + 4009, + 4010 + ] + }, + { + "teal": 3959, + "source": 952, + "pc": [ + 4011, + 4012 + ] + }, + { + "teal": 3960, + "source": 952, + "pc": [ + 4013, + 4014, + 4015 + ] + }, + { + "teal": 3961, + "source": 952, + "pc": [ + 4016 + ] + }, + { + "teal": 3962, + "source": 952, + "pc": [ + 4017 + ] + }, + { + "teal": 3966, + "source": 947, + "pc": [ + 4018, + 4019 + ] + }, + { + "teal": 3967, + "source": 947, + "pc": [ + 4020 + ] + }, + { + "teal": 3971, + "source": 955, + "pc": [ + 4021, + 4022, + 4023 + ] + }, + { + "teal": 3975, + "source": 956, + "pc": [ + 4024, + 4025 + ] + }, + { + "teal": 3976, + "source": 955, + "pc": [ + 4026 + ] + }, + { + "teal": 3983, + "source": 965, + "pc": [ + 4027, + 4028, + 4029 + ] + }, + { + "teal": 3986, + "source": 965, + "pc": [ + 4030, + 4031 + ] + }, + { + "teal": 3990, + "source": 966, + "pc": [ + 4032, + 4033, + 4034 + ] + }, + { + "teal": 3991, + "source": 966, + "pc": [ + 4035, + 4036 + ] + }, + { + "teal": 3995, + "source": 968, + "pc": [ + 4037, + 4038 + ] + }, + { + "teal": 3996, + "source": 968, + "pc": [ + 4039, + 4040 + ] + }, + { + "teal": 3997, + "source": 968, + "pc": [ + 4041 + ] + }, + { + "teal": 3998, + "source": 968, + "pc": [ + 4042 + ] + }, + { + "teal": 3999, + "source": 968, + "pc": [ + 4043, + 4044 + ] + }, + { + "teal": 4000, + "source": 968, + "pc": [ + 4045 + ] + }, + { + "teal": 4001, + "source": 968, + "pc": [ + 4046 + ] + }, + { + "teal": 4002, + "source": 968, + "pc": [ + 4047 + ] + }, + { + "teal": 4003, + "source": 968, + "pc": [ + 4048 + ] + }, + { + "teal": 4004, + "source": 968, + "pc": [ + 4049 + ] + }, + { + "teal": 4007, + "source": 968, + "errorMessage": "wideRatio failed", + "pc": [ + 4050 + ] + }, + { + "teal": 4010, + "source": 965, + "pc": [ + 4051, + 4052 + ] + }, + { + "teal": 4011, + "source": 965, + "pc": [ + 4053 + ] + }, + { + "teal": 4015, + "source": 971, + "pc": [ + 4054, + 4055, + 4056 + ] + }, + { + "teal": 4018, + "source": 971, + "pc": [ + 4057, + 4058 + ] + }, + { + "teal": 4022, + "source": 975, + "pc": [ + 4059 + ] + }, + { + "teal": 4023, + "source": 975, + "pc": [ + 4060, + 4061 + ] + }, + { + "teal": 4028, + "source": 976, + "pc": [ + 4062, + 4063 + ] + }, + { + "teal": 4029, + "source": 976, + "pc": [ + 4064 + ] + }, + { + "teal": 4030, + "source": 976, + "pc": [ + 4065, + 4066, + 4067 + ] + }, + { + "teal": 4035, + "source": 978, + "pc": [ + 4068, + 4069, + 4070, + 4071 + ] + }, + { + "teal": 4036, + "source": 978, + "pc": [ + 4072, + 4073, + 4074 + ] + }, + { + "teal": 4041, + "source": 980, + "pc": [ + 4075 + ] + }, + { + "teal": 4045, + "source": 971, + "pc": [ + 4076, + 4077 + ] + }, + { + "teal": 4046, + "source": 971, + "pc": [ + 4078 + ] + }, + { + "teal": 4050, + "source": 983, + "pc": [ + 4079, + 4080, + 4081 + ] + }, + { + "teal": 4054, + "source": 985, + "pc": [ + 4082, + 4083, + 4084, + 4085, + 4086, + 4087, + 4088, + 4089, + 4090 + ] + }, + { + "teal": 4055, + "source": 983, + "pc": [ + 4091 + ] + }, + { + "teal": 4061, + "source": 991, + "pc": [ + 4092, + 4093, + 4094 + ] + }, + { + "teal": 4064, + "source": 991, + "pc": [ + 4095, + 4096 + ] + }, + { + "teal": 4065, + "source": 991, + "pc": [ + 4097, + 4098 + ] + }, + { + "teal": 4069, + "source": 992, + "pc": [ + 4099, + 4100 + ] + }, + { + "teal": 4070, + "source": 992, + "pc": [ + 4101 + ] + }, + { + "teal": 4071, + "source": 992, + "pc": [ + 4102 + ] + }, + { + "teal": 4072, + "source": 992, + "pc": [ + 4103, + 4104 + ] + }, + { + "teal": 4077, + "source": 993, + "pc": [ + 4105, + 4106 + ] + }, + { + "teal": 4078, + "source": 993, + "pc": [ + 4107, + 4108 + ] + }, + { + "teal": 4079, + "source": 993, + "pc": [ + 4109 + ] + }, + { + "teal": 4080, + "source": 993, + "pc": [ + 4110, + 4111 + ] + }, + { + "teal": 4081, + "source": 993, + "pc": [ + 4112 + ] + }, + { + "teal": 4082, + "source": 993, + "pc": [ + 4113 + ] + }, + { + "teal": 4083, + "source": 993, + "pc": [ + 4114 + ] + }, + { + "teal": 4084, + "source": 993, + "pc": [ + 4115 + ] + }, + { + "teal": 4087, + "source": 993, + "errorMessage": "currentBinSize as uint64 overflowed 64 bits", + "pc": [ + 4116 + ] + }, + { + "teal": 4088, + "source": 993, + "pc": [ + 4117, + 4118, + 4119, + 4120, + 4121, + 4122, + 4123, + 4124, + 4125, + 4126 + ] + }, + { + "teal": 4089, + "source": 993, + "pc": [ + 4127 + ] + }, + { + "teal": 4090, + "source": 993, + "pc": [ + 4128 + ] + }, + { + "teal": 4091, + "source": 993, + "pc": [ + 4129 + ] + }, + { + "teal": 4092, + "source": 993, + "pc": [ + 4130 + ] + }, + { + "teal": 4093, + "source": 993, + "pc": [ + 4131, + 4132 + ] + }, + { + "teal": 4094, + "source": 993, + "pc": [ + 4133 + ] + }, + { + "teal": 4095, + "source": 993, + "pc": [ + 4134 + ] + }, + { + "teal": 4096, + "source": 993, + "pc": [ + 4135 + ] + }, + { + "teal": 4097, + "source": 993, + "pc": [ + 4136 + ] + }, + { + "teal": 4098, + "source": 993, + "pc": [ + 4137 + ] + }, + { + "teal": 4099, + "source": 993, + "pc": [ + 4138 + ] + }, + { + "teal": 4100, + "source": 993, + "pc": [ + 4139, + 4140, + 4141 + ] + }, + { + "teal": 4106, + "source": 994, + "pc": [ + 4142, + 4143 + ] + }, + { + "teal": 4107, + "source": 994, + "pc": [ + 4144, + 4145 + ] + }, + { + "teal": 4108, + "source": 994, + "pc": [ + 4146 + ] + }, + { + "teal": 4109, + "source": 994, + "pc": [ + 4147, + 4148, + 4149 + ] + }, + { + "teal": 4114, + "source": 995, + "pc": [ + 4150 + ] + }, + { + "teal": 4115, + "source": 995, + "pc": [ + 4151 + ] + }, + { + "teal": 4116, + "source": 995, + "pc": [ + 4152, + 4153 + ] + }, + { + "teal": 4117, + "source": 995, + "pc": [ + 4154 + ] + }, + { + "teal": 4118, + "source": 995, + "pc": [ + 4155, + 4156 + ] + }, + { + "teal": 4119, + "source": 995, + "pc": [ + 4157, + 4158 + ] + }, + { + "teal": 4120, + "source": 995, + "pc": [ + 4159 + ] + }, + { + "teal": 4121, + "source": 995, + "pc": [ + 4160, + 4161 + ] + }, + { + "teal": 4122, + "source": 995, + "pc": [ + 4162, + 4163 + ] + }, + { + "teal": 4123, + "source": 995, + "pc": [ + 4164, + 4165 + ] + }, + { + "teal": 4124, + "source": 995, + "pc": [ + 4166, + 4167 + ] + }, + { + "teal": 4125, + "source": 995, + "pc": [ + 4168 + ] + }, + { + "teal": 4130, + "source": 997, + "pc": [ + 4169, + 4170 + ] + }, + { + "teal": 4131, + "source": 997, + "pc": [ + 4171, + 4172, + 4173, + 4174, + 4175, + 4176, + 4177, + 4178, + 4179, + 4180, + 4181, + 4182, + 4183, + 4184, + 4185, + 4186, + 4187, + 4188 + ] + }, + { + "teal": 4132, + "source": 997, + "pc": [ + 4189 + ] + }, + { + "teal": 4133, + "source": 997, + "pc": [ + 4190 + ] + }, + { + "teal": 4134, + "source": 997, + "pc": [ + 4191 + ] + }, + { + "teal": 4135, + "source": 997, + "pc": [ + 4192, + 4193 + ] + }, + { + "teal": 4136, + "source": 997, + "pc": [ + 4194 + ] + }, + { + "teal": 4139, + "source": 997, + "errorMessage": "currentBinSize * (365 as uint128) overflowed 128 bits", + "pc": [ + 4195 + ] + }, + { + "teal": 4140, + "source": 997, + "pc": [ + 4196, + 4197 + ] + }, + { + "teal": 4141, + "source": 997, + "pc": [ + 4198 + ] + }, + { + "teal": 4142, + "source": 997, + "pc": [ + 4199 + ] + }, + { + "teal": 4143, + "source": 997, + "pc": [ + 4200 + ] + }, + { + "teal": 4144, + "source": 997, + "pc": [ + 4201 + ] + }, + { + "teal": 4145, + "source": 997, + "pc": [ + 4202, + 4203 + ] + }, + { + "teal": 4146, + "source": 997, + "pc": [ + 4204 + ] + }, + { + "teal": 4147, + "source": 997, + "pc": [ + 4205 + ] + }, + { + "teal": 4148, + "source": 997, + "pc": [ + 4206 + ] + }, + { + "teal": 4149, + "source": 997, + "pc": [ + 4207, + 4208 + ] + }, + { + "teal": 4153, + "source": 998, + "pc": [ + 4209, + 4210 + ] + }, + { + "teal": 4154, + "source": 998, + "pc": [ + 4211 + ] + }, + { + "teal": 4155, + "source": 998, + "pc": [ + 4212, + 4213 + ] + }, + { + "teal": 4156, + "source": 998, + "pc": [ + 4214 + ] + }, + { + "teal": 4157, + "source": 998, + "pc": [ + 4215 + ] + }, + { + "teal": 4158, + "source": 998, + "pc": [ + 4216 + ] + }, + { + "teal": 4159, + "source": 998, + "pc": [ + 4217, + 4218 + ] + }, + { + "teal": 4160, + "source": 998, + "pc": [ + 4219 + ] + }, + { + "teal": 4163, + "source": 998, + "errorMessage": "this.stakeAccumulator.value / currentBinSize overflowed 128 bits", + "pc": [ + 4220 + ] + }, + { + "teal": 4164, + "source": 998, + "pc": [ + 4221, + 4222 + ] + }, + { + "teal": 4165, + "source": 998, + "pc": [ + 4223 + ] + }, + { + "teal": 4166, + "source": 998, + "pc": [ + 4224 + ] + }, + { + "teal": 4167, + "source": 998, + "pc": [ + 4225 + ] + }, + { + "teal": 4168, + "source": 998, + "pc": [ + 4226 + ] + }, + { + "teal": 4169, + "source": 998, + "pc": [ + 4227, + 4228 + ] + }, + { + "teal": 4170, + "source": 998, + "pc": [ + 4229 + ] + }, + { + "teal": 4171, + "source": 998, + "pc": [ + 4230 + ] + }, + { + "teal": 4172, + "source": 998, + "pc": [ + 4231 + ] + }, + { + "teal": 4173, + "source": 998, + "pc": [ + 4232, + 4233 + ] + }, + { + "teal": 4178, + "source": 999, + "pc": [ + 4234, + 4235 + ] + }, + { + "teal": 4179, + "source": 999, + "pc": [ + 4236, + 4237 + ] + }, + { + "teal": 4180, + "source": 999, + "pc": [ + 4238 + ] + }, + { + "teal": 4181, + "source": 999, + "pc": [ + 4239, + 4240, + 4241 + ] + }, + { + "teal": 4188, + "source": 1004, + "pc": [ + 4242, + 4243 + ] + }, + { + "teal": 4189, + "source": 1004, + "pc": [ + 4244 + ] + }, + { + "teal": 4190, + "source": 1004, + "pc": [ + 4245 + ] + }, + { + "teal": 4191, + "source": 1004, + "pc": [ + 4246, + 4247, + 4248, + 4249, + 4250, + 4251, + 4252, + 4253, + 4254, + 4255, + 4256, + 4257, + 4258, + 4259, + 4260, + 4261, + 4262, + 4263 + ] + }, + { + "teal": 4192, + "source": 1004, + "pc": [ + 4264 + ] + }, + { + "teal": 4193, + "source": 1004, + "pc": [ + 4265, + 4266 + ] + }, + { + "teal": 4194, + "source": 1004, + "pc": [ + 4267 + ] + }, + { + "teal": 4195, + "source": 1005, + "pc": [ + 4268, + 4269 + ] + }, + { + "teal": 4196, + "source": 1005, + "pc": [ + 4270, + 4271 + ] + }, + { + "teal": 4197, + "source": 1005, + "pc": [ + 4272 + ] + }, + { + "teal": 4198, + "source": 1004, + "pc": [ + 4273 + ] + }, + { + "teal": 4199, + "source": 1004, + "pc": [ + 4274 + ] + }, + { + "teal": 4200, + "source": 1004, + "pc": [ + 4275 + ] + }, + { + "teal": 4201, + "source": 1004, + "pc": [ + 4276, + 4277 + ] + }, + { + "teal": 4202, + "source": 1004, + "pc": [ + 4278 + ] + }, + { + "teal": 4205, + "source": 1004, + "errorMessage": "(((this.rewardAccumulator.value as uint128) * (10000 as uint128)) / avgStake) *\\n (approxRoundsPerYear / currentBinSize) overflowed 128 bits", + "pc": [ + 4279 + ] + }, + { + "teal": 4206, + "source": 1004, + "pc": [ + 4280, + 4281 + ] + }, + { + "teal": 4207, + "source": 1004, + "pc": [ + 4282 + ] + }, + { + "teal": 4208, + "source": 1004, + "pc": [ + 4283 + ] + }, + { + "teal": 4209, + "source": 1004, + "pc": [ + 4284 + ] + }, + { + "teal": 4210, + "source": 1004, + "pc": [ + 4285 + ] + }, + { + "teal": 4211, + "source": 1004, + "pc": [ + 4286, + 4287 + ] + }, + { + "teal": 4212, + "source": 1004, + "pc": [ + 4288 + ] + }, + { + "teal": 4213, + "source": 1004, + "pc": [ + 4289 + ] + }, + { + "teal": 4214, + "source": 1004, + "pc": [ + 4290 + ] + }, + { + "teal": 4215, + "source": 1003, + "pc": [ + 4291, + 4292 + ] + }, + { + "teal": 4219, + "source": 1007, + "pc": [ + 4293, + 4294, + 4295, + 4296, + 4297, + 4298, + 4299, + 4300, + 4301, + 4302, + 4303, + 4304, + 4305, + 4306, + 4307, + 4308, + 4309, + 4310 + ] + }, + { + "teal": 4220, + "source": 1007, + "pc": [ + 4311, + 4312 + ] + }, + { + "teal": 4225, + "source": 1009, + "pc": [ + 4313, + 4314 + ] + }, + { + "teal": 4226, + "source": 1009, + "pc": [ + 4315, + 4316, + 4317, + 4318, + 4319, + 4320, + 4321, + 4322, + 4323, + 4324, + 4325, + 4326, + 4327, + 4328, + 4329, + 4330, + 4331, + 4332 + ] + }, + { + "teal": 4227, + "source": 1009, + "pc": [ + 4333 + ] + }, + { + "teal": 4228, + "source": 1009, + "pc": [ + 4334, + 4335, + 4336 + ] + }, + { + "teal": 4233, + "source": 1010, + "pc": [ + 4337, + 4338, + 4339, + 4340, + 4341, + 4342, + 4343, + 4344, + 4345, + 4346, + 4347, + 4348, + 4349, + 4350, + 4351, + 4352, + 4353, + 4354 + ] + }, + { + "teal": 4234, + "source": 1010, + "pc": [ + 4355, + 4356 + ] + }, + { + "teal": 4241, + "source": 1012, + "pc": [ + 4357, + 4358 + ] + }, + { + "teal": 4242, + "source": 1012, + "pc": [ + 4359 + ] + }, + { + "teal": 4243, + "source": 1013, + "pc": [ + 4360 + ] + }, + { + "teal": 4244, + "source": 1013, + "pc": [ + 4361, + 4362 + ] + }, + { + "teal": 4245, + "source": 1013, + "pc": [ + 4363, + 4364 + ] + }, + { + "teal": 4246, + "source": 1013, + "pc": [ + 4365 + ] + }, + { + "teal": 4247, + "source": 1013, + "pc": [ + 4366 + ] + }, + { + "teal": 4248, + "source": 1013, + "pc": [ + 4367, + 4368 + ] + }, + { + "teal": 4249, + "source": 1013, + "pc": [ + 4369 + ] + }, + { + "teal": 4250, + "source": 1014, + "pc": [ + 4370, + 4371 + ] + }, + { + "teal": 4251, + "source": 1014, + "pc": [ + 4372, + 4373 + ] + }, + { + "teal": 4252, + "source": 1014, + "pc": [ + 4374 + ] + }, + { + "teal": 4253, + "source": 1014, + "pc": [ + 4375, + 4376 + ] + }, + { + "teal": 4254, + "source": 1014, + "pc": [ + 4377 + ] + }, + { + "teal": 4255, + "source": 1013, + "pc": [ + 4378 + ] + }, + { + "teal": 4256, + "source": 1013, + "pc": [ + 4379 + ] + }, + { + "teal": 4257, + "source": 1013, + "pc": [ + 4380 + ] + }, + { + "teal": 4258, + "source": 1013, + "pc": [ + 4381, + 4382 + ] + }, + { + "teal": 4259, + "source": 1013, + "pc": [ + 4383 + ] + }, + { + "teal": 4262, + "source": 1013, + "errorMessage": "(this.weightedMovingAverage.value * ((100 as uint128) - alpha)) / (100 as uint128) +\\n (apr * alpha) / (100 as uint128) overflowed 128 bits", + "pc": [ + 4384 + ] + }, + { + "teal": 4263, + "source": 1013, + "pc": [ + 4385, + 4386 + ] + }, + { + "teal": 4264, + "source": 1013, + "pc": [ + 4387 + ] + }, + { + "teal": 4265, + "source": 1013, + "pc": [ + 4388 + ] + }, + { + "teal": 4266, + "source": 1013, + "pc": [ + 4389 + ] + }, + { + "teal": 4267, + "source": 1013, + "pc": [ + 4390 + ] + }, + { + "teal": 4268, + "source": 1013, + "pc": [ + 4391, + 4392 + ] + }, + { + "teal": 4269, + "source": 1013, + "pc": [ + 4393 + ] + }, + { + "teal": 4270, + "source": 1013, + "pc": [ + 4394 + ] + }, + { + "teal": 4271, + "source": 1013, + "pc": [ + 4395 + ] + }, + { + "teal": 4272, + "source": 1012, + "pc": [ + 4396 + ] + }, + { + "teal": 4277, + "source": 1018, + "pc": [ + 4397, + 4398, + 4399 + ] + }, + { + "teal": 4281, + "source": 1019, + "pc": [ + 4400, + 4401 + ] + }, + { + "teal": 4282, + "source": 1019, + "pc": [ + 4402, + 4403 + ] + }, + { + "teal": 4283, + "source": 1019, + "pc": [ + 4404 + ] + }, + { + "teal": 4284, + "source": 1019, + "pc": [ + 4405 + ] + }, + { + "teal": 4285, + "source": 1019, + "pc": [ + 4406, + 4407 + ] + }, + { + "teal": 4286, + "source": 1019, + "pc": [ + 4408 + ] + }, + { + "teal": 4287, + "source": 1019, + "pc": [ + 4409 + ] + }, + { + "teal": 4288, + "source": 1019, + "pc": [ + 4410 + ] + }, + { + "teal": 4289, + "source": 1019, + "pc": [ + 4411 + ] + }, + { + "teal": 4290, + "source": 1019, + "pc": [ + 4412 + ] + }, + { + "teal": 4291, + "source": 1019, + "pc": [ + 4413, + 4414 + ] + }, + { + "teal": 4292, + "source": 1019, + "pc": [ + 4415 + ] + }, + { + "teal": 4295, + "source": 1019, + "errorMessage": "(this.totalAlgoStaked.value as uint128) * (this.roundsPerDay.value as uint128) overflowed 128 bits", + "pc": [ + 4416 + ] + }, + { + "teal": 4296, + "source": 1019, + "pc": [ + 4417, + 4418 + ] + }, + { + "teal": 4297, + "source": 1019, + "pc": [ + 4419 + ] + }, + { + "teal": 4298, + "source": 1019, + "pc": [ + 4420 + ] + }, + { + "teal": 4299, + "source": 1019, + "pc": [ + 4421 + ] + }, + { + "teal": 4300, + "source": 1019, + "pc": [ + 4422 + ] + }, + { + "teal": 4301, + "source": 1019, + "pc": [ + 4423, + 4424 + ] + }, + { + "teal": 4302, + "source": 1019, + "pc": [ + 4425 + ] + }, + { + "teal": 4303, + "source": 1019, + "pc": [ + 4426 + ] + }, + { + "teal": 4304, + "source": 1019, + "pc": [ + 4427 + ] + }, + { + "teal": 4305, + "source": 1019, + "pc": [ + 4428 + ] + }, + { + "teal": 4309, + "source": 1020, + "pc": [ + 4429, + 4430 + ] + }, + { + "teal": 4310, + "source": 1020, + "pc": [ + 4431 + ] + }, + { + "teal": 4311, + "source": 1020, + "pc": [ + 4432 + ] + }, + { + "teal": 4315, + "source": 1021, + "pc": [ + 4433, + 4434 + ] + }, + { + "teal": 4316, + "source": 1021, + "pc": [ + 4435, + 4436 + ] + }, + { + "teal": 4317, + "source": 1021, + "pc": [ + 4437, + 4438 + ] + }, + { + "teal": 4318, + "source": 1021, + "pc": [ + 4439, + 4440 + ] + }, + { + "teal": 4319, + "source": 1021, + "pc": [ + 4441 + ] + }, + { + "teal": 4320, + "source": 1021, + "pc": [ + 4442 + ] + }, + { + "teal": 4321, + "source": 1021, + "pc": [ + 4443 + ] + }, + { + "teal": 4322, + "source": 1021, + "pc": [ + 4444 + ] + }, + { + "teal": 4325, + "source": 991, + "pc": [ + 4445 + ] + }, + { + "teal": 4329, + "source": 1025, + "pc": [ + 4446, + 4447, + 4448 + ] + }, + { + "teal": 4333, + "source": 1026, + "pc": [ + 4449, + 4450 + ] + }, + { + "teal": 4334, + "source": 1026, + "pc": [ + 4451, + 4452, + 4453, + 4454 + ] + }, + { + "teal": 4335, + "source": 1026, + "pc": [ + 4455 + ] + }, + { + "teal": 4336, + "source": 1025, + "pc": [ + 4456 + ] + }, + { + "teal": 4339, + "source": 38, + "pc": [ + 4457, + 4458, + 4459, + 4460, + 4461, + 4462 + ] + }, + { + "teal": 4340, + "source": 38, + "pc": [ + 4463, + 4464, + 4465 + ] + }, + { + "teal": 4341, + "source": 38, + "pc": [ + 4466, + 4467, + 4468, + 4469 + ] + }, + { + "teal": 4344, + "source": 38, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 4470 + ] + }, + { + "teal": 4347, + "source": 38, + "pc": [ + 4471, + 4472, + 4473, + 4474, + 4475, + 4476 + ] + }, + { + "teal": 4348, + "source": 38, + "pc": [ + 4477, + 4478, + 4479, + 4480, + 4481, + 4482 + ] + }, + { + "teal": 4349, + "source": 38, + "pc": [ + 4483, + 4484, + 4485, + 4486, + 4487, + 4488 + ] + }, + { + "teal": 4350, + "source": 38, + "pc": [ + 4489, + 4490, + 4491, + 4492, + 4493, + 4494 + ] + }, + { + "teal": 4351, + "source": 38, + "pc": [ + 4495, + 4496, + 4497, + 4498, + 4499, + 4500 + ] + }, + { + "teal": 4352, + "source": 38, + "pc": [ + 4501, + 4502, + 4503, + 4504, + 4505, + 4506 + ] + }, + { + "teal": 4353, + "source": 38, + "pc": [ + 4507, + 4508, + 4509, + 4510, + 4511, + 4512 + ] + }, + { + "teal": 4354, + "source": 38, + "pc": [ + 4513, + 4514, + 4515, + 4516, + 4517, + 4518 + ] + }, + { + "teal": 4355, + "source": 38, + "pc": [ + 4519, + 4520, + 4521, + 4522, + 4523, + 4524 + ] + }, + { + "teal": 4356, + "source": 38, + "pc": [ + 4525, + 4526, + 4527, + 4528, + 4529, + 4530 + ] + }, + { + "teal": 4357, + "source": 38, + "pc": [ + 4531, + 4532, + 4533, + 4534, + 4535, + 4536 + ] + }, + { + "teal": 4358, + "source": 38, + "pc": [ + 4537, + 4538, + 4539, + 4540, + 4541, + 4542 + ] + }, + { + "teal": 4359, + "source": 38, + "pc": [ + 4543, + 4544 + ] + }, + { + "teal": 4360, + "source": 38, + "pc": [ + 4545, + 4546, + 4547 + ] + }, + { + "teal": 4361, + "source": 38, + "pc": [ + 4548, + 4549, + 4550, + 4551, + 4552, + 4553, + 4554, + 4555, + 4556, + 4557, + 4558, + 4559, + 4560, + 4561, + 4562, + 4563, + 4564, + 4565, + 4566, + 4567, + 4568, + 4569, + 4570, + 4571, + 4572, + 4573, + 4574, + 4575 + ] + }, + { + "teal": 4364, + "source": 38, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 4576 + ] + }, + { + "teal": 4367, + "source": 38, + "pc": [ + 4577, + 4578, + 4579, + 4580, + 4581, + 4582 + ] + }, + { + "teal": 4368, + "source": 38, + "pc": [ + 4583, + 4584, + 4585 + ] + }, + { + "teal": 4369, + "source": 38, + "pc": [ + 4586, + 4587, + 4588, + 4589 + ] + }, + { + "teal": 4372, + "source": 38, + "errorMessage": "this contract does not implement the given ABI method for call UpdateApplication", + "pc": [ + 4590 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9mZWVTaW5rQWRkcgpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfbmZkUmVnaXN0cnlBcHBJZApidG9pCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNhbGxfVXBkYXRlQXBwbGljYXRpb24gKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfdXBkYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIHVwZGF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBcHBsaWNhdGlvbigpOiB2b2lkCnVwZGF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0CgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0xaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEnKSwKCS8vICAgICAgICdUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWFkZHIgTFo0VjJJUlZMQ1hGSks0UkVKVjRUQUdFS0VZVEEyR01SNlRDMjM0NE9CM0wzQUYzTVdYWjZaQUZJUQoJPT0KCgkvLyBUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50Cglhc3NlcnQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJYnRvaQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGNyZWF0aW5nQ29udHJhY3RJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oY3JlYXRpbmdDb250cmFjdElkOiB1aW50NjQsIHZhbGlkYXRvcklkOiB1aW50NjQsIHBvb2xJZDogdWludDY0LCBtaW5FbnRyeVN0YWtlOiB1aW50NjQpOiB2b2lkCi8vCi8vIEluaXRpYWxpemUgdGhlIHN0YWtpbmcgcG9vbCB3LyBvd25lciBhbmQgbWFuYWdlciwgYnV0IGNhbiBvbmx5IGJlIGNyZWF0ZWQgYnkgdGhlIHZhbGlkYXRvciBjb250cmFjdC4KLy8gQHBhcmFtIHt1aW50NjR9IGNyZWF0aW5nQ29udHJhY3RJZCAtIGlkIG9mIGNvbnRyYWN0IHRoYXQgY29uc3RydWN0ZWQgdXMgLSB0aGUgdmFsaWRhdG9yIGFwcGxpY2F0aW9uIChzaW5nbGUgZ2xvYmFsIGluc3RhbmNlKQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgLSBpZCBvZiB2YWxpZGF0b3Igd2UncmUgYSBzdGFraW5nIHBvb2wgb2YKLy8gQHBhcmFtIHt1aW50NjR9IHBvb2xJZCAtIHdoaWNoIHBvb2wgaWQgYXJlIHdlCi8vIEBwYXJhbSB7dWludDY0fSBtaW5FbnRyeVN0YWtlIC0gbWluaW11bSBhbW91bnQgdG8gYmUgaW4gcG9vbCwgYnV0IGFsc28gbWluaW11bSBhbW91bnQgYmFsYW5jZSBjYW4ndCBnbyBiZWxvdyAod2l0aG91dCByZW1vdmluZyBhbGwhKQpjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDQgMAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTA4CgkvLyBjcmVhdGluZ0NvbnRyYWN0SWQgPT09IDAKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTAKCS8vIGFzc2VydCh2YWxpZGF0b3JJZCA9PT0gMCkKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTEKCS8vIGFzc2VydChwb29sSWQgPT09IDApCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWludCAwCgk9PQoJYXNzZXJ0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTEzCgkvLyBhc3NlcnQodmFsaWRhdG9ySWQgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE0CgkvLyBhc3NlcnQocG9vbElkICE9PSAwKQoJZnJhbWVfZGlnIC0zIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE2CgkvLyBhc3NlcnQobWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC00IC8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJaW50IDEwMDAwMDAKCT49CgoJLy8gc3Rha2luZyBwb29sIG11c3QgaGF2ZSBtaW5pbXVtIGVudHJ5IG9mIDEgYWxnbwoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjExNwoJLy8gdGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUgPSBjcmVhdGluZ0NvbnRyYWN0SWQKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE4CgkvLyB0aGlzLnZhbGlkYXRvcklkLnZhbHVlID0gdmFsaWRhdG9ySWQKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzI0OTY0IC8vICJ2YWxpZGF0b3JJZCIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTkKCS8vIHRoaXMucG9vbElkLnZhbHVlID0gcG9vbElkCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMAoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlID0gMAoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgPSAwCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglpbnQgMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTIyCgkvLyB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUgPSBtaW5FbnRyeVN0YWtlCglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglmcmFtZV9kaWcgLTQgLy8gbWluRW50cnlTdGFrZTogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMjMKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGdsb2JhbHMucm91bmQKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWdsb2JhbCBSb3VuZAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI0CgkvLyB0aGlzLmVwb2NoTnVtYmVyLnZhbHVlID0gMAoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyNgoJLy8gdGhpcy5zZXRSb3VuZHNQZXJEYXkoKQoJY2FsbHN1YiBzZXRSb3VuZHNQZXJEYXkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI3CgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI4CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI5CgkvLyB0aGlzLnJld2FyZEFjY3VtdWxhdG9yLnZhbHVlID0gMAoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEzMAoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg2NTc3NmQ2MSAvLyAiZXdtYSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE0MgoJLy8gcmV0dXJuIFNDQk9YX1BFUkJPWCArIHRvdGFsTnVtQnl0ZXMgKiBTQ0JPWF9QRVJCWVRFOwoJaW50IDI1MDAKCWZyYW1lX2RpZyAtMSAvLyB0b3RhbE51bUJ5dGVzOiB1aW50NjQKCWludCA0MDAKCSoKCSsKCXJldHN1YgoKLy8gaW5pdFN0b3JhZ2UocGF5KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3RvcmFnZToKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKG1iclBheW1lbnQpIGZvciBpbml0U3RvcmFnZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGluaXRTdG9yYWdlKHBheSl2b2lkCgljYWxsc3ViIGluaXRTdG9yYWdlCglpbnQgMQoJcmV0dXJuCgovLyBpbml0U3RvcmFnZShtYnJQYXltZW50OiBQYXlUeG4pOiB2b2lkCi8vCi8vIENhbGxlZCBhZnRlciB3ZSdyZSBjcmVhdGVkIGFuZCB0aGVuIGZ1bmRlZCwgc28gd2UgY2FuIGNyZWF0ZSBvdXIgbGFyZ2Ugc3Rha2VycyBsZWRnZXIgc3RvcmFnZQovLyBDYWxsZXIgaGFzIHRvIGdldCBNQlIgYW1vdW50cyBmcm9tIFZhbGlkYXRvclJlZ2lzdHJ5IHRvIGtub3cgaG93IG11Y2ggdG8gZnVuZCB1cyB0byBjb3ZlciB0aGUgYm94IHN0b3JhZ2UgY29zdAovLyBJZiB0aGlzIGlzIHBvb2wgMSBBTkQgdGhlIHZhbGlkYXRvciBoYXMgc3BlY2lmaWVkIGEgcmV3YXJkIHRva2VuLCBvcHQtaW4gdG8gdGhhdCB0b2tlbgovLyBzbyB0aGF0IHRoZSB2YWxpZGF0b3IgY2FuIHNlZWQgdGhlIHBvb2wgd2l0aCBmdXR1cmUgcmV3YXJkcyBvZiB0aGF0IHRva2VuLgovLyBAcGFyYW0gbWJyUGF5bWVudCBwYXltZW50IGZyb20gY2FsbGVyIHdoaWNoIGNvdmVycyBtYnIgaW5jcmVhc2Ugb2YgbmV3IHN0YWtpbmcgcG9vbHMnIHN0b3JhZ2UKaW5pdFN0b3JhZ2U6Cglwcm90byAxIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1MwoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCgoJLy8gc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTYKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjAKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDEgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MQoJLy8gZXh0cmFNQlIgPSBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEgPyBBU1NFVF9IT0xESU5HX0ZFRSA6IDAKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMDoKCWJ6ICp0ZXJuYXJ5MF9mYWxzZQoJaW50IDEwMDAwMAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyBleHRyYU1CUjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MgoJLy8gUG9vbEluaXRNYnIgPQoJLy8gICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICBleHRyYU1CUiArCgkvLyAgICAgICB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDcgLyogJ3N0YWtlcnMnIG5hbWUgKi8gKyBsZW48U3Rha2VkSW5mbz4oKSAqIE1BWF9TVEFLRVJTX1BFUl9QT09MKQoJaW50IDEwMDAwMAoJZnJhbWVfZGlnIDIgLy8gZXh0cmFNQlI6IHVpbnQ2NAoJKwoJaW50IDEyODA3CgljYWxsc3ViIGNvc3RGb3JCb3hTdG9yYWdlCgkrCglmcmFtZV9idXJ5IDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IFBvb2xJbml0TWJyIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoiUG9vbEluaXRNYnIifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2OQoJLy8gdGhpcy5zdGFrZXJzLmNyZWF0ZSgpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCglpbnQgMTI4MDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTcxCgkvLyBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQxCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTczCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgICAgYXNzZXRBbW91bnQ6IDAsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NAoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTc1CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NgoJLy8gYXNzZXRBbW91bnQ6IDAKCWludCAwCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMV9lbmQ6CglyZXRzdWIKCi8vIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoc3Rha2VyKSBmb3IgYWRkU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlZEFtb3VudFBheW1lbnQpIGZvciBhZGRTdGFrZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoJY2FsbHN1YiBhZGRTdGFrZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgc3Rha2VyOiBBZGRyZXNzKTogdWludDY0Ci8vCi8vIEFkZHMgc3Rha2UgdG8gdGhlIGdpdmVuIGFjY291bnQuCi8vIENhbiBPTkxZIGJlIGNhbGxlZCBieSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0IHRoYXQgY3JlYXRlZCB1cwovLyBNdXN0IHJlY2VpdmUgcGF5bWVudCBmcm9tIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIGFtb3VudCBiZWluZyBzdGFrZWQuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IHByaW9yIHBheW1lbnQgY29taW5nIGZyb20gdmFsaWRhdG9yIGNvbnRyYWN0IHRvIHVzIG9uIGJlaGFsZiBvZiBzdGFrZXIuCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgYWRkaW5nIG5ldyBzdGFrZQovLyBAdGhyb3dzIHtFcnJvcn0gLSBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0YWtpbmcgcG9vbCBpcyBmdWxsLgovLyBAcmV0dXJucyB7dWludDY0fSBuZXcgJ2VudHJ5IHJvdW5kJyByb3VuZCBudW1iZXIgb2Ygc3Rha2UgYWRkCmFkZFN0YWtlOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTIKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTUKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcywKCS8vICAgICAgICdzdGFrZSBjYW4gb25seSBiZSBhZGRlZCB2aWEgdGhlIHZhbGlkYXRvciBjb250cmFjdCcKCS8vICAgICApCgl0eG4gU2VuZGVyCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoKCS8vIHN0YWtlIGNhbiBvbmx5IGJlIGFkZGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTk5CgkvLyBhc3NlcnQoc3Rha2VyICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIwMgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMDYKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MsCgkvLyAgICAgICByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjE1CgkvLyBlbnRyeVJvdW5kID0gZ2xvYmFscy5yb3VuZCArIEFMR09SQU5EX1NUQUtJTkdfQkxPQ0tfREVMQVkKCWdsb2JhbCBSb3VuZAoJaW50IDMyMAoJKwoJZnJhbWVfYnVyeSAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTYKCS8vIGZpcnN0RW1wdHkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50CglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjAKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMiAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjEKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWZyYW1lX2RpZyAyIC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjI2CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyOQoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMwCgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjNfZW5kCgoJLy8gKmlmM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMzCgkvLyBjbXBTdGFrZXIuZW50cnlSb3VuZCA9IGVudHJ5Um91bmQKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDU2IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM2CgkvLyB0aGlzLnN0YWtlcnMudmFsdWVbaV0gPSBjbXBTdGFrZXIKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM4CgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJYiAqYWRkU3Rha2UqcmV0dXJuCgoqaWYzX2VuZDoKCS8vICppZjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjQwCgkvLyBmaXJzdEVtcHR5ID09PSAwICYmIGNtcFN0YWtlci5hY2NvdW50ID09PSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDI6CglieiAqaWY0X2VuZAoKCS8vICppZjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0MQoJLy8gZmlyc3RFbXB0eSA9IGkgKyAxCglmcmFtZV9kaWcgMyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gZmlyc3RFbXB0eTogdWludDY0CgoqaWY0X2VuZDoKCipmb3JfMF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjUKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0NQoJLy8gZmlyc3RFbXB0eSA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjVfZW5kCgoJLy8gKmlmNV9jb25zZXF1ZW50CgkvLyBTdGFraW5nIHBvb2wgZnVsbAoJZXJyCgoqaWY1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTIKCS8vIGFzc2VydChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCA+PSB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUsICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnKQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglhcHBfZ2xvYmFsX2dldAoJPj0KCgkvLyBtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTQKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMudmFsdWVbZmlyc3RFbXB0eSAtIDFdLmFjY291bnQgPT09IGdsb2JhbHMuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAxCgktCglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTUKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtmaXJzdEVtcHR5IC0gMV0gPSB7CgkvLyAgICAgICBhY2NvdW50OiBzdGFrZXIsCgkvLyAgICAgICBiYWxhbmNlOiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCwKCS8vICAgICAgIHRvdGFsUmV3YXJkZWQ6IDAsCgkvLyAgICAgICByZXdhcmRUb2tlbkJhbGFuY2U6IDAsCgkvLyAgICAgICBlbnRyeVJvdW5kOiBlbnRyeVJvdW5kLAoJLy8gICAgIH0KCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50IDEKCS0KCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gZW50cnlSb3VuZDogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI2MgoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlICs9IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjYzCgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKKmFkZFN0YWtlKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKLy8gcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX3JlbW92ZVN0YWtlOgoJLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoc3Rha2VyKSBmb3IgcmVtb3ZlU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoJY2FsbHN1YiByZW1vdmVTdGFrZQoJaW50IDEKCXJldHVybgoKLy8gcmVtb3ZlU3Rha2Uoc3Rha2VyOiBBZGRyZXNzLCBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gUmVtb3ZlcyBzdGFrZSBvbiBiZWhhbGYgb2YgY2FsbGVyIChyZW1vdmluZyBvd24gc3Rha2UpLiAgSWYgYW55IHRva2VuIHJld2FyZHMgZXhpc3QsIHRob3NlIGFyZSBhbHdheXMgc2VudCBpbgovLyBmdWxsLiBBbHNvIG5vdGlmaWVzIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIHRoaXMgcG9vbHMgdmFsaWRhdG9yIG9mIHRoZSBzdGFrZXIgLyBiYWxhbmNlIGNoYW5nZXMuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gYWNjb3VudCB0byByZW1vdmUuICBub3JtYWxseSBzYW1lIGFzIHNlbmRlciwgYnV0IHRoZSB2YWxpZGF0b3Igb3duZXIgb3IgbWFuYWdlciBjYW4gYWxzbyBjYWxsCi8vIHRoaXMgdG8gcmVtb3ZlIHRoZSBzcGVjaWZpZWQgc3Rha2VyIGV4cGxpY2l0bHkuIFRoZSByZW1vdmVkIHN0YWtlIE1VU1Qgb25seSBnbyB0byB0aGUgc3Rha2VyIG9mIGNvdXJzZS4gIFRoaXMgaXMKLy8gc28gYSB2YWxpZGF0b3IgY2FuIHNodXQgZG93biBhIHBvb29sIGFuZCByZWZ1bmQgdGhlIHN0YWtlcnMuICBJdCBjYW4gYWxzbyBiZSB1c2VkIHRvIGtpY2sgb3V0IHN0YWtlcnMgd2hvIG5vIGxvbmdlcgovLyBtZWV0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzIChkZXRlcm1pbmVkIGJ5IHRoZSBub2RlIGRhZW1vbikuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1Vuc3Rha2UgLSBUaGUgYW1vdW50IG9mIHN0YWtlIHRvIGJlIHJlbW92ZWQuICBTcGVjaWZ5IDAgdG8gcmVtb3ZlIGFsbCBzdGFrZS4KLy8gQHRocm93cyB7RXJyb3J9IElmIHRoZSBhY2NvdW50IGhhcyBpbnN1ZmZpY2llbnQgYmFsYW5jZSBvciBpZiB0aGUgYWNjb3VudCBpcyBub3QgZm91bmQuCnJlbW92ZVN0YWtlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNgoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgwCgkvLyBzdGFrZXIgIT09IHRoaXMudHhuLnNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJdHhuIFNlbmRlcgoJIT0KCWJ6ICppZjZfZW5kCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLAoJLy8gICAgICAgICAnSWYgc3Rha2VyIGlzIG5vdCBzZW5kZXIgaW4gcmVtb3ZlU3Rha2UgY2FsbCwgdGhlbiBzZW5kZXIgTVVTVCBiZSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICAgICkKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIElmIHN0YWtlciBpcyBub3Qgc2VuZGVyIGluIHJlbW92ZVN0YWtlIGNhbGwsIHRoZW4gc2VuZGVyIE1VU1QgYmUgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKKmlmNl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjg3CgkvLyB0aGlzLmNoZWNrSWZCaW5DbG9zZWQoKQoJY2FsbHN1YiBjaGVja0lmQmluQ2xvc2VkCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8xX2VuZAoKCS8vICppZjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjkwCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTEKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5MwoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjk0CgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjhfZW5kCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyAqaWY5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5NQoJLy8gYW1vdW50VG9VbnN0YWtlID09PSAwCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmOV9lbmQKCgkvLyAqaWY5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTcKCS8vIGFtb3VudFRvVW5zdGFrZSA9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfYnVyeSAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoKKmlmOV9lbmQ6CgkvLyAqaWYxMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTkKCS8vIGNtcFN0YWtlci5iYWxhbmNlIDwgYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0Cgk8CglieiAqaWYxMF9lbmQKCgkvLyAqaWYxMF9jb25zZXF1ZW50CgkvLyBJbnN1ZmZpY2llbnQgYmFsYW5jZQoJZXJyCgoqaWYxMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzAyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSAtPSBhbW91bnRUb1Vuc3Rha2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCS0KCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwMwoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLT0gYW1vdW50VG9VbnN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDUKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDYKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPiAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDggOAoJYnRvaQoJaW50IDAKCT4KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vICppZjEyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwOAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjEyX2Vsc2UKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzA5CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzEwCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTEKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDMgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgICAgICAgYXNzZXRSZWNlaXZlcjogc3Rha2VyLAoJLy8gICAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE4CgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkKCWZyYW1lX2RpZyAzIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTkKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyMAoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjIKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzIzCgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTJfZW5kCgoqaWYxMl9lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyOAoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTJfZW5kOgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMzNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgIGNtcFN0YWtlci5iYWxhbmNlID09PSAwIHx8IGNtcFN0YWtlci5iYWxhbmNlID49IHRoaXMubWluRW50cnlTdGFrZS52YWx1ZSwKCS8vICAgICAgICAgICAnY2Fubm90IHJlZHVjZSBiYWxhbmNlIGJlbG93IG1pbmltdW0gYWxsb3dlZCBzdGFrZSB1bmxlc3MgYWxsIGlzIHJlbW92ZWQnCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWR1cAoJYm56ICpza2lwX29yMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWJ5dGUgMHg2ZDY5NmU0NTZlNzQ3Mjc5NTM3NDYxNmI2NSAvLyAibWluRW50cnlTdGFrZSIKCWFwcF9nbG9iYWxfZ2V0Cgk+PQoJfHwKCipza2lwX29yMDoKCS8vIGNhbm5vdCByZWR1Y2UgYmFsYW5jZSBiZWxvdyBtaW5pbXVtIGFsbG93ZWQgc3Rha2UgdW5sZXNzIGFsbCBpcyByZW1vdmVkCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQyCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgYW1vdW50OiBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgcmVjZWl2ZXI6IHN0YWtlciwKCS8vICAgICAgICAgICBub3RlOiAndW5zdGFrZWQnLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDMKCS8vIGFtb3VudDogYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0NAoJLy8gcmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDUKCS8vIG5vdGU6ICd1bnN0YWtlZCcKCWJ5dGUgMHg3NTZlNzM3NDYxNmI2NTY0IC8vICJ1bnN0YWtlZCIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQ3CgkvLyBzdGFrZXJSZW1vdmVkID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gc3Rha2VyUmVtb3ZlZDogYm9vbAoKCS8vICppZjEzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0OAoJLy8gY21wU3Rha2VyLmJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTAKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSAtPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MQoJLy8gY21wU3Rha2VyLmFjY291bnQgPSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCAwCglnbG9iYWwgWmVyb0FkZHJlc3MKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MgoJLy8gY21wU3Rha2VyLnRvdGFsUmV3YXJkZWQgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0MAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTQKCS8vIHN0YWtlclJlbW92ZWQgPSB0cnVlCglpbnQgMQoJZnJhbWVfYnVyeSA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCippZjEzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTcKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTkKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgNSAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjAKCS8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4ID0gKGFtb3VudFRvVW5zdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkKCWZyYW1lX2RpZyAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDUgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCWl0b2IKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAoYW1vdW50VG9VbnN0YWtlIGFzIHVpbnQxMjgpICogKHJvdW5kc0xlZnRJbkJpbiBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2MQoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlID0gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgliLQoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2NgoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgICBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQsCgkvLyAgICAgICAgICAgICBzdGFrZXJSZW1vdmVkLAoJLy8gICAgICAgICAgIF0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzY3CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjgKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgICAgIHsgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfSwKCS8vICAgICAgICAgICAgIHN0YWtlciwKCS8vICAgICAgICAgICAgIGFtb3VudFRvVW5zdGFrZSwKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIHN0YWtlclJlbW92ZWQsCgkvLyAgICAgICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mzc2CgkvLyByZXR1cm47CglyZXRzdWIKCippZjhfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGFjY291bnQgbm90IGZvdW5kCgllcnIKCXJldHN1YgoKLy8gY2xhaW1Ub2tlbnMoKXZvaWQKKmFiaV9yb3V0ZV9jbGFpbVRva2VuczoKCS8vIGV4ZWN1dGUgY2xhaW1Ub2tlbnMoKXZvaWQKCWNhbGxzdWIgY2xhaW1Ub2tlbnMKCWludCAxCglyZXR1cm4KCi8vIGNsYWltVG9rZW5zKCk6IHZvaWQKLy8KLy8gQ2xhaW1zIGFsbCB0aGUgYXZhaWxhYmxlIHJld2FyZCB0b2tlbnMgYSBzdGFrZXIgaGFzIGF2YWlsYWJsZSwgc2VuZGluZyB0aGVpciBlbnRpcmUgYmFsYW5jZSB0byB0aGUgc3Rha2VyIGZyb20KLy8gcG9vbCAxIChlaXRoZXIgZGlyZWN0bHksIG9yIHZpYSB2YWxpZGF0b3ItPnBvb2wxIHRvIHBheSBpdCBvdXQpCi8vIEFsc28gbm90aWZpZXMgdGhlIHZhbGlkYXRvciBjb250cmFjdCBmb3IgdGhpcyBwb29scyB2YWxpZGF0b3Igb2YgdGhlIHN0YWtlciAvIGJhbGFuY2UgY2hhbmdlcy4KY2xhaW1Ub2tlbnM6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDAgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8yX2VuZAoKCS8vICppZjE0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5NAoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTUKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE0X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTcKCS8vIGNtcFN0YWtlciA9IGNsb25lKHRoaXMuc3Rha2Vycy52YWx1ZVtpXSkKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWYxNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTgKCS8vIGNtcFN0YWtlci5hY2NvdW50ID09PSBzdGFrZXIKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglieiAqaWYxNV9lbmQKCgkvLyAqaWYxNV9jb25zZXF1ZW50CgkvLyAqaWYxNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjE2X2VuZAoKCS8vICppZjE2X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDAKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMTZfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwMgoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vICppZjE3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwNAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjE3X2Vsc2UKCgkvLyAqaWYxN19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA1CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA2CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDcKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDQgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDEyCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCksCgkvLyAgICAgICAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxMwoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgNCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE0CgkvLyBhc3NldFJlY2VpdmVyOiBzdGFrZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxNQoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MTcKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDMgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE4CgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTdfZW5kCgoqaWYxN19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyMwoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MjQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyOAoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzMwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzNAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDM1CgkvLyBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ0MwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWYxNV9lbmQ6CgoqZm9yXzJfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzkzCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8yCgoqZm9yXzJfZW5kOgoJLy8gYWNjb3VudCBub3QgZm91bmQKCWVycgoJcmV0c3ViCgovLyBnZXRTdGFrZXJJbmZvKGFkZHJlc3MpKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFN0YWtlckluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZXJJbmZvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFN0YWtlckluZm8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTdGFrZXJJbmZvKHN0YWtlcjogQWRkcmVzcyk6IFN0YWtlZEluZm8KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIGEgZ2l2ZW4gc3Rha2VyLgovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEByZXR1cm5zIHtTdGFrZWRJbmZvfSAtIFRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIHRoZSBnaXZlbiBzdGFrZXIuCi8vIEB0aHJvd3Mge0Vycm9yfSAtIElmIHRoZSBzdGFrZXIncyBhY2NvdW50IGlzIG5vdCBmb3VuZC4KZ2V0U3Rha2VySW5mbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8zOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OQoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAyMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAyMDAKCTwKCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NjAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE4X2VuZDoKCS8vICppZjE5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ2MgoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldLmFjY291bnQgPT09IHN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCT09CglieiAqaWYxOV9lbmQKCgkvLyAqaWYxOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDYzCgkvLyByZXR1cm4gdGhpcy5zdGFrZXJzLnZhbHVlW2ldOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJYiAqZ2V0U3Rha2VySW5mbypyZXR1cm4KCippZjE5X2VuZDoKCipmb3JfM19jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NTgKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzMKCipmb3JfM19lbmQ6CgkvLyBhY2NvdW50IG5vdCBmb3VuZAoJZXJyCgoqZ2V0U3Rha2VySW5mbypyZXR1cm46CgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZDoKCS8vIGFtb3VudFRvU2VuZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAyIChzdGFrZXIpIGZvciBwYXlUb2tlblJld2FyZCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBwYXlUb2tlblJld2FyZAoJaW50IDEKCXJldHVybgoKLy8gcGF5VG9rZW5SZXdhcmQoc3Rha2VyOiBBZGRyZXNzLCByZXdhcmRUb2tlbjogdWludDY0LCBhbW91bnRUb1NlbmQ6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gW0ludGVybmFsIHByb3RvY29sIG1ldGhvZF0gUmVtb3ZlIGEgc3BlY2lmaWVkIGFtb3VudCBvZiAnY29tbXVuaXR5IHRva2VuJyByZXdhcmRzIGZvciBhIHN0YWtlci4KLy8gVGhpcyBjYW4gT05MWSBiZSBjYWxsZWQgYnkgb3VyIHZhbGlkYXRvciBhbmQgb25seSBpZiB3ZSdyZSBwb29sIDEgLSB3aXRoIHRoZSB0b2tlbi4KLy8gTm90ZTogdGhpcyBjYW4gYWxzbyBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIGFzIHBhcnQgb2YgT1dORVIgd2FudGluZyB0byBzZW5kIHRoZSByZXdhcmQgdG9rZW5zCi8vIHNvbWV3aGVyZSBlbHNlIChpZSBpZiB0aGV5J3JlIHN1bnNldHRpbmcgdGhlaXIgdmFsaWRhdG9yIGFuZCBuZWVkIHRoZSByZXdhcmQgdG9rZW5zIGJhY2spLgovLyBJdCdzIHVwIHRvIHRoZSB2YWxpZGF0b3IgdG8gZW5zdXJlIHRoYXQgdGhlIGJhbGFuY2UgaW4gcmV3YXJkVG9rZW5IZWxkQmFjayBpcyBob25vcmVkLgovLyBAcGFyYW0gc3Rha2VyIC0gdGhlIHN0YWtlciBhY2NvdW50IHRvIHNlbmQgcmV3YXJkcyB0bwovLyBAcGFyYW0gcmV3YXJkVG9rZW4gLSBpZCBvZiByZXdhcmQgdG9rZW4gKHRvIGF2b2lkIHJlLWVudHJhbmN5IGluIGNhbGxpbmcgdmFsaWRhdG9yIGJhY2sgdG8gZ2V0IGlkKQovLyBAcGFyYW0gYW1vdW50VG9TZW5kIC0gYW1vdW50IHRvIHNlbmQgdGhlIHN0YWtlciAodGhlcmUgaXMgc2lnbmlmaWNhbnQgdHJ1c3QgaGVyZSghKSAtIGFsc28gd2h5IG9ubHkgdmFsaWRhdG9yIGNhbiBjYWxsIHVzCnBheVRva2VuUmV3YXJkOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ4MQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKS5hZGRyZXNzLAoJLy8gICAgICAgJ3RoaXMgY2FuIG9ubHkgYmUgY2FsbGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCT09CgoJLy8gdGhpcyBjYW4gb25seSBiZSBjYWxsZWQgdmlhIHRoZSB2YWxpZGF0b3IgY29udHJhY3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODUKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ211c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMnKQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoKCS8vIG11c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODYKCS8vIGFzc2VydChyZXdhcmRUb2tlbiAhPT0gMCwgJ2NhbiBvbmx5IGNsYWltIHRva2VuIHJld2FyZHMgZnJvbSB2YWxpZGF0b3IgdGhhdCBoYXMgdGhlbScpCglmcmFtZV9kaWcgLTIgLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gY2FuIG9ubHkgY2xhaW0gdG9rZW4gcmV3YXJkcyBmcm9tIHZhbGlkYXRvciB0aGF0IGhhcyB0aGVtCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDg5CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbiksCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50VG9TZW5kLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDkwCgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbikKCWZyYW1lX2RpZyAtMiAvLyByZXdhcmRUb2tlbjogdWludDY0CglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0OTEKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ5MgoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudFRvU2VuZAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU2VuZDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyB1cGRhdGVBbGdvZFZlcihzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyOgoJLy8gYWxnb2RWZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHVwZGF0ZUFsZ29kVmVyKHN0cmluZyl2b2lkCgljYWxsc3ViIHVwZGF0ZUFsZ29kVmVyCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBbGdvZFZlcihhbGdvZFZlcjogc3RyaW5nKTogdm9pZAovLwovLyBVcGRhdGUgdGhlIChob25vciBzeXN0ZW0pIGFsZ29kIHZlcnNpb24gZm9yIHRoZSBub2RlIGFzc29jaWF0ZWQgdG8gdGhpcyBwb29sLiAgVGhlIG5vZGUgbWFuYWdlbWVudCBkYWVtb24KLy8gc2hvdWxkIGNvbXBhcmUgaXRzIGN1cnJlbnQgbm9kZXMgdmVyc2lvbiB0byB0aGUgdmVyc2lvbiBzdG9yZWQgaW4gZ2xvYmFsIHN0YXRlLCB1cGRhdGluZyB3aGVuIGRpZmZlcmVudC4KLy8gVGhlIHJldGkgbm9kZSBkYWVtb24gY29tcG9zZXMgaXRzIG93biB2ZXJzaW9uIHN0cmluZyB1c2luZyBmb3JtYXQ6Ci8vIHttYWpvcn0ue21pbm9yfS57YnVpbGR9IHticmFuY2h9IFt7Y29tbWl0IGhhc2h9XSwKLy8gaWU6IDMuMjIuMCByZWwvc3RhYmxlIFs2YjUwODk3NV0KLy8gWyBPTkxZIE9XTkVSIE9SIE1BTkFHRVIgQ0FOIENBTEwgXQovLyBAcGFyYW0ge3N0cmluZ30gYWxnb2RWZXIgLSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBhbGdvcmFuZCBub2RlIGRhZW1vbiB2ZXJzaW9uIChyZXRpIG5vZGUgZGFlbW9uIGNvbXBvc2VzIGl0cyBvd24gbWV0YSB2ZXJzaW9uKQp1cGRhdGVBbGdvZFZlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDYKCS8vIGFzc2VydCh0aGlzLmlzT3duZXJPck1hbmFnZXJDYWxsZXIoKSwgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicpCgljYWxsc3ViIGlzT3duZXJPck1hbmFnZXJDYWxsZXIKCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDcKCS8vIHRoaXMuYWxnb2RWZXIudmFsdWUgPSBhbGdvZFZlcgoJYnl0ZSAweDYxNmM2NzZmNjQ1NjY1NzIgLy8gImFsZ29kVmVyIgoJZnJhbWVfZGlnIC0xIC8vIGFsZ29kVmVyOiBzdHJpbmcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZAoqYWJpX3JvdXRlX2Vwb2NoQmFsYW5jZVVwZGF0ZToKCS8vIGV4ZWN1dGUgZXBvY2hCYWxhbmNlVXBkYXRlKCl2b2lkCgljYWxsc3ViIGVwb2NoQmFsYW5jZVVwZGF0ZQoJaW50IDEKCXJldHVybgoKLy8gZXBvY2hCYWxhbmNlVXBkYXRlKCk6IHZvaWQKLy8KLy8gVXBkYXRlcyB0aGUgYmFsYW5jZSBvZiBzdGFrZXJzIGluIHRoZSBwb29sIGJhc2VkIG9uIHRoZSByZWNlaXZlZCAncmV3YXJkcycgKGN1cnJlbnQgYmFsYW5jZSB2cyBrbm93biBzdGFrZWQgYmFsYW5jZSkKLy8gc3Rha2VycyBvdXRzdGFuZGluZyBiYWxhbmNlIGlzIGFkanVzdGVkIGJhc2VkIG9uIHRoZWlyICUgb2Ygc3Rha2UgYW5kIHRpbWUgaW4gdGhlIGN1cnJlbnQgZXBvY2ggLSBzbyB0aGF0IGJhbGFuY2UKLy8gY29tcG91bmRzIG92ZXIgdGltZSBhbmQgc3Rha2VyIGNhbiByZW1vdmUgdGhhdCBhbW91bnQgYXQgd2lsbC4KLy8gVGhlIHZhbGlkYXRvciBpcyBwYWlkIHRoZWlyIHBlcmNlbnRhZ2UgZWFjaCBlcG9jaCBwYXlvdXQuCi8vCi8vIE5vdGU6IEFOWU9ORSBjYW4gY2FsbCB0aGlzLgplcG9jaEJhbGFuY2VVcGRhdGU6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzNgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjAKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjEKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUyMgoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjkKCS8vIGVwb2NoUm91bmRMZW5ndGggPSB2YWxpZGF0b3JDb25maWcuZXBvY2hSb3VuZExlbmd0aCBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2OSA0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMiAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMQoJLy8gdGhpc0Vwb2NoQmVnaW4gPSBjdXJSb3VuZCAtIChjdXJSb3VuZCAlIGVwb2NoUm91bmRMZW5ndGgpCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCSUKCS0KCWZyYW1lX2J1cnkgMyAvLyB0aGlzRXBvY2hCZWdpbjogdWludDY0CgoJLy8gKmlmMjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM0CgkvLyB0aGlzLmxhc3RQYXlvdXQuZXhpc3RzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoJc3dhcAoJcG9wCglieiAqaWYyMF9lbmQKCgkvLyAqaWYyMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM1CgkvLyBsYXN0UGF5b3V0RXBvY2ggPSB0aGlzLmxhc3RQYXlvdXQudmFsdWUgLSAodGhpcy5sYXN0UGF5b3V0LnZhbHVlICUgZXBvY2hSb3VuZExlbmd0aCkKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgklCgktCglmcmFtZV9idXJ5IDQgLy8gbGFzdFBheW91dEVwb2NoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM5CgkvLyBhc3NlcnQobGFzdFBheW91dEVwb2NoICE9PSB0aGlzRXBvY2hCZWdpbiwgImNhbid0IGNhbGwgZXBvY2hCYWxhbmNlVXBkYXRlIGluIHNhbWUgZXBvY2ggYXMgcHJpb3IgY2FsbCIpCglmcmFtZV9kaWcgNCAvLyBsYXN0UGF5b3V0RXBvY2g6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJIT0KCgkvLyBjYW4ndCBjYWxsIGVwb2NoQmFsYW5jZVVwZGF0ZSBpbiBzYW1lIGVwb2NoIGFzIHByaW9yIGNhbGwKCWFzc2VydAoKKmlmMjBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU0MgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDUKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGN1clJvdW5kCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDYKCS8vIHRoaXMuZXBvY2hOdW1iZXIudmFsdWUgKz0gMQoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgkrCglieXRlIDB4NjU3MDZmNjM2ODRlNzU2ZDYyNjU3MiAvLyAiZXBvY2hOdW1iZXIiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTEKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDUgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1MgoJLy8gcG9vbE9uZUFwcElEID0gdGhpcy5hcHAuaWQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTMKCS8vIHBvb2xPbmVBZGRyZXNzID0gdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKCS8vICppZjIxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OAoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjIxX2VuZAoKCS8vICppZjIxX2NvbnNlcXVlbnQKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OQoJLy8gdGhpcy5wb29sSWQudmFsdWUgIT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJIT0KCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjEKCS8vIHBvb2xPbmVBcHBJRCA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0UG9vbEFwcElkPih7CgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWUsIDFdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTYyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCAxXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjUKCS8vIHBvb2xPbmVBZGRyZXNzID0gQXBwSUQuZnJvbVVpbnQ2NChwb29sT25lQXBwSUQpLmFkZHJlc3MKCWZyYW1lX2RpZyA2IC8vIHBvb2xPbmVBcHBJRDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKKmlmMjJfZW5kOgoJLy8gKmlmMjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcwCgkvLyB0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoJYnogKmlmMjNfZWxzZQoKCS8vICppZjIzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzEKCS8vIHRva2VuUGF5b3V0UmF0aW8gPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLnNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWIgKmlmMjNfZW5kCgoqaWYyM19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU3NwoJLy8gdG9rZW5QYXlvdXRSYXRpbyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xPbmVBcHBJRCksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3sgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzgKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQocG9vbE9uZUFwcElEKQoJZnJhbWVfZGlnIDYgLy8gcG9vbE9uZUFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzkKCS8vIG1ldGhvZEFyZ3M6IFt7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH1dCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJZnJhbWVfYnVyeSA4IC8vIHRva2VuUGF5b3V0UmF0aW86IFBvb2xUb2tlblBheW91dFJhdGlvCgoqaWYyM19lbmQ6CgoqaWYyMV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTg2CgkvLyB2YWxpZGF0b3JTdGF0ZSA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yU3RhdGU+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnZXRWYWxpZGF0b3JTdGF0ZSh1aW50NjQpKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1ODcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU4OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTkwCgkvLyByZXdhcmRUb2tlbkhlbGRCYWNrID0gdmFsaWRhdG9yU3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDkgLy8gdmFsaWRhdG9yU3RhdGU6ICh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMTAgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU5NgoJLy8gYWxnb1Jld2FyZEF2YWlsID0gdGhpcy5hcHAuYWRkcmVzcy5iYWxhbmNlIC0gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLSB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1OTcKCS8vIGlzUG9vbFNhdHVyYXRlZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAxMiAvLyBpc1Bvb2xTYXR1cmF0ZWQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTk4CgkvLyBhbGdvU2F0dXJhdGlvbkFtdCA9IHRoaXMuYWxnb1NhdHVyYXRpb25MZXZlbCgpCgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWZyYW1lX2J1cnkgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoKCS8vICppZjI0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNgoJLy8gdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkID4gYWxnb1NhdHVyYXRpb25BbXQKCWZyYW1lX2RpZyA5IC8vIHZhbGlkYXRvclN0YXRlOiAodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMCA4CglidG9pCglmcmFtZV9kaWcgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoJPgoJYnogKmlmMjRfZW5kCgoJLy8gKmlmMjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNwoJLy8gaXNQb29sU2F0dXJhdGVkID0gdHJ1ZQoJaW50IDEKCWZyYW1lX2J1cnkgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCgoqaWYyNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjEzCgkvLyB0b2tlblJld2FyZEF2YWlsID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNAoJLy8gdG9rZW5SZXdhcmRQYWlkT3V0ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE1CgkvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE2CgkvLyBleGNlc3NUb0ZlZVNpbmsgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxNyAvLyBleGNlc3NUb0ZlZVNpbms6IHVpbnQ2NAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNwoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2MTgKCS8vIHRva2VuUmV3YXJkQmFsID0KCS8vICAgICAgICAgcG9vbE9uZUFkZHJlc3MuYXNzZXRCYWxhbmNlKEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDcgLy8gcG9vbE9uZUFkZHJlc3M6IGFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEwIC8vIHJld2FyZFRva2VuSGVsZEJhY2s6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxOCAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gKmlmMjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjIzCgkvLyB0b2tlblJld2FyZEJhbCA+PSB2YWxpZGF0b3JDb25maWcucmV3YXJkUGVyUGF5b3V0CglmcmFtZV9kaWcgMTggLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTYxIDgKCWJ0b2kKCT49CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjI5CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHRva2VuUGF5b3V0UmF0aW8ucG9vbFBjdE9mV2hvbGVbdGhpcy5wb29sSWQudmFsdWUgLSAxXQoJZnJhbWVfZGlnIDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWludCAwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfYnVyeSAxOSAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYzMgoJLy8gdG9rZW5SZXdhcmRBdmFpbCA9IHdpZGVSYXRpbyhbdmFsaWRhdG9yQ29uZmlnLnJld2FyZFBlclBheW91dCwgb3VyUG9vbFBjdE9mV2hvbGVdLCBbMV8wMDBfMDAwXSkKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2MSA4CglidG9pCglmcmFtZV9kaWcgMTkgLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJbXVsdwoJaW50IDAKCWludCAxXzAwMF8wMDAKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKKmlmMjZfZW5kOgoKKmlmMjVfZW5kOgoJLy8gKmlmMjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjM1CgkvLyB0b2tlblJld2FyZEF2YWlsID09PSAwCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjI3X2VuZAoKCS8vICppZjI3X2NvbnNlcXVlbnQKCS8vICppZjI4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0MAoJLy8gYWxnb1Jld2FyZEF2YWlsIDwgMV8wMDBfMDAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAxXzAwMF8wMDAKCTwKCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDEKCS8vIGxvZygnIXRva2VuJiYhbm9hbGdvIHRvIHBheScpCglieXRlIDB4MjE3NDZmNmI2NTZlMjYyNjIxNmU2ZjYxNmM2NzZmMjA3NDZmMjA3MDYxNzkgLy8gIiF0b2tlbiYmIW5vYWxnbyB0byBwYXkiCglsb2cKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjQyCgkvLyByZXR1cm47CglyZXRzdWIKCippZjI4X2VuZDoKCippZjI3X2VuZDoKCS8vICppZjI5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0NgoJLy8gaXNQb29sU2F0dXJhdGVkCglmcmFtZV9kaWcgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCglieiAqaWYyOV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjI5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDkKCS8vIGRpbWluaXNoZWRSZXdhcmQgPSB3aWRlUmF0aW8oW2FsZ29SZXdhcmRBdmFpbCwgYWxnb1NhdHVyYXRpb25BbXRdLCBbdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkXSkKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDEzIC8vIGFsZ29TYXR1cmF0aW9uQW10OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTAgOAoJYnRvaQoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MQoJLy8gZXhjZXNzVG9GZWVTaW5rID0gYWxnb1Jld2FyZEF2YWlsIC0gZGltaW5pc2hlZFJld2FyZAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE3IC8vIGV4Y2Vzc1RvRmVlU2luazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgICBhbW91bnQ6IGV4Y2Vzc1RvRmVlU2luaywKCS8vICAgICAgICAgcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpLAoJLy8gICAgICAgICBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NTMKCS8vIGFtb3VudDogZXhjZXNzVG9GZWVTaW5rCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1NAoJLy8gcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpCgljYWxsc3ViIGdldEZlZVNpbmsKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU1CgkvLyBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycKCWJ5dGUgMHg3MDZmNmY2YzIwNzM2MTc0NzU3MjYxNzQ2NTY0MmMyMDY1Nzg2MzY1NzM3MzIwNzQ2ZjIwNjY2NTY1MjA3MzY5NmU2YiAvLyAicG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luayIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU4CgkvLyBhbGdvUmV3YXJkQXZhaWwgPSBkaW1pbmlzaGVkUmV3YXJkCglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CglmcmFtZV9idXJ5IDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgliICppZjI5X2VuZAoKKmlmMjlfZWxzZWlmMV9jb25kaXRpb246CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU5CgkvLyB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjIKCS8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0ID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICBbYWxnb1Jld2FyZEF2YWlsLCB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yIGFzIHVpbnQ2NF0sCgkvLyAgICAgICAgIFsxXzAwMF8wMDBdCgkvLyAgICAgICApCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3MyA0CglidG9pCgltdWx3CglpbnQgMAoJaW50IDFfMDAwXzAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjgKCS8vIGFsZ29SZXdhcmRBdmFpbCAtPSB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vICppZjMwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY3NQoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgPiAwCglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjMwX2VuZAoKCS8vICppZjMwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NzgKCS8vIG1hbmFnZXJUb3BPZmYgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCgkvLyAqaWYzMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODAKCS8vIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgJiYKCS8vICAgICAgICAgICB2YWxpZGF0b3JDb25maWcubWFuYWdlci5iYWxhbmNlIC0gdmFsaWRhdG9yQ29uZmlnLm1hbmFnZXIubWluQmFsYW5jZSA8IDJfMTAwXzAwMAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3NyAzMgoJIT0KCWR1cAoJYnogKnNraXBfYW5kMwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWludCAyXzEwMF8wMDAKCTwKCSYmCgoqc2tpcF9hbmQzOgoJYnogKmlmMzFfZW5kCgoJLy8gKmlmMzFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4MwoJLy8gbWFuYWdlclRvcE9mZiA9IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IDwgMl8xMDBfMDAwID8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgOiAyXzEwMF8wMDAKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CglpbnQgMl8xMDBfMDAwCgk8CglieiAqdGVybmFyeTFfZmFsc2UKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWludCAyXzEwMF8wMDAKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDIxIC8vIG1hbmFnZXJUb3BPZmY6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODQKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgICAgICAgIGFtb3VudDogbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcubWFuYWdlciwKCS8vICAgICAgICAgICAgIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Njg1CgkvLyBhbW91bnQ6IG1hbmFnZXJUb3BPZmYKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4NgoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODcKCS8vIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzIyMDcyNjU3NzYxNzI2NDIwNzQ2ZjIwNmQ2MTZlNjE2NzY1NzIyMDY2NmY3MjIwNjY3NTZlNjQ2OTZlNjcyMDY1NzA2ZjYzNjgyMDc1NzA2NDYxNzQ2NTczIC8vICJ2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcyIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCippZjMxX2VuZDoKCS8vICppZjMyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MAoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgLSBtYW5hZ2VyVG9wT2ZmID4gMAoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWludCAwCgk+CglieiAqaWYzMl9lbmQKCgkvLyAqaWYzMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgICBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MsCgkvLyAgICAgICAgICAgICBub3RlOiAndmFsaWRhdG9yIHJld2FyZCcsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkyCgkvLyBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZgoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MwoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy52YWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTc3IDMyCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5NAoJLy8gbm90ZTogJ3ZhbGlkYXRvciByZXdhcmQnCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyMjA3MjY1Nzc2MTcyNjQgLy8gInZhbGlkYXRvciByZXdhcmQiCglpdHhuX2ZpZWxkIE5vdGUKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgoqaWYzMF9lbmQ6CgoqaWYyOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzA2CgkvLyBpbmNyZWFzZWRTdGFrZSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCgkvLyAqaWYzM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzAKCS8vIGFsZ29SZXdhcmRBdmFpbCAhPT0gMCB8fCB0b2tlblJld2FyZEF2YWlsICE9PSAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgkhPQoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJIT0KCXx8Cgoqc2tpcF9vcjE6CglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMxCgkvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczMgoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyNCAvLyBpOiB1aW50NjQKCipmb3JfNDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzIKCS8vIGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgMjQgLy8gaTogdWludDY0CglpbnQgMjAwCgk8CglieiAqZm9yXzRfZW5kCgoJLy8gKmlmMzRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMzCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDQwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDQwMAoJPAoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMzRfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNgoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gKmlmMzVfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzM3CgkvLyBjbXBTdGFrZXIuYWNjb3VudCAhPT0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglieiAqaWYzNV9lbmQKCgkvLyAqaWYzNV9jb25zZXF1ZW50CgkvLyAqaWYzNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzgKCS8vIGNtcFN0YWtlci5lbnRyeVJvdW5kID49IHRoaXNFcG9jaEJlZ2luCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCT49CglieiAqaWYzNl9lbHNlCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0MQoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoJYiAqaWYzNl9lbmQKCippZjM2X2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzQ1CgkvLyB0aW1lSW5Qb29sID0gdGhpc0Vwb2NoQmVnaW4gLSBjbXBTdGFrZXIuZW50cnlSb3VuZAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA1NiA4CglidG9pCgktCglmcmFtZV9idXJ5IDI2IC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoKCS8vICppZjM3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0OQoJLy8gdGltZUluUG9vbCA8IGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJPAoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MAoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NTEKCS8vIHRpbWVQZXJjZW50YWdlID0gKHRpbWVJblBvb2wgKiAxMDAwKSAvIGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWludCAxMDAwCgkqCglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMjcgLy8gdGltZVBlcmNlbnRhZ2U6IHVpbnQ2NAoKCS8vICppZjM4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MwoJLy8gdG9rZW5SZXdhcmRBdmFpbCA+IDAKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzU1CgkvLyBzdGFrZXJUb2tlblJld2FyZCA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgICAgICAgICAgIFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbCwgdGltZVBlcmNlbnRhZ2VdLAoJLy8gICAgICAgICAgICAgICAgICAgW3RoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlLCAxMDAwXQoJLy8gICAgICAgICAgICAgICAgICkKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjggLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjIKCS8vIHRva2VuUmV3YXJkQXZhaWwgLT0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzY0CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDI4IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjM4X2VuZDoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2NgoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmMzlfZW5kCgoJLy8gKmlmMzlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2OAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICAgICAgICAgICAgW2NtcFN0YWtlci5iYWxhbmNlLCBhbGdvUmV3YXJkQXZhaWwsIHRpbWVQZXJjZW50YWdlXSwKCS8vICAgICAgICAgICAgICAgICAgIFt0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSwgMTAwMF0KCS8vICAgICAgICAgICAgICAgICApCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjkgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc1CgkvLyBhbGdvUmV3YXJkQXZhaWwgLT0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NzgKCS8vIGNtcFN0YWtlci5iYWxhbmNlICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc5CgkvLyBjbXBTdGFrZXIudG90YWxSZXdhcmRlZCArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0MCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQwIDgKCWJ0b2kKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc4MAoJLy8gaW5jcmVhc2VkU3Rha2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCippZjM5X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3ODMKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYzN19lbmQ6CgoqaWYzNl9lbmQ6CgoqaWYzNV9lbmQ6CgoqZm9yXzRfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMyCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDI0IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzQKCipmb3JfNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzkxCgkvLyBuZXdQb29sVG90YWxTdGFrZSA9IHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC0gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgktCglmcmFtZV9idXJ5IDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCgkvLyAqaWY0MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTUKCS8vIG5ld1Bvb2xUb3RhbFN0YWtlID4gMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWludCAwCgk+CglieiAqaWY0MF9lbmQKCgkvLyAqaWY0MF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDMxIC8vIGk6IHVpbnQ2NAoKKmZvcl81OgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc5NwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzMSAvLyBpOiB1aW50NjQKCWludCAyMDAKCTwKCWJ6ICpmb3JfNV9lbmQKCgkvLyAqaWY0MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTgKCS8vIGdsb2JhbHMub3Bjb2RlQnVkZ2V0IDwgMjAwCglnbG9iYWwgT3Bjb2RlQnVkZ2V0CglpbnQgMjAwCgk8CglieiAqaWY0MV9lbmQKCgkvLyAqaWY0MV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODAxCgkvLyBjbXBTdGFrZXIgPSBjbG9uZSh0aGlzLnN0YWtlcnMudmFsdWVbaV0pCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0Ml9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDIKCS8vIGNtcFN0YWtlci5hY2NvdW50ICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzICYmIGNtcFN0YWtlci5lbnRyeVJvdW5kIDwgdGhpc0Vwb2NoQmVnaW4KCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQ0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCTwKCSYmCgoqc2tpcF9hbmQ0OgoJYnogKmlmNDJfZW5kCgoJLy8gKmlmNDJfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgwMwoJLy8gdGltZUluUG9vbCA9IHRoaXNFcG9jaEJlZ2luIC0gY21wU3Rha2VyLmVudHJ5Um91bmQKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNTYgOAoJYnRvaQoJLQoJZnJhbWVfYnVyeSAzMyAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDUKCS8vIHRpbWVJblBvb2wgPj0gZXBvY2hSb3VuZExlbmd0aAoJZnJhbWVfZGlnIDMzIC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0Cgk+PQoJYnogKmlmNDNfZW5kCgoJLy8gKmlmNDNfY29uc2VxdWVudAoJLy8gKmlmNDRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODEwCgkvLyB0b2tlblJld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjQ0X2VuZAoKCS8vICppZjQ0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTEKCS8vIHN0YWtlclRva2VuUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbF0sIFtuZXdQb29sVG90YWxTdGFrZV0pCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgMzAgLy8gbmV3UG9vbFRvdGFsU3Rha2U6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMzQgLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAzNCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODE1CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDM0IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjQ0X2VuZDoKCS8vICppZjQ1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxNwoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmNDVfZW5kCgoJLy8gKmlmNDVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxOAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgYWxnb1Jld2FyZEF2YWlsXSwgW25ld1Bvb2xUb3RhbFN0YWtlXSkKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyMQoJLy8gY21wU3Rha2VyLmJhbGFuY2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MjIKCS8vIGNtcFN0YWtlci50b3RhbFJld2FyZGVkICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDQwIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgOAoJYnRvaQoJZnJhbWVfZGlnIDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODIzCgkvLyBpbmNyZWFzZWRTdGFrZSArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoKKmlmNDVfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyNwoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjQzX2VuZDoKCippZjQyX2VuZDoKCipmb3JfNV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTcKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMzEgLy8gaTogdWludDY0CgliICpmb3JfNQoKKmZvcl81X2VuZDoKCippZjQwX2VuZDoKCippZjMzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzcKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMzYgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODM4CgkvLyB0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSArPSBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzkKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoaW5jcmVhc2VkU3Rha2UgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDM2IC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChpbmNyZWFzZWRTdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0MQoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgKyBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJZHVwCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCSsKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0NwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODQ4CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4NDkKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE1IC8vIHRva2VuUmV3YXJkUGFpZE91dDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBnb09ubGluZShwYXksYnl0ZVtdLGJ5dGVbXSxieXRlW10sdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2dvT25saW5lOgoJLy8gdm90ZUtleURpbHV0aW9uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWJ0b2kKCgkvLyB2b3RlTGFzdDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdm90ZUZpcnN0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBzdGF0ZVByb29mUEs6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBzZWxlY3Rpb25QSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIHZvdGVQSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGZlZVBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDYgKGZlZVBheW1lbnQpIGZvciBnb09ubGluZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGdvT25saW5lKHBheSxieXRlW10sYnl0ZVtdLGJ5dGVbXSx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGdvT25saW5lCglpbnQgMQoJcmV0dXJuCgovLyBnb09ubGluZShmZWVQYXltZW50OiBQYXlUeG4sIHZvdGVQSzogYnl0ZXMsIHNlbGVjdGlvblBLOiBieXRlcywgc3RhdGVQcm9vZlBLOiBieXRlcywgdm90ZUZpcnN0OiB1aW50NjQsIHZvdGVMYXN0OiB1aW50NjQsIHZvdGVLZXlEaWx1dGlvbjogdWludDY0KTogdm9pZAovLwovLyBSZWdpc3RlcnMgYSBzdGFraW5nIHBvb2wga2V5IG9ubGluZSBhZ2FpbnN0IGEgcGFydGljaXBhdGlvbiBrZXkuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KLy8KLy8gQHBhcmFtIHtQYXlUeG59IGZlZVBheW1lbnQgLSBwYXltZW50IHRvIGNvdmVyIGV4dHJhIGZlZSBvZiBnb2luZyBvbmxpbmUgaWYgb2ZmbGluZSAtIG9yIDAgaWYgbm90IHJlbmV3YWwKLy8gQHBhcmFtIHtieXRlc30gdm90ZVBLIC0gVGhlIHZvdGUgcHVibGljIGtleS4KLy8gQHBhcmFtIHtieXRlc30gc2VsZWN0aW9uUEsgLSBUaGUgc2VsZWN0aW9uIHB1YmxpYyBrZXkuCi8vIEBwYXJhbSB7Ynl0ZXN9IHN0YXRlUHJvb2ZQSyAtIFRoZSBzdGF0ZSBwcm9vZiBwdWJsaWMga2V5LgovLyBAcGFyYW0ge3VpbnQ2NH0gdm90ZUZpcnN0IC0gVGhlIGZpcnN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlTGFzdCAtIFRoZSBsYXN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlS2V5RGlsdXRpb24gLSBUaGUgdm90ZSBrZXkgZGlsdXRpb24gdmFsdWUuCi8vIEB0aHJvd3Mge0Vycm9yfSBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBjYWxsZXIgaXMgbm90IHRoZSBvd25lciBvciBhIG1hbmFnZXIuCmdvT25saW5lOgoJcHJvdG8gNyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgxCgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgyCgkvLyBleHRyYUZlZSA9IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJZnJhbWVfYnVyeSAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgzCgkvLyB2ZXJpZnlQYXlUeG4oZmVlUGF5bWVudCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiBleHRyYUZlZSB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6ImV4dHJhRmVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODQKCS8vIHNlbmRPbmxpbmVLZXlSZWdpc3RyYXRpb24oewoJLy8gICAgICAgdm90ZVBLOiB2b3RlUEssCgkvLyAgICAgICBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEssCgkvLyAgICAgICBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSywKCS8vICAgICAgIHZvdGVGaXJzdDogdm90ZUZpcnN0LAoJLy8gICAgICAgdm90ZUxhc3Q6IHZvdGVMYXN0LAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24sCgkvLyAgICAgICBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODUKCS8vIHZvdGVQSzogdm90ZVBLCglmcmFtZV9kaWcgLTIgLy8gdm90ZVBLOiBieXRlcwoJaXR4bl9maWVsZCBWb3RlUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg2CgkvLyBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEsKCWZyYW1lX2RpZyAtMyAvLyBzZWxlY3Rpb25QSzogYnl0ZXMKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg3CgkvLyBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSwoJZnJhbWVfZGlnIC00IC8vIHN0YXRlUHJvb2ZQSzogYnl0ZXMKCWl0eG5fZmllbGQgU3RhdGVQcm9vZlBLCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg4OAoJLy8gdm90ZUZpcnN0OiB2b3RlRmlyc3QKCWZyYW1lX2RpZyAtNSAvLyB2b3RlRmlyc3Q6IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlRmlyc3QKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg5CgkvLyB2b3RlTGFzdDogdm90ZUxhc3QKCWZyYW1lX2RpZyAtNiAvLyB2b3RlTGFzdDogdWludDY0CglpdHhuX2ZpZWxkIFZvdGVMYXN0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg5MAoJLy8gdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24KCWZyYW1lX2RpZyAtNyAvLyB2b3RlS2V5RGlsdXRpb246IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlS2V5RGlsdXRpb24KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODkxCgkvLyBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGdvT2ZmbGluZSgpdm9pZAoqYWJpX3JvdXRlX2dvT2ZmbGluZToKCS8vIGV4ZWN1dGUgZ29PZmZsaW5lKCl2b2lkCgljYWxsc3ViIGdvT2ZmbGluZQoJaW50IDEKCXJldHVybgoKLy8gZ29PZmZsaW5lKCk6IHZvaWQKLy8KLy8gTWFya3MgYSBzdGFraW5nIHBvb2wga2V5IE9GRkxJTkUuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KZ29PZmZsaW5lOgoJcHJvdG8gMCAwCgoJLy8gKmlmNDZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTAzCgkvLyB0aGlzLnR4bi5zZW5kZXIgIT09IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCSE9CglieiAqaWY0Nl9lbmQKCgkvLyAqaWY0Nl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTA0CgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MDcKCS8vIHNlbmRPZmZsaW5lS2V5UmVnaXN0cmF0aW9uKHt9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gbGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2xpbmtUb05GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBsaW5rVG9ORkQodWludDY0LHN0cmluZyl2b2lkCgljYWxsc3ViIGxpbmtUb05GRAoJaW50IDEKCXJldHVybgoKLy8gbGlua1RvTkZEKG5mZEFwcElkOiB1aW50NjQsIG5mZE5hbWU6IHN0cmluZyk6IHZvaWQKbGlua1RvTkZEOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNAoJLy8gYXNzZXJ0KHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLCAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yJykKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3ZlcmlmeV9uZmRfYWRkcicsIG5mZE5hbWUsIGl0b2IobmZkQXBwSWQpLCByYXdCeXRlcyh0aGlzLmFwcC5hZGRyZXNzKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElkKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNwoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MTgKCS8vIGFwcGxpY2F0aW9uQXJnczogWyd2ZXJpZnlfbmZkX2FkZHInLCBuZmROYW1lLCBpdG9iKG5mZEFwcElkKSwgcmF3Qnl0ZXModGhpcy5hcHAuYWRkcmVzcyldCglieXRlIDB4NzY2NTcyNjk2Njc5NWY2ZTY2NjQ1ZjYxNjQ2NDcyIC8vICJ2ZXJpZnlfbmZkX2FkZHIiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJZDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxOQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJZCldCglmcmFtZV9kaWcgLTEgLy8gbmZkQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHByb3hpZWRTZXRUb2tlblBheW91dFJhdGlvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX3Byb3hpZWRTZXRUb2tlblBheW91dFJhdGlvOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBvb2xLZXkpIGZvciBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyhwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5KTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8gaXMgbWVhbnQgdG8gYmUgY2FsbGVkIGJ5IHBvb2xzICE9IDEgLSBjYWxsaW5nIFVTLCBwb29sICMxCi8vIFdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgd2UgYXJlIGluIGZhY3QgYmVpbmcgY2FsbGVkIGJ5IGFub3RoZXIgb2YgT1VSIHBvb2xzIChub3QgdXMpCi8vIGFuZCB0aGVuIHdlJ2xsIGNhbGwgdGhlIHZhbGlkYXRvciBvbiB0aGVpciBiZWhhbGYgdG8gdXBkYXRlIHRoZSB0b2tlbiBwYXlvdXRzCi8vIEBwYXJhbSBwb29sS2V5IC0gVmFsaWRhdG9yUG9vbEtleSB0dXBsZQpwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9ySWQudmFsdWUgPT09IHBvb2xLZXkuaWQsICdjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEnKQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyBjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzEKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ2NhbGxlZSBtdXN0IGJlIHBvb2wgMScpCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgoJLy8gY2FsbGVlIG11c3QgYmUgcG9vbCAxCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTMyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgIT09IDEsICdjYWxsZXIgbXVzdCBOT1QgYmUgcG9vbCAxJykKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCSE9CgoJLy8gY2FsbGVyIG11c3QgTk9UIGJlIHBvb2wgMQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzNAoJLy8gY2FsbGVyUG9vbEFwcElEID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5nZXRQb29sQXBwSWQ+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3Bvb2xLZXkuaWQsIHBvb2xLZXkucG9vbElkXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzYKCS8vIG1ldGhvZEFyZ3M6IFtwb29sS2V5LmlkLCBwb29sS2V5LnBvb2xJZF0KCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBjYWxsZXJQb29sQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzgKCS8vIGFzc2VydChjYWxsZXJQb29sQXBwSUQgPT09IHBvb2xLZXkucG9vbEFwcElkKQoJZnJhbWVfZGlnIDAgLy8gY2FsbGVyUG9vbEFwcElEOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM5CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0MQoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuc2V0VG9rZW5QYXlvdXRSYXRpbz4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGlzT3duZXJPck1hbmFnZXJDYWxsZXIoKTogYm9vbGVhbgppc093bmVyT3JNYW5hZ2VyQ2FsbGVyOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQ4CgkvLyBPd25lckFuZE1hbmFnZXIgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcj4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MgoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzBdIHx8IHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzFdOwoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIDAgLy8gT3duZXJBbmRNYW5hZ2VyOiAoYWRkcmVzcyxhZGRyZXNzKQoJZXh0cmFjdCAwIDMyCgk9PQoJZHVwCglibnogKnNraXBfb3IyCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCglleHRyYWN0IDMyIDMyCgk9PQoJfHwKCipza2lwX29yMjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBnZXRGZWVTaW5rKCk6IEFkZHJlc3MKZ2V0RmVlU2luazoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NTYKCS8vIHJldHVybiB0aGlzLmZlZVNpbmtBZGRyOwoJbG9hZCAyMDEgLy8gVE1QTF9mZWVTaW5rQWRkcgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk2NgoJLy8gb25saW5lID0gdGhpcy5nZXRDdXJyZW50T25saW5lU3Rha2UoKQoJY2FsbHN1YiBnZXRDdXJyZW50T25saW5lU3Rha2UKCWZyYW1lX2J1cnkgMCAvLyBvbmxpbmU6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NjgKCS8vIHJldHVybiB3aWRlUmF0aW8oW29ubGluZSwgTUFYX1ZBTElEQVRPUl9TT0ZUX1BDVF9PRl9PTkxJTkVfMURFQ0lNQUxdLCBbMTAwMF0pOwoJZnJhbWVfZGlnIDAgLy8gb25saW5lOiB1aW50NjQKCWludCAxMDAKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gZ2V0R29PbmxpbmVGZWUoKTogdWludDY0CmdldEdvT25saW5lRmVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc1CgkvLyBpc09ubGluZSA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGlzT25saW5lOiBib29sCgoJLy8gKmlmNDdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc2CgkvLyAhaXNPbmxpbmUKCWZyYW1lX2RpZyAwIC8vIGlzT25saW5lOiBib29sCgkhCglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc4CgkvLyByZXR1cm4gMl8wMDBfMDAwOwoJaW50IDJfMDAwXzAwMAoJYiAqZ2V0R29PbmxpbmVGZWUqcmV0dXJuCgoqaWY0N19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTgwCgkvLyByZXR1cm4gMDsKCWludCAwCgoqZ2V0R29PbmxpbmVGZWUqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk4NQoJLy8gcmV0dXJuIDJfMDAwXzAwMF8wMDBfMDAwXzAwMDsKCWludCAyXzAwMF8wMDBfMDAwXzAwMF8wMDAKCXJldHN1YgoKLy8gY2hlY2tJZkJpbkNsb3NlZCgpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiB0aGUgY3VycmVudCByb3VuZCBpcyBpbiBhICduZXcgY2FsY3VsYXRpb24gYmluJyAoYXBwcm94aW1hdGVseSBkYWlseSkKY2hlY2tJZkJpbkNsb3NlZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkyCgkvLyBjdXJyZW50QmluU2l6ZSA9IHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIGFzIHVpbnQxMjgKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgoJLy8gKmlmNDhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkzCgkvLyBnbG9iYWxzLnJvdW5kID49IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIChjdXJyZW50QmluU2l6ZSBhcyB1aW50NjQpCglnbG9iYWwgUm91bmQKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMCAvLyBjdXJyZW50QmluU2l6ZTogdW5zYWZlIHVpbnQxMjgKCWR1cAoJYml0bGVuCglpbnQgNjQKCTw9CgoJLy8gY3VycmVudEJpblNpemUgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCgkrCgk+PQoJYnogKmlmNDhfZW5kCgoJLy8gKmlmNDhfY29uc2VxdWVudAoJLy8gKmlmNDlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTk0CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmNDlfZW5kCgoJLy8gKmlmNDlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmNDlfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NwoJLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOCA9IGN1cnJlbnRCaW5TaXplICogKDM2NSBhcyB1aW50MTI4KQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNmQKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyBjdXJyZW50QmluU2l6ZSAqICgzNjUgYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWZyYW1lX2J1cnkgMSAvLyBhcHByb3hSb3VuZHNQZXJZZWFyOiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5OAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgLyBjdXJyZW50QmluU2l6ZQoJYnl0ZSAweDczNzQ2MTZiNjU0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJzdGFrZUFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAwIC8vIGN1cnJlbnRCaW5TaXplOiB1bnNhZmUgdWludDEyOAoJYi8KCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSAvIGN1cnJlbnRCaW5TaXplIG92ZXJmbG93ZWQgMTI4IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDE2CgktCglzd2FwCglzdWJzdHJpbmczCglmcmFtZV9idXJ5IDIgLy8gYXZnU3Rha2U6IHVpbnQxMjgKCgkvLyAqaWY1MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5OTkKCS8vIGF2Z1N0YWtlICE9PSAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliIT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDAzCgkvLyBhcHI6IHVpbnQxMjggPQoJLy8gICAgICAgICAgICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICoKCS8vICAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjcxMAoJYioKCWZyYW1lX2RpZyAyIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgliLwoJZnJhbWVfZGlnIDEgLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOAoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgliLwoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICpcbiAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAzIC8vIGFwcjogdWludDEyOAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDA3CgkvLyBhbHBoYTogdWludDEyOCA9IDEwIGFzIHVpbnQxMjgKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYQoJZnJhbWVfYnVyeSA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoKCS8vICppZjUxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMDkKCS8vIGF2Z1N0YWtlID4gMzAwMDAwMDAwMDAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NWQ5NjRiODAwCgliPgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMTAKCS8vIGFscGhhID0gOTAgYXMgdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDVhCglmcmFtZV9idXJ5IDQgLy8gYWxwaGE6IHVuc2FmZSB1aW50MTI4CgoqaWY1MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAxMgoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPQoJLy8gICAgICAgICAgICh0aGlzLndlaWdodGVkTW92aW5nQXZlcmFnZS52YWx1ZSAqICgoMTAwIGFzIHVpbnQxMjgpIC0gYWxwaGEpKSAvICgxMDAgYXMgdWludDEyOCkgKwoJLy8gICAgICAgICAgIChhcHIgKiBhbHBoYSkgLyAoMTAwIGFzIHVpbnQxMjgpCglieXRlIDB4NjU3NzZkNjEgLy8gImV3bWEiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYi0KCWIqCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWIvCglmcmFtZV9kaWcgMyAvLyBhcHI6IHVpbnQxMjgKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYioKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2NAoJYi8KCWIrCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAodGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgKiAoKDEwMCBhcyB1aW50MTI4KSAtIGFscGhhKSkgLyAoMTAwIGFzIHVpbnQxMjgpICtcbiAgICAgICAgICAoYXByICogYWxwaGEpIC8gKDEwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCippZjUwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE4CgkvLyB0aGlzLnNldFJvdW5kc1BlckRheSgpCgljYWxsc3ViIHNldFJvdW5kc1BlckRheQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE5CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAodGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgYXMgdWludDEyOCkgKiAodGhpcy5yb3VuZHNQZXJEYXkudmFsdWUgYXMgdWludDEyOCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICh0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSBhcyB1aW50MTI4KSAqICh0aGlzLnJvdW5kc1BlckRheS52YWx1ZSBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAyMAoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IDAKCWJ5dGUgMHg3MjY1Nzc2MTcyNjQ0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJyZXdhcmRBY2N1bXVsYXRvciIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDIxCgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCippZjQ4X2VuZDoKCXJldHN1YgoKLy8gc2V0Um91bmRzUGVyRGF5KCk6IHZvaWQKc2V0Um91bmRzUGVyRGF5OgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMjYKCS8vIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlID0gQVZHX1JPVU5EU19QRVJfREFZCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglpbnQgMzA4NTcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiaW5pdFN0b3JhZ2UocGF5KXZvaWQiCgltZXRob2QgImFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NCIKCW1ldGhvZCAicmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZCIKCW1ldGhvZCAiY2xhaW1Ub2tlbnMoKXZvaWQiCgltZXRob2QgImdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAidXBkYXRlQWxnb2RWZXIoc3RyaW5nKXZvaWQiCgltZXRob2QgImVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZCIKCW1ldGhvZCAiZ29PbmxpbmUocGF5LGJ5dGVbXSxieXRlW10sYnl0ZVtdLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImdvT2ZmbGluZSgpdm9pZCIKCW1ldGhvZCAibGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZCIKCW1ldGhvZCAicHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0WzI0XSx1aW50NjQpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9nYXMgKmFiaV9yb3V0ZV9pbml0U3RvcmFnZSAqYWJpX3JvdXRlX2FkZFN0YWtlICphYmlfcm91dGVfcmVtb3ZlU3Rha2UgKmFiaV9yb3V0ZV9jbGFpbVRva2VucyAqYWJpX3JvdXRlX2dldFN0YWtlckluZm8gKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZCAqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyICphYmlfcm91dGVfZXBvY2hCYWxhbmNlVXBkYXRlICphYmlfcm91dGVfZ29PbmxpbmUgKmFiaV9yb3V0ZV9nb09mZmxpbmUgKmFiaV9yb3V0ZV9saW5rVG9ORkQgKmFiaV9yb3V0ZV9wcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfVXBkYXRlQXBwbGljYXRpb246CgltZXRob2QgInVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIFVwZGF0ZUFwcGxpY2F0aW9uCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9mZWVTaW5rQWRkcgpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfbmZkUmVnaXN0cnlBcHBJZApidG9pCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNhbGxfVXBkYXRlQXBwbGljYXRpb24gKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfdXBkYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIHVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIHVwZGF0ZUFwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBcHBsaWNhdGlvbigpOiB2b2lkCnVwZGF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0CgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0xaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEnKSwKCS8vICAgICAgICdUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWFkZHIgTFo0VjJJUlZMQ1hGSks0UkVKVjRUQUdFS0VZVEEyR01SNlRDMjM0NE9CM0wzQUYzTVdYWjZaQUZJUQoJPT0KCgkvLyBUZW1wb3Jhcnk6IGNvbnRyYWN0IGlzIHVwZ3JhZGVhYmxlIGJ1dCBvbmx5IGR1cmluZyB0ZXN0aW5nIGFuZCBvbmx5IGZyb20gYSBkZXZlbG9wbWVudCBhY2NvdW50Cglhc3NlcnQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJYnRvaQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGNyZWF0aW5nQ29udHJhY3RJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oY3JlYXRpbmdDb250cmFjdElkOiB1aW50NjQsIHZhbGlkYXRvcklkOiB1aW50NjQsIHBvb2xJZDogdWludDY0LCBtaW5FbnRyeVN0YWtlOiB1aW50NjQpOiB2b2lkCi8vCi8vIEluaXRpYWxpemUgdGhlIHN0YWtpbmcgcG9vbCB3LyBvd25lciBhbmQgbWFuYWdlciwgYnV0IGNhbiBvbmx5IGJlIGNyZWF0ZWQgYnkgdGhlIHZhbGlkYXRvciBjb250cmFjdC4KLy8gQHBhcmFtIHt1aW50NjR9IGNyZWF0aW5nQ29udHJhY3RJZCAtIGlkIG9mIGNvbnRyYWN0IHRoYXQgY29uc3RydWN0ZWQgdXMgLSB0aGUgdmFsaWRhdG9yIGFwcGxpY2F0aW9uIChzaW5nbGUgZ2xvYmFsIGluc3RhbmNlKQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgLSBpZCBvZiB2YWxpZGF0b3Igd2UncmUgYSBzdGFraW5nIHBvb2wgb2YKLy8gQHBhcmFtIHt1aW50NjR9IHBvb2xJZCAtIHdoaWNoIHBvb2wgaWQgYXJlIHdlCi8vIEBwYXJhbSB7dWludDY0fSBtaW5FbnRyeVN0YWtlIC0gbWluaW11bSBhbW91bnQgdG8gYmUgaW4gcG9vbCwgYnV0IGFsc28gbWluaW11bSBhbW91bnQgYmFsYW5jZSBjYW4ndCBnbyBiZWxvdyAod2l0aG91dCByZW1vdmluZyBhbGwhKQpjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDQgMAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTA4CgkvLyBjcmVhdGluZ0NvbnRyYWN0SWQgPT09IDAKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTAKCS8vIGFzc2VydCh2YWxpZGF0b3JJZCA9PT0gMCkKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpbnQgMAoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTEKCS8vIGFzc2VydChwb29sSWQgPT09IDApCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWludCAwCgk9PQoJYXNzZXJ0CgliICppZjBfZW5kCgoqaWYwX2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTEzCgkvLyBhc3NlcnQodmFsaWRhdG9ySWQgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE0CgkvLyBhc3NlcnQocG9vbElkICE9PSAwKQoJZnJhbWVfZGlnIC0zIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE2CgkvLyBhc3NlcnQobWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC00IC8vIG1pbkVudHJ5U3Rha2U6IHVpbnQ2NAoJaW50IDEwMDAwMDAKCT49CgoJLy8gc3Rha2luZyBwb29sIG11c3QgaGF2ZSBtaW5pbXVtIGVudHJ5IG9mIDEgYWxnbwoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjExNwoJLy8gdGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUgPSBjcmVhdGluZ0NvbnRyYWN0SWQKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWZyYW1lX2RpZyAtMSAvLyBjcmVhdGluZ0NvbnRyYWN0SWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTE4CgkvLyB0aGlzLnZhbGlkYXRvcklkLnZhbHVlID0gdmFsaWRhdG9ySWQKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzI0OTY0IC8vICJ2YWxpZGF0b3JJZCIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMTkKCS8vIHRoaXMucG9vbElkLnZhbHVlID0gcG9vbElkCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglmcmFtZV9kaWcgLTMgLy8gcG9vbElkOiB1aW50NjQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMAoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlID0gMAoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyMQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgPSAwCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglpbnQgMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTIyCgkvLyB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUgPSBtaW5FbnRyeVN0YWtlCglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglmcmFtZV9kaWcgLTQgLy8gbWluRW50cnlTdGFrZTogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMjMKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGdsb2JhbHMucm91bmQKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWdsb2JhbCBSb3VuZAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI0CgkvLyB0aGlzLmVwb2NoTnVtYmVyLnZhbHVlID0gMAoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEyNgoJLy8gdGhpcy5zZXRSb3VuZHNQZXJEYXkoKQoJY2FsbHN1YiBzZXRSb3VuZHNQZXJEYXkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI3CgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI4CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTI5CgkvLyB0aGlzLnJld2FyZEFjY3VtdWxhdG9yLnZhbHVlID0gMAoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEzMAoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPSAwIGFzIHVpbnQxMjgKCWJ5dGUgMHg2NTc3NmQ2MSAvLyAiZXdtYSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE0MgoJLy8gcmV0dXJuIFNDQk9YX1BFUkJPWCArIHRvdGFsTnVtQnl0ZXMgKiBTQ0JPWF9QRVJCWVRFOwoJaW50IDI1MDAKCWZyYW1lX2RpZyAtMSAvLyB0b3RhbE51bUJ5dGVzOiB1aW50NjQKCWludCA0MDAKCSoKCSsKCXJldHN1YgoKLy8gaW5pdFN0b3JhZ2UocGF5KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3RvcmFnZToKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKG1iclBheW1lbnQpIGZvciBpbml0U3RvcmFnZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGluaXRTdG9yYWdlKHBheSl2b2lkCgljYWxsc3ViIGluaXRTdG9yYWdlCglpbnQgMQoJcmV0dXJuCgovLyBpbml0U3RvcmFnZShtYnJQYXltZW50OiBQYXlUeG4pOiB2b2lkCi8vCi8vIENhbGxlZCBhZnRlciB3ZSdyZSBjcmVhdGVkIGFuZCB0aGVuIGZ1bmRlZCwgc28gd2UgY2FuIGNyZWF0ZSBvdXIgbGFyZ2Ugc3Rha2VycyBsZWRnZXIgc3RvcmFnZQovLyBDYWxsZXIgaGFzIHRvIGdldCBNQlIgYW1vdW50cyBmcm9tIFZhbGlkYXRvclJlZ2lzdHJ5IHRvIGtub3cgaG93IG11Y2ggdG8gZnVuZCB1cyB0byBjb3ZlciB0aGUgYm94IHN0b3JhZ2UgY29zdAovLyBJZiB0aGlzIGlzIHBvb2wgMSBBTkQgdGhlIHZhbGlkYXRvciBoYXMgc3BlY2lmaWVkIGEgcmV3YXJkIHRva2VuLCBvcHQtaW4gdG8gdGhhdCB0b2tlbgovLyBzbyB0aGF0IHRoZSB2YWxpZGF0b3IgY2FuIHNlZWQgdGhlIHBvb2wgd2l0aCBmdXR1cmUgcmV3YXJkcyBvZiB0aGF0IHRva2VuLgovLyBAcGFyYW0gbWJyUGF5bWVudCBwYXltZW50IGZyb20gY2FsbGVyIHdoaWNoIGNvdmVycyBtYnIgaW5jcmVhc2Ugb2YgbmV3IHN0YWtpbmcgcG9vbHMnIHN0b3JhZ2UKaW5pdFN0b3JhZ2U6Cglwcm90byAxIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1MwoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCgoJLy8gc3Rha2luZyBwb29sIGFscmVhZHkgaW5pdGlhbGl6ZWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTYKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNTcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE1OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjAKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDEgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MQoJLy8gZXh0cmFNQlIgPSBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEgPyBBU1NFVF9IT0xESU5HX0ZFRSA6IDAKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMDoKCWJ6ICp0ZXJuYXJ5MF9mYWxzZQoJaW50IDEwMDAwMAoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMiAvLyBleHRyYU1CUjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2MgoJLy8gUG9vbEluaXRNYnIgPQoJLy8gICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICBleHRyYU1CUiArCgkvLyAgICAgICB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDcgLyogJ3N0YWtlcnMnIG5hbWUgKi8gKyBsZW48U3Rha2VkSW5mbz4oKSAqIE1BWF9TVEFLRVJTX1BFUl9QT09MKQoJaW50IDEwMDAwMAoJZnJhbWVfZGlnIDIgLy8gZXh0cmFNQlI6IHVpbnQ2NAoJKwoJaW50IDEyODA3CgljYWxsc3ViIGNvc3RGb3JCb3hTdG9yYWdlCgkrCglmcmFtZV9idXJ5IDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxNjgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IFBvb2xJbml0TWJyIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIDMgLy8gUG9vbEluaXRNYnI6IHVpbnQ2NAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoiUG9vbEluaXRNYnIifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE2OQoJLy8gdGhpcy5zdGFrZXJzLmNyZWF0ZSgpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCglpbnQgMTI4MDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTcxCgkvLyBpc1Rva2VuRWxpZ2libGUgJiYgdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWZyYW1lX2RpZyAxIC8vIGlzVG9rZW5FbGlnaWJsZTogYm9vbAoJZHVwCglieiAqc2tpcF9hbmQxCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTczCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgICAgYXNzZXRBbW91bnQ6IDAsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NAoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTc1CgkvLyBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjE3NgoJLy8gYXNzZXRBbW91bnQ6IDAKCWludCAwCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMV9lbmQ6CglyZXRzdWIKCi8vIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoc3Rha2VyKSBmb3IgYWRkU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlZEFtb3VudFBheW1lbnQpIGZvciBhZGRTdGFrZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NAoJY2FsbHN1YiBhZGRTdGFrZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgc3Rha2VyOiBBZGRyZXNzKTogdWludDY0Ci8vCi8vIEFkZHMgc3Rha2UgdG8gdGhlIGdpdmVuIGFjY291bnQuCi8vIENhbiBPTkxZIGJlIGNhbGxlZCBieSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0IHRoYXQgY3JlYXRlZCB1cwovLyBNdXN0IHJlY2VpdmUgcGF5bWVudCBmcm9tIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIGFtb3VudCBiZWluZyBzdGFrZWQuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IHByaW9yIHBheW1lbnQgY29taW5nIGZyb20gdmFsaWRhdG9yIGNvbnRyYWN0IHRvIHVzIG9uIGJlaGFsZiBvZiBzdGFrZXIuCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgYWRkaW5nIG5ldyBzdGFrZQovLyBAdGhyb3dzIHtFcnJvcn0gLSBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0YWtpbmcgcG9vbCBpcyBmdWxsLgovLyBAcmV0dXJucyB7dWludDY0fSBuZXcgJ2VudHJ5IHJvdW5kJyByb3VuZCBudW1iZXIgb2Ygc3Rha2UgYWRkCmFkZFN0YWtlOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTIKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMuZXhpc3RzLCAnc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QnKQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3Rha2luZyBwb29sIG11c3QgYmUgaW5pdGlhbGl6ZWQgZmlyc3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxOTUKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcywKCS8vICAgICAgICdzdGFrZSBjYW4gb25seSBiZSBhZGRlZCB2aWEgdGhlIHZhbGlkYXRvciBjb250cmFjdCcKCS8vICAgICApCgl0eG4gU2VuZGVyCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoKCS8vIHN0YWtlIGNhbiBvbmx5IGJlIGFkZGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTk5CgkvLyBhc3NlcnQoc3Rha2VyICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIwMgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMDYKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MsCgkvLyAgICAgICByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFtb3VudDogc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50Cgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoiYW1vdW50IiwiZXhwZWN0ZWQiOiJzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCJ9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjE1CgkvLyBlbnRyeVJvdW5kID0gZ2xvYmFscy5yb3VuZCArIEFMR09SQU5EX1NUQUtJTkdfQkxPQ0tfREVMQVkKCWdsb2JhbCBSb3VuZAoJaW50IDMyMAoJKwoJZnJhbWVfYnVyeSAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTYKCS8vIGZpcnN0RW1wdHkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMTgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50CglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjAKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMiAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjEKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWZyYW1lX2RpZyAyIC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyNQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjI2CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjIyOQoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMwCgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjNfZW5kCgoJLy8gKmlmM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDQgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjMzCgkvLyBjbXBTdGFrZXIuZW50cnlSb3VuZCA9IGVudHJ5Um91bmQKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDU2IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM2CgkvLyB0aGlzLnN0YWtlcnMudmFsdWVbaV0gPSBjbXBTdGFrZXIKCWZyYW1lX2RpZyAzIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyA0IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjM4CgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoJYiAqYWRkU3Rha2UqcmV0dXJuCgoqaWYzX2VuZDoKCS8vICppZjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjQwCgkvLyBmaXJzdEVtcHR5ID09PSAwICYmIGNtcFN0YWtlci5hY2NvdW50ID09PSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQyCglmcmFtZV9kaWcgNCAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDI6CglieiAqaWY0X2VuZAoKCS8vICppZjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0MQoJLy8gZmlyc3RFbXB0eSA9IGkgKyAxCglmcmFtZV9kaWcgMyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gZmlyc3RFbXB0eTogdWludDY0CgoqaWY0X2VuZDoKCipmb3JfMF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyMjUKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAzIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI0NQoJLy8gZmlyc3RFbXB0eSA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjVfZW5kCgoJLy8gKmlmNV9jb25zZXF1ZW50CgkvLyBTdGFraW5nIHBvb2wgZnVsbAoJZXJyCgoqaWY1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTIKCS8vIGFzc2VydChzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCA+PSB0aGlzLm1pbkVudHJ5U3Rha2UudmFsdWUsICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnKQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglieXRlIDB4NmQ2OTZlNDU2ZTc0NzI3OTUzNzQ2MTZiNjUgLy8gIm1pbkVudHJ5U3Rha2UiCglhcHBfZ2xvYmFsX2dldAoJPj0KCgkvLyBtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTQKCS8vIGFzc2VydCh0aGlzLnN0YWtlcnMudmFsdWVbZmlyc3RFbXB0eSAtIDFdLmFjY291bnQgPT09IGdsb2JhbHMuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAxCgktCglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyNTUKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtmaXJzdEVtcHR5IC0gMV0gPSB7CgkvLyAgICAgICBhY2NvdW50OiBzdGFrZXIsCgkvLyAgICAgICBiYWxhbmNlOiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCwKCS8vICAgICAgIHRvdGFsUmV3YXJkZWQ6IDAsCgkvLyAgICAgICByZXdhcmRUb2tlbkJhbGFuY2U6IDAsCgkvLyAgICAgICBlbnRyeVJvdW5kOiBlbnRyeVJvdW5kLAoJLy8gICAgIH0KCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50IDEKCS0KCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gZW50cnlSb3VuZDogdWludDY0CglpdG9iCgljb25jYXQKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI2MgoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlICs9IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjYzCgkvLyByZXR1cm4gZW50cnlSb3VuZDsKCWZyYW1lX2RpZyAwIC8vIGVudHJ5Um91bmQ6IHVpbnQ2NAoKKmFkZFN0YWtlKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKLy8gcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX3JlbW92ZVN0YWtlOgoJLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoc3Rha2VyKSBmb3IgcmVtb3ZlU3Rha2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgcmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZAoJY2FsbHN1YiByZW1vdmVTdGFrZQoJaW50IDEKCXJldHVybgoKLy8gcmVtb3ZlU3Rha2Uoc3Rha2VyOiBBZGRyZXNzLCBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gUmVtb3ZlcyBzdGFrZSBvbiBiZWhhbGYgb2YgY2FsbGVyIChyZW1vdmluZyBvd24gc3Rha2UpLiAgSWYgYW55IHRva2VuIHJld2FyZHMgZXhpc3QsIHRob3NlIGFyZSBhbHdheXMgc2VudCBpbgovLyBmdWxsLiBBbHNvIG5vdGlmaWVzIHRoZSB2YWxpZGF0b3IgY29udHJhY3QgZm9yIHRoaXMgcG9vbHMgdmFsaWRhdG9yIG9mIHRoZSBzdGFrZXIgLyBiYWxhbmNlIGNoYW5nZXMuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gYWNjb3VudCB0byByZW1vdmUuICBub3JtYWxseSBzYW1lIGFzIHNlbmRlciwgYnV0IHRoZSB2YWxpZGF0b3Igb3duZXIgb3IgbWFuYWdlciBjYW4gYWxzbyBjYWxsCi8vIHRoaXMgdG8gcmVtb3ZlIHRoZSBzcGVjaWZpZWQgc3Rha2VyIGV4cGxpY2l0bHkuIFRoZSByZW1vdmVkIHN0YWtlIE1VU1Qgb25seSBnbyB0byB0aGUgc3Rha2VyIG9mIGNvdXJzZS4gIFRoaXMgaXMKLy8gc28gYSB2YWxpZGF0b3IgY2FuIHNodXQgZG93biBhIHBvb29sIGFuZCByZWZ1bmQgdGhlIHN0YWtlcnMuICBJdCBjYW4gYWxzbyBiZSB1c2VkIHRvIGtpY2sgb3V0IHN0YWtlcnMgd2hvIG5vIGxvbmdlcgovLyBtZWV0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzIChkZXRlcm1pbmVkIGJ5IHRoZSBub2RlIGRhZW1vbikuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1Vuc3Rha2UgLSBUaGUgYW1vdW50IG9mIHN0YWtlIHRvIGJlIHJlbW92ZWQuICBTcGVjaWZ5IDAgdG8gcmVtb3ZlIGFsbCBzdGFrZS4KLy8gQHRocm93cyB7RXJyb3J9IElmIHRoZSBhY2NvdW50IGhhcyBpbnN1ZmZpY2llbnQgYmFsYW5jZSBvciBpZiB0aGUgYWNjb3VudCBpcyBub3QgZm91bmQuCnJlbW92ZVN0YWtlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNgoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgwCgkvLyBzdGFrZXIgIT09IHRoaXMudHhuLnNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJdHhuIFNlbmRlcgoJIT0KCWJ6ICppZjZfZW5kCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLAoJLy8gICAgICAgICAnSWYgc3Rha2VyIGlzIG5vdCBzZW5kZXIgaW4gcmVtb3ZlU3Rha2UgY2FsbCwgdGhlbiBzZW5kZXIgTVVTVCBiZSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICAgICkKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIElmIHN0YWtlciBpcyBub3Qgc2VuZGVyIGluIHJlbW92ZVN0YWtlIGNhbGwsIHRoZW4gc2VuZGVyIE1VU1QgYmUgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKKmlmNl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjg3CgkvLyB0aGlzLmNoZWNrSWZCaW5DbG9zZWQoKQoJY2FsbHN1YiBjaGVja0lmQmluQ2xvc2VkCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8xX2VuZAoKCS8vICppZjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MjkwCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTEKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5MwoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vICppZjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mjk0CgkvLyBjbXBTdGFrZXIuYWNjb3VudCA9PT0gc3Rha2VyCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJPT0KCWJ6ICppZjhfZW5kCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyAqaWY5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI5NQoJLy8gYW1vdW50VG9VbnN0YWtlID09PSAwCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmOV9lbmQKCgkvLyAqaWY5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTcKCS8vIGFtb3VudFRvVW5zdGFrZSA9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfYnVyeSAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoKKmlmOV9lbmQ6CgkvLyAqaWYxMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoyOTkKCS8vIGNtcFN0YWtlci5iYWxhbmNlIDwgYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0Cgk8CglieiAqaWYxMF9lbmQKCgkvLyAqaWYxMF9jb25zZXF1ZW50CgkvLyBJbnN1ZmZpY2llbnQgYmFsYW5jZQoJZXJyCgoqaWYxMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzAyCgkvLyBjbXBTdGFrZXIuYmFsYW5jZSAtPSBhbW91bnRUb1Vuc3Rha2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCS0KCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwMwoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLT0gYW1vdW50VG9VbnN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0yIC8vIGFtb3VudFRvVW5zdGFrZTogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDUKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMDYKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPiAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDggOAoJYnRvaQoJaW50IDAKCT4KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vICppZjEyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMwOAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjEyX2Vsc2UKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzA5CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzEwCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTEKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDMgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkKSwKCS8vICAgICAgICAgICAgICAgYXNzZXRSZWNlaXZlcjogc3Rha2VyLAoJLy8gICAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzE4CgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkKCWZyYW1lX2RpZyAzIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMTkKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyMAoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjIKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzIzCgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTJfZW5kCgoqaWYxMl9lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMyOAoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozMjkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTJfZW5kOgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjMzNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgIGNtcFN0YWtlci5iYWxhbmNlID09PSAwIHx8IGNtcFN0YWtlci5iYWxhbmNlID49IHRoaXMubWluRW50cnlTdGFrZS52YWx1ZSwKCS8vICAgICAgICAgICAnY2Fubm90IHJlZHVjZSBiYWxhbmNlIGJlbG93IG1pbmltdW0gYWxsb3dlZCBzdGFrZSB1bmxlc3MgYWxsIGlzIHJlbW92ZWQnCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWR1cAoJYm56ICpza2lwX29yMAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWJ5dGUgMHg2ZDY5NmU0NTZlNzQ3Mjc5NTM3NDYxNmI2NSAvLyAibWluRW50cnlTdGFrZSIKCWFwcF9nbG9iYWxfZ2V0Cgk+PQoJfHwKCipza2lwX29yMDoKCS8vIGNhbm5vdCByZWR1Y2UgYmFsYW5jZSBiZWxvdyBtaW5pbXVtIGFsbG93ZWQgc3Rha2UgdW5sZXNzIGFsbCBpcyByZW1vdmVkCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQyCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgYW1vdW50OiBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgcmVjZWl2ZXI6IHN0YWtlciwKCS8vICAgICAgICAgICBub3RlOiAndW5zdGFrZWQnLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDMKCS8vIGFtb3VudDogYW1vdW50VG9VbnN0YWtlCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0NAoJLy8gcmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNDUKCS8vIG5vdGU6ICd1bnN0YWtlZCcKCWJ5dGUgMHg3NTZlNzM3NDYxNmI2NTY0IC8vICJ1bnN0YWtlZCIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzQ3CgkvLyBzdGFrZXJSZW1vdmVkID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gc3Rha2VyUmVtb3ZlZDogYm9vbAoKCS8vICppZjEzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM0OAoJLy8gY21wU3Rha2VyLmJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTAKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSAtPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MQoJLy8gY21wU3Rha2VyLmFjY291bnQgPSBnbG9iYWxzLnplcm9BZGRyZXNzCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCAwCglnbG9iYWwgWmVyb0FkZHJlc3MKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM1MgoJLy8gY21wU3Rha2VyLnRvdGFsUmV3YXJkZWQgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0MAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAxIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTQKCS8vIHN0YWtlclJlbW92ZWQgPSB0cnVlCglpbnQgMQoJZnJhbWVfYnVyeSA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCippZjEzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTcKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNTkKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgNSAvLyByb3VuZHNMZWZ0SW5CaW46IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjAKCS8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4ID0gKGFtb3VudFRvVW5zdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkKCWZyYW1lX2RpZyAtMiAvLyBhbW91bnRUb1Vuc3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDUgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCWl0b2IKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAoYW1vdW50VG9VbnN0YWtlIGFzIHVpbnQxMjgpICogKHJvdW5kc0xlZnRJbkJpbiBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2MQoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlID0gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyA2IC8vIHN1YnRyYWN0QW1vdW50OiB1aW50MTI4CgliLQoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8gdGhpcy5zdGFrZUFjY3VtdWxhdG9yLnZhbHVlIC0gc3VidHJhY3RBbW91bnQgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM2NgoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhbW91bnRUb1Vuc3Rha2UsCgkvLyAgICAgICAgICAgICBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQsCgkvLyAgICAgICAgICAgICBzdGFrZXJSZW1vdmVkLAoJLy8gICAgICAgICAgIF0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzY3CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozNjgKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgICAgIHsgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfSwKCS8vICAgICAgICAgICAgIHN0YWtlciwKCS8vICAgICAgICAgICAgIGFtb3VudFRvVW5zdGFrZSwKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIHN0YWtlclJlbW92ZWQsCgkvLyAgICAgICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTIgLy8gYW1vdW50VG9VbnN0YWtlOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMiAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyA0IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Mzc2CgkvLyByZXR1cm47CglyZXRzdWIKCippZjhfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjI4OQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGFjY291bnQgbm90IGZvdW5kCgllcnIKCXJldHN1YgoKLy8gY2xhaW1Ub2tlbnMoKXZvaWQKKmFiaV9yb3V0ZV9jbGFpbVRva2VuczoKCS8vIGV4ZWN1dGUgY2xhaW1Ub2tlbnMoKXZvaWQKCWNhbGxzdWIgY2xhaW1Ub2tlbnMKCWludCAxCglyZXR1cm4KCi8vIGNsYWltVG9rZW5zKCk6IHZvaWQKLy8KLy8gQ2xhaW1zIGFsbCB0aGUgYXZhaWxhYmxlIHJld2FyZCB0b2tlbnMgYSBzdGFrZXIgaGFzIGF2YWlsYWJsZSwgc2VuZGluZyB0aGVpciBlbnRpcmUgYmFsYW5jZSB0byB0aGUgc3Rha2VyIGZyb20KLy8gcG9vbCAxIChlaXRoZXIgZGlyZWN0bHksIG9yIHZpYSB2YWxpZGF0b3ItPnBvb2wxIHRvIHBheSBpdCBvdXQpCi8vIEFsc28gbm90aWZpZXMgdGhlIHZhbGlkYXRvciBjb250cmFjdCBmb3IgdGhpcyBwb29scyB2YWxpZGF0b3Igb2YgdGhlIHN0YWtlciAvIGJhbGFuY2UgY2hhbmdlcy4KY2xhaW1Ub2tlbnM6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDAgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5MwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8yX2VuZAoKCS8vICppZjE0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjM5NAoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTUKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE0X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTcKCS8vIGNtcFN0YWtlciA9IGNsb25lKHRoaXMuc3Rha2Vycy52YWx1ZVtpXSkKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWYxNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTgKCS8vIGNtcFN0YWtlci5hY2NvdW50ID09PSBzdGFrZXIKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglieiAqaWYxNV9lbmQKCgkvLyAqaWYxNV9jb25zZXF1ZW50CgkvLyAqaWYxNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czozOTkKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPT09IDAKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjE2X2VuZAoKCS8vICppZjE2X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDAKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMTZfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwMgoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vICppZjE3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQwNAoJLy8gdGhpcy5wb29sSWQudmFsdWUgPT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJPT0KCWJ6ICppZjE3X2Vsc2UKCgkvLyAqaWYxN19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA1CgkvLyB2YWxpZGF0b3JDb25maWcgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvckNvbmZpZz4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDA2CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MDcKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDQgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDEyCgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCksCgkvLyAgICAgICAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICAgICAgICBhc3NldEFtb3VudDogY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZSwKCS8vICAgICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGF4ZmVyCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxMwoJLy8geGZlckFzc2V0OiBBc3NldElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLnJld2FyZFRva2VuSWQpCglmcmFtZV9kaWcgNCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaXR4bl9maWVsZCBYZmVyQXNzZXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE0CgkvLyBhc3NldFJlY2VpdmVyOiBzdGFrZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQxNQoJLy8gYXNzZXRBbW91bnQ6IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MTcKCS8vIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCA9IGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UKCWZyYW1lX2RpZyAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0OCA4CglidG9pCglmcmFtZV9idXJ5IDMgLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDE4CgkvLyBjbXBTdGFrZXIucmV3YXJkVG9rZW5CYWxhbmNlID0gMAoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJcmVwbGFjZTIgNDgKCWZyYW1lX2J1cnkgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWIgKmlmMTdfZW5kCgoqaWYxN19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyMwoJLy8gYW1vdW50UmV3YXJkVG9rZW5SZW1vdmVkID0gY21wU3Rha2VyLnJld2FyZFRva2VuQmFsYW5jZQoJZnJhbWVfZGlnIDIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0MjQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgPSAwCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglyZXBsYWNlMiA0OAoJZnJhbWVfYnVyeSAyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKKmlmMTdfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQyOAoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCA2NAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzMwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVJlbW92ZWQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQzNAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSkKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDM1CgkvLyBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICB7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH0sCgkvLyAgICAgICAgICAgICBzdGFrZXIsCgkvLyAgICAgICAgICAgICAwLCAvLyBubyBhbGdvIHJlbW92ZWQKCS8vICAgICAgICAgICAgIGFtb3VudFJld2FyZFRva2VuUmVtb3ZlZCwKCS8vICAgICAgICAgICAgIGZhbHNlLCAvLyBzdGFrZXIgaXNuJ3QgYmVpbmcgcmVtb3ZlZC4KCS8vICAgICAgICAgICBdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMyAvLyBhbW91bnRSZXdhcmRUb2tlblJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ0MwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWYxNV9lbmQ6CgoqZm9yXzJfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MzkzCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8yCgoqZm9yXzJfZW5kOgoJLy8gYWNjb3VudCBub3QgZm91bmQKCWVycgoJcmV0c3ViCgovLyBnZXRTdGFrZXJJbmZvKGFkZHJlc3MpKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFN0YWtlckluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZXJJbmZvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFN0YWtlckluZm8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTdGFrZXJJbmZvKHN0YWtlcjogQWRkcmVzcyk6IFN0YWtlZEluZm8KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIGEgZ2l2ZW4gc3Rha2VyLgovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEByZXR1cm5zIHtTdGFrZWRJbmZvfSAtIFRoZSBzdGFrZWQgaW5mb3JtYXRpb24gZm9yIHRoZSBnaXZlbiBzdGFrZXIuCi8vIEB0aHJvd3Mge0Vycm9yfSAtIElmIHRoZSBzdGFrZXIncyBhY2NvdW50IGlzIG5vdCBmb3VuZC4KZ2V0U3Rha2VySW5mbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8zOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OAoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIwMAoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ1OQoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAyMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAyMDAKCTwKCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NjAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE4X2VuZDoKCS8vICppZjE5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ2MgoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldLmFjY291bnQgPT09IHN0YWtlcgoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCAzMgoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCT09CglieiAqaWYxOV9lbmQKCgkvLyAqaWYxOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDYzCgkvLyByZXR1cm4gdGhpcy5zdGFrZXJzLnZhbHVlW2ldOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJYiAqZ2V0U3Rha2VySW5mbypyZXR1cm4KCippZjE5X2VuZDoKCipmb3JfM19jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0NTgKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzMKCipmb3JfM19lbmQ6CgkvLyBhY2NvdW50IG5vdCBmb3VuZAoJZXJyCgoqZ2V0U3Rha2VySW5mbypyZXR1cm46CgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZDoKCS8vIGFtb3VudFRvU2VuZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAyIChzdGFrZXIpIGZvciBwYXlUb2tlblJld2FyZCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBwYXlUb2tlblJld2FyZAoJaW50IDEKCXJldHVybgoKLy8gcGF5VG9rZW5SZXdhcmQoc3Rha2VyOiBBZGRyZXNzLCByZXdhcmRUb2tlbjogdWludDY0LCBhbW91bnRUb1NlbmQ6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gW0ludGVybmFsIHByb3RvY29sIG1ldGhvZF0gUmVtb3ZlIGEgc3BlY2lmaWVkIGFtb3VudCBvZiAnY29tbXVuaXR5IHRva2VuJyByZXdhcmRzIGZvciBhIHN0YWtlci4KLy8gVGhpcyBjYW4gT05MWSBiZSBjYWxsZWQgYnkgb3VyIHZhbGlkYXRvciBhbmQgb25seSBpZiB3ZSdyZSBwb29sIDEgLSB3aXRoIHRoZSB0b2tlbi4KLy8gTm90ZTogdGhpcyBjYW4gYWxzbyBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIGFzIHBhcnQgb2YgT1dORVIgd2FudGluZyB0byBzZW5kIHRoZSByZXdhcmQgdG9rZW5zCi8vIHNvbWV3aGVyZSBlbHNlIChpZSBpZiB0aGV5J3JlIHN1bnNldHRpbmcgdGhlaXIgdmFsaWRhdG9yIGFuZCBuZWVkIHRoZSByZXdhcmQgdG9rZW5zIGJhY2spLgovLyBJdCdzIHVwIHRvIHRoZSB2YWxpZGF0b3IgdG8gZW5zdXJlIHRoYXQgdGhlIGJhbGFuY2UgaW4gcmV3YXJkVG9rZW5IZWxkQmFjayBpcyBob25vcmVkLgovLyBAcGFyYW0gc3Rha2VyIC0gdGhlIHN0YWtlciBhY2NvdW50IHRvIHNlbmQgcmV3YXJkcyB0bwovLyBAcGFyYW0gcmV3YXJkVG9rZW4gLSBpZCBvZiByZXdhcmQgdG9rZW4gKHRvIGF2b2lkIHJlLWVudHJhbmN5IGluIGNhbGxpbmcgdmFsaWRhdG9yIGJhY2sgdG8gZ2V0IGlkKQovLyBAcGFyYW0gYW1vdW50VG9TZW5kIC0gYW1vdW50IHRvIHNlbmQgdGhlIHN0YWtlciAodGhlcmUgaXMgc2lnbmlmaWNhbnQgdHJ1c3QgaGVyZSghKSAtIGFsc28gd2h5IG9ubHkgdmFsaWRhdG9yIGNhbiBjYWxsIHVzCnBheVRva2VuUmV3YXJkOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ4MQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKS5hZGRyZXNzLAoJLy8gICAgICAgJ3RoaXMgY2FuIG9ubHkgYmUgY2FsbGVkIHZpYSB0aGUgdmFsaWRhdG9yIGNvbnRyYWN0JwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCT09CgoJLy8gdGhpcyBjYW4gb25seSBiZSBjYWxsZWQgdmlhIHRoZSB2YWxpZGF0b3IgY29udHJhY3QKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODUKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ211c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMnKQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoKCS8vIG11c3QgYmUgcG9vbCAxIGluIG9yZGVyIHRvIGJlIGNhbGxlZCB0byBwYXkgb3V0IHRva2VuIHJld2FyZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0ODYKCS8vIGFzc2VydChyZXdhcmRUb2tlbiAhPT0gMCwgJ2NhbiBvbmx5IGNsYWltIHRva2VuIHJld2FyZHMgZnJvbSB2YWxpZGF0b3IgdGhhdCBoYXMgdGhlbScpCglmcmFtZV9kaWcgLTIgLy8gcmV3YXJkVG9rZW46IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gY2FuIG9ubHkgY2xhaW0gdG9rZW4gcmV3YXJkcyBmcm9tIHZhbGlkYXRvciB0aGF0IGhhcyB0aGVtCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDg5CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbiksCgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiBzdGFrZXIsCgkvLyAgICAgICBhc3NldEFtb3VudDogYW1vdW50VG9TZW5kLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXhmZXIKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NDkwCgkvLyB4ZmVyQXNzZXQ6IEFzc2V0SUQuZnJvbVVpbnQ2NChyZXdhcmRUb2tlbikKCWZyYW1lX2RpZyAtMiAvLyByZXdhcmRUb2tlbjogdWludDY0CglpdHhuX2ZpZWxkIFhmZXJBc3NldAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo0OTEKCS8vIGFzc2V0UmVjZWl2ZXI6IHN0YWtlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjQ5MgoJLy8gYXNzZXRBbW91bnQ6IGFtb3VudFRvU2VuZAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU2VuZDogdWludDY0CglpdHhuX2ZpZWxkIEFzc2V0QW1vdW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyB1cGRhdGVBbGdvZFZlcihzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyOgoJLy8gYWxnb2RWZXI6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHVwZGF0ZUFsZ29kVmVyKHN0cmluZyl2b2lkCgljYWxsc3ViIHVwZGF0ZUFsZ29kVmVyCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVBbGdvZFZlcihhbGdvZFZlcjogc3RyaW5nKTogdm9pZAovLwovLyBVcGRhdGUgdGhlIChob25vciBzeXN0ZW0pIGFsZ29kIHZlcnNpb24gZm9yIHRoZSBub2RlIGFzc29jaWF0ZWQgdG8gdGhpcyBwb29sLiAgVGhlIG5vZGUgbWFuYWdlbWVudCBkYWVtb24KLy8gc2hvdWxkIGNvbXBhcmUgaXRzIGN1cnJlbnQgbm9kZXMgdmVyc2lvbiB0byB0aGUgdmVyc2lvbiBzdG9yZWQgaW4gZ2xvYmFsIHN0YXRlLCB1cGRhdGluZyB3aGVuIGRpZmZlcmVudC4KLy8gVGhlIHJldGkgbm9kZSBkYWVtb24gY29tcG9zZXMgaXRzIG93biB2ZXJzaW9uIHN0cmluZyB1c2luZyBmb3JtYXQ6Ci8vIHttYWpvcn0ue21pbm9yfS57YnVpbGR9IHticmFuY2h9IFt7Y29tbWl0IGhhc2h9XSwKLy8gaWU6IDMuMjIuMCByZWwvc3RhYmxlIFs2YjUwODk3NV0KLy8gWyBPTkxZIE9XTkVSIE9SIE1BTkFHRVIgQ0FOIENBTEwgXQovLyBAcGFyYW0ge3N0cmluZ30gYWxnb2RWZXIgLSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBhbGdvcmFuZCBub2RlIGRhZW1vbiB2ZXJzaW9uIChyZXRpIG5vZGUgZGFlbW9uIGNvbXBvc2VzIGl0cyBvd24gbWV0YSB2ZXJzaW9uKQp1cGRhdGVBbGdvZFZlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDYKCS8vIGFzc2VydCh0aGlzLmlzT3duZXJPck1hbmFnZXJDYWxsZXIoKSwgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicpCgljYWxsc3ViIGlzT3duZXJPck1hbmFnZXJDYWxsZXIKCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MDcKCS8vIHRoaXMuYWxnb2RWZXIudmFsdWUgPSBhbGdvZFZlcgoJYnl0ZSAweDYxNmM2NzZmNjQ1NjY1NzIgLy8gImFsZ29kVmVyIgoJZnJhbWVfZGlnIC0xIC8vIGFsZ29kVmVyOiBzdHJpbmcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZAoqYWJpX3JvdXRlX2Vwb2NoQmFsYW5jZVVwZGF0ZToKCS8vIGV4ZWN1dGUgZXBvY2hCYWxhbmNlVXBkYXRlKCl2b2lkCgljYWxsc3ViIGVwb2NoQmFsYW5jZVVwZGF0ZQoJaW50IDEKCXJldHVybgoKLy8gZXBvY2hCYWxhbmNlVXBkYXRlKCk6IHZvaWQKLy8KLy8gVXBkYXRlcyB0aGUgYmFsYW5jZSBvZiBzdGFrZXJzIGluIHRoZSBwb29sIGJhc2VkIG9uIHRoZSByZWNlaXZlZCAncmV3YXJkcycgKGN1cnJlbnQgYmFsYW5jZSB2cyBrbm93biBzdGFrZWQgYmFsYW5jZSkKLy8gc3Rha2VycyBvdXRzdGFuZGluZyBiYWxhbmNlIGlzIGFkanVzdGVkIGJhc2VkIG9uIHRoZWlyICUgb2Ygc3Rha2UgYW5kIHRpbWUgaW4gdGhlIGN1cnJlbnQgZXBvY2ggLSBzbyB0aGF0IGJhbGFuY2UKLy8gY29tcG91bmRzIG92ZXIgdGltZSBhbmQgc3Rha2VyIGNhbiByZW1vdmUgdGhhdCBhbW91bnQgYXQgd2lsbC4KLy8gVGhlIHZhbGlkYXRvciBpcyBwYWlkIHRoZWlyIHBlcmNlbnRhZ2UgZWFjaCBlcG9jaCBwYXlvdXQuCi8vCi8vIE5vdGU6IEFOWU9ORSBjYW4gY2FsbCB0aGlzLgplcG9jaEJhbGFuY2VVcGRhdGU6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAzNgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjAKCS8vIHZhbGlkYXRvckNvbmZpZyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yQ29uZmlnPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjEKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUyMgoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1MjkKCS8vIGVwb2NoUm91bmRMZW5ndGggPSB2YWxpZGF0b3JDb25maWcuZXBvY2hSb3VuZExlbmd0aCBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2OSA0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMiAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjUzMQoJLy8gdGhpc0Vwb2NoQmVnaW4gPSBjdXJSb3VuZCAtIChjdXJSb3VuZCAlIGVwb2NoUm91bmRMZW5ndGgpCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCSUKCS0KCWZyYW1lX2J1cnkgMyAvLyB0aGlzRXBvY2hCZWdpbjogdWludDY0CgoJLy8gKmlmMjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM0CgkvLyB0aGlzLmxhc3RQYXlvdXQuZXhpc3RzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoJc3dhcAoJcG9wCglieiAqaWYyMF9lbmQKCgkvLyAqaWYyMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM1CgkvLyBsYXN0UGF5b3V0RXBvY2ggPSB0aGlzLmxhc3RQYXlvdXQudmFsdWUgLSAodGhpcy5sYXN0UGF5b3V0LnZhbHVlICUgZXBvY2hSb3VuZExlbmd0aCkKCWJ5dGUgMHg2YzYxNzM3NDUwNjE3OTZmNzU3NCAvLyAibGFzdFBheW91dCIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgklCgktCglmcmFtZV9idXJ5IDQgLy8gbGFzdFBheW91dEVwb2NoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTM5CgkvLyBhc3NlcnQobGFzdFBheW91dEVwb2NoICE9PSB0aGlzRXBvY2hCZWdpbiwgImNhbid0IGNhbGwgZXBvY2hCYWxhbmNlVXBkYXRlIGluIHNhbWUgZXBvY2ggYXMgcHJpb3IgY2FsbCIpCglmcmFtZV9kaWcgNCAvLyBsYXN0UGF5b3V0RXBvY2g6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJIT0KCgkvLyBjYW4ndCBjYWxsIGVwb2NoQmFsYW5jZVVwZGF0ZSBpbiBzYW1lIGVwb2NoIGFzIHByaW9yIGNhbGwKCWFzc2VydAoKKmlmMjBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU0MgoJLy8gdGhpcy5jaGVja0lmQmluQ2xvc2VkKCkKCWNhbGxzdWIgY2hlY2tJZkJpbkNsb3NlZAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDUKCS8vIHRoaXMubGFzdFBheW91dC52YWx1ZSA9IGN1clJvdW5kCglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglmcmFtZV9kaWcgMiAvLyBjdXJSb3VuZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NDYKCS8vIHRoaXMuZXBvY2hOdW1iZXIudmFsdWUgKz0gMQoJYnl0ZSAweDY1NzA2ZjYzNjg0ZTc1NmQ2MjY1NzIgLy8gImVwb2NoTnVtYmVyIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgkrCglieXRlIDB4NjU3MDZmNjM2ODRlNzU2ZDYyNjU3MiAvLyAiZXBvY2hOdW1iZXIiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTEKCS8vIGlzVG9rZW5FbGlnaWJsZSA9IHZhbGlkYXRvckNvbmZpZy5yZXdhcmRUb2tlbklkICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNTMgOAoJYnRvaQoJaW50IDAKCSE9CglmcmFtZV9idXJ5IDUgLy8gaXNUb2tlbkVsaWdpYmxlOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1MgoJLy8gcG9vbE9uZUFwcElEID0gdGhpcy5hcHAuaWQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NTMKCS8vIHBvb2xPbmVBZGRyZXNzID0gdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKCS8vICppZjIxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OAoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjIxX2VuZAoKCS8vICppZjIxX2NvbnNlcXVlbnQKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU1OQoJLy8gdGhpcy5wb29sSWQudmFsdWUgIT09IDEKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJIT0KCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjEKCS8vIHBvb2xPbmVBcHBJRCA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0UG9vbEFwcElkPih7CgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWUsIDFdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTYyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCAxXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyBwb29sT25lQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NjUKCS8vIHBvb2xPbmVBZGRyZXNzID0gQXBwSUQuZnJvbVVpbnQ2NChwb29sT25lQXBwSUQpLmFkZHJlc3MKCWZyYW1lX2RpZyA2IC8vIHBvb2xPbmVBcHBJRDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2J1cnkgNyAvLyBwb29sT25lQWRkcmVzczogYWRkcmVzcwoKKmlmMjJfZW5kOgoJLy8gKmlmMjNfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcwCgkvLyB0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMQoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWludCAxCgk9PQoJYnogKmlmMjNfZWxzZQoKCS8vICppZjIzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzEKCS8vIHRva2VuUGF5b3V0UmF0aW8gPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLnNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTcyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglmcmFtZV9idXJ5IDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWIgKmlmMjNfZW5kCgoqaWYyM19lbHNlOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU3NwoJLy8gdG9rZW5QYXlvdXRSYXRpbyA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xPbmVBcHBJRCksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogW3sgaWQ6IHRoaXMudmFsaWRhdG9ySWQudmFsdWUsIHBvb2xJZDogdGhpcy5wb29sSWQudmFsdWUsIHBvb2xBcHBJZDogdGhpcy5hcHAuaWQgfV0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzgKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQocG9vbE9uZUFwcElEKQoJZnJhbWVfZGlnIDYgLy8gcG9vbE9uZUFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1NzkKCS8vIG1ldGhvZEFyZ3M6IFt7IGlkOiB0aGlzLnZhbGlkYXRvcklkLnZhbHVlLCBwb29sSWQ6IHRoaXMucG9vbElkLnZhbHVlLCBwb29sQXBwSWQ6IHRoaXMuYXBwLmlkIH1dCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYnl0ZSAweDcwNmY2ZjZjNDk2NCAvLyAicG9vbElkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWNvbmNhdAoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJZnJhbWVfYnVyeSA4IC8vIHRva2VuUGF5b3V0UmF0aW86IFBvb2xUb2tlblBheW91dFJhdGlvCgoqaWYyM19lbmQ6CgoqaWYyMV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTg2CgkvLyB2YWxpZGF0b3JTdGF0ZSA9IHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuZ2V0VmFsaWRhdG9yU3RhdGU+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnZXRWYWxpZGF0b3JTdGF0ZSh1aW50NjQpKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1ODcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU4OAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTkwCgkvLyByZXdhcmRUb2tlbkhlbGRCYWNrID0gdmFsaWRhdG9yU3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDkgLy8gdmFsaWRhdG9yU3RhdGU6ICh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE4IDgKCWJ0b2kKCWZyYW1lX2J1cnkgMTAgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjU5NgoJLy8gYWxnb1Jld2FyZEF2YWlsID0gdGhpcy5hcHAuYWRkcmVzcy5iYWxhbmNlIC0gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgLSB0aGlzLmFwcC5hZGRyZXNzLm1pbkJhbGFuY2UKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCS0KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo1OTcKCS8vIGlzUG9vbFNhdHVyYXRlZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAxMiAvLyBpc1Bvb2xTYXR1cmF0ZWQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NTk4CgkvLyBhbGdvU2F0dXJhdGlvbkFtdCA9IHRoaXMuYWxnb1NhdHVyYXRpb25MZXZlbCgpCgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWZyYW1lX2J1cnkgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoKCS8vICppZjI0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNgoJLy8gdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkID4gYWxnb1NhdHVyYXRpb25BbXQKCWZyYW1lX2RpZyA5IC8vIHZhbGlkYXRvclN0YXRlOiAodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMCA4CglidG9pCglmcmFtZV9kaWcgMTMgLy8gYWxnb1NhdHVyYXRpb25BbXQ6IHVpbnQ2NAoJPgoJYnogKmlmMjRfZW5kCgoJLy8gKmlmMjRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYwNwoJLy8gaXNQb29sU2F0dXJhdGVkID0gdHJ1ZQoJaW50IDEKCWZyYW1lX2J1cnkgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCgoqaWYyNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjEzCgkvLyB0b2tlblJld2FyZEF2YWlsID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNAoJLy8gdG9rZW5SZXdhcmRQYWlkT3V0ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE1CgkvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjE2CgkvLyBleGNlc3NUb0ZlZVNpbmsgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAxNyAvLyBleGNlc3NUb0ZlZVNpbms6IHVpbnQ2NAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYxNwoJLy8gaXNUb2tlbkVsaWdpYmxlCglmcmFtZV9kaWcgNSAvLyBpc1Rva2VuRWxpZ2libGU6IGJvb2wKCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2MTgKCS8vIHRva2VuUmV3YXJkQmFsID0KCS8vICAgICAgICAgcG9vbE9uZUFkZHJlc3MuYXNzZXRCYWxhbmNlKEFzc2V0SUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcucmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDcgLy8gcG9vbE9uZUFkZHJlc3M6IGFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE1MyA4CglidG9pCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEwIC8vIHJld2FyZFRva2VuSGVsZEJhY2s6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxOCAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gKmlmMjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjIzCgkvLyB0b2tlblJld2FyZEJhbCA+PSB2YWxpZGF0b3JDb25maWcucmV3YXJkUGVyUGF5b3V0CglmcmFtZV9kaWcgMTggLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTYxIDgKCWJ0b2kKCT49CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjI5CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHRva2VuUGF5b3V0UmF0aW8ucG9vbFBjdE9mV2hvbGVbdGhpcy5wb29sSWQudmFsdWUgLSAxXQoJZnJhbWVfZGlnIDggLy8gdG9rZW5QYXlvdXRSYXRpbzogUG9vbFRva2VuUGF5b3V0UmF0aW8KCWludCAwCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCS0KCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfYnVyeSAxOSAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjYzMgoJLy8gdG9rZW5SZXdhcmRBdmFpbCA9IHdpZGVSYXRpbyhbdmFsaWRhdG9yQ29uZmlnLnJld2FyZFBlclBheW91dCwgb3VyUG9vbFBjdE9mV2hvbGVdLCBbMV8wMDBfMDAwXSkKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE2MSA4CglidG9pCglmcmFtZV9kaWcgMTkgLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJbXVsdwoJaW50IDAKCWludCAxXzAwMF8wMDAKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKKmlmMjZfZW5kOgoKKmlmMjVfZW5kOgoJLy8gKmlmMjdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjM1CgkvLyB0b2tlblJld2FyZEF2YWlsID09PSAwCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPT0KCWJ6ICppZjI3X2VuZAoKCS8vICppZjI3X2NvbnNlcXVlbnQKCS8vICppZjI4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0MAoJLy8gYWxnb1Jld2FyZEF2YWlsIDwgMV8wMDBfMDAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAxXzAwMF8wMDAKCTwKCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDEKCS8vIGxvZygnIXRva2VuJiYhbm9hbGdvIHRvIHBheScpCglieXRlIDB4MjE3NDZmNmI2NTZlMjYyNjIxNmU2ZjYxNmM2NzZmMjA3NDZmMjA3MDYxNzkgLy8gIiF0b2tlbiYmIW5vYWxnbyB0byBwYXkiCglsb2cKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjQyCgkvLyByZXR1cm47CglyZXRzdWIKCippZjI4X2VuZDoKCippZjI3X2VuZDoKCS8vICppZjI5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY0NgoJLy8gaXNQb29sU2F0dXJhdGVkCglmcmFtZV9kaWcgMTIgLy8gaXNQb29sU2F0dXJhdGVkOiBib29sCglieiAqaWYyOV9lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjI5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NDkKCS8vIGRpbWluaXNoZWRSZXdhcmQgPSB3aWRlUmF0aW8oW2FsZ29SZXdhcmRBdmFpbCwgYWxnb1NhdHVyYXRpb25BbXRdLCBbdmFsaWRhdG9yU3RhdGUudG90YWxBbGdvU3Rha2VkXSkKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJZnJhbWVfZGlnIDEzIC8vIGFsZ29TYXR1cmF0aW9uQW10OiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgOSAvLyB2YWxpZGF0b3JTdGF0ZTogKHVpbnQxNix1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTAgOAoJYnRvaQoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MQoJLy8gZXhjZXNzVG9GZWVTaW5rID0gYWxnb1Jld2FyZEF2YWlsIC0gZGltaW5pc2hlZFJld2FyZAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE3IC8vIGV4Y2Vzc1RvRmVlU2luazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1MgoJLy8gc2VuZFBheW1lbnQoewoJLy8gICAgICAgICBhbW91bnQ6IGV4Y2Vzc1RvRmVlU2luaywKCS8vICAgICAgICAgcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpLAoJLy8gICAgICAgICBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycsCgkvLyAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NTMKCS8vIGFtb3VudDogZXhjZXNzVG9GZWVTaW5rCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY1NAoJLy8gcmVjZWl2ZXI6IHRoaXMuZ2V0RmVlU2luaygpCgljYWxsc3ViIGdldEZlZVNpbmsKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU1CgkvLyBub3RlOiAncG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luaycKCWJ5dGUgMHg3MDZmNmY2YzIwNzM2MTc0NzU3MjYxNzQ2NTY0MmMyMDY1Nzg2MzY1NzM3MzIwNzQ2ZjIwNjY2NTY1MjA3MzY5NmU2YiAvLyAicG9vbCBzYXR1cmF0ZWQsIGV4Y2VzcyB0byBmZWUgc2luayIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU4CgkvLyBhbGdvUmV3YXJkQXZhaWwgPSBkaW1pbmlzaGVkUmV3YXJkCglmcmFtZV9kaWcgMjAgLy8gZGltaW5pc2hlZFJld2FyZDogdWludDY0CglmcmFtZV9idXJ5IDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgliICppZjI5X2VuZAoKKmlmMjlfZWxzZWlmMV9jb25kaXRpb246CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjU5CgkvLyB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9lbHNlaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjIKCS8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0ID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICBbYWxnb1Jld2FyZEF2YWlsLCB2YWxpZGF0b3JDb25maWcucGVyY2VudFRvVmFsaWRhdG9yIGFzIHVpbnQ2NF0sCgkvLyAgICAgICAgIFsxXzAwMF8wMDBdCgkvLyAgICAgICApCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3MyA0CglidG9pCgltdWx3CglpbnQgMAoJaW50IDFfMDAwXzAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NjgKCS8vIGFsZ29SZXdhcmRBdmFpbCAtPSB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vICppZjMwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY3NQoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgPiAwCglmcmFtZV9kaWcgMTYgLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQ6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjMwX2VuZAoKCS8vICppZjMwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2NzgKCS8vIG1hbmFnZXJUb3BPZmYgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCgkvLyAqaWYzMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODAKCS8vIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgJiYKCS8vICAgICAgICAgICB2YWxpZGF0b3JDb25maWcubWFuYWdlci5iYWxhbmNlIC0gdmFsaWRhdG9yQ29uZmlnLm1hbmFnZXIubWluQmFsYW5jZSA8IDJfMTAwXzAwMAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvckNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDE3NyAzMgoJIT0KCWR1cAoJYnogKnNraXBfYW5kMwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgMzIKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCS0KCWludCAyXzEwMF8wMDAKCTwKCSYmCgoqc2tpcF9hbmQzOgoJYnogKmlmMzFfZW5kCgoJLy8gKmlmMzFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4MwoJLy8gbWFuYWdlclRvcE9mZiA9IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IDwgMl8xMDBfMDAwID8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgOiAyXzEwMF8wMDAKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CglpbnQgMl8xMDBfMDAwCgk8CglieiAqdGVybmFyeTFfZmFsc2UKCWZyYW1lX2RpZyAxNiAvLyB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dDogdWludDY0CgliICp0ZXJuYXJ5MV9lbmQKCip0ZXJuYXJ5MV9mYWxzZToKCWludCAyXzEwMF8wMDAKCip0ZXJuYXJ5MV9lbmQ6CglmcmFtZV9idXJ5IDIxIC8vIG1hbmFnZXJUb3BPZmY6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODQKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgICAgICAgIGFtb3VudDogbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcubWFuYWdlciwKCS8vICAgICAgICAgICAgIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Njg1CgkvLyBhbW91bnQ6IG1hbmFnZXJUb3BPZmYKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY4NgoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JDb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA0MCAzMgoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo2ODcKCS8vIG5vdGU6ICd2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcycKCWJ5dGUgMHg3NjYxNmM2OTY0NjE3NDZmNzIyMDcyNjU3NzYxNzI2NDIwNzQ2ZjIwNmQ2MTZlNjE2NzY1NzIyMDY2NmY3MjIwNjY3NTZlNjQ2OTZlNjcyMDY1NzA2ZjYzNjgyMDc1NzA2NDYxNzQ2NTczIC8vICJ2YWxpZGF0b3IgcmV3YXJkIHRvIG1hbmFnZXIgZm9yIGZ1bmRpbmcgZXBvY2ggdXBkYXRlcyIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCippZjMxX2VuZDoKCS8vICppZjMyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MAoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvblBhaWRPdXQgLSBtYW5hZ2VyVG9wT2ZmID4gMAoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWludCAwCgk+CglieiAqaWYzMl9lbmQKCgkvLyAqaWYzMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkxCgkvLyBzZW5kUGF5bWVudCh7CgkvLyAgICAgICAgICAgICBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZiwKCS8vICAgICAgICAgICAgIHJlY2VpdmVyOiB2YWxpZGF0b3JDb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MsCgkvLyAgICAgICAgICAgICBub3RlOiAndmFsaWRhdG9yIHJld2FyZCcsCgkvLyAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBwYXkKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NjkyCgkvLyBhbW91bnQ6IHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0IC0gbWFuYWdlclRvcE9mZgoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWZyYW1lX2RpZyAyMSAvLyBtYW5hZ2VyVG9wT2ZmOiB1aW50NjQKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5MwoJLy8gcmVjZWl2ZXI6IHZhbGlkYXRvckNvbmZpZy52YWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcwoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9yQ29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTc3IDMyCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjY5NAoJLy8gbm90ZTogJ3ZhbGlkYXRvciByZXdhcmQnCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyMjA3MjY1Nzc2MTcyNjQgLy8gInZhbGlkYXRvciByZXdhcmQiCglpdHhuX2ZpZWxkIE5vdGUKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgoqaWYzMF9lbmQ6CgoqaWYyOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzA2CgkvLyBpbmNyZWFzZWRTdGFrZSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCgkvLyAqaWYzM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzAKCS8vIGFsZ29SZXdhcmRBdmFpbCAhPT0gMCB8fCB0b2tlblJld2FyZEF2YWlsICE9PSAwCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgkhPQoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgMTQgLy8gdG9rZW5SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJIT0KCXx8Cgoqc2tpcF9vcjE6CglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMxCgkvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczMgoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyNCAvLyBpOiB1aW50NjQKCipmb3JfNDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzIKCS8vIGkgPCB0aGlzLnN0YWtlcnMudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgMjQgLy8gaTogdWludDY0CglpbnQgMjAwCgk8CglieiAqZm9yXzRfZW5kCgoJLy8gKmlmMzRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMzCgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDQwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDQwMAoJPAoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMzRfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjczNgoJLy8gY21wU3Rha2VyID0gY2xvbmUodGhpcy5zdGFrZXJzLnZhbHVlW2ldKQoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCA2NAoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gKmlmMzVfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzM3CgkvLyBjbXBTdGFrZXIuYWNjb3VudCAhPT0gZ2xvYmFscy56ZXJvQWRkcmVzcwoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglieiAqaWYzNV9lbmQKCgkvLyAqaWYzNV9jb25zZXF1ZW50CgkvLyAqaWYzNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3MzgKCS8vIGNtcFN0YWtlci5lbnRyeVJvdW5kID49IHRoaXNFcG9jaEJlZ2luCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCT49CglieiAqaWYzNl9lbHNlCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0MQoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoJYiAqaWYzNl9lbmQKCippZjM2X2Vsc2U6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzQ1CgkvLyB0aW1lSW5Qb29sID0gdGhpc0Vwb2NoQmVnaW4gLSBjbXBTdGFrZXIuZW50cnlSb3VuZAoJZnJhbWVfZGlnIDMgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCA1NiA4CglidG9pCgktCglmcmFtZV9idXJ5IDI2IC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoKCS8vICppZjM3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc0OQoJLy8gdGltZUluUG9vbCA8IGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJPAoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MAoJLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlICs9IGNtcFN0YWtlci5iYWxhbmNlCglmcmFtZV9kaWcgMjMgLy8gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlOiB1aW50NjQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJKwoJZnJhbWVfYnVyeSAyMyAvLyBwYXJ0aWFsU3Rha2Vyc1RvdGFsU3Rha2U6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NTEKCS8vIHRpbWVQZXJjZW50YWdlID0gKHRpbWVJblBvb2wgKiAxMDAwKSAvIGVwb2NoUm91bmRMZW5ndGgKCWZyYW1lX2RpZyAyNiAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCWludCAxMDAwCgkqCglmcmFtZV9kaWcgMSAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMjcgLy8gdGltZVBlcmNlbnRhZ2U6IHVpbnQ2NAoKCS8vICppZjM4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc1MwoJLy8gdG9rZW5SZXdhcmRBdmFpbCA+IDAKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzU1CgkvLyBzdGFrZXJUb2tlblJld2FyZCA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgICAgICAgICAgIFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbCwgdGltZVBlcmNlbnRhZ2VdLAoJLy8gICAgICAgICAgICAgICAgICAgW3RoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlLCAxMDAwXQoJLy8gICAgICAgICAgICAgICAgICkKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjggLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjIKCS8vIHRva2VuUmV3YXJkQXZhaWwgLT0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgktCglmcmFtZV9idXJ5IDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NjMKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAyOCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzY0CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDI4IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjM4X2VuZDoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2NgoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmMzlfZW5kCgoJLy8gKmlmMzlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc2OAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKAoJLy8gICAgICAgICAgICAgICAgICAgW2NtcFN0YWtlci5iYWxhbmNlLCBhbGdvUmV3YXJkQXZhaWwsIHRpbWVQZXJjZW50YWdlXSwKCS8vICAgICAgICAgICAgICAgICAgIFt0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSwgMTAwMF0KCS8vICAgICAgICAgICAgICAgICApCglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfZGlnIDI3IC8vIHRpbWVQZXJjZW50YWdlOiB1aW50NjQKCXVuY292ZXIgMgoJZGlnIDEKCSoKCWNvdmVyIDIKCW11bHcKCWNvdmVyIDIKCSsKCXN3YXAKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTAwMAoJbXVsdwoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMjkgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc1CgkvLyBhbGdvUmV3YXJkQXZhaWwgLT0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMTEgLy8gYWxnb1Jld2FyZEF2YWlsOiB1aW50NjQKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxMSAvLyBhbGdvUmV3YXJkQXZhaWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3NzgKCS8vIGNtcFN0YWtlci5iYWxhbmNlICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDI1IC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzc5CgkvLyBjbXBTdGFrZXIudG90YWxSZXdhcmRlZCArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0MCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQwIDgKCWJ0b2kKCWZyYW1lX2RpZyAyOSAvLyBzdGFrZXJSZXdhcmQ6IHVpbnQ2NAoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMjUgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc4MAoJLy8gaW5jcmVhc2VkU3Rha2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJZnJhbWVfZGlnIDI5IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglmcmFtZV9idXJ5IDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCippZjM5X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3ODMKCS8vIHRoaXMuc3Rha2Vycy52YWx1ZVtpXSA9IGNtcFN0YWtlcgoJZnJhbWVfZGlnIDI0IC8vIGk6IHVpbnQ2NAoJaW50IDY0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAyNSAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYzN19lbmQ6CgoqaWYzNl9lbmQ6CgoqaWYzNV9lbmQ6CgoqZm9yXzRfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzMyCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDI0IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzQKCipmb3JfNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6NzkxCgkvLyBuZXdQb29sVG90YWxTdGFrZSA9IHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC0gcGFydGlhbFN0YWtlcnNUb3RhbFN0YWtlCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIzIC8vIHBhcnRpYWxTdGFrZXJzVG90YWxTdGFrZTogdWludDY0CgktCglmcmFtZV9idXJ5IDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCgkvLyAqaWY0MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTUKCS8vIG5ld1Bvb2xUb3RhbFN0YWtlID4gMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWludCAwCgk+CglieiAqaWY0MF9lbmQKCgkvLyAqaWY0MF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDMxIC8vIGk6IHVpbnQ2NAoKKmZvcl81OgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjc5NwoJLy8gaSA8IHRoaXMuc3Rha2Vycy52YWx1ZS5sZW5ndGgKCWZyYW1lX2RpZyAzMSAvLyBpOiB1aW50NjQKCWludCAyMDAKCTwKCWJ6ICpmb3JfNV9lbmQKCgkvLyAqaWY0MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTgKCS8vIGdsb2JhbHMub3Bjb2RlQnVkZ2V0IDwgMjAwCglnbG9iYWwgT3Bjb2RlQnVkZ2V0CglpbnQgMjAwCgk8CglieiAqaWY0MV9lbmQKCgkvLyAqaWY0MV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6Nzk5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODAxCgkvLyBjbXBTdGFrZXIgPSBjbG9uZSh0aGlzLnN0YWtlcnMudmFsdWVbaV0pCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDY0CglieXRlIDB4NzM3NDYxNmI2NTcyNzMgLy8gInN0YWtlcnMiCgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0Ml9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDIKCS8vIGNtcFN0YWtlci5hY2NvdW50ICE9PSBnbG9iYWxzLnplcm9BZGRyZXNzICYmIGNtcFN0YWtlci5lbnRyeVJvdW5kIDwgdGhpc0Vwb2NoQmVnaW4KCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQ0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDU2IDgKCWJ0b2kKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCTwKCSYmCgoqc2tpcF9hbmQ0OgoJYnogKmlmNDJfZW5kCgoJLy8gKmlmNDJfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgwMwoJLy8gdGltZUluUG9vbCA9IHRoaXNFcG9jaEJlZ2luIC0gY21wU3Rha2VyLmVudHJ5Um91bmQKCWZyYW1lX2RpZyAzIC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNTYgOAoJYnRvaQoJLQoJZnJhbWVfYnVyeSAzMyAvLyB0aW1lSW5Qb29sOiB1aW50NjQKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MDUKCS8vIHRpbWVJblBvb2wgPj0gZXBvY2hSb3VuZExlbmd0aAoJZnJhbWVfZGlnIDMzIC8vIHRpbWVJblBvb2w6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0Cgk+PQoJYnogKmlmNDNfZW5kCgoJLy8gKmlmNDNfY29uc2VxdWVudAoJLy8gKmlmNDRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODEwCgkvLyB0b2tlblJld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDE0IC8vIHRva2VuUmV3YXJkQXZhaWw6IHVpbnQ2NAoJaW50IDAKCT4KCWJ6ICppZjQ0X2VuZAoKCS8vICppZjQ0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTEKCS8vIHN0YWtlclRva2VuUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgdG9rZW5SZXdhcmRBdmFpbF0sIFtuZXdQb29sVG90YWxTdGFrZV0pCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDMyIDgKCWJ0b2kKCWZyYW1lX2RpZyAxNCAvLyB0b2tlblJld2FyZEF2YWlsOiB1aW50NjQKCW11bHcKCWludCAwCglmcmFtZV9kaWcgMzAgLy8gbmV3UG9vbFRvdGFsU3Rha2U6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgMzQgLy8gc3Rha2VyVG9rZW5SZXdhcmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MTQKCS8vIGNtcFN0YWtlci5yZXdhcmRUb2tlbkJhbGFuY2UgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWludCA0OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDQ4IDgKCWJ0b2kKCWZyYW1lX2RpZyAzNCAvLyBzdGFrZXJUb2tlblJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODE1CgkvLyB0b2tlblJld2FyZFBhaWRPdXQgKz0gc3Rha2VyVG9rZW5SZXdhcmQKCWZyYW1lX2RpZyAxNSAvLyB0b2tlblJld2FyZFBhaWRPdXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDM0IC8vIHN0YWtlclRva2VuUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMTUgLy8gdG9rZW5SZXdhcmRQYWlkT3V0OiB1aW50NjQKCippZjQ0X2VuZDoKCS8vICppZjQ1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxNwoJLy8gYWxnb1Jld2FyZEF2YWlsID4gMAoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CglpbnQgMAoJPgoJYnogKmlmNDVfZW5kCgoJLy8gKmlmNDVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgxOAoJLy8gc3Rha2VyUmV3YXJkID0gd2lkZVJhdGlvKFtjbXBTdGFrZXIuYmFsYW5jZSwgYWxnb1Jld2FyZEF2YWlsXSwgW25ld1Bvb2xUb3RhbFN0YWtlXSkKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMzIgOAoJYnRvaQoJZnJhbWVfZGlnIDExIC8vIGFsZ29SZXdhcmRBdmFpbDogdWludDY0CgltdWx3CglpbnQgMAoJZnJhbWVfZGlnIDMwIC8vIG5ld1Bvb2xUb3RhbFN0YWtlOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyMQoJLy8gY21wU3Rha2VyLmJhbGFuY2UgKz0gc3Rha2VyUmV3YXJkCglmcmFtZV9kaWcgMzIgLy8gY21wU3Rha2VyOiAoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglpbnQgMzIgLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAzMiA4CglidG9pCglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MjIKCS8vIGNtcFN0YWtlci50b3RhbFJld2FyZGVkICs9IHN0YWtlclJld2FyZAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJaW50IDQwIC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgNDAgOAoJYnRvaQoJZnJhbWVfZGlnIDM1IC8vIHN0YWtlclJld2FyZDogdWludDY0CgkrCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAzMiAvLyBjbXBTdGFrZXI6IChhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODIzCgkvLyBpbmNyZWFzZWRTdGFrZSArPSBzdGFrZXJSZXdhcmQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglmcmFtZV9kaWcgMzUgLy8gc3Rha2VyUmV3YXJkOiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoKKmlmNDVfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjgyNwoJLy8gdGhpcy5zdGFrZXJzLnZhbHVlW2ldID0gY21wU3Rha2VyCglmcmFtZV9kaWcgMzEgLy8gaTogdWludDY0CglpbnQgNjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJZnJhbWVfZGlnIDMyIC8vIGNtcFN0YWtlcjogKGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjQzX2VuZDoKCippZjQyX2VuZDoKCipmb3JfNV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo3OTcKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDMxIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMzEgLy8gaTogdWludDY0CgliICpmb3JfNQoKKmZvcl81X2VuZDoKCippZjQwX2VuZDoKCippZjMzX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzcKCS8vIHJvdW5kc0xlZnRJbkJpbiA9IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIC0gZ2xvYmFscy5yb3VuZAoJYnl0ZSAweDYyNjk2ZTUyNmY3NTZlNjQ1Mzc0NjE3Mjc0IC8vICJiaW5Sb3VuZFN0YXJ0IgoJYXBwX2dsb2JhbF9nZXQKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CgkrCglnbG9iYWwgUm91bmQKCS0KCWZyYW1lX2J1cnkgMzYgLy8gcm91bmRzTGVmdEluQmluOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODM4CgkvLyB0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSArPSBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4MzkKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSA9CgkvLyAgICAgICB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgKyAoaW5jcmVhc2VkU3Rha2UgYXMgdWludDEyOCkgKiAocm91bmRzTGVmdEluQmluIGFzIHVpbnQxMjgpCglieXRlIDB4NzM3NDYxNmI2NTQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInN0YWtlQWNjdW11bGF0b3IiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMjIgLy8gaW5jcmVhc2VkU3Rha2U6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIDM2IC8vIHJvdW5kc0xlZnRJbkJpbjogdWludDY0CglpdG9iCgliKgoJYisKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSArIChpbmNyZWFzZWRTdGFrZSBhcyB1aW50MTI4KSAqIChyb3VuZHNMZWZ0SW5CaW4gYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0MQoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgKyBpbmNyZWFzZWRTdGFrZQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJZHVwCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIDIyIC8vIGluY3JlYXNlZFN0YWtlOiB1aW50NjQKCSsKCWFwcF9nbG9iYWxfcHV0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg0NwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKSwKCS8vICAgICAgIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODQ4CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4NDkKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBpZDogdGhpcy52YWxpZGF0b3JJZC52YWx1ZSwgcG9vbElkOiB0aGlzLnBvb2xJZC52YWx1ZSwgcG9vbEFwcElkOiB0aGlzLmFwcC5pZCB9LAoJLy8gICAgICAgICBpbmNyZWFzZWRTdGFrZSwKCS8vICAgICAgICAgdG9rZW5SZXdhcmRQYWlkT3V0LAoJLy8gICAgICAgICB2YWxpZGF0b3JDb21taXNzaW9uUGFpZE91dCwKCS8vICAgICAgICAgZXhjZXNzVG9GZWVTaW5rLAoJLy8gICAgICAgXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCgljb25jYXQKCXR4bmEgQXBwbGljYXRpb25zIDAKCWl0b2IKCWNvbmNhdAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAyMiAvLyBpbmNyZWFzZWRTdGFrZTogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE1IC8vIHRva2VuUmV3YXJkUGFpZE91dDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDE2IC8vIHZhbGlkYXRvckNvbW1pc3Npb25QYWlkT3V0OiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMTcgLy8gZXhjZXNzVG9GZWVTaW5rOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBnb09ubGluZShwYXksYnl0ZVtdLGJ5dGVbXSxieXRlW10sdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2dvT25saW5lOgoJLy8gdm90ZUtleURpbHV0aW9uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWJ0b2kKCgkvLyB2b3RlTGFzdDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdm90ZUZpcnN0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBzdGF0ZVByb29mUEs6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBzZWxlY3Rpb25QSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIHZvdGVQSzogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGZlZVBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDYgKGZlZVBheW1lbnQpIGZvciBnb09ubGluZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGdvT25saW5lKHBheSxieXRlW10sYnl0ZVtdLGJ5dGVbXSx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGdvT25saW5lCglpbnQgMQoJcmV0dXJuCgovLyBnb09ubGluZShmZWVQYXltZW50OiBQYXlUeG4sIHZvdGVQSzogYnl0ZXMsIHNlbGVjdGlvblBLOiBieXRlcywgc3RhdGVQcm9vZlBLOiBieXRlcywgdm90ZUZpcnN0OiB1aW50NjQsIHZvdGVMYXN0OiB1aW50NjQsIHZvdGVLZXlEaWx1dGlvbjogdWludDY0KTogdm9pZAovLwovLyBSZWdpc3RlcnMgYSBzdGFraW5nIHBvb2wga2V5IG9ubGluZSBhZ2FpbnN0IGEgcGFydGljaXBhdGlvbiBrZXkuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KLy8KLy8gQHBhcmFtIHtQYXlUeG59IGZlZVBheW1lbnQgLSBwYXltZW50IHRvIGNvdmVyIGV4dHJhIGZlZSBvZiBnb2luZyBvbmxpbmUgaWYgb2ZmbGluZSAtIG9yIDAgaWYgbm90IHJlbmV3YWwKLy8gQHBhcmFtIHtieXRlc30gdm90ZVBLIC0gVGhlIHZvdGUgcHVibGljIGtleS4KLy8gQHBhcmFtIHtieXRlc30gc2VsZWN0aW9uUEsgLSBUaGUgc2VsZWN0aW9uIHB1YmxpYyBrZXkuCi8vIEBwYXJhbSB7Ynl0ZXN9IHN0YXRlUHJvb2ZQSyAtIFRoZSBzdGF0ZSBwcm9vZiBwdWJsaWMga2V5LgovLyBAcGFyYW0ge3VpbnQ2NH0gdm90ZUZpcnN0IC0gVGhlIGZpcnN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlTGFzdCAtIFRoZSBsYXN0IHZvdGUgaW5kZXguCi8vIEBwYXJhbSB7dWludDY0fSB2b3RlS2V5RGlsdXRpb24gLSBUaGUgdm90ZSBrZXkgZGlsdXRpb24gdmFsdWUuCi8vIEB0aHJvd3Mge0Vycm9yfSBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBjYWxsZXIgaXMgbm90IHRoZSBvd25lciBvciBhIG1hbmFnZXIuCmdvT25saW5lOgoJcHJvdG8gNyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgxCgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgyCgkvLyBleHRyYUZlZSA9IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJZnJhbWVfYnVyeSAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODgzCgkvLyB2ZXJpZnlQYXlUeG4oZmVlUGF5bWVudCwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiBleHRyYUZlZSB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gZmVlUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAwIC8vIGV4dHJhRmVlOiB1aW50NjQKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJmZWVQYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6ImV4dHJhRmVlIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODQKCS8vIHNlbmRPbmxpbmVLZXlSZWdpc3RyYXRpb24oewoJLy8gICAgICAgdm90ZVBLOiB2b3RlUEssCgkvLyAgICAgICBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEssCgkvLyAgICAgICBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSywKCS8vICAgICAgIHZvdGVGaXJzdDogdm90ZUZpcnN0LAoJLy8gICAgICAgdm90ZUxhc3Q6IHZvdGVMYXN0LAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24sCgkvLyAgICAgICBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo4ODUKCS8vIHZvdGVQSzogdm90ZVBLCglmcmFtZV9kaWcgLTIgLy8gdm90ZVBLOiBieXRlcwoJaXR4bl9maWVsZCBWb3RlUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg2CgkvLyBzZWxlY3Rpb25QSzogc2VsZWN0aW9uUEsKCWZyYW1lX2RpZyAtMyAvLyBzZWxlY3Rpb25QSzogYnl0ZXMKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg3CgkvLyBzdGF0ZVByb29mUEs6IHN0YXRlUHJvb2ZQSwoJZnJhbWVfZGlnIC00IC8vIHN0YXRlUHJvb2ZQSzogYnl0ZXMKCWl0eG5fZmllbGQgU3RhdGVQcm9vZlBLCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg4OAoJLy8gdm90ZUZpcnN0OiB2b3RlRmlyc3QKCWZyYW1lX2RpZyAtNSAvLyB2b3RlRmlyc3Q6IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlRmlyc3QKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODg5CgkvLyB2b3RlTGFzdDogdm90ZUxhc3QKCWZyYW1lX2RpZyAtNiAvLyB2b3RlTGFzdDogdWludDY0CglpdHhuX2ZpZWxkIFZvdGVMYXN0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjg5MAoJLy8gdm90ZUtleURpbHV0aW9uOiB2b3RlS2V5RGlsdXRpb24KCWZyYW1lX2RpZyAtNyAvLyB2b3RlS2V5RGlsdXRpb246IHVpbnQ2NAoJaXR4bl9maWVsZCBWb3RlS2V5RGlsdXRpb24KCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6ODkxCgkvLyBmZWU6IHRoaXMuZ2V0R29PbmxpbmVGZWUoKQoJY2FsbHN1YiBnZXRHb09ubGluZUZlZQoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGdvT2ZmbGluZSgpdm9pZAoqYWJpX3JvdXRlX2dvT2ZmbGluZToKCS8vIGV4ZWN1dGUgZ29PZmZsaW5lKCl2b2lkCgljYWxsc3ViIGdvT2ZmbGluZQoJaW50IDEKCXJldHVybgoKLy8gZ29PZmZsaW5lKCk6IHZvaWQKLy8KLy8gTWFya3MgYSBzdGFraW5nIHBvb2wga2V5IE9GRkxJTkUuCi8vIFsgT05MWSBPV05FUiBPUiBNQU5BR0VSIENBTiBDQUxMIF0KZ29PZmZsaW5lOgoJcHJvdG8gMCAwCgoJLy8gKmlmNDZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTAzCgkvLyB0aGlzLnR4bi5zZW5kZXIgIT09IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLmFkZHJlc3MKCXR4biBTZW5kZXIKCWJ5dGUgMHg2MzcyNjU2MTc0NmY3MjQxNzA3MCAvLyAiY3JlYXRvckFwcCIKCWFwcF9nbG9iYWxfZ2V0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCSE9CglieiAqaWY0Nl9lbmQKCgkvLyAqaWY0Nl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTA0CgkvLyBhc3NlcnQodGhpcy5pc093bmVyT3JNYW5hZ2VyQ2FsbGVyKCksICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InKQoJY2FsbHN1YiBpc093bmVyT3JNYW5hZ2VyQ2FsbGVyCgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MDcKCS8vIHNlbmRPZmZsaW5lS2V5UmVnaXN0cmF0aW9uKHt9KQoJaXR4bl9iZWdpbgoJaW50IGtleXJlZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gbGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2xpbmtUb05GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBsaW5rVG9ORkQodWludDY0LHN0cmluZyl2b2lkCgljYWxsc3ViIGxpbmtUb05GRAoJaW50IDEKCXJldHVybgoKLy8gbGlua1RvTkZEKG5mZEFwcElkOiB1aW50NjQsIG5mZE5hbWU6IHN0cmluZyk6IHZvaWQKbGlua1RvTkZEOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNAoJLy8gYXNzZXJ0KHRoaXMuaXNPd25lck9yTWFuYWdlckNhbGxlcigpLCAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yJykKCWNhbGxzdWIgaXNPd25lck9yTWFuYWdlckNhbGxlcgoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3ZlcmlmeV9uZmRfYWRkcicsIG5mZE5hbWUsIGl0b2IobmZkQXBwSWQpLCByYXdCeXRlcyh0aGlzLmFwcC5hZGRyZXNzKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElkKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxNwoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MTgKCS8vIGFwcGxpY2F0aW9uQXJnczogWyd2ZXJpZnlfbmZkX2FkZHInLCBuZmROYW1lLCBpdG9iKG5mZEFwcElkKSwgcmF3Qnl0ZXModGhpcy5hcHAuYWRkcmVzcyldCglieXRlIDB4NzY2NTcyNjk2Njc5NWY2ZTY2NjQ1ZjYxNjQ2NDcyIC8vICJ2ZXJpZnlfbmZkX2FkZHIiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJZDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkxOQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJZCldCglmcmFtZV9kaWcgLTEgLy8gbmZkQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIHByb3hpZWRTZXRUb2tlblBheW91dFJhdGlvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX3Byb3hpZWRTZXRUb2tlblBheW91dFJhdGlvOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBvb2xLZXkpIGZvciBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbyhwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5KTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gcHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8gaXMgbWVhbnQgdG8gYmUgY2FsbGVkIGJ5IHBvb2xzICE9IDEgLSBjYWxsaW5nIFVTLCBwb29sICMxCi8vIFdlIG5lZWQgdG8gdmVyaWZ5IHRoYXQgd2UgYXJlIGluIGZhY3QgYmVpbmcgY2FsbGVkIGJ5IGFub3RoZXIgb2YgT1VSIHBvb2xzIChub3QgdXMpCi8vIGFuZCB0aGVuIHdlJ2xsIGNhbGwgdGhlIHZhbGlkYXRvciBvbiB0aGVpciBiZWhhbGYgdG8gdXBkYXRlIHRoZSB0b2tlbiBwYXlvdXRzCi8vIEBwYXJhbSBwb29sS2V5IC0gVmFsaWRhdG9yUG9vbEtleSB0dXBsZQpwcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9ySWQudmFsdWUgPT09IHBvb2xLZXkuaWQsICdjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEnKQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyBjYWxsZXIgbXVzdCBiZSBwYXJ0IG9mIHNhbWUgdmFsaWRhdG9yIHNldCEKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzEKCS8vIGFzc2VydCh0aGlzLnBvb2xJZC52YWx1ZSA9PT0gMSwgJ2NhbGxlZSBtdXN0IGJlIHBvb2wgMScpCglieXRlIDB4NzA2ZjZmNmM0OTY0IC8vICJwb29sSWQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCT09CgoJLy8gY2FsbGVlIG11c3QgYmUgcG9vbCAxCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTMyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgIT09IDEsICdjYWxsZXIgbXVzdCBOT1QgYmUgcG9vbCAxJykKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCSE9CgoJLy8gY2FsbGVyIG11c3QgTk9UIGJlIHBvb2wgMQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjkzNAoJLy8gY2FsbGVyUG9vbEFwcElEID0gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFZhbGlkYXRvclJlZ2lzdHJ5LnByb3RvdHlwZS5nZXRQb29sQXBwSWQ+KHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3Bvb2xLZXkuaWQsIHBvb2xLZXkucG9vbElkXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzYKCS8vIG1ldGhvZEFyZ3M6IFtwb29sS2V5LmlkLCBwb29sS2V5LnBvb2xJZF0KCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBjYWxsZXJQb29sQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5MzgKCS8vIGFzc2VydChjYWxsZXJQb29sQXBwSUQgPT09IHBvb2xLZXkucG9vbEFwcElkKQoJZnJhbWVfZGlnIDAgLy8gY2FsbGVyUG9vbEFwcElEOiB1aW50NjQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTM5CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk0MQoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBWYWxpZGF0b3JSZWdpc3RyeS5wcm90b3R5cGUuc2V0VG9rZW5QYXlvdXRSYXRpbz4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQyCgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMuY3JlYXRpbmdWYWxpZGF0b3JDb250cmFjdEFwcElkLnZhbHVlKQoJYnl0ZSAweDYzNzI2NTYxNzQ2ZjcyNDE3MDcwIC8vICJjcmVhdG9yQXBwIgoJYXBwX2dsb2JhbF9nZXQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDMKCS8vIG1ldGhvZEFyZ3M6IFt0aGlzLnZhbGlkYXRvcklkLnZhbHVlXQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGlzT3duZXJPck1hbmFnZXJDYWxsZXIoKTogYm9vbGVhbgppc093bmVyT3JNYW5hZ2VyQ2FsbGVyOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTQ4CgkvLyBPd25lckFuZE1hbmFnZXIgPSBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgVmFsaWRhdG9yUmVnaXN0cnkucHJvdG90eXBlLmdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcj4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLmNyZWF0aW5nVmFsaWRhdG9yQ29udHJhY3RBcHBJZC52YWx1ZSksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbdGhpcy52YWxpZGF0b3JJZC52YWx1ZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5jcmVhdGluZ1ZhbGlkYXRvckNvbnRyYWN0QXBwSWQudmFsdWUpCglieXRlIDB4NjM3MjY1NjE3NDZmNzI0MTcwNzAgLy8gImNyZWF0b3JBcHAiCglhcHBfZ2xvYmFsX2dldAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MAoJLy8gbWV0aG9kQXJnczogW3RoaXMudmFsaWRhdG9ySWQudmFsdWVdCglieXRlIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglpdHhuIE51bUxvZ3MKCWludCAxCgktCglpdHhuYXMgTG9ncwoJZXh0cmFjdCA0IDAKCWZyYW1lX2J1cnkgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk1MgoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzBdIHx8IHRoaXMudHhuLnNlbmRlciA9PT0gT3duZXJBbmRNYW5hZ2VyWzFdOwoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIDAgLy8gT3duZXJBbmRNYW5hZ2VyOiAoYWRkcmVzcyxhZGRyZXNzKQoJZXh0cmFjdCAwIDMyCgk9PQoJZHVwCglibnogKnNraXBfb3IyCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBPd25lckFuZE1hbmFnZXI6IChhZGRyZXNzLGFkZHJlc3MpCglleHRyYWN0IDMyIDMyCgk9PQoJfHwKCipza2lwX29yMjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBnZXRGZWVTaW5rKCk6IEFkZHJlc3MKZ2V0RmVlU2luazoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NTYKCS8vIHJldHVybiB0aGlzLmZlZVNpbmtBZGRyOwoJbG9hZCAyMDEgLy8gVE1QTF9mZWVTaW5rQWRkcgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk2NgoJLy8gb25saW5lID0gdGhpcy5nZXRDdXJyZW50T25saW5lU3Rha2UoKQoJY2FsbHN1YiBnZXRDdXJyZW50T25saW5lU3Rha2UKCWZyYW1lX2J1cnkgMCAvLyBvbmxpbmU6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5NjgKCS8vIHJldHVybiB3aWRlUmF0aW8oW29ubGluZSwgTUFYX1ZBTElEQVRPUl9TT0ZUX1BDVF9PRl9PTkxJTkVfMURFQ0lNQUxdLCBbMTAwMF0pOwoJZnJhbWVfZGlnIDAgLy8gb25saW5lOiB1aW50NjQKCWludCAxMDAKCW11bHcKCWludCAwCglpbnQgMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gZ2V0R29PbmxpbmVGZWUoKTogdWludDY0CmdldEdvT25saW5lRmVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc1CgkvLyBpc09ubGluZSA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGlzT25saW5lOiBib29sCgoJLy8gKmlmNDdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc2CgkvLyAhaXNPbmxpbmUKCWZyYW1lX2RpZyAwIC8vIGlzT25saW5lOiBib29sCgkhCglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTc4CgkvLyByZXR1cm4gMl8wMDBfMDAwOwoJaW50IDJfMDAwXzAwMAoJYiAqZ2V0R29PbmxpbmVGZWUqcmV0dXJuCgoqaWY0N19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTgwCgkvLyByZXR1cm4gMDsKCWludCAwCgoqZ2V0R29PbmxpbmVGZWUqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk4NQoJLy8gcmV0dXJuIDJfMDAwXzAwMF8wMDBfMDAwXzAwMDsKCWludCAyXzAwMF8wMDBfMDAwXzAwMF8wMDAKCXJldHN1YgoKLy8gY2hlY2tJZkJpbkNsb3NlZCgpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiB0aGUgY3VycmVudCByb3VuZCBpcyBpbiBhICduZXcgY2FsY3VsYXRpb24gYmluJyAoYXBwcm94aW1hdGVseSBkYWlseSkKY2hlY2tJZkJpbkNsb3NlZDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkyCgkvLyBjdXJyZW50QmluU2l6ZSA9IHRoaXMucm91bmRzUGVyRGF5LnZhbHVlIGFzIHVpbnQxMjgKCWJ5dGUgMHg3MjZmNzU2ZTY0NzM1MDY1NzI0NDYxNzkgLy8gInJvdW5kc1BlckRheSIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglmcmFtZV9idXJ5IDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgoJLy8gKmlmNDhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTkzCgkvLyBnbG9iYWxzLnJvdW5kID49IHRoaXMuYmluUm91bmRTdGFydC52YWx1ZSArIChjdXJyZW50QmluU2l6ZSBhcyB1aW50NjQpCglnbG9iYWwgUm91bmQKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgMCAvLyBjdXJyZW50QmluU2l6ZTogdW5zYWZlIHVpbnQxMjgKCWR1cAoJYml0bGVuCglpbnQgNjQKCTw9CgoJLy8gY3VycmVudEJpblNpemUgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCgkrCgk+PQoJYnogKmlmNDhfZW5kCgoJLy8gKmlmNDhfY29uc2VxdWVudAoJLy8gKmlmNDlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6OTk0CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50IDMwMAoJPAoJYnogKmlmNDlfZW5kCgoJLy8gKmlmNDlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmNDlfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5NwoJLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOCA9IGN1cnJlbnRCaW5TaXplICogKDM2NSBhcyB1aW50MTI4KQoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNmQKCWIqCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyBjdXJyZW50QmluU2l6ZSAqICgzNjUgYXMgdWludDEyOCkgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWZyYW1lX2J1cnkgMSAvLyBhcHByb3hSb3VuZHNQZXJZZWFyOiB1aW50MTI4CgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjk5OAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgLyBjdXJyZW50QmluU2l6ZQoJYnl0ZSAweDczNzQ2MTZiNjU0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJzdGFrZUFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAwIC8vIGN1cnJlbnRCaW5TaXplOiB1bnNhZmUgdWludDEyOAoJYi8KCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIHRoaXMuc3Rha2VBY2N1bXVsYXRvci52YWx1ZSAvIGN1cnJlbnRCaW5TaXplIG92ZXJmbG93ZWQgMTI4IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDE2CgktCglzd2FwCglzdWJzdHJpbmczCglmcmFtZV9idXJ5IDIgLy8gYXZnU3Rha2U6IHVpbnQxMjgKCgkvLyAqaWY1MF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czo5OTkKCS8vIGF2Z1N0YWtlICE9PSAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliIT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDAzCgkvLyBhcHI6IHVpbnQxMjggPQoJLy8gICAgICAgICAgICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICoKCS8vICAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKQoJYnl0ZSAweDcyNjU3NzYxNzI2NDQxNjM2Mzc1NmQ3NTZjNjE3NDZmNzIgLy8gInJld2FyZEFjY3VtdWxhdG9yIgoJYXBwX2dsb2JhbF9nZXQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMjcxMAoJYioKCWZyYW1lX2RpZyAyIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgliLwoJZnJhbWVfZGlnIDEgLy8gYXBwcm94Um91bmRzUGVyWWVhcjogdWludDEyOAoJZnJhbWVfZGlnIDAgLy8gY3VycmVudEJpblNpemU6IHVuc2FmZSB1aW50MTI4CgliLwoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICgoKHRoaXMucmV3YXJkQWNjdW11bGF0b3IudmFsdWUgYXMgdWludDEyOCkgKiAoMTAwMDAgYXMgdWludDEyOCkpIC8gYXZnU3Rha2UpICpcbiAgICAgICAgICAoYXBwcm94Um91bmRzUGVyWWVhciAvIGN1cnJlbnRCaW5TaXplKSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAzIC8vIGFwcjogdWludDEyOAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDA3CgkvLyBhbHBoYTogdWludDEyOCA9IDEwIGFzIHVpbnQxMjgKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwYQoJZnJhbWVfYnVyeSA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoKCS8vICppZjUxX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMDkKCS8vIGF2Z1N0YWtlID4gMzAwMDAwMDAwMDAwCglmcmFtZV9kaWcgMiAvLyBhdmdTdGFrZTogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NWQ5NjRiODAwCgliPgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMTAKCS8vIGFscGhhID0gOTAgYXMgdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDVhCglmcmFtZV9idXJ5IDQgLy8gYWxwaGE6IHVuc2FmZSB1aW50MTI4CgoqaWY1MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAxMgoJLy8gdGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgPQoJLy8gICAgICAgICAgICh0aGlzLndlaWdodGVkTW92aW5nQXZlcmFnZS52YWx1ZSAqICgoMTAwIGFzIHVpbnQxMjgpIC0gYWxwaGEpKSAvICgxMDAgYXMgdWludDEyOCkgKwoJLy8gICAgICAgICAgIChhcHIgKiBhbHBoYSkgLyAoMTAwIGFzIHVpbnQxMjgpCglieXRlIDB4NjU3NzZkNjEgLy8gImV3bWEiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYi0KCWIqCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNjQKCWIvCglmcmFtZV9kaWcgMyAvLyBhcHI6IHVpbnQxMjgKCWZyYW1lX2RpZyA0IC8vIGFscGhhOiB1bnNhZmUgdWludDEyOAoJYioKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA2NAoJYi8KCWIrCglkdXAKCWJpdGxlbgoJaW50IDEyOAoJPD0KCgkvLyAodGhpcy53ZWlnaHRlZE1vdmluZ0F2ZXJhZ2UudmFsdWUgKiAoKDEwMCBhcyB1aW50MTI4KSAtIGFscGhhKSkgLyAoMTAwIGFzIHVpbnQxMjgpICtcbiAgICAgICAgICAoYXByICogYWxwaGEpIC8gKDEwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCippZjUwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE4CgkvLyB0aGlzLnNldFJvdW5kc1BlckRheSgpCgljYWxsc3ViIHNldFJvdW5kc1BlckRheQoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDE5CgkvLyB0aGlzLnN0YWtlQWNjdW11bGF0b3IudmFsdWUgPSAodGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgYXMgdWludDEyOCkgKiAodGhpcy5yb3VuZHNQZXJEYXkudmFsdWUgYXMgdWludDEyOCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NDE2MzYzNzU2ZDc1NmM2MTc0NmY3MiAvLyAic3Rha2VBY2N1bXVsYXRvciIKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglpdG9iCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJaXRvYgoJYioKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vICh0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSBhcyB1aW50MTI4KSAqICh0aGlzLnJvdW5kc1BlckRheS52YWx1ZSBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3N0YWtpbmdQb29sLmFsZ28udHM6MTAyMAoJLy8gdGhpcy5yZXdhcmRBY2N1bXVsYXRvci52YWx1ZSA9IDAKCWJ5dGUgMHg3MjY1Nzc2MTcyNjQ0MTYzNjM3NTZkNzU2YzYxNzQ2ZjcyIC8vICJyZXdhcmRBY2N1bXVsYXRvciIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvc3Rha2luZ1Bvb2wuYWxnby50czoxMDIxCgkvLyB0aGlzLmJpblJvdW5kU3RhcnQudmFsdWUgPSBnbG9iYWxzLnJvdW5kIC0gKGdsb2JhbHMucm91bmQgJSB0aGlzLnJvdW5kc1BlckRheS52YWx1ZSkKCWJ5dGUgMHg2MjY5NmU1MjZmNzU2ZTY0NTM3NDYxNzI3NCAvLyAiYmluUm91bmRTdGFydCIKCWdsb2JhbCBSb3VuZAoJZ2xvYmFsIFJvdW5kCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglhcHBfZ2xvYmFsX2dldAoJJQoJLQoJYXBwX2dsb2JhbF9wdXQKCippZjQ4X2VuZDoKCXJldHN1YgoKLy8gc2V0Um91bmRzUGVyRGF5KCk6IHZvaWQKc2V0Um91bmRzUGVyRGF5OgoJcHJvdG8gMCAwCgoJLy8gZXhhbXBsZXMvcmV0aS9zdGFraW5nUG9vbC5hbGdvLnRzOjEwMjYKCS8vIHRoaXMucm91bmRzUGVyRGF5LnZhbHVlID0gQVZHX1JPVU5EU19QRVJfREFZCglieXRlIDB4NzI2Zjc1NmU2NDczNTA2NTcyNDQ2MTc5IC8vICJyb3VuZHNQZXJEYXkiCglpbnQgMzA4NTcKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiaW5pdFN0b3JhZ2UocGF5KXZvaWQiCgltZXRob2QgImFkZFN0YWtlKHBheSxhZGRyZXNzKXVpbnQ2NCIKCW1ldGhvZCAicmVtb3ZlU3Rha2UoYWRkcmVzcyx1aW50NjQpdm9pZCIKCW1ldGhvZCAiY2xhaW1Ub2tlbnMoKXZvaWQiCgltZXRob2QgImdldFN0YWtlckluZm8oYWRkcmVzcykoYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAidXBkYXRlQWxnb2RWZXIoc3RyaW5nKXZvaWQiCgltZXRob2QgImVwb2NoQmFsYW5jZVVwZGF0ZSgpdm9pZCIKCW1ldGhvZCAiZ29PbmxpbmUocGF5LGJ5dGVbXSxieXRlW10sYnl0ZVtdLHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImdvT2ZmbGluZSgpdm9pZCIKCW1ldGhvZCAibGlua1RvTkZEKHVpbnQ2NCxzdHJpbmcpdm9pZCIKCW1ldGhvZCAicHJveGllZFNldFRva2VuUGF5b3V0UmF0aW8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0WzI0XSx1aW50NjQpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9nYXMgKmFiaV9yb3V0ZV9pbml0U3RvcmFnZSAqYWJpX3JvdXRlX2FkZFN0YWtlICphYmlfcm91dGVfcmVtb3ZlU3Rha2UgKmFiaV9yb3V0ZV9jbGFpbVRva2VucyAqYWJpX3JvdXRlX2dldFN0YWtlckluZm8gKmFiaV9yb3V0ZV9wYXlUb2tlblJld2FyZCAqYWJpX3JvdXRlX3VwZGF0ZUFsZ29kVmVyICphYmlfcm91dGVfZXBvY2hCYWxhbmNlVXBkYXRlICphYmlfcm91dGVfZ29PbmxpbmUgKmFiaV9yb3V0ZV9nb09mZmxpbmUgKmFiaV9yb3V0ZV9saW5rVG9ORkQgKmFiaV9yb3V0ZV9wcm94aWVkU2V0VG9rZW5QYXlvdXRSYXRpbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfVXBkYXRlQXBwbGljYXRpb246CgltZXRob2QgInVwZGF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIFVwZGF0ZUFwcGxpY2F0aW9uCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "templateVariables": { diff --git a/examples/reti/artifacts/ValidatorRegistry.approval.teal b/examples/reti/artifacts/ValidatorRegistry.approval.teal index ee768f1f3..009e46d35 100644 --- a/examples/reti/artifacts/ValidatorRegistry.approval.teal +++ b/examples/reti/artifacts/ValidatorRegistry.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/reti/artifacts/ValidatorRegistry.arc32.json b/examples/reti/artifacts/ValidatorRegistry.arc32.json index 5e4e4353f..f1e94fc4b 100644 --- a/examples/reti/artifacts/ValidatorRegistry.arc32.json +++ b/examples/reti/artifacts/ValidatorRegistry.arc32.json @@ -221,7 +221,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9uZmRSZWdpc3RyeUFwcElkCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgdXBkYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKdXBkYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjAyCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBZGRyZXNzLmZyb21BZGRyZXNzKCdMWjRWMklSVkxDWEZKSzRSRUpWNFRBR0VLRVlUQTJHTVI2VEMyMzQ0T0IzTDNBRjNNV1haNlpBRklRJykpCgl0eG4gU2VuZGVyCglhZGRyIExaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA0CgkvLyB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmRlbGV0ZSgpCglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfZGVsCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIwNQoJLy8gdGhpcy5zdGFraW5nUG9vbEluaXRpYWxpemVkLnZhbHVlID0gZmFsc2UKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgY3JlYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKY3JlYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA5CgkvLyB0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUgPSBmYWxzZQoJYnl0ZSAweDY5NmU2OTc0IC8vICJpbml0IgoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTAKCS8vIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTEKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTIKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlID0gMAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0OgoJLy8gYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbml0U3Rha2luZ0NvbnRyYWN0KHVpbnQ2NCl2b2lkCgljYWxsc3ViIGluaXRTdGFraW5nQ29udHJhY3QKCWludCAxCglyZXR1cm4KCi8vIGluaXRTdGFraW5nQ29udHJhY3QoYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0KTogdm9pZAppbml0U3Rha2luZ0NvbnRyYWN0OgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIxNwoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5jcmVhdGUoYXBwcm92YWxQcm9ncmFtU2l6ZSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBhcHByb3ZhbFByb2dyYW1TaXplOiB1aW50NjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YSh1aW50NjQsYnl0ZVtdKXZvaWQKKmFiaV9yb3V0ZV9sb2FkU3Rha2luZ0NvbnRyYWN0RGF0YToKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbG9hZFN0YWtpbmdDb250cmFjdERhdGEodWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIGxvYWRTdGFraW5nQ29udHJhY3REYXRhCglpbnQgMQoJcmV0dXJuCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YShvZmZzZXQ6IHVpbnQ2NCwgZGF0YTogYnl0ZXMpOiB2b2lkCmxvYWRTdGFraW5nQ29udHJhY3REYXRhOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMQoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUpCglieXRlIDB4Njk2ZTY5NzQgLy8gImluaXQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCWdldGJpdAoJIQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMgoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5yZXBsYWNlKG9mZnNldCwgZGF0YSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoqYWJpX3JvdXRlX2ZpbmFsaXplU3Rha2luZ0NvbnRyYWN0OgoJLy8gZXhlY3V0ZSBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoJY2FsbHN1YiBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdAoJaW50IDEKCXJldHVybgoKLy8gZmluYWxpemVTdGFraW5nQ29udHJhY3QoKTogdm9pZApmaW5hbGl6ZVN0YWtpbmdDb250cmFjdDoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMjYKCS8vIHRoaXMuc3Rha2luZ1Bvb2xJbml0aWFsaXplZC52YWx1ZSA9IHRydWUKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAxCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9nZXRNYnJBbW91bnRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE1ickFtb3VudHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRNYnJBbW91bnRzKCk6IE1ickFtb3VudHMKLy8KLy8gUmV0dXJucyB0aGUgTUJSIGFtb3VudHMgbmVlZGVkIGZvciB2YXJpb3VzIGFjdGlvbnM6Ci8vIFsKLy8gYWRkVmFsaWRhdG9yTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyB2YWxpZGF0b3IgLSBwYWlkIHRvIHZhbGlkYXRvciBjb250cmFjdAovLyBhZGRQb29sTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyBwb29sIC0gcGFpZCB0byB2YWxpZGF0b3IKLy8gcG9vbEluaXRNYnI6IHVpbnQ2NCAtIG1iciBuZWVkZWQgdG8gaW5pdFN0b3JhZ2UoKSBvZiBwb29sIC0gcGFpZCB0byBwb29sIGl0c2VsZgovLyBhZGRTdGFrZXJNYnI6IHVpbnQ2NCAtIG1iciBzdGFrZXIgbmVlZHMgdG8gYWRkIHRvIGZpcnN0IHN0YWtpbmcgcGF5bWVudCAoc3RheXMgdy8gdmFsaWRhdG9yKQovLyBdCmdldE1ickFtb3VudHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQ2CgkvLyByZXR1cm4gewoJLy8gICAgICAgYWRkVmFsaWRhdG9yTWJyOiB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDEgLyogdiBwcmVmaXggKi8gKyBsZW48VmFsaWRhdG9ySWRUeXBlPigpICsgbGVuPFZhbGlkYXRvckluZm8+KCkpLAoJLy8gICAgICAgYWRkUG9vbE1icjogdGhpcy5taW5CYWxhbmNlRm9yQWNjb3VudCgKCS8vICAgICAgICAgMSwKCS8vICAgICAgICAgLy8gd2UgY291bGQgY2FsY3VsYXRlIHRoaXMgZGlyZWN0bHkgYnkgcmVmZXJlbmNpbmcgdGhlIHNpemUgb2Ygc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0gYnV0IGl0IHdvdWxkCgkvLyAgICAgICAgIC8vIG1lYW4gb3VyIGNhbGxlcnMgd291bGQgaGF2ZSB0byByZWZlcmVuY2UgdGhlIGJveCBBTkQgYnV5IHVwIGkvbyAtIHNvIGp1c3QgZ28gbWF4IG9uIGV4dHJhIHBhZ2VzCgkvLyAgICAgICAgIDMsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIFN0YWtpbmdQb29sLnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICAgICAgU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCS8vICAgICAgICksCgkvLyAgICAgICBwb29sSW5pdE1icjoKCS8vICAgICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoNyAvKiAnc3Rha2VycycgbmFtZSAqLyArIGxlbjxTdGFrZWRJbmZvPigpICogTUFYX1NUQUtFUlNfUEVSX1BPT0wpLAoJLy8gICAgICAgYWRkU3Rha2VyTWJyOgoJLy8gICAgICAgICAvLyBob3cgbXVjaCB0byBjaGFyZ2UgZm9yIGZpcnN0IHRpbWUgYSBzdGFrZXIgYWRkcyBzdGFrZSAtIHNpbmNlIHdlIGFkZCBhIHRyYWNraW5nIGJveCBwZXIgc3Rha2VyCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoMyAvKiAnc3BzJyBwcmVmaXggKi8gKyBsZW48QWRkcmVzcz4oKSArIGxlbjxWYWxpZGF0b3JQb29sS2V5PigpICogTUFYX1BPT0xTX1BFUl9TVEFLRVIpLCAvLyBzaXplIG9mIGtleSArIGFsbCB2YWx1ZXMKCS8vICAgICB9OwoJaW50IDExMDEKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCWl0b2IKCWludCAzCglpbnQgMTEKCWludCAwCglkdXBuIDIKCWludCAzCglpbnQgMQoJY2FsbHN1YiBtaW5CYWxhbmNlRm9yQWNjb3VudAoJaXRvYgoJY29uY2F0CglpbnQgMTAwMDAwCglpbnQgMTI4MDcKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCSsKCWl0b2IKCWNvbmNhdAoJaW50IDE3OQoJY2FsbHN1YiBjb3N0Rm9yQm94U3RvcmFnZQoJaXRvYgoJY29uY2F0CglyZXRzdWIKCi8vIGdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFByb3RvY29sQ29uc3RyYWludHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2V0UHJvdG9jb2xDb25zdHJhaW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFByb3RvY29sQ29uc3RyYWludHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRQcm90b2NvbENvbnN0cmFpbnRzKCk6IENvbnN0cmFpbnRzCi8vCi8vIFJldHVybnMgdGhlIHByb3RvY29sIGNvbnN0cmFpbnRzIHNvIHRoYXQgVUlzIGNhbiBsaW1pdCB3aGF0IHVzZXJzIHNwZWNpZnkgZm9yIHZhbGlkYXRvciBjb25maWd1cmF0aW9uIHBhcmFtZXRlcnMuCmdldFByb3RvY29sQ29uc3RyYWludHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjcyCgkvLyByZXR1cm4gewoJLy8gICAgICAgZXBvY2hQYXlvdXRSb3VuZHNNaW46IE1JTl9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICBlcG9jaFBheW91dFJvdW5kc01heDogTUFYX0VQT0NIX0xFTkdUSCwKCS8vICAgICAgIG1pblBjdFRvVmFsaWRhdG9yV0ZvdXJEZWNpbWFsczogTUlOX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICBtYXhQY3RUb1ZhbGlkYXRvcldGb3VyRGVjaW1hbHM6IE1BWF9QQ1RfVE9fVkFMSURBVE9SLAoJLy8gICAgICAgbWluRW50cnlTdGFrZTogTUlOX0FMR09fU1RBS0VfUEVSX1BPT0wsCgkvLyAgICAgICBtYXhBbGdvUGVyUG9vbDogdGhpcy5tYXhBbGdvQWxsb3dlZFBlclBvb2woKSwKCS8vICAgICAgIG1heEFsZ29QZXJWYWxpZGF0b3I6IHRoaXMubWF4QWxsb3dlZFN0YWtlKCksCgkvLyAgICAgICBhbXRDb25zaWRlcmVkU2F0dXJhdGVkOiB0aGlzLmFsZ29TYXR1cmF0aW9uTGV2ZWwoKSwKCS8vICAgICAgIG1heE5vZGVzOiBNQVhfTk9ERVMsCgkvLyAgICAgICBtYXhQb29sc1Blck5vZGU6IE1BWF9QT09MU19QRVJfTk9ERSwKCS8vICAgICAgIG1heFN0YWtlcnNQZXJQb29sOiBNQVhfU1RBS0VSU19QRVJfUE9PTCwKCS8vICAgICB9OwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMGY0MjQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZjQyNDAwMDAwMDAwMDAwMGY0MjQwCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJaXRvYgoJY29uY2F0CgljYWxsc3ViIG1heEFsbG93ZWRTdGFrZQoJaXRvYgoJY29uY2F0CgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwYzgKCWNvbmNhdAoJcmV0c3ViCgovLyBnZXROdW1WYWxpZGF0b3JzKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXROdW1WYWxpZGF0b3JzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE51bVZhbGlkYXRvcnMoKXVpbnQ2NAoJY2FsbHN1YiBnZXROdW1WYWxpZGF0b3JzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TnVtVmFsaWRhdG9ycygpOiB1aW50NjQKLy8KLy8gUmV0dXJucyB0aGUgY3VycmVudCBudW1iZXIgb2YgdmFsaWRhdG9ycwpnZXROdW1WYWxpZGF0b3JzOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI5MgoJLy8gcmV0dXJuIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZTsKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yQ29uZmlnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JDb25maWcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRWYWxpZGF0b3JDb25maWcodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFZhbGlkYXRvckNvbmZpZwpnZXRWYWxpZGF0b3JDb25maWc6Cglwcm90byAxIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mjk3CgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWc7CglpbnQgMAoJaW50IDI0MgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvclN0YXRlKHVpbnQ2NCkodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JTdGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFZhbGlkYXRvclN0YXRlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBWYWxpZGF0b3JDdXJTdGF0ZQpnZXRWYWxpZGF0b3JTdGF0ZToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMDIKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlOwoJaW50IDI0MiAvLyBoZWFkT2Zmc2V0CglpbnQgMjYKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKKmFiaV9yb3V0ZV9nZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKCWNhbGxzdWIgZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBbQWRkcmVzcywgQWRkcmVzc10KZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMwNwoJLy8gcmV0dXJuIFt0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlcl07CglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgljb25jYXQKCXJldHN1YgoKLy8gZ2V0UG9vbHModWludDY0KSh1aW50NjQsdWludDE2LHVpbnQ2NClbXQoqYWJpX3JvdXRlX2dldFBvb2xzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdCgljYWxsc3ViIGdldFBvb2xzCglkdXAKCWxlbgoJaW50IDE4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0UG9vbHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xJbmZvW10KLy8KLy8gUmV0dXJuIGxpc3Qgb2YgYWxsIHBvb2xzIGZvciB0aGlzIHZhbGlkYXRvci4KLy8gQHBhcmFtIHt1aW50NjR9IHZhbGlkYXRvcklkCi8vIEByZXR1cm4ge1Bvb2xJbmZvW119IC0gYXJyYXkgb2YgcG9vbHMKLy8gTm90IGNhbGxhYmxlIGZyb20gb3RoZXIgY29udHJhY3RzIGJlY2F1c2UgPjFLIHJldHVybiBidXQgY2FuIGJlIGNhbGxlZCB3LyBzaW11bGF0ZSB3aGljaCBidW1wcyBsb2cgcmV0dXJucwpnZXRQb29sczoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzE4CgkvLyByZXREYXRhOiBQb29sSW5mb1tdID0gW10KCWJ5dGUgMHgKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMxOQoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMpCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWludCA0MzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyMAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIxCgkvLyBwb29sU2V0W2ldLnBvb2xBcHBJZCA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvcl8wX2VuZAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzI1CgkvLyByZXREYXRhLnB1c2gocG9vbFNldFtpXSkKCWZyYW1lX2RpZyAwIC8vIHJldERhdGE6IFBvb2xJbmZvW10KCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTgKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoqZm9yXzBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyNwoJLy8gcmV0dXJuIHJldERhdGE7CglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGdldFBvb2xBcHBJZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xBcHBJZCh2YWxpZGF0b3JJZDogdWludDY0LCBwb29sSWQ6IHVpbnQ2NCk6IHVpbnQ2NApnZXRQb29sQXBwSWQ6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzM1CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sSWQgIT09IDAgJiYgcG9vbElkIDw9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMubGVuZ3RoLAoJLy8gICAgICAgJ3Bvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3InCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMjQKCTw9CgkmJgoKKnNraXBfYW5kMDoKCS8vIHBvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMzkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW3Bvb2xJZCAtIDFdLnBvb2xBcHBJZDsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZ2V0UG9vbEluZm8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0LHVpbnQxNix1aW50NjQpCiphYmlfcm91dGVfZ2V0UG9vbEluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xLZXk6ICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMjQKCT09CgoJLy8gYXJndW1lbnQgMCAocG9vbEtleSkgZm9yIGdldFBvb2xJbmZvIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJY2FsbHN1YiBnZXRQb29sSW5mbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xJbmZvKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiBQb29sSW5mbwpnZXRQb29sSW5mbzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNDQKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXTsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldEN1ck1heFN0YWtlUGVyUG9vbCh1aW50NjQpdWludDY0CiphYmlfcm91dGVfZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRDdXJNYXhTdGFrZVBlclBvb2wodWludDY0KXVpbnQ2NAoJY2FsbHN1YiBnZXRDdXJNYXhTdGFrZVBlclBvb2wKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRDdXJNYXhTdGFrZVBlclBvb2wodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IHVpbnQ2NAovLwovLyBDYWxjdWxhdGUgdGhlIG1heGltdW0gc3Rha2UgcGVyIHBvb2wgZm9yIGEgZ2l2ZW4gdmFsaWRhdG9yLgovLyBOb3JtYWxseSB0aGlzIHdvdWxkIGJlIG1heEFsZ29QZXJQb29sLCBidXQgaXQgc2hvdWxkIGFsc28gbmV2ZXIgZ28gYWJvdmUgTWF4QWxsb3dlZFN0YWtlIC8gbnVtUG9vbHMgc28KLy8gYXMgcG9vbHMgYXJlIGFkZGVkIHRoZSBtYXggYWxsb3dlZCBwZXIgcG9vbCBjYW4gcmVkdWNlLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvci4KZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTUKCS8vIG51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIG51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU2CgkvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29scyA9IHRoaXMubWF4QWxsb3dlZFN0YWtlKCkgLyBudW1Qb29scwoJY2FsbHN1YiBtYXhBbGxvd2VkU3Rha2UKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM1NwoJLy8gbWF4UGVyUG9vbDogdWludDY0ID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWF4QWxnb1BlclBvb2wKCWludCAyMTcKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU4CgkvLyBtYXhQZXJQb29sID09PSAwCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMV9lbmQKCgkvLyAqaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTkKCS8vIG1heFBlclBvb2wgPSB0aGlzLm1heEFsZ29BbGxvd2VkUGVyUG9vbCgpCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKKmlmMV9lbmQ6CgkvLyAqaWYyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2MQoJLy8gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMgPCBtYXhQZXJQb29sCglmcmFtZV9kaWcgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTwKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzYyCgkvLyBtYXhQZXJQb29sID0gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMKCWZyYW1lX2RpZyAxIC8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzOiB1aW50NjQKCWZyYW1lX2J1cnkgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2NAoJLy8gcmV0dXJuIG1heFBlclBvb2w7CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sCiphYmlfcm91dGVfZG9lc1N0YWtlck5lZWRUb1BheU1CUjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHN0YWtlcikgZm9yIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZG9lc1N0YWtlck5lZWRUb1BheU1CUihhZGRyZXNzKWJvb2wKCWNhbGxzdWIgZG9lc1N0YWtlck5lZWRUb1BheU1CUgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb2VzU3Rha2VyTmVlZFRvUGF5TUJSKHN0YWtlcjogQWRkcmVzcyk6IGJvb2xlYW4KLy8KLy8gSGVscGVyIGNhbGxlcnMgY2FuIGNhbGwgdy8gc2ltdWxhdGUgdG8gZGV0ZXJtaW5lIGlmICdBZGRTdGFrZXInIE1CUiBzaG91bGQgYmUgaW5jbHVkZWQgdy8gc3Rha2luZyBhbW91bnQKLy8gQHBhcmFtIHN0YWtlcgpkb2VzU3Rha2VyTmVlZFRvUGF5TUJSOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM3MwoJLy8gcmV0dXJuICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHM7CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJIQoJcmV0c3ViCgovLyBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10KKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KGFkZHJlc3MpKHVpbnQ2NCx1aW50NjQsdWludDY0KVtdCgljYWxsc3ViIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudAoJZHVwCglsZW4KCWludCAyNAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudChzdGFrZXI6IEFkZHJlc3MpOiBWYWxpZGF0b3JQb29sS2V5W10KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgcG9vbHMgZm9yIGFuIGFjY291bnQuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgdG8gcmV0cmlldmUgc3Rha2VkIHBvb2xzIGZvci4KLy8gQHJldHVybiB7VmFsaWRhdG9yUG9vbEtleVtdfSAtIFRoZSBhcnJheSBvZiBzdGFrZWQgcG9vbHMgZm9yIHRoZSBhY2NvdW50LgpnZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODMKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4NAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJYiAqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybgoKKmlmM19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg2CgkvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10gPSBbXQoJYnl0ZSAweAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFZhbGlkYXRvclBvb2xLZXlbXQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODcKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZSkKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg4CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzFfZW5kCgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODkKCS8vIHBvb2xTZXRbaV0uaWQgIT09IDAKCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTAKCS8vIHJldERhdGEucHVzaChwb29sU2V0W2ldKQoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCglmcmFtZV9kaWcgMSAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMjQKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10KCippZjRfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSArPSAxCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTMKCS8vIHJldHVybiByZXREYXRhOwoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCgoqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDIKCXJldHN1YgoKLy8gZ2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX2dldFRva2VuUGF5b3V0UmF0aW86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgZ2V0VG9rZW5QYXlvdXRSYXRpbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFRva2VuUGF5b3V0UmF0aW8odmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xUb2tlblBheW91dFJhdGlvCi8vCi8vIFJldHJpZXZlcyB0aGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciBhIGdpdmVuIHZhbGlkYXRvciAtIHJldHVybmluZyB0aGUgcG9vbCByYXRpb3Mgb2Ygd2hvbGUgc28gdGhhdCB0b2tlbgovLyBwYXlvdXRzIGFjcm9zcyBwb29scyBjYW4gYmUgYmFzZWQgb24gYSBzdGFibGUgc25hcGhvc3Qgb2Ygc3Rha2UuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcmV0dXJuIHtQb29sVG9rZW5QYXlvdXRSYXRpb30gLSBUaGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciB0aGUgdmFsaWRhdG9yLgpnZXRUb2tlblBheW91dFJhdGlvOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQwNQoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpbzsKCWludCA3MDAgLy8gaGVhZE9mZnNldAoJaW50IDIwMAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyh1aW50NjQpKCh1aW50NjRbM10pWzhdKQoqYWJpX3JvdXRlX2dldE5vZGVQb29sQXNzaWdubWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkKCWNhbGxzdWIgZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldE5vZGVQb29sQXNzaWdubWVudHModmFsaWRhdG9ySWQ6IHVpbnQ2NCk6IE5vZGVQb29sQXNzaWdubWVudENvbmZpZwpnZXROb2RlUG9vbEFzc2lnbm1lbnRzOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQxMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAidGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgZG9lc24ndCBleGlzdCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyB0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBkb2Vzbid0IGV4aXN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDEyCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5ub2RlUG9vbEFzc2lnbm1lbnRzOwoJaW50IDkwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMTkyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBnZXRORkRSZWdpc3RyeUlEKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRORkRSZWdpc3RyeUlEOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NAoJY2FsbHN1YiBnZXRORkRSZWdpc3RyeUlECglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TkZEUmVnaXN0cnlJRCgpOiB1aW50NjQKZ2V0TkZEUmVnaXN0cnlJRDoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MTYKCS8vIHJldHVybiB0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQ7Cglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCXJldHN1YgoKLy8gYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFZhbGlkYXRvcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMjQyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNvbmZpZykgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBuZmROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAobWJyUGF5bWVudCkgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFZhbGlkYXRvcihwYXksc3RyaW5nLCh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSl1aW50NjQKCWNhbGxzdWIgYWRkVmFsaWRhdG9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkVmFsaWRhdG9yKG1iclBheW1lbnQ6IFBheVR4biwgbmZkTmFtZTogc3RyaW5nLCBjb25maWc6IFZhbGlkYXRvckNvbmZpZyk6IHVpbnQ2NAovLwovLyBBZGRzIGEgbmV3IHZhbGlkYXRvcgovLyBSZXF1aXJlcyBhdCBsZWFzdCAxMCBBTEdPIGFzIHRoZSAnZmVlJyBmb3IgdGhlIHRyYW5zYWN0aW9uIHRvIGhlbHAgZGlzc3VhZGUgc3BhbW1lZCB2YWxpZGF0b3IgYWRkcy4KLy8KLy8gQHBhcmFtIHtQYXlUeG59IG1iclBheW1lbnQgcGF5bWVudCBmcm9tIGNhbGxlciB3aGljaCBjb3ZlcnMgbWJyIGluY3JlYXNlIG9mIG5ldyB2YWxpZGF0b3Igc3RvcmFnZQovLyBAcGFyYW0ge3N0cmluZ30gbmZkTmFtZSAoT3B0aW9uYWwpIE5hbWUgb2YgbmZkICh1c2VkIGFzIGRvdWJsZS1jaGVjayBhZ2FpbnN0IGlkIHNwZWNpZmllZCBpbiBjb25maWcpCi8vIEBwYXJhbSB7VmFsaWRhdG9yQ29uZmlnfSBjb25maWcgVmFsaWRhdG9yQ29uZmlnIHN0cnVjdAovLyBAcmV0dXJucyB7dWludDY0fSB2YWxpZGF0b3IgaWQKYWRkVmFsaWRhdG9yOgoJcHJvdG8gMyAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDI4CgkvLyB0aGlzLnZhbGlkYXRlQ29uZmlnKGNvbmZpZykKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJY2FsbHN1YiB2YWxpZGF0ZUNvbmZpZwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjkKCS8vIGFzc2VydChjb25maWcub3duZXIgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMAoJLy8gYXNzZXJ0KGNvbmZpZy5tYW5hZ2VyICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDQwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDMxCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBjb25maWcub3duZXIsICdzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcicpCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJPT0KCgkvLyBzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMwoJLy8gdmVyaWZ5UGF5VHhuKG1iclBheW1lbnQsIHsgYW1vdW50OiB0aGlzLmdldE1ickFtb3VudHMoKS5hZGRWYWxpZGF0b3JNYnIgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkVmFsaWRhdG9yTWJyIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MzUKCS8vIGFzc2VydChtYnJQYXltZW50LmZlZSA+IDEwICogMTAwMDAwMCwgJ2ZlZSBtdXN0IGJlIDEwIEFMR08gb3IgbW9yZSB0byBwcmV2ZW50IHNwYW1taW5nIG9mIHZhbGlkYXRvcnMnKQoJZnJhbWVfZGlnIC0xIC8vIG1iclBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgRmVlCglpbnQgMTAwMDAwMDAKCT4KCgkvLyBmZWUgbXVzdCBiZSAxMCBBTEdPIG9yIG1vcmUgdG8gcHJldmVudCBzcGFtbWluZyBvZiB2YWxpZGF0b3JzCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM4CgkvLyB2YWxpZGF0b3JJZCA9IHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSArIDEKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM5CgkvLyB0aGlzLm51bVZhbGlkYXRvcnMudmFsdWUgPSB2YWxpZGF0b3JJZAoJYnl0ZSAweDZlNzU2ZDU2IC8vICJudW1WIgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmNyZWF0ZSgpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWludCAxMDkyCglib3hfY3JlYXRlCglwb3AKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQyCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZyA9IGNvbmZpZwoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmlkID0gdmFsaWRhdG9ySWQKCWludCAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDYKCS8vIGNvbmZpZy5uZmRGb3JJbmZvICE9PSAwCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWY1X2VuZAoKCS8vICppZjVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ0OAoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMubmZkUmVnaXN0cnlBcHBJZCksCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKGNvbmZpZy5uZmRGb3JJbmZvKV0sCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXSwKCS8vICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKQoJbG9hZCAyMDAgLy8gVE1QTF9uZmRSZWdpc3RyeUFwcElkCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDUwCgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgbmZkTmFtZSwgaXRvYihjb25maWcubmZkRm9ySW5mbyldCglieXRlIDB4Njk3MzVmNzY2MTZjNjk2NDVmNmU2NjY0NWY2MTcwNzA2OTY0IC8vICJpc192YWxpZF9uZmRfYXBwaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA3MiA4CglidG9pCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTEKCS8vIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDcyIDgKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25zCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTMKCS8vIGFzc2VydChidG9pKHRoaXMuaXR4bi5sYXN0TG9nKSA9PT0gMSwgInByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZCIpCglpdHhuIExhc3RMb2cKCWJ0b2kKCWludCAxCgk9PQoKCS8vIHByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ1NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IChBcHBJRC5mcm9tVWludDY0KGNvbmZpZy5uZmRGb3JJbmZvKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykgYXMgQWRkcmVzcyksCgkvLyAgICAgICAgICdJZiBzcGVjaWZ5aW5nIE5GRCwgYWNjb3VudCBhZGRpbmcgdmFsaWRhdG9yIG11c3QgYmUgb3duZXInCgkvLyAgICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoqaWY1X2VuZDoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDYxCgkvLyBjb25maWcuZW50cnlHYXRpbmdUeXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMgfHwKCS8vICAgICAgIGNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPT09IEdBVElOR19UWVBFX1NFR01FTlRfT0ZfTkZECglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgODAgMQoJYnRvaQoJaW50IDMKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgNAoJPT0KCXx8Cgoqc2tpcF9vcjA6CglieiAqaWY2X2VuZAoKCS8vICppZjZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ2NQoJLy8gYXNzZXJ0KHRoaXMuaXNORkRBcHBJRFZhbGlkKGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSksICdwcm92aWRlZCBORkQgQXBwIGlkIGZvciBnYXRpbmcgbXVzdCBiZSB2YWxpZCBORkQnKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzTkZEQXBwSURWYWxpZAoKCS8vIHByb3ZpZGVkIE5GRCBBcHAgaWQgZm9yIGdhdGluZyBtdXN0IGJlIHZhbGlkIE5GRAoJYXNzZXJ0CgoqaWY2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NjgKCS8vIHJldHVybiB2YWxpZGF0b3JJZDsKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCS8vIG1hbmFnZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobWFuYWdlcikgZm9yIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIG1hbmFnZXI6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIENoYW5nZXMgdGhlIFZhbGlkYXRvciBtYW5hZ2VyIGZvciBhIHNwZWNpZmljIFZhbGlkYXRvciBpZC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byBjaGFuZ2UgdGhlIG1hbmFnZXIgZm9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IG1hbmFnZXIgLSBUaGUgbmV3IG1hbmFnZXIgYWRkcmVzcy4KY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NzkKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDgzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyID0gbWFuYWdlcgoJaW50IDQwCglmcmFtZV9kaWcgLTIgLy8gbWFuYWdlcjogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbzoKCS8vIHN1bnNldHRpbmdUbzogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Vuc2V0dGluZ09uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBzdW5zZXR0aW5nT246IHVpbnQ2NCwgc3Vuc2V0dGluZ1RvOiBWYWxpZGF0b3JJZFR5cGUpOiB2b2lkCi8vCi8vIFVwZGF0ZXMgdGhlIHN1bnNldCBpbmZvcm1hdGlvbiBmb3IgYSBnaXZlbiB2YWxpZGF0b3IuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IgdG8gdXBkYXRlLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ09uIC0gVGhlIG5ldyBzdW5zZXQgdGltZXN0YW1wLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ1RvIC0gVGhlIG5ldyBzdW5zZXQgdG8gdmFsaWRhdG9yIGlkLgpjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ5NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdPbiA9IHN1bnNldHRpbmdPbgoJaW50IDIyNgoJZnJhbWVfZGlnIC0yIC8vIHN1bnNldHRpbmdPbjogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MDAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdUbyA9IHN1bnNldHRpbmdUbwoJaW50IDIzNAoJZnJhbWVfZGlnIC0zIC8vIHN1bnNldHRpbmdUbzogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodWludDY0LHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2hhbmdlVmFsaWRhdG9yTkZEKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yTkZECglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbmZkQXBwSUQ6IHVpbnQ2NCwgbmZkTmFtZTogc3RyaW5nKTogdm9pZAovLwovLyBDaGFuZ2VzIHRoZSBORkQgZm9yIGEgdmFsaWRhdG9yIGluIHRoZSB2YWxpZGF0b3JMaXN0IGNvbnRyYWN0LgovLyBbIE9OTFkgT1dORVIgQ0FOIENIQU5HRSBdCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yIHRvIHVwZGF0ZS4KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIGFwcGxpY2F0aW9uIGlkIG9mIHRoZSBORkQgdG8gYXNzaWduIHRvIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7c3RyaW5nfSBuZmROYW1lIC0gVGhlIG5hbWUgb2YgdGhlIE5GRCAod2hpY2ggbXVzdCBtYXRjaCkKY2hhbmdlVmFsaWRhdG9yTkZEOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxMwoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MTgKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxOQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MjAKCS8vIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTMgLy8gbmZkTmFtZTogc3RyaW5nCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyMQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCldCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSAoQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpLAoJLy8gICAgICAgJ0lmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyOAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IG5mZEFwcElECglpbnQgNzIKCWZyYW1lX2RpZyAtMiAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3M6CgkvLyBjb21taXNzaW9uQWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjb21taXNzaW9uQWRkcmVzcykgZm9yIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCgljYWxsc3ViIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ2hhbmdlIHRoZSBjb21taXNzaW9uIGFkZHJlc3MgdGhhdCB2YWxpZGF0b3IgcmV3YXJkcyBhcmUgc2VudCB0by4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQpjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzczoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MzYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTQwCgkvLyBhc3NlcnQoY29tbWlzc2lvbkFkZHJlc3MgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTIgLy8gY29tbWlzc2lvbkFkZHJlc3M6IEFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NDEKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzID0gY29tbWlzc2lvbkFkZHJlc3MKCWludCAxNzcKCWZyYW1lX2RpZyAtMiAvLyBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCS8vIFJld2FyZFBlclBheW91dDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA2CglidG9pCgoJLy8gR2F0aW5nQXNzZXRNaW5CYWxhbmNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWJ0b2kKCgkvLyBFbnRyeUdhdGluZ0Fzc2V0czogdWludDY0WzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKEVudHJ5R2F0aW5nQXNzZXRzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgdWludDY0WzRdCglhc3NlcnQKCgkvLyBFbnRyeUdhdGluZ0FkZHJlc3M6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoRW50cnlHYXRpbmdBZGRyZXNzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gRW50cnlHYXRpbmdUeXBlOiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDQgKEVudHJ5R2F0aW5nVHlwZSkgZm9yIGNoYW5nZVZhbGlkYXRvclJld2FyZEluZm8gbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4LCBFbnRyeUdhdGluZ0FkZHJlc3M6IEFkZHJlc3MsIEVudHJ5R2F0aW5nQXNzZXRzOiBTdGF0aWNBcnJheTx1aW50NjQsIDQ+LCBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NCwgUmV3YXJkUGVyUGF5b3V0OiB1aW50NjQpOiB2b2lkCi8vCi8vIEFsbG93IHRoZSBhZGRpdGlvbmFsIHJld2FyZHMgKGdhdGluZyBlbnRyeSwgYWRkaXRpb25hbCB0b2tlbiByZXdhcmRzKSBpbmZvcm1hdGlvbiBiZSBjaGFuZ2VkIGF0IHdpbGwuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCXByb3RvIDYgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NTYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTYxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPSBFbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJZnJhbWVfZGlnIC0yIC8vIEVudHJ5R2F0aW5nVHlwZTogdWludDgKCWl0b2IKCWV4dHJhY3QgNyAxCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjIKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQWRkcmVzcyA9IEVudHJ5R2F0aW5nQWRkcmVzcwoJaW50IDgxCglmcmFtZV9kaWcgLTMgLy8gRW50cnlHYXRpbmdBZGRyZXNzOiBBZGRyZXNzCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQXNzZXRzID0gRW50cnlHYXRpbmdBc3NldHMKCWludCAxMTMKCWZyYW1lX2RpZyAtNCAvLyBFbnRyeUdhdGluZ0Fzc2V0czogU3RhdGljQXJyYXk8dWludDY0LCA0PgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY0CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UgPSBHYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWZyYW1lX2RpZyAtNSAvLyBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRQZXJQYXlvdXQgPSBSZXdhcmRQZXJQYXlvdXQKCWludCAxNjEKCWZyYW1lX2RpZyAtNiAvLyBSZXdhcmRQZXJQYXlvdXQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfYWRkUG9vbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDIgKG1iclBheW1lbnQpIGZvciBhZGRQb29sIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGFkZFBvb2wKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhZGRQb29sKG1iclBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbm9kZU51bTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIGEgbmV3IHBvb2wgdG8gYSB2YWxpZGF0b3IncyBwb29sIHNldCwgcmV0dXJuaW5nIHRoZSAna2V5JyB0byByZWZlcmVuY2UgdGhlIHBvb2wgaW4gdGhlIGZ1dHVyZSBmb3Igc3Rha2luZywgZXRjLgovLyBUaGUgY2FsbGVyIG11c3QgcGF5IHRoZSBjb3N0IG9mIHRoZSB2YWxpZGF0b3JzIE1CUiBpbmNyZWFzZSBhcyB3ZWxsIGFzIHRoZSBNQlIgdGhhdCB3aWxsIGJlIG5lZWRlZCBmb3IgdGhlIHBvb2wgaXRzZWxmLgovLwovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gY2FsbCBdCi8vIEBwYXJhbSB7UGF5VHhufSBtYnJQYXltZW50IHBheW1lbnQgZnJvbSBjYWxsZXIgd2hpY2ggY292ZXJzIG1iciBpbmNyZWFzZSBvZiBhZGRpbmcgYSBuZXcgcG9vbAovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgaXMgaWQgb2YgdmFsaWRhdG9yIHRvIHBvb2wgdG8gKG11c3QgYmUgb3duZXIgb3IgbWFuYWdlcikKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0gaXMgbm9kZSBudW1iZXIgdG8gYWRkIHRvCi8vIEByZXR1cm5zIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sIGtleSB0byBjcmVhdGVkIHBvb2wKYWRkUG9vbDoKCXByb3RvIDMgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyIHx8CgkvLyAgICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CglkdXAKCWJueiAqc2tpcF9vcjEKCXR4biBTZW5kZXIKCWludCA0MAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCXx8Cgoqc2tpcF9vcjE6CgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1ODgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IGFtb3VudDogdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciwgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDggOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTAKCS8vIGFzc2VydCh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmV4aXN0cywgInNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQiKQoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU5MgoJLy8gbnVtUG9vbHM6IHVpbnQ2NCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBudW1Qb29sczogdWludDY0CgoJLy8gKmlmN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTMKCS8vIChudW1Qb29scyBhcyB1aW50NjQpID49IE1BWF9QT09MUwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaW50IDI0Cgk+PQoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGFscmVhZHkgYXQgbWF4IHBvb2wgc2l6ZQoJZXJyCgoqaWY3X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTYKCS8vIG51bVBvb2xzICs9IDEKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTkKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFsKCS8vICAgICAgICAgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5leHRyYWN0KDAsIDQwOTYpLAoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoNDA5NiwgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5zaXplIC0gNDA5NiksCgkvLyAgICAgICBdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpLAoJLy8gICAgICAgZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50LAoJLy8gICAgICAgZ2xvYmFsTnVtQnl0ZVNsaWNlOiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZSwKCS8vICAgICAgIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbCgkvLyAgICAgICAgIC8vIGNyZWF0aW5nQ29udHJhY3RJRCwgdmFsaWRhdG9ySWQsIHBvb2xJZCwgbWluRW50cnlTdGFrZQoJLy8gICAgICAgICBtZXRob2QoJ2NyZWF0ZUFwcGxpY2F0aW9uKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkJyksCgkvLyAgICAgICAgIGl0b2IodGhpcy5hcHAuaWQpLAoJLy8gICAgICAgICBpdG9iKHZhbGlkYXRvcklkKSwKCS8vICAgICAgICAgaXRvYihudW1Qb29scyBhcyB1aW50NjQpLAoJLy8gICAgICAgICBpdG9iKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1pbkVudHJ5U3Rha2UpLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjAwCgkvLyBvbkNvbXBsZXRpb246IE9uQ29tcGxldGlvbi5Ob09wCglpbnQgMCAvLyBOb09wCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDEKCS8vIGFwcHJvdmFsUHJvZ3JhbTogWwoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoMCwgNDA5NiksCgkvLyAgICAgICAgIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uZXh0cmFjdCg0MDk2LCB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUgLSA0MDk2KSwKCS8vICAgICAgIF0KCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCAwCglpbnQgNDA5NgoJYm94X2V4dHJhY3QKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCA0MDk2CglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUKCWFzc2VydAoJaW50IDQwOTYKCS0KCWJveF9leHRyYWN0CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbVBhZ2VzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNQoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNgoJLy8gZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMTEKCWl0eG5fZmllbGQgR2xvYmFsTnVtVWludAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDcKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCWludCAzCglpdHhuX2ZpZWxkIEdsb2JhbE51bUJ5dGVTbGljZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDgKCS8vIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzCglpbnQgMwoJaXR4bl9maWVsZCBFeHRyYVByb2dyYW1QYWdlcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDkKCS8vIGFwcGxpY2F0aW9uQXJnczogWwoJLy8gICAgICAgICAvLyBjcmVhdGluZ0NvbnRyYWN0SUQsIHZhbGlkYXRvcklkLCBwb29sSWQsIG1pbkVudHJ5U3Rha2UKCS8vICAgICAgICAgbWV0aG9kKCdjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCcpLAoJLy8gICAgICAgICBpdG9iKHRoaXMuYXBwLmlkKSwKCS8vICAgICAgICAgaXRvYih2YWxpZGF0b3JJZCksCgkvLyAgICAgICAgIGl0b2IobnVtUG9vbHMgYXMgdWludDY0KSwKCS8vICAgICAgICAgaXRvYih0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5taW5FbnRyeVN0YWtlKSwKCS8vICAgICAgIF0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAyMDkKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYxOQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyA9IG51bVBvb2xzIGFzIHVpbnQxNgoJaW50IDI0MgoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYyMgoJLy8gcG9vbEFwcElkID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklELmlkCglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjIzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW251bVBvb2xzIC0gMV0ucG9vbEFwcElkID0gcG9vbEFwcElkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAxIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjQKCS8vIHRoaXMuYWRkUG9vbFRvTm9kZSh2YWxpZGF0b3JJZCwgcG9vbEFwcElkLCBub2RlTnVtKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGFkZFBvb2xUb05vZGUKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjMyCgkvLyByZXR1cm4geyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogbnVtUG9vbHMgYXMgdWludDY0LCBwb29sQXBwSWQ6IHRoaXMuaXR4biEuY3JlYXRlZEFwcGxpY2F0aW9uSUQuaWQgfTsKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglmcmFtZV9kaWcgMCAvLyBudW1Qb29sczogdWludDY0CglpdG9iCgljb25jYXQKCWl0eG4gQ3JlYXRlZEFwcGxpY2F0aW9uSUQKCWl0b2IKCWNvbmNhdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc3Rha2VkQW1vdW50UGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc3Rha2VkQW1vdW50UGF5bWVudCkgZm9yIGFkZFN0YWtlIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBhZGRTdGFrZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgdmFsdWVUb1ZlcmlmeTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIHN0YWtlIHRvIGEgdmFsaWRhdG9yIHBvb2wuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gb25seSBpZiB2YWxpZGF0b3IgaGFzIGdhdGluZyB0byBlbnRlciAtIHRoaXMgaXMgYXNzZXQgaWQgb3IgbmZkIGlkIHRoYXQgY29ycmVzcG9uZHMgdG8gZ2F0aW5nLgovLyBUeG4gc2VuZGVyIGlzIGZhY3RvcmVkIGluIGFzIHdlbGwgaWYgdGhhdCBpcyBwYXJ0IG9mIGdhdGluZy4KLy8gKiBAcmV0dXJucyB7VmFsaWRhdG9yUG9vbEtleX0gLSBUaGUga2V5IG9mIHRoZSB2YWxpZGF0b3IgcG9vbC4KYWRkU3Rha2U6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA1CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0NQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAic3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyBzcGVjaWZpZWQgdmFsaWRhdG9yIGlkIGlzbid0IHZhbGlkCglhc3NlcnQKCgkvLyAqaWY4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uID4gMAoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPgoJYnogKmlmOF9lbmQKCgkvLyAqaWY4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NDkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uIDwgZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAsCgkvLyAgICAgICAgICJjYW4ndCBzdGFrZSB3aXRoIGEgdmFsaWRhdG9yIHRoYXQgaXMgcGFzdCBpdHMgc3Vuc2V0dGluZyB0aW1lIgoJLy8gICAgICAgKQoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglnbG9iYWwgTGF0ZXN0VGltZXN0YW1wCgk8CgoJLy8gY2FuJ3Qgc3Rha2Ugd2l0aCBhIHZhbGlkYXRvciB0aGF0IGlzIHBhc3QgaXRzIHN1bnNldHRpbmcgdGltZQoJYXNzZXJ0CgoqaWY4X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTUKCS8vIHN0YWtlciA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfYnVyeSAwIC8vIHN0YWtlcjogYWRkcmVzcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTkKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHN0YWtlciwKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoic3Rha2VyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSByZWNlaXZlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgUmVjZWl2ZXIKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoicmVjZWl2ZXIiLCJleHBlY3RlZCI6InRoaXMuYXBwLmFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY2NgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS50b3RhbEFsZ29TdGFrZWQgPCB0aGlzLm1heEFsbG93ZWRTdGFrZSgpLAoJLy8gICAgICAgJ3RvdGFsIHN0YWtlZCBmb3IgYWxsIG9mIGEgdmFsaWRhdG9ycyBwb29scyBtYXkgbm90IGV4Y2VlZCBoYXJkIGNhcCcKCS8vICAgICApCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWNhbGxzdWIgbWF4QWxsb3dlZFN0YWtlCgk8CgoJLy8gdG90YWwgc3Rha2VkIGZvciBhbGwgb2YgYSB2YWxpZGF0b3JzIHBvb2xzIG1heSBub3QgZXhjZWVkIGhhcmQgY2FwCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjczCgkvLyB0aGlzLmRvZXNTdGFrZXJNZWV0R2F0aW5nKHZhbGlkYXRvcklkLCB2YWx1ZVRvVmVyaWZ5KQoJZnJhbWVfZGlnIC0zIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZG9lc1N0YWtlck1lZXRHYXRpbmcKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njc1CgkvLyByZWFsQW1vdW50ID0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfYnVyeSAxIC8vIHJlYWxBbW91bnQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzYKCS8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gbWJyQW10TGVmdEJlaGluZDogdWludDY0CgoJLy8gKmlmOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzgKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCSEKCWJ6ICppZjlfZW5kCgoJLy8gKmlmOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgxCgkvLyBtYnJBbXRMZWZ0QmVoaW5kID0gdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkU3Rha2VyTWJyCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWV4dHJhY3QgMjQgOAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODIKCS8vIHJlYWxBbW91bnQgLT0gbWJyQW10TGVmdEJlaGluZAoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYnJBbXRMZWZ0QmVoaW5kOiB1aW50NjQKCS0KCWZyYW1lX2J1cnkgMSAvLyByZWFsQW1vdW50OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgzCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5jcmVhdGUoKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCgljb25jYXQKCWludCAxNDQKCWJveF9jcmVhdGUKCXBvcAoKKmlmOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg3CgkvLyBmaW5kUmV0ID0gdGhpcy5maW5kUG9vbEZvclN0YWtlcih2YWxpZGF0b3JJZCwgc3Rha2VyLCByZWFsQW1vdW50KQoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGZpbmRQb29sRm9yU3Rha2VyCglmcmFtZV9idXJ5IDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODgKCS8vIHBvb2xLZXkgPSBmaW5kUmV0WzBdCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg5CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmluZFJldFsxXQoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxOTIKCWdldGJpdAoJZnJhbWVfYnVyeSA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkwCgkvLyBpc05ld1N0YWtlclRvUHJvdG9jb2wgPSBmaW5kUmV0WzJdCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJZ2V0Yml0CglmcmFtZV9idXJ5IDUgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkxCgkvLyBwb29sS2V5LnBvb2xJZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEwX2VuZAoKCS8vICppZjEwX2NvbnNlcXVlbnQKCS8vIE5vIHBvb2wgYXZhaWxhYmxlIHdpdGggZnJlZSBzdGFrZS4gIFZhbGlkYXRvciBuZWVkcyB0byBhZGQgYW5vdGhlciBwb29sCgllcnIKCippZjEwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTYKCS8vIHRoaXMudXBkYXRlU3Rha2VyUG9vbFNldChzdGFrZXIsIHBvb2xLZXkpCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNhbGxzdWIgdXBkYXRlU3Rha2VyUG9vbFNldAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTkKCS8vIHRoaXMuY2FsbFBvb2xBZGRTdGFrZSgKCS8vICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQsCgkvLyAgICAgICBwb29sS2V5LAoJLy8gICAgICAgbWJyQW10TGVmdEJlaGluZCwKCS8vICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICBpc05ld1N0YWtlclRvUHJvdG9jb2wKCS8vICAgICApCglmcmFtZV9kaWcgNSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCWZyYW1lX2RpZyA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCWZyYW1lX2RpZyAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCAyNAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJY2FsbHN1YiBjYWxsUG9vbEFkZFN0YWtlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjcxNAoJLy8gcmV0dXJuIHBvb2xLZXk7CglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNQoJcmV0c3ViCgovLyBzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpCiphYmlfcm91dGVfc2V0VG9rZW5QYXlvdXRSYXRpbzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgc2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoJY2FsbHN1YiBzZXRUb2tlblBheW91dFJhdGlvCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyBpcyBjYWxsZWQgYnkgU3Rha2luZyBQb29sICMgMSAoT05MWSkgdG8gYXNrIHRoZSB2YWxpZGF0b3IgKHVzKSB0byBjYWxjdWxhdGUgdGhlIHJhdGlvcwovLyBvZiBzdGFrZSBpbiB0aGUgcG9vbHMgZm9yIHN1YnNlcXVlbnQgdG9rZW4gcGF5b3V0cyAoaWU6IDIgcG9vbHMsICcxMDAnIGFsZ28gdG90YWwgc3Rha2VkLCA2MCBpbiBwb29sIDEsIGFuZCA0MAovLyBpbiBwb29sIDIpICBUaGlzIGlzIGRvbmUgc28gd2UgaGF2ZSBhIHN0YWJsZSBzbmFwc2hvdCBvZiBzdGFrZSAtIHRha2VuIG9uY2UgcGVyIGVwb2NoIC0gb25seSB0cmlnZ2VyZWQgYnkKLy8gcG9vbCAxIGRvaW5nIHBheW91dC4gIHBvb2xzIG90aGVyIHRoYW4gMSBkb2luZyBwYXlvdXQgY2FsbCBwb29sIDEgdG8gYXNrIGl0IGRvIGl0IGZpcnN0LgovLyBJdCB3b3VsZCBiZSA2MC80MCUgaW4gdGhlIHBvb2xQY3RPZldob2xlIHZhbHVlcy4gIFRoZSB0b2tlbiByZXdhcmQgcGF5b3V0cyB0aGVuIHVzZSB0aGVzZSB2YWx1ZXMgaW5zdGVhZCBvZgovLyB0aGVpciAnY3VycmVudCcgc3Rha2Ugd2hpY2ggY2hhbmdlcyBhcyBwYXJ0IG9mIHRoZSBwYXlvdXRzIHRoZW1zZWx2ZXMgKGFuZCBwZW9wbGUgY291bGQgYmUgY2hhbmdpbmcgc3Rha2UKLy8gZHVyaW5nIHRoZSBlcG9jaCB1cGRhdGVzIGFjcm9zcyBwb29scykKLy8KLy8gTXVsdGlwbGUgcG9vbHMgd2lsbCBjYWxsIHVzIHZpYSBwb29sIDEgKHBvb2wyLT5wb29sMS0+dmFsaWRhdG9yLCBldGMuKSBzbyBkb24ndCBhc3NlcnQgb24gcG9vbDEgY2FsbGluZyBtdWx0aXBsZQovLyB0aW1lcyBpbiBzYW1lIGVwb2NoLiAgSnVzdCByZXR1cm4uCi8vCi8vIEBwYXJhbSB2YWxpZGF0b3JJZCAtIHZhbGlkYXRvciBpZCAoYW5kIHRodXMgcG9vbCkgY2FsbGluZyB1cy4gIFZlcmlmaWVkIHNvIHRoYXQgc2VuZGVyIE1VU1QgYmUgcG9vbCAxIG9mIHRoaXMgdmFsaWRhdG9yLgovLyBAcmV0dXJucyBQb29sVG9rZW5QYXlvdXRSYXRpbyAtIHRoZSBmaW5pc2hlZCByYXRpbyBkYXRhCnNldFRva2VuUGF5b3V0UmF0aW86Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjczNAoJLy8gcG9vbDFBcHBJRCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbMF0ucG9vbEFwcElkCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzM1CgkvLyBhc3NlcnQocG9vbDFBcHBJRCAhPT0gMCkKCWZyYW1lX2RpZyAwIC8vIHBvb2wxQXBwSUQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzcKCS8vIHRoaXMudHhuLnNlbmRlciAhPT0gQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5hZGRyZXNzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJIT0KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzgKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMSAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NQoJLy8gbGFzdFBheW91dFVwZGF0ZSA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpby51cGRhdGVkRm9yUGF5b3V0CglpbnQgODkyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDYKCS8vIGxhc3RQYXlvdXRVcGRhdGUgIT09IDAKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJaW50IDAKCSE9CglieiAqaWYxMl9lbmQKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyAqaWYxM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDgKCS8vIChBcHBJRC5mcm9tVWludDY0KHBvb2wxQXBwSUQpLmdsb2JhbFN0YXRlKCdsYXN0UGF5b3V0JykgYXMgdWludDY0KSA9PT0gbGFzdFBheW91dFVwZGF0ZQoJZnJhbWVfZGlnIDAgLy8gcG9vbDFBcHBJRDogdWludDY0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5nbG9iYWxTdGF0ZSgnbGFzdFBheW91dCcpCglhc3NlcnQKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1MQoJLy8gZXBvY2hSb3VuZExlbmd0aCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVwb2NoUm91bmRMZW5ndGggYXMgdWludDY0CglpbnQgMTY5CglpbnQgNAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzUyCgkvLyB0aGlzRXBvY2hCZWdpbiA9IGN1clJvdW5kIC0gKGN1clJvdW5kICUgZXBvY2hSb3VuZExlbmd0aCkKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfYnVyeSA0IC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCgkvLyAqaWYxNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTQKCS8vIGxhc3RQYXlvdXRVcGRhdGUgLSAobGFzdFBheW91dFVwZGF0ZSAlIGVwb2NoUm91bmRMZW5ndGgpID09PSB0aGlzRXBvY2hCZWdpbgoJZnJhbWVfZGlnIDIgLy8gbGFzdFBheW91dFVwZGF0ZTogdWludDY0CglmcmFtZV9kaWcgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfZGlnIDQgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJPT0KCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTUKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTRfZW5kOgoKKmlmMTJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnVwZGF0ZWRGb3JQYXlvdXQgPSBjdXJSb3VuZAoJaW50IDg5MgoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYwCgkvLyBjdXJOdW1Qb29scyA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNSAvLyBjdXJOdW1Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MQoJLy8gdG90YWxTdGFrZUZvclZhbGlkYXRvciA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUudG90YWxBbGdvU3Rha2VkCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyB0b3RhbFN0YWtlRm9yVmFsaWRhdG9yOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYyCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MgoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA1IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzY3CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgW3RoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbaV0udG90YWxBbGdvU3Rha2VkLCAxXzAwMF8wMDBdLAoJLy8gICAgICAgICBbdG90YWxTdGFrZUZvclZhbGlkYXRvcl0KCS8vICAgICAgICkKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaW50IDFfMDAwXzAwMAoJbXVsdwoJaW50IDAKCWZyYW1lX2RpZyA2IC8vIHRvdGFsU3Rha2VGb3JWYWxpZGF0b3I6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgOCAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc3MQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnBvb2xQY3RPZldob2xlW2ldID0gb3VyUG9vbFBjdE9mV2hvbGUKCWludCA3MDAKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIDggLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCipmb3JfMl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NjIKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzczCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvOwoJaW50IDcwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMjAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoKKnNldFRva2VuUGF5b3V0UmF0aW8qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gOAoJcmV0c3ViCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKCh1aW50NjQsdWludDY0LHVpbnQ2NCksdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzOgoJLy8gc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglidG9pCgoJLy8gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYWxnb1RvQWRkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIHN0YWtlVXBkYXRlZFZpYVJld2FyZHMoKHVpbnQ2NCx1aW50NjQsdWludDY0KSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzCglpbnQgMQoJcmV0dXJuCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXksIGFsZ29Ub0FkZDogdWludDY0LCByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQsIHZhbGlkYXRvckNvbW1pc3Npb246IHVpbnQ2NCwgc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0KTogdm9pZAovLwovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIGlzIGNhbGxlZCBieSBTdGFraW5nIHBvb2xzIHRvIGluZm9ybSB0aGUgdmFsaWRhdG9yICh1cykgdGhhdCBhIHBhcnRpY3VsYXIgYW1vdW50IG9mIHRvdGFsCi8vIHN0YWtlIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIFRoZSBjYWxsaW5nIEFwcCBpZCBpcyB2YWxpZGF0ZWQgYWdhaW5zdCBvdXIgcG9vbCBsaXN0IGFzIHdlbGwuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFZhbGlkYXRvclBvb2xLZXkgdHlwZQovLyBAcGFyYW0ge3VpbnQ2NH0gYWxnb1RvQWRkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzCi8vIEBwYXJhbSB7dWludDY0fSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzICh0aGF0IHNob3VsZCBiZQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9yQ29tbWlzc2lvbiAtIHRoZSBjb21taXNzaW9uIGFtb3VudCB0aGUgdmFsaWRhdG9yIHdhcyBwYWlkLCBpZiBhbnkKLy8gQHBhcmFtIHt1aW50NjR9IHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbmsgLSBpZiB0aGUgcG9vbCB3YXMgaW4gc2F0dXJhdGVkIHN0YXRlLCB0aGUgYW1vdW50IHNlbnQgYmFjayB0byB0aGUgZmVlIHNpbmsuCi8vIHNlZW4gYXMgJ2FjY291bnRlZCBmb3IvcGVuZGluZyBzcGVudCcpCnN0YWtlVXBkYXRlZFZpYVJld2FyZHM6Cglwcm90byA1IDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk0CgkvLyB0aGlzLnZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CgljYWxsc3ViIHZlcmlmeVBvb2xLZXlDYWxsZXIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgKz0gYWxnb1RvQWRkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc5OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBhbGdvVG9BZGQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFsZ29Ub0FkZDogdWludDY0CgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk5CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjayArPSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkCglpbnQgMjYwCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQKCSsKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MDEKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IGFsZ29Ub0FkZAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODA0CgkvLyB0aGlzLnJldmVyaWZ5TkZET3duZXJzaGlwKHBvb2xLZXkuaWQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWNhbGxzdWIgcmV2ZXJpZnlORkRPd25lcnNoaXAKCXJldHN1YgoKLy8gc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoqYWJpX3JvdXRlX3N0YWtlUmVtb3ZlZDoKCS8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXJSZW1vdmVkKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoc3Rha2VyKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVJlbW92ZWQgbXVzdCBiZSBhICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCWFzc2VydAoKCS8vIGV4ZWN1dGUgc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoJY2FsbHN1YiBzdGFrZVJlbW92ZWQKCWludCAxCglyZXR1cm4KCi8vIHN0YWtlUmVtb3ZlZChwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBzdGFrZXI6IEFkZHJlc3MsIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NCwgcmV3YXJkUmVtb3ZlZDogdWludDY0LCBzdGFrZXJSZW1vdmVkOiBib29sZWFuKTogdm9pZAovLwovLyBzdGFrZVJlbW92ZWQgaXMgY2FsbGVkIGJ5IFN0YWtpbmcgcG9vbHMgdG8gaW5mb3JtIHRoZSB2YWxpZGF0b3IgKHVzKSB0aGF0IGEgcGFydGljdWxhciBhbW91bnQgb2YgdG90YWwgc3Rha2UgaGFzIGJlZW4gcmVtb3ZlZAovLyBmcm9tIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIElmIGFueSBhbW91bnQgb2YgcmV3YXJkUmVtb3ZlZCBpcyBzcGVjaWZpZWQsIHRoZW4gdGhhdCBhbW91bnQgb2YgcmV3YXJkIGlzIHNlbnQgdG8gdGhlIHVzZQovLyBUaGUgY2FsbGluZyBBcHAgaWQgaXMgdmFsaWRhdGVkIGFnYWluc3Qgb3VyIHBvb2wgbGlzdCBhcyB3ZWxsLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvclBvb2xLZXl9IHBvb2xLZXkgY2FsbGluZyB1cyBmcm9tIHdoaWNoIHN0YWtlIHdhcyByZW1vdmVkCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRSZW1vdmVkIC0gYWxnbyBhbW91bnQgcmVtb3ZlZAovLyBAcGFyYW0ge3VpbnQ2NH0gcmV3YXJkUmVtb3ZlZCAtIGlmIGFwcGxpY2FibGUsIGFtb3VudCBvZiB0b2tlbiByZXdhcmQgcmVtb3ZlZCAoYnkgcG9vbCAxIGNhbGxlcikgb3IgVE8gcmVtb3ZlIGFuZCBwYXkgb3V0ICh2aWEgcG9vbCAxIGZyb20gZGlmZmVyZW50IHBvb2wgY2FsbGVyKQovLyBAcGFyYW0ge2Jvb2xlYW59IHN0YWtlclJlbW92ZWQKc3Rha2VSZW1vdmVkOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vICppZjE1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgzNgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE1X2VuZAoKCS8vICppZjE1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzkKCS8vIHRoaXMudmVyaWZ5UG9vbEtleUNhbGxlcihwb29sS2V5KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWNhbGxzdWIgdmVyaWZ5UG9vbEtleUNhbGxlcgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDMKCS8vIGFzc2VydChhbW91bnRSZW1vdmVkID4gMCB8fCByZXdhcmRSZW1vdmVkID4gMCwgJ3Nob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZCcpCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJZHVwCglibnogKnNraXBfb3IyCglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJfHwKCipza2lwX29yMjoKCS8vIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzW3Bvb2xLZXkucG9vbElkIC0gMV0udG90YWxBbGdvU3Rha2VkIC09IGFtb3VudFJlbW92ZWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCAtPSBhbW91bnRSZW1vdmVkCglpbnQgMjUyCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCS0KCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC09IGFtb3VudFJlbW92ZWQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vICppZjE2X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MAoJLy8gcmV3YXJkUmVtb3ZlZCA+IDAKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYxNl9lbHNlCgoJLy8gKmlmMTZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MQoJLy8gcmV3YXJkVG9rZW5JRCA9IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5jb25maWcucmV3YXJkVG9rZW5JZAoJaW50IDE1MwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTIKCS8vIGFzc2VydChyZXdhcmRUb2tlbklEICE9PSAwLCAicmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hIikKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gcmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODUzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrID49IHJld2FyZFJlbW92ZWQsCgkvLyAgICAgICAgICdyZXdhcmQgYmVpbmcgcmVtb3ZlZCBtdXN0IGJlIGNvdmVyZWQgYnkgaG9sZCBiYWNrIGFtb3VudCcKCS8vICAgICAgICkKCWludCAyNjAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCT49CgoJLy8gcmV3YXJkIGJlaW5nIHJlbW92ZWQgbXVzdCBiZSBjb3ZlcmVkIGJ5IGhvbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrIC09IHJld2FyZFJlbW92ZWQKCWludCAyNjAKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmMTdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODY0CgkvLyBwb29sS2V5LnBvb2xJZCAhPT0gMQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJIT0KCWJ6ICppZjE3X2VuZAoKCS8vICppZjE3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjUKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucGF5VG9rZW5SZXdhcmQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpLAoJLy8gICAgICAgICAgIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjYKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzWzBdLnBvb2xBcHBJZCkKCWludCAyNjgKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjcKCS8vIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYxN19lbmQ6CgliICppZjE2X2VuZAoKKmlmMTZfZWxzZToKCippZjE2X2VuZDoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg5MgoJLy8gc3Rha2VyUmVtb3ZlZAoJZnJhbWVfZGlnIC01IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2xlYW4KCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTQKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJLQoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTYKCS8vIHJlbW92ZVJldCA9IHRoaXMucmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQoc3Rha2VyLCA8VmFsaWRhdG9yUG9vbEtleT57CgkvLyAgICAgICAgIGlkOiBwb29sS2V5LmlkLAoJLy8gICAgICAgICBwb29sSWQ6IHBvb2xLZXkucG9vbElkLAoJLy8gICAgICAgICBwb29sQXBwSWQ6IHBvb2xLZXkucG9vbEFwcElkLAoJLy8gICAgICAgfSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJY2FsbHN1YiByZW1vdmVGcm9tU3Rha2VyUG9vbFNldAoJZnJhbWVfYnVyeSAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTAxCgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IgPSByZW1vdmVSZXRbMF0KCWZyYW1lX2RpZyAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZ2V0Yml0CglmcmFtZV9idXJ5IDIgLy8gc3Rha2VyT3V0T2ZUaGlzVmFsaWRhdG9yOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwMgoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbCA9IHJlbW92ZVJldFsxXQoJZnJhbWVfZGlnIDEgLy8gcmVtb3ZlUmV0OiAoYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglnZXRiaXQKCWZyYW1lX2J1cnkgMyAvLyBzdGFrZXJPdXRPZlByb3RvY29sOiBib29sCgoJLy8gKmlmMTlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTA0CgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIHN0YWtlck91dE9mVGhpc1ZhbGlkYXRvcjogYm9vbAoJYnogKmlmMTlfZW5kCgoJLy8gKmlmMTlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwNQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgktCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjE5X2VuZDoKCS8vICppZjIwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOAoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbAoJZnJhbWVfZGlnIDMgLy8gc3Rha2VyT3V0T2ZQcm90b2NvbDogYm9vbAoJYnogKmlmMjBfZW5kCgoJLy8gKmlmMjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOQoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlIC09IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJLQoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCippZjIwX2VuZDoKCippZjE4X2VuZDoKCXJldHN1YgoKLy8gZmluZFBvb2xGb3JTdGFrZXIodWludDY0LGFkZHJlc3MsdWludDY0KSgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9maW5kUG9vbEZvclN0YWtlcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYW1vdW50VG9TdGFrZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlcikgZm9yIGZpbmRQb29sRm9yU3Rha2VyIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJY2FsbHN1YiBmaW5kUG9vbEZvclN0YWtlcgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZpbmRQb29sRm9yU3Rha2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHN0YWtlcjogQWRkcmVzcywgYW1vdW50VG9TdGFrZTogdWludDY0KTogW1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW5dCi8vCi8vIEZpbmRzIHRoZSBwb29sIGZvciBhIHN0YWtlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgdmFsaWRhdG9yIGlkLCBzdGFrZXIgYWRkcmVzcywgYW5kIGFtb3VudCB0byBzdGFrZS4KLy8gRmlyc3QgY2hlY2tzIHRoZSBzdGFrZXJzICdhbHJlYWR5IHN0YWtlZCBsaXN0JyBmb3IgdGhlIHZhbGlkYXRvciBwcmVmZXJyaW5nIHRob3NlIChhZGRpbmcgaWYgcG9zc2libGUpIHRoZW4gYWRkcwovLyB0byBuZXcgcG9vbCBpZiBuZWNlc3NhcnkuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1N0YWtlIC0gVGhlIGFtb3VudCB0byBzdGFrZS4KLy8gQHJldHVybnMge1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW59IC0gVGhlIHBvb2wgZm9yIHRoZSBzdGFrZXIsIHRydWUvZmFsc2Ugb24gd2hldGhlciB0aGUgc3Rha2VyIGlzICduZXcnCi8vIHRvIHRoaXMgVkFMSURBVE9SLCBhbmQgdHJ1ZS9mYWxzZSBpZiBzdGFrZXIgaXMgbmV3IHRvIHRoZSBwcm90b2NvbC4KZmluZFBvb2xGb3JTdGFrZXI6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA3CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzMAoJLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MzEKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzOQoJLy8gbWF4UGVyUG9vbCA9IHRoaXMuZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sCglmcmFtZV9idXJ5IDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoJLy8gKmlmMjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQyCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMiAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglieiAqaWYyMV9lbmQKCgkvLyAqaWYyMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQzCgkvLyBwb29sU2V0ID0gY2xvbmUodGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUpCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlCglhc3NlcnQKCWZyYW1lX2J1cnkgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NAoJLy8gYXNzZXJ0KHZhbGlkYXRvcklkICE9PSAwKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWludCAwCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBwb29sU2V0Lmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfMzoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDUKCS8vIGkgPCBwb29sU2V0Lmxlbmd0aAoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjIyX2VuZDoKCS8vICppZjIzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0OQoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYyM19lbmQKCgkvLyAqaWYyM19jb25zZXF1ZW50CgliICpmb3JfM19jb250aW51ZQoKKmlmMjNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1MgoJLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTUzCgkvLyBwb29sU2V0W2ldLmlkID09PSB2YWxpZGF0b3JJZAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCT09CglieiAqaWYyNF9lbmQKCgkvLyAqaWYyNF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTU1CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1twb29sU2V0W2ldLnBvb2xJZCAtIDFdLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0KCS8vICAgICAgICAgICAgIG1heFBlclBvb2wKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRUb1N0YWtlOiB1aW50NjQKCSsKCWZyYW1lX2RpZyAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoJPD0KCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjAKCS8vIHJldHVybiBbcG9vbFNldFtpXSwgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwgaXNOZXdTdGFrZXJUb1Byb3RvY29sXTsKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjVfZW5kOgoKKmlmMjRfZW5kOgoKKmZvcl8zX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgliICpmb3JfMwoKKmZvcl8zX2VuZDoKCippZjIxX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjcKCS8vIGFzc2VydCgKCS8vICAgICAgIGFtb3VudFRvU3Rha2UgPj0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWluRW50cnlTdGFrZSwKCS8vICAgICAgICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU3Rha2U6IHVpbnQ2NAoJaW50IDIwOQoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk+PQoKCS8vIG11c3Qgc3Rha2UgYXQgbGVhc3QgdGhlIG1pbmltdW0gZm9yIHRoaXMgcG9vbAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3MwoJLy8gcG9vbHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzKQoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglpbnQgNDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA1IC8vIHBvb2xzOiAodWludDY0LHVpbnQxNix1aW50NjQpWzI0XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzQKCS8vIGN1ck51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc1CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl80OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfNF9lbmQKCgkvLyAqaWYyNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzYKCS8vIHBvb2xzW2ldLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0gbWF4UGVyUG9vbAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50VG9TdGFrZTogdWludDY0CgkrCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTw9CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc3CgkvLyByZXR1cm4gWwoJLy8gICAgICAgICAgIHsgaWQ6IHZhbGlkYXRvcklkLCBwb29sSWQ6IGkgKyAxLCBwb29sQXBwSWQ6IHBvb2xzW2ldLnBvb2xBcHBJZCB9LAoJLy8gICAgICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICAgICAgaXNOZXdTdGFrZXJUb1Byb3RvY29sLAoJLy8gICAgICAgICBdOwoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjZfZW5kOgoKKmZvcl80X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgliICpmb3JfNAoKKmZvcl80X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5ODUKCS8vIHJldHVybiBbeyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogMCwgcG9vbEFwcElkOiAwIH0sIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsIGlzTmV3U3Rha2VyVG9Qcm90b2NvbF07CglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwCglpbnQgMAoJZnJhbWVfZGlnIDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoJc2V0Yml0CglpbnQgMQoJZnJhbWVfZGlnIDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCglzZXRiaXQKCWNvbmNhdAoKKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDcKCXJldHN1YgoKLy8gbW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX21vdmVQb29sVG9Ob2RlOgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcG9vbEFwcElkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBtb3ZlUG9vbFRvTm9kZSh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIG1vdmVQb29sVG9Ob2RlCglpbnQgMQoJcmV0dXJuCgovLyBtb3ZlUG9vbFRvTm9kZSh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBwb29sQXBwSWQ6IHVpbnQ2NCwgbm9kZU51bTogdWludDY0KTogdm9pZAovLwovLyBGaW5kIHRoZSBzcGVjaWZpZWQgcG9vbCAoaW4gYW55IG5vZGUgbnVtYmVyKSBhbmQgbW92ZSBpdCB0byB0aGUgc3BlY2lmaWVkIG5vZGUuCi8vIFRoZSBwb29sIGFjY291bnQgaXMgZm9yY2VkIG9mZmxpbmUgaWYgbW92ZWQgc28gcHJpb3Igbm9kZSB3aWxsIHN0aWxsIHJ1biBmb3IgMzIwIHJvdW5kcyBidXQKLy8gbmV3IGtleSBnb2VzIG9ubGluZSBvbiBuZXcgbm9kZSBzb29uIGFmdGVyICgzMjAgcm91bmRzIGFmdGVyIGl0IGdvZXMgb25saW5lKQovLyBOby1vcCBpZiBzdWNjZXNzLCBhc3NlcnRzIGlmIG5vdCBmb3VuZCBvciBjYW4ndCBtb3ZlICAobm8gc3BhY2UgaW4gdGFyZ2V0KQovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSBwb29sQXBwSWQKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0KbW92ZVBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDEKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIgfHwKCS8vICAgICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCWR1cAoJYm56ICpza2lwX29yMwoJdHhuIFNlbmRlcgoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoJfHwKCipza2lwX29yMzoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDcKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDA4CgkvLyBhc3NlcnQobm9kZU51bSA+PSAxICYmIG5vZGVOdW0gPD0gTUFYX05PREVTLCAnbm9kZSBudW1iZXIgb3V0IG9mIGFsbG93YWJsZSByYW5nZScpCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDgKCTw9CgkmJgoKKnNraXBfYW5kMToKCS8vIG5vZGUgbnVtYmVyIG91dCBvZiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBmb3IgKGxldCBzcmNOb2RlSWR4ID0gMDsgc3JjTm9kZUlkeCA8IE1BWF9OT0RFUzsgc3JjTm9kZUlkeCArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCipmb3JfNToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBzcmNOb2RlSWR4IDwgTUFYX05PREVTCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCWludCA4Cgk8CglieiAqZm9yXzVfZW5kCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgTUFYX1BPT0xTX1BFUl9OT0RFOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl82OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGkgPCBNQVhfUE9PTFNfUEVSX05PREUKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDMKCTwKCWJ6ICpmb3JfNl9lbmQKCgkvLyAqaWYyN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEyCgkvLyBub2RlUG9vbEFzc2lnbm1lbnRzLm5vZGVzW3NyY05vZGVJZHhdLnBvb2xBcHBJZHNbaV0gPT09IHBvb2xBcHBJZAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0Cgk9PQoJYnogKmlmMjdfZW5kCgoJLy8gKmlmMjdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTMKCS8vIGFzc2VydChub2RlTnVtIC0gMSAhPT0gc3JjTm9kZUlkeCwgImNhbid0IG1vdmUgdG8gc2FtZSBub2RlIikKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCSE9CgoJLy8gY2FuJ3QgbW92ZSB0byBzYW1lIG5vZGUKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbc3JjTm9kZUlkeF0ucG9vbEFwcElkc1tpXSA9IDAKCWludCA5MDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE4CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLmdvT2ZmbGluZT4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLAoJLy8gICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnb09mZmxpbmUoKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE5CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDIzCgkvLyB0aGlzLmFkZFBvb2xUb05vZGUodmFsaWRhdG9ySWQsIHBvb2xBcHBJZCwgbm9kZU51bSkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgYWRkUG9vbFRvTm9kZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDI0CgkvLyByZXR1cm47CglyZXRzdWIKCippZjI3X2VuZDoKCipmb3JfNl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDExCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl82CgoqZm9yXzZfZW5kOgoKKmZvcl81X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTAKCS8vIHNyY05vZGVJZHggKz0gMQoJZnJhbWVfZGlnIDEgLy8gc3JjTm9kZUlkeDogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJYiAqZm9yXzUKCipmb3JfNV9lbmQ6CgkvLyBjb3VsZG4ndCBmaW5kIHBvb2wgYXBwIGlkIGluIG5vZGVzIHRvIG1vdmUKCWVycgoJcmV0c3ViCgovLyBlbXB0eVRva2VuUmV3YXJkcyh1aW50NjQsYWRkcmVzcyl1aW50NjQKKmFiaV9yb3V0ZV9lbXB0eVRva2VuUmV3YXJkczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciBlbXB0eVRva2VuUmV3YXJkcyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0CgljYWxsc3ViIGVtcHR5VG9rZW5SZXdhcmRzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlUb2tlblJld2FyZHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgcmVjZWl2ZXI6IEFkZHJlc3MpOiB1aW50NjQKLy8KLy8gU2VuZHMgdGhlIHJld2FyZCB0b2tlbnMgaGVsZCBpbiBwb29sIDEgdG8gc3BlY2lmaWVkIHJlY2VpdmVyLgovLyBUaGlzIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgYnkgdGhlIG93bmVyIHdoZW4gdGhleSB3YW50IHRvIGdldCByZXdhcmQgdG9rZW5zICdiYWNrJyB3aGljaCB0aGV5IHNlbnQgdG8KLy8gdGhlIGZpcnN0IHBvb2wgKGxpa2VseSBiZWNhdXNlIHZhbGlkYXRvciBpcyBzdW5zZXR0aW5nLiAgQW55IHRva2VucyBjdXJyZW50bHkgJ3Jlc2VydmVkJyBmb3Igc3Rha2VycyB0byBjbGFpbSB3aWxsCi8vIE5PVCBiZSBzZW50IGFzIHRoZXkgbXVzdCBiZSBoZWxkIGJhY2sgZm9yIHN0YWtlcnMgdG8gbGF0ZXIgY2xhaW0uCi8vIFsgT05MWSBPV05FUiBDQU4gQ0FMTF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7QWRkcmVzc30gcmVjZWl2ZXIgLSB0aGUgYWNjb3VudCB0byBzZW5kIHRoZSB0b2tlbnMgdG8gKG11c3QgYWxyZWFkeSBiZSBvcHRlZC1pbiB0byB0aGUgcmV3YXJkIHRva2VuKQovLyBAcmV0dXJucyB7dWludDY0fSB0aGUgYW1vdW50IG9mIHJld2FyZCB0b2tlbiBzZW50CmVtcHR5VG9rZW5SZXdhcmRzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDQzCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXInCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDcKCS8vIHJld2FyZFRva2VuSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRUb2tlbklkCglpbnQgMTUzCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA0OAoJLy8gcmV3YXJkVG9rZW5IZWxkQmFjayA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJaW50IDI2MAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDkKCS8vIGFzc2VydChyZXdhcmRUb2tlbklkICE9PSAwLCAidGhpcyB2YWxpZGF0b3IgZG9lc24ndCBoYXZlIGEgcmV3YXJkIHRva2VuIGRlZmluZWQiKQoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0CglpbnQgMAoJIT0KCgkvLyB0aGlzIHZhbGlkYXRvciBkb2Vzbid0IGhhdmUgYSByZXdhcmQgdG9rZW4gZGVmaW5lZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTAKCS8vIHBvb2xPbmVBcHBJZCA9IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDUyCgkvLyB0b2tlblJld2FyZEJhbCA9IHBvb2xPbmVBcHBJZC5hZGRyZXNzLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQocmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDIgLy8gcG9vbE9uZUFwcElkOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgktCglmcmFtZV9idXJ5IDMgLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU1CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLnBheVRva2VuUmV3YXJkPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQsCgkvLyAgICAgICBtZXRob2RBcmdzOiBbcmVjZWl2ZXIsIHJld2FyZFRva2VuSWQsIHRva2VuUmV3YXJkQmFsXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU2CgkvLyBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQKCWZyYW1lX2RpZyAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA1NwoJLy8gbWV0aG9kQXJnczogW3JlY2VpdmVyLCByZXdhcmRUb2tlbklkLCB0b2tlblJld2FyZEJhbF0KCWZyYW1lX2RpZyAtMiAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAzIC8vIHRva2VuUmV3YXJkQmFsOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU5CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sT25lQXBwSWQuYWRkcmVzcy5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHJld2FyZFRva2VuSWQpKSA9PT0gcmV3YXJkVG9rZW5IZWxkQmFjaywKCS8vICAgICAgICdiYWxhbmNlIG9mIHJlbWFpbmluZyByZXdhcmQgdG9rZW5zIHNob3VsZCBtYXRjaCB0aGUgaGVsZCBiYWNrIGFtb3VudCcKCS8vICAgICApCglmcmFtZV9kaWcgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCglmcmFtZV9kaWcgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMSAvLyByZXdhcmRUb2tlbkhlbGRCYWNrOiB1aW50NjQKCT09CgoJLy8gYmFsYW5jZSBvZiByZW1haW5pbmcgcmV3YXJkIHRva2VucyBzaG91bGQgbWF0Y2ggdGhlIGhlbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDYzCgkvLyByZXR1cm4gdG9rZW5SZXdhcmRCYWw7CglmcmFtZV9kaWcgMyAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiB2b2lkCi8vCi8vIExvZ3MgdGhlIGFkZGl0aW9uIG9mIGEgbmV3IHZhbGlkYXRvciB0byB0aGUgc3lzdGVtLCBpdHMgaW5pdGlhbCBvd25lciBhbmQgbWFuYWdlcgovLwovLwovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyIHZlcmlmaWVzIHRoZSBwYXNzZWQgaW4ga2V5IChmcm9tIGEgc3Rha2luZyBwb29sIGNhbGxpbmcgdXMgdG8gdXBkYXRlIG1ldHJpY3MpIGlzIHZhbGlkCi8vIGFuZCBtYXRjaGVzIHRoZSBpbmZvcm1hdGlvbiB3ZSBoYXZlIGluIG91ciBzdGF0ZS4gICdGYWtlJyBwb29scyBjb3VsZCBjYWxsIHVzIHRvIHVwZGF0ZSBvdXIgZGF0YSwgYnV0IHRoZXkKLy8gY2FuJ3QgZmFrZSB0aGUgaWRzIGFuZCBtb3N0IGltcG9ydGFudGx5IGFwcGxpY2F0aW9uIGlkKCEpIG9mIHRoZSBjYWxsZXIgdGhhdCBoYXMgdG8gbWF0Y2guCnZlcmlmeVBvb2xLZXlDYWxsZXI6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2MQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS5leGlzdHMsICJ0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gdGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgPD0gTUFYX1BPT0xTLCAncG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMjQKCTw9CgoJLy8gcG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYzCgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sS2V5LnBvb2xJZCA+IDAgJiYgKHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNikgPD0gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzLAoJLy8gICAgICAgJ3Bvb2wgaWQgb3V0c2lkZSBvZiByYW5nZSBvZiBwb29scyBjcmVhdGVkIGZvciB0aGlzIHZhbGlkYXRvcicKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAwCgk+CglkdXAKCWJ6ICpza2lwX2FuZDIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDI0MgoJaW50IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQyOgoJLy8gcG9vbCBpZCBvdXRzaWRlIG9mIHJhbmdlIG9mIHBvb2xzIGNyZWF0ZWQgZm9yIHRoaXMgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2OQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgcG9vbEtleS5wb29sQXBwSWQgPT09IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnBvb2xBcHBJZCwKCS8vICAgICAgICJUaGUgcGFzc2VkIGluIGFwcCBpZCBkb2Vzbid0IG1hdGNoIHRoZSBwYXNzZWQgaW4gaWRzIgoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk9PQoKCS8vIFRoZSBwYXNzZWQgaW4gYXBwIGlkIGRvZXNuJ3QgbWF0Y2ggdGhlIHBhc3NlZCBpbiBpZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTc0CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzYKCS8vIGFzc2VydChwb29sS2V5LmlkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3ZhbGlkYXRvcklkJykgYXMgdWludDY0KSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLmdsb2JhbFN0YXRlKCd2YWxpZGF0b3JJZCcpCglhc3NlcnQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE3NwoJLy8gYXNzZXJ0KHBvb2xLZXkucG9vbElkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3Bvb2xJZCcpIGFzIHVpbnQ2NCkpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5nbG9iYWxTdGF0ZSgncG9vbElkJykKCWFzc2VydAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyByZXZlcmlmeU5GRE93bmVyc2hpcCh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogdm9pZAovLwovLyBUaGlzIG1ldGhvZCB2ZXJpZmllcyB0aGUgb3duZXJzaGlwIG9mIE5GRCAoTmFtZWQgRnVuY3Rpb24gRGF0YSkgYnkgYSB2YWxpZGF0b3IuCi8vIElmIHRoZSBvd25lcnNoaXAgaXMgbm8gbG9uZ2VyIHZhbGlkLCBpdCByZW1vdmVzIHRoZSBORkQgZnJvbSB0aGUgdmFsaWRhdG9yJ3MgY29uZmlndXJhdGlvbi4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3Igd2hvc2UgZGF0YSBzaG91bGQgYmUgcmUtZXZhbHVhdGVkLgpyZXZlcmlmeU5GRE93bmVyc2hpcDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4NwoJLy8gdmFsaWRhdG9yQ29uZmlnID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsaWRhdG9yQ29uZmlnCgoJLy8gKmlmMjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4OAoJLy8gdmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8gIT09IDAKCWludCA3MgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkxCgkvLyBuZmRPd25lciA9IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKSBhcyBBZGRyZXNzCglpbnQgNzIKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9idXJ5IDEgLy8gbmZkT3duZXI6IGFkZHJlc3MKCgkvLyAqaWYyOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkzCgkvLyB2YWxpZGF0b3JDb25maWcub3duZXIgIT09IG5mZE93bmVyICYmIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSBuZmRPd25lcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQzCglpbnQgNDAKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJJiYKCipza2lwX2FuZDM6CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE5NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IDAKCWludCA3MgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYyOV9lbmQ6CgoqaWYyOF9lbmQ6CglyZXRzdWIKCi8vIHZhbGlkYXRlQ29uZmlnKGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnKTogdm9pZAp2YWxpZGF0ZUNvbmZpZzoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjAyCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZW50cnlHYXRpbmdUeXBlID49IEdBVElOR19UWVBFX05PTkUgJiYgY29uZmlnLmVudHJ5R2F0aW5nVHlwZSA8PSBHQVRJTkdfVFlQRV9DT05TVF9NQVgsCgkvLyAgICAgICAnZ2F0aW5nIHR5cGUgbm90IHZhbGlkJwoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgMAoJPj0KCWR1cAoJYnogKnNraXBfYW5kNAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDgwIDEKCWJ0b2kKCWludCA0Cgk8PQoJJiYKCipza2lwX2FuZDQ6CgkvLyBnYXRpbmcgdHlwZSBub3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA2CgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZXBvY2hSb3VuZExlbmd0aCA+PSBNSU5fRVBPQ0hfTEVOR1RIICYmIGNvbmZpZy5lcG9jaFJvdW5kTGVuZ3RoIDw9IE1BWF9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICAnZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kNQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMTAwMDAwMAoJPD0KCSYmCgoqc2tpcF9hbmQ1OgoJLy8gZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjEwCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yID49IE1JTl9QQ1RfVE9fVkFMSURBVE9SICYmIGNvbmZpZy5wZXJjZW50VG9WYWxpZGF0b3IgPD0gTUFYX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICAnY29tbWlzc2lvbiBwZXJjZW50YWdlIG5vdCB2YWxpZCcKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgk+PQoJZHVwCglieiAqc2tpcF9hbmQ2CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAxMDAwMDAwCgk8PQoJJiYKCipza2lwX2FuZDY6CgkvLyBjb21taXNzaW9uIHBlcmNlbnRhZ2Ugbm90IHZhbGlkCglhc3NlcnQKCgkvLyAqaWYzMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjE0CgkvLyBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmMzBfZW5kCgoJLy8gKmlmMzBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMTUKCS8vIGFzc2VydCgKCS8vICAgICAgICAgY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgICAndmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAnCgkvLyAgICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTc3IDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAKCWFzc2VydAoKKmlmMzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMjAKCS8vIGFzc2VydChjb25maWcubWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIwOSA4CglidG9pCglpbnQgMTAwMDAwMAoJPj0KCgkvLyBzdGFraW5nIHBvb2wgbXVzdCBoYXZlIG1pbmltdW0gZW50cnkgb2YgMSBhbGdvCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyMgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgY29uZmlnLnBvb2xzUGVyTm9kZSA+IDAgJiYgY29uZmlnLnBvb2xzUGVyTm9kZSA8PSBNQVhfUE9PTFNfUEVSX05PREUsCgkvLyAgICAgICAnbnVtYmVyIG9mIHBvb2xzIHBlciBub2RlIGV4Y2VlZHMgYWxsb3dlZCBudW1iZXInCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNSAxCglidG9pCglpbnQgMAoJPgoJZHVwCglieiAqc2tpcF9hbmQ3CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMjI1IDEKCWJ0b2kKCWludCAzCgk8PQoJJiYKCipza2lwX2FuZDc6CgkvLyBudW1iZXIgb2YgcG9vbHMgcGVyIG5vZGUgZXhjZWVkcyBhbGxvd2VkIG51bWJlcgoJYXNzZXJ0CgoJLy8gKmlmMzFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyNgoJLy8gY29uZmlnLnN1bnNldHRpbmdPbiAhPT0gMAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNiA4CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjMxX2VuZAoKCS8vICppZjMxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjI3CgkvLyBhc3NlcnQoY29uZmlnLnN1bnNldHRpbmdPbiA+IGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wLCAnc3Vuc2V0dGluZ09uIG11c3QgYmUgbGF0ZXIgdGhhbiBub3cgaWYgc2V0JykKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAyMjYgOAoJYnRvaQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJPgoKCS8vIHN1bnNldHRpbmdPbiBtdXN0IGJlIGxhdGVyIHRoYW4gbm93IGlmIHNldAoJYXNzZXJ0CgoqaWYzMV9lbmQ6CglyZXRzdWIKCi8vIGNhbGxQb29sQWRkU3Rha2Uoc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuLCBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBtYnJBbXRQYWlkOiB1aW50NjQsIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2xlYW4sIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbik6IHZvaWQKLy8KLy8gQWRkcyBhIHN0YWtlcnMgYW1vdW50IG9mIGFsZ28gdG8gYSB2YWxpZGF0b3IgcG9vbCwgdHJhbnNmZXJyaW5nIHRoZSBhbGdvIHdlIHJlY2VpdmVkIGZyb20gdGhlbSAoYWxyZWFkeSB2ZXJpZmllZAovLyBieSBvdXIgY2FsbGVyKSB0byB0aGUgc3Rha2luZyBwb29sIGFjY291bnQsIGFuZCB0aGVuIHRlbGxpbmcgaXQgYWJvdXQgdGhlIGFtb3VudCBiZWluZyBhZGRlZCBmb3IgdGhlIHNwZWNpZmllZAovLyBzdGFrZXIuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sS2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsaWRhdG9yIHBvb2wuCi8vIEBwYXJhbSB7dWludDY0fSBtYnJBbXRQYWlkIC0gQW1vdW50IHRoZSB1c2VyIGlzIGxlYXZpbmcgYmVoaW5kIGluIHRoZSB2YWxpZGF0b3IgdG8gcGF5IGZvciB0aGVpciBzdGFrZXIgTUJSIGNvc3QKLy8gQHBhcmFtIHtib29sZWFufSBpc05ld1N0YWtlclRvVmFsaWRhdG9yIC0gaWYgdGhpcyBpcyBhIG5ldywgZmlyc3QtdGltZSBzdGFrZXIgdG8gdGhlIHZhbGlkYXRvcgovLyBAcGFyYW0ge2Jvb2xlYW59IGlzTmV3U3Rha2VyVG9Qcm90b2NvbCAtIGlmIHRoaXMgaXMgYSBuZXcsIGZpcnN0LXRpbWUgc3Rha2VyIHRvIHRoZSBwcm90b2NvbApjYWxsUG9vbEFkZFN0YWtlOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjQ5CgkvLyBwb29sQXBwSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS5wb29sQXBwSWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFN0YWtpbmdQb29sLnByb3RvdHlwZS5hZGRTdGFrZSwgdWludDY0Pih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgLy8gVEhJUyBJUyBBIFNFTkQgb2YgdGhlIGFtb3VudCByZWNlaXZlZCByaWdodCBiYWNrIG91dCBhbmQgaW50byB0aGUgc3Rha2luZyBwb29sIGNvbnRyYWN0IGFjY291bnQuCgkvLyAgICAgICAgIHsgYW1vdW50OiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQsIHJlY2VpdmVyOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuYWRkcmVzcyB9LAoJLy8gICAgICAgICAvLyA9PT09PT09CgkvLyAgICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQuc2VuZGVyLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyByZWNlaXZlcjogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYWRkU3Rha2UocGF5LGFkZHJlc3MpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpCglmcmFtZV9kaWcgMCAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNTUKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgLy8gPT09PT09PQoJLy8gICAgICAgICAvLyBUSElTIElTIEEgU0VORCBvZiB0aGUgYW1vdW50IHJlY2VpdmVkIHJpZ2h0IGJhY2sgb3V0IGFuZCBpbnRvIHRoZSBzdGFraW5nIHBvb2wgY29udHJhY3QgYWNjb3VudC4KCS8vICAgICAgICAgeyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZCwgcmVjZWl2ZXI6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5hZGRyZXNzIH0sCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgc3Rha2VkQW1vdW50UGF5bWVudC5zZW5kZXIsCgkvLyAgICAgICBdCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglidG9pCgoJLy8gKmlmMzJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2MwoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCA1MDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCA1MDAKCTwKCWJ6ICppZjMyX2VuZAoKCS8vICppZjMyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjY0CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OAoJLy8gcG9vbE51bVN0YWtlcnMgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ251bVN0YWtlcnMnKSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmdsb2JhbFN0YXRlKCdudW1TdGFrZXJzJykKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xOdW1TdGFrZXJzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OQoJLy8gcG9vbEFsZ29TdGFrZWQgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpIGFzIHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpCglhc3NlcnQKCWZyYW1lX2J1cnkgMiAvLyBwb29sQWxnb1N0YWtlZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyA9IHBvb2xOdW1TdGFrZXJzIGFzIHVpbnQxNgoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJZnJhbWVfZGlnIDEgLy8gcG9vbE51bVN0YWtlcnM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjcxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgPSBwb29sQWxnb1N0YWtlZAoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWZyYW1lX2RpZyAyIC8vIHBvb2xBbGdvU3Rha2VkOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vICppZjMzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzQKCS8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IKCWZyYW1lX2RpZyAtNCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sZWFuCglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI3NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyArPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjMzX2VuZDoKCS8vICppZjM0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzcKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbAoJZnJhbWVfZGlnIC01IC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbgoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzgKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSArPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCSsKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoqaWYzNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgKz0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgLSBtYnJBbXRQYWlkCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyB1cGRhdGVTdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IHZvaWQKdXBkYXRlU3Rha2VyUG9vbFNldDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NQoJLy8gYXNzZXJ0KHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLmV4aXN0cykKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NwoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDAgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjg4CgkvLyBmaXJzdEVtcHR5ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzc6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl83X2VuZAoKCS8vICppZjM1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTAKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAwIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmMzVfZW5kCgoJLy8gKmlmMzVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTIKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMzVfZW5kOgoJLy8gKmlmMzZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI5NAoJLy8gZmlyc3RFbXB0eSA9PT0gMCAmJiBwb29sU2V0W2ldLmlkID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQ4CglmcmFtZV9kaWcgMCAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCSYmCgoqc2tpcF9hbmQ4OgoJYnogKmlmMzZfZW5kCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTUKCS8vIGZpcnN0RW1wdHkgPSBpICsgMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKKmlmMzZfZW5kOgoKKmZvcl83X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODkKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzcKCipmb3JfN19lbmQ6CgkvLyAqaWYzN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjk4CgkvLyBmaXJzdEVtcHR5ID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gTm8gZW1wdHkgc2xvdCBhdmFpbGFibGUgaW4gdGhlIHN0YWtlciBwb29sIHNldAoJZXJyCgoqaWYzN19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMwMQoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbZmlyc3RFbXB0eSAtIDFdID0gcG9vbEtleQoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMQoJLQoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIHJlbW92ZUZyb21TdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IFtib29sZWFuLCBib29sZWFuXQovLwovLyBSZW1vdmVzIGEgcG9vbCBrZXkgZnJvbSB0aGUgc3Rha2VyJ3MgYWN0aXZlIHBvb2wgc2V0IC0gZmFpbHMgaWYgbm90IGZvdW5kICghKQovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFRoZSBwb29sIGtleSB0aGV5IHNob3VsZCBiZSBzdG9yZWQgaW4KLy8KLy8gQHJldHVybiBbYm9vbGVhbiwgYm9vbGVhbl0gW2lzIHRoZSBzdGFrZXIgZ29uZSBmcm9tIEFMTCBwb29scyBvZiB0aGUgZ2l2ZW4gVkFMSURBVE9SLCBhbmQgaXMgc3Rha2VyIGdvbmUgZnJvbSBBTEwgcG9vbHNdCnJlbW92ZUZyb21TdGFrZXJQb29sU2V0OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE0CgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTUKCS8vIGluQW55UG9vbENvdW50ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTYKCS8vIGZvdW5kID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMxOAoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfODoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpIDwgdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzhfZW5kCgoJLy8gKmlmMzhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyMAoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgliICpmb3JfOF9jb250aW51ZQoKKmlmMzhfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjMKCS8vIGluQW55UG9vbENvdW50ICs9IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gaW5BbnlQb29sQ291bnQ6IHVpbnQ2NAoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjQKCS8vIHBvb2xTZXRbaV0uaWQgPT09IHBvb2xLZXkuaWQKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCWJ6ICppZjM5X2VuZAoKCS8vICppZjM5X2NvbnNlcXVlbnQKCS8vICppZjQwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjUKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmNDBfZWxzZQoKCS8vICppZjQwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzI2CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyOAoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbaV0gPSB7IGlkOiAwLCBwb29sSWQ6IDAsIHBvb2xBcHBJZDogMCB9CglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgliICppZjQwX2VuZAoKKmlmNDBfZWxzZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzMwCgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCippZjQwX2VuZDoKCippZjM5X2VuZDoKCipmb3JfOF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpICs9IDEKCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCWIgKmZvcl84CgoqZm9yXzhfZW5kOgoJLy8gKmlmNDFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzNAoJLy8gIWZvdW5kCglmcmFtZV9kaWcgMiAvLyBmb3VuZDogYm9vbAoJIQoJYnogKmlmNDFfZW5kCgoJLy8gKmlmNDFfY29uc2VxdWVudAoJLy8gTm8gbWF0Y2hpbmcgc2xvdCBmb3VuZCB3aGVuIHRvbGQgdG8gcmVtb3ZlIGEgcG9vbCBmcm9tIHRoZSBzdGFrZXJzIHNldAoJZXJyCgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzOAoJLy8gcmV0dXJuIFtpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPT09IDAsIGluQW55UG9vbENvdW50ID09PSAwXTsKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CglpbnQgMAoJPT0KCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAwCgk9PQoJc2V0Yml0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgovLyBhZGRQb29sVG9Ob2RlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHBvb2xBcHBJZDogdWludDY0LCBub2RlTnVtOiB1aW50NjQpOiB2b2lkCmFkZFBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDIKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQzCgkvLyBtYXhQb29sc1Blck5vZGVGb3JUaGlzVmFsaWRhdG9yID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcucG9vbHNQZXJOb2RlIGFzIHVpbnQ2NAoJaW50IDIyNQoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDUKCS8vIGFzc2VydChub2RlTnVtID49IDEgJiYgbm9kZU51bSA8PSBNQVhfTk9ERVMsICdub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDEKCT49CglkdXAKCWJ6ICpza2lwX2FuZDkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCA4Cgk8PQoJJiYKCipza2lwX2FuZDk6CgkvLyBub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3I7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzk6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0NwoJLy8gaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0Cgk8CglieiAqZm9yXzlfZW5kCgoJLy8gKmlmNDJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0OAoJLy8gbm9kZVBvb2xBc3NpZ25tZW50cy5ub2Rlc1tub2RlTnVtIC0gMV0ucG9vbEFwcElkc1tpXSA9PT0gMAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjQyX2VuZAoKCS8vICppZjQyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUwCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbbm9kZU51bSAtIDFdLnBvb2xBcHBJZHNbaV0gPSBwb29sQXBwSWQKCWludCA5MDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUxCgkvLyByZXR1cm47CglyZXRzdWIKCippZjQyX2VuZDoKCipmb3JfOV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl85CgoqZm9yXzlfZW5kOgoJLy8gbm8gYXZhaWxhYmxlIHNwYWNlIGluIHNwZWNpZmllZCBub2RlIGZvciB0aGlzIHBvb2wKCWVycgoJcmV0c3ViCgovLyBkb2VzU3Rha2VyTWVldEdhdGluZyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiBhIHN0YWtlciBtZWV0cyB0aGUgZ2F0aW5nIHJlcXVpcmVtZW50cyBzcGVjaWZpZWQgYnkgdGhlIHZhbGlkYXRvci4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gVGhlIHZhbHVlIHRvIHZlcmlmeSBhZ2FpbnN0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzLgovLyBAcmV0dXJucyB7dm9pZH0gb3IgYXNzZXJ0cyBpZiByZXF1aXJlbWVudHMgbm90IG1ldC4KZG9lc1N0YWtlck1lZXRHYXRpbmc6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNjUKCS8vIHR5cGUgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdHlwZTogdWludDgKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzY2CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9OT05FCglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDAKCT09CglieiAqaWY0M19lbmQKCgkvLyAqaWY0M19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2NwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWY0M19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2OQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDEgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzAKCS8vIGNvbmZpZyA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnKQoJaW50IDAKCWludCAyNDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0NF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzc0CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWSB8fAoJLy8gICAgICAgdHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRfSUQgfHwKCS8vICAgICAgIHR5cGUgPT09IEdBVElOR19UWVBFX0NSRUFURURfQllfTkZEX0FERFJFU1NFUwoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3I0CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09Cgl8fAoKKnNraXBfb3I0OgoJZHVwCglibnogKnNraXBfb3I1CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDMKCT09Cgl8fAoKKnNraXBfb3I1OgoJYnogKmlmNDRfZW5kCgoJLy8gKmlmNDRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzgKCS8vIGFzc2VydCh2YWx1ZVRvVmVyaWZ5ICE9PSAwKQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM3OQoJLy8gYmFsUmVxdWlyZWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCgkvLyAqaWY0NV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgwCgkvLyBiYWxSZXF1aXJlZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWY0NV9lbmQKCgkvLyAqaWY0NV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM4MQoJLy8gYmFsUmVxdWlyZWQgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCippZjQ1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHN0YWtlci5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpKSA+PSBiYWxSZXF1aXJlZCwKCS8vICAgICAgICAgJ211c3QgaGF2ZSByZXF1aXJlZCBtaW5pbXVtIGJhbGFuY2Ugb2YgdmFsaWRhdG9yIGRlZmluZWQgdG9rZW4gdG8gYWRkIHN0YWtlJwoJLy8gICAgICAgKQoJZnJhbWVfZGlnIDEgLy8gc3Rha2VyOiBhZGRyZXNzCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJPj0KCgkvLyBtdXN0IGhhdmUgcmVxdWlyZWQgbWluaW11bSBiYWxhbmNlIG9mIHZhbGlkYXRvciBkZWZpbmVkIHRva2VuIHRvIGFkZCBzdGFrZQoJYXNzZXJ0CgoqaWY0NF9lbmQ6CgkvLyAqaWY0Nl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzg4CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWQoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJYnogKmlmNDZfZW5kCgoJLy8gKmlmNDZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzODkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IgPT09IGNvbmZpZy5lbnRyeUdhdGluZ0FkZHJlc3MsCgkvLyAgICAgICAgICdzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBjcmVhdGVkIGJ5IGNyZWF0b3IgdGhhdCB0aGUgdmFsaWRhdG9yIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZScKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDgxIDMyCgk9PQoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IHRoZSB2YWxpZGF0b3IgZGVmaW5lZCBhcyBhIHJlcXVpcmVtZW50IHRvIHN0YWtlCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vICppZjQ3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTQKCS8vIHR5cGUgPT09IEdBVElOR19UWVBFX0FTU0VUX0lECglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09CglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM5NQoJLy8gYXNzZXJ0KHZhbHVlVG9WZXJpZnkgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk2CgkvLyBmb3VuZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSA0IC8vIGZvdW5kOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTcKCS8vIGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0cwoJZnJhbWVfZGlnIDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTEzIDMyCglkdXAKCWZyYW1lX2J1cnkgNSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yT2ZfMDoKCS8vICppZjQ4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTgKCS8vIHZhbHVlVG9WZXJpZnkgPT09IGFzc2V0SWQKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGFzc2V0SWQ6IHVpbnQ2NAoJPT0KCWJ6ICppZjQ4X2VuZAoKCS8vICppZjQ4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk5CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDQgLy8gZm91bmQ6IGJvb2wKCWIgKmZvck9mXzBfZW5kCgoqaWY0OF9lbmQ6CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMzIgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyA1IC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQwMwoJLy8gYXNzZXJ0KGZvdW5kLCAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgaWRlbnRpY2FsIHRvIHRoZSBhc3NldCBpZCBkZWZpbmVkIGFzIGEgcmVxdWlyZW1lbnQgdG8gc3Rha2UnKQoJZnJhbWVfZGlnIDQgLy8gZm91bmQ6IGJvb2wKCgkvLyBzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBpZGVudGljYWwgdG8gdGhlIGFzc2V0IGlkIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZQoJYXNzZXJ0CgoqaWY0N19lbmQ6CgkvLyAqaWY0OV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA1CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgMwoJPT0KCWJ6ICppZjQ5X2VuZAoKCS8vICppZjQ5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA4CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSwgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IpLAoJLy8gICAgICAgICAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgaXMgb25lIG9mIHRoZSBsaW5rZWQgYWRkcmVzc2VzIGluIGFuIG5mZCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IGlzIG9uZSBvZiB0aGUgbGlua2VkIGFkZHJlc3NlcyBpbiBhbiBuZmQKCWFzc2VydAoKKmlmNDlfZW5kOgoJLy8gKmlmNTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQxMwoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfU0VHTUVOVF9PRl9ORkQKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgNAoJPT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE1CgkvLyB1c2VyT2ZmZXJlZE5GREFwcElEID0gdmFsdWVUb1ZlcmlmeQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfYnVyeSA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE2CgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQodXNlck9mZmVyZWRORkRBcHBJRCksICdwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZCcpCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE5CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHJhd0J5dGVzKEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpID09PSByYXdCeXRlcyhzdGFrZXIpIHx8CgkvLyAgICAgICAgICAgdGhpcy5pc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QodXNlck9mZmVyZWRORkRBcHBJRCwgc3Rha2VyKSwKCS8vICAgICAgICAgInByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIiCgkvLyAgICAgICApCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmY3NzZlNjU3MjJlNjEgLy8gImkub3duZXIuYSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHVzZXJPZmZlcmVkTkZEQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9kaWcgMSAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjYKCWZyYW1lX2RpZyAxIC8vIHN0YWtlcjogYWRkcmVzcwoJZnJhbWVfZGlnIDggLy8gdXNlck9mZmVyZWRORkRBcHBJRDogdWludDY0CgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoJfHwKCipza2lwX29yNjoKCS8vIHByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDI2CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIGJ0b2koQXBwSUQuZnJvbVVpbnQ2NCh1c2VyT2ZmZXJlZE5GREFwcElEKS5nbG9iYWxTdGF0ZSgnaS5wYXJlbnRBcHBJRCcpIGFzIGJ5dGVzKSA9PT0KCS8vICAgICAgICAgICBjb25maWcuZW50cnlHYXRpbmdBc3NldHNbMF0sCgkvLyAgICAgICAgICdzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU3MDYxNzI2NTZlNzQ0MTcwNzA0OTQ0IC8vICJpLnBhcmVudEFwcElEIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kucGFyZW50QXBwSUQnKQoJYXNzZXJ0CglidG9pCglmcmFtZV9kaWcgMiAvLyBjb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMTMgOAoJYnRvaQoJPT0KCgkvLyBzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudAoJYXNzZXJ0CgoqaWY1MF9lbmQ6CglyZXRzdWIKCi8vIGlzTkZEQXBwSURWYWxpZChuZmRBcHBJRDogdWludDY0KTogYm9vbGVhbgovLwovLyBDaGVja3MgaWYgdGhlIGdpdmVuIE5GRCBBcHAgaWQgaXMgdmFsaWQuICBVc2luZyBvbmx5IHRoZSBBcHAgaWQgdGhlcmUncyBubyB2YWxpZGF0aW9uIGFnYWluc3QgdGhlIG5hbWUgKGllOiB0aGF0IG5mZCBYIGlzIG5hbWUgWSkKLy8gU28gaXQncyBhc3N1bWVkIGZvciB0aGUgY2FsbGVyLCB0aGUgYXBwIGlkIGFsb25lIGlzIGZpbmUuICBUaGUgbmFtZSBpcyBmZXRjaGVkIGZyb20gdGhlIHNwZWNpZmllZCBhcHAgaWQgYW5kIHRoZSB0d28KLy8gdG9nZXRoZXIgYXJlIHVzZWQgZm9yIHZhbGlkaXR5IGNoZWNrIGNhbGwgdG8gdGhlIG5mZCByZWdpc3RyeS4KLy8KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIE5GRCBBcHAgaWQgdG8gdmVyaWZ5LgovLwovLyBAcmV0dXJucyB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIE5GRCBBcHAgaWQgaXMgdmFsaWQsIG90aGVyd2lzZSBmYWxzZS4KaXNORkRBcHBJRFZhbGlkOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0NQoJLy8gdXNlck9mZmVyZWRORkROYW1lID0gQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kubmFtZScpIGFzIHN0cmluZwoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmU2MTZkNjUgLy8gImkubmFtZSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKS5nbG9iYWxTdGF0ZSgnaS5uYW1lJykKCWFzc2VydAoJZnJhbWVfYnVyeSAwIC8vIHVzZXJPZmZlcmVkTkZETmFtZTogc3RyaW5nCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NDcKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCB1c2VyT2ZmZXJlZE5GRE5hbWUsIGl0b2IobmZkQXBwSUQpXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQobmZkQXBwSUQpXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0OAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDQ5CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgdXNlck9mZmVyZWRORkROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMCAvLyB1c2VyT2ZmZXJlZE5GRE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDUwCgkvLyBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0KCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ1MgoJLy8gcmV0dXJuIGJ0b2kodGhpcy5pdHhuLmxhc3RMb2cpID09PSAxOwoJaXR4biBMYXN0TG9nCglidG9pCglpbnQgMQoJPT0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KG5mZEFwcElEOiB1aW50NjQsIGFkZHJUb0ZpbmQ6IEFkZHJlc3MpOiBib29sZWFuCi8vCi8vIENoZWNrcyBpZiB0aGUgc3BlY2lmaWVkIGFkZHJlc3MgaXMgcHJlc2VudCBpbiBhbiBORkRzIGxpc3Qgb2YgdmVyaWZpZWQgYWRkcmVzc2VzLgovLyBUaGUgTkZEIGlzIGFzc3VtZWQgdG8gaGF2ZSBhbHJlYWR5IGJlZW4gdmFsaWRhdGVkIGFzIG9mZmljaWFsLgovLwovLyBAcGFyYW0ge3VpbnQ2NH0gbmZkQXBwSUQgLSBUaGUgTkZEIGFwcGxpY2F0aW9uIGlkLgovLyBAcGFyYW0ge0FkZHJlc3N9IGFkZHJUb0ZpbmQgLSBUaGUgYWRkcmVzcyB0byBmaW5kIGluIHRoZSB2LmNhQWxnby4wLmFzIHByb3BlcnR5Ci8vIEByZXR1cm4ge2Jvb2xlYW59IC0gYHRydWVgIGlmIHRoZSBhZGRyZXNzIGlzIHByZXNlbnQsIGBmYWxzZWAgb3RoZXJ3aXNlLgppc0FkZHJlc3NJbk5GRENBQWxnb0xpc3Q6Cglwcm90byAyIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3JlYWRfcHJvcGVydHknLCAndi5jYUFsZ28uMC5hcyddLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKQoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY2CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsncmVhZF9wcm9wZXJ0eScsICd2LmNhQWxnby4wLmFzJ10KCWJ5dGUgMHg3MjY1NjE2NDVmNzA3MjZmNzA2NTcyNzQ3OSAvLyAicmVhZF9wcm9wZXJ0eSIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4NzYyZTYzNjE0MTZjNjc2ZjJlMzAyZTYxNzMgLy8gInYuY2FBbGdvLjAuYXMiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OAoJLy8gY2FBbGdvRGF0YSA9IHRoaXMuaXR4bi5sYXN0TG9nCglpdHhuIExhc3RMb2cKCWZyYW1lX2J1cnkgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBjYUFsZ29EYXRhLmxlbmd0aDsgaSArPSAzMikKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoqZm9yXzEwOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjkKCS8vIGkgPCBjYUFsZ29EYXRhLmxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCWxlbgoJPAoJYnogKmZvcl8xMF9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3MAoJLy8gYWRkciA9IGV4dHJhY3QzKGNhQWxnb0RhdGEsIGksIDMyKQoJZnJhbWVfZGlnIDAgLy8gY2FBbGdvRGF0YTogYnl0ZVtdCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCAzMgoJZXh0cmFjdDMKCWZyYW1lX2J1cnkgMiAvLyBhZGRyOiBieXRlW10KCgkvLyAqaWY1MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDcxCgkvLyBhZGRyICE9PSByYXdCeXRlcyhnbG9iYWxzLnplcm9BZGRyZXNzKSAmJiBhZGRyID09PSByYXdCeXRlcyhhZGRyVG9GaW5kKQoJZnJhbWVfZGlnIDIgLy8gYWRkcjogYnl0ZVtdCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglkdXAKCWJ6ICpza2lwX2FuZDEwCglmcmFtZV9kaWcgMiAvLyBhZGRyOiBieXRlW10KCWZyYW1lX2RpZyAtMiAvLyBhZGRyVG9GaW5kOiBBZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDEwOgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NzIKCS8vIHJldHVybiB0cnVlOwoJaW50IDEKCWIgKmlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdCpyZXR1cm4KCippZjUxX2VuZDoKCipmb3JfMTBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gaSArPSAzMgoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMzIKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8xMAoKKmZvcl8xMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3NQoJLy8gcmV0dXJuIGZhbHNlOwoJaW50IDAKCippc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KLy8gTk9URTogdGhpcyBmdW5jdGlvbiBpcyBkZWZpbmVkIHR3aWNlIC0gaGVyZSBhbmQgaW4gc3Rha2luZyBwb29sIGNvbnRyYWN0LiAgQm90aCBtdXN0IGJlIGlkZW50aWNhbC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0ODQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ4NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX1NPRlRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDEwMAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGxvd2VkU3Rha2UoKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgdmFsaWRhdG9yIGJhc2VkIG9uIGEgcGVyY2VudGFnZSBvZiBhbGwgY3VycmVudCBvbmxpbmUgc3Rha2UuCi8vIEFkZGluZyBzdGFrZSBpcyBjb21wbGV0ZWx5IGJsb2NrZWQgYXQgdGhpcyBhbW91bnQuCm1heEFsbG93ZWRTdGFrZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0OTQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ5NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX0hBUkRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDE1MAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGdvQWxsb3dlZFBlclBvb2woKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgcG9vbCBhbmQgc3RpbGwgcmVjZWl2ZSBpbmNlbnRpdmVzIC0gd2UnbGwgdHJlYXQgdGhpcyBhcyB0aGUgJ21heCBwZXIgcG9vbCcKbWF4QWxnb0FsbG93ZWRQZXJQb29sOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDQKCS8vIHJldHVybiA3MF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgNzBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDkKCS8vIHJldHVybiAyXzAwMF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgMl8wMDBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIG1pbkJhbGFuY2VGb3JBY2NvdW50KGNvbnRyYWN0czogdWludDY0LCBleHRyYVBhZ2VzOiB1aW50NjQsIGFzc2V0czogdWludDY0LCBsb2NhbEludHM6IHVpbnQ2NCwgbG9jYWxCeXRlczogdWludDY0LCBnbG9iYWxJbnRzOiB1aW50NjQsIGdsb2JhbEJ5dGVzOiB1aW50NjQpOiB1aW50NjQKbWluQmFsYW5jZUZvckFjY291bnQ6Cglwcm90byA3IDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTIxCgkvLyBtaW5CYWwgPSBBTEdPUkFORF9BQ0NPVU5UX01JTl9CQUxBTkNFCglpbnQgMTAwMDAwCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMgoJLy8gbWluQmFsICs9IGNvbnRyYWN0cyAqIEFQUExJQ0FUSU9OX0JBU0VfRkVFCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGNvbnRyYWN0czogdWludDY0CglpbnQgMTAwMDAwCgkqCgkrCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMwoJLy8gbWluQmFsICs9IGV4dHJhUGFnZXMgKiBBUFBMSUNBVElPTl9CQVNFX0ZFRQoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBleHRyYVBhZ2VzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI0CgkvLyBtaW5CYWwgKz0gYXNzZXRzICogQVNTRVRfSE9MRElOR19GRUUKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYXNzZXRzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI1CgkvLyBtaW5CYWwgKz0gbG9jYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gbG9jYWxJbnRzOiB1aW50NjQKCWludCAyODUwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjYKCS8vIG1pbkJhbCArPSBnbG9iYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTYgLy8gZ2xvYmFsSW50czogdWludDY0CglpbnQgMjg1MDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI3CgkvLyBtaW5CYWwgKz0gbG9jYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNSAvLyBsb2NhbEJ5dGVzOiB1aW50NjQKCWludCA1MDAwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjgKCS8vIG1pbkJhbCArPSBnbG9iYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNyAvLyBnbG9iYWxCeXRlczogdWludDY0CglpbnQgNTAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI5CgkvLyByZXR1cm4gbWluQmFsOwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MzYKCS8vIHJldHVybiBTQ0JPWF9QRVJCT1ggKyB0b3RhbE51bUJ5dGVzICogU0NCT1hfUEVSQllURTsKCWludCAyNTAwCglmcmFtZV9kaWcgLTEgLy8gdG90YWxOdW1CeXRlczogdWludDY0CglpbnQgNDAwCgkqCgkrCglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQiCgltZXRob2QgImxvYWRTdGFraW5nQ29udHJhY3REYXRhKHVpbnQ2NCxieXRlW10pdm9pZCIKCW1ldGhvZCAiZmluYWxpemVTdGFraW5nQ29udHJhY3QoKXZvaWQiCgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkiCgltZXRob2QgImdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0TnVtVmFsaWRhdG9ycygpdWludDY0IgoJbWV0aG9kICJnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJnZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXIodWludDY0KShhZGRyZXNzLGFkZHJlc3MpIgoJbWV0aG9kICJnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdIgoJbWV0aG9kICJnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KSIKCW1ldGhvZCAiZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sIgoJbWV0aG9kICJnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10iCgltZXRob2QgImdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkiCgltZXRob2QgImdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkiCgltZXRob2QgImdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NCIKCW1ldGhvZCAiYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NCIKCW1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImNoYW5nZVZhbGlkYXRvck5GRCh1aW50NjQsdWludDY0LHN0cmluZyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImFkZFBvb2wocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAic2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KSIKCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJbWV0aG9kICJmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKSIKCW1ldGhvZCAibW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0ICphYmlfcm91dGVfbG9hZFN0YWtpbmdDb250cmFjdERhdGEgKmFiaV9yb3V0ZV9maW5hbGl6ZVN0YWtpbmdDb250cmFjdCAqYWJpX3JvdXRlX2dhcyAqYWJpX3JvdXRlX2dldE1ickFtb3VudHMgKmFiaV9yb3V0ZV9nZXRQcm90b2NvbENvbnN0cmFpbnRzICphYmlfcm91dGVfZ2V0TnVtVmFsaWRhdG9ycyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvckNvbmZpZyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvclN0YXRlICphYmlfcm91dGVfZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyICphYmlfcm91dGVfZ2V0UG9vbHMgKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQgKmFiaV9yb3V0ZV9nZXRQb29sSW5mbyAqYWJpX3JvdXRlX2dldEN1ck1heFN0YWtlUGVyUG9vbCAqYWJpX3JvdXRlX2RvZXNTdGFrZXJOZWVkVG9QYXlNQlIgKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQgKmFiaV9yb3V0ZV9nZXRUb2tlblBheW91dFJhdGlvICphYmlfcm91dGVfZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyAqYWJpX3JvdXRlX2dldE5GRFJlZ2lzdHJ5SUQgKmFiaV9yb3V0ZV9hZGRWYWxpZGF0b3IgKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRCAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyAqYWJpX3JvdXRlX2FkZFBvb2wgKmFiaV9yb3V0ZV9hZGRTdGFrZSAqYWJpX3JvdXRlX3NldFRva2VuUGF5b3V0UmF0aW8gKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzICphYmlfcm91dGVfc3Rha2VSZW1vdmVkICphYmlfcm91dGVfZmluZFBvb2xGb3JTdGFrZXIgKmFiaV9yb3V0ZV9tb3ZlUG9vbFRvTm9kZSAqYWJpX3JvdXRlX2VtcHR5VG9rZW5SZXdhcmRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAidXBkYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgVXBkYXRlQXBwbGljYXRpb24KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9uZmRSZWdpc3RyeUFwcElkCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgdXBkYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKdXBkYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjAyCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBZGRyZXNzLmZyb21BZGRyZXNzKCdMWjRWMklSVkxDWEZKSzRSRUpWNFRBR0VLRVlUQTJHTVI2VEMyMzQ0T0IzTDNBRjNNV1haNlpBRklRJykpCgl0eG4gU2VuZGVyCglhZGRyIExaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA0CgkvLyB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmRlbGV0ZSgpCglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfZGVsCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIwNQoJLy8gdGhpcy5zdGFraW5nUG9vbEluaXRpYWxpemVkLnZhbHVlID0gZmFsc2UKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgY3JlYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKY3JlYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA5CgkvLyB0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUgPSBmYWxzZQoJYnl0ZSAweDY5NmU2OTc0IC8vICJpbml0IgoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTAKCS8vIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTEKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTIKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlID0gMAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0OgoJLy8gYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbml0U3Rha2luZ0NvbnRyYWN0KHVpbnQ2NCl2b2lkCgljYWxsc3ViIGluaXRTdGFraW5nQ29udHJhY3QKCWludCAxCglyZXR1cm4KCi8vIGluaXRTdGFraW5nQ29udHJhY3QoYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0KTogdm9pZAppbml0U3Rha2luZ0NvbnRyYWN0OgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIxNwoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5jcmVhdGUoYXBwcm92YWxQcm9ncmFtU2l6ZSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBhcHByb3ZhbFByb2dyYW1TaXplOiB1aW50NjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YSh1aW50NjQsYnl0ZVtdKXZvaWQKKmFiaV9yb3V0ZV9sb2FkU3Rha2luZ0NvbnRyYWN0RGF0YToKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbG9hZFN0YWtpbmdDb250cmFjdERhdGEodWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIGxvYWRTdGFraW5nQ29udHJhY3REYXRhCglpbnQgMQoJcmV0dXJuCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YShvZmZzZXQ6IHVpbnQ2NCwgZGF0YTogYnl0ZXMpOiB2b2lkCmxvYWRTdGFraW5nQ29udHJhY3REYXRhOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMQoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUpCglieXRlIDB4Njk2ZTY5NzQgLy8gImluaXQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCWdldGJpdAoJIQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMgoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5yZXBsYWNlKG9mZnNldCwgZGF0YSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoqYWJpX3JvdXRlX2ZpbmFsaXplU3Rha2luZ0NvbnRyYWN0OgoJLy8gZXhlY3V0ZSBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoJY2FsbHN1YiBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdAoJaW50IDEKCXJldHVybgoKLy8gZmluYWxpemVTdGFraW5nQ29udHJhY3QoKTogdm9pZApmaW5hbGl6ZVN0YWtpbmdDb250cmFjdDoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMjYKCS8vIHRoaXMuc3Rha2luZ1Bvb2xJbml0aWFsaXplZC52YWx1ZSA9IHRydWUKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAxCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9nZXRNYnJBbW91bnRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE1ickFtb3VudHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRNYnJBbW91bnRzKCk6IE1ickFtb3VudHMKLy8KLy8gUmV0dXJucyB0aGUgTUJSIGFtb3VudHMgbmVlZGVkIGZvciB2YXJpb3VzIGFjdGlvbnM6Ci8vIFsKLy8gYWRkVmFsaWRhdG9yTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyB2YWxpZGF0b3IgLSBwYWlkIHRvIHZhbGlkYXRvciBjb250cmFjdAovLyBhZGRQb29sTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyBwb29sIC0gcGFpZCB0byB2YWxpZGF0b3IKLy8gcG9vbEluaXRNYnI6IHVpbnQ2NCAtIG1iciBuZWVkZWQgdG8gaW5pdFN0b3JhZ2UoKSBvZiBwb29sIC0gcGFpZCB0byBwb29sIGl0c2VsZgovLyBhZGRTdGFrZXJNYnI6IHVpbnQ2NCAtIG1iciBzdGFrZXIgbmVlZHMgdG8gYWRkIHRvIGZpcnN0IHN0YWtpbmcgcGF5bWVudCAoc3RheXMgdy8gdmFsaWRhdG9yKQovLyBdCmdldE1ickFtb3VudHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQ2CgkvLyByZXR1cm4gewoJLy8gICAgICAgYWRkVmFsaWRhdG9yTWJyOiB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDEgLyogdiBwcmVmaXggKi8gKyBsZW48VmFsaWRhdG9ySWRUeXBlPigpICsgbGVuPFZhbGlkYXRvckluZm8+KCkpLAoJLy8gICAgICAgYWRkUG9vbE1icjogdGhpcy5taW5CYWxhbmNlRm9yQWNjb3VudCgKCS8vICAgICAgICAgMSwKCS8vICAgICAgICAgLy8gd2UgY291bGQgY2FsY3VsYXRlIHRoaXMgZGlyZWN0bHkgYnkgcmVmZXJlbmNpbmcgdGhlIHNpemUgb2Ygc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0gYnV0IGl0IHdvdWxkCgkvLyAgICAgICAgIC8vIG1lYW4gb3VyIGNhbGxlcnMgd291bGQgaGF2ZSB0byByZWZlcmVuY2UgdGhlIGJveCBBTkQgYnV5IHVwIGkvbyAtIHNvIGp1c3QgZ28gbWF4IG9uIGV4dHJhIHBhZ2VzCgkvLyAgICAgICAgIDMsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIFN0YWtpbmdQb29sLnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICAgICAgU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCS8vICAgICAgICksCgkvLyAgICAgICBwb29sSW5pdE1icjoKCS8vICAgICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoNyAvKiAnc3Rha2VycycgbmFtZSAqLyArIGxlbjxTdGFrZWRJbmZvPigpICogTUFYX1NUQUtFUlNfUEVSX1BPT0wpLAoJLy8gICAgICAgYWRkU3Rha2VyTWJyOgoJLy8gICAgICAgICAvLyBob3cgbXVjaCB0byBjaGFyZ2UgZm9yIGZpcnN0IHRpbWUgYSBzdGFrZXIgYWRkcyBzdGFrZSAtIHNpbmNlIHdlIGFkZCBhIHRyYWNraW5nIGJveCBwZXIgc3Rha2VyCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoMyAvKiAnc3BzJyBwcmVmaXggKi8gKyBsZW48QWRkcmVzcz4oKSArIGxlbjxWYWxpZGF0b3JQb29sS2V5PigpICogTUFYX1BPT0xTX1BFUl9TVEFLRVIpLCAvLyBzaXplIG9mIGtleSArIGFsbCB2YWx1ZXMKCS8vICAgICB9OwoJaW50IDExMDEKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCWl0b2IKCWludCAzCglpbnQgMTEKCWludCAwCglkdXBuIDIKCWludCAzCglpbnQgMQoJY2FsbHN1YiBtaW5CYWxhbmNlRm9yQWNjb3VudAoJaXRvYgoJY29uY2F0CglpbnQgMTAwMDAwCglpbnQgMTI4MDcKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCSsKCWl0b2IKCWNvbmNhdAoJaW50IDE3OQoJY2FsbHN1YiBjb3N0Rm9yQm94U3RvcmFnZQoJaXRvYgoJY29uY2F0CglyZXRzdWIKCi8vIGdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFByb3RvY29sQ29uc3RyYWludHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2V0UHJvdG9jb2xDb25zdHJhaW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFByb3RvY29sQ29uc3RyYWludHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRQcm90b2NvbENvbnN0cmFpbnRzKCk6IENvbnN0cmFpbnRzCi8vCi8vIFJldHVybnMgdGhlIHByb3RvY29sIGNvbnN0cmFpbnRzIHNvIHRoYXQgVUlzIGNhbiBsaW1pdCB3aGF0IHVzZXJzIHNwZWNpZnkgZm9yIHZhbGlkYXRvciBjb25maWd1cmF0aW9uIHBhcmFtZXRlcnMuCmdldFByb3RvY29sQ29uc3RyYWludHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjcyCgkvLyByZXR1cm4gewoJLy8gICAgICAgZXBvY2hQYXlvdXRSb3VuZHNNaW46IE1JTl9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICBlcG9jaFBheW91dFJvdW5kc01heDogTUFYX0VQT0NIX0xFTkdUSCwKCS8vICAgICAgIG1pblBjdFRvVmFsaWRhdG9yV0ZvdXJEZWNpbWFsczogTUlOX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICBtYXhQY3RUb1ZhbGlkYXRvcldGb3VyRGVjaW1hbHM6IE1BWF9QQ1RfVE9fVkFMSURBVE9SLAoJLy8gICAgICAgbWluRW50cnlTdGFrZTogTUlOX0FMR09fU1RBS0VfUEVSX1BPT0wsCgkvLyAgICAgICBtYXhBbGdvUGVyUG9vbDogdGhpcy5tYXhBbGdvQWxsb3dlZFBlclBvb2woKSwKCS8vICAgICAgIG1heEFsZ29QZXJWYWxpZGF0b3I6IHRoaXMubWF4QWxsb3dlZFN0YWtlKCksCgkvLyAgICAgICBhbXRDb25zaWRlcmVkU2F0dXJhdGVkOiB0aGlzLmFsZ29TYXR1cmF0aW9uTGV2ZWwoKSwKCS8vICAgICAgIG1heE5vZGVzOiBNQVhfTk9ERVMsCgkvLyAgICAgICBtYXhQb29sc1Blck5vZGU6IE1BWF9QT09MU19QRVJfTk9ERSwKCS8vICAgICAgIG1heFN0YWtlcnNQZXJQb29sOiBNQVhfU1RBS0VSU19QRVJfUE9PTCwKCS8vICAgICB9OwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMGY0MjQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZjQyNDAwMDAwMDAwMDAwMGY0MjQwCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJaXRvYgoJY29uY2F0CgljYWxsc3ViIG1heEFsbG93ZWRTdGFrZQoJaXRvYgoJY29uY2F0CgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwYzgKCWNvbmNhdAoJcmV0c3ViCgovLyBnZXROdW1WYWxpZGF0b3JzKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXROdW1WYWxpZGF0b3JzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE51bVZhbGlkYXRvcnMoKXVpbnQ2NAoJY2FsbHN1YiBnZXROdW1WYWxpZGF0b3JzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TnVtVmFsaWRhdG9ycygpOiB1aW50NjQKLy8KLy8gUmV0dXJucyB0aGUgY3VycmVudCBudW1iZXIgb2YgdmFsaWRhdG9ycwpnZXROdW1WYWxpZGF0b3JzOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI5MgoJLy8gcmV0dXJuIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZTsKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yQ29uZmlnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JDb25maWcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRWYWxpZGF0b3JDb25maWcodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFZhbGlkYXRvckNvbmZpZwpnZXRWYWxpZGF0b3JDb25maWc6Cglwcm90byAxIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mjk3CgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWc7CglpbnQgMAoJaW50IDI0MgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvclN0YXRlKHVpbnQ2NCkodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JTdGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFZhbGlkYXRvclN0YXRlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBWYWxpZGF0b3JDdXJTdGF0ZQpnZXRWYWxpZGF0b3JTdGF0ZToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMDIKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlOwoJaW50IDI0MiAvLyBoZWFkT2Zmc2V0CglpbnQgMjYKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKKmFiaV9yb3V0ZV9nZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKCWNhbGxzdWIgZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBbQWRkcmVzcywgQWRkcmVzc10KZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMwNwoJLy8gcmV0dXJuIFt0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlcl07CglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgljb25jYXQKCXJldHN1YgoKLy8gZ2V0UG9vbHModWludDY0KSh1aW50NjQsdWludDE2LHVpbnQ2NClbXQoqYWJpX3JvdXRlX2dldFBvb2xzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdCgljYWxsc3ViIGdldFBvb2xzCglkdXAKCWxlbgoJaW50IDE4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0UG9vbHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xJbmZvW10KLy8KLy8gUmV0dXJuIGxpc3Qgb2YgYWxsIHBvb2xzIGZvciB0aGlzIHZhbGlkYXRvci4KLy8gQHBhcmFtIHt1aW50NjR9IHZhbGlkYXRvcklkCi8vIEByZXR1cm4ge1Bvb2xJbmZvW119IC0gYXJyYXkgb2YgcG9vbHMKLy8gTm90IGNhbGxhYmxlIGZyb20gb3RoZXIgY29udHJhY3RzIGJlY2F1c2UgPjFLIHJldHVybiBidXQgY2FuIGJlIGNhbGxlZCB3LyBzaW11bGF0ZSB3aGljaCBidW1wcyBsb2cgcmV0dXJucwpnZXRQb29sczoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzE4CgkvLyByZXREYXRhOiBQb29sSW5mb1tdID0gW10KCWJ5dGUgMHgKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMxOQoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMpCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWludCA0MzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyMAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIxCgkvLyBwb29sU2V0W2ldLnBvb2xBcHBJZCA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvcl8wX2VuZAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzI1CgkvLyByZXREYXRhLnB1c2gocG9vbFNldFtpXSkKCWZyYW1lX2RpZyAwIC8vIHJldERhdGE6IFBvb2xJbmZvW10KCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTgKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoqZm9yXzBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyNwoJLy8gcmV0dXJuIHJldERhdGE7CglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGdldFBvb2xBcHBJZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xBcHBJZCh2YWxpZGF0b3JJZDogdWludDY0LCBwb29sSWQ6IHVpbnQ2NCk6IHVpbnQ2NApnZXRQb29sQXBwSWQ6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzM1CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sSWQgIT09IDAgJiYgcG9vbElkIDw9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMubGVuZ3RoLAoJLy8gICAgICAgJ3Bvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3InCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMjQKCTw9CgkmJgoKKnNraXBfYW5kMDoKCS8vIHBvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMzkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW3Bvb2xJZCAtIDFdLnBvb2xBcHBJZDsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZ2V0UG9vbEluZm8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0LHVpbnQxNix1aW50NjQpCiphYmlfcm91dGVfZ2V0UG9vbEluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xLZXk6ICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMjQKCT09CgoJLy8gYXJndW1lbnQgMCAocG9vbEtleSkgZm9yIGdldFBvb2xJbmZvIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJY2FsbHN1YiBnZXRQb29sSW5mbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xJbmZvKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiBQb29sSW5mbwpnZXRQb29sSW5mbzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNDQKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXTsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldEN1ck1heFN0YWtlUGVyUG9vbCh1aW50NjQpdWludDY0CiphYmlfcm91dGVfZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRDdXJNYXhTdGFrZVBlclBvb2wodWludDY0KXVpbnQ2NAoJY2FsbHN1YiBnZXRDdXJNYXhTdGFrZVBlclBvb2wKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRDdXJNYXhTdGFrZVBlclBvb2wodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IHVpbnQ2NAovLwovLyBDYWxjdWxhdGUgdGhlIG1heGltdW0gc3Rha2UgcGVyIHBvb2wgZm9yIGEgZ2l2ZW4gdmFsaWRhdG9yLgovLyBOb3JtYWxseSB0aGlzIHdvdWxkIGJlIG1heEFsZ29QZXJQb29sLCBidXQgaXQgc2hvdWxkIGFsc28gbmV2ZXIgZ28gYWJvdmUgTWF4QWxsb3dlZFN0YWtlIC8gbnVtUG9vbHMgc28KLy8gYXMgcG9vbHMgYXJlIGFkZGVkIHRoZSBtYXggYWxsb3dlZCBwZXIgcG9vbCBjYW4gcmVkdWNlLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvci4KZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTUKCS8vIG51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIG51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU2CgkvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29scyA9IHRoaXMubWF4QWxsb3dlZFN0YWtlKCkgLyBudW1Qb29scwoJY2FsbHN1YiBtYXhBbGxvd2VkU3Rha2UKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM1NwoJLy8gbWF4UGVyUG9vbDogdWludDY0ID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWF4QWxnb1BlclBvb2wKCWludCAyMTcKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU4CgkvLyBtYXhQZXJQb29sID09PSAwCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMV9lbmQKCgkvLyAqaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTkKCS8vIG1heFBlclBvb2wgPSB0aGlzLm1heEFsZ29BbGxvd2VkUGVyUG9vbCgpCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKKmlmMV9lbmQ6CgkvLyAqaWYyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2MQoJLy8gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMgPCBtYXhQZXJQb29sCglmcmFtZV9kaWcgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTwKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzYyCgkvLyBtYXhQZXJQb29sID0gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMKCWZyYW1lX2RpZyAxIC8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzOiB1aW50NjQKCWZyYW1lX2J1cnkgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2NAoJLy8gcmV0dXJuIG1heFBlclBvb2w7CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sCiphYmlfcm91dGVfZG9lc1N0YWtlck5lZWRUb1BheU1CUjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHN0YWtlcikgZm9yIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZG9lc1N0YWtlck5lZWRUb1BheU1CUihhZGRyZXNzKWJvb2wKCWNhbGxzdWIgZG9lc1N0YWtlck5lZWRUb1BheU1CUgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb2VzU3Rha2VyTmVlZFRvUGF5TUJSKHN0YWtlcjogQWRkcmVzcyk6IGJvb2xlYW4KLy8KLy8gSGVscGVyIGNhbGxlcnMgY2FuIGNhbGwgdy8gc2ltdWxhdGUgdG8gZGV0ZXJtaW5lIGlmICdBZGRTdGFrZXInIE1CUiBzaG91bGQgYmUgaW5jbHVkZWQgdy8gc3Rha2luZyBhbW91bnQKLy8gQHBhcmFtIHN0YWtlcgpkb2VzU3Rha2VyTmVlZFRvUGF5TUJSOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM3MwoJLy8gcmV0dXJuICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHM7CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJIQoJcmV0c3ViCgovLyBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10KKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KGFkZHJlc3MpKHVpbnQ2NCx1aW50NjQsdWludDY0KVtdCgljYWxsc3ViIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudAoJZHVwCglsZW4KCWludCAyNAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudChzdGFrZXI6IEFkZHJlc3MpOiBWYWxpZGF0b3JQb29sS2V5W10KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgcG9vbHMgZm9yIGFuIGFjY291bnQuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgdG8gcmV0cmlldmUgc3Rha2VkIHBvb2xzIGZvci4KLy8gQHJldHVybiB7VmFsaWRhdG9yUG9vbEtleVtdfSAtIFRoZSBhcnJheSBvZiBzdGFrZWQgcG9vbHMgZm9yIHRoZSBhY2NvdW50LgpnZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODMKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4NAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJYiAqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybgoKKmlmM19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg2CgkvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10gPSBbXQoJYnl0ZSAweAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFZhbGlkYXRvclBvb2xLZXlbXQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODcKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZSkKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg4CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzFfZW5kCgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODkKCS8vIHBvb2xTZXRbaV0uaWQgIT09IDAKCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTAKCS8vIHJldERhdGEucHVzaChwb29sU2V0W2ldKQoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCglmcmFtZV9kaWcgMSAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMjQKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10KCippZjRfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSArPSAxCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTMKCS8vIHJldHVybiByZXREYXRhOwoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCgoqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDIKCXJldHN1YgoKLy8gZ2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX2dldFRva2VuUGF5b3V0UmF0aW86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgZ2V0VG9rZW5QYXlvdXRSYXRpbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFRva2VuUGF5b3V0UmF0aW8odmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xUb2tlblBheW91dFJhdGlvCi8vCi8vIFJldHJpZXZlcyB0aGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciBhIGdpdmVuIHZhbGlkYXRvciAtIHJldHVybmluZyB0aGUgcG9vbCByYXRpb3Mgb2Ygd2hvbGUgc28gdGhhdCB0b2tlbgovLyBwYXlvdXRzIGFjcm9zcyBwb29scyBjYW4gYmUgYmFzZWQgb24gYSBzdGFibGUgc25hcGhvc3Qgb2Ygc3Rha2UuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcmV0dXJuIHtQb29sVG9rZW5QYXlvdXRSYXRpb30gLSBUaGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciB0aGUgdmFsaWRhdG9yLgpnZXRUb2tlblBheW91dFJhdGlvOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQwNQoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpbzsKCWludCA3MDAgLy8gaGVhZE9mZnNldAoJaW50IDIwMAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyh1aW50NjQpKCh1aW50NjRbM10pWzhdKQoqYWJpX3JvdXRlX2dldE5vZGVQb29sQXNzaWdubWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkKCWNhbGxzdWIgZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldE5vZGVQb29sQXNzaWdubWVudHModmFsaWRhdG9ySWQ6IHVpbnQ2NCk6IE5vZGVQb29sQXNzaWdubWVudENvbmZpZwpnZXROb2RlUG9vbEFzc2lnbm1lbnRzOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQxMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAidGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgZG9lc24ndCBleGlzdCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyB0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBkb2Vzbid0IGV4aXN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDEyCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5ub2RlUG9vbEFzc2lnbm1lbnRzOwoJaW50IDkwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMTkyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBnZXRORkRSZWdpc3RyeUlEKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRORkRSZWdpc3RyeUlEOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NAoJY2FsbHN1YiBnZXRORkRSZWdpc3RyeUlECglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TkZEUmVnaXN0cnlJRCgpOiB1aW50NjQKZ2V0TkZEUmVnaXN0cnlJRDoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MTYKCS8vIHJldHVybiB0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQ7Cglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCXJldHN1YgoKLy8gYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFZhbGlkYXRvcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMjQyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNvbmZpZykgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBuZmROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAobWJyUGF5bWVudCkgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFZhbGlkYXRvcihwYXksc3RyaW5nLCh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSl1aW50NjQKCWNhbGxzdWIgYWRkVmFsaWRhdG9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkVmFsaWRhdG9yKG1iclBheW1lbnQ6IFBheVR4biwgbmZkTmFtZTogc3RyaW5nLCBjb25maWc6IFZhbGlkYXRvckNvbmZpZyk6IHVpbnQ2NAovLwovLyBBZGRzIGEgbmV3IHZhbGlkYXRvcgovLyBSZXF1aXJlcyBhdCBsZWFzdCAxMCBBTEdPIGFzIHRoZSAnZmVlJyBmb3IgdGhlIHRyYW5zYWN0aW9uIHRvIGhlbHAgZGlzc3VhZGUgc3BhbW1lZCB2YWxpZGF0b3IgYWRkcy4KLy8KLy8gQHBhcmFtIHtQYXlUeG59IG1iclBheW1lbnQgcGF5bWVudCBmcm9tIGNhbGxlciB3aGljaCBjb3ZlcnMgbWJyIGluY3JlYXNlIG9mIG5ldyB2YWxpZGF0b3Igc3RvcmFnZQovLyBAcGFyYW0ge3N0cmluZ30gbmZkTmFtZSAoT3B0aW9uYWwpIE5hbWUgb2YgbmZkICh1c2VkIGFzIGRvdWJsZS1jaGVjayBhZ2FpbnN0IGlkIHNwZWNpZmllZCBpbiBjb25maWcpCi8vIEBwYXJhbSB7VmFsaWRhdG9yQ29uZmlnfSBjb25maWcgVmFsaWRhdG9yQ29uZmlnIHN0cnVjdAovLyBAcmV0dXJucyB7dWludDY0fSB2YWxpZGF0b3IgaWQKYWRkVmFsaWRhdG9yOgoJcHJvdG8gMyAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDI4CgkvLyB0aGlzLnZhbGlkYXRlQ29uZmlnKGNvbmZpZykKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJY2FsbHN1YiB2YWxpZGF0ZUNvbmZpZwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjkKCS8vIGFzc2VydChjb25maWcub3duZXIgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMAoJLy8gYXNzZXJ0KGNvbmZpZy5tYW5hZ2VyICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDQwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDMxCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBjb25maWcub3duZXIsICdzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcicpCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJPT0KCgkvLyBzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMwoJLy8gdmVyaWZ5UGF5VHhuKG1iclBheW1lbnQsIHsgYW1vdW50OiB0aGlzLmdldE1ickFtb3VudHMoKS5hZGRWYWxpZGF0b3JNYnIgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkVmFsaWRhdG9yTWJyIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MzUKCS8vIGFzc2VydChtYnJQYXltZW50LmZlZSA+IDEwICogMTAwMDAwMCwgJ2ZlZSBtdXN0IGJlIDEwIEFMR08gb3IgbW9yZSB0byBwcmV2ZW50IHNwYW1taW5nIG9mIHZhbGlkYXRvcnMnKQoJZnJhbWVfZGlnIC0xIC8vIG1iclBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgRmVlCglpbnQgMTAwMDAwMDAKCT4KCgkvLyBmZWUgbXVzdCBiZSAxMCBBTEdPIG9yIG1vcmUgdG8gcHJldmVudCBzcGFtbWluZyBvZiB2YWxpZGF0b3JzCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM4CgkvLyB2YWxpZGF0b3JJZCA9IHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSArIDEKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM5CgkvLyB0aGlzLm51bVZhbGlkYXRvcnMudmFsdWUgPSB2YWxpZGF0b3JJZAoJYnl0ZSAweDZlNzU2ZDU2IC8vICJudW1WIgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmNyZWF0ZSgpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWludCAxMDkyCglib3hfY3JlYXRlCglwb3AKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQyCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZyA9IGNvbmZpZwoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmlkID0gdmFsaWRhdG9ySWQKCWludCAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDYKCS8vIGNvbmZpZy5uZmRGb3JJbmZvICE9PSAwCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWY1X2VuZAoKCS8vICppZjVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ0OAoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMubmZkUmVnaXN0cnlBcHBJZCksCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKGNvbmZpZy5uZmRGb3JJbmZvKV0sCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXSwKCS8vICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKQoJbG9hZCAyMDAgLy8gVE1QTF9uZmRSZWdpc3RyeUFwcElkCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDUwCgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgbmZkTmFtZSwgaXRvYihjb25maWcubmZkRm9ySW5mbyldCglieXRlIDB4Njk3MzVmNzY2MTZjNjk2NDVmNmU2NjY0NWY2MTcwNzA2OTY0IC8vICJpc192YWxpZF9uZmRfYXBwaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA3MiA4CglidG9pCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTEKCS8vIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDcyIDgKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25zCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTMKCS8vIGFzc2VydChidG9pKHRoaXMuaXR4bi5sYXN0TG9nKSA9PT0gMSwgInByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZCIpCglpdHhuIExhc3RMb2cKCWJ0b2kKCWludCAxCgk9PQoKCS8vIHByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ1NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IChBcHBJRC5mcm9tVWludDY0KGNvbmZpZy5uZmRGb3JJbmZvKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykgYXMgQWRkcmVzcyksCgkvLyAgICAgICAgICdJZiBzcGVjaWZ5aW5nIE5GRCwgYWNjb3VudCBhZGRpbmcgdmFsaWRhdG9yIG11c3QgYmUgb3duZXInCgkvLyAgICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoqaWY1X2VuZDoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDYxCgkvLyBjb25maWcuZW50cnlHYXRpbmdUeXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMgfHwKCS8vICAgICAgIGNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPT09IEdBVElOR19UWVBFX1NFR01FTlRfT0ZfTkZECglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgODAgMQoJYnRvaQoJaW50IDMKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgNAoJPT0KCXx8Cgoqc2tpcF9vcjA6CglieiAqaWY2X2VuZAoKCS8vICppZjZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ2NQoJLy8gYXNzZXJ0KHRoaXMuaXNORkRBcHBJRFZhbGlkKGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSksICdwcm92aWRlZCBORkQgQXBwIGlkIGZvciBnYXRpbmcgbXVzdCBiZSB2YWxpZCBORkQnKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzTkZEQXBwSURWYWxpZAoKCS8vIHByb3ZpZGVkIE5GRCBBcHAgaWQgZm9yIGdhdGluZyBtdXN0IGJlIHZhbGlkIE5GRAoJYXNzZXJ0CgoqaWY2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NjgKCS8vIHJldHVybiB2YWxpZGF0b3JJZDsKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCS8vIG1hbmFnZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobWFuYWdlcikgZm9yIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIG1hbmFnZXI6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIENoYW5nZXMgdGhlIFZhbGlkYXRvciBtYW5hZ2VyIGZvciBhIHNwZWNpZmljIFZhbGlkYXRvciBpZC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byBjaGFuZ2UgdGhlIG1hbmFnZXIgZm9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IG1hbmFnZXIgLSBUaGUgbmV3IG1hbmFnZXIgYWRkcmVzcy4KY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NzkKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDgzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyID0gbWFuYWdlcgoJaW50IDQwCglmcmFtZV9kaWcgLTIgLy8gbWFuYWdlcjogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbzoKCS8vIHN1bnNldHRpbmdUbzogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Vuc2V0dGluZ09uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBzdW5zZXR0aW5nT246IHVpbnQ2NCwgc3Vuc2V0dGluZ1RvOiBWYWxpZGF0b3JJZFR5cGUpOiB2b2lkCi8vCi8vIFVwZGF0ZXMgdGhlIHN1bnNldCBpbmZvcm1hdGlvbiBmb3IgYSBnaXZlbiB2YWxpZGF0b3IuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IgdG8gdXBkYXRlLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ09uIC0gVGhlIG5ldyBzdW5zZXQgdGltZXN0YW1wLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ1RvIC0gVGhlIG5ldyBzdW5zZXQgdG8gdmFsaWRhdG9yIGlkLgpjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ5NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdPbiA9IHN1bnNldHRpbmdPbgoJaW50IDIyNgoJZnJhbWVfZGlnIC0yIC8vIHN1bnNldHRpbmdPbjogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MDAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdUbyA9IHN1bnNldHRpbmdUbwoJaW50IDIzNAoJZnJhbWVfZGlnIC0zIC8vIHN1bnNldHRpbmdUbzogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodWludDY0LHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2hhbmdlVmFsaWRhdG9yTkZEKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yTkZECglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbmZkQXBwSUQ6IHVpbnQ2NCwgbmZkTmFtZTogc3RyaW5nKTogdm9pZAovLwovLyBDaGFuZ2VzIHRoZSBORkQgZm9yIGEgdmFsaWRhdG9yIGluIHRoZSB2YWxpZGF0b3JMaXN0IGNvbnRyYWN0LgovLyBbIE9OTFkgT1dORVIgQ0FOIENIQU5HRSBdCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yIHRvIHVwZGF0ZS4KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIGFwcGxpY2F0aW9uIGlkIG9mIHRoZSBORkQgdG8gYXNzaWduIHRvIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7c3RyaW5nfSBuZmROYW1lIC0gVGhlIG5hbWUgb2YgdGhlIE5GRCAod2hpY2ggbXVzdCBtYXRjaCkKY2hhbmdlVmFsaWRhdG9yTkZEOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxMwoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MTgKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxOQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MjAKCS8vIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTMgLy8gbmZkTmFtZTogc3RyaW5nCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyMQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCldCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSAoQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpLAoJLy8gICAgICAgJ0lmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyOAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IG5mZEFwcElECglpbnQgNzIKCWZyYW1lX2RpZyAtMiAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3M6CgkvLyBjb21taXNzaW9uQWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjb21taXNzaW9uQWRkcmVzcykgZm9yIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCgljYWxsc3ViIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ2hhbmdlIHRoZSBjb21taXNzaW9uIGFkZHJlc3MgdGhhdCB2YWxpZGF0b3IgcmV3YXJkcyBhcmUgc2VudCB0by4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQpjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzczoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MzYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTQwCgkvLyBhc3NlcnQoY29tbWlzc2lvbkFkZHJlc3MgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTIgLy8gY29tbWlzc2lvbkFkZHJlc3M6IEFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NDEKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzID0gY29tbWlzc2lvbkFkZHJlc3MKCWludCAxNzcKCWZyYW1lX2RpZyAtMiAvLyBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCS8vIFJld2FyZFBlclBheW91dDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA2CglidG9pCgoJLy8gR2F0aW5nQXNzZXRNaW5CYWxhbmNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWJ0b2kKCgkvLyBFbnRyeUdhdGluZ0Fzc2V0czogdWludDY0WzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKEVudHJ5R2F0aW5nQXNzZXRzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgdWludDY0WzRdCglhc3NlcnQKCgkvLyBFbnRyeUdhdGluZ0FkZHJlc3M6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoRW50cnlHYXRpbmdBZGRyZXNzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gRW50cnlHYXRpbmdUeXBlOiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDQgKEVudHJ5R2F0aW5nVHlwZSkgZm9yIGNoYW5nZVZhbGlkYXRvclJld2FyZEluZm8gbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4LCBFbnRyeUdhdGluZ0FkZHJlc3M6IEFkZHJlc3MsIEVudHJ5R2F0aW5nQXNzZXRzOiBTdGF0aWNBcnJheTx1aW50NjQsIDQ+LCBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NCwgUmV3YXJkUGVyUGF5b3V0OiB1aW50NjQpOiB2b2lkCi8vCi8vIEFsbG93IHRoZSBhZGRpdGlvbmFsIHJld2FyZHMgKGdhdGluZyBlbnRyeSwgYWRkaXRpb25hbCB0b2tlbiByZXdhcmRzKSBpbmZvcm1hdGlvbiBiZSBjaGFuZ2VkIGF0IHdpbGwuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCXByb3RvIDYgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NTYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTYxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPSBFbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJZnJhbWVfZGlnIC0yIC8vIEVudHJ5R2F0aW5nVHlwZTogdWludDgKCWl0b2IKCWV4dHJhY3QgNyAxCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjIKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQWRkcmVzcyA9IEVudHJ5R2F0aW5nQWRkcmVzcwoJaW50IDgxCglmcmFtZV9kaWcgLTMgLy8gRW50cnlHYXRpbmdBZGRyZXNzOiBBZGRyZXNzCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQXNzZXRzID0gRW50cnlHYXRpbmdBc3NldHMKCWludCAxMTMKCWZyYW1lX2RpZyAtNCAvLyBFbnRyeUdhdGluZ0Fzc2V0czogU3RhdGljQXJyYXk8dWludDY0LCA0PgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY0CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UgPSBHYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWZyYW1lX2RpZyAtNSAvLyBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRQZXJQYXlvdXQgPSBSZXdhcmRQZXJQYXlvdXQKCWludCAxNjEKCWZyYW1lX2RpZyAtNiAvLyBSZXdhcmRQZXJQYXlvdXQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfYWRkUG9vbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDIgKG1iclBheW1lbnQpIGZvciBhZGRQb29sIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGFkZFBvb2wKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhZGRQb29sKG1iclBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbm9kZU51bTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIGEgbmV3IHBvb2wgdG8gYSB2YWxpZGF0b3IncyBwb29sIHNldCwgcmV0dXJuaW5nIHRoZSAna2V5JyB0byByZWZlcmVuY2UgdGhlIHBvb2wgaW4gdGhlIGZ1dHVyZSBmb3Igc3Rha2luZywgZXRjLgovLyBUaGUgY2FsbGVyIG11c3QgcGF5IHRoZSBjb3N0IG9mIHRoZSB2YWxpZGF0b3JzIE1CUiBpbmNyZWFzZSBhcyB3ZWxsIGFzIHRoZSBNQlIgdGhhdCB3aWxsIGJlIG5lZWRlZCBmb3IgdGhlIHBvb2wgaXRzZWxmLgovLwovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gY2FsbCBdCi8vIEBwYXJhbSB7UGF5VHhufSBtYnJQYXltZW50IHBheW1lbnQgZnJvbSBjYWxsZXIgd2hpY2ggY292ZXJzIG1iciBpbmNyZWFzZSBvZiBhZGRpbmcgYSBuZXcgcG9vbAovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgaXMgaWQgb2YgdmFsaWRhdG9yIHRvIHBvb2wgdG8gKG11c3QgYmUgb3duZXIgb3IgbWFuYWdlcikKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0gaXMgbm9kZSBudW1iZXIgdG8gYWRkIHRvCi8vIEByZXR1cm5zIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sIGtleSB0byBjcmVhdGVkIHBvb2wKYWRkUG9vbDoKCXByb3RvIDMgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyIHx8CgkvLyAgICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CglkdXAKCWJueiAqc2tpcF9vcjEKCXR4biBTZW5kZXIKCWludCA0MAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCXx8Cgoqc2tpcF9vcjE6CgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1ODgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IGFtb3VudDogdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciwgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDggOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTAKCS8vIGFzc2VydCh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmV4aXN0cywgInNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQiKQoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU5MgoJLy8gbnVtUG9vbHM6IHVpbnQ2NCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBudW1Qb29sczogdWludDY0CgoJLy8gKmlmN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTMKCS8vIChudW1Qb29scyBhcyB1aW50NjQpID49IE1BWF9QT09MUwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaW50IDI0Cgk+PQoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGFscmVhZHkgYXQgbWF4IHBvb2wgc2l6ZQoJZXJyCgoqaWY3X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTYKCS8vIG51bVBvb2xzICs9IDEKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTkKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFsKCS8vICAgICAgICAgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5leHRyYWN0KDAsIDQwOTYpLAoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoNDA5NiwgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5zaXplIC0gNDA5NiksCgkvLyAgICAgICBdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpLAoJLy8gICAgICAgZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50LAoJLy8gICAgICAgZ2xvYmFsTnVtQnl0ZVNsaWNlOiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZSwKCS8vICAgICAgIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbCgkvLyAgICAgICAgIC8vIGNyZWF0aW5nQ29udHJhY3RJRCwgdmFsaWRhdG9ySWQsIHBvb2xJZCwgbWluRW50cnlTdGFrZQoJLy8gICAgICAgICBtZXRob2QoJ2NyZWF0ZUFwcGxpY2F0aW9uKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkJyksCgkvLyAgICAgICAgIGl0b2IodGhpcy5hcHAuaWQpLAoJLy8gICAgICAgICBpdG9iKHZhbGlkYXRvcklkKSwKCS8vICAgICAgICAgaXRvYihudW1Qb29scyBhcyB1aW50NjQpLAoJLy8gICAgICAgICBpdG9iKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1pbkVudHJ5U3Rha2UpLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjAwCgkvLyBvbkNvbXBsZXRpb246IE9uQ29tcGxldGlvbi5Ob09wCglpbnQgMCAvLyBOb09wCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDEKCS8vIGFwcHJvdmFsUHJvZ3JhbTogWwoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoMCwgNDA5NiksCgkvLyAgICAgICAgIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uZXh0cmFjdCg0MDk2LCB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUgLSA0MDk2KSwKCS8vICAgICAgIF0KCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCAwCglpbnQgNDA5NgoJYm94X2V4dHJhY3QKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCA0MDk2CglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUKCWFzc2VydAoJaW50IDQwOTYKCS0KCWJveF9leHRyYWN0CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbVBhZ2VzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNQoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNgoJLy8gZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMTEKCWl0eG5fZmllbGQgR2xvYmFsTnVtVWludAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDcKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCWludCAzCglpdHhuX2ZpZWxkIEdsb2JhbE51bUJ5dGVTbGljZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDgKCS8vIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzCglpbnQgMwoJaXR4bl9maWVsZCBFeHRyYVByb2dyYW1QYWdlcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDkKCS8vIGFwcGxpY2F0aW9uQXJnczogWwoJLy8gICAgICAgICAvLyBjcmVhdGluZ0NvbnRyYWN0SUQsIHZhbGlkYXRvcklkLCBwb29sSWQsIG1pbkVudHJ5U3Rha2UKCS8vICAgICAgICAgbWV0aG9kKCdjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCcpLAoJLy8gICAgICAgICBpdG9iKHRoaXMuYXBwLmlkKSwKCS8vICAgICAgICAgaXRvYih2YWxpZGF0b3JJZCksCgkvLyAgICAgICAgIGl0b2IobnVtUG9vbHMgYXMgdWludDY0KSwKCS8vICAgICAgICAgaXRvYih0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5taW5FbnRyeVN0YWtlKSwKCS8vICAgICAgIF0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAyMDkKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYxOQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyA9IG51bVBvb2xzIGFzIHVpbnQxNgoJaW50IDI0MgoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYyMgoJLy8gcG9vbEFwcElkID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklELmlkCglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjIzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW251bVBvb2xzIC0gMV0ucG9vbEFwcElkID0gcG9vbEFwcElkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAxIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjQKCS8vIHRoaXMuYWRkUG9vbFRvTm9kZSh2YWxpZGF0b3JJZCwgcG9vbEFwcElkLCBub2RlTnVtKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGFkZFBvb2xUb05vZGUKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjMyCgkvLyByZXR1cm4geyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogbnVtUG9vbHMgYXMgdWludDY0LCBwb29sQXBwSWQ6IHRoaXMuaXR4biEuY3JlYXRlZEFwcGxpY2F0aW9uSUQuaWQgfTsKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglmcmFtZV9kaWcgMCAvLyBudW1Qb29sczogdWludDY0CglpdG9iCgljb25jYXQKCWl0eG4gQ3JlYXRlZEFwcGxpY2F0aW9uSUQKCWl0b2IKCWNvbmNhdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc3Rha2VkQW1vdW50UGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc3Rha2VkQW1vdW50UGF5bWVudCkgZm9yIGFkZFN0YWtlIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBhZGRTdGFrZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgdmFsdWVUb1ZlcmlmeTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIHN0YWtlIHRvIGEgdmFsaWRhdG9yIHBvb2wuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gb25seSBpZiB2YWxpZGF0b3IgaGFzIGdhdGluZyB0byBlbnRlciAtIHRoaXMgaXMgYXNzZXQgaWQgb3IgbmZkIGlkIHRoYXQgY29ycmVzcG9uZHMgdG8gZ2F0aW5nLgovLyBUeG4gc2VuZGVyIGlzIGZhY3RvcmVkIGluIGFzIHdlbGwgaWYgdGhhdCBpcyBwYXJ0IG9mIGdhdGluZy4KLy8gKiBAcmV0dXJucyB7VmFsaWRhdG9yUG9vbEtleX0gLSBUaGUga2V5IG9mIHRoZSB2YWxpZGF0b3IgcG9vbC4KYWRkU3Rha2U6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA1CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0NQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAic3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyBzcGVjaWZpZWQgdmFsaWRhdG9yIGlkIGlzbid0IHZhbGlkCglhc3NlcnQKCgkvLyAqaWY4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uID4gMAoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPgoJYnogKmlmOF9lbmQKCgkvLyAqaWY4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NDkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uIDwgZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAsCgkvLyAgICAgICAgICJjYW4ndCBzdGFrZSB3aXRoIGEgdmFsaWRhdG9yIHRoYXQgaXMgcGFzdCBpdHMgc3Vuc2V0dGluZyB0aW1lIgoJLy8gICAgICAgKQoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglnbG9iYWwgTGF0ZXN0VGltZXN0YW1wCgk8CgoJLy8gY2FuJ3Qgc3Rha2Ugd2l0aCBhIHZhbGlkYXRvciB0aGF0IGlzIHBhc3QgaXRzIHN1bnNldHRpbmcgdGltZQoJYXNzZXJ0CgoqaWY4X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTUKCS8vIHN0YWtlciA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfYnVyeSAwIC8vIHN0YWtlcjogYWRkcmVzcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTkKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHN0YWtlciwKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoic3Rha2VyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSByZWNlaXZlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgUmVjZWl2ZXIKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoicmVjZWl2ZXIiLCJleHBlY3RlZCI6InRoaXMuYXBwLmFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY2NgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS50b3RhbEFsZ29TdGFrZWQgPCB0aGlzLm1heEFsbG93ZWRTdGFrZSgpLAoJLy8gICAgICAgJ3RvdGFsIHN0YWtlZCBmb3IgYWxsIG9mIGEgdmFsaWRhdG9ycyBwb29scyBtYXkgbm90IGV4Y2VlZCBoYXJkIGNhcCcKCS8vICAgICApCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWNhbGxzdWIgbWF4QWxsb3dlZFN0YWtlCgk8CgoJLy8gdG90YWwgc3Rha2VkIGZvciBhbGwgb2YgYSB2YWxpZGF0b3JzIHBvb2xzIG1heSBub3QgZXhjZWVkIGhhcmQgY2FwCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjczCgkvLyB0aGlzLmRvZXNTdGFrZXJNZWV0R2F0aW5nKHZhbGlkYXRvcklkLCB2YWx1ZVRvVmVyaWZ5KQoJZnJhbWVfZGlnIC0zIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZG9lc1N0YWtlck1lZXRHYXRpbmcKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njc1CgkvLyByZWFsQW1vdW50ID0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfYnVyeSAxIC8vIHJlYWxBbW91bnQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzYKCS8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gbWJyQW10TGVmdEJlaGluZDogdWludDY0CgoJLy8gKmlmOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzgKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCSEKCWJ6ICppZjlfZW5kCgoJLy8gKmlmOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgxCgkvLyBtYnJBbXRMZWZ0QmVoaW5kID0gdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkU3Rha2VyTWJyCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWV4dHJhY3QgMjQgOAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODIKCS8vIHJlYWxBbW91bnQgLT0gbWJyQW10TGVmdEJlaGluZAoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYnJBbXRMZWZ0QmVoaW5kOiB1aW50NjQKCS0KCWZyYW1lX2J1cnkgMSAvLyByZWFsQW1vdW50OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgzCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5jcmVhdGUoKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCgljb25jYXQKCWludCAxNDQKCWJveF9jcmVhdGUKCXBvcAoKKmlmOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg3CgkvLyBmaW5kUmV0ID0gdGhpcy5maW5kUG9vbEZvclN0YWtlcih2YWxpZGF0b3JJZCwgc3Rha2VyLCByZWFsQW1vdW50KQoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGZpbmRQb29sRm9yU3Rha2VyCglmcmFtZV9idXJ5IDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODgKCS8vIHBvb2xLZXkgPSBmaW5kUmV0WzBdCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg5CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmluZFJldFsxXQoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxOTIKCWdldGJpdAoJZnJhbWVfYnVyeSA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkwCgkvLyBpc05ld1N0YWtlclRvUHJvdG9jb2wgPSBmaW5kUmV0WzJdCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJZ2V0Yml0CglmcmFtZV9idXJ5IDUgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkxCgkvLyBwb29sS2V5LnBvb2xJZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEwX2VuZAoKCS8vICppZjEwX2NvbnNlcXVlbnQKCS8vIE5vIHBvb2wgYXZhaWxhYmxlIHdpdGggZnJlZSBzdGFrZS4gIFZhbGlkYXRvciBuZWVkcyB0byBhZGQgYW5vdGhlciBwb29sCgllcnIKCippZjEwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTYKCS8vIHRoaXMudXBkYXRlU3Rha2VyUG9vbFNldChzdGFrZXIsIHBvb2xLZXkpCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNhbGxzdWIgdXBkYXRlU3Rha2VyUG9vbFNldAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTkKCS8vIHRoaXMuY2FsbFBvb2xBZGRTdGFrZSgKCS8vICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQsCgkvLyAgICAgICBwb29sS2V5LAoJLy8gICAgICAgbWJyQW10TGVmdEJlaGluZCwKCS8vICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICBpc05ld1N0YWtlclRvUHJvdG9jb2wKCS8vICAgICApCglmcmFtZV9kaWcgNSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCWZyYW1lX2RpZyA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCWZyYW1lX2RpZyAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCAyNAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJY2FsbHN1YiBjYWxsUG9vbEFkZFN0YWtlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjcxNAoJLy8gcmV0dXJuIHBvb2xLZXk7CglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNQoJcmV0c3ViCgovLyBzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpCiphYmlfcm91dGVfc2V0VG9rZW5QYXlvdXRSYXRpbzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgc2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoJY2FsbHN1YiBzZXRUb2tlblBheW91dFJhdGlvCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyBpcyBjYWxsZWQgYnkgU3Rha2luZyBQb29sICMgMSAoT05MWSkgdG8gYXNrIHRoZSB2YWxpZGF0b3IgKHVzKSB0byBjYWxjdWxhdGUgdGhlIHJhdGlvcwovLyBvZiBzdGFrZSBpbiB0aGUgcG9vbHMgZm9yIHN1YnNlcXVlbnQgdG9rZW4gcGF5b3V0cyAoaWU6IDIgcG9vbHMsICcxMDAnIGFsZ28gdG90YWwgc3Rha2VkLCA2MCBpbiBwb29sIDEsIGFuZCA0MAovLyBpbiBwb29sIDIpICBUaGlzIGlzIGRvbmUgc28gd2UgaGF2ZSBhIHN0YWJsZSBzbmFwc2hvdCBvZiBzdGFrZSAtIHRha2VuIG9uY2UgcGVyIGVwb2NoIC0gb25seSB0cmlnZ2VyZWQgYnkKLy8gcG9vbCAxIGRvaW5nIHBheW91dC4gIHBvb2xzIG90aGVyIHRoYW4gMSBkb2luZyBwYXlvdXQgY2FsbCBwb29sIDEgdG8gYXNrIGl0IGRvIGl0IGZpcnN0LgovLyBJdCB3b3VsZCBiZSA2MC80MCUgaW4gdGhlIHBvb2xQY3RPZldob2xlIHZhbHVlcy4gIFRoZSB0b2tlbiByZXdhcmQgcGF5b3V0cyB0aGVuIHVzZSB0aGVzZSB2YWx1ZXMgaW5zdGVhZCBvZgovLyB0aGVpciAnY3VycmVudCcgc3Rha2Ugd2hpY2ggY2hhbmdlcyBhcyBwYXJ0IG9mIHRoZSBwYXlvdXRzIHRoZW1zZWx2ZXMgKGFuZCBwZW9wbGUgY291bGQgYmUgY2hhbmdpbmcgc3Rha2UKLy8gZHVyaW5nIHRoZSBlcG9jaCB1cGRhdGVzIGFjcm9zcyBwb29scykKLy8KLy8gTXVsdGlwbGUgcG9vbHMgd2lsbCBjYWxsIHVzIHZpYSBwb29sIDEgKHBvb2wyLT5wb29sMS0+dmFsaWRhdG9yLCBldGMuKSBzbyBkb24ndCBhc3NlcnQgb24gcG9vbDEgY2FsbGluZyBtdWx0aXBsZQovLyB0aW1lcyBpbiBzYW1lIGVwb2NoLiAgSnVzdCByZXR1cm4uCi8vCi8vIEBwYXJhbSB2YWxpZGF0b3JJZCAtIHZhbGlkYXRvciBpZCAoYW5kIHRodXMgcG9vbCkgY2FsbGluZyB1cy4gIFZlcmlmaWVkIHNvIHRoYXQgc2VuZGVyIE1VU1QgYmUgcG9vbCAxIG9mIHRoaXMgdmFsaWRhdG9yLgovLyBAcmV0dXJucyBQb29sVG9rZW5QYXlvdXRSYXRpbyAtIHRoZSBmaW5pc2hlZCByYXRpbyBkYXRhCnNldFRva2VuUGF5b3V0UmF0aW86Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjczNAoJLy8gcG9vbDFBcHBJRCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbMF0ucG9vbEFwcElkCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzM1CgkvLyBhc3NlcnQocG9vbDFBcHBJRCAhPT0gMCkKCWZyYW1lX2RpZyAwIC8vIHBvb2wxQXBwSUQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzcKCS8vIHRoaXMudHhuLnNlbmRlciAhPT0gQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5hZGRyZXNzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJIT0KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzgKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMSAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NQoJLy8gbGFzdFBheW91dFVwZGF0ZSA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpby51cGRhdGVkRm9yUGF5b3V0CglpbnQgODkyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDYKCS8vIGxhc3RQYXlvdXRVcGRhdGUgIT09IDAKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJaW50IDAKCSE9CglieiAqaWYxMl9lbmQKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyAqaWYxM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDgKCS8vIChBcHBJRC5mcm9tVWludDY0KHBvb2wxQXBwSUQpLmdsb2JhbFN0YXRlKCdsYXN0UGF5b3V0JykgYXMgdWludDY0KSA9PT0gbGFzdFBheW91dFVwZGF0ZQoJZnJhbWVfZGlnIDAgLy8gcG9vbDFBcHBJRDogdWludDY0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5nbG9iYWxTdGF0ZSgnbGFzdFBheW91dCcpCglhc3NlcnQKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1MQoJLy8gZXBvY2hSb3VuZExlbmd0aCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVwb2NoUm91bmRMZW5ndGggYXMgdWludDY0CglpbnQgMTY5CglpbnQgNAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzUyCgkvLyB0aGlzRXBvY2hCZWdpbiA9IGN1clJvdW5kIC0gKGN1clJvdW5kICUgZXBvY2hSb3VuZExlbmd0aCkKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfYnVyeSA0IC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCgkvLyAqaWYxNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTQKCS8vIGxhc3RQYXlvdXRVcGRhdGUgLSAobGFzdFBheW91dFVwZGF0ZSAlIGVwb2NoUm91bmRMZW5ndGgpID09PSB0aGlzRXBvY2hCZWdpbgoJZnJhbWVfZGlnIDIgLy8gbGFzdFBheW91dFVwZGF0ZTogdWludDY0CglmcmFtZV9kaWcgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfZGlnIDQgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJPT0KCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTUKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTRfZW5kOgoKKmlmMTJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnVwZGF0ZWRGb3JQYXlvdXQgPSBjdXJSb3VuZAoJaW50IDg5MgoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYwCgkvLyBjdXJOdW1Qb29scyA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNSAvLyBjdXJOdW1Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MQoJLy8gdG90YWxTdGFrZUZvclZhbGlkYXRvciA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUudG90YWxBbGdvU3Rha2VkCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyB0b3RhbFN0YWtlRm9yVmFsaWRhdG9yOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYyCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MgoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA1IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzY3CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgW3RoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbaV0udG90YWxBbGdvU3Rha2VkLCAxXzAwMF8wMDBdLAoJLy8gICAgICAgICBbdG90YWxTdGFrZUZvclZhbGlkYXRvcl0KCS8vICAgICAgICkKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaW50IDFfMDAwXzAwMAoJbXVsdwoJaW50IDAKCWZyYW1lX2RpZyA2IC8vIHRvdGFsU3Rha2VGb3JWYWxpZGF0b3I6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgOCAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc3MQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnBvb2xQY3RPZldob2xlW2ldID0gb3VyUG9vbFBjdE9mV2hvbGUKCWludCA3MDAKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIDggLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCipmb3JfMl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NjIKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzczCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvOwoJaW50IDcwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMjAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoKKnNldFRva2VuUGF5b3V0UmF0aW8qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gOAoJcmV0c3ViCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKCh1aW50NjQsdWludDY0LHVpbnQ2NCksdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzOgoJLy8gc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglidG9pCgoJLy8gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYWxnb1RvQWRkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIHN0YWtlVXBkYXRlZFZpYVJld2FyZHMoKHVpbnQ2NCx1aW50NjQsdWludDY0KSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzCglpbnQgMQoJcmV0dXJuCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXksIGFsZ29Ub0FkZDogdWludDY0LCByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQsIHZhbGlkYXRvckNvbW1pc3Npb246IHVpbnQ2NCwgc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0KTogdm9pZAovLwovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIGlzIGNhbGxlZCBieSBTdGFraW5nIHBvb2xzIHRvIGluZm9ybSB0aGUgdmFsaWRhdG9yICh1cykgdGhhdCBhIHBhcnRpY3VsYXIgYW1vdW50IG9mIHRvdGFsCi8vIHN0YWtlIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIFRoZSBjYWxsaW5nIEFwcCBpZCBpcyB2YWxpZGF0ZWQgYWdhaW5zdCBvdXIgcG9vbCBsaXN0IGFzIHdlbGwuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFZhbGlkYXRvclBvb2xLZXkgdHlwZQovLyBAcGFyYW0ge3VpbnQ2NH0gYWxnb1RvQWRkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzCi8vIEBwYXJhbSB7dWludDY0fSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzICh0aGF0IHNob3VsZCBiZQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9yQ29tbWlzc2lvbiAtIHRoZSBjb21taXNzaW9uIGFtb3VudCB0aGUgdmFsaWRhdG9yIHdhcyBwYWlkLCBpZiBhbnkKLy8gQHBhcmFtIHt1aW50NjR9IHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbmsgLSBpZiB0aGUgcG9vbCB3YXMgaW4gc2F0dXJhdGVkIHN0YXRlLCB0aGUgYW1vdW50IHNlbnQgYmFjayB0byB0aGUgZmVlIHNpbmsuCi8vIHNlZW4gYXMgJ2FjY291bnRlZCBmb3IvcGVuZGluZyBzcGVudCcpCnN0YWtlVXBkYXRlZFZpYVJld2FyZHM6Cglwcm90byA1IDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk0CgkvLyB0aGlzLnZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CgljYWxsc3ViIHZlcmlmeVBvb2xLZXlDYWxsZXIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgKz0gYWxnb1RvQWRkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc5OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBhbGdvVG9BZGQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFsZ29Ub0FkZDogdWludDY0CgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk5CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjayArPSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkCglpbnQgMjYwCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQKCSsKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MDEKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IGFsZ29Ub0FkZAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODA0CgkvLyB0aGlzLnJldmVyaWZ5TkZET3duZXJzaGlwKHBvb2xLZXkuaWQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWNhbGxzdWIgcmV2ZXJpZnlORkRPd25lcnNoaXAKCXJldHN1YgoKLy8gc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoqYWJpX3JvdXRlX3N0YWtlUmVtb3ZlZDoKCS8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXJSZW1vdmVkKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoc3Rha2VyKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVJlbW92ZWQgbXVzdCBiZSBhICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCWFzc2VydAoKCS8vIGV4ZWN1dGUgc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoJY2FsbHN1YiBzdGFrZVJlbW92ZWQKCWludCAxCglyZXR1cm4KCi8vIHN0YWtlUmVtb3ZlZChwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBzdGFrZXI6IEFkZHJlc3MsIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NCwgcmV3YXJkUmVtb3ZlZDogdWludDY0LCBzdGFrZXJSZW1vdmVkOiBib29sZWFuKTogdm9pZAovLwovLyBzdGFrZVJlbW92ZWQgaXMgY2FsbGVkIGJ5IFN0YWtpbmcgcG9vbHMgdG8gaW5mb3JtIHRoZSB2YWxpZGF0b3IgKHVzKSB0aGF0IGEgcGFydGljdWxhciBhbW91bnQgb2YgdG90YWwgc3Rha2UgaGFzIGJlZW4gcmVtb3ZlZAovLyBmcm9tIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIElmIGFueSBhbW91bnQgb2YgcmV3YXJkUmVtb3ZlZCBpcyBzcGVjaWZpZWQsIHRoZW4gdGhhdCBhbW91bnQgb2YgcmV3YXJkIGlzIHNlbnQgdG8gdGhlIHVzZQovLyBUaGUgY2FsbGluZyBBcHAgaWQgaXMgdmFsaWRhdGVkIGFnYWluc3Qgb3VyIHBvb2wgbGlzdCBhcyB3ZWxsLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvclBvb2xLZXl9IHBvb2xLZXkgY2FsbGluZyB1cyBmcm9tIHdoaWNoIHN0YWtlIHdhcyByZW1vdmVkCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRSZW1vdmVkIC0gYWxnbyBhbW91bnQgcmVtb3ZlZAovLyBAcGFyYW0ge3VpbnQ2NH0gcmV3YXJkUmVtb3ZlZCAtIGlmIGFwcGxpY2FibGUsIGFtb3VudCBvZiB0b2tlbiByZXdhcmQgcmVtb3ZlZCAoYnkgcG9vbCAxIGNhbGxlcikgb3IgVE8gcmVtb3ZlIGFuZCBwYXkgb3V0ICh2aWEgcG9vbCAxIGZyb20gZGlmZmVyZW50IHBvb2wgY2FsbGVyKQovLyBAcGFyYW0ge2Jvb2xlYW59IHN0YWtlclJlbW92ZWQKc3Rha2VSZW1vdmVkOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vICppZjE1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgzNgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE1X2VuZAoKCS8vICppZjE1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzkKCS8vIHRoaXMudmVyaWZ5UG9vbEtleUNhbGxlcihwb29sS2V5KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWNhbGxzdWIgdmVyaWZ5UG9vbEtleUNhbGxlcgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDMKCS8vIGFzc2VydChhbW91bnRSZW1vdmVkID4gMCB8fCByZXdhcmRSZW1vdmVkID4gMCwgJ3Nob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZCcpCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJZHVwCglibnogKnNraXBfb3IyCglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJfHwKCipza2lwX29yMjoKCS8vIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzW3Bvb2xLZXkucG9vbElkIC0gMV0udG90YWxBbGdvU3Rha2VkIC09IGFtb3VudFJlbW92ZWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCAtPSBhbW91bnRSZW1vdmVkCglpbnQgMjUyCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCS0KCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC09IGFtb3VudFJlbW92ZWQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vICppZjE2X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MAoJLy8gcmV3YXJkUmVtb3ZlZCA+IDAKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYxNl9lbHNlCgoJLy8gKmlmMTZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MQoJLy8gcmV3YXJkVG9rZW5JRCA9IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5jb25maWcucmV3YXJkVG9rZW5JZAoJaW50IDE1MwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTIKCS8vIGFzc2VydChyZXdhcmRUb2tlbklEICE9PSAwLCAicmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hIikKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gcmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODUzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrID49IHJld2FyZFJlbW92ZWQsCgkvLyAgICAgICAgICdyZXdhcmQgYmVpbmcgcmVtb3ZlZCBtdXN0IGJlIGNvdmVyZWQgYnkgaG9sZCBiYWNrIGFtb3VudCcKCS8vICAgICAgICkKCWludCAyNjAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCT49CgoJLy8gcmV3YXJkIGJlaW5nIHJlbW92ZWQgbXVzdCBiZSBjb3ZlcmVkIGJ5IGhvbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrIC09IHJld2FyZFJlbW92ZWQKCWludCAyNjAKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmMTdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODY0CgkvLyBwb29sS2V5LnBvb2xJZCAhPT0gMQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJIT0KCWJ6ICppZjE3X2VuZAoKCS8vICppZjE3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjUKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucGF5VG9rZW5SZXdhcmQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpLAoJLy8gICAgICAgICAgIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjYKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzWzBdLnBvb2xBcHBJZCkKCWludCAyNjgKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjcKCS8vIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYxN19lbmQ6CgliICppZjE2X2VuZAoKKmlmMTZfZWxzZToKCippZjE2X2VuZDoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg5MgoJLy8gc3Rha2VyUmVtb3ZlZAoJZnJhbWVfZGlnIC01IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2xlYW4KCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTQKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJLQoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTYKCS8vIHJlbW92ZVJldCA9IHRoaXMucmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQoc3Rha2VyLCA8VmFsaWRhdG9yUG9vbEtleT57CgkvLyAgICAgICAgIGlkOiBwb29sS2V5LmlkLAoJLy8gICAgICAgICBwb29sSWQ6IHBvb2xLZXkucG9vbElkLAoJLy8gICAgICAgICBwb29sQXBwSWQ6IHBvb2xLZXkucG9vbEFwcElkLAoJLy8gICAgICAgfSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJY2FsbHN1YiByZW1vdmVGcm9tU3Rha2VyUG9vbFNldAoJZnJhbWVfYnVyeSAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTAxCgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IgPSByZW1vdmVSZXRbMF0KCWZyYW1lX2RpZyAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZ2V0Yml0CglmcmFtZV9idXJ5IDIgLy8gc3Rha2VyT3V0T2ZUaGlzVmFsaWRhdG9yOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwMgoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbCA9IHJlbW92ZVJldFsxXQoJZnJhbWVfZGlnIDEgLy8gcmVtb3ZlUmV0OiAoYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglnZXRiaXQKCWZyYW1lX2J1cnkgMyAvLyBzdGFrZXJPdXRPZlByb3RvY29sOiBib29sCgoJLy8gKmlmMTlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTA0CgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIHN0YWtlck91dE9mVGhpc1ZhbGlkYXRvcjogYm9vbAoJYnogKmlmMTlfZW5kCgoJLy8gKmlmMTlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwNQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgktCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjE5X2VuZDoKCS8vICppZjIwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOAoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbAoJZnJhbWVfZGlnIDMgLy8gc3Rha2VyT3V0T2ZQcm90b2NvbDogYm9vbAoJYnogKmlmMjBfZW5kCgoJLy8gKmlmMjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOQoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlIC09IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJLQoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCippZjIwX2VuZDoKCippZjE4X2VuZDoKCXJldHN1YgoKLy8gZmluZFBvb2xGb3JTdGFrZXIodWludDY0LGFkZHJlc3MsdWludDY0KSgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9maW5kUG9vbEZvclN0YWtlcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYW1vdW50VG9TdGFrZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlcikgZm9yIGZpbmRQb29sRm9yU3Rha2VyIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJY2FsbHN1YiBmaW5kUG9vbEZvclN0YWtlcgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZpbmRQb29sRm9yU3Rha2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHN0YWtlcjogQWRkcmVzcywgYW1vdW50VG9TdGFrZTogdWludDY0KTogW1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW5dCi8vCi8vIEZpbmRzIHRoZSBwb29sIGZvciBhIHN0YWtlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgdmFsaWRhdG9yIGlkLCBzdGFrZXIgYWRkcmVzcywgYW5kIGFtb3VudCB0byBzdGFrZS4KLy8gRmlyc3QgY2hlY2tzIHRoZSBzdGFrZXJzICdhbHJlYWR5IHN0YWtlZCBsaXN0JyBmb3IgdGhlIHZhbGlkYXRvciBwcmVmZXJyaW5nIHRob3NlIChhZGRpbmcgaWYgcG9zc2libGUpIHRoZW4gYWRkcwovLyB0byBuZXcgcG9vbCBpZiBuZWNlc3NhcnkuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1N0YWtlIC0gVGhlIGFtb3VudCB0byBzdGFrZS4KLy8gQHJldHVybnMge1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW59IC0gVGhlIHBvb2wgZm9yIHRoZSBzdGFrZXIsIHRydWUvZmFsc2Ugb24gd2hldGhlciB0aGUgc3Rha2VyIGlzICduZXcnCi8vIHRvIHRoaXMgVkFMSURBVE9SLCBhbmQgdHJ1ZS9mYWxzZSBpZiBzdGFrZXIgaXMgbmV3IHRvIHRoZSBwcm90b2NvbC4KZmluZFBvb2xGb3JTdGFrZXI6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA3CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzMAoJLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MzEKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzOQoJLy8gbWF4UGVyUG9vbCA9IHRoaXMuZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sCglmcmFtZV9idXJ5IDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoJLy8gKmlmMjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQyCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMiAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglieiAqaWYyMV9lbmQKCgkvLyAqaWYyMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQzCgkvLyBwb29sU2V0ID0gY2xvbmUodGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUpCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlCglhc3NlcnQKCWZyYW1lX2J1cnkgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NAoJLy8gYXNzZXJ0KHZhbGlkYXRvcklkICE9PSAwKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWludCAwCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBwb29sU2V0Lmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfMzoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDUKCS8vIGkgPCBwb29sU2V0Lmxlbmd0aAoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjIyX2VuZDoKCS8vICppZjIzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0OQoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYyM19lbmQKCgkvLyAqaWYyM19jb25zZXF1ZW50CgliICpmb3JfM19jb250aW51ZQoKKmlmMjNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1MgoJLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTUzCgkvLyBwb29sU2V0W2ldLmlkID09PSB2YWxpZGF0b3JJZAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCT09CglieiAqaWYyNF9lbmQKCgkvLyAqaWYyNF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTU1CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1twb29sU2V0W2ldLnBvb2xJZCAtIDFdLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0KCS8vICAgICAgICAgICAgIG1heFBlclBvb2wKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRUb1N0YWtlOiB1aW50NjQKCSsKCWZyYW1lX2RpZyAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoJPD0KCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjAKCS8vIHJldHVybiBbcG9vbFNldFtpXSwgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwgaXNOZXdTdGFrZXJUb1Byb3RvY29sXTsKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjVfZW5kOgoKKmlmMjRfZW5kOgoKKmZvcl8zX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgliICpmb3JfMwoKKmZvcl8zX2VuZDoKCippZjIxX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjcKCS8vIGFzc2VydCgKCS8vICAgICAgIGFtb3VudFRvU3Rha2UgPj0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWluRW50cnlTdGFrZSwKCS8vICAgICAgICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU3Rha2U6IHVpbnQ2NAoJaW50IDIwOQoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk+PQoKCS8vIG11c3Qgc3Rha2UgYXQgbGVhc3QgdGhlIG1pbmltdW0gZm9yIHRoaXMgcG9vbAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3MwoJLy8gcG9vbHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzKQoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglpbnQgNDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA1IC8vIHBvb2xzOiAodWludDY0LHVpbnQxNix1aW50NjQpWzI0XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzQKCS8vIGN1ck51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc1CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl80OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfNF9lbmQKCgkvLyAqaWYyNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzYKCS8vIHBvb2xzW2ldLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0gbWF4UGVyUG9vbAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50VG9TdGFrZTogdWludDY0CgkrCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTw9CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc3CgkvLyByZXR1cm4gWwoJLy8gICAgICAgICAgIHsgaWQ6IHZhbGlkYXRvcklkLCBwb29sSWQ6IGkgKyAxLCBwb29sQXBwSWQ6IHBvb2xzW2ldLnBvb2xBcHBJZCB9LAoJLy8gICAgICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICAgICAgaXNOZXdTdGFrZXJUb1Byb3RvY29sLAoJLy8gICAgICAgICBdOwoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjZfZW5kOgoKKmZvcl80X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgliICpmb3JfNAoKKmZvcl80X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5ODUKCS8vIHJldHVybiBbeyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogMCwgcG9vbEFwcElkOiAwIH0sIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsIGlzTmV3U3Rha2VyVG9Qcm90b2NvbF07CglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwCglpbnQgMAoJZnJhbWVfZGlnIDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoJc2V0Yml0CglpbnQgMQoJZnJhbWVfZGlnIDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCglzZXRiaXQKCWNvbmNhdAoKKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDcKCXJldHN1YgoKLy8gbW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX21vdmVQb29sVG9Ob2RlOgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcG9vbEFwcElkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBtb3ZlUG9vbFRvTm9kZSh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIG1vdmVQb29sVG9Ob2RlCglpbnQgMQoJcmV0dXJuCgovLyBtb3ZlUG9vbFRvTm9kZSh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBwb29sQXBwSWQ6IHVpbnQ2NCwgbm9kZU51bTogdWludDY0KTogdm9pZAovLwovLyBGaW5kIHRoZSBzcGVjaWZpZWQgcG9vbCAoaW4gYW55IG5vZGUgbnVtYmVyKSBhbmQgbW92ZSBpdCB0byB0aGUgc3BlY2lmaWVkIG5vZGUuCi8vIFRoZSBwb29sIGFjY291bnQgaXMgZm9yY2VkIG9mZmxpbmUgaWYgbW92ZWQgc28gcHJpb3Igbm9kZSB3aWxsIHN0aWxsIHJ1biBmb3IgMzIwIHJvdW5kcyBidXQKLy8gbmV3IGtleSBnb2VzIG9ubGluZSBvbiBuZXcgbm9kZSBzb29uIGFmdGVyICgzMjAgcm91bmRzIGFmdGVyIGl0IGdvZXMgb25saW5lKQovLyBOby1vcCBpZiBzdWNjZXNzLCBhc3NlcnRzIGlmIG5vdCBmb3VuZCBvciBjYW4ndCBtb3ZlICAobm8gc3BhY2UgaW4gdGFyZ2V0KQovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSBwb29sQXBwSWQKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0KbW92ZVBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDEKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIgfHwKCS8vICAgICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCWR1cAoJYm56ICpza2lwX29yMwoJdHhuIFNlbmRlcgoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoJfHwKCipza2lwX29yMzoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDcKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDA4CgkvLyBhc3NlcnQobm9kZU51bSA+PSAxICYmIG5vZGVOdW0gPD0gTUFYX05PREVTLCAnbm9kZSBudW1iZXIgb3V0IG9mIGFsbG93YWJsZSByYW5nZScpCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDgKCTw9CgkmJgoKKnNraXBfYW5kMToKCS8vIG5vZGUgbnVtYmVyIG91dCBvZiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBmb3IgKGxldCBzcmNOb2RlSWR4ID0gMDsgc3JjTm9kZUlkeCA8IE1BWF9OT0RFUzsgc3JjTm9kZUlkeCArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCipmb3JfNToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBzcmNOb2RlSWR4IDwgTUFYX05PREVTCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCWludCA4Cgk8CglieiAqZm9yXzVfZW5kCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgTUFYX1BPT0xTX1BFUl9OT0RFOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl82OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGkgPCBNQVhfUE9PTFNfUEVSX05PREUKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDMKCTwKCWJ6ICpmb3JfNl9lbmQKCgkvLyAqaWYyN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEyCgkvLyBub2RlUG9vbEFzc2lnbm1lbnRzLm5vZGVzW3NyY05vZGVJZHhdLnBvb2xBcHBJZHNbaV0gPT09IHBvb2xBcHBJZAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0Cgk9PQoJYnogKmlmMjdfZW5kCgoJLy8gKmlmMjdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTMKCS8vIGFzc2VydChub2RlTnVtIC0gMSAhPT0gc3JjTm9kZUlkeCwgImNhbid0IG1vdmUgdG8gc2FtZSBub2RlIikKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCSE9CgoJLy8gY2FuJ3QgbW92ZSB0byBzYW1lIG5vZGUKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbc3JjTm9kZUlkeF0ucG9vbEFwcElkc1tpXSA9IDAKCWludCA5MDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE4CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLmdvT2ZmbGluZT4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLAoJLy8gICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnb09mZmxpbmUoKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE5CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDIzCgkvLyB0aGlzLmFkZFBvb2xUb05vZGUodmFsaWRhdG9ySWQsIHBvb2xBcHBJZCwgbm9kZU51bSkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgYWRkUG9vbFRvTm9kZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDI0CgkvLyByZXR1cm47CglyZXRzdWIKCippZjI3X2VuZDoKCipmb3JfNl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDExCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl82CgoqZm9yXzZfZW5kOgoKKmZvcl81X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTAKCS8vIHNyY05vZGVJZHggKz0gMQoJZnJhbWVfZGlnIDEgLy8gc3JjTm9kZUlkeDogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJYiAqZm9yXzUKCipmb3JfNV9lbmQ6CgkvLyBjb3VsZG4ndCBmaW5kIHBvb2wgYXBwIGlkIGluIG5vZGVzIHRvIG1vdmUKCWVycgoJcmV0c3ViCgovLyBlbXB0eVRva2VuUmV3YXJkcyh1aW50NjQsYWRkcmVzcyl1aW50NjQKKmFiaV9yb3V0ZV9lbXB0eVRva2VuUmV3YXJkczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciBlbXB0eVRva2VuUmV3YXJkcyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0CgljYWxsc3ViIGVtcHR5VG9rZW5SZXdhcmRzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlUb2tlblJld2FyZHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgcmVjZWl2ZXI6IEFkZHJlc3MpOiB1aW50NjQKLy8KLy8gU2VuZHMgdGhlIHJld2FyZCB0b2tlbnMgaGVsZCBpbiBwb29sIDEgdG8gc3BlY2lmaWVkIHJlY2VpdmVyLgovLyBUaGlzIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgYnkgdGhlIG93bmVyIHdoZW4gdGhleSB3YW50IHRvIGdldCByZXdhcmQgdG9rZW5zICdiYWNrJyB3aGljaCB0aGV5IHNlbnQgdG8KLy8gdGhlIGZpcnN0IHBvb2wgKGxpa2VseSBiZWNhdXNlIHZhbGlkYXRvciBpcyBzdW5zZXR0aW5nLiAgQW55IHRva2VucyBjdXJyZW50bHkgJ3Jlc2VydmVkJyBmb3Igc3Rha2VycyB0byBjbGFpbSB3aWxsCi8vIE5PVCBiZSBzZW50IGFzIHRoZXkgbXVzdCBiZSBoZWxkIGJhY2sgZm9yIHN0YWtlcnMgdG8gbGF0ZXIgY2xhaW0uCi8vIFsgT05MWSBPV05FUiBDQU4gQ0FMTF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7QWRkcmVzc30gcmVjZWl2ZXIgLSB0aGUgYWNjb3VudCB0byBzZW5kIHRoZSB0b2tlbnMgdG8gKG11c3QgYWxyZWFkeSBiZSBvcHRlZC1pbiB0byB0aGUgcmV3YXJkIHRva2VuKQovLyBAcmV0dXJucyB7dWludDY0fSB0aGUgYW1vdW50IG9mIHJld2FyZCB0b2tlbiBzZW50CmVtcHR5VG9rZW5SZXdhcmRzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDQzCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXInCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDcKCS8vIHJld2FyZFRva2VuSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRUb2tlbklkCglpbnQgMTUzCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA0OAoJLy8gcmV3YXJkVG9rZW5IZWxkQmFjayA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJaW50IDI2MAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDkKCS8vIGFzc2VydChyZXdhcmRUb2tlbklkICE9PSAwLCAidGhpcyB2YWxpZGF0b3IgZG9lc24ndCBoYXZlIGEgcmV3YXJkIHRva2VuIGRlZmluZWQiKQoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0CglpbnQgMAoJIT0KCgkvLyB0aGlzIHZhbGlkYXRvciBkb2Vzbid0IGhhdmUgYSByZXdhcmQgdG9rZW4gZGVmaW5lZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTAKCS8vIHBvb2xPbmVBcHBJZCA9IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDUyCgkvLyB0b2tlblJld2FyZEJhbCA9IHBvb2xPbmVBcHBJZC5hZGRyZXNzLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQocmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDIgLy8gcG9vbE9uZUFwcElkOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgktCglmcmFtZV9idXJ5IDMgLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU1CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLnBheVRva2VuUmV3YXJkPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQsCgkvLyAgICAgICBtZXRob2RBcmdzOiBbcmVjZWl2ZXIsIHJld2FyZFRva2VuSWQsIHRva2VuUmV3YXJkQmFsXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU2CgkvLyBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQKCWZyYW1lX2RpZyAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA1NwoJLy8gbWV0aG9kQXJnczogW3JlY2VpdmVyLCByZXdhcmRUb2tlbklkLCB0b2tlblJld2FyZEJhbF0KCWZyYW1lX2RpZyAtMiAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAzIC8vIHRva2VuUmV3YXJkQmFsOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU5CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sT25lQXBwSWQuYWRkcmVzcy5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHJld2FyZFRva2VuSWQpKSA9PT0gcmV3YXJkVG9rZW5IZWxkQmFjaywKCS8vICAgICAgICdiYWxhbmNlIG9mIHJlbWFpbmluZyByZXdhcmQgdG9rZW5zIHNob3VsZCBtYXRjaCB0aGUgaGVsZCBiYWNrIGFtb3VudCcKCS8vICAgICApCglmcmFtZV9kaWcgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCglmcmFtZV9kaWcgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMSAvLyByZXdhcmRUb2tlbkhlbGRCYWNrOiB1aW50NjQKCT09CgoJLy8gYmFsYW5jZSBvZiByZW1haW5pbmcgcmV3YXJkIHRva2VucyBzaG91bGQgbWF0Y2ggdGhlIGhlbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDYzCgkvLyByZXR1cm4gdG9rZW5SZXdhcmRCYWw7CglmcmFtZV9kaWcgMyAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiB2b2lkCi8vCi8vIExvZ3MgdGhlIGFkZGl0aW9uIG9mIGEgbmV3IHZhbGlkYXRvciB0byB0aGUgc3lzdGVtLCBpdHMgaW5pdGlhbCBvd25lciBhbmQgbWFuYWdlcgovLwovLwovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyIHZlcmlmaWVzIHRoZSBwYXNzZWQgaW4ga2V5IChmcm9tIGEgc3Rha2luZyBwb29sIGNhbGxpbmcgdXMgdG8gdXBkYXRlIG1ldHJpY3MpIGlzIHZhbGlkCi8vIGFuZCBtYXRjaGVzIHRoZSBpbmZvcm1hdGlvbiB3ZSBoYXZlIGluIG91ciBzdGF0ZS4gICdGYWtlJyBwb29scyBjb3VsZCBjYWxsIHVzIHRvIHVwZGF0ZSBvdXIgZGF0YSwgYnV0IHRoZXkKLy8gY2FuJ3QgZmFrZSB0aGUgaWRzIGFuZCBtb3N0IGltcG9ydGFudGx5IGFwcGxpY2F0aW9uIGlkKCEpIG9mIHRoZSBjYWxsZXIgdGhhdCBoYXMgdG8gbWF0Y2guCnZlcmlmeVBvb2xLZXlDYWxsZXI6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2MQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS5leGlzdHMsICJ0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gdGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgPD0gTUFYX1BPT0xTLCAncG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMjQKCTw9CgoJLy8gcG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYzCgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sS2V5LnBvb2xJZCA+IDAgJiYgKHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNikgPD0gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzLAoJLy8gICAgICAgJ3Bvb2wgaWQgb3V0c2lkZSBvZiByYW5nZSBvZiBwb29scyBjcmVhdGVkIGZvciB0aGlzIHZhbGlkYXRvcicKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAwCgk+CglkdXAKCWJ6ICpza2lwX2FuZDIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDI0MgoJaW50IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQyOgoJLy8gcG9vbCBpZCBvdXRzaWRlIG9mIHJhbmdlIG9mIHBvb2xzIGNyZWF0ZWQgZm9yIHRoaXMgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2OQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgcG9vbEtleS5wb29sQXBwSWQgPT09IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnBvb2xBcHBJZCwKCS8vICAgICAgICJUaGUgcGFzc2VkIGluIGFwcCBpZCBkb2Vzbid0IG1hdGNoIHRoZSBwYXNzZWQgaW4gaWRzIgoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk9PQoKCS8vIFRoZSBwYXNzZWQgaW4gYXBwIGlkIGRvZXNuJ3QgbWF0Y2ggdGhlIHBhc3NlZCBpbiBpZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTc0CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzYKCS8vIGFzc2VydChwb29sS2V5LmlkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3ZhbGlkYXRvcklkJykgYXMgdWludDY0KSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLmdsb2JhbFN0YXRlKCd2YWxpZGF0b3JJZCcpCglhc3NlcnQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE3NwoJLy8gYXNzZXJ0KHBvb2xLZXkucG9vbElkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3Bvb2xJZCcpIGFzIHVpbnQ2NCkpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5nbG9iYWxTdGF0ZSgncG9vbElkJykKCWFzc2VydAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyByZXZlcmlmeU5GRE93bmVyc2hpcCh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogdm9pZAovLwovLyBUaGlzIG1ldGhvZCB2ZXJpZmllcyB0aGUgb3duZXJzaGlwIG9mIE5GRCAoTmFtZWQgRnVuY3Rpb24gRGF0YSkgYnkgYSB2YWxpZGF0b3IuCi8vIElmIHRoZSBvd25lcnNoaXAgaXMgbm8gbG9uZ2VyIHZhbGlkLCBpdCByZW1vdmVzIHRoZSBORkQgZnJvbSB0aGUgdmFsaWRhdG9yJ3MgY29uZmlndXJhdGlvbi4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3Igd2hvc2UgZGF0YSBzaG91bGQgYmUgcmUtZXZhbHVhdGVkLgpyZXZlcmlmeU5GRE93bmVyc2hpcDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4NwoJLy8gdmFsaWRhdG9yQ29uZmlnID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsaWRhdG9yQ29uZmlnCgoJLy8gKmlmMjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4OAoJLy8gdmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8gIT09IDAKCWludCA3MgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkxCgkvLyBuZmRPd25lciA9IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKSBhcyBBZGRyZXNzCglpbnQgNzIKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9idXJ5IDEgLy8gbmZkT3duZXI6IGFkZHJlc3MKCgkvLyAqaWYyOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkzCgkvLyB2YWxpZGF0b3JDb25maWcub3duZXIgIT09IG5mZE93bmVyICYmIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSBuZmRPd25lcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQzCglpbnQgNDAKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJJiYKCipza2lwX2FuZDM6CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE5NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IDAKCWludCA3MgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYyOV9lbmQ6CgoqaWYyOF9lbmQ6CglyZXRzdWIKCi8vIHZhbGlkYXRlQ29uZmlnKGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnKTogdm9pZAp2YWxpZGF0ZUNvbmZpZzoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjAyCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZW50cnlHYXRpbmdUeXBlID49IEdBVElOR19UWVBFX05PTkUgJiYgY29uZmlnLmVudHJ5R2F0aW5nVHlwZSA8PSBHQVRJTkdfVFlQRV9DT05TVF9NQVgsCgkvLyAgICAgICAnZ2F0aW5nIHR5cGUgbm90IHZhbGlkJwoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgMAoJPj0KCWR1cAoJYnogKnNraXBfYW5kNAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDgwIDEKCWJ0b2kKCWludCA0Cgk8PQoJJiYKCipza2lwX2FuZDQ6CgkvLyBnYXRpbmcgdHlwZSBub3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA2CgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZXBvY2hSb3VuZExlbmd0aCA+PSBNSU5fRVBPQ0hfTEVOR1RIICYmIGNvbmZpZy5lcG9jaFJvdW5kTGVuZ3RoIDw9IE1BWF9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICAnZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kNQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMTAwMDAwMAoJPD0KCSYmCgoqc2tpcF9hbmQ1OgoJLy8gZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjEwCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yID49IE1JTl9QQ1RfVE9fVkFMSURBVE9SICYmIGNvbmZpZy5wZXJjZW50VG9WYWxpZGF0b3IgPD0gTUFYX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICAnY29tbWlzc2lvbiBwZXJjZW50YWdlIG5vdCB2YWxpZCcKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgk+PQoJZHVwCglieiAqc2tpcF9hbmQ2CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAxMDAwMDAwCgk8PQoJJiYKCipza2lwX2FuZDY6CgkvLyBjb21taXNzaW9uIHBlcmNlbnRhZ2Ugbm90IHZhbGlkCglhc3NlcnQKCgkvLyAqaWYzMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjE0CgkvLyBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmMzBfZW5kCgoJLy8gKmlmMzBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMTUKCS8vIGFzc2VydCgKCS8vICAgICAgICAgY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgICAndmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAnCgkvLyAgICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTc3IDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAKCWFzc2VydAoKKmlmMzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMjAKCS8vIGFzc2VydChjb25maWcubWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIwOSA4CglidG9pCglpbnQgMTAwMDAwMAoJPj0KCgkvLyBzdGFraW5nIHBvb2wgbXVzdCBoYXZlIG1pbmltdW0gZW50cnkgb2YgMSBhbGdvCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyMgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgY29uZmlnLnBvb2xzUGVyTm9kZSA+IDAgJiYgY29uZmlnLnBvb2xzUGVyTm9kZSA8PSBNQVhfUE9PTFNfUEVSX05PREUsCgkvLyAgICAgICAnbnVtYmVyIG9mIHBvb2xzIHBlciBub2RlIGV4Y2VlZHMgYWxsb3dlZCBudW1iZXInCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNSAxCglidG9pCglpbnQgMAoJPgoJZHVwCglieiAqc2tpcF9hbmQ3CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMjI1IDEKCWJ0b2kKCWludCAzCgk8PQoJJiYKCipza2lwX2FuZDc6CgkvLyBudW1iZXIgb2YgcG9vbHMgcGVyIG5vZGUgZXhjZWVkcyBhbGxvd2VkIG51bWJlcgoJYXNzZXJ0CgoJLy8gKmlmMzFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyNgoJLy8gY29uZmlnLnN1bnNldHRpbmdPbiAhPT0gMAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNiA4CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjMxX2VuZAoKCS8vICppZjMxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjI3CgkvLyBhc3NlcnQoY29uZmlnLnN1bnNldHRpbmdPbiA+IGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wLCAnc3Vuc2V0dGluZ09uIG11c3QgYmUgbGF0ZXIgdGhhbiBub3cgaWYgc2V0JykKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAyMjYgOAoJYnRvaQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJPgoKCS8vIHN1bnNldHRpbmdPbiBtdXN0IGJlIGxhdGVyIHRoYW4gbm93IGlmIHNldAoJYXNzZXJ0CgoqaWYzMV9lbmQ6CglyZXRzdWIKCi8vIGNhbGxQb29sQWRkU3Rha2Uoc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuLCBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBtYnJBbXRQYWlkOiB1aW50NjQsIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2xlYW4sIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbik6IHZvaWQKLy8KLy8gQWRkcyBhIHN0YWtlcnMgYW1vdW50IG9mIGFsZ28gdG8gYSB2YWxpZGF0b3IgcG9vbCwgdHJhbnNmZXJyaW5nIHRoZSBhbGdvIHdlIHJlY2VpdmVkIGZyb20gdGhlbSAoYWxyZWFkeSB2ZXJpZmllZAovLyBieSBvdXIgY2FsbGVyKSB0byB0aGUgc3Rha2luZyBwb29sIGFjY291bnQsIGFuZCB0aGVuIHRlbGxpbmcgaXQgYWJvdXQgdGhlIGFtb3VudCBiZWluZyBhZGRlZCBmb3IgdGhlIHNwZWNpZmllZAovLyBzdGFrZXIuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sS2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsaWRhdG9yIHBvb2wuCi8vIEBwYXJhbSB7dWludDY0fSBtYnJBbXRQYWlkIC0gQW1vdW50IHRoZSB1c2VyIGlzIGxlYXZpbmcgYmVoaW5kIGluIHRoZSB2YWxpZGF0b3IgdG8gcGF5IGZvciB0aGVpciBzdGFrZXIgTUJSIGNvc3QKLy8gQHBhcmFtIHtib29sZWFufSBpc05ld1N0YWtlclRvVmFsaWRhdG9yIC0gaWYgdGhpcyBpcyBhIG5ldywgZmlyc3QtdGltZSBzdGFrZXIgdG8gdGhlIHZhbGlkYXRvcgovLyBAcGFyYW0ge2Jvb2xlYW59IGlzTmV3U3Rha2VyVG9Qcm90b2NvbCAtIGlmIHRoaXMgaXMgYSBuZXcsIGZpcnN0LXRpbWUgc3Rha2VyIHRvIHRoZSBwcm90b2NvbApjYWxsUG9vbEFkZFN0YWtlOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjQ5CgkvLyBwb29sQXBwSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS5wb29sQXBwSWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFN0YWtpbmdQb29sLnByb3RvdHlwZS5hZGRTdGFrZSwgdWludDY0Pih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgLy8gVEhJUyBJUyBBIFNFTkQgb2YgdGhlIGFtb3VudCByZWNlaXZlZCByaWdodCBiYWNrIG91dCBhbmQgaW50byB0aGUgc3Rha2luZyBwb29sIGNvbnRyYWN0IGFjY291bnQuCgkvLyAgICAgICAgIHsgYW1vdW50OiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQsIHJlY2VpdmVyOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuYWRkcmVzcyB9LAoJLy8gICAgICAgICAvLyA9PT09PT09CgkvLyAgICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQuc2VuZGVyLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyByZWNlaXZlcjogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYWRkU3Rha2UocGF5LGFkZHJlc3MpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpCglmcmFtZV9kaWcgMCAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNTUKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgLy8gPT09PT09PQoJLy8gICAgICAgICAvLyBUSElTIElTIEEgU0VORCBvZiB0aGUgYW1vdW50IHJlY2VpdmVkIHJpZ2h0IGJhY2sgb3V0IGFuZCBpbnRvIHRoZSBzdGFraW5nIHBvb2wgY29udHJhY3QgYWNjb3VudC4KCS8vICAgICAgICAgeyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZCwgcmVjZWl2ZXI6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5hZGRyZXNzIH0sCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgc3Rha2VkQW1vdW50UGF5bWVudC5zZW5kZXIsCgkvLyAgICAgICBdCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglidG9pCgoJLy8gKmlmMzJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2MwoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCA1MDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCA1MDAKCTwKCWJ6ICppZjMyX2VuZAoKCS8vICppZjMyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjY0CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OAoJLy8gcG9vbE51bVN0YWtlcnMgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ251bVN0YWtlcnMnKSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmdsb2JhbFN0YXRlKCdudW1TdGFrZXJzJykKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xOdW1TdGFrZXJzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OQoJLy8gcG9vbEFsZ29TdGFrZWQgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpIGFzIHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpCglhc3NlcnQKCWZyYW1lX2J1cnkgMiAvLyBwb29sQWxnb1N0YWtlZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyA9IHBvb2xOdW1TdGFrZXJzIGFzIHVpbnQxNgoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJZnJhbWVfZGlnIDEgLy8gcG9vbE51bVN0YWtlcnM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjcxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgPSBwb29sQWxnb1N0YWtlZAoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWZyYW1lX2RpZyAyIC8vIHBvb2xBbGdvU3Rha2VkOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vICppZjMzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzQKCS8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IKCWZyYW1lX2RpZyAtNCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sZWFuCglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI3NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyArPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjMzX2VuZDoKCS8vICppZjM0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzcKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbAoJZnJhbWVfZGlnIC01IC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbgoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzgKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSArPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCSsKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoqaWYzNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgKz0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgLSBtYnJBbXRQYWlkCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyB1cGRhdGVTdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IHZvaWQKdXBkYXRlU3Rha2VyUG9vbFNldDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NQoJLy8gYXNzZXJ0KHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLmV4aXN0cykKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NwoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDAgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjg4CgkvLyBmaXJzdEVtcHR5ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzc6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl83X2VuZAoKCS8vICppZjM1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTAKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAwIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmMzVfZW5kCgoJLy8gKmlmMzVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTIKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMzVfZW5kOgoJLy8gKmlmMzZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI5NAoJLy8gZmlyc3RFbXB0eSA9PT0gMCAmJiBwb29sU2V0W2ldLmlkID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQ4CglmcmFtZV9kaWcgMCAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCSYmCgoqc2tpcF9hbmQ4OgoJYnogKmlmMzZfZW5kCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTUKCS8vIGZpcnN0RW1wdHkgPSBpICsgMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKKmlmMzZfZW5kOgoKKmZvcl83X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODkKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzcKCipmb3JfN19lbmQ6CgkvLyAqaWYzN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjk4CgkvLyBmaXJzdEVtcHR5ID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gTm8gZW1wdHkgc2xvdCBhdmFpbGFibGUgaW4gdGhlIHN0YWtlciBwb29sIHNldAoJZXJyCgoqaWYzN19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMwMQoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbZmlyc3RFbXB0eSAtIDFdID0gcG9vbEtleQoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMQoJLQoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIHJlbW92ZUZyb21TdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IFtib29sZWFuLCBib29sZWFuXQovLwovLyBSZW1vdmVzIGEgcG9vbCBrZXkgZnJvbSB0aGUgc3Rha2VyJ3MgYWN0aXZlIHBvb2wgc2V0IC0gZmFpbHMgaWYgbm90IGZvdW5kICghKQovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFRoZSBwb29sIGtleSB0aGV5IHNob3VsZCBiZSBzdG9yZWQgaW4KLy8KLy8gQHJldHVybiBbYm9vbGVhbiwgYm9vbGVhbl0gW2lzIHRoZSBzdGFrZXIgZ29uZSBmcm9tIEFMTCBwb29scyBvZiB0aGUgZ2l2ZW4gVkFMSURBVE9SLCBhbmQgaXMgc3Rha2VyIGdvbmUgZnJvbSBBTEwgcG9vbHNdCnJlbW92ZUZyb21TdGFrZXJQb29sU2V0OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE0CgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTUKCS8vIGluQW55UG9vbENvdW50ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTYKCS8vIGZvdW5kID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMxOAoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfODoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpIDwgdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzhfZW5kCgoJLy8gKmlmMzhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyMAoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgliICpmb3JfOF9jb250aW51ZQoKKmlmMzhfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjMKCS8vIGluQW55UG9vbENvdW50ICs9IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gaW5BbnlQb29sQ291bnQ6IHVpbnQ2NAoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjQKCS8vIHBvb2xTZXRbaV0uaWQgPT09IHBvb2xLZXkuaWQKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCWJ6ICppZjM5X2VuZAoKCS8vICppZjM5X2NvbnNlcXVlbnQKCS8vICppZjQwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjUKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmNDBfZWxzZQoKCS8vICppZjQwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzI2CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyOAoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbaV0gPSB7IGlkOiAwLCBwb29sSWQ6IDAsIHBvb2xBcHBJZDogMCB9CglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgliICppZjQwX2VuZAoKKmlmNDBfZWxzZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzMwCgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCippZjQwX2VuZDoKCippZjM5X2VuZDoKCipmb3JfOF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpICs9IDEKCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCWIgKmZvcl84CgoqZm9yXzhfZW5kOgoJLy8gKmlmNDFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzNAoJLy8gIWZvdW5kCglmcmFtZV9kaWcgMiAvLyBmb3VuZDogYm9vbAoJIQoJYnogKmlmNDFfZW5kCgoJLy8gKmlmNDFfY29uc2VxdWVudAoJLy8gTm8gbWF0Y2hpbmcgc2xvdCBmb3VuZCB3aGVuIHRvbGQgdG8gcmVtb3ZlIGEgcG9vbCBmcm9tIHRoZSBzdGFrZXJzIHNldAoJZXJyCgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzOAoJLy8gcmV0dXJuIFtpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPT09IDAsIGluQW55UG9vbENvdW50ID09PSAwXTsKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CglpbnQgMAoJPT0KCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAwCgk9PQoJc2V0Yml0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgovLyBhZGRQb29sVG9Ob2RlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHBvb2xBcHBJZDogdWludDY0LCBub2RlTnVtOiB1aW50NjQpOiB2b2lkCmFkZFBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDIKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQzCgkvLyBtYXhQb29sc1Blck5vZGVGb3JUaGlzVmFsaWRhdG9yID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcucG9vbHNQZXJOb2RlIGFzIHVpbnQ2NAoJaW50IDIyNQoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDUKCS8vIGFzc2VydChub2RlTnVtID49IDEgJiYgbm9kZU51bSA8PSBNQVhfTk9ERVMsICdub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDEKCT49CglkdXAKCWJ6ICpza2lwX2FuZDkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCA4Cgk8PQoJJiYKCipza2lwX2FuZDk6CgkvLyBub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3I7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzk6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0NwoJLy8gaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0Cgk8CglieiAqZm9yXzlfZW5kCgoJLy8gKmlmNDJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0OAoJLy8gbm9kZVBvb2xBc3NpZ25tZW50cy5ub2Rlc1tub2RlTnVtIC0gMV0ucG9vbEFwcElkc1tpXSA9PT0gMAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjQyX2VuZAoKCS8vICppZjQyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUwCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbbm9kZU51bSAtIDFdLnBvb2xBcHBJZHNbaV0gPSBwb29sQXBwSWQKCWludCA5MDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUxCgkvLyByZXR1cm47CglyZXRzdWIKCippZjQyX2VuZDoKCipmb3JfOV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl85CgoqZm9yXzlfZW5kOgoJLy8gbm8gYXZhaWxhYmxlIHNwYWNlIGluIHNwZWNpZmllZCBub2RlIGZvciB0aGlzIHBvb2wKCWVycgoJcmV0c3ViCgovLyBkb2VzU3Rha2VyTWVldEdhdGluZyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiBhIHN0YWtlciBtZWV0cyB0aGUgZ2F0aW5nIHJlcXVpcmVtZW50cyBzcGVjaWZpZWQgYnkgdGhlIHZhbGlkYXRvci4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gVGhlIHZhbHVlIHRvIHZlcmlmeSBhZ2FpbnN0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzLgovLyBAcmV0dXJucyB7dm9pZH0gb3IgYXNzZXJ0cyBpZiByZXF1aXJlbWVudHMgbm90IG1ldC4KZG9lc1N0YWtlck1lZXRHYXRpbmc6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNjUKCS8vIHR5cGUgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdHlwZTogdWludDgKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzY2CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9OT05FCglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDAKCT09CglieiAqaWY0M19lbmQKCgkvLyAqaWY0M19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2NwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWY0M19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2OQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDEgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzAKCS8vIGNvbmZpZyA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnKQoJaW50IDAKCWludCAyNDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0NF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzc0CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWSB8fAoJLy8gICAgICAgdHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRfSUQgfHwKCS8vICAgICAgIHR5cGUgPT09IEdBVElOR19UWVBFX0NSRUFURURfQllfTkZEX0FERFJFU1NFUwoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3I0CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09Cgl8fAoKKnNraXBfb3I0OgoJZHVwCglibnogKnNraXBfb3I1CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDMKCT09Cgl8fAoKKnNraXBfb3I1OgoJYnogKmlmNDRfZW5kCgoJLy8gKmlmNDRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzgKCS8vIGFzc2VydCh2YWx1ZVRvVmVyaWZ5ICE9PSAwKQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM3OQoJLy8gYmFsUmVxdWlyZWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCgkvLyAqaWY0NV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgwCgkvLyBiYWxSZXF1aXJlZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWY0NV9lbmQKCgkvLyAqaWY0NV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM4MQoJLy8gYmFsUmVxdWlyZWQgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCippZjQ1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHN0YWtlci5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpKSA+PSBiYWxSZXF1aXJlZCwKCS8vICAgICAgICAgJ211c3QgaGF2ZSByZXF1aXJlZCBtaW5pbXVtIGJhbGFuY2Ugb2YgdmFsaWRhdG9yIGRlZmluZWQgdG9rZW4gdG8gYWRkIHN0YWtlJwoJLy8gICAgICAgKQoJZnJhbWVfZGlnIDEgLy8gc3Rha2VyOiBhZGRyZXNzCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJPj0KCgkvLyBtdXN0IGhhdmUgcmVxdWlyZWQgbWluaW11bSBiYWxhbmNlIG9mIHZhbGlkYXRvciBkZWZpbmVkIHRva2VuIHRvIGFkZCBzdGFrZQoJYXNzZXJ0CgoqaWY0NF9lbmQ6CgkvLyAqaWY0Nl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzg4CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWQoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJYnogKmlmNDZfZW5kCgoJLy8gKmlmNDZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzODkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IgPT09IGNvbmZpZy5lbnRyeUdhdGluZ0FkZHJlc3MsCgkvLyAgICAgICAgICdzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBjcmVhdGVkIGJ5IGNyZWF0b3IgdGhhdCB0aGUgdmFsaWRhdG9yIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZScKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDgxIDMyCgk9PQoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IHRoZSB2YWxpZGF0b3IgZGVmaW5lZCBhcyBhIHJlcXVpcmVtZW50IHRvIHN0YWtlCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vICppZjQ3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTQKCS8vIHR5cGUgPT09IEdBVElOR19UWVBFX0FTU0VUX0lECglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09CglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM5NQoJLy8gYXNzZXJ0KHZhbHVlVG9WZXJpZnkgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk2CgkvLyBmb3VuZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSA0IC8vIGZvdW5kOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTcKCS8vIGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0cwoJZnJhbWVfZGlnIDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTEzIDMyCglkdXAKCWZyYW1lX2J1cnkgNSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yT2ZfMDoKCS8vICppZjQ4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTgKCS8vIHZhbHVlVG9WZXJpZnkgPT09IGFzc2V0SWQKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGFzc2V0SWQ6IHVpbnQ2NAoJPT0KCWJ6ICppZjQ4X2VuZAoKCS8vICppZjQ4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk5CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDQgLy8gZm91bmQ6IGJvb2wKCWIgKmZvck9mXzBfZW5kCgoqaWY0OF9lbmQ6CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMzIgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyA1IC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQwMwoJLy8gYXNzZXJ0KGZvdW5kLCAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgaWRlbnRpY2FsIHRvIHRoZSBhc3NldCBpZCBkZWZpbmVkIGFzIGEgcmVxdWlyZW1lbnQgdG8gc3Rha2UnKQoJZnJhbWVfZGlnIDQgLy8gZm91bmQ6IGJvb2wKCgkvLyBzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBpZGVudGljYWwgdG8gdGhlIGFzc2V0IGlkIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZQoJYXNzZXJ0CgoqaWY0N19lbmQ6CgkvLyAqaWY0OV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA1CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgMwoJPT0KCWJ6ICppZjQ5X2VuZAoKCS8vICppZjQ5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA4CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSwgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IpLAoJLy8gICAgICAgICAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgaXMgb25lIG9mIHRoZSBsaW5rZWQgYWRkcmVzc2VzIGluIGFuIG5mZCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IGlzIG9uZSBvZiB0aGUgbGlua2VkIGFkZHJlc3NlcyBpbiBhbiBuZmQKCWFzc2VydAoKKmlmNDlfZW5kOgoJLy8gKmlmNTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQxMwoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfU0VHTUVOVF9PRl9ORkQKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgNAoJPT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE1CgkvLyB1c2VyT2ZmZXJlZE5GREFwcElEID0gdmFsdWVUb1ZlcmlmeQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfYnVyeSA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE2CgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQodXNlck9mZmVyZWRORkRBcHBJRCksICdwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZCcpCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE5CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHJhd0J5dGVzKEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpID09PSByYXdCeXRlcyhzdGFrZXIpIHx8CgkvLyAgICAgICAgICAgdGhpcy5pc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QodXNlck9mZmVyZWRORkRBcHBJRCwgc3Rha2VyKSwKCS8vICAgICAgICAgInByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIiCgkvLyAgICAgICApCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmY3NzZlNjU3MjJlNjEgLy8gImkub3duZXIuYSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHVzZXJPZmZlcmVkTkZEQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9kaWcgMSAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjYKCWZyYW1lX2RpZyAxIC8vIHN0YWtlcjogYWRkcmVzcwoJZnJhbWVfZGlnIDggLy8gdXNlck9mZmVyZWRORkRBcHBJRDogdWludDY0CgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoJfHwKCipza2lwX29yNjoKCS8vIHByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDI2CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIGJ0b2koQXBwSUQuZnJvbVVpbnQ2NCh1c2VyT2ZmZXJlZE5GREFwcElEKS5nbG9iYWxTdGF0ZSgnaS5wYXJlbnRBcHBJRCcpIGFzIGJ5dGVzKSA9PT0KCS8vICAgICAgICAgICBjb25maWcuZW50cnlHYXRpbmdBc3NldHNbMF0sCgkvLyAgICAgICAgICdzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU3MDYxNzI2NTZlNzQ0MTcwNzA0OTQ0IC8vICJpLnBhcmVudEFwcElEIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kucGFyZW50QXBwSUQnKQoJYXNzZXJ0CglidG9pCglmcmFtZV9kaWcgMiAvLyBjb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMTMgOAoJYnRvaQoJPT0KCgkvLyBzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudAoJYXNzZXJ0CgoqaWY1MF9lbmQ6CglyZXRzdWIKCi8vIGlzTkZEQXBwSURWYWxpZChuZmRBcHBJRDogdWludDY0KTogYm9vbGVhbgovLwovLyBDaGVja3MgaWYgdGhlIGdpdmVuIE5GRCBBcHAgaWQgaXMgdmFsaWQuICBVc2luZyBvbmx5IHRoZSBBcHAgaWQgdGhlcmUncyBubyB2YWxpZGF0aW9uIGFnYWluc3QgdGhlIG5hbWUgKGllOiB0aGF0IG5mZCBYIGlzIG5hbWUgWSkKLy8gU28gaXQncyBhc3N1bWVkIGZvciB0aGUgY2FsbGVyLCB0aGUgYXBwIGlkIGFsb25lIGlzIGZpbmUuICBUaGUgbmFtZSBpcyBmZXRjaGVkIGZyb20gdGhlIHNwZWNpZmllZCBhcHAgaWQgYW5kIHRoZSB0d28KLy8gdG9nZXRoZXIgYXJlIHVzZWQgZm9yIHZhbGlkaXR5IGNoZWNrIGNhbGwgdG8gdGhlIG5mZCByZWdpc3RyeS4KLy8KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIE5GRCBBcHAgaWQgdG8gdmVyaWZ5LgovLwovLyBAcmV0dXJucyB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIE5GRCBBcHAgaWQgaXMgdmFsaWQsIG90aGVyd2lzZSBmYWxzZS4KaXNORkRBcHBJRFZhbGlkOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0NQoJLy8gdXNlck9mZmVyZWRORkROYW1lID0gQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kubmFtZScpIGFzIHN0cmluZwoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmU2MTZkNjUgLy8gImkubmFtZSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKS5nbG9iYWxTdGF0ZSgnaS5uYW1lJykKCWFzc2VydAoJZnJhbWVfYnVyeSAwIC8vIHVzZXJPZmZlcmVkTkZETmFtZTogc3RyaW5nCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NDcKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCB1c2VyT2ZmZXJlZE5GRE5hbWUsIGl0b2IobmZkQXBwSUQpXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQobmZkQXBwSUQpXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0OAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDQ5CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgdXNlck9mZmVyZWRORkROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMCAvLyB1c2VyT2ZmZXJlZE5GRE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDUwCgkvLyBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0KCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ1MgoJLy8gcmV0dXJuIGJ0b2kodGhpcy5pdHhuLmxhc3RMb2cpID09PSAxOwoJaXR4biBMYXN0TG9nCglidG9pCglpbnQgMQoJPT0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KG5mZEFwcElEOiB1aW50NjQsIGFkZHJUb0ZpbmQ6IEFkZHJlc3MpOiBib29sZWFuCi8vCi8vIENoZWNrcyBpZiB0aGUgc3BlY2lmaWVkIGFkZHJlc3MgaXMgcHJlc2VudCBpbiBhbiBORkRzIGxpc3Qgb2YgdmVyaWZpZWQgYWRkcmVzc2VzLgovLyBUaGUgTkZEIGlzIGFzc3VtZWQgdG8gaGF2ZSBhbHJlYWR5IGJlZW4gdmFsaWRhdGVkIGFzIG9mZmljaWFsLgovLwovLyBAcGFyYW0ge3VpbnQ2NH0gbmZkQXBwSUQgLSBUaGUgTkZEIGFwcGxpY2F0aW9uIGlkLgovLyBAcGFyYW0ge0FkZHJlc3N9IGFkZHJUb0ZpbmQgLSBUaGUgYWRkcmVzcyB0byBmaW5kIGluIHRoZSB2LmNhQWxnby4wLmFzIHByb3BlcnR5Ci8vIEByZXR1cm4ge2Jvb2xlYW59IC0gYHRydWVgIGlmIHRoZSBhZGRyZXNzIGlzIHByZXNlbnQsIGBmYWxzZWAgb3RoZXJ3aXNlLgppc0FkZHJlc3NJbk5GRENBQWxnb0xpc3Q6Cglwcm90byAyIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3JlYWRfcHJvcGVydHknLCAndi5jYUFsZ28uMC5hcyddLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKQoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY2CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsncmVhZF9wcm9wZXJ0eScsICd2LmNhQWxnby4wLmFzJ10KCWJ5dGUgMHg3MjY1NjE2NDVmNzA3MjZmNzA2NTcyNzQ3OSAvLyAicmVhZF9wcm9wZXJ0eSIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4NzYyZTYzNjE0MTZjNjc2ZjJlMzAyZTYxNzMgLy8gInYuY2FBbGdvLjAuYXMiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OAoJLy8gY2FBbGdvRGF0YSA9IHRoaXMuaXR4bi5sYXN0TG9nCglpdHhuIExhc3RMb2cKCWZyYW1lX2J1cnkgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBjYUFsZ29EYXRhLmxlbmd0aDsgaSArPSAzMikKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoqZm9yXzEwOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjkKCS8vIGkgPCBjYUFsZ29EYXRhLmxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCWxlbgoJPAoJYnogKmZvcl8xMF9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3MAoJLy8gYWRkciA9IGV4dHJhY3QzKGNhQWxnb0RhdGEsIGksIDMyKQoJZnJhbWVfZGlnIDAgLy8gY2FBbGdvRGF0YTogYnl0ZVtdCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCAzMgoJZXh0cmFjdDMKCWZyYW1lX2J1cnkgMiAvLyBhZGRyOiBieXRlW10KCgkvLyAqaWY1MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDcxCgkvLyBhZGRyICE9PSByYXdCeXRlcyhnbG9iYWxzLnplcm9BZGRyZXNzKSAmJiBhZGRyID09PSByYXdCeXRlcyhhZGRyVG9GaW5kKQoJZnJhbWVfZGlnIDIgLy8gYWRkcjogYnl0ZVtdCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglkdXAKCWJ6ICpza2lwX2FuZDEwCglmcmFtZV9kaWcgMiAvLyBhZGRyOiBieXRlW10KCWZyYW1lX2RpZyAtMiAvLyBhZGRyVG9GaW5kOiBBZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDEwOgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NzIKCS8vIHJldHVybiB0cnVlOwoJaW50IDEKCWIgKmlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdCpyZXR1cm4KCippZjUxX2VuZDoKCipmb3JfMTBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gaSArPSAzMgoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMzIKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8xMAoKKmZvcl8xMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3NQoJLy8gcmV0dXJuIGZhbHNlOwoJaW50IDAKCippc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KLy8gTk9URTogdGhpcyBmdW5jdGlvbiBpcyBkZWZpbmVkIHR3aWNlIC0gaGVyZSBhbmQgaW4gc3Rha2luZyBwb29sIGNvbnRyYWN0LiAgQm90aCBtdXN0IGJlIGlkZW50aWNhbC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0ODQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ4NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX1NPRlRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDEwMAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGxvd2VkU3Rha2UoKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgdmFsaWRhdG9yIGJhc2VkIG9uIGEgcGVyY2VudGFnZSBvZiBhbGwgY3VycmVudCBvbmxpbmUgc3Rha2UuCi8vIEFkZGluZyBzdGFrZSBpcyBjb21wbGV0ZWx5IGJsb2NrZWQgYXQgdGhpcyBhbW91bnQuCm1heEFsbG93ZWRTdGFrZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0OTQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ5NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX0hBUkRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDE1MAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGdvQWxsb3dlZFBlclBvb2woKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgcG9vbCBhbmQgc3RpbGwgcmVjZWl2ZSBpbmNlbnRpdmVzIC0gd2UnbGwgdHJlYXQgdGhpcyBhcyB0aGUgJ21heCBwZXIgcG9vbCcKbWF4QWxnb0FsbG93ZWRQZXJQb29sOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDQKCS8vIHJldHVybiA3MF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgNzBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDkKCS8vIHJldHVybiAyXzAwMF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgMl8wMDBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIG1pbkJhbGFuY2VGb3JBY2NvdW50KGNvbnRyYWN0czogdWludDY0LCBleHRyYVBhZ2VzOiB1aW50NjQsIGFzc2V0czogdWludDY0LCBsb2NhbEludHM6IHVpbnQ2NCwgbG9jYWxCeXRlczogdWludDY0LCBnbG9iYWxJbnRzOiB1aW50NjQsIGdsb2JhbEJ5dGVzOiB1aW50NjQpOiB1aW50NjQKbWluQmFsYW5jZUZvckFjY291bnQ6Cglwcm90byA3IDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTIxCgkvLyBtaW5CYWwgPSBBTEdPUkFORF9BQ0NPVU5UX01JTl9CQUxBTkNFCglpbnQgMTAwMDAwCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMgoJLy8gbWluQmFsICs9IGNvbnRyYWN0cyAqIEFQUExJQ0FUSU9OX0JBU0VfRkVFCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGNvbnRyYWN0czogdWludDY0CglpbnQgMTAwMDAwCgkqCgkrCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMwoJLy8gbWluQmFsICs9IGV4dHJhUGFnZXMgKiBBUFBMSUNBVElPTl9CQVNFX0ZFRQoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBleHRyYVBhZ2VzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI0CgkvLyBtaW5CYWwgKz0gYXNzZXRzICogQVNTRVRfSE9MRElOR19GRUUKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYXNzZXRzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI1CgkvLyBtaW5CYWwgKz0gbG9jYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gbG9jYWxJbnRzOiB1aW50NjQKCWludCAyODUwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjYKCS8vIG1pbkJhbCArPSBnbG9iYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTYgLy8gZ2xvYmFsSW50czogdWludDY0CglpbnQgMjg1MDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI3CgkvLyBtaW5CYWwgKz0gbG9jYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNSAvLyBsb2NhbEJ5dGVzOiB1aW50NjQKCWludCA1MDAwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjgKCS8vIG1pbkJhbCArPSBnbG9iYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNyAvLyBnbG9iYWxCeXRlczogdWludDY0CglpbnQgNTAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI5CgkvLyByZXR1cm4gbWluQmFsOwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MzYKCS8vIHJldHVybiBTQ0JPWF9QRVJCT1ggKyB0b3RhbE51bUJ5dGVzICogU0NCT1hfUEVSQllURTsKCWludCAyNTAwCglmcmFtZV9kaWcgLTEgLy8gdG90YWxOdW1CeXRlczogdWludDY0CglpbnQgNDAwCgkqCgkrCglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQiCgltZXRob2QgImxvYWRTdGFraW5nQ29udHJhY3REYXRhKHVpbnQ2NCxieXRlW10pdm9pZCIKCW1ldGhvZCAiZmluYWxpemVTdGFraW5nQ29udHJhY3QoKXZvaWQiCgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkiCgltZXRob2QgImdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0TnVtVmFsaWRhdG9ycygpdWludDY0IgoJbWV0aG9kICJnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJnZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXIodWludDY0KShhZGRyZXNzLGFkZHJlc3MpIgoJbWV0aG9kICJnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdIgoJbWV0aG9kICJnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KSIKCW1ldGhvZCAiZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sIgoJbWV0aG9kICJnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10iCgltZXRob2QgImdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkiCgltZXRob2QgImdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkiCgltZXRob2QgImdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NCIKCW1ldGhvZCAiYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NCIKCW1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImNoYW5nZVZhbGlkYXRvck5GRCh1aW50NjQsdWludDY0LHN0cmluZyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImFkZFBvb2wocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAic2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KSIKCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJbWV0aG9kICJmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKSIKCW1ldGhvZCAibW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0ICphYmlfcm91dGVfbG9hZFN0YWtpbmdDb250cmFjdERhdGEgKmFiaV9yb3V0ZV9maW5hbGl6ZVN0YWtpbmdDb250cmFjdCAqYWJpX3JvdXRlX2dhcyAqYWJpX3JvdXRlX2dldE1ickFtb3VudHMgKmFiaV9yb3V0ZV9nZXRQcm90b2NvbENvbnN0cmFpbnRzICphYmlfcm91dGVfZ2V0TnVtVmFsaWRhdG9ycyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvckNvbmZpZyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvclN0YXRlICphYmlfcm91dGVfZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyICphYmlfcm91dGVfZ2V0UG9vbHMgKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQgKmFiaV9yb3V0ZV9nZXRQb29sSW5mbyAqYWJpX3JvdXRlX2dldEN1ck1heFN0YWtlUGVyUG9vbCAqYWJpX3JvdXRlX2RvZXNTdGFrZXJOZWVkVG9QYXlNQlIgKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQgKmFiaV9yb3V0ZV9nZXRUb2tlblBheW91dFJhdGlvICphYmlfcm91dGVfZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyAqYWJpX3JvdXRlX2dldE5GRFJlZ2lzdHJ5SUQgKmFiaV9yb3V0ZV9hZGRWYWxpZGF0b3IgKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRCAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyAqYWJpX3JvdXRlX2FkZFBvb2wgKmFiaV9yb3V0ZV9hZGRTdGFrZSAqYWJpX3JvdXRlX3NldFRva2VuUGF5b3V0UmF0aW8gKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzICphYmlfcm91dGVfc3Rha2VSZW1vdmVkICphYmlfcm91dGVfZmluZFBvb2xGb3JTdGFrZXIgKmFiaV9yb3V0ZV9tb3ZlUG9vbFRvTm9kZSAqYWJpX3JvdXRlX2VtcHR5VG9rZW5SZXdhcmRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAidXBkYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgVXBkYXRlQXBwbGljYXRpb24KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/reti/artifacts/ValidatorRegistry.arc56_draft.json b/examples/reti/artifacts/ValidatorRegistry.arc56_draft.json index c831ddd26..139e8b445 100644 --- a/examples/reti/artifacts/ValidatorRegistry.arc56_draft.json +++ b/examples/reti/artifacts/ValidatorRegistry.arc56_draft.json @@ -805,104 +805,332 @@ 56 ], "structs": { - "ValidatorInfo": { - "config": { - "id": "uint64", - "owner": "address", - "manager": "address", - "nfdForInfo": "uint64", - "entryGatingType": "uint8", - "entryGatingAddress": "address", - "entryGatingAssets": "uint64[4]", - "gatingAssetMinBalance": "uint64", - "rewardTokenId": "uint64", - "rewardPerPayout": "uint64", - "epochRoundLength": "uint32", - "percentToValidator": "uint32", - "validatorCommissionAddress": "address", - "minEntryStake": "uint64", - "maxAlgoPerPool": "uint64", - "poolsPerNode": "uint8", - "sunsettingOn": "uint64", - "sunsettingTo": "uint64" - }, - "state": { - "numPools": "uint16", - "totalStakers": "uint64", - "totalAlgoStaked": "uint64", - "rewardTokenHeldBack": "uint64" - }, - "pools": "(uint64,uint16,uint64)[24]", - "tokenPayoutRatio": { - "poolPctOfWhole": "uint64[24]", - "updatedForPayout": "uint64" - }, - "nodePoolAssignments": { - "nodes": "(uint64[3])[8]" + "ValidatorInfo": [ + { + "name": "config", + "type": [ + { + "name": "id", + "type": "uint64" + }, + { + "name": "owner", + "type": "address" + }, + { + "name": "manager", + "type": "address" + }, + { + "name": "nfdForInfo", + "type": "uint64" + }, + { + "name": "entryGatingType", + "type": "uint8" + }, + { + "name": "entryGatingAddress", + "type": "address" + }, + { + "name": "entryGatingAssets", + "type": "uint64[4]" + }, + { + "name": "gatingAssetMinBalance", + "type": "uint64" + }, + { + "name": "rewardTokenId", + "type": "uint64" + }, + { + "name": "rewardPerPayout", + "type": "uint64" + }, + { + "name": "epochRoundLength", + "type": "uint32" + }, + { + "name": "percentToValidator", + "type": "uint32" + }, + { + "name": "validatorCommissionAddress", + "type": "address" + }, + { + "name": "minEntryStake", + "type": "uint64" + }, + { + "name": "maxAlgoPerPool", + "type": "uint64" + }, + { + "name": "poolsPerNode", + "type": "uint8" + }, + { + "name": "sunsettingOn", + "type": "uint64" + }, + { + "name": "sunsettingTo", + "type": "uint64" + } + ] + }, + { + "name": "state", + "type": [ + { + "name": "numPools", + "type": "uint16" + }, + { + "name": "totalStakers", + "type": "uint64" + }, + { + "name": "totalAlgoStaked", + "type": "uint64" + }, + { + "name": "rewardTokenHeldBack", + "type": "uint64" + } + ] + }, + { + "name": "pools", + "type": "(uint64,uint16,uint64)[24]" + }, + { + "name": "tokenPayoutRatio", + "type": [ + { + "name": "poolPctOfWhole", + "type": "uint64[24]" + }, + { + "name": "updatedForPayout", + "type": "uint64" + } + ] + }, + { + "name": "nodePoolAssignments", + "type": [ + { + "name": "nodes", + "type": "(uint64[3])[8]" + } + ] } - }, - "MbrAmounts": { - "addValidatorMbr": "uint64", - "addPoolMbr": "uint64", - "poolInitMbr": "uint64", - "addStakerMbr": "uint64" - }, - "Constraints": { - "epochPayoutRoundsMin": "uint64", - "epochPayoutRoundsMax": "uint64", - "minPctToValidatorWFourDecimals": "uint64", - "maxPctToValidatorWFourDecimals": "uint64", - "minEntryStake": "uint64", - "maxAlgoPerPool": "uint64", - "maxAlgoPerValidator": "uint64", - "amtConsideredSaturated": "uint64", - "maxNodes": "uint64", - "maxPoolsPerNode": "uint64", - "maxStakersPerPool": "uint64" - }, - "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").ValidatorConfig": { - "id": "uint64", - "owner": "address", - "manager": "address", - "nfdForInfo": "uint64", - "entryGatingType": "uint8", - "entryGatingAddress": "address", - "entryGatingAssets": "uint64[4]", - "gatingAssetMinBalance": "uint64", - "rewardTokenId": "uint64", - "rewardPerPayout": "uint64", - "epochRoundLength": "uint32", - "percentToValidator": "uint32", - "validatorCommissionAddress": "address", - "minEntryStake": "uint64", - "maxAlgoPerPool": "uint64", - "poolsPerNode": "uint8", - "sunsettingOn": "uint64", - "sunsettingTo": "uint64" - }, - "ValidatorCurState": { - "numPools": "uint16", - "totalStakers": "uint64", - "totalAlgoStaked": "uint64", - "rewardTokenHeldBack": "uint64" - }, - "PoolInfo": { - "poolAppId": "uint64", - "totalStakers": "uint16", - "totalAlgoStaked": "uint64" - }, - "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").ValidatorPoolKey": { - "id": "uint64", - "poolId": "uint64", - "poolAppId": "uint64" - }, - "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").PoolTokenPayoutRatio": { - "poolPctOfWhole": "uint64[24]", - "updatedForPayout": "uint64" - }, - "NodePoolAssignmentConfig": { - "nodes": "(uint64[3])[8]" - } + ], + "MbrAmounts": [ + { + "name": "addValidatorMbr", + "type": "uint64" + }, + { + "name": "addPoolMbr", + "type": "uint64" + }, + { + "name": "poolInitMbr", + "type": "uint64" + }, + { + "name": "addStakerMbr", + "type": "uint64" + } + ], + "Constraints": [ + { + "name": "epochPayoutRoundsMin", + "type": "uint64" + }, + { + "name": "epochPayoutRoundsMax", + "type": "uint64" + }, + { + "name": "minPctToValidatorWFourDecimals", + "type": "uint64" + }, + { + "name": "maxPctToValidatorWFourDecimals", + "type": "uint64" + }, + { + "name": "minEntryStake", + "type": "uint64" + }, + { + "name": "maxAlgoPerPool", + "type": "uint64" + }, + { + "name": "maxAlgoPerValidator", + "type": "uint64" + }, + { + "name": "amtConsideredSaturated", + "type": "uint64" + }, + { + "name": "maxNodes", + "type": "uint64" + }, + { + "name": "maxPoolsPerNode", + "type": "uint64" + }, + { + "name": "maxStakersPerPool", + "type": "uint64" + } + ], + "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").ValidatorConfig": [ + { + "name": "id", + "type": "uint64" + }, + { + "name": "owner", + "type": "address" + }, + { + "name": "manager", + "type": "address" + }, + { + "name": "nfdForInfo", + "type": "uint64" + }, + { + "name": "entryGatingType", + "type": "uint8" + }, + { + "name": "entryGatingAddress", + "type": "address" + }, + { + "name": "entryGatingAssets", + "type": "uint64[4]" + }, + { + "name": "gatingAssetMinBalance", + "type": "uint64" + }, + { + "name": "rewardTokenId", + "type": "uint64" + }, + { + "name": "rewardPerPayout", + "type": "uint64" + }, + { + "name": "epochRoundLength", + "type": "uint32" + }, + { + "name": "percentToValidator", + "type": "uint32" + }, + { + "name": "validatorCommissionAddress", + "type": "address" + }, + { + "name": "minEntryStake", + "type": "uint64" + }, + { + "name": "maxAlgoPerPool", + "type": "uint64" + }, + { + "name": "poolsPerNode", + "type": "uint8" + }, + { + "name": "sunsettingOn", + "type": "uint64" + }, + { + "name": "sunsettingTo", + "type": "uint64" + } + ], + "ValidatorCurState": [ + { + "name": "numPools", + "type": "uint16" + }, + { + "name": "totalStakers", + "type": "uint64" + }, + { + "name": "totalAlgoStaked", + "type": "uint64" + }, + { + "name": "rewardTokenHeldBack", + "type": "uint64" + } + ], + "PoolInfo": [ + { + "name": "poolAppId", + "type": "uint64" + }, + { + "name": "totalStakers", + "type": "uint16" + }, + { + "name": "totalAlgoStaked", + "type": "uint64" + } + ], + "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").ValidatorPoolKey": [ + { + "name": "id", + "type": "uint64" + }, + { + "name": "poolId", + "type": "uint64" + }, + { + "name": "poolAppId", + "type": "uint64" + } + ], + "import(\"/Users/joe/git/algorandfoundation/tealscript/examples/reti/validatorRegistry.algo\").PoolTokenPayoutRatio": [ + { + "name": "poolPctOfWhole", + "type": "uint64[24]" + }, + { + "name": "updatedForPayout", + "type": "uint64" + } + ], + "NodePoolAssignmentConfig": [ + { + "name": "nodes", + "type": "(uint64[3])[8]" + } + ] }, "state": { "schema": { @@ -968,27574 +1196,27577 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 168, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183 - ] - }, - { - "teal": 9, - "source": 168, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 10, - "source": 168, - "pc": [ - 186 - ] - }, - { - "teal": 11, - "source": 168, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 18, - "source": 168, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 19, - "source": 168, - "pc": [ - 191 - ] - }, - { - "teal": 20, - "source": 168, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 21, - "source": 168, - "pc": [ - 194 - ] - }, - { - "teal": 22, - "source": 168, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 23, - "source": 168, - "pc": [ - 197 - ] - }, - { - "teal": 24, - "source": 168, - "pc": [ - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223 - ] - }, - { - "teal": 28, - "source": 168, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 224 - ] - }, - { - "teal": 33, - "source": 201, - "pc": [ - 225, - 226, - 227 - ] - }, - { - "teal": 34, - "source": 201, - "pc": [ - 228 - ] - }, - { - "teal": 35, - "source": 201, - "pc": [ - 229 - ] - }, - { - "teal": 39, - "source": 201, - "pc": [ - 230, - 231, - 232 - ] - }, - { - "teal": 43, - "source": 202, - "pc": [ - 233, - 234 - ] - }, - { - "teal": 44, - "source": 202, - "pc": [ - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258, - 259, - 260, - 261, - 262, - 263, - 264, - 265, - 266, - 267, - 268 - ] - }, - { - "teal": 45, - "source": 202, - "pc": [ - 269 - ] - }, - { - "teal": 46, - "source": 202, - "pc": [ - 270 - ] - }, - { - "teal": 50, - "source": 204, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 51, - "source": 204, - "pc": [ - 273 - ] - }, - { - "teal": 55, - "source": 205, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 56, - "source": 205, - "pc": [ - 276 - ] - }, - { - "teal": 57, - "source": 205, - "pc": [ - 277, - 278 - ] - }, - { - "teal": 58, - "source": 205, - "pc": [ - 279 - ] - }, - { - "teal": 59, - "source": 205, - "pc": [ - 280, - 281 - ] - }, - { - "teal": 60, - "source": 205, - "pc": [ - 282 - ] - }, - { - "teal": 61, - "source": 205, - "pc": [ - 283 - ] - }, - { - "teal": 62, - "source": 201, - "pc": [ - 284 - ] - }, - { - "teal": 67, - "source": 208, - "pc": [ - 285, - 286, - 287 - ] - }, - { - "teal": 68, - "source": 208, - "pc": [ - 288 - ] - }, - { - "teal": 69, - "source": 208, - "pc": [ - 289 - ] - }, - { - "teal": 73, - "source": 208, - "pc": [ - 290, - 291, - 292 - ] - }, - { - "teal": 77, - "source": 209, - "pc": [ - 293, - 294 - ] - }, - { - "teal": 78, - "source": 209, - "pc": [ - 295 - ] - }, - { - "teal": 79, - "source": 209, - "pc": [ - 296, - 297 - ] - }, - { - "teal": 80, - "source": 209, - "pc": [ - 298 - ] - }, - { - "teal": 81, - "source": 209, - "pc": [ - 299, - 300 - ] - }, - { - "teal": 82, - "source": 209, - "pc": [ - 301 - ] - }, - { - "teal": 83, - "source": 209, - "pc": [ - 302 - ] - }, - { - "teal": 87, - "source": 210, - "pc": [ - 303, - 304 - ] - }, - { - "teal": 88, - "source": 210, - "pc": [ - 305 - ] - }, - { - "teal": 89, - "source": 210, - "pc": [ - 306 - ] - }, - { - "teal": 93, - "source": 211, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 94, - "source": 211, - "pc": [ - 309 - ] - }, - { - "teal": 95, - "source": 211, - "pc": [ - 310 - ] - }, - { - "teal": 99, - "source": 212, - "pc": [ - 311, - 312 - ] - }, - { - "teal": 100, - "source": 212, - "pc": [ - 313 - ] - }, - { - "teal": 101, - "source": 212, - "pc": [ - 314 - ] - }, - { - "teal": 102, - "source": 208, - "pc": [ - 315 - ] - }, - { - "teal": 107, - "source": 215, - "pc": [ - 316, - 317, - 318 - ] - }, - { - "teal": 108, - "source": 215, - "pc": [ - 319 - ] - }, - { - "teal": 111, - "source": 215, - "pc": [ - 320, - 321, - 322 - ] - }, - { - "teal": 112, - "source": 215, - "pc": [ - 323 - ] - }, - { - "teal": 113, - "source": 215, - "pc": [ - 324 - ] - }, - { - "teal": 117, - "source": 215, - "pc": [ - 325, - 326, - 327 - ] - }, - { - "teal": 121, - "source": 217, - "pc": [ - 328, - 329 - ] - }, - { - "teal": 122, - "source": 217, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 123, - "source": 217, - "pc": [ - 332 - ] - }, - { - "teal": 124, - "source": 217, - "pc": [ - 333 - ] - }, - { - "teal": 125, - "source": 215, - "pc": [ - 334 - ] - }, - { - "teal": 130, - "source": 220, - "pc": [ - 335, - 336, - 337 - ] - }, - { - "teal": 131, - "source": 220, - "pc": [ - 338, - 339, - 340 - ] - }, - { - "teal": 134, - "source": 220, - "pc": [ - 341, - 342, - 343 - ] - }, - { - "teal": 135, - "source": 220, - "pc": [ - 344 - ] - }, - { - "teal": 138, - "source": 220, - "pc": [ - 345, - 346, - 347 - ] - }, - { - "teal": 139, - "source": 220, - "pc": [ - 348 - ] - }, - { - "teal": 140, - "source": 220, - "pc": [ - 349 - ] - }, - { - "teal": 144, - "source": 220, - "pc": [ - 350, - 351, - 352 - ] - }, - { - "teal": 148, - "source": 221, - "pc": [ - 353, - 354 - ] - }, - { - "teal": 149, - "source": 221, - "pc": [ - 355 - ] - }, - { - "teal": 150, - "source": 221, - "pc": [ - 356 - ] - }, - { - "teal": 151, - "source": 221, - "pc": [ - 357 - ] - }, - { - "teal": 152, - "source": 221, - "pc": [ - 358 - ] - }, - { - "teal": 153, - "source": 221, - "pc": [ - 359 - ] - }, - { - "teal": 157, - "source": 222, - "pc": [ - 360, - 361 - ] - }, - { - "teal": 158, - "source": 222, - "pc": [ - 362, - 363 - ] - }, - { - "teal": 159, - "source": 222, - "pc": [ - 364, - 365 - ] - }, - { - "teal": 160, - "source": 222, - "pc": [ - 366 - ] - }, - { - "teal": 161, - "source": 220, - "pc": [ - 367 - ] - }, - { - "teal": 166, - "source": 225, - "pc": [ - 368, - 369, - 370 - ] - }, - { - "teal": 167, - "source": 225, - "pc": [ - 371 - ] - }, - { - "teal": 168, - "source": 225, - "pc": [ - 372 - ] - }, - { - "teal": 172, - "source": 225, - "pc": [ - 373, - 374, - 375 - ] - }, - { - "teal": 176, - "source": 226, - "pc": [ - 376, - 377 - ] - }, - { - "teal": 177, - "source": 226, - "pc": [ - 378 - ] - }, - { - "teal": 178, - "source": 226, - "pc": [ - 379, - 380 - ] - }, - { - "teal": 179, - "source": 226, - "pc": [ - 381 - ] - }, - { - "teal": 180, - "source": 226, - "pc": [ - 382, - 383 - ] - }, - { - "teal": 181, - "source": 226, - "pc": [ - 384 - ] - }, - { - "teal": 182, - "source": 226, - "pc": [ - 385 - ] - }, - { - "teal": 183, - "source": 225, - "pc": [ - 386 - ] - }, - { - "teal": 188, - "source": 232, - "pc": [ - 387, - 388, - 389 - ] - }, - { - "teal": 189, - "source": 232, - "pc": [ - 390 - ] - }, - { - "teal": 190, - "source": 232, - "pc": [ - 391 - ] - }, - { - "teal": 196, - "source": 232, - "pc": [ - 392, - 393, - 394 - ] - }, - { - "teal": 197, - "source": 232, - "pc": [ - 395 - ] - }, - { - "teal": 202, - "source": 243, - "pc": [ - 396 - ] - }, - { - "teal": 205, - "source": 243, - "pc": [ - 397, - 398, - 399 - ] - }, - { - "teal": 206, - "source": 243, - "pc": [ - 400 - ] - }, - { - "teal": 207, - "source": 243, - "pc": [ - 401 - ] - }, - { - "teal": 208, - "source": 243, - "pc": [ - 402 - ] - }, - { - "teal": 209, - "source": 243, - "pc": [ - 403 - ] - }, - { - "teal": 221, - "source": 243, - "pc": [ - 404, - 405, - 406 - ] - }, - { - "teal": 244, - "source": 247, - "pc": [ - 407, - 408, - 409 - ] - }, - { - "teal": 245, - "source": 247, - "pc": [ - 410, - 411, - 412 - ] - }, - { - "teal": 246, - "source": 247, - "pc": [ - 413 - ] - }, - { - "teal": 247, - "source": 257, - "pc": [ - 414, - 415 - ] - }, - { - "teal": 248, - "source": 256, - "pc": [ - 416, - 417 - ] - }, - { - "teal": 249, - "source": 255, - "pc": [ - 418 - ] - }, - { - "teal": 250, - "source": 255, - "pc": [ - 419, - 420 - ] - }, - { - "teal": 251, - "source": 252, - "pc": [ - 421, - 422 - ] - }, - { - "teal": 252, - "source": 249, - "pc": [ - 423 - ] - }, - { - "teal": 253, - "source": 248, - "pc": [ - 424, - 425, - 426 - ] - }, - { - "teal": 254, - "source": 248, - "pc": [ - 427 - ] - }, - { - "teal": 255, - "source": 248, - "pc": [ - 428 - ] - }, - { - "teal": 256, - "source": 260, - "pc": [ - 429, - 430 - ] - }, - { - "teal": 257, - "source": 261, - "pc": [ - 431, - 432, - 433 - ] - }, - { - "teal": 258, - "source": 261, - "pc": [ - 434, - 435, - 436 - ] - }, - { - "teal": 259, - "source": 260, - "pc": [ - 437 - ] - }, - { - "teal": 260, - "source": 260, - "pc": [ - 438 - ] - }, - { - "teal": 261, - "source": 260, - "pc": [ - 439 - ] - }, - { - "teal": 262, - "source": 264, - "pc": [ - 440, - 441, - 442 - ] - }, - { - "teal": 263, - "source": 264, - "pc": [ - 443, - 444, - 445 - ] - }, - { - "teal": 264, - "source": 264, - "pc": [ - 446 - ] - }, - { - "teal": 265, - "source": 264, - "pc": [ - 447 - ] - }, - { - "teal": 266, - "source": 243, - "pc": [ - 448 - ] - }, - { - "teal": 271, - "source": 271, - "pc": [ - 449 - ] - }, - { - "teal": 274, - "source": 271, - "pc": [ - 450, - 451, - 452 - ] - }, - { - "teal": 275, - "source": 271, - "pc": [ - 453 - ] - }, - { - "teal": 276, - "source": 271, - "pc": [ - 454 - ] - }, - { - "teal": 277, - "source": 271, - "pc": [ - 455 - ] - }, - { - "teal": 278, - "source": 271, - "pc": [ - 456 - ] - }, - { - "teal": 284, - "source": 271, - "pc": [ - 457, - 458, - 459 - ] - }, - { - "teal": 300, - "source": 277, - "pc": [ - 460, - 461, - 462, - 463, - 464, - 465, - 466, - 467, - 468, - 469, - 470, - 471, - 472, - 473, - 474, - 475, - 476, - 477, - 478, - 479, - 480, - 481, - 482, - 483, - 484, - 485, - 486, - 487, - 488, - 489, - 490, - 491, - 492, - 493, - 494, - 495, - 496, - 497, - 498, - 499, - 500, - 501 - ] - }, - { - "teal": 301, - "source": 278, - "pc": [ - 502, - 503, - 504 - ] - }, - { - "teal": 302, - "source": 278, - "pc": [ - 505 - ] - }, - { - "teal": 303, - "source": 278, - "pc": [ - 506 - ] - }, - { - "teal": 304, - "source": 279, - "pc": [ - 507, - 508, - 509 - ] - }, - { - "teal": 305, - "source": 279, - "pc": [ - 510 - ] - }, - { - "teal": 306, - "source": 279, - "pc": [ - 511 - ] - }, - { - "teal": 307, - "source": 280, - "pc": [ - 512, - 513, - 514 - ] - }, - { - "teal": 308, - "source": 280, - "pc": [ - 515 - ] - }, - { - "teal": 309, - "source": 280, - "pc": [ - 516 - ] - }, - { - "teal": 310, - "source": 281, - "pc": [ - 517, - 518, - 519, - 520, - 521, - 522, - 523, - 524, - 525, - 526 - ] - }, - { - "teal": 311, - "source": 281, - "pc": [ - 527 - ] - }, - { - "teal": 312, - "source": 282, - "pc": [ - 528, - 529, - 530, - 531, - 532, - 533, - 534, - 535, - 536, - 537 - ] - }, - { - "teal": 313, - "source": 282, - "pc": [ - 538 - ] - }, - { - "teal": 314, - "source": 283, - "pc": [ - 539, - 540, - 541, - 542, - 543, - 544, - 545, - 546, - 547, - 548 - ] - }, - { - "teal": 315, - "source": 283, - "pc": [ - 549 - ] - }, - { - "teal": 316, - "source": 271, - "pc": [ - 550 - ] - }, - { - "teal": 321, - "source": 291, - "pc": [ - 551 - ] - }, - { - "teal": 324, - "source": 291, - "pc": [ - 552, - 553, - 554 - ] - }, - { - "teal": 325, - "source": 291, - "pc": [ - 555 - ] - }, - { - "teal": 326, - "source": 291, - "pc": [ - 556 - ] - }, - { - "teal": 327, - "source": 291, - "pc": [ - 557 - ] - }, - { - "teal": 328, - "source": 291, - "pc": [ - 558 - ] - }, - { - "teal": 329, - "source": 291, - "pc": [ - 559 - ] - }, - { - "teal": 335, - "source": 291, - "pc": [ - 560, - 561, - 562 - ] - }, - { - "teal": 339, - "source": 292, - "pc": [ - 563, - 564 - ] - }, - { - "teal": 340, - "source": 292, - "pc": [ - 565 - ] - }, - { - "teal": 341, - "source": 291, - "pc": [ - 566 - ] - }, - { - "teal": 346, - "source": 296, - "pc": [ - 567 - ] - }, - { - "teal": 349, - "source": 296, - "pc": [ - 568, - 569, - 570 - ] - }, - { - "teal": 350, - "source": 296, - "pc": [ - 571 - ] - }, - { - "teal": 353, - "source": 296, - "pc": [ - 572, - 573, - 574 - ] - }, - { - "teal": 354, - "source": 296, - "pc": [ - 575 - ] - }, - { - "teal": 355, - "source": 296, - "pc": [ - 576 - ] - }, - { - "teal": 356, - "source": 296, - "pc": [ - 577 - ] - }, - { - "teal": 357, - "source": 296, - "pc": [ - 578 - ] - }, - { - "teal": 361, - "source": 296, - "pc": [ - 579, - 580, - 581 - ] - }, - { - "teal": 365, - "source": 297, - "pc": [ - 582 - ] - }, - { - "teal": 366, - "source": 297, - "pc": [ - 583, - 584 - ] - }, - { - "teal": 367, - "source": 297, - "pc": [ - 585 - ] - }, - { - "teal": 368, - "source": 297, - "pc": [ - 586, - 587 - ] - }, - { - "teal": 369, - "source": 297, - "pc": [ - 588 - ] - }, - { - "teal": 370, - "source": 297, - "pc": [ - 589 - ] - }, - { - "teal": 371, - "source": 297, - "pc": [ - 590, - 591 - ] - }, - { - "teal": 372, - "source": 297, - "pc": [ - 592 - ] - }, - { - "teal": 373, - "source": 296, - "pc": [ - 593 - ] - }, - { - "teal": 378, - "source": 301, - "pc": [ - 594 - ] - }, - { - "teal": 381, - "source": 301, - "pc": [ - 595, - 596, - 597 - ] - }, - { - "teal": 382, - "source": 301, - "pc": [ - 598 - ] - }, - { - "teal": 385, - "source": 301, - "pc": [ - 599, - 600, - 601 - ] - }, - { - "teal": 386, - "source": 301, - "pc": [ - 602 - ] - }, - { - "teal": 387, - "source": 301, - "pc": [ - 603 - ] - }, - { - "teal": 388, - "source": 301, - "pc": [ - 604 - ] - }, - { - "teal": 389, - "source": 301, - "pc": [ - 605 - ] - }, - { - "teal": 393, - "source": 301, - "pc": [ - 606, - 607, - 608 - ] - }, - { - "teal": 397, - "source": 302, - "pc": [ - 609, - 610 - ] - }, - { - "teal": 398, - "source": 302, - "pc": [ - 611, - 612 - ] - }, - { - "teal": 399, - "source": 302, - "pc": [ - 613 - ] - }, - { - "teal": 400, - "source": 302, - "pc": [ - 614, - 615 - ] - }, - { - "teal": 401, - "source": 302, - "pc": [ - 616 - ] - }, - { - "teal": 402, - "source": 302, - "pc": [ - 617 - ] - }, - { - "teal": 403, - "source": 302, - "pc": [ - 618, - 619 - ] - }, - { - "teal": 404, - "source": 302, - "pc": [ - 620 - ] - }, - { - "teal": 405, - "source": 301, - "pc": [ - 621 - ] - }, - { - "teal": 410, - "source": 306, - "pc": [ - 622 - ] - }, - { - "teal": 413, - "source": 306, - "pc": [ - 623, - 624, - 625 - ] - }, - { - "teal": 414, - "source": 306, - "pc": [ - 626 - ] - }, - { - "teal": 417, - "source": 306, - "pc": [ - 627, - 628, - 629 - ] - }, - { - "teal": 418, - "source": 306, - "pc": [ - 630 - ] - }, - { - "teal": 419, - "source": 306, - "pc": [ - 631 - ] - }, - { - "teal": 420, - "source": 306, - "pc": [ - 632 - ] - }, - { - "teal": 421, - "source": 306, - "pc": [ - 633 - ] - }, - { - "teal": 425, - "source": 306, - "pc": [ - 634, - 635, - 636 - ] - }, - { - "teal": 429, - "source": 307, - "pc": [ - 637 - ] - }, - { - "teal": 430, - "source": 307, - "pc": [ - 638, - 639 - ] - }, - { - "teal": 431, - "source": 307, - "pc": [ - 640 - ] - }, - { - "teal": 432, - "source": 307, - "pc": [ - 641, - 642 - ] - }, - { - "teal": 433, - "source": 307, - "pc": [ - 643 - ] - }, - { - "teal": 434, - "source": 307, - "pc": [ - 644 - ] - }, - { - "teal": 435, - "source": 307, - "pc": [ - 645, - 646 - ] - }, - { - "teal": 436, - "source": 307, - "pc": [ - 647 - ] - }, - { - "teal": 437, - "source": 307, - "pc": [ - 648, - 649 - ] - }, - { - "teal": 438, - "source": 307, - "pc": [ - 650, - 651 - ] - }, - { - "teal": 439, - "source": 307, - "pc": [ - 652 - ] - }, - { - "teal": 440, - "source": 307, - "pc": [ - 653, - 654 - ] - }, - { - "teal": 441, - "source": 307, - "pc": [ - 655 - ] - }, - { - "teal": 442, - "source": 307, - "pc": [ - 656 - ] - }, - { - "teal": 443, - "source": 307, - "pc": [ - 657, - 658 - ] - }, - { - "teal": 444, - "source": 307, - "pc": [ - 659 - ] - }, - { - "teal": 445, - "source": 307, - "pc": [ - 660 - ] - }, - { - "teal": 446, - "source": 306, - "pc": [ - 661 - ] - }, - { - "teal": 451, - "source": 317, - "pc": [ - 662 - ] - }, - { - "teal": 454, - "source": 317, - "pc": [ - 663, - 664, - 665 - ] - }, - { - "teal": 455, - "source": 317, - "pc": [ - 666 - ] - }, - { - "teal": 458, - "source": 317, - "pc": [ - 667, - 668, - 669 - ] - }, - { - "teal": 459, - "source": 317, - "pc": [ - 670 - ] - }, - { - "teal": 460, - "source": 317, - "pc": [ - 671 - ] - }, - { - "teal": 461, - "source": 317, - "pc": [ - 672, - 673 - ] - }, - { - "teal": 462, - "source": 317, - "pc": [ - 674 - ] - }, - { - "teal": 463, - "source": 317, - "pc": [ - 675 - ] - }, - { - "teal": 464, - "source": 317, - "pc": [ - 676, - 677, - 678 - ] - }, - { - "teal": 465, - "source": 317, - "pc": [ - 679 - ] - }, - { - "teal": 466, - "source": 317, - "pc": [ - 680 - ] - }, - { - "teal": 467, - "source": 317, - "pc": [ - 681 - ] - }, - { - "teal": 468, - "source": 317, - "pc": [ - 682 - ] - }, - { - "teal": 469, - "source": 317, - "pc": [ - 683 - ] - }, - { - "teal": 470, - "source": 317, - "pc": [ - 684 - ] - }, - { - "teal": 479, - "source": 317, - "pc": [ - 685, - 686, - 687 - ] - }, - { - "teal": 482, - "source": 317, - "pc": [ - 688 - ] - }, - { - "teal": 483, - "source": 317, - "pc": [ - 689, - 690 - ] - }, - { - "teal": 487, - "source": 318, - "pc": [ - 691 - ] - }, - { - "teal": 488, - "source": 318, - "pc": [ - 692, - 693 - ] - }, - { - "teal": 492, - "source": 319, - "pc": [ - 694, - 695 - ] - }, - { - "teal": 493, - "source": 319, - "pc": [ - 696, - 697 - ] - }, - { - "teal": 494, - "source": 319, - "pc": [ - 698 - ] - }, - { - "teal": 495, - "source": 319, - "pc": [ - 699, - 700 - ] - }, - { - "teal": 496, - "source": 319, - "pc": [ - 701 - ] - }, - { - "teal": 497, - "source": 319, - "pc": [ - 702 - ] - }, - { - "teal": 498, - "source": 319, - "pc": [ - 703, - 704 - ] - }, - { - "teal": 499, - "source": 319, - "pc": [ - 705 - ] - }, - { - "teal": 500, - "source": 319, - "pc": [ - 706, - 707 - ] - }, - { - "teal": 504, - "source": 320, - "pc": [ - 708 - ] - }, - { - "teal": 505, - "source": 320, - "pc": [ - 709, - 710 - ] - }, - { - "teal": 510, - "source": 320, - "pc": [ - 711, - 712 - ] - }, - { - "teal": 511, - "source": 320, - "pc": [ - 713 - ] - }, - { - "teal": 512, - "source": 320, - "pc": [ - 714 - ] - }, - { - "teal": 513, - "source": 320, - "pc": [ - 715, - 716, - 717 - ] - }, - { - "teal": 518, - "source": 321, - "pc": [ - 718, - 719 - ] - }, - { - "teal": 519, - "source": 321, - "pc": [ - 720, - 721 - ] - }, - { - "teal": 520, - "source": 321, - "pc": [ - 722, - 723 - ] - }, - { - "teal": 521, - "source": 321, - "pc": [ - 724 - ] - }, - { - "teal": 522, - "source": 321, - "pc": [ - 725 - ] - }, - { - "teal": 523, - "source": 321, - "pc": [ - 726 - ] - }, - { - "teal": 524, - "source": 321, - "pc": [ - 727 - ] - }, - { - "teal": 525, - "source": 321, - "pc": [ - 728 - ] - }, - { - "teal": 526, - "source": 321, - "pc": [ - 729 - ] - }, - { - "teal": 527, - "source": 321, - "pc": [ - 730 - ] - }, - { - "teal": 528, - "source": 321, - "pc": [ - 731 - ] - }, - { - "teal": 529, - "source": 321, - "pc": [ - 732, - 733, - 734 - ] - }, - { - "teal": 532, - "source": 323, - "pc": [ - 735, - 736, - 737 - ] - }, - { - "teal": 537, - "source": 325, - "pc": [ - 738, - 739 - ] - }, - { - "teal": 538, - "source": 325, - "pc": [ - 740, - 741 - ] - }, - { - "teal": 539, - "source": 325, - "pc": [ - 742, - 743 - ] - }, - { - "teal": 540, - "source": 325, - "pc": [ - 744, - 745 - ] - }, - { - "teal": 541, - "source": 325, - "pc": [ - 746 - ] - }, - { - "teal": 542, - "source": 325, - "pc": [ - 747, - 748 - ] - }, - { - "teal": 543, - "source": 325, - "pc": [ - 749 - ] - }, - { - "teal": 544, - "source": 325, - "pc": [ - 750 - ] - }, - { - "teal": 545, - "source": 325, - "pc": [ - 751, - 752 - ] - }, - { - "teal": 550, - "source": 320, - "pc": [ - 753, - 754 - ] - }, - { - "teal": 551, - "source": 320, - "pc": [ - 755 - ] - }, - { - "teal": 552, - "source": 320, - "pc": [ - 756 - ] - }, - { - "teal": 553, - "source": 320, - "pc": [ - 757, - 758 - ] - }, - { - "teal": 554, - "source": 320, - "pc": [ - 759, - 760, - 761 - ] - }, - { - "teal": 559, - "source": 327, - "pc": [ - 762, - 763 - ] - }, - { - "teal": 562, - "source": 317, - "pc": [ - 764, - 765 - ] - }, - { - "teal": 565, - "source": 317, - "pc": [ - 766, - 767 - ] - }, - { - "teal": 566, - "source": 317, - "pc": [ - 768 - ] - }, - { - "teal": 571, - "source": 334, - "pc": [ - 769 - ] - }, - { - "teal": 574, - "source": 334, - "pc": [ - 770, - 771, - 772 - ] - }, - { - "teal": 575, - "source": 334, - "pc": [ - 773 - ] - }, - { - "teal": 578, - "source": 334, - "pc": [ - 774, - 775, - 776 - ] - }, - { - "teal": 579, - "source": 334, - "pc": [ - 777 - ] - }, - { - "teal": 582, - "source": 334, - "pc": [ - 778, - 779, - 780 - ] - }, - { - "teal": 583, - "source": 334, - "pc": [ - 781 - ] - }, - { - "teal": 584, - "source": 334, - "pc": [ - 782 - ] - }, - { - "teal": 585, - "source": 334, - "pc": [ - 783 - ] - }, - { - "teal": 586, - "source": 334, - "pc": [ - 784 - ] - }, - { - "teal": 587, - "source": 334, - "pc": [ - 785 - ] - }, - { - "teal": 591, - "source": 334, - "pc": [ - 786, - 787, - 788 - ] - }, - { - "teal": 598, - "source": 336, - "pc": [ - 789, - 790 - ] - }, - { - "teal": 599, - "source": 336, - "pc": [ - 791 - ] - }, - { - "teal": 600, - "source": 336, - "pc": [ - 792 - ] - }, - { - "teal": 601, - "source": 336, - "pc": [ - 793 - ] - }, - { - "teal": 602, - "source": 336, - "pc": [ - 794, - 795, - 796 - ] - }, - { - "teal": 603, - "source": 336, - "pc": [ - 797, - 798 - ] - }, - { - "teal": 604, - "source": 336, - "pc": [ - 799 - ] - }, - { - "teal": 605, - "source": 336, - "pc": [ - 800 - ] - }, - { - "teal": 606, - "source": 336, - "pc": [ - 801 - ] - }, - { - "teal": 610, - "source": 335, - "errorMessage": "pool id must be between 1 and number of pools for this validator", - "pc": [ - 802 - ] - }, - { - "teal": 614, - "source": 339, - "pc": [ - 803, - 804 - ] - }, - { - "teal": 615, - "source": 339, - "pc": [ - 805, - 806 - ] - }, - { - "teal": 616, - "source": 339, - "pc": [ - 807 - ] - }, - { - "teal": 617, - "source": 339, - "pc": [ - 808 - ] - }, - { - "teal": 618, - "source": 339, - "pc": [ - 809, - 810 - ] - }, - { - "teal": 619, - "source": 339, - "pc": [ - 811 - ] - }, - { - "teal": 620, - "source": 339, - "pc": [ - 812 - ] - }, - { - "teal": 621, - "source": 339, - "pc": [ - 813 - ] - }, - { - "teal": 622, - "source": 339, - "pc": [ - 814 - ] - }, - { - "teal": 623, - "source": 339, - "pc": [ - 815 - ] - }, - { - "teal": 624, - "source": 339, - "pc": [ - 816 - ] - }, - { - "teal": 625, - "source": 339, - "pc": [ - 817, - 818 - ] - }, - { - "teal": 626, - "source": 339, - "pc": [ - 819 - ] - }, - { - "teal": 627, - "source": 339, - "pc": [ - 820 - ] - }, - { - "teal": 628, - "source": 339, - "pc": [ - 821, - 822 - ] - }, - { - "teal": 629, - "source": 339, - "pc": [ - 823 - ] - }, - { - "teal": 630, - "source": 339, - "pc": [ - 824 - ] - }, - { - "teal": 631, - "source": 334, - "pc": [ - 825 - ] - }, - { - "teal": 636, - "source": 343, - "pc": [ - 826 - ] - }, - { - "teal": 639, - "source": 343, - "pc": [ - 827, - 828, - 829 - ] - }, - { - "teal": 640, - "source": 343, - "pc": [ - 830 - ] - }, - { - "teal": 641, - "source": 343, - "pc": [ - 831 - ] - }, - { - "teal": 642, - "source": 343, - "pc": [ - 832 - ] - }, - { - "teal": 643, - "source": 343, - "pc": [ - 833 - ] - }, - { - "teal": 646, - "source": 343, - "errorMessage": "argument 0 (poolKey) for getPoolInfo must be a (uint64,uint64,uint64)", - "pc": [ - 834 - ] - }, - { - "teal": 649, - "source": 343, - "pc": [ - 835, - 836, - 837 - ] - }, - { - "teal": 650, - "source": 343, - "pc": [ - 838 - ] - }, - { - "teal": 651, - "source": 343, - "pc": [ - 839 - ] - }, - { - "teal": 652, - "source": 343, - "pc": [ - 840 - ] - }, - { - "teal": 653, - "source": 343, - "pc": [ - 841 - ] - }, - { - "teal": 657, - "source": 343, - "pc": [ - 842, - 843, - 844 - ] - }, - { - "teal": 661, - "source": 344, - "pc": [ - 845, - 846 - ] - }, - { - "teal": 662, - "source": 344, - "pc": [ - 847, - 848 - ] - }, - { - "teal": 663, - "source": 344, - "pc": [ - 849, - 850, - 851 - ] - }, - { - "teal": 664, - "source": 344, - "pc": [ - 852 - ] - }, - { - "teal": 665, - "source": 344, - "pc": [ - 853 - ] - }, - { - "teal": 666, - "source": 344, - "pc": [ - 854 - ] - }, - { - "teal": 667, - "source": 344, - "pc": [ - 855, - 856 - ] - }, - { - "teal": 668, - "source": 344, - "pc": [ - 857 - ] - }, - { - "teal": 669, - "source": 344, - "pc": [ - 858 - ] - }, - { - "teal": 670, - "source": 344, - "pc": [ - 859, - 860 - ] - }, - { - "teal": 671, - "source": 344, - "pc": [ - 861 - ] - }, - { - "teal": 672, - "source": 344, - "pc": [ - 862, - 863 - ] - }, - { - "teal": 673, - "source": 344, - "pc": [ - 864, - 865, - 866 - ] - }, - { - "teal": 674, - "source": 344, - "pc": [ - 867 - ] - }, - { - "teal": 675, - "source": 344, - "pc": [ - 868 - ] - }, - { - "teal": 676, - "source": 344, - "pc": [ - 869 - ] - }, - { - "teal": 677, - "source": 344, - "pc": [ - 870, - 871 - ] - }, - { - "teal": 678, - "source": 344, - "pc": [ - 872 - ] - }, - { - "teal": 679, - "source": 343, - "pc": [ - 873 - ] - }, - { - "teal": 684, - "source": 354, - "pc": [ - 874 - ] - }, - { - "teal": 687, - "source": 354, - "pc": [ - 875, - 876, - 877 - ] - }, - { - "teal": 688, - "source": 354, - "pc": [ - 878 - ] - }, - { - "teal": 691, - "source": 354, - "pc": [ - 879, - 880, - 881 - ] - }, - { - "teal": 692, - "source": 354, - "pc": [ - 882 - ] - }, - { - "teal": 693, - "source": 354, - "pc": [ - 883 - ] - }, - { - "teal": 694, - "source": 354, - "pc": [ - 884 - ] - }, - { - "teal": 695, - "source": 354, - "pc": [ - 885 - ] - }, - { - "teal": 696, - "source": 354, - "pc": [ - 886 - ] - }, - { - "teal": 706, - "source": 354, - "pc": [ - 887, - 888, - 889 - ] - }, - { - "teal": 709, - "source": 354, - "pc": [ - 890 - ] - }, - { - "teal": 710, - "source": 354, - "pc": [ - 891, - 892 - ] - }, - { - "teal": 714, - "source": 355, - "pc": [ - 893, - 894 - ] - }, - { - "teal": 715, - "source": 355, - "pc": [ - 895, - 896 - ] - }, - { - "teal": 716, - "source": 355, - "pc": [ - 897 - ] - }, - { - "teal": 717, - "source": 355, - "pc": [ - 898, - 899 - ] - }, - { - "teal": 718, - "source": 355, - "pc": [ - 900 - ] - }, - { - "teal": 719, - "source": 355, - "pc": [ - 901 - ] - }, - { - "teal": 720, - "source": 355, - "pc": [ - 902, - 903 - ] - }, - { - "teal": 721, - "source": 355, - "pc": [ - 904 - ] - }, - { - "teal": 722, - "source": 355, - "pc": [ - 905 - ] - }, - { - "teal": 723, - "source": 355, - "pc": [ - 906, - 907 - ] - }, - { - "teal": 727, - "source": 356, - "pc": [ - 908, - 909, - 910 - ] - }, - { - "teal": 728, - "source": 356, - "pc": [ - 911, - 912 - ] - }, - { - "teal": 729, - "source": 356, - "pc": [ - 913 - ] - }, - { - "teal": 730, - "source": 356, - "pc": [ - 914, - 915 - ] - }, - { - "teal": 734, - "source": 357, - "pc": [ - 916, - 917, - 918 - ] - }, - { - "teal": 735, - "source": 357, - "pc": [ - 919 - ] - }, - { - "teal": 736, - "source": 357, - "pc": [ - 920 - ] - }, - { - "teal": 737, - "source": 357, - "pc": [ - 921, - 922 - ] - }, - { - "teal": 738, - "source": 357, - "pc": [ - 923 - ] - }, - { - "teal": 739, - "source": 357, - "pc": [ - 924 - ] - }, - { - "teal": 740, - "source": 357, - "pc": [ - 925, - 926 - ] - }, - { - "teal": 741, - "source": 357, - "pc": [ - 927 - ] - }, - { - "teal": 742, - "source": 357, - "pc": [ - 928 - ] - }, - { - "teal": 743, - "source": 357, - "pc": [ - 929, - 930 - ] - }, - { - "teal": 748, - "source": 358, - "pc": [ - 931, - 932 - ] - }, - { - "teal": 749, - "source": 358, - "pc": [ - 933 - ] - }, - { - "teal": 750, - "source": 358, - "pc": [ - 934 - ] - }, - { - "teal": 751, - "source": 358, - "pc": [ - 935, - 936, - 937 - ] - }, - { - "teal": 756, - "source": 359, - "pc": [ - 938, - 939, - 940 - ] - }, - { - "teal": 757, - "source": 359, - "pc": [ - 941, - 942 - ] - }, - { - "teal": 763, - "source": 361, - "pc": [ - 943, - 944 - ] - }, - { - "teal": 764, - "source": 361, - "pc": [ - 945, - 946 - ] - }, - { - "teal": 765, - "source": 361, - "pc": [ - 947 - ] - }, - { - "teal": 766, - "source": 361, - "pc": [ - 948, - 949, - 950 - ] - }, - { - "teal": 771, - "source": 362, - "pc": [ - 951, - 952 - ] - }, - { - "teal": 772, - "source": 362, - "pc": [ - 953, - 954 - ] - }, - { - "teal": 777, - "source": 364, - "pc": [ - 955, - 956 - ] - }, - { - "teal": 780, - "source": 354, - "pc": [ - 957, - 958 - ] - }, - { - "teal": 783, - "source": 354, - "pc": [ - 959, - 960 - ] - }, - { - "teal": 784, - "source": 354, - "pc": [ - 961 - ] - }, - { - "teal": 789, - "source": 372, - "pc": [ - 962 - ] - }, - { - "teal": 792, - "source": 372, - "pc": [ - 963, - 964, - 965 - ] - }, - { - "teal": 793, - "source": 372, - "pc": [ - 966 - ] - }, - { - "teal": 794, - "source": 372, - "pc": [ - 967 - ] - }, - { - "teal": 795, - "source": 372, - "pc": [ - 968, - 969 - ] - }, - { - "teal": 796, - "source": 372, - "pc": [ - 970 - ] - }, - { - "teal": 799, - "source": 372, - "errorMessage": "argument 0 (staker) for doesStakerNeedToPayMBR must be a address", - "pc": [ - 971 - ] - }, - { - "teal": 802, - "source": 372, - "pc": [ - 972, - 973, - 974 - ] - }, - { - "teal": 803, - "source": 372, - "pc": [ - 975, - 976 - ] - }, - { - "teal": 804, - "source": 372, - "pc": [ - 977 - ] - }, - { - "teal": 805, - "source": 372, - "pc": [ - 978, - 979 - ] - }, - { - "teal": 806, - "source": 372, - "pc": [ - 980 - ] - }, - { - "teal": 807, - "source": 372, - "pc": [ - 981 - ] - }, - { - "teal": 808, - "source": 372, - "pc": [ - 982 - ] - }, - { - "teal": 809, - "source": 372, - "pc": [ - 983 - ] - }, - { - "teal": 810, - "source": 372, - "pc": [ - 984 - ] - }, - { - "teal": 817, - "source": 372, - "pc": [ - 985, - 986, - 987 - ] - }, - { - "teal": 821, - "source": 373, - "pc": [ - 988 - ] - }, - { - "teal": 822, - "source": 373, - "pc": [ - 989, - 990 - ] - }, - { - "teal": 823, - "source": 373, - "pc": [ - 991 - ] - }, - { - "teal": 824, - "source": 373, - "pc": [ - 992 - ] - }, - { - "teal": 825, - "source": 373, - "pc": [ - 993 - ] - }, - { - "teal": 826, - "source": 373, - "pc": [ - 994 - ] - }, - { - "teal": 827, - "source": 373, - "pc": [ - 995 - ] - }, - { - "teal": 828, - "source": 372, - "pc": [ - 996 - ] - }, - { - "teal": 833, - "source": 382, - "pc": [ - 997 - ] - }, - { - "teal": 836, - "source": 382, - "pc": [ - 998, - 999, - 1000 - ] - }, - { - "teal": 837, - "source": 382, - "pc": [ - 1001 - ] - }, - { - "teal": 838, - "source": 382, - "pc": [ - 1002 - ] - }, - { - "teal": 839, - "source": 382, - "pc": [ - 1003, - 1004 - ] - }, - { - "teal": 840, - "source": 382, - "pc": [ - 1005 - ] - }, - { - "teal": 843, - "source": 382, - "errorMessage": "argument 0 (staker) for getStakedPoolsForAccount must be a address", - "pc": [ - 1006 - ] - }, - { - "teal": 846, - "source": 382, - "pc": [ - 1007, - 1008, - 1009 - ] - }, - { - "teal": 847, - "source": 382, - "pc": [ - 1010 - ] - }, - { - "teal": 848, - "source": 382, - "pc": [ - 1011 - ] - }, - { - "teal": 849, - "source": 382, - "pc": [ - 1012 - ] - }, - { - "teal": 850, - "source": 382, - "pc": [ - 1013 - ] - }, - { - "teal": 851, - "source": 382, - "pc": [ - 1014 - ] - }, - { - "teal": 852, - "source": 382, - "pc": [ - 1015, - 1016, - 1017 - ] - }, - { - "teal": 853, - "source": 382, - "pc": [ - 1018 - ] - }, - { - "teal": 854, - "source": 382, - "pc": [ - 1019 - ] - }, - { - "teal": 855, - "source": 382, - "pc": [ - 1020 - ] - }, - { - "teal": 856, - "source": 382, - "pc": [ - 1021 - ] - }, - { - "teal": 857, - "source": 382, - "pc": [ - 1022 - ] - }, - { - "teal": 858, - "source": 382, - "pc": [ - 1023 - ] - }, - { - "teal": 867, - "source": 382, - "pc": [ - 1024, - 1025, - 1026 - ] - }, - { - "teal": 870, - "source": 382, - "pc": [ - 1027 - ] - }, - { - "teal": 871, - "source": 382, - "pc": [ - 1028, - 1029 - ] - }, - { - "teal": 876, - "source": 383, - "pc": [ - 1030 - ] - }, - { - "teal": 877, - "source": 383, - "pc": [ - 1031, - 1032 - ] - }, - { - "teal": 878, - "source": 383, - "pc": [ - 1033 - ] - }, - { - "teal": 879, - "source": 383, - "pc": [ - 1034 - ] - }, - { - "teal": 880, - "source": 383, - "pc": [ - 1035 - ] - }, - { - "teal": 881, - "source": 383, - "pc": [ - 1036 - ] - }, - { - "teal": 882, - "source": 383, - "pc": [ - 1037 - ] - }, - { - "teal": 883, - "source": 383, - "pc": [ - 1038, - 1039, - 1040 - ] - }, - { - "teal": 888, - "source": 384, - "pc": [ - 1041 - ] - }, - { - "teal": 889, - "source": 384, - "pc": [ - 1042, - 1043, - 1044 - ] - }, - { - "teal": 894, - "source": 386, - "pc": [ - 1045 - ] - }, - { - "teal": 895, - "source": 386, - "pc": [ - 1046, - 1047 - ] - }, - { - "teal": 899, - "source": 387, - "pc": [ - 1048 - ] - }, - { - "teal": 900, - "source": 387, - "pc": [ - 1049, - 1050 - ] - }, - { - "teal": 901, - "source": 387, - "pc": [ - 1051 - ] - }, - { - "teal": 902, - "source": 387, - "pc": [ - 1052 - ] - }, - { - "teal": 905, - "source": 387, - "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", - "pc": [ - 1053 - ] - }, - { - "teal": 906, - "source": 387, - "pc": [ - 1054, - 1055 - ] - }, - { - "teal": 910, - "source": 388, - "pc": [ - 1056 - ] - }, - { - "teal": 911, - "source": 388, - "pc": [ - 1057, - 1058 - ] - }, - { - "teal": 916, - "source": 388, - "pc": [ - 1059, - 1060 - ] - }, - { - "teal": 917, - "source": 388, - "pc": [ - 1061, - 1062 - ] - }, - { - "teal": 918, - "source": 388, - "pc": [ - 1063 - ] - }, - { - "teal": 919, - "source": 388, - "pc": [ - 1064, - 1065, - 1066 - ] - }, - { - "teal": 924, - "source": 389, - "pc": [ - 1067, - 1068 - ] - }, - { - "teal": 925, - "source": 389, - "pc": [ - 1069, - 1070 - ] - }, - { - "teal": 926, - "source": 389, - "pc": [ - 1071 - ] - }, - { - "teal": 927, - "source": 389, - "pc": [ - 1072 - ] - }, - { - "teal": 928, - "source": 389, - "pc": [ - 1073 - ] - }, - { - "teal": 929, - "source": 389, - "pc": [ - 1074 - ] - }, - { - "teal": 930, - "source": 389, - "pc": [ - 1075 - ] - }, - { - "teal": 931, - "source": 389, - "pc": [ - 1076 - ] - }, - { - "teal": 932, - "source": 389, - "pc": [ - 1077 - ] - }, - { - "teal": 933, - "source": 389, - "pc": [ - 1078 - ] - }, - { - "teal": 934, - "source": 389, - "pc": [ - 1079 - ] - }, - { - "teal": 935, - "source": 389, - "pc": [ - 1080, - 1081, - 1082 - ] - }, - { - "teal": 940, - "source": 390, - "pc": [ - 1083, - 1084 - ] - }, - { - "teal": 941, - "source": 390, - "pc": [ - 1085, - 1086 - ] - }, - { - "teal": 942, - "source": 390, - "pc": [ - 1087, - 1088 - ] - }, - { - "teal": 943, - "source": 390, - "pc": [ - 1089 - ] - }, - { - "teal": 944, - "source": 390, - "pc": [ - 1090 - ] - }, - { - "teal": 945, - "source": 390, - "pc": [ - 1091 - ] - }, - { - "teal": 946, - "source": 390, - "pc": [ - 1092 - ] - }, - { - "teal": 947, - "source": 390, - "pc": [ - 1093 - ] - }, - { - "teal": 948, - "source": 390, - "pc": [ - 1094, - 1095 - ] - }, - { - "teal": 955, - "source": 388, - "pc": [ - 1096, - 1097 - ] - }, - { - "teal": 956, - "source": 388, - "pc": [ - 1098 - ] - }, - { - "teal": 957, - "source": 388, - "pc": [ - 1099 - ] - }, - { - "teal": 958, - "source": 388, - "pc": [ - 1100, - 1101 - ] - }, - { - "teal": 959, - "source": 388, - "pc": [ - 1102, - 1103, - 1104 - ] - }, - { - "teal": 964, - "source": 393, - "pc": [ - 1105, - 1106 - ] - }, - { - "teal": 968, - "source": 382, - "pc": [ - 1107, - 1108 - ] - }, - { - "teal": 971, - "source": 382, - "pc": [ - 1109, - 1110 - ] - }, - { - "teal": 972, - "source": 382, - "pc": [ - 1111 - ] - }, - { - "teal": 977, - "source": 404, - "pc": [ - 1112 - ] - }, - { - "teal": 980, - "source": 404, - "pc": [ - 1113, - 1114, - 1115 - ] - }, - { - "teal": 981, - "source": 404, - "pc": [ - 1116 - ] - }, - { - "teal": 984, - "source": 404, - "pc": [ - 1117, - 1118, - 1119 - ] - }, - { - "teal": 985, - "source": 404, - "pc": [ - 1120 - ] - }, - { - "teal": 986, - "source": 404, - "pc": [ - 1121 - ] - }, - { - "teal": 987, - "source": 404, - "pc": [ - 1122 - ] - }, - { - "teal": 988, - "source": 404, - "pc": [ - 1123 - ] - }, - { - "teal": 998, - "source": 404, - "pc": [ - 1124, - 1125, - 1126 - ] - }, - { - "teal": 1002, - "source": 405, - "pc": [ - 1127, - 1128 - ] - }, - { - "teal": 1003, - "source": 405, - "pc": [ - 1129, - 1130 - ] - }, - { - "teal": 1004, - "source": 405, - "pc": [ - 1131 - ] - }, - { - "teal": 1005, - "source": 405, - "pc": [ - 1132, - 1133 - ] - }, - { - "teal": 1006, - "source": 405, - "pc": [ - 1134 - ] - }, - { - "teal": 1007, - "source": 405, - "pc": [ - 1135 - ] - }, - { - "teal": 1008, - "source": 405, - "pc": [ - 1136, - 1137 - ] - }, - { - "teal": 1009, - "source": 405, - "pc": [ - 1138 - ] - }, - { - "teal": 1010, - "source": 404, - "pc": [ - 1139 - ] - }, - { - "teal": 1015, - "source": 409, - "pc": [ - 1140 - ] - }, - { - "teal": 1018, - "source": 409, - "pc": [ - 1141, - 1142, - 1143 - ] - }, - { - "teal": 1019, - "source": 409, - "pc": [ - 1144 - ] - }, - { - "teal": 1022, - "source": 409, - "pc": [ - 1145, - 1146, - 1147 - ] - }, - { - "teal": 1023, - "source": 409, - "pc": [ - 1148 - ] - }, - { - "teal": 1024, - "source": 409, - "pc": [ - 1149 - ] - }, - { - "teal": 1025, - "source": 409, - "pc": [ - 1150 - ] - }, - { - "teal": 1026, - "source": 409, - "pc": [ - 1151 - ] - }, - { - "teal": 1030, - "source": 409, - "pc": [ - 1152, - 1153, - 1154 - ] - }, - { - "teal": 1034, - "source": 410, - "pc": [ - 1155 - ] - }, - { - "teal": 1035, - "source": 410, - "pc": [ - 1156, - 1157 - ] - }, - { - "teal": 1036, - "source": 410, - "pc": [ - 1158 - ] - }, - { - "teal": 1037, - "source": 410, - "pc": [ - 1159 - ] - }, - { - "teal": 1038, - "source": 410, - "pc": [ - 1160 - ] - }, - { - "teal": 1039, - "source": 410, - "pc": [ - 1161 - ] - }, - { - "teal": 1040, - "source": 410, - "pc": [ - 1162 - ] - }, - { - "teal": 1043, - "source": 410, - "errorMessage": "the specified validator id doesn't exist", - "pc": [ - 1163 - ] - }, - { - "teal": 1047, - "source": 412, - "pc": [ - 1164, - 1165 - ] - }, - { - "teal": 1048, - "source": 412, - "pc": [ - 1166, - 1167 - ] - }, - { - "teal": 1049, - "source": 412, - "pc": [ - 1168 - ] - }, - { - "teal": 1050, - "source": 412, - "pc": [ - 1169, - 1170 - ] - }, - { - "teal": 1051, - "source": 412, - "pc": [ - 1171 - ] - }, - { - "teal": 1052, - "source": 412, - "pc": [ - 1172 - ] - }, - { - "teal": 1053, - "source": 412, - "pc": [ - 1173, - 1174 - ] - }, - { - "teal": 1054, - "source": 412, - "pc": [ - 1175 - ] - }, - { - "teal": 1055, - "source": 409, - "pc": [ - 1176 - ] - }, - { - "teal": 1060, - "source": 415, - "pc": [ - 1177 - ] - }, - { - "teal": 1063, - "source": 415, - "pc": [ - 1178, - 1179, - 1180 - ] - }, - { - "teal": 1064, - "source": 415, - "pc": [ - 1181 - ] - }, - { - "teal": 1065, - "source": 415, - "pc": [ - 1182 - ] - }, - { - "teal": 1066, - "source": 415, - "pc": [ - 1183 - ] - }, - { - "teal": 1067, - "source": 415, - "pc": [ - 1184 - ] - }, - { - "teal": 1068, - "source": 415, - "pc": [ - 1185 - ] - }, - { - "teal": 1072, - "source": 415, - "pc": [ - 1186, - 1187, - 1188 - ] - }, - { - "teal": 1076, - "source": 416, - "pc": [ - 1189, - 1190 - ] - }, - { - "teal": 1077, - "source": 415, - "pc": [ - 1191 - ] - }, - { - "teal": 1082, - "source": 427, - "pc": [ - 1192 - ] - }, - { - "teal": 1085, - "source": 427, - "pc": [ - 1193, - 1194, - 1195 - ] - }, - { - "teal": 1086, - "source": 427, - "pc": [ - 1196 - ] - }, - { - "teal": 1087, - "source": 427, - "pc": [ - 1197 - ] - }, - { - "teal": 1088, - "source": 427, - "pc": [ - 1198, - 1199 - ] - }, - { - "teal": 1089, - "source": 427, - "pc": [ - 1200 - ] - }, - { - "teal": 1092, - "source": 427, - "errorMessage": "argument 0 (config) for addValidator must be a (uint64,address,address,uint64,uint8,address,uint64[4],uint64,uint64,uint64,uint32,uint32,address,uint64,uint64,uint8,uint64,uint64)", - "pc": [ - 1201 - ] - }, - { - "teal": 1095, - "source": 427, - "pc": [ - 1202, - 1203, - 1204 - ] - }, - { - "teal": 1096, - "source": 427, - "pc": [ - 1205, - 1206, - 1207 - ] - }, - { - "teal": 1099, - "source": 427, - "pc": [ - 1208, - 1209 - ] - }, - { - "teal": 1100, - "source": 427, - "pc": [ - 1210 - ] - }, - { - "teal": 1101, - "source": 427, - "pc": [ - 1211 - ] - }, - { - "teal": 1102, - "source": 427, - "pc": [ - 1212 - ] - }, - { - "teal": 1103, - "source": 427, - "pc": [ - 1213, - 1214 - ] - }, - { - "teal": 1104, - "source": 427, - "pc": [ - 1215 - ] - }, - { - "teal": 1105, - "source": 427, - "pc": [ - 1216 - ] - }, - { - "teal": 1108, - "source": 427, - "errorMessage": "argument 2 (mbrPayment) for addValidator must be a pay transaction", - "pc": [ - 1217 - ] - }, - { - "teal": 1111, - "source": 427, - "pc": [ - 1218, - 1219, - 1220 - ] - }, - { - "teal": 1112, - "source": 427, - "pc": [ - 1221 - ] - }, - { - "teal": 1113, - "source": 427, - "pc": [ - 1222 - ] - }, - { - "teal": 1114, - "source": 427, - "pc": [ - 1223 - ] - }, - { - "teal": 1115, - "source": 427, - "pc": [ - 1224 - ] - }, - { - "teal": 1116, - "source": 427, - "pc": [ - 1225 - ] - }, - { - "teal": 1128, - "source": 427, - "pc": [ - 1226, - 1227, - 1228 - ] - }, - { - "teal": 1131, - "source": 427, - "pc": [ - 1229 - ] - }, - { - "teal": 1135, - "source": 428, - "pc": [ - 1230, - 1231 - ] - }, - { - "teal": 1136, - "source": 428, - "pc": [ - 1232, - 1233, - 1234 - ] - }, - { - "teal": 1140, - "source": 429, - "pc": [ - 1235, - 1236 - ] - }, - { - "teal": 1141, - "source": 429, - "pc": [ - 1237, - 1238, - 1239 - ] - }, - { - "teal": 1142, - "source": 429, - "pc": [ - 1240, - 1241 - ] - }, - { - "teal": 1143, - "source": 429, - "pc": [ - 1242 - ] - }, - { - "teal": 1144, - "source": 429, - "pc": [ - 1243 - ] - }, - { - "teal": 1148, - "source": 430, - "pc": [ - 1244, - 1245 - ] - }, - { - "teal": 1149, - "source": 430, - "pc": [ - 1246, - 1247, - 1248 - ] - }, - { - "teal": 1150, - "source": 430, - "pc": [ - 1249, - 1250 - ] - }, - { - "teal": 1151, - "source": 430, - "pc": [ - 1251 - ] - }, - { - "teal": 1152, - "source": 430, - "pc": [ - 1252 - ] - }, - { - "teal": 1156, - "source": 431, - "pc": [ - 1253, - 1254 - ] - }, - { - "teal": 1157, - "source": 431, - "pc": [ - 1255, - 1256 - ] - }, - { - "teal": 1158, - "source": 431, - "pc": [ - 1257, - 1258, - 1259 - ] - }, - { - "teal": 1159, - "source": 431, - "pc": [ - 1260 - ] - }, - { - "teal": 1162, - "source": 431, - "errorMessage": "sender must be owner to add new validator", - "pc": [ - 1261 - ] - }, - { - "teal": 1167, - "source": 433, - "pc": [ - 1262, - 1263 - ] - }, - { - "teal": 1168, - "source": 433, - "pc": [ - 1264, - 1265 - ] - }, - { - "teal": 1169, - "source": 433, - "pc": [ - 1266, - 1267, - 1268 - ] - }, - { - "teal": 1170, - "source": 433, - "pc": [ - 1269, - 1270, - 1271 - ] - }, - { - "teal": 1171, - "source": 433, - "pc": [ - 1272 - ] - }, - { - "teal": 1172, - "source": 433, - "pc": [ - 1273 - ] - }, - { - "teal": 1175, - "source": 433, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"this.getMbrAmounts().addValidatorMbr\"}", - "pc": [ - 1274 - ] - }, - { - "teal": 1179, - "source": 435, - "pc": [ - 1275, - 1276 - ] - }, - { - "teal": 1180, - "source": 435, - "pc": [ - 1277, - 1278 - ] - }, - { - "teal": 1181, - "source": 435, - "pc": [ - 1279, - 1280, - 1281, - 1282, - 1283 - ] - }, - { - "teal": 1182, - "source": 435, - "pc": [ - 1284 - ] - }, - { - "teal": 1185, - "source": 435, - "errorMessage": "fee must be 10 ALGO or more to prevent spamming of validators", - "pc": [ - 1285 - ] - }, - { - "teal": 1189, - "source": 438, - "pc": [ - 1286, - 1287 - ] - }, - { - "teal": 1190, - "source": 438, - "pc": [ - 1288 - ] - }, - { - "teal": 1191, - "source": 438, - "pc": [ - 1289 - ] - }, - { - "teal": 1192, - "source": 438, - "pc": [ - 1290 - ] - }, - { - "teal": 1193, - "source": 438, - "pc": [ - 1291, - 1292 - ] - }, - { - "teal": 1197, - "source": 439, - "pc": [ - 1293, - 1294 - ] - }, - { - "teal": 1198, - "source": 439, - "pc": [ - 1295, - 1296 - ] - }, - { - "teal": 1199, - "source": 439, - "pc": [ - 1297 - ] - }, - { - "teal": 1203, - "source": 441, - "pc": [ - 1298 - ] - }, - { - "teal": 1204, - "source": 441, - "pc": [ - 1299, - 1300 - ] - }, - { - "teal": 1205, - "source": 441, - "pc": [ - 1301 - ] - }, - { - "teal": 1206, - "source": 441, - "pc": [ - 1302 - ] - }, - { - "teal": 1207, - "source": 441, - "pc": [ - 1303, - 1304, - 1305 - ] - }, - { - "teal": 1208, - "source": 441, - "pc": [ - 1306 - ] - }, - { - "teal": 1209, - "source": 441, - "pc": [ - 1307 - ] - }, - { - "teal": 1213, - "source": 442, - "pc": [ - 1308 - ] - }, - { - "teal": 1214, - "source": 442, - "pc": [ - 1309, - 1310 - ] - }, - { - "teal": 1215, - "source": 442, - "pc": [ - 1311 - ] - }, - { - "teal": 1216, - "source": 442, - "pc": [ - 1312, - 1313 - ] - }, - { - "teal": 1217, - "source": 442, - "pc": [ - 1314 - ] - }, - { - "teal": 1218, - "source": 442, - "pc": [ - 1315 - ] - }, - { - "teal": 1219, - "source": 442, - "pc": [ - 1316, - 1317 - ] - }, - { - "teal": 1220, - "source": 442, - "pc": [ - 1318 - ] - }, - { - "teal": 1224, - "source": 443, - "pc": [ - 1319 - ] - }, - { - "teal": 1225, - "source": 443, - "pc": [ - 1320, - 1321 - ] - }, - { - "teal": 1226, - "source": 443, - "pc": [ - 1322 - ] - }, - { - "teal": 1227, - "source": 443, - "pc": [ - 1323 - ] - }, - { - "teal": 1228, - "source": 443, - "pc": [ - 1324, - 1325 - ] - }, - { - "teal": 1229, - "source": 443, - "pc": [ - 1326 - ] - }, - { - "teal": 1230, - "source": 443, - "pc": [ - 1327 - ] - }, - { - "teal": 1231, - "source": 443, - "pc": [ - 1328, - 1329 - ] - }, - { - "teal": 1232, - "source": 443, - "pc": [ - 1330 - ] - }, - { - "teal": 1237, - "source": 446, - "pc": [ - 1331, - 1332 - ] - }, - { - "teal": 1238, - "source": 446, - "pc": [ - 1333, - 1334, - 1335 - ] - }, - { - "teal": 1239, - "source": 446, - "pc": [ - 1336 - ] - }, - { - "teal": 1240, - "source": 446, - "pc": [ - 1337 - ] - }, - { - "teal": 1241, - "source": 446, - "pc": [ - 1338 - ] - }, - { - "teal": 1242, - "source": 446, - "pc": [ - 1339, - 1340, - 1341 - ] - }, - { - "teal": 1251, - "source": 448, - "pc": [ - 1342 - ] - }, - { - "teal": 1252, - "source": 448, - "pc": [ - 1343, - 1344 - ] - }, - { - "teal": 1253, - "source": 448, - "pc": [ - 1345, - 1346 - ] - }, - { - "teal": 1257, - "source": 449, - "pc": [ - 1347, - 1348 - ] - }, - { - "teal": 1258, - "source": 449, - "pc": [ - 1349, - 1350 - ] - }, - { - "teal": 1262, - "source": 450, - "pc": [ - 1351, - 1352 - ] - }, - { - "teal": 1263, - "source": 450, - "pc": [ - 1353, - 1354 - ] - }, - { - "teal": 1264, - "source": 450, - "pc": [ - 1355, - 1356 - ] - }, - { - "teal": 1265, - "source": 450, - "pc": [ - 1357, - 1358 - ] - }, - { - "teal": 1266, - "source": 450, - "pc": [ - 1359, - 1360 - ] - }, - { - "teal": 1267, - "source": 450, - "pc": [ - 1361, - 1362, - 1363 - ] - }, - { - "teal": 1268, - "source": 450, - "pc": [ - 1364 - ] - }, - { - "teal": 1269, - "source": 450, - "pc": [ - 1365 - ] - }, - { - "teal": 1270, - "source": 450, - "pc": [ - 1366, - 1367 - ] - }, - { - "teal": 1274, - "source": 451, - "pc": [ - 1368, - 1369 - ] - }, - { - "teal": 1275, - "source": 451, - "pc": [ - 1370, - 1371, - 1372 - ] - }, - { - "teal": 1276, - "source": 451, - "pc": [ - 1373 - ] - }, - { - "teal": 1277, - "source": 451, - "pc": [ - 1374, - 1375 - ] - }, - { - "teal": 1280, - "source": 448, - "pc": [ - 1376 - ] - }, - { - "teal": 1281, - "source": 448, - "pc": [ - 1377, - 1378 - ] - }, - { - "teal": 1284, - "source": 448, - "pc": [ - 1379 - ] - }, - { - "teal": 1288, - "source": 453, - "pc": [ - 1380, - 1381 - ] - }, - { - "teal": 1289, - "source": 453, - "pc": [ - 1382 - ] - }, - { - "teal": 1290, - "source": 453, - "pc": [ - 1383 - ] - }, - { - "teal": 1291, - "source": 453, - "pc": [ - 1384 - ] - }, - { - "teal": 1294, - "source": 453, - "errorMessage": "provided NFD isn't valid", - "pc": [ - 1385 - ] - }, - { - "teal": 1301, - "source": 456, - "pc": [ - 1386, - 1387 - ] - }, - { - "teal": 1302, - "source": 456, - "pc": [ - 1388, - 1389 - ] - }, - { - "teal": 1303, - "source": 456, - "pc": [ - 1390, - 1391, - 1392 - ] - }, - { - "teal": 1304, - "source": 456, - "pc": [ - 1393 - ] - }, - { - "teal": 1305, - "source": 456, - "pc": [ - 1394, - 1395 - ] - }, - { - "teal": 1306, - "source": 456, - "pc": [ - 1396 - ] - }, - { - "teal": 1309, - "source": 456, - "errorMessage": "global state value does not exist: AppID.fromUint64(config.nfdForInfo).globalState('i.owner.a')", - "pc": [ - 1397 - ] - }, - { - "teal": 1310, - "source": 456, - "pc": [ - 1398 - ] - }, - { - "teal": 1313, - "source": 455, - "errorMessage": "If specifying NFD, account adding validator must be owner", - "pc": [ - 1399 - ] - }, - { - "teal": 1320, - "source": 461, - "pc": [ - 1400, - 1401 - ] - }, - { - "teal": 1321, - "source": 461, - "pc": [ - 1402, - 1403, - 1404 - ] - }, - { - "teal": 1322, - "source": 461, - "pc": [ - 1405 - ] - }, - { - "teal": 1323, - "source": 461, - "pc": [ - 1406, - 1407 - ] - }, - { - "teal": 1324, - "source": 461, - "pc": [ - 1408 - ] - }, - { - "teal": 1325, - "source": 461, - "pc": [ - 1409 - ] - }, - { - "teal": 1326, - "source": 461, - "pc": [ - 1410, - 1411, - 1412 - ] - }, - { - "teal": 1327, - "source": 462, - "pc": [ - 1413, - 1414 - ] - }, - { - "teal": 1328, - "source": 462, - "pc": [ - 1415, - 1416, - 1417 - ] - }, - { - "teal": 1329, - "source": 462, - "pc": [ - 1418 - ] - }, - { - "teal": 1330, - "source": 462, - "pc": [ - 1419, - 1420 - ] - }, - { - "teal": 1331, - "source": 462, - "pc": [ - 1421 - ] - }, - { - "teal": 1332, - "source": 461, - "pc": [ - 1422 - ] - }, - { - "teal": 1335, - "source": 460, - "pc": [ - 1423, - 1424, - 1425 - ] - }, - { - "teal": 1340, - "source": 465, - "pc": [ - 1426, - 1427 - ] - }, - { - "teal": 1341, - "source": 465, - "pc": [ - 1428, - 1429, - 1430 - ] - }, - { - "teal": 1342, - "source": 465, - "pc": [ - 1431 - ] - }, - { - "teal": 1343, - "source": 465, - "pc": [ - 1432, - 1433, - 1434 - ] - }, - { - "teal": 1346, - "source": 465, - "errorMessage": "provided NFD App id for gating must be valid NFD", - "pc": [ - 1435 - ] - }, - { - "teal": 1351, - "source": 468, - "pc": [ - 1436, - 1437 - ] - }, - { - "teal": 1354, - "source": 427, - "pc": [ - 1438, - 1439 - ] - }, - { - "teal": 1355, - "source": 427, - "pc": [ - 1440 - ] - }, - { - "teal": 1360, - "source": 478, - "pc": [ - 1441, - 1442, - 1443 - ] - }, - { - "teal": 1361, - "source": 478, - "pc": [ - 1444 - ] - }, - { - "teal": 1362, - "source": 478, - "pc": [ - 1445 - ] - }, - { - "teal": 1363, - "source": 478, - "pc": [ - 1446, - 1447 - ] - }, - { - "teal": 1364, - "source": 478, - "pc": [ - 1448 - ] - }, - { - "teal": 1367, - "source": 478, - "errorMessage": "argument 0 (manager) for changeValidatorManager must be a address", - "pc": [ - 1449 - ] - }, - { - "teal": 1370, - "source": 478, - "pc": [ - 1450, - 1451, - 1452 - ] - }, - { - "teal": 1371, - "source": 478, - "pc": [ - 1453 - ] - }, - { - "teal": 1374, - "source": 478, - "pc": [ - 1454, - 1455, - 1456 - ] - }, - { - "teal": 1375, - "source": 478, - "pc": [ - 1457 - ] - }, - { - "teal": 1376, - "source": 478, - "pc": [ - 1458 - ] - }, - { - "teal": 1386, - "source": 478, - "pc": [ - 1459, - 1460, - 1461 - ] - }, - { - "teal": 1393, - "source": 480, - "pc": [ - 1462, - 1463 - ] - }, - { - "teal": 1394, - "source": 480, - "pc": [ - 1464 - ] - }, - { - "teal": 1395, - "source": 480, - "pc": [ - 1465, - 1466 - ] - }, - { - "teal": 1396, - "source": 480, - "pc": [ - 1467 - ] - }, - { - "teal": 1397, - "source": 480, - "pc": [ - 1468, - 1469 - ] - }, - { - "teal": 1398, - "source": 480, - "pc": [ - 1470 - ] - }, - { - "teal": 1399, - "source": 480, - "pc": [ - 1471 - ] - }, - { - "teal": 1400, - "source": 480, - "pc": [ - 1472, - 1473 - ] - }, - { - "teal": 1401, - "source": 480, - "pc": [ - 1474 - ] - }, - { - "teal": 1402, - "source": 480, - "pc": [ - 1475 - ] - }, - { - "teal": 1405, - "source": 479, - "errorMessage": "can only be called by validator owner", - "pc": [ - 1476 - ] - }, - { - "teal": 1409, - "source": 483, - "pc": [ - 1477, - 1478 - ] - }, - { - "teal": 1410, - "source": 483, - "pc": [ - 1479, - 1480 - ] - }, - { - "teal": 1411, - "source": 483, - "pc": [ - 1481 - ] - }, - { - "teal": 1412, - "source": 483, - "pc": [ - 1482, - 1483 - ] - }, - { - "teal": 1413, - "source": 483, - "pc": [ - 1484 - ] - }, - { - "teal": 1414, - "source": 483, - "pc": [ - 1485 - ] - }, - { - "teal": 1415, - "source": 483, - "pc": [ - 1486, - 1487 - ] - }, - { - "teal": 1416, - "source": 483, - "pc": [ - 1488 - ] - }, - { - "teal": 1417, - "source": 478, - "pc": [ - 1489 - ] - }, - { - "teal": 1422, - "source": 494, - "pc": [ - 1490, - 1491, - 1492 - ] - }, - { - "teal": 1423, - "source": 494, - "pc": [ - 1493 - ] - }, - { - "teal": 1426, - "source": 494, - "pc": [ - 1494, - 1495, - 1496 - ] - }, - { - "teal": 1427, - "source": 494, - "pc": [ - 1497 - ] - }, - { - "teal": 1430, - "source": 494, - "pc": [ - 1498, - 1499, - 1500 - ] - }, - { - "teal": 1431, - "source": 494, - "pc": [ - 1501 - ] - }, - { - "teal": 1434, - "source": 494, - "pc": [ - 1502, - 1503, - 1504 - ] - }, - { - "teal": 1435, - "source": 494, - "pc": [ - 1505 - ] - }, - { - "teal": 1436, - "source": 494, - "pc": [ - 1506 - ] - }, - { - "teal": 1447, - "source": 494, - "pc": [ - 1507, - 1508, - 1509 - ] - }, - { - "teal": 1454, - "source": 496, - "pc": [ - 1510, - 1511 - ] - }, - { - "teal": 1455, - "source": 496, - "pc": [ - 1512 - ] - }, - { - "teal": 1456, - "source": 496, - "pc": [ - 1513, - 1514 - ] - }, - { - "teal": 1457, - "source": 496, - "pc": [ - 1515 - ] - }, - { - "teal": 1458, - "source": 496, - "pc": [ - 1516, - 1517 - ] - }, - { - "teal": 1459, - "source": 496, - "pc": [ - 1518 - ] - }, - { - "teal": 1460, - "source": 496, - "pc": [ - 1519 - ] - }, - { - "teal": 1461, - "source": 496, - "pc": [ - 1520, - 1521 - ] - }, - { - "teal": 1462, - "source": 496, - "pc": [ - 1522 - ] - }, - { - "teal": 1463, - "source": 496, - "pc": [ - 1523 - ] - }, - { - "teal": 1466, - "source": 495, - "errorMessage": "can only be called by validator owner", - "pc": [ - 1524 - ] - }, - { - "teal": 1470, - "source": 499, - "pc": [ - 1525, - 1526 - ] - }, - { - "teal": 1471, - "source": 499, - "pc": [ - 1527, - 1528 - ] - }, - { - "teal": 1472, - "source": 499, - "pc": [ - 1529 - ] - }, - { - "teal": 1473, - "source": 499, - "pc": [ - 1530 - ] - }, - { - "teal": 1474, - "source": 499, - "pc": [ - 1531, - 1532 - ] - }, - { - "teal": 1475, - "source": 499, - "pc": [ - 1533 - ] - }, - { - "teal": 1476, - "source": 499, - "pc": [ - 1534 - ] - }, - { - "teal": 1477, - "source": 499, - "pc": [ - 1535, - 1536 - ] - }, - { - "teal": 1478, - "source": 499, - "pc": [ - 1537 - ] - }, - { - "teal": 1482, - "source": 500, - "pc": [ - 1538, - 1539, - 1540 - ] - }, - { - "teal": 1483, - "source": 500, - "pc": [ - 1541, - 1542 - ] - }, - { - "teal": 1484, - "source": 500, - "pc": [ - 1543 - ] - }, - { - "teal": 1485, - "source": 500, - "pc": [ - 1544 - ] - }, - { - "teal": 1486, - "source": 500, - "pc": [ - 1545, - 1546 - ] - }, - { - "teal": 1487, - "source": 500, - "pc": [ - 1547 - ] - }, - { - "teal": 1488, - "source": 500, - "pc": [ - 1548 - ] - }, - { - "teal": 1489, - "source": 500, - "pc": [ - 1549, - 1550 - ] - }, - { - "teal": 1490, - "source": 500, - "pc": [ - 1551 - ] - }, - { - "teal": 1491, - "source": 494, - "pc": [ - 1552 - ] - }, - { - "teal": 1496, - "source": 511, - "pc": [ - 1553, - 1554, - 1555 - ] - }, - { - "teal": 1497, - "source": 511, - "pc": [ - 1556, - 1557, - 1558 - ] - }, - { - "teal": 1500, - "source": 511, - "pc": [ - 1559, - 1560, - 1561 - ] - }, - { - "teal": 1501, - "source": 511, - "pc": [ - 1562 - ] - }, - { - "teal": 1504, - "source": 511, - "pc": [ - 1563, - 1564, - 1565 - ] - }, - { - "teal": 1505, - "source": 511, - "pc": [ - 1566 - ] - }, - { - "teal": 1508, - "source": 511, - "pc": [ - 1567, - 1568, - 1569 - ] - }, - { - "teal": 1509, - "source": 511, - "pc": [ - 1570 - ] - }, - { - "teal": 1510, - "source": 511, - "pc": [ - 1571 - ] - }, - { - "teal": 1521, - "source": 511, - "pc": [ - 1572, - 1573, - 1574 - ] - }, - { - "teal": 1528, - "source": 514, - "pc": [ - 1575, - 1576 - ] - }, - { - "teal": 1529, - "source": 514, - "pc": [ - 1577 - ] - }, - { - "teal": 1530, - "source": 514, - "pc": [ - 1578, - 1579 - ] - }, - { - "teal": 1531, - "source": 514, - "pc": [ - 1580 - ] - }, - { - "teal": 1532, - "source": 514, - "pc": [ - 1581, - 1582 - ] - }, - { - "teal": 1533, - "source": 514, - "pc": [ - 1583 - ] - }, - { - "teal": 1534, - "source": 514, - "pc": [ - 1584 - ] - }, - { - "teal": 1535, - "source": 514, - "pc": [ - 1585, - 1586 - ] - }, - { - "teal": 1536, - "source": 514, - "pc": [ - 1587 - ] - }, - { - "teal": 1537, - "source": 514, - "pc": [ - 1588 - ] - }, - { - "teal": 1540, - "source": 513, - "errorMessage": "can only be called by validator owner", - "pc": [ - 1589 - ] - }, - { - "teal": 1548, - "source": 518, - "pc": [ - 1590 - ] - }, - { - "teal": 1549, - "source": 518, - "pc": [ - 1591, - 1592 - ] - }, - { - "teal": 1550, - "source": 518, - "pc": [ - 1593, - 1594 - ] - }, - { - "teal": 1554, - "source": 519, - "pc": [ - 1595, - 1596 - ] - }, - { - "teal": 1555, - "source": 519, - "pc": [ - 1597, - 1598 - ] - }, - { - "teal": 1559, - "source": 520, - "pc": [ - 1599, - 1600 - ] - }, - { - "teal": 1560, - "source": 520, - "pc": [ - 1601, - 1602 - ] - }, - { - "teal": 1561, - "source": 520, - "pc": [ - 1603, - 1604 - ] - }, - { - "teal": 1562, - "source": 520, - "pc": [ - 1605, - 1606 - ] - }, - { - "teal": 1563, - "source": 520, - "pc": [ - 1607, - 1608 - ] - }, - { - "teal": 1564, - "source": 520, - "pc": [ - 1609 - ] - }, - { - "teal": 1565, - "source": 520, - "pc": [ - 1610, - 1611 - ] - }, - { - "teal": 1569, - "source": 521, - "pc": [ - 1612, - 1613 - ] - }, - { - "teal": 1570, - "source": 521, - "pc": [ - 1614, - 1615 - ] - }, - { - "teal": 1573, - "source": 518, - "pc": [ - 1616 - ] - }, - { - "teal": 1574, - "source": 518, - "pc": [ - 1617, - 1618 - ] - }, - { - "teal": 1577, - "source": 518, - "pc": [ - 1619 - ] - }, - { - "teal": 1584, - "source": 525, - "pc": [ - 1620, - 1621 - ] - }, - { - "teal": 1585, - "source": 525, - "pc": [ - 1622, - 1623 - ] - }, - { - "teal": 1586, - "source": 525, - "pc": [ - 1624, - 1625 - ] - }, - { - "teal": 1587, - "source": 525, - "pc": [ - 1626 - ] - }, - { - "teal": 1590, - "source": 525, - "errorMessage": "global state value does not exist: AppID.fromUint64(nfdAppID).globalState('i.owner.a')", - "pc": [ - 1627 - ] - }, - { - "teal": 1591, - "source": 525, - "pc": [ - 1628 - ] - }, - { - "teal": 1594, - "source": 524, - "errorMessage": "If specifying NFD, account adding validator must be owner", - "pc": [ - 1629 - ] - }, - { - "teal": 1598, - "source": 528, - "pc": [ - 1630, - 1631 - ] - }, - { - "teal": 1599, - "source": 528, - "pc": [ - 1632, - 1633 - ] - }, - { - "teal": 1600, - "source": 528, - "pc": [ - 1634 - ] - }, - { - "teal": 1601, - "source": 528, - "pc": [ - 1635 - ] - }, - { - "teal": 1602, - "source": 528, - "pc": [ - 1636, - 1637 - ] - }, - { - "teal": 1603, - "source": 528, - "pc": [ - 1638 - ] - }, - { - "teal": 1604, - "source": 528, - "pc": [ - 1639 - ] - }, - { - "teal": 1605, - "source": 528, - "pc": [ - 1640, - 1641 - ] - }, - { - "teal": 1606, - "source": 528, - "pc": [ - 1642 - ] - }, - { - "teal": 1607, - "source": 511, - "pc": [ - 1643 - ] - }, - { - "teal": 1612, - "source": 535, - "pc": [ - 1644, - 1645, - 1646 - ] - }, - { - "teal": 1613, - "source": 535, - "pc": [ - 1647 - ] - }, - { - "teal": 1614, - "source": 535, - "pc": [ - 1648 - ] - }, - { - "teal": 1615, - "source": 535, - "pc": [ - 1649, - 1650 - ] - }, - { - "teal": 1616, - "source": 535, - "pc": [ - 1651 - ] - }, - { - "teal": 1619, - "source": 535, - "errorMessage": "argument 0 (commissionAddress) for changeValidatorCommissionAddress must be a address", - "pc": [ - 1652 - ] - }, - { - "teal": 1622, - "source": 535, - "pc": [ - 1653, - 1654, - 1655 - ] - }, - { - "teal": 1623, - "source": 535, - "pc": [ - 1656 - ] - }, - { - "teal": 1626, - "source": 535, - "pc": [ - 1657, - 1658, - 1659 - ] - }, - { - "teal": 1627, - "source": 535, - "pc": [ - 1660 - ] - }, - { - "teal": 1628, - "source": 535, - "pc": [ - 1661 - ] - }, - { - "teal": 1635, - "source": 535, - "pc": [ - 1662, - 1663, - 1664 - ] - }, - { - "teal": 1642, - "source": 537, - "pc": [ - 1665, - 1666 - ] - }, - { - "teal": 1643, - "source": 537, - "pc": [ - 1667 - ] - }, - { - "teal": 1644, - "source": 537, - "pc": [ - 1668, - 1669 - ] - }, - { - "teal": 1645, - "source": 537, - "pc": [ - 1670 - ] - }, - { - "teal": 1646, - "source": 537, - "pc": [ - 1671, - 1672 - ] - }, - { - "teal": 1647, - "source": 537, - "pc": [ - 1673 - ] - }, - { - "teal": 1648, - "source": 537, - "pc": [ - 1674 - ] - }, - { - "teal": 1649, - "source": 537, - "pc": [ - 1675, - 1676 - ] - }, - { - "teal": 1650, - "source": 537, - "pc": [ - 1677 - ] - }, - { - "teal": 1651, - "source": 537, - "pc": [ - 1678 - ] - }, - { - "teal": 1654, - "source": 536, - "errorMessage": "can only be called by validator owner", - "pc": [ - 1679 - ] - }, - { - "teal": 1658, - "source": 540, - "pc": [ - 1680, - 1681 - ] - }, - { - "teal": 1659, - "source": 540, - "pc": [ - 1682, - 1683 - ] - }, - { - "teal": 1660, - "source": 540, - "pc": [ - 1684 - ] - }, - { - "teal": 1661, - "source": 540, - "pc": [ - 1685 - ] - }, - { - "teal": 1665, - "source": 541, - "pc": [ - 1686, - 1687, - 1688 - ] - }, - { - "teal": 1666, - "source": 541, - "pc": [ - 1689, - 1690 - ] - }, - { - "teal": 1667, - "source": 541, - "pc": [ - 1691 - ] - }, - { - "teal": 1668, - "source": 541, - "pc": [ - 1692, - 1693 - ] - }, - { - "teal": 1669, - "source": 541, - "pc": [ - 1694 - ] - }, - { - "teal": 1670, - "source": 541, - "pc": [ - 1695 - ] - }, - { - "teal": 1671, - "source": 541, - "pc": [ - 1696, - 1697 - ] - }, - { - "teal": 1672, - "source": 541, - "pc": [ - 1698 - ] - }, - { - "teal": 1673, - "source": 535, - "pc": [ - 1699 - ] - }, - { - "teal": 1678, - "source": 554, - "pc": [ - 1700, - 1701, - 1702 - ] - }, - { - "teal": 1679, - "source": 554, - "pc": [ - 1703 - ] - }, - { - "teal": 1682, - "source": 553, - "pc": [ - 1704, - 1705, - 1706 - ] - }, - { - "teal": 1683, - "source": 553, - "pc": [ - 1707 - ] - }, - { - "teal": 1686, - "source": 552, - "pc": [ - 1708, - 1709, - 1710 - ] - }, - { - "teal": 1687, - "source": 552, - "pc": [ - 1711 - ] - }, - { - "teal": 1688, - "source": 552, - "pc": [ - 1712 - ] - }, - { - "teal": 1689, - "source": 552, - "pc": [ - 1713, - 1714 - ] - }, - { - "teal": 1690, - "source": 552, - "pc": [ - 1715 - ] - }, - { - "teal": 1693, - "source": 552, - "errorMessage": "argument 2 (EntryGatingAssets) for changeValidatorRewardInfo must be a uint64[4]", - "pc": [ - 1716 - ] - }, - { - "teal": 1696, - "source": 551, - "pc": [ - 1717, - 1718, - 1719 - ] - }, - { - "teal": 1697, - "source": 551, - "pc": [ - 1720 - ] - }, - { - "teal": 1698, - "source": 551, - "pc": [ - 1721 - ] - }, - { - "teal": 1699, - "source": 551, - "pc": [ - 1722, - 1723 - ] - }, - { - "teal": 1700, - "source": 551, - "pc": [ - 1724 - ] - }, - { - "teal": 1703, - "source": 551, - "errorMessage": "argument 3 (EntryGatingAddress) for changeValidatorRewardInfo must be a address", - "pc": [ - 1725 - ] - }, - { - "teal": 1706, - "source": 550, - "pc": [ - 1726, - 1727, - 1728 - ] - }, - { - "teal": 1707, - "source": 550, - "pc": [ - 1729 - ] - }, - { - "teal": 1708, - "source": 550, - "pc": [ - 1730 - ] - }, - { - "teal": 1709, - "source": 550, - "pc": [ - 1731 - ] - }, - { - "teal": 1710, - "source": 550, - "pc": [ - 1732 - ] - }, - { - "teal": 1713, - "source": 550, - "errorMessage": "argument 4 (EntryGatingType) for changeValidatorRewardInfo must be a uint8", - "pc": [ - 1733 - ] - }, - { - "teal": 1714, - "source": 550, - "pc": [ - 1734 - ] - }, - { - "teal": 1717, - "source": 549, - "pc": [ - 1735, - 1736, - 1737 - ] - }, - { - "teal": 1718, - "source": 549, - "pc": [ - 1738 - ] - }, - { - "teal": 1721, - "source": 548, - "pc": [ - 1739, - 1740, - 1741 - ] - }, - { - "teal": 1722, - "source": 548, - "pc": [ - 1742 - ] - }, - { - "teal": 1723, - "source": 548, - "pc": [ - 1743 - ] - }, - { - "teal": 1730, - "source": 548, - "pc": [ - 1744, - 1745, - 1746 - ] - }, - { - "teal": 1737, - "source": 557, - "pc": [ - 1747, - 1748 - ] - }, - { - "teal": 1738, - "source": 557, - "pc": [ - 1749 - ] - }, - { - "teal": 1739, - "source": 557, - "pc": [ - 1750, - 1751 - ] - }, - { - "teal": 1740, - "source": 557, - "pc": [ - 1752 - ] - }, - { - "teal": 1741, - "source": 557, - "pc": [ - 1753, - 1754 - ] - }, - { - "teal": 1742, - "source": 557, - "pc": [ - 1755 - ] - }, - { - "teal": 1743, - "source": 557, - "pc": [ - 1756 - ] - }, - { - "teal": 1744, - "source": 557, - "pc": [ - 1757, - 1758 - ] - }, - { - "teal": 1745, - "source": 557, - "pc": [ - 1759 - ] - }, - { - "teal": 1746, - "source": 557, - "pc": [ - 1760 - ] - }, - { - "teal": 1749, - "source": 556, - "errorMessage": "can only be called by validator owner", - "pc": [ - 1761 - ] - }, - { - "teal": 1753, - "source": 561, - "pc": [ - 1762, - 1763 - ] - }, - { - "teal": 1754, - "source": 561, - "pc": [ - 1764, - 1765 - ] - }, - { - "teal": 1755, - "source": 561, - "pc": [ - 1766 - ] - }, - { - "teal": 1756, - "source": 561, - "pc": [ - 1767, - 1768, - 1769 - ] - }, - { - "teal": 1757, - "source": 561, - "pc": [ - 1770 - ] - }, - { - "teal": 1758, - "source": 561, - "pc": [ - 1771, - 1772 - ] - }, - { - "teal": 1759, - "source": 561, - "pc": [ - 1773 - ] - }, - { - "teal": 1760, - "source": 561, - "pc": [ - 1774 - ] - }, - { - "teal": 1761, - "source": 561, - "pc": [ - 1775, - 1776 - ] - }, - { - "teal": 1762, - "source": 561, - "pc": [ - 1777 - ] - }, - { - "teal": 1766, - "source": 562, - "pc": [ - 1778, - 1779 - ] - }, - { - "teal": 1767, - "source": 562, - "pc": [ - 1780, - 1781 - ] - }, - { - "teal": 1768, - "source": 562, - "pc": [ - 1782 - ] - }, - { - "teal": 1769, - "source": 562, - "pc": [ - 1783, - 1784 - ] - }, - { - "teal": 1770, - "source": 562, - "pc": [ - 1785 - ] - }, - { - "teal": 1771, - "source": 562, - "pc": [ - 1786 - ] - }, - { - "teal": 1772, - "source": 562, - "pc": [ - 1787, - 1788 - ] - }, - { - "teal": 1773, - "source": 562, - "pc": [ - 1789 - ] - }, - { - "teal": 1777, - "source": 563, - "pc": [ - 1790, - 1791 - ] - }, - { - "teal": 1778, - "source": 563, - "pc": [ - 1792, - 1793 - ] - }, - { - "teal": 1779, - "source": 563, - "pc": [ - 1794 - ] - }, - { - "teal": 1780, - "source": 563, - "pc": [ - 1795, - 1796 - ] - }, - { - "teal": 1781, - "source": 563, - "pc": [ - 1797 - ] - }, - { - "teal": 1782, - "source": 563, - "pc": [ - 1798 - ] - }, - { - "teal": 1783, - "source": 563, - "pc": [ - 1799, - 1800 - ] - }, - { - "teal": 1784, - "source": 563, - "pc": [ - 1801 - ] - }, - { - "teal": 1788, - "source": 564, - "pc": [ - 1802, - 1803 - ] - }, - { - "teal": 1789, - "source": 564, - "pc": [ - 1804, - 1805 - ] - }, - { - "teal": 1790, - "source": 564, - "pc": [ - 1806 - ] - }, - { - "teal": 1791, - "source": 564, - "pc": [ - 1807 - ] - }, - { - "teal": 1792, - "source": 564, - "pc": [ - 1808, - 1809 - ] - }, - { - "teal": 1793, - "source": 564, - "pc": [ - 1810 - ] - }, - { - "teal": 1794, - "source": 564, - "pc": [ - 1811 - ] - }, - { - "teal": 1795, - "source": 564, - "pc": [ - 1812, - 1813 - ] - }, - { - "teal": 1796, - "source": 564, - "pc": [ - 1814 - ] - }, - { - "teal": 1800, - "source": 565, - "pc": [ - 1815, - 1816, - 1817 - ] - }, - { - "teal": 1801, - "source": 565, - "pc": [ - 1818, - 1819 - ] - }, - { - "teal": 1802, - "source": 565, - "pc": [ - 1820 - ] - }, - { - "teal": 1803, - "source": 565, - "pc": [ - 1821 - ] - }, - { - "teal": 1804, - "source": 565, - "pc": [ - 1822, - 1823 - ] - }, - { - "teal": 1805, - "source": 565, - "pc": [ - 1824 - ] - }, - { - "teal": 1806, - "source": 565, - "pc": [ - 1825 - ] - }, - { - "teal": 1807, - "source": 565, - "pc": [ - 1826, - 1827 - ] - }, - { - "teal": 1808, - "source": 565, - "pc": [ - 1828 - ] - }, - { - "teal": 1809, - "source": 548, - "pc": [ - 1829 - ] - }, - { - "teal": 1814, - "source": 579, - "pc": [ - 1830 - ] - }, - { - "teal": 1817, - "source": 579, - "pc": [ - 1831, - 1832, - 1833 - ] - }, - { - "teal": 1818, - "source": 579, - "pc": [ - 1834 - ] - }, - { - "teal": 1821, - "source": 579, - "pc": [ - 1835, - 1836, - 1837 - ] - }, - { - "teal": 1822, - "source": 579, - "pc": [ - 1838 - ] - }, - { - "teal": 1825, - "source": 579, - "pc": [ - 1839, - 1840 - ] - }, - { - "teal": 1826, - "source": 579, - "pc": [ - 1841 - ] - }, - { - "teal": 1827, - "source": 579, - "pc": [ - 1842 - ] - }, - { - "teal": 1828, - "source": 579, - "pc": [ - 1843 - ] - }, - { - "teal": 1829, - "source": 579, - "pc": [ - 1844, - 1845 - ] - }, - { - "teal": 1830, - "source": 579, - "pc": [ - 1846 - ] - }, - { - "teal": 1831, - "source": 579, - "pc": [ - 1847 - ] - }, - { - "teal": 1834, - "source": 579, - "errorMessage": "argument 2 (mbrPayment) for addPool must be a pay transaction", - "pc": [ - 1848 - ] - }, - { - "teal": 1837, - "source": 579, - "pc": [ - 1849, - 1850, - 1851 - ] - }, - { - "teal": 1838, - "source": 579, - "pc": [ - 1852 - ] - }, - { - "teal": 1839, - "source": 579, - "pc": [ - 1853 - ] - }, - { - "teal": 1840, - "source": 579, - "pc": [ - 1854 - ] - }, - { - "teal": 1841, - "source": 579, - "pc": [ - 1855 - ] - }, - { - "teal": 1854, - "source": 579, - "pc": [ - 1856, - 1857, - 1858 - ] - }, - { - "teal": 1857, - "source": 579, - "pc": [ - 1859 - ] - }, - { - "teal": 1858, - "source": 579, - "pc": [ - 1860 - ] - }, - { - "teal": 1866, - "source": 582, - "pc": [ - 1861, - 1862 - ] - }, - { - "teal": 1867, - "source": 582, - "pc": [ - 1863 - ] - }, - { - "teal": 1868, - "source": 582, - "pc": [ - 1864, - 1865 - ] - }, - { - "teal": 1869, - "source": 582, - "pc": [ - 1866 - ] - }, - { - "teal": 1870, - "source": 582, - "pc": [ - 1867, - 1868 - ] - }, - { - "teal": 1871, - "source": 582, - "pc": [ - 1869 - ] - }, - { - "teal": 1872, - "source": 582, - "pc": [ - 1870 - ] - }, - { - "teal": 1873, - "source": 582, - "pc": [ - 1871, - 1872 - ] - }, - { - "teal": 1874, - "source": 582, - "pc": [ - 1873 - ] - }, - { - "teal": 1875, - "source": 582, - "pc": [ - 1874 - ] - }, - { - "teal": 1876, - "source": 582, - "pc": [ - 1875 - ] - }, - { - "teal": 1877, - "source": 582, - "pc": [ - 1876, - 1877, - 1878 - ] - }, - { - "teal": 1878, - "source": 583, - "pc": [ - 1879, - 1880 - ] - }, - { - "teal": 1879, - "source": 583, - "pc": [ - 1881, - 1882 - ] - }, - { - "teal": 1880, - "source": 583, - "pc": [ - 1883, - 1884 - ] - }, - { - "teal": 1881, - "source": 583, - "pc": [ - 1885 - ] - }, - { - "teal": 1882, - "source": 583, - "pc": [ - 1886, - 1887 - ] - }, - { - "teal": 1883, - "source": 583, - "pc": [ - 1888 - ] - }, - { - "teal": 1884, - "source": 583, - "pc": [ - 1889 - ] - }, - { - "teal": 1885, - "source": 583, - "pc": [ - 1890, - 1891 - ] - }, - { - "teal": 1886, - "source": 583, - "pc": [ - 1892 - ] - }, - { - "teal": 1887, - "source": 583, - "pc": [ - 1893 - ] - }, - { - "teal": 1888, - "source": 582, - "pc": [ - 1894 - ] - }, - { - "teal": 1892, - "source": 581, - "errorMessage": "can only be called by owner or manager of validator", - "pc": [ - 1895 - ] - }, - { - "teal": 1897, - "source": 588, - "pc": [ - 1896, - 1897 - ] - }, - { - "teal": 1898, - "source": 588, - "pc": [ - 1898, - 1899 - ] - }, - { - "teal": 1899, - "source": 588, - "pc": [ - 1900, - 1901, - 1902 - ] - }, - { - "teal": 1900, - "source": 588, - "pc": [ - 1903, - 1904, - 1905 - ] - }, - { - "teal": 1901, - "source": 588, - "pc": [ - 1906 - ] - }, - { - "teal": 1902, - "source": 588, - "pc": [ - 1907 - ] - }, - { - "teal": 1905, - "source": 588, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"this.getMbrAmounts().addPoolMbr\"}", - "pc": [ - 1908 - ] - }, - { - "teal": 1908, - "source": 588, - "pc": [ - 1909, - 1910 - ] - }, - { - "teal": 1909, - "source": 588, - "pc": [ - 1911, - 1912 - ] - }, - { - "teal": 1910, - "source": 588, - "pc": [ - 1913, - 1914 - ] - }, - { - "teal": 1911, - "source": 588, - "pc": [ - 1915 - ] - }, - { - "teal": 1914, - "source": 588, - "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 1916 - ] - }, - { - "teal": 1918, - "source": 590, - "pc": [ - 1917 - ] - }, - { - "teal": 1919, - "source": 590, - "pc": [ - 1918, - 1919 - ] - }, - { - "teal": 1920, - "source": 590, - "pc": [ - 1920 - ] - }, - { - "teal": 1921, - "source": 590, - "pc": [ - 1921 - ] - }, - { - "teal": 1922, - "source": 590, - "pc": [ - 1922 - ] - }, - { - "teal": 1923, - "source": 590, - "pc": [ - 1923 - ] - }, - { - "teal": 1924, - "source": 590, - "pc": [ - 1924 - ] - }, - { - "teal": 1927, - "source": 590, - "errorMessage": "specified validator id isn't valid", - "pc": [ - 1925 - ] - }, - { - "teal": 1931, - "source": 592, - "pc": [ - 1926, - 1927 - ] - }, - { - "teal": 1932, - "source": 592, - "pc": [ - 1928, - 1929 - ] - }, - { - "teal": 1933, - "source": 592, - "pc": [ - 1930 - ] - }, - { - "teal": 1934, - "source": 592, - "pc": [ - 1931, - 1932 - ] - }, - { - "teal": 1935, - "source": 592, - "pc": [ - 1933 - ] - }, - { - "teal": 1936, - "source": 592, - "pc": [ - 1934 - ] - }, - { - "teal": 1937, - "source": 592, - "pc": [ - 1935, - 1936 - ] - }, - { - "teal": 1938, - "source": 592, - "pc": [ - 1937 - ] - }, - { - "teal": 1939, - "source": 592, - "pc": [ - 1938 - ] - }, - { - "teal": 1940, - "source": 592, - "pc": [ - 1939, - 1940 - ] - }, - { - "teal": 1945, - "source": 593, - "pc": [ - 1941, - 1942 - ] - }, - { - "teal": 1946, - "source": 32, - "pc": [ - 1943 - ] - }, - { - "teal": 1947, - "source": 593, - "pc": [ - 1944 - ] - }, - { - "teal": 1948, - "source": 593, - "pc": [ - 1945, - 1946, - 1947 - ] - }, - { - "teal": 1952, - "source": 594, - "errorMessage": "already at max pool size", - "pc": [ - 1948 - ] - }, - { - "teal": 1957, - "source": 596, - "pc": [ - 1949, - 1950 - ] - }, - { - "teal": 1958, - "source": 596, - "pc": [ - 1951 - ] - }, - { - "teal": 1959, - "source": 596, - "pc": [ - 1952 - ] - }, - { - "teal": 1960, - "source": 596, - "pc": [ - 1953, - 1954 - ] - }, - { - "teal": 1982, - "source": 599, - "pc": [ - 1955 - ] - }, - { - "teal": 1983, - "source": 599, - "pc": [ - 1956, - 1957 - ] - }, - { - "teal": 1984, - "source": 599, - "pc": [ - 1958, - 1959 - ] - }, - { - "teal": 1988, - "source": 600, - "pc": [ - 1960 - ] - }, - { - "teal": 1989, - "source": 600, - "pc": [ - 1961, - 1962 - ] - }, - { - "teal": 1996, - "source": 602, - "pc": [ - 1963, - 1964 - ] - }, - { - "teal": 1997, - "source": 602, - "pc": [ - 1965 - ] - }, - { - "teal": 1998, - "source": 602, - "pc": [ - 1966, - 1967 - ] - }, - { - "teal": 1999, - "source": 602, - "pc": [ - 1968 - ] - }, - { - "teal": 2000, - "source": 602, - "pc": [ - 1969, - 1970 - ] - }, - { - "teal": 2001, - "source": 603, - "pc": [ - 1971, - 1972 - ] - }, - { - "teal": 2002, - "source": 603, - "pc": [ - 1973, - 1974 - ] - }, - { - "teal": 2003, - "source": 603, - "pc": [ - 1975, - 1976 - ] - }, - { - "teal": 2004, - "source": 603, - "pc": [ - 1977 - ] - }, - { - "teal": 2007, - "source": 603, - "errorMessage": "box value does not exist: this.stakingPoolApprovalProgram.size", - "pc": [ - 1978 - ] - }, - { - "teal": 2008, - "source": 603, - "pc": [ - 1979, - 1980 - ] - }, - { - "teal": 2009, - "source": 603, - "pc": [ - 1981 - ] - }, - { - "teal": 2010, - "source": 603, - "pc": [ - 1982 - ] - }, - { - "teal": 2011, - "source": 603, - "pc": [ - 1983, - 1984 - ] - }, - { - "teal": 2015, - "source": 605, - "pc": [ - 1985, - 1986, - 1987 - ] - }, - { - "teal": 2016, - "source": 605, - "pc": [ - 1988, - 1989 - ] - }, - { - "teal": 2020, - "source": 606, - "pc": [ - 1990, - 1991 - ] - }, - { - "teal": 2021, - "source": 606, - "pc": [ - 1992, - 1993 - ] - }, - { - "teal": 2025, - "source": 607, - "pc": [ - 1994, - 1995 - ] - }, - { - "teal": 2026, - "source": 607, - "pc": [ - 1996, - 1997 - ] - }, - { - "teal": 2030, - "source": 608, - "pc": [ - 1998, - 1999 - ] - }, - { - "teal": 2031, - "source": 608, - "pc": [ - 2000, - 2001 - ] - }, - { - "teal": 2042, - "source": 611, - "pc": [ - 2002, - 2003, - 2004, - 2005, - 2006, - 2007 - ] - }, - { - "teal": 2043, - "source": 611, - "pc": [ - 2008, - 2009 - ] - }, - { - "teal": 2044, - "source": 612, - "pc": [ - 2010, - 2011, - 2012 - ] - }, - { - "teal": 2045, - "source": 612, - "pc": [ - 2013 - ] - }, - { - "teal": 2046, - "source": 612, - "pc": [ - 2014, - 2015 - ] - }, - { - "teal": 2047, - "source": 613, - "pc": [ - 2016, - 2017 - ] - }, - { - "teal": 2048, - "source": 613, - "pc": [ - 2018 - ] - }, - { - "teal": 2049, - "source": 613, - "pc": [ - 2019, - 2020 - ] - }, - { - "teal": 2050, - "source": 614, - "pc": [ - 2021, - 2022 - ] - }, - { - "teal": 2051, - "source": 614, - "pc": [ - 2023 - ] - }, - { - "teal": 2052, - "source": 614, - "pc": [ - 2024, - 2025 - ] - }, - { - "teal": 2053, - "source": 615, - "pc": [ - 2026, - 2027 - ] - }, - { - "teal": 2054, - "source": 615, - "pc": [ - 2028 - ] - }, - { - "teal": 2055, - "source": 615, - "pc": [ - 2029 - ] - }, - { - "teal": 2056, - "source": 615, - "pc": [ - 2030, - 2031 - ] - }, - { - "teal": 2057, - "source": 615, - "pc": [ - 2032 - ] - }, - { - "teal": 2058, - "source": 615, - "pc": [ - 2033 - ] - }, - { - "teal": 2059, - "source": 615, - "pc": [ - 2034, - 2035 - ] - }, - { - "teal": 2060, - "source": 615, - "pc": [ - 2036 - ] - }, - { - "teal": 2061, - "source": 615, - "pc": [ - 2037 - ] - }, - { - "teal": 2062, - "source": 615, - "pc": [ - 2038 - ] - }, - { - "teal": 2063, - "source": 615, - "pc": [ - 2039, - 2040 - ] - }, - { - "teal": 2066, - "source": 599, - "pc": [ - 2041 - ] - }, - { - "teal": 2067, - "source": 599, - "pc": [ - 2042, - 2043 - ] - }, - { - "teal": 2070, - "source": 599, - "pc": [ - 2044 - ] - }, - { - "teal": 2074, - "source": 619, - "pc": [ - 2045, - 2046 - ] - }, - { - "teal": 2075, - "source": 619, - "pc": [ - 2047, - 2048 - ] - }, - { - "teal": 2076, - "source": 619, - "pc": [ - 2049 - ] - }, - { - "teal": 2077, - "source": 619, - "pc": [ - 2050, - 2051, - 2052 - ] - }, - { - "teal": 2078, - "source": 619, - "pc": [ - 2053 - ] - }, - { - "teal": 2079, - "source": 619, - "pc": [ - 2054, - 2055 - ] - }, - { - "teal": 2080, - "source": 619, - "pc": [ - 2056 - ] - }, - { - "teal": 2081, - "source": 619, - "pc": [ - 2057 - ] - }, - { - "teal": 2082, - "source": 619, - "pc": [ - 2058, - 2059 - ] - }, - { - "teal": 2083, - "source": 619, - "pc": [ - 2060 - ] - }, - { - "teal": 2087, - "source": 622, - "pc": [ - 2061, - 2062 - ] - }, - { - "teal": 2088, - "source": 622, - "pc": [ - 2063, - 2064 - ] - }, - { - "teal": 2092, - "source": 623, - "pc": [ - 2065, - 2066 - ] - }, - { - "teal": 2093, - "source": 623, - "pc": [ - 2067, - 2068 - ] - }, - { - "teal": 2094, - "source": 623, - "pc": [ - 2069 - ] - }, - { - "teal": 2095, - "source": 623, - "pc": [ - 2070 - ] - }, - { - "teal": 2096, - "source": 623, - "pc": [ - 2071, - 2072 - ] - }, - { - "teal": 2097, - "source": 623, - "pc": [ - 2073 - ] - }, - { - "teal": 2098, - "source": 623, - "pc": [ - 2074 - ] - }, - { - "teal": 2099, - "source": 623, - "pc": [ - 2075 - ] - }, - { - "teal": 2100, - "source": 623, - "pc": [ - 2076 - ] - }, - { - "teal": 2101, - "source": 623, - "pc": [ - 2077, - 2078 - ] - }, - { - "teal": 2102, - "source": 623, - "pc": [ - 2079 - ] - }, - { - "teal": 2103, - "source": 623, - "pc": [ - 2080 - ] - }, - { - "teal": 2104, - "source": 623, - "pc": [ - 2081, - 2082 - ] - }, - { - "teal": 2105, - "source": 623, - "pc": [ - 2083 - ] - }, - { - "teal": 2106, - "source": 623, - "pc": [ - 2084 - ] - }, - { - "teal": 2107, - "source": 623, - "pc": [ - 2085, - 2086 - ] - }, - { - "teal": 2108, - "source": 623, - "pc": [ - 2087 - ] - }, - { - "teal": 2112, - "source": 624, - "pc": [ - 2088, - 2089 - ] - }, - { - "teal": 2113, - "source": 624, - "pc": [ - 2090, - 2091 - ] - }, - { - "teal": 2114, - "source": 624, - "pc": [ - 2092, - 2093 - ] - }, - { - "teal": 2115, - "source": 624, - "pc": [ - 2094, - 2095, - 2096 - ] - }, - { - "teal": 2119, - "source": 632, - "pc": [ - 2097, - 2098 - ] - }, - { - "teal": 2120, - "source": 632, - "pc": [ - 2099 - ] - }, - { - "teal": 2121, - "source": 632, - "pc": [ - 2100, - 2101 - ] - }, - { - "teal": 2122, - "source": 632, - "pc": [ - 2102 - ] - }, - { - "teal": 2123, - "source": 632, - "pc": [ - 2103 - ] - }, - { - "teal": 2124, - "source": 632, - "pc": [ - 2104, - 2105 - ] - }, - { - "teal": 2125, - "source": 632, - "pc": [ - 2106 - ] - }, - { - "teal": 2126, - "source": 632, - "pc": [ - 2107 - ] - }, - { - "teal": 2129, - "source": 579, - "pc": [ - 2108, - 2109 - ] - }, - { - "teal": 2132, - "source": 579, - "pc": [ - 2110, - 2111 - ] - }, - { - "teal": 2133, - "source": 579, - "pc": [ - 2112 - ] - }, - { - "teal": 2138, - "source": 644, - "pc": [ - 2113 - ] - }, - { - "teal": 2141, - "source": 644, - "pc": [ - 2114, - 2115, - 2116 - ] - }, - { - "teal": 2142, - "source": 644, - "pc": [ - 2117 - ] - }, - { - "teal": 2145, - "source": 644, - "pc": [ - 2118, - 2119, - 2120 - ] - }, - { - "teal": 2146, - "source": 644, - "pc": [ - 2121 - ] - }, - { - "teal": 2149, - "source": 644, - "pc": [ - 2122, - 2123 - ] - }, - { - "teal": 2150, - "source": 644, - "pc": [ - 2124 - ] - }, - { - "teal": 2151, - "source": 644, - "pc": [ - 2125 - ] - }, - { - "teal": 2152, - "source": 644, - "pc": [ - 2126 - ] - }, - { - "teal": 2153, - "source": 644, - "pc": [ - 2127, - 2128 - ] - }, - { - "teal": 2154, - "source": 644, - "pc": [ - 2129 - ] - }, - { - "teal": 2155, - "source": 644, - "pc": [ - 2130 - ] - }, - { - "teal": 2158, - "source": 644, - "errorMessage": "argument 2 (stakedAmountPayment) for addStake must be a pay transaction", - "pc": [ - 2131 - ] - }, - { - "teal": 2161, - "source": 644, - "pc": [ - 2132, - 2133, - 2134 - ] - }, - { - "teal": 2162, - "source": 644, - "pc": [ - 2135 - ] - }, - { - "teal": 2163, - "source": 644, - "pc": [ - 2136 - ] - }, - { - "teal": 2164, - "source": 644, - "pc": [ - 2137 - ] - }, - { - "teal": 2165, - "source": 644, - "pc": [ - 2138 - ] - }, - { - "teal": 2177, - "source": 644, - "pc": [ - 2139, - 2140, - 2141 - ] - }, - { - "teal": 2180, - "source": 644, - "pc": [ - 2142 - ] - }, - { - "teal": 2181, - "source": 644, - "pc": [ - 2143, - 2144 - ] - }, - { - "teal": 2185, - "source": 645, - "pc": [ - 2145 - ] - }, - { - "teal": 2186, - "source": 645, - "pc": [ - 2146, - 2147 - ] - }, - { - "teal": 2187, - "source": 645, - "pc": [ - 2148 - ] - }, - { - "teal": 2188, - "source": 645, - "pc": [ - 2149 - ] - }, - { - "teal": 2189, - "source": 645, - "pc": [ - 2150 - ] - }, - { - "teal": 2190, - "source": 645, - "pc": [ - 2151 - ] - }, - { - "teal": 2191, - "source": 645, - "pc": [ - 2152 - ] - }, - { - "teal": 2194, - "source": 645, - "errorMessage": "specified validator id isn't valid", - "pc": [ - 2153 - ] - }, - { - "teal": 2199, - "source": 648, - "pc": [ - 2154, - 2155 - ] - }, - { - "teal": 2200, - "source": 648, - "pc": [ - 2156 - ] - }, - { - "teal": 2201, - "source": 648, - "pc": [ - 2157 - ] - }, - { - "teal": 2202, - "source": 648, - "pc": [ - 2158, - 2159 - ] - }, - { - "teal": 2203, - "source": 648, - "pc": [ - 2160 - ] - }, - { - "teal": 2204, - "source": 648, - "pc": [ - 2161 - ] - }, - { - "teal": 2205, - "source": 648, - "pc": [ - 2162, - 2163 - ] - }, - { - "teal": 2206, - "source": 648, - "pc": [ - 2164 - ] - }, - { - "teal": 2207, - "source": 648, - "pc": [ - 2165 - ] - }, - { - "teal": 2208, - "source": 648, - "pc": [ - 2166 - ] - }, - { - "teal": 2209, - "source": 648, - "pc": [ - 2167 - ] - }, - { - "teal": 2210, - "source": 648, - "pc": [ - 2168, - 2169, - 2170 - ] - }, - { - "teal": 2218, - "source": 650, - "pc": [ - 2171, - 2172 - ] - }, - { - "teal": 2219, - "source": 650, - "pc": [ - 2173 - ] - }, - { - "teal": 2220, - "source": 650, - "pc": [ - 2174 - ] - }, - { - "teal": 2221, - "source": 650, - "pc": [ - 2175, - 2176 - ] - }, - { - "teal": 2222, - "source": 650, - "pc": [ - 2177 - ] - }, - { - "teal": 2223, - "source": 650, - "pc": [ - 2178 - ] - }, - { - "teal": 2224, - "source": 650, - "pc": [ - 2179, - 2180 - ] - }, - { - "teal": 2225, - "source": 650, - "pc": [ - 2181 - ] - }, - { - "teal": 2226, - "source": 650, - "pc": [ - 2182 - ] - }, - { - "teal": 2227, - "source": 650, - "pc": [ - 2183, - 2184 - ] - }, - { - "teal": 2228, - "source": 650, - "pc": [ - 2185 - ] - }, - { - "teal": 2231, - "source": 649, - "errorMessage": "can't stake with a validator that is past its sunsetting time", - "pc": [ - 2186 - ] - }, - { - "teal": 2236, - "source": 655, - "pc": [ - 2187, - 2188 - ] - }, - { - "teal": 2237, - "source": 655, - "pc": [ - 2189, - 2190 - ] - }, - { - "teal": 2245, - "source": 659, - "pc": [ - 2191, - 2192 - ] - }, - { - "teal": 2246, - "source": 660, - "pc": [ - 2193, - 2194 - ] - }, - { - "teal": 2247, - "source": 660, - "pc": [ - 2195, - 2196 - ] - }, - { - "teal": 2248, - "source": 660, - "pc": [ - 2197 - ] - }, - { - "teal": 2251, - "source": 660, - "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"sender\",\"expected\":\"staker\"}", - "pc": [ - 2198 - ] - }, - { - "teal": 2254, - "source": 659, - "pc": [ - 2199, - 2200 - ] - }, - { - "teal": 2255, - "source": 661, - "pc": [ - 2201, - 2202 - ] - }, - { - "teal": 2256, - "source": 661, - "pc": [ - 2203, - 2204 - ] - }, - { - "teal": 2257, - "source": 661, - "pc": [ - 2205 - ] - }, - { - "teal": 2260, - "source": 661, - "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 2206 - ] - }, - { - "teal": 2267, - "source": 667, - "pc": [ - 2207, - 2208 - ] - }, - { - "teal": 2268, - "source": 667, - "pc": [ - 2209 - ] - }, - { - "teal": 2269, - "source": 667, - "pc": [ - 2210 - ] - }, - { - "teal": 2270, - "source": 667, - "pc": [ - 2211, - 2212 - ] - }, - { - "teal": 2271, - "source": 667, - "pc": [ - 2213 - ] - }, - { - "teal": 2272, - "source": 667, - "pc": [ - 2214 - ] - }, - { - "teal": 2273, - "source": 667, - "pc": [ - 2215, - 2216 - ] - }, - { - "teal": 2274, - "source": 667, - "pc": [ - 2217 - ] - }, - { - "teal": 2275, - "source": 667, - "pc": [ - 2218 - ] - }, - { - "teal": 2276, - "source": 667, - "pc": [ - 2219, - 2220, - 2221 - ] - }, - { - "teal": 2277, - "source": 667, - "pc": [ - 2222 - ] - }, - { - "teal": 2280, - "source": 666, - "errorMessage": "total staked for all of a validators pools may not exceed hard cap", - "pc": [ - 2223 - ] - }, - { - "teal": 2284, - "source": 673, - "pc": [ - 2224, - 2225 - ] - }, - { - "teal": 2285, - "source": 673, - "pc": [ - 2226, - 2227 - ] - }, - { - "teal": 2286, - "source": 673, - "pc": [ - 2228, - 2229, - 2230 - ] - }, - { - "teal": 2290, - "source": 675, - "pc": [ - 2231, - 2232 - ] - }, - { - "teal": 2291, - "source": 675, - "pc": [ - 2233, - 2234 - ] - }, - { - "teal": 2292, - "source": 675, - "pc": [ - 2235, - 2236 - ] - }, - { - "teal": 2296, - "source": 676, - "pc": [ - 2237 - ] - }, - { - "teal": 2297, - "source": 676, - "pc": [ - 2238, - 2239 - ] - }, - { - "teal": 2302, - "source": 678, - "pc": [ - 2240 - ] - }, - { - "teal": 2303, - "source": 678, - "pc": [ - 2241, - 2242 - ] - }, - { - "teal": 2304, - "source": 678, - "pc": [ - 2243 - ] - }, - { - "teal": 2305, - "source": 678, - "pc": [ - 2244 - ] - }, - { - "teal": 2306, - "source": 678, - "pc": [ - 2245 - ] - }, - { - "teal": 2307, - "source": 678, - "pc": [ - 2246 - ] - }, - { - "teal": 2308, - "source": 678, - "pc": [ - 2247 - ] - }, - { - "teal": 2309, - "source": 678, - "pc": [ - 2248, - 2249, - 2250 - ] - }, - { - "teal": 2314, - "source": 681, - "pc": [ - 2251, - 2252, - 2253 - ] - }, - { - "teal": 2315, - "source": 681, - "pc": [ - 2254, - 2255, - 2256 - ] - }, - { - "teal": 2316, - "source": 681, - "pc": [ - 2257 - ] - }, - { - "teal": 2317, - "source": 681, - "pc": [ - 2258, - 2259 - ] - }, - { - "teal": 2321, - "source": 682, - "pc": [ - 2260, - 2261 - ] - }, - { - "teal": 2322, - "source": 682, - "pc": [ - 2262, - 2263 - ] - }, - { - "teal": 2323, - "source": 682, - "pc": [ - 2264 - ] - }, - { - "teal": 2324, - "source": 682, - "pc": [ - 2265, - 2266 - ] - }, - { - "teal": 2328, - "source": 683, - "pc": [ - 2267 - ] - }, - { - "teal": 2329, - "source": 683, - "pc": [ - 2268, - 2269 - ] - }, - { - "teal": 2330, - "source": 683, - "pc": [ - 2270 - ] - }, - { - "teal": 2331, - "source": 683, - "pc": [ - 2271, - 2272, - 2273 - ] - }, - { - "teal": 2332, - "source": 683, - "pc": [ - 2274 - ] - }, - { - "teal": 2333, - "source": 683, - "pc": [ - 2275 - ] - }, - { - "teal": 2338, - "source": 687, - "pc": [ - 2276, - 2277 - ] - }, - { - "teal": 2339, - "source": 687, - "pc": [ - 2278, - 2279 - ] - }, - { - "teal": 2340, - "source": 687, - "pc": [ - 2280, - 2281 - ] - }, - { - "teal": 2341, - "source": 687, - "pc": [ - 2282, - 2283, - 2284 - ] - }, - { - "teal": 2342, - "source": 687, - "pc": [ - 2285, - 2286 - ] - }, - { - "teal": 2348, - "source": 689, - "pc": [ - 2287, - 2288 - ] - }, - { - "teal": 2349, - "source": 689, - "pc": [ - 2289, - 2290 - ] - }, - { - "teal": 2350, - "source": 689, - "pc": [ - 2291, - 2292 - ] - }, - { - "teal": 2351, - "source": 689, - "pc": [ - 2293, - 2294 - ] - }, - { - "teal": 2352, - "source": 689, - "pc": [ - 2295 - ] - }, - { - "teal": 2353, - "source": 689, - "pc": [ - 2296, - 2297 - ] - }, - { - "teal": 2357, - "source": 690, - "pc": [ - 2298, - 2299 - ] - }, - { - "teal": 2358, - "source": 690, - "pc": [ - 2300, - 2301 - ] - }, - { - "teal": 2359, - "source": 690, - "pc": [ - 2302, - 2303 - ] - }, - { - "teal": 2360, - "source": 690, - "pc": [ - 2304, - 2305, - 2306 - ] - }, - { - "teal": 2361, - "source": 690, - "pc": [ - 2307 - ] - }, - { - "teal": 2362, - "source": 690, - "pc": [ - 2308, - 2309 - ] - }, - { - "teal": 2367, - "source": 691, - "pc": [ - 2310, - 2311 - ] - }, - { - "teal": 2368, - "source": 691, - "pc": [ - 2312, - 2313 - ] - }, - { - "teal": 2369, - "source": 691, - "pc": [ - 2314, - 2315 - ] - }, - { - "teal": 2370, - "source": 691, - "pc": [ - 2316, - 2317, - 2318 - ] - }, - { - "teal": 2371, - "source": 691, - "pc": [ - 2319 - ] - }, - { - "teal": 2372, - "source": 691, - "pc": [ - 2320 - ] - }, - { - "teal": 2373, - "source": 691, - "pc": [ - 2321 - ] - }, - { - "teal": 2374, - "source": 691, - "pc": [ - 2322, - 2323, - 2324 - ] - }, - { - "teal": 2378, - "source": 692, - "errorMessage": "No pool available with free stake. Validator needs to add another pool", - "pc": [ - 2325 - ] - }, - { - "teal": 2383, - "source": 696, - "pc": [ - 2326, - 2327 - ] - }, - { - "teal": 2384, - "source": 696, - "pc": [ - 2328, - 2329 - ] - }, - { - "teal": 2385, - "source": 696, - "pc": [ - 2330, - 2331 - ] - }, - { - "teal": 2386, - "source": 696, - "pc": [ - 2332, - 2333, - 2334 - ] - }, - { - "teal": 2387, - "source": 696, - "pc": [ - 2335, - 2336 - ] - }, - { - "teal": 2388, - "source": 696, - "pc": [ - 2337, - 2338, - 2339 - ] - }, - { - "teal": 2398, - "source": 704, - "pc": [ - 2340, - 2341 - ] - }, - { - "teal": 2399, - "source": 703, - "pc": [ - 2342, - 2343 - ] - }, - { - "teal": 2400, - "source": 702, - "pc": [ - 2344, - 2345 - ] - }, - { - "teal": 2401, - "source": 701, - "pc": [ - 2346, - 2347 - ] - }, - { - "teal": 2402, - "source": 701, - "pc": [ - 2348, - 2349 - ] - }, - { - "teal": 2403, - "source": 701, - "pc": [ - 2350, - 2351 - ] - }, - { - "teal": 2404, - "source": 701, - "pc": [ - 2352, - 2353, - 2354 - ] - }, - { - "teal": 2405, - "source": 700, - "pc": [ - 2355, - 2356 - ] - }, - { - "teal": 2406, - "source": 699, - "pc": [ - 2357, - 2358, - 2359 - ] - }, - { - "teal": 2410, - "source": 714, - "pc": [ - 2360, - 2361 - ] - }, - { - "teal": 2411, - "source": 714, - "pc": [ - 2362, - 2363 - ] - }, - { - "teal": 2412, - "source": 714, - "pc": [ - 2364, - 2365 - ] - }, - { - "teal": 2413, - "source": 714, - "pc": [ - 2366, - 2367, - 2368 - ] - }, - { - "teal": 2416, - "source": 644, - "pc": [ - 2369, - 2370 - ] - }, - { - "teal": 2419, - "source": 644, - "pc": [ - 2371, - 2372 - ] - }, - { - "teal": 2420, - "source": 644, - "pc": [ - 2373 - ] - }, - { - "teal": 2425, - "source": 732, - "pc": [ - 2374 - ] - }, - { - "teal": 2428, - "source": 732, - "pc": [ - 2375, - 2376, - 2377 - ] - }, - { - "teal": 2429, - "source": 732, - "pc": [ - 2378 - ] - }, - { - "teal": 2432, - "source": 732, - "pc": [ - 2379, - 2380, - 2381 - ] - }, - { - "teal": 2433, - "source": 732, - "pc": [ - 2382 - ] - }, - { - "teal": 2434, - "source": 732, - "pc": [ - 2383 - ] - }, - { - "teal": 2435, - "source": 732, - "pc": [ - 2384 - ] - }, - { - "teal": 2436, - "source": 732, - "pc": [ - 2385 - ] - }, - { - "teal": 2454, - "source": 732, - "pc": [ - 2386, - 2387, - 2388 - ] - }, - { - "teal": 2457, - "source": 732, - "pc": [ - 2389 - ] - }, - { - "teal": 2458, - "source": 732, - "pc": [ - 2390, - 2391 - ] - }, - { - "teal": 2462, - "source": 734, - "pc": [ - 2392, - 2393 - ] - }, - { - "teal": 2463, - "source": 734, - "pc": [ - 2394 - ] - }, - { - "teal": 2464, - "source": 734, - "pc": [ - 2395 - ] - }, - { - "teal": 2465, - "source": 734, - "pc": [ - 2396, - 2397 - ] - }, - { - "teal": 2466, - "source": 734, - "pc": [ - 2398 - ] - }, - { - "teal": 2467, - "source": 734, - "pc": [ - 2399 - ] - }, - { - "teal": 2468, - "source": 734, - "pc": [ - 2400, - 2401 - ] - }, - { - "teal": 2469, - "source": 734, - "pc": [ - 2402 - ] - }, - { - "teal": 2470, - "source": 734, - "pc": [ - 2403 - ] - }, - { - "teal": 2471, - "source": 734, - "pc": [ - 2404, - 2405 - ] - }, - { - "teal": 2475, - "source": 735, - "pc": [ - 2406, - 2407 - ] - }, - { - "teal": 2476, - "source": 735, - "pc": [ - 2408 - ] - }, - { - "teal": 2477, - "source": 735, - "pc": [ - 2409 - ] - }, - { - "teal": 2478, - "source": 735, - "pc": [ - 2410 - ] - }, - { - "teal": 2483, - "source": 737, - "pc": [ - 2411, - 2412 - ] - }, - { - "teal": 2484, - "source": 737, - "pc": [ - 2413, - 2414 - ] - }, - { - "teal": 2485, - "source": 737, - "pc": [ - 2415, - 2416 - ] - }, - { - "teal": 2486, - "source": 737, - "pc": [ - 2417 - ] - }, - { - "teal": 2487, - "source": 737, - "pc": [ - 2418 - ] - }, - { - "teal": 2488, - "source": 737, - "pc": [ - 2419, - 2420, - 2421 - ] - }, - { - "teal": 2493, - "source": 738, - "pc": [ - 2422, - 2423 - ] - }, - { - "teal": 2494, - "source": 738, - "pc": [ - 2424, - 2425 - ] - }, - { - "teal": 2495, - "source": 738, - "pc": [ - 2426 - ] - }, - { - "teal": 2496, - "source": 738, - "pc": [ - 2427, - 2428 - ] - }, - { - "teal": 2497, - "source": 738, - "pc": [ - 2429 - ] - }, - { - "teal": 2498, - "source": 738, - "pc": [ - 2430 - ] - }, - { - "teal": 2499, - "source": 738, - "pc": [ - 2431, - 2432 - ] - }, - { - "teal": 2500, - "source": 738, - "pc": [ - 2433 - ] - }, - { - "teal": 2501, - "source": 738, - "pc": [ - 2434, - 2435, - 2436 - ] - }, - { - "teal": 2506, - "source": 744, - "pc": [ - 2437, - 2438 - ] - }, - { - "teal": 2507, - "source": 744, - "pc": [ - 2439, - 2440 - ] - }, - { - "teal": 2511, - "source": 745, - "pc": [ - 2441, - 2442 - ] - }, - { - "teal": 2512, - "source": 745, - "pc": [ - 2443 - ] - }, - { - "teal": 2513, - "source": 745, - "pc": [ - 2444 - ] - }, - { - "teal": 2514, - "source": 745, - "pc": [ - 2445, - 2446 - ] - }, - { - "teal": 2515, - "source": 745, - "pc": [ - 2447 - ] - }, - { - "teal": 2516, - "source": 745, - "pc": [ - 2448 - ] - }, - { - "teal": 2517, - "source": 745, - "pc": [ - 2449, - 2450 - ] - }, - { - "teal": 2518, - "source": 745, - "pc": [ - 2451 - ] - }, - { - "teal": 2519, - "source": 745, - "pc": [ - 2452 - ] - }, - { - "teal": 2520, - "source": 745, - "pc": [ - 2453, - 2454 - ] - }, - { - "teal": 2525, - "source": 746, - "pc": [ - 2455, - 2456 - ] - }, - { - "teal": 2526, - "source": 746, - "pc": [ - 2457 - ] - }, - { - "teal": 2527, - "source": 746, - "pc": [ - 2458 - ] - }, - { - "teal": 2528, - "source": 746, - "pc": [ - 2459, - 2460, - 2461 - ] - }, - { - "teal": 2534, - "source": 748, - "pc": [ - 2462, - 2463 - ] - }, - { - "teal": 2535, - "source": 748, - "pc": [ - 2464, - 2465, - 2466, - 2467, - 2468, - 2469, - 2470, - 2471, - 2472, - 2473, - 2474, - 2475 - ] - }, - { - "teal": 2536, - "source": 748, - "pc": [ - 2476 - ] - }, - { - "teal": 2539, - "source": 748, - "errorMessage": "global state value does not exist: AppID.fromUint64(pool1AppID).globalState('lastPayout')", - "pc": [ - 2477 - ] - }, - { - "teal": 2540, - "source": 748, - "pc": [ - 2478, - 2479 - ] - }, - { - "teal": 2541, - "source": 748, - "pc": [ - 2480 - ] - }, - { - "teal": 2542, - "source": 748, - "pc": [ - 2481, - 2482, - 2483 - ] - }, - { - "teal": 2547, - "source": 749, - "pc": [ - 2484, - 2485 - ] - }, - { - "teal": 2548, - "source": 749, - "pc": [ - 2486, - 2487 - ] - }, - { - "teal": 2549, - "source": 749, - "pc": [ - 2488 - ] - }, - { - "teal": 2550, - "source": 749, - "pc": [ - 2489, - 2490 - ] - }, - { - "teal": 2551, - "source": 749, - "pc": [ - 2491 - ] - }, - { - "teal": 2552, - "source": 749, - "pc": [ - 2492 - ] - }, - { - "teal": 2553, - "source": 749, - "pc": [ - 2493, - 2494 - ] - }, - { - "teal": 2554, - "source": 749, - "pc": [ - 2495 - ] - }, - { - "teal": 2555, - "source": 749, - "pc": [ - 2496, - 2497, - 2498 - ] - }, - { - "teal": 2560, - "source": 751, - "pc": [ - 2499, - 2500, - 2501 - ] - }, - { - "teal": 2561, - "source": 751, - "pc": [ - 2502, - 2503 - ] - }, - { - "teal": 2562, - "source": 751, - "pc": [ - 2504 - ] - }, - { - "teal": 2563, - "source": 751, - "pc": [ - 2505, - 2506 - ] - }, - { - "teal": 2564, - "source": 751, - "pc": [ - 2507 - ] - }, - { - "teal": 2565, - "source": 751, - "pc": [ - 2508 - ] - }, - { - "teal": 2566, - "source": 751, - "pc": [ - 2509, - 2510 - ] - }, - { - "teal": 2567, - "source": 751, - "pc": [ - 2511 - ] - }, - { - "teal": 2568, - "source": 751, - "pc": [ - 2512 - ] - }, - { - "teal": 2569, - "source": 751, - "pc": [ - 2513, - 2514 - ] - }, - { - "teal": 2573, - "source": 752, - "pc": [ - 2515, - 2516 - ] - }, - { - "teal": 2574, - "source": 752, - "pc": [ - 2517, - 2518 - ] - }, - { - "teal": 2575, - "source": 752, - "pc": [ - 2519, - 2520 - ] - }, - { - "teal": 2576, - "source": 752, - "pc": [ - 2521 - ] - }, - { - "teal": 2577, - "source": 752, - "pc": [ - 2522 - ] - }, - { - "teal": 2578, - "source": 752, - "pc": [ - 2523, - 2524 - ] - }, - { - "teal": 2583, - "source": 754, - "pc": [ - 2525, - 2526 - ] - }, - { - "teal": 2584, - "source": 754, - "pc": [ - 2527, - 2528 - ] - }, - { - "teal": 2585, - "source": 754, - "pc": [ - 2529, - 2530 - ] - }, - { - "teal": 2586, - "source": 754, - "pc": [ - 2531 - ] - }, - { - "teal": 2587, - "source": 754, - "pc": [ - 2532 - ] - }, - { - "teal": 2588, - "source": 754, - "pc": [ - 2533, - 2534 - ] - }, - { - "teal": 2589, - "source": 754, - "pc": [ - 2535 - ] - }, - { - "teal": 2590, - "source": 754, - "pc": [ - 2536, - 2537, - 2538 - ] - }, - { - "teal": 2595, - "source": 755, - "pc": [ - 2539, - 2540 - ] - }, - { - "teal": 2596, - "source": 755, - "pc": [ - 2541, - 2542 - ] - }, - { - "teal": 2597, - "source": 755, - "pc": [ - 2543 - ] - }, - { - "teal": 2598, - "source": 755, - "pc": [ - 2544, - 2545 - ] - }, - { - "teal": 2599, - "source": 755, - "pc": [ - 2546 - ] - }, - { - "teal": 2600, - "source": 755, - "pc": [ - 2547 - ] - }, - { - "teal": 2601, - "source": 755, - "pc": [ - 2548, - 2549 - ] - }, - { - "teal": 2602, - "source": 755, - "pc": [ - 2550 - ] - }, - { - "teal": 2603, - "source": 755, - "pc": [ - 2551, - 2552, - 2553 - ] - }, - { - "teal": 2610, - "source": 758, - "pc": [ - 2554, - 2555 - ] - }, - { - "teal": 2611, - "source": 758, - "pc": [ - 2556, - 2557 - ] - }, - { - "teal": 2612, - "source": 758, - "pc": [ - 2558 - ] - }, - { - "teal": 2613, - "source": 758, - "pc": [ - 2559 - ] - }, - { - "teal": 2614, - "source": 758, - "pc": [ - 2560, - 2561 - ] - }, - { - "teal": 2615, - "source": 758, - "pc": [ - 2562 - ] - }, - { - "teal": 2616, - "source": 758, - "pc": [ - 2563 - ] - }, - { - "teal": 2617, - "source": 758, - "pc": [ - 2564, - 2565 - ] - }, - { - "teal": 2618, - "source": 758, - "pc": [ - 2566 - ] - }, - { - "teal": 2622, - "source": 760, - "pc": [ - 2567, - 2568 - ] - }, - { - "teal": 2623, - "source": 760, - "pc": [ - 2569, - 2570 - ] - }, - { - "teal": 2624, - "source": 760, - "pc": [ - 2571 - ] - }, - { - "teal": 2625, - "source": 760, - "pc": [ - 2572, - 2573 - ] - }, - { - "teal": 2626, - "source": 760, - "pc": [ - 2574 - ] - }, - { - "teal": 2627, - "source": 760, - "pc": [ - 2575 - ] - }, - { - "teal": 2628, - "source": 760, - "pc": [ - 2576, - 2577 - ] - }, - { - "teal": 2629, - "source": 760, - "pc": [ - 2578 - ] - }, - { - "teal": 2630, - "source": 760, - "pc": [ - 2579 - ] - }, - { - "teal": 2631, - "source": 760, - "pc": [ - 2580, - 2581 - ] - }, - { - "teal": 2635, - "source": 761, - "pc": [ - 2582, - 2583 - ] - }, - { - "teal": 2636, - "source": 761, - "pc": [ - 2584 - ] - }, - { - "teal": 2637, - "source": 761, - "pc": [ - 2585 - ] - }, - { - "teal": 2638, - "source": 761, - "pc": [ - 2586, - 2587 - ] - }, - { - "teal": 2639, - "source": 761, - "pc": [ - 2588 - ] - }, - { - "teal": 2640, - "source": 761, - "pc": [ - 2589 - ] - }, - { - "teal": 2641, - "source": 761, - "pc": [ - 2590, - 2591 - ] - }, - { - "teal": 2642, - "source": 761, - "pc": [ - 2592 - ] - }, - { - "teal": 2643, - "source": 761, - "pc": [ - 2593 - ] - }, - { - "teal": 2644, - "source": 761, - "pc": [ - 2594, - 2595 - ] - }, - { - "teal": 2648, - "source": 762, - "pc": [ - 2596 - ] - }, - { - "teal": 2649, - "source": 762, - "pc": [ - 2597, - 2598 - ] - }, - { - "teal": 2654, - "source": 762, - "pc": [ - 2599, - 2600 - ] - }, - { - "teal": 2655, - "source": 762, - "pc": [ - 2601, - 2602 - ] - }, - { - "teal": 2656, - "source": 762, - "pc": [ - 2603 - ] - }, - { - "teal": 2657, - "source": 762, - "pc": [ - 2604, - 2605, - 2606 - ] - }, - { - "teal": 2664, - "source": 768, - "pc": [ - 2607, - 2608 - ] - }, - { - "teal": 2665, - "source": 768, - "pc": [ - 2609, - 2610 - ] - }, - { - "teal": 2666, - "source": 768, - "pc": [ - 2611, - 2612 - ] - }, - { - "teal": 2667, - "source": 768, - "pc": [ - 2613 - ] - }, - { - "teal": 2668, - "source": 768, - "pc": [ - 2614 - ] - }, - { - "teal": 2669, - "source": 768, - "pc": [ - 2615, - 2616 - ] - }, - { - "teal": 2670, - "source": 768, - "pc": [ - 2617 - ] - }, - { - "teal": 2671, - "source": 768, - "pc": [ - 2618 - ] - }, - { - "teal": 2672, - "source": 768, - "pc": [ - 2619 - ] - }, - { - "teal": 2673, - "source": 768, - "pc": [ - 2620, - 2621 - ] - }, - { - "teal": 2674, - "source": 768, - "pc": [ - 2622 - ] - }, - { - "teal": 2675, - "source": 768, - "pc": [ - 2623 - ] - }, - { - "teal": 2676, - "source": 768, - "pc": [ - 2624, - 2625 - ] - }, - { - "teal": 2677, - "source": 768, - "pc": [ - 2626 - ] - }, - { - "teal": 2678, - "source": 768, - "pc": [ - 2627 - ] - }, - { - "teal": 2679, - "source": 768, - "pc": [ - 2628, - 2629 - ] - }, - { - "teal": 2680, - "source": 767, - "pc": [ - 2630 - ] - }, - { - "teal": 2681, - "source": 767, - "pc": [ - 2631 - ] - }, - { - "teal": 2682, - "source": 769, - "pc": [ - 2632, - 2633 - ] - }, - { - "teal": 2683, - "source": 767, - "pc": [ - 2634 - ] - }, - { - "teal": 2684, - "source": 767, - "pc": [ - 2635 - ] - }, - { - "teal": 2685, - "source": 767, - "pc": [ - 2636 - ] - }, - { - "teal": 2686, - "source": 767, - "pc": [ - 2637 - ] - }, - { - "teal": 2687, - "source": 767, - "pc": [ - 2638 - ] - }, - { - "teal": 2690, - "source": 767, - "errorMessage": "wideRatio failed", - "pc": [ - 2639 - ] - }, - { - "teal": 2691, - "source": 767, - "pc": [ - 2640, - 2641 - ] - }, - { - "teal": 2695, - "source": 771, - "pc": [ - 2642, - 2643 - ] - }, - { - "teal": 2696, - "source": 771, - "pc": [ - 2644, - 2645 - ] - }, - { - "teal": 2697, - "source": 771, - "pc": [ - 2646 - ] - }, - { - "teal": 2698, - "source": 771, - "pc": [ - 2647 - ] - }, - { - "teal": 2699, - "source": 771, - "pc": [ - 2648 - ] - }, - { - "teal": 2700, - "source": 771, - "pc": [ - 2649, - 2650 - ] - }, - { - "teal": 2701, - "source": 771, - "pc": [ - 2651 - ] - }, - { - "teal": 2702, - "source": 771, - "pc": [ - 2652 - ] - }, - { - "teal": 2703, - "source": 771, - "pc": [ - 2653, - 2654 - ] - }, - { - "teal": 2704, - "source": 771, - "pc": [ - 2655 - ] - }, - { - "teal": 2705, - "source": 771, - "pc": [ - 2656 - ] - }, - { - "teal": 2706, - "source": 771, - "pc": [ - 2657, - 2658 - ] - }, - { - "teal": 2707, - "source": 771, - "pc": [ - 2659 - ] - }, - { - "teal": 2712, - "source": 762, - "pc": [ - 2660, - 2661 - ] - }, - { - "teal": 2713, - "source": 762, - "pc": [ - 2662 - ] - }, - { - "teal": 2714, - "source": 762, - "pc": [ - 2663 - ] - }, - { - "teal": 2715, - "source": 762, - "pc": [ - 2664, - 2665 - ] - }, - { - "teal": 2716, - "source": 762, - "pc": [ - 2666, - 2667, - 2668 - ] - }, - { - "teal": 2721, - "source": 773, - "pc": [ - 2669, - 2670 - ] - }, - { - "teal": 2722, - "source": 773, - "pc": [ - 2671, - 2672 - ] - }, - { - "teal": 2723, - "source": 773, - "pc": [ - 2673 - ] - }, - { - "teal": 2724, - "source": 773, - "pc": [ - 2674, - 2675 - ] - }, - { - "teal": 2725, - "source": 773, - "pc": [ - 2676 - ] - }, - { - "teal": 2726, - "source": 773, - "pc": [ - 2677 - ] - }, - { - "teal": 2727, - "source": 773, - "pc": [ - 2678, - 2679 - ] - }, - { - "teal": 2728, - "source": 773, - "pc": [ - 2680 - ] - }, - { - "teal": 2732, - "source": 732, - "pc": [ - 2681, - 2682 - ] - }, - { - "teal": 2735, - "source": 732, - "pc": [ - 2683, - 2684 - ] - }, - { - "teal": 2736, - "source": 732, - "pc": [ - 2685 - ] - }, - { - "teal": 2741, - "source": 792, - "pc": [ - 2686, - 2687, - 2688 - ] - }, - { - "teal": 2742, - "source": 792, - "pc": [ - 2689 - ] - }, - { - "teal": 2745, - "source": 791, - "pc": [ - 2690, - 2691, - 2692 - ] - }, - { - "teal": 2746, - "source": 791, - "pc": [ - 2693 - ] - }, - { - "teal": 2749, - "source": 790, - "pc": [ - 2694, - 2695, - 2696 - ] - }, - { - "teal": 2750, - "source": 790, - "pc": [ - 2697 - ] - }, - { - "teal": 2753, - "source": 789, - "pc": [ - 2698, - 2699, - 2700 - ] - }, - { - "teal": 2754, - "source": 789, - "pc": [ - 2701 - ] - }, - { - "teal": 2757, - "source": 788, - "pc": [ - 2702, - 2703, - 2704 - ] - }, - { - "teal": 2758, - "source": 788, - "pc": [ - 2705 - ] - }, - { - "teal": 2759, - "source": 788, - "pc": [ - 2706 - ] - }, - { - "teal": 2760, - "source": 788, - "pc": [ - 2707 - ] - }, - { - "teal": 2761, - "source": 788, - "pc": [ - 2708 - ] - }, - { - "teal": 2764, - "source": 788, - "errorMessage": "argument 4 (poolKey) for stakeUpdatedViaRewards must be a (uint64,uint64,uint64)", - "pc": [ - 2709 - ] - }, - { - "teal": 2767, - "source": 787, - "pc": [ - 2710, - 2711, - 2712 - ] - }, - { - "teal": 2768, - "source": 787, - "pc": [ - 2713 - ] - }, - { - "teal": 2769, - "source": 787, - "pc": [ - 2714 - ] - }, - { - "teal": 2783, - "source": 787, - "pc": [ - 2715, - 2716, - 2717 - ] - }, - { - "teal": 2787, - "source": 794, - "pc": [ - 2718, - 2719 - ] - }, - { - "teal": 2788, - "source": 794, - "pc": [ - 2720, - 2721, - 2722 - ] - }, - { - "teal": 2792, - "source": 797, - "pc": [ - 2723, - 2724 - ] - }, - { - "teal": 2793, - "source": 797, - "pc": [ - 2725, - 2726 - ] - }, - { - "teal": 2794, - "source": 797, - "pc": [ - 2727, - 2728, - 2729 - ] - }, - { - "teal": 2795, - "source": 797, - "pc": [ - 2730 - ] - }, - { - "teal": 2796, - "source": 797, - "pc": [ - 2731 - ] - }, - { - "teal": 2797, - "source": 797, - "pc": [ - 2732 - ] - }, - { - "teal": 2798, - "source": 797, - "pc": [ - 2733, - 2734 - ] - }, - { - "teal": 2799, - "source": 797, - "pc": [ - 2735 - ] - }, - { - "teal": 2800, - "source": 797, - "pc": [ - 2736 - ] - }, - { - "teal": 2801, - "source": 797, - "pc": [ - 2737, - 2738 - ] - }, - { - "teal": 2802, - "source": 797, - "pc": [ - 2739 - ] - }, - { - "teal": 2803, - "source": 797, - "pc": [ - 2740, - 2741 - ] - }, - { - "teal": 2804, - "source": 797, - "pc": [ - 2742, - 2743 - ] - }, - { - "teal": 2805, - "source": 797, - "pc": [ - 2744, - 2745, - 2746 - ] - }, - { - "teal": 2806, - "source": 797, - "pc": [ - 2747 - ] - }, - { - "teal": 2807, - "source": 797, - "pc": [ - 2748 - ] - }, - { - "teal": 2808, - "source": 797, - "pc": [ - 2749 - ] - }, - { - "teal": 2809, - "source": 797, - "pc": [ - 2750, - 2751 - ] - }, - { - "teal": 2810, - "source": 797, - "pc": [ - 2752 - ] - }, - { - "teal": 2811, - "source": 797, - "pc": [ - 2753 - ] - }, - { - "teal": 2812, - "source": 797, - "pc": [ - 2754, - 2755 - ] - }, - { - "teal": 2813, - "source": 797, - "pc": [ - 2756 - ] - }, - { - "teal": 2814, - "source": 797, - "pc": [ - 2757 - ] - }, - { - "teal": 2815, - "source": 797, - "pc": [ - 2758 - ] - }, - { - "teal": 2816, - "source": 797, - "pc": [ - 2759, - 2760 - ] - }, - { - "teal": 2817, - "source": 797, - "pc": [ - 2761, - 2762, - 2763 - ] - }, - { - "teal": 2818, - "source": 797, - "pc": [ - 2764 - ] - }, - { - "teal": 2819, - "source": 797, - "pc": [ - 2765 - ] - }, - { - "teal": 2820, - "source": 797, - "pc": [ - 2766 - ] - }, - { - "teal": 2821, - "source": 797, - "pc": [ - 2767, - 2768 - ] - }, - { - "teal": 2822, - "source": 797, - "pc": [ - 2769 - ] - }, - { - "teal": 2823, - "source": 797, - "pc": [ - 2770 - ] - }, - { - "teal": 2824, - "source": 797, - "pc": [ - 2771, - 2772 - ] - }, - { - "teal": 2825, - "source": 797, - "pc": [ - 2773 - ] - }, - { - "teal": 2826, - "source": 797, - "pc": [ - 2774 - ] - }, - { - "teal": 2827, - "source": 797, - "pc": [ - 2775 - ] - }, - { - "teal": 2828, - "source": 797, - "pc": [ - 2776, - 2777 - ] - }, - { - "teal": 2829, - "source": 797, - "pc": [ - 2778, - 2779, - 2780 - ] - }, - { - "teal": 2830, - "source": 797, - "pc": [ - 2781 - ] - }, - { - "teal": 2831, - "source": 797, - "pc": [ - 2782 - ] - }, - { - "teal": 2832, - "source": 797, - "pc": [ - 2783 - ] - }, - { - "teal": 2833, - "source": 797, - "pc": [ - 2784, - 2785 - ] - }, - { - "teal": 2834, - "source": 797, - "pc": [ - 2786 - ] - }, - { - "teal": 2838, - "source": 798, - "pc": [ - 2787, - 2788 - ] - }, - { - "teal": 2839, - "source": 798, - "pc": [ - 2789 - ] - }, - { - "teal": 2840, - "source": 798, - "pc": [ - 2790 - ] - }, - { - "teal": 2841, - "source": 798, - "pc": [ - 2791 - ] - }, - { - "teal": 2842, - "source": 798, - "pc": [ - 2792, - 2793 - ] - }, - { - "teal": 2843, - "source": 798, - "pc": [ - 2794, - 2795, - 2796 - ] - }, - { - "teal": 2844, - "source": 798, - "pc": [ - 2797 - ] - }, - { - "teal": 2845, - "source": 798, - "pc": [ - 2798 - ] - }, - { - "teal": 2846, - "source": 798, - "pc": [ - 2799 - ] - }, - { - "teal": 2847, - "source": 798, - "pc": [ - 2800, - 2801 - ] - }, - { - "teal": 2848, - "source": 798, - "pc": [ - 2802 - ] - }, - { - "teal": 2849, - "source": 798, - "pc": [ - 2803 - ] - }, - { - "teal": 2850, - "source": 798, - "pc": [ - 2804, - 2805 - ] - }, - { - "teal": 2851, - "source": 798, - "pc": [ - 2806 - ] - }, - { - "teal": 2852, - "source": 798, - "pc": [ - 2807 - ] - }, - { - "teal": 2853, - "source": 798, - "pc": [ - 2808 - ] - }, - { - "teal": 2854, - "source": 798, - "pc": [ - 2809, - 2810 - ] - }, - { - "teal": 2855, - "source": 798, - "pc": [ - 2811, - 2812, - 2813 - ] - }, - { - "teal": 2856, - "source": 798, - "pc": [ - 2814 - ] - }, - { - "teal": 2857, - "source": 798, - "pc": [ - 2815 - ] - }, - { - "teal": 2858, - "source": 798, - "pc": [ - 2816 - ] - }, - { - "teal": 2859, - "source": 798, - "pc": [ - 2817, - 2818 - ] - }, - { - "teal": 2860, - "source": 798, - "pc": [ - 2819 - ] - }, - { - "teal": 2864, - "source": 799, - "pc": [ - 2820, - 2821 - ] - }, - { - "teal": 2865, - "source": 799, - "pc": [ - 2822 - ] - }, - { - "teal": 2866, - "source": 799, - "pc": [ - 2823 - ] - }, - { - "teal": 2867, - "source": 799, - "pc": [ - 2824 - ] - }, - { - "teal": 2868, - "source": 799, - "pc": [ - 2825, - 2826 - ] - }, - { - "teal": 2869, - "source": 799, - "pc": [ - 2827, - 2828, - 2829 - ] - }, - { - "teal": 2870, - "source": 799, - "pc": [ - 2830 - ] - }, - { - "teal": 2871, - "source": 799, - "pc": [ - 2831 - ] - }, - { - "teal": 2872, - "source": 799, - "pc": [ - 2832 - ] - }, - { - "teal": 2873, - "source": 799, - "pc": [ - 2833, - 2834 - ] - }, - { - "teal": 2874, - "source": 799, - "pc": [ - 2835 - ] - }, - { - "teal": 2875, - "source": 799, - "pc": [ - 2836 - ] - }, - { - "teal": 2876, - "source": 799, - "pc": [ - 2837, - 2838 - ] - }, - { - "teal": 2877, - "source": 799, - "pc": [ - 2839 - ] - }, - { - "teal": 2878, - "source": 799, - "pc": [ - 2840 - ] - }, - { - "teal": 2879, - "source": 799, - "pc": [ - 2841 - ] - }, - { - "teal": 2880, - "source": 799, - "pc": [ - 2842, - 2843 - ] - }, - { - "teal": 2881, - "source": 799, - "pc": [ - 2844, - 2845, - 2846 - ] - }, - { - "teal": 2882, - "source": 799, - "pc": [ - 2847 - ] - }, - { - "teal": 2883, - "source": 799, - "pc": [ - 2848 - ] - }, - { - "teal": 2884, - "source": 799, - "pc": [ - 2849 - ] - }, - { - "teal": 2885, - "source": 799, - "pc": [ - 2850, - 2851 - ] - }, - { - "teal": 2886, - "source": 799, - "pc": [ - 2852 - ] - }, - { - "teal": 2890, - "source": 801, - "pc": [ - 2853, - 2854 - ] - }, - { - "teal": 2891, - "source": 801, - "pc": [ - 2855 - ] - }, - { - "teal": 2892, - "source": 801, - "pc": [ - 2856, - 2857 - ] - }, - { - "teal": 2893, - "source": 801, - "pc": [ - 2858 - ] - }, - { - "teal": 2894, - "source": 801, - "pc": [ - 2859, - 2860 - ] - }, - { - "teal": 2895, - "source": 801, - "pc": [ - 2861 - ] - }, - { - "teal": 2896, - "source": 801, - "pc": [ - 2862 - ] - }, - { - "teal": 2900, - "source": 804, - "pc": [ - 2863, - 2864 - ] - }, - { - "teal": 2901, - "source": 804, - "pc": [ - 2865, - 2866, - 2867 - ] - }, - { - "teal": 2902, - "source": 804, - "pc": [ - 2868 - ] - }, - { - "teal": 2903, - "source": 804, - "pc": [ - 2869, - 2870, - 2871 - ] - }, - { - "teal": 2904, - "source": 787, - "pc": [ - 2872 - ] - }, - { - "teal": 2909, - "source": 834, - "pc": [ - 2873, - 2874, - 2875 - ] - }, - { - "teal": 2910, - "source": 834, - "pc": [ - 2876 - ] - }, - { - "teal": 2911, - "source": 834, - "pc": [ - 2877 - ] - }, - { - "teal": 2912, - "source": 834, - "pc": [ - 2878 - ] - }, - { - "teal": 2913, - "source": 834, - "pc": [ - 2879 - ] - }, - { - "teal": 2916, - "source": 834, - "errorMessage": "argument 0 (stakerRemoved) for stakeRemoved must be a bool", - "pc": [ - 2880 - ] - }, - { - "teal": 2917, - "source": 834, - "pc": [ - 2881 - ] - }, - { - "teal": 2918, - "source": 834, - "pc": [ - 2882 - ] - }, - { - "teal": 2921, - "source": 833, - "pc": [ - 2883, - 2884, - 2885 - ] - }, - { - "teal": 2922, - "source": 833, - "pc": [ - 2886 - ] - }, - { - "teal": 2925, - "source": 832, - "pc": [ - 2887, - 2888, - 2889 - ] - }, - { - "teal": 2926, - "source": 832, - "pc": [ - 2890 - ] - }, - { - "teal": 2929, - "source": 831, - "pc": [ - 2891, - 2892, - 2893 - ] - }, - { - "teal": 2930, - "source": 831, - "pc": [ - 2894 - ] - }, - { - "teal": 2931, - "source": 831, - "pc": [ - 2895 - ] - }, - { - "teal": 2932, - "source": 831, - "pc": [ - 2896, - 2897 - ] - }, - { - "teal": 2933, - "source": 831, - "pc": [ - 2898 - ] - }, - { - "teal": 2936, - "source": 831, - "errorMessage": "argument 3 (staker) for stakeRemoved must be a address", - "pc": [ - 2899 - ] - }, - { - "teal": 2939, - "source": 830, - "pc": [ - 2900, - 2901, - 2902 - ] - }, - { - "teal": 2940, - "source": 830, - "pc": [ - 2903 - ] - }, - { - "teal": 2941, - "source": 830, - "pc": [ - 2904 - ] - }, - { - "teal": 2942, - "source": 830, - "pc": [ - 2905 - ] - }, - { - "teal": 2943, - "source": 830, - "pc": [ - 2906 - ] - }, - { - "teal": 2946, - "source": 830, - "errorMessage": "argument 4 (poolKey) for stakeRemoved must be a (uint64,uint64,uint64)", - "pc": [ - 2907 - ] - }, - { - "teal": 2949, - "source": 829, - "pc": [ - 2908, - 2909, - 2910 - ] - }, - { - "teal": 2950, - "source": 829, - "pc": [ - 2911 - ] - }, - { - "teal": 2951, - "source": 829, - "pc": [ - 2912 - ] - }, - { - "teal": 2966, - "source": 829, - "pc": [ - 2913, - 2914, - 2915 - ] - }, - { - "teal": 2969, - "source": 829, - "pc": [ - 2916 - ] - }, - { - "teal": 2970, - "source": 829, - "pc": [ - 2917, - 2918 - ] - }, - { - "teal": 2975, - "source": 836, - "pc": [ - 2919, - 2920 - ] - }, - { - "teal": 2976, - "source": 836, - "pc": [ - 2921, - 2922 - ] - }, - { - "teal": 2977, - "source": 836, - "pc": [ - 2923 - ] - }, - { - "teal": 2978, - "source": 836, - "pc": [ - 2924, - 2925, - 2926 - ] - }, - { - "teal": 2983, - "source": 837, - "pc": [ - 2927 - ] - }, - { - "teal": 2984, - "source": 837, - "pc": [ - 2928, - 2929 - ] - }, - { - "teal": 2985, - "source": 837, - "pc": [ - 2930, - 2931 - ] - }, - { - "teal": 2986, - "source": 837, - "pc": [ - 2932 - ] - }, - { - "teal": 2987, - "source": 837, - "pc": [ - 2933, - 2934 - ] - }, - { - "teal": 2988, - "source": 837, - "pc": [ - 2935, - 2936 - ] - }, - { - "teal": 2989, - "source": 837, - "pc": [ - 2937 - ] - }, - { - "teal": 2990, - "source": 837, - "pc": [ - 2938, - 2939 - ] - }, - { - "teal": 2991, - "source": 837, - "pc": [ - 2940, - 2941 - ] - }, - { - "teal": 2992, - "source": 837, - "pc": [ - 2942, - 2943 - ] - }, - { - "teal": 2993, - "source": 837, - "pc": [ - 2944, - 2945 - ] - }, - { - "teal": 2994, - "source": 837, - "pc": [ - 2946 - ] - }, - { - "teal": 2999, - "source": 839, - "pc": [ - 2947, - 2948 - ] - }, - { - "teal": 3000, - "source": 839, - "pc": [ - 2949, - 2950, - 2951 - ] - }, - { - "teal": 3004, - "source": 843, - "pc": [ - 2952, - 2953 - ] - }, - { - "teal": 3005, - "source": 843, - "pc": [ - 2954 - ] - }, - { - "teal": 3006, - "source": 843, - "pc": [ - 2955 - ] - }, - { - "teal": 3007, - "source": 843, - "pc": [ - 2956 - ] - }, - { - "teal": 3008, - "source": 843, - "pc": [ - 2957, - 2958, - 2959 - ] - }, - { - "teal": 3009, - "source": 843, - "pc": [ - 2960, - 2961 - ] - }, - { - "teal": 3010, - "source": 843, - "pc": [ - 2962 - ] - }, - { - "teal": 3011, - "source": 843, - "pc": [ - 2963 - ] - }, - { - "teal": 3012, - "source": 843, - "pc": [ - 2964 - ] - }, - { - "teal": 3016, - "source": 843, - "errorMessage": "should only be called if algo or reward was removed", - "pc": [ - 2965 - ] - }, - { - "teal": 3020, - "source": 846, - "pc": [ - 2966, - 2967 - ] - }, - { - "teal": 3021, - "source": 846, - "pc": [ - 2968, - 2969 - ] - }, - { - "teal": 3022, - "source": 846, - "pc": [ - 2970, - 2971, - 2972 - ] - }, - { - "teal": 3023, - "source": 846, - "pc": [ - 2973 - ] - }, - { - "teal": 3024, - "source": 846, - "pc": [ - 2974 - ] - }, - { - "teal": 3025, - "source": 846, - "pc": [ - 2975 - ] - }, - { - "teal": 3026, - "source": 846, - "pc": [ - 2976, - 2977 - ] - }, - { - "teal": 3027, - "source": 846, - "pc": [ - 2978 - ] - }, - { - "teal": 3028, - "source": 846, - "pc": [ - 2979 - ] - }, - { - "teal": 3029, - "source": 846, - "pc": [ - 2980, - 2981 - ] - }, - { - "teal": 3030, - "source": 846, - "pc": [ - 2982 - ] - }, - { - "teal": 3031, - "source": 846, - "pc": [ - 2983, - 2984 - ] - }, - { - "teal": 3032, - "source": 846, - "pc": [ - 2985, - 2986 - ] - }, - { - "teal": 3033, - "source": 846, - "pc": [ - 2987, - 2988, - 2989 - ] - }, - { - "teal": 3034, - "source": 846, - "pc": [ - 2990 - ] - }, - { - "teal": 3035, - "source": 846, - "pc": [ - 2991 - ] - }, - { - "teal": 3036, - "source": 846, - "pc": [ - 2992 - ] - }, - { - "teal": 3037, - "source": 846, - "pc": [ - 2993, - 2994 - ] - }, - { - "teal": 3038, - "source": 846, - "pc": [ - 2995 - ] - }, - { - "teal": 3039, - "source": 846, - "pc": [ - 2996 - ] - }, - { - "teal": 3040, - "source": 846, - "pc": [ - 2997, - 2998 - ] - }, - { - "teal": 3041, - "source": 846, - "pc": [ - 2999 - ] - }, - { - "teal": 3042, - "source": 846, - "pc": [ - 3000 - ] - }, - { - "teal": 3043, - "source": 846, - "pc": [ - 3001 - ] - }, - { - "teal": 3044, - "source": 846, - "pc": [ - 3002, - 3003 - ] - }, - { - "teal": 3045, - "source": 846, - "pc": [ - 3004, - 3005, - 3006 - ] - }, - { - "teal": 3046, - "source": 846, - "pc": [ - 3007 - ] - }, - { - "teal": 3047, - "source": 846, - "pc": [ - 3008 - ] - }, - { - "teal": 3048, - "source": 846, - "pc": [ - 3009 - ] - }, - { - "teal": 3049, - "source": 846, - "pc": [ - 3010, - 3011 - ] - }, - { - "teal": 3050, - "source": 846, - "pc": [ - 3012 - ] - }, - { - "teal": 3051, - "source": 846, - "pc": [ - 3013 - ] - }, - { - "teal": 3052, - "source": 846, - "pc": [ - 3014, - 3015 - ] - }, - { - "teal": 3053, - "source": 846, - "pc": [ - 3016 - ] - }, - { - "teal": 3054, - "source": 846, - "pc": [ - 3017 - ] - }, - { - "teal": 3055, - "source": 846, - "pc": [ - 3018 - ] - }, - { - "teal": 3056, - "source": 846, - "pc": [ - 3019, - 3020 - ] - }, - { - "teal": 3057, - "source": 846, - "pc": [ - 3021, - 3022, - 3023 - ] - }, - { - "teal": 3058, - "source": 846, - "pc": [ - 3024 - ] - }, - { - "teal": 3059, - "source": 846, - "pc": [ - 3025 - ] - }, - { - "teal": 3060, - "source": 846, - "pc": [ - 3026 - ] - }, - { - "teal": 3061, - "source": 846, - "pc": [ - 3027, - 3028 - ] - }, - { - "teal": 3062, - "source": 846, - "pc": [ - 3029 - ] - }, - { - "teal": 3066, - "source": 847, - "pc": [ - 3030, - 3031 - ] - }, - { - "teal": 3067, - "source": 847, - "pc": [ - 3032 - ] - }, - { - "teal": 3068, - "source": 847, - "pc": [ - 3033 - ] - }, - { - "teal": 3069, - "source": 847, - "pc": [ - 3034 - ] - }, - { - "teal": 3070, - "source": 847, - "pc": [ - 3035, - 3036 - ] - }, - { - "teal": 3071, - "source": 847, - "pc": [ - 3037, - 3038, - 3039 - ] - }, - { - "teal": 3072, - "source": 847, - "pc": [ - 3040 - ] - }, - { - "teal": 3073, - "source": 847, - "pc": [ - 3041 - ] - }, - { - "teal": 3074, - "source": 847, - "pc": [ - 3042 - ] - }, - { - "teal": 3075, - "source": 847, - "pc": [ - 3043, - 3044 - ] - }, - { - "teal": 3076, - "source": 847, - "pc": [ - 3045 - ] - }, - { - "teal": 3077, - "source": 847, - "pc": [ - 3046 - ] - }, - { - "teal": 3078, - "source": 847, - "pc": [ - 3047, - 3048 - ] - }, - { - "teal": 3079, - "source": 847, - "pc": [ - 3049 - ] - }, - { - "teal": 3080, - "source": 847, - "pc": [ - 3050 - ] - }, - { - "teal": 3081, - "source": 847, - "pc": [ - 3051 - ] - }, - { - "teal": 3082, - "source": 847, - "pc": [ - 3052, - 3053 - ] - }, - { - "teal": 3083, - "source": 847, - "pc": [ - 3054, - 3055, - 3056 - ] - }, - { - "teal": 3084, - "source": 847, - "pc": [ - 3057 - ] - }, - { - "teal": 3085, - "source": 847, - "pc": [ - 3058 - ] - }, - { - "teal": 3086, - "source": 847, - "pc": [ - 3059 - ] - }, - { - "teal": 3087, - "source": 847, - "pc": [ - 3060, - 3061 - ] - }, - { - "teal": 3088, - "source": 847, - "pc": [ - 3062 - ] - }, - { - "teal": 3092, - "source": 848, - "pc": [ - 3063, - 3064 - ] - }, - { - "teal": 3093, - "source": 848, - "pc": [ - 3065 - ] - }, - { - "teal": 3094, - "source": 848, - "pc": [ - 3066, - 3067 - ] - }, - { - "teal": 3095, - "source": 848, - "pc": [ - 3068 - ] - }, - { - "teal": 3096, - "source": 848, - "pc": [ - 3069, - 3070 - ] - }, - { - "teal": 3097, - "source": 848, - "pc": [ - 3071 - ] - }, - { - "teal": 3098, - "source": 848, - "pc": [ - 3072 - ] - }, - { - "teal": 3103, - "source": 850, - "pc": [ - 3073, - 3074 - ] - }, - { - "teal": 3104, - "source": 850, - "pc": [ - 3075 - ] - }, - { - "teal": 3105, - "source": 850, - "pc": [ - 3076 - ] - }, - { - "teal": 3106, - "source": 850, - "pc": [ - 3077, - 3078, - 3079 - ] - }, - { - "teal": 3111, - "source": 851, - "pc": [ - 3080, - 3081 - ] - }, - { - "teal": 3112, - "source": 851, - "pc": [ - 3082 - ] - }, - { - "teal": 3113, - "source": 851, - "pc": [ - 3083 - ] - }, - { - "teal": 3114, - "source": 851, - "pc": [ - 3084, - 3085 - ] - }, - { - "teal": 3115, - "source": 851, - "pc": [ - 3086, - 3087, - 3088 - ] - }, - { - "teal": 3116, - "source": 851, - "pc": [ - 3089 - ] - }, - { - "teal": 3117, - "source": 851, - "pc": [ - 3090 - ] - }, - { - "teal": 3118, - "source": 851, - "pc": [ - 3091 - ] - }, - { - "teal": 3119, - "source": 851, - "pc": [ - 3092, - 3093 - ] - }, - { - "teal": 3120, - "source": 851, - "pc": [ - 3094 - ] - }, - { - "teal": 3121, - "source": 851, - "pc": [ - 3095 - ] - }, - { - "teal": 3122, - "source": 851, - "pc": [ - 3096, - 3097 - ] - }, - { - "teal": 3126, - "source": 852, - "pc": [ - 3098, - 3099 - ] - }, - { - "teal": 3127, - "source": 852, - "pc": [ - 3100 - ] - }, - { - "teal": 3128, - "source": 852, - "pc": [ - 3101 - ] - }, - { - "teal": 3131, - "source": 852, - "errorMessage": "rewardRemoved can't be set if validator doesn't have reward token!", - "pc": [ - 3102 - ] - }, - { - "teal": 3138, - "source": 854, - "pc": [ - 3103, - 3104 - ] - }, - { - "teal": 3139, - "source": 854, - "pc": [ - 3105 - ] - }, - { - "teal": 3140, - "source": 854, - "pc": [ - 3106 - ] - }, - { - "teal": 3141, - "source": 854, - "pc": [ - 3107, - 3108 - ] - }, - { - "teal": 3142, - "source": 854, - "pc": [ - 3109, - 3110, - 3111 - ] - }, - { - "teal": 3143, - "source": 854, - "pc": [ - 3112 - ] - }, - { - "teal": 3144, - "source": 854, - "pc": [ - 3113 - ] - }, - { - "teal": 3145, - "source": 854, - "pc": [ - 3114 - ] - }, - { - "teal": 3146, - "source": 854, - "pc": [ - 3115, - 3116 - ] - }, - { - "teal": 3147, - "source": 854, - "pc": [ - 3117 - ] - }, - { - "teal": 3148, - "source": 854, - "pc": [ - 3118 - ] - }, - { - "teal": 3149, - "source": 854, - "pc": [ - 3119, - 3120 - ] - }, - { - "teal": 3150, - "source": 854, - "pc": [ - 3121 - ] - }, - { - "teal": 3153, - "source": 853, - "errorMessage": "reward being removed must be covered by hold back amount", - "pc": [ - 3122 - ] - }, - { - "teal": 3157, - "source": 859, - "pc": [ - 3123, - 3124 - ] - }, - { - "teal": 3158, - "source": 859, - "pc": [ - 3125 - ] - }, - { - "teal": 3159, - "source": 859, - "pc": [ - 3126 - ] - }, - { - "teal": 3160, - "source": 859, - "pc": [ - 3127 - ] - }, - { - "teal": 3161, - "source": 859, - "pc": [ - 3128, - 3129 - ] - }, - { - "teal": 3162, - "source": 859, - "pc": [ - 3130, - 3131, - 3132 - ] - }, - { - "teal": 3163, - "source": 859, - "pc": [ - 3133 - ] - }, - { - "teal": 3164, - "source": 859, - "pc": [ - 3134 - ] - }, - { - "teal": 3165, - "source": 859, - "pc": [ - 3135 - ] - }, - { - "teal": 3166, - "source": 859, - "pc": [ - 3136, - 3137 - ] - }, - { - "teal": 3167, - "source": 859, - "pc": [ - 3138 - ] - }, - { - "teal": 3168, - "source": 859, - "pc": [ - 3139 - ] - }, - { - "teal": 3169, - "source": 859, - "pc": [ - 3140, - 3141 - ] - }, - { - "teal": 3170, - "source": 859, - "pc": [ - 3142 - ] - }, - { - "teal": 3171, - "source": 859, - "pc": [ - 3143 - ] - }, - { - "teal": 3172, - "source": 859, - "pc": [ - 3144 - ] - }, - { - "teal": 3173, - "source": 859, - "pc": [ - 3145, - 3146 - ] - }, - { - "teal": 3174, - "source": 859, - "pc": [ - 3147, - 3148, - 3149 - ] - }, - { - "teal": 3175, - "source": 859, - "pc": [ - 3150 - ] - }, - { - "teal": 3176, - "source": 859, - "pc": [ - 3151 - ] - }, - { - "teal": 3177, - "source": 859, - "pc": [ - 3152 - ] - }, - { - "teal": 3178, - "source": 859, - "pc": [ - 3153, - 3154 - ] - }, - { - "teal": 3179, - "source": 859, - "pc": [ - 3155 - ] - }, - { - "teal": 3184, - "source": 864, - "pc": [ - 3156, - 3157 - ] - }, - { - "teal": 3185, - "source": 864, - "pc": [ - 3158, - 3159, - 3160 - ] - }, - { - "teal": 3186, - "source": 864, - "pc": [ - 3161 - ] - }, - { - "teal": 3187, - "source": 864, - "pc": [ - 3162 - ] - }, - { - "teal": 3188, - "source": 864, - "pc": [ - 3163 - ] - }, - { - "teal": 3189, - "source": 864, - "pc": [ - 3164, - 3165, - 3166 - ] - }, - { - "teal": 3197, - "source": 865, - "pc": [ - 3167 - ] - }, - { - "teal": 3198, - "source": 865, - "pc": [ - 3168, - 3169 - ] - }, - { - "teal": 3199, - "source": 865, - "pc": [ - 3170, - 3171 - ] - }, - { - "teal": 3200, - "source": 865, - "pc": [ - 3172, - 3173 - ] - }, - { - "teal": 3201, - "source": 865, - "pc": [ - 3174, - 3175 - ] - }, - { - "teal": 3205, - "source": 866, - "pc": [ - 3176, - 3177 - ] - }, - { - "teal": 3206, - "source": 866, - "pc": [ - 3178 - ] - }, - { - "teal": 3207, - "source": 866, - "pc": [ - 3179 - ] - }, - { - "teal": 3208, - "source": 866, - "pc": [ - 3180, - 3181 - ] - }, - { - "teal": 3209, - "source": 866, - "pc": [ - 3182, - 3183, - 3184 - ] - }, - { - "teal": 3210, - "source": 866, - "pc": [ - 3185 - ] - }, - { - "teal": 3211, - "source": 866, - "pc": [ - 3186 - ] - }, - { - "teal": 3212, - "source": 866, - "pc": [ - 3187 - ] - }, - { - "teal": 3213, - "source": 866, - "pc": [ - 3188, - 3189 - ] - }, - { - "teal": 3214, - "source": 866, - "pc": [ - 3190 - ] - }, - { - "teal": 3215, - "source": 866, - "pc": [ - 3191 - ] - }, - { - "teal": 3216, - "source": 866, - "pc": [ - 3192, - 3193 - ] - }, - { - "teal": 3220, - "source": 867, - "pc": [ - 3194, - 3195 - ] - }, - { - "teal": 3221, - "source": 867, - "pc": [ - 3196, - 3197 - ] - }, - { - "teal": 3222, - "source": 867, - "pc": [ - 3198, - 3199 - ] - }, - { - "teal": 3223, - "source": 867, - "pc": [ - 3200 - ] - }, - { - "teal": 3224, - "source": 867, - "pc": [ - 3201, - 3202 - ] - }, - { - "teal": 3225, - "source": 867, - "pc": [ - 3203, - 3204 - ] - }, - { - "teal": 3226, - "source": 867, - "pc": [ - 3205 - ] - }, - { - "teal": 3227, - "source": 867, - "pc": [ - 3206, - 3207 - ] - }, - { - "teal": 3230, - "source": 865, - "pc": [ - 3208 - ] - }, - { - "teal": 3231, - "source": 865, - "pc": [ - 3209, - 3210 - ] - }, - { - "teal": 3234, - "source": 865, - "pc": [ - 3211 - ] - }, - { - "teal": 3237, - "source": 850, - "pc": [ - 3212, - 3213, - 3214 - ] - }, - { - "teal": 3245, - "source": 892, - "pc": [ - 3215, - 3216 - ] - }, - { - "teal": 3246, - "source": 892, - "pc": [ - 3217, - 3218, - 3219 - ] - }, - { - "teal": 3251, - "source": 894, - "pc": [ - 3220, - 3221 - ] - }, - { - "teal": 3252, - "source": 894, - "pc": [ - 3222, - 3223 - ] - }, - { - "teal": 3253, - "source": 894, - "pc": [ - 3224, - 3225, - 3226 - ] - }, - { - "teal": 3254, - "source": 894, - "pc": [ - 3227 - ] - }, - { - "teal": 3255, - "source": 894, - "pc": [ - 3228 - ] - }, - { - "teal": 3256, - "source": 894, - "pc": [ - 3229 - ] - }, - { - "teal": 3257, - "source": 894, - "pc": [ - 3230, - 3231 - ] - }, - { - "teal": 3258, - "source": 894, - "pc": [ - 3232 - ] - }, - { - "teal": 3259, - "source": 894, - "pc": [ - 3233 - ] - }, - { - "teal": 3260, - "source": 894, - "pc": [ - 3234 - ] - }, - { - "teal": 3261, - "source": 894, - "pc": [ - 3235 - ] - }, - { - "teal": 3262, - "source": 894, - "pc": [ - 3236, - 3237 - ] - }, - { - "teal": 3263, - "source": 894, - "pc": [ - 3238, - 3239 - ] - }, - { - "teal": 3264, - "source": 894, - "pc": [ - 3240, - 3241, - 3242 - ] - }, - { - "teal": 3265, - "source": 894, - "pc": [ - 3243 - ] - }, - { - "teal": 3266, - "source": 894, - "pc": [ - 3244 - ] - }, - { - "teal": 3267, - "source": 894, - "pc": [ - 3245 - ] - }, - { - "teal": 3268, - "source": 894, - "pc": [ - 3246, - 3247 - ] - }, - { - "teal": 3269, - "source": 894, - "pc": [ - 3248 - ] - }, - { - "teal": 3270, - "source": 894, - "pc": [ - 3249 - ] - }, - { - "teal": 3271, - "source": 894, - "pc": [ - 3250 - ] - }, - { - "teal": 3272, - "source": 894, - "pc": [ - 3251 - ] - }, - { - "teal": 3273, - "source": 894, - "pc": [ - 3252, - 3253 - ] - }, - { - "teal": 3274, - "source": 894, - "pc": [ - 3254 - ] - }, - { - "teal": 3275, - "source": 894, - "pc": [ - 3255, - 3256 - ] - }, - { - "teal": 3276, - "source": 894, - "pc": [ - 3257, - 3258, - 3259 - ] - }, - { - "teal": 3277, - "source": 894, - "pc": [ - 3260 - ] - }, - { - "teal": 3278, - "source": 894, - "pc": [ - 3261 - ] - }, - { - "teal": 3279, - "source": 894, - "pc": [ - 3262 - ] - }, - { - "teal": 3280, - "source": 894, - "pc": [ - 3263, - 3264 - ] - }, - { - "teal": 3281, - "source": 894, - "pc": [ - 3265 - ] - }, - { - "teal": 3282, - "source": 894, - "pc": [ - 3266 - ] - }, - { - "teal": 3283, - "source": 894, - "pc": [ - 3267 - ] - }, - { - "teal": 3284, - "source": 894, - "pc": [ - 3268 - ] - }, - { - "teal": 3285, - "source": 894, - "pc": [ - 3269 - ] - }, - { - "teal": 3286, - "source": 894, - "pc": [ - 3270, - 3271, - 3272 - ] - }, - { - "teal": 3287, - "source": 894, - "pc": [ - 3273 - ] - }, - { - "teal": 3288, - "source": 894, - "pc": [ - 3274, - 3275 - ] - }, - { - "teal": 3289, - "source": 894, - "pc": [ - 3276, - 3277, - 3278 - ] - }, - { - "teal": 3290, - "source": 894, - "pc": [ - 3279 - ] - }, - { - "teal": 3291, - "source": 894, - "pc": [ - 3280 - ] - }, - { - "teal": 3292, - "source": 894, - "pc": [ - 3281 - ] - }, - { - "teal": 3293, - "source": 894, - "pc": [ - 3282, - 3283 - ] - }, - { - "teal": 3294, - "source": 894, - "pc": [ - 3284 - ] - }, - { - "teal": 3302, - "source": 897, - "pc": [ - 3285, - 3286 - ] - }, - { - "teal": 3303, - "source": 897, - "pc": [ - 3287, - 3288, - 3289 - ] - }, - { - "teal": 3304, - "source": 897, - "pc": [ - 3290 - ] - }, - { - "teal": 3305, - "source": 897, - "pc": [ - 3291 - ] - }, - { - "teal": 3306, - "source": 898, - "pc": [ - 3292, - 3293 - ] - }, - { - "teal": 3307, - "source": 898, - "pc": [ - 3294, - 3295, - 3296 - ] - }, - { - "teal": 3308, - "source": 898, - "pc": [ - 3297 - ] - }, - { - "teal": 3309, - "source": 898, - "pc": [ - 3298 - ] - }, - { - "teal": 3310, - "source": 898, - "pc": [ - 3299 - ] - }, - { - "teal": 3311, - "source": 899, - "pc": [ - 3300, - 3301 - ] - }, - { - "teal": 3312, - "source": 899, - "pc": [ - 3302, - 3303, - 3304 - ] - }, - { - "teal": 3313, - "source": 899, - "pc": [ - 3305 - ] - }, - { - "teal": 3314, - "source": 899, - "pc": [ - 3306 - ] - }, - { - "teal": 3315, - "source": 899, - "pc": [ - 3307 - ] - }, - { - "teal": 3316, - "source": 896, - "pc": [ - 3308, - 3309 - ] - }, - { - "teal": 3317, - "source": 896, - "pc": [ - 3310, - 3311, - 3312 - ] - }, - { - "teal": 3318, - "source": 896, - "pc": [ - 3313, - 3314 - ] - }, - { - "teal": 3322, - "source": 901, - "pc": [ - 3315, - 3316 - ] - }, - { - "teal": 3323, - "source": 901, - "pc": [ - 3317, - 3318 - ] - }, - { - "teal": 3324, - "source": 901, - "pc": [ - 3319, - 3320 - ] - }, - { - "teal": 3325, - "source": 901, - "pc": [ - 3321 - ] - }, - { - "teal": 3326, - "source": 901, - "pc": [ - 3322 - ] - }, - { - "teal": 3327, - "source": 901, - "pc": [ - 3323, - 3324 - ] - }, - { - "teal": 3331, - "source": 902, - "pc": [ - 3325, - 3326 - ] - }, - { - "teal": 3332, - "source": 902, - "pc": [ - 3327, - 3328 - ] - }, - { - "teal": 3333, - "source": 902, - "pc": [ - 3329, - 3330 - ] - }, - { - "teal": 3334, - "source": 902, - "pc": [ - 3331 - ] - }, - { - "teal": 3335, - "source": 902, - "pc": [ - 3332 - ] - }, - { - "teal": 3336, - "source": 902, - "pc": [ - 3333, - 3334 - ] - }, - { - "teal": 3341, - "source": 904, - "pc": [ - 3335, - 3336 - ] - }, - { - "teal": 3342, - "source": 904, - "pc": [ - 3337, - 3338, - 3339 - ] - }, - { - "teal": 3347, - "source": 905, - "pc": [ - 3340, - 3341 - ] - }, - { - "teal": 3348, - "source": 905, - "pc": [ - 3342 - ] - }, - { - "teal": 3349, - "source": 905, - "pc": [ - 3343 - ] - }, - { - "teal": 3350, - "source": 905, - "pc": [ - 3344 - ] - }, - { - "teal": 3351, - "source": 905, - "pc": [ - 3345, - 3346 - ] - }, - { - "teal": 3352, - "source": 905, - "pc": [ - 3347, - 3348, - 3349 - ] - }, - { - "teal": 3353, - "source": 905, - "pc": [ - 3350 - ] - }, - { - "teal": 3354, - "source": 905, - "pc": [ - 3351 - ] - }, - { - "teal": 3355, - "source": 905, - "pc": [ - 3352 - ] - }, - { - "teal": 3356, - "source": 905, - "pc": [ - 3353, - 3354 - ] - }, - { - "teal": 3357, - "source": 905, - "pc": [ - 3355 - ] - }, - { - "teal": 3358, - "source": 905, - "pc": [ - 3356 - ] - }, - { - "teal": 3359, - "source": 905, - "pc": [ - 3357 - ] - }, - { - "teal": 3360, - "source": 905, - "pc": [ - 3358 - ] - }, - { - "teal": 3361, - "source": 905, - "pc": [ - 3359 - ] - }, - { - "teal": 3362, - "source": 905, - "pc": [ - 3360 - ] - }, - { - "teal": 3363, - "source": 905, - "pc": [ - 3361, - 3362 - ] - }, - { - "teal": 3364, - "source": 905, - "pc": [ - 3363, - 3364, - 3365 - ] - }, - { - "teal": 3365, - "source": 905, - "pc": [ - 3366 - ] - }, - { - "teal": 3366, - "source": 905, - "pc": [ - 3367 - ] - }, - { - "teal": 3367, - "source": 905, - "pc": [ - 3368 - ] - }, - { - "teal": 3368, - "source": 905, - "pc": [ - 3369, - 3370 - ] - }, - { - "teal": 3369, - "source": 905, - "pc": [ - 3371 - ] - }, - { - "teal": 3375, - "source": 908, - "pc": [ - 3372, - 3373 - ] - }, - { - "teal": 3376, - "source": 908, - "pc": [ - 3374, - 3375, - 3376 - ] - }, - { - "teal": 3381, - "source": 909, - "pc": [ - 3377, - 3378 - ] - }, - { - "teal": 3382, - "source": 909, - "pc": [ - 3379 - ] - }, - { - "teal": 3383, - "source": 909, - "pc": [ - 3380 - ] - }, - { - "teal": 3384, - "source": 909, - "pc": [ - 3381 - ] - }, - { - "teal": 3385, - "source": 909, - "pc": [ - 3382, - 3383 - ] - }, - { - "teal": 3386, - "source": 909, - "pc": [ - 3384 - ] - }, - { - "teal": 3387, - "source": 909, - "pc": [ - 3385 - ] - }, - { - "teal": 3392, - "source": 829, - "pc": [ - 3386 - ] - }, - { - "teal": 3397, - "source": 925, - "pc": [ - 3387 - ] - }, - { - "teal": 3400, - "source": 928, - "pc": [ - 3388, - 3389, - 3390 - ] - }, - { - "teal": 3401, - "source": 928, - "pc": [ - 3391 - ] - }, - { - "teal": 3404, - "source": 927, - "pc": [ - 3392, - 3393, - 3394 - ] - }, - { - "teal": 3405, - "source": 927, - "pc": [ - 3395 - ] - }, - { - "teal": 3406, - "source": 927, - "pc": [ - 3396 - ] - }, - { - "teal": 3407, - "source": 927, - "pc": [ - 3397, - 3398 - ] - }, - { - "teal": 3408, - "source": 927, - "pc": [ - 3399 - ] - }, - { - "teal": 3411, - "source": 927, - "errorMessage": "argument 1 (staker) for findPoolForStaker must be a address", - "pc": [ - 3400 - ] - }, - { - "teal": 3414, - "source": 926, - "pc": [ - 3401, - 3402, - 3403 - ] - }, - { - "teal": 3415, - "source": 926, - "pc": [ - 3404 - ] - }, - { - "teal": 3418, - "source": 925, - "pc": [ - 3405, - 3406, - 3407 - ] - }, - { - "teal": 3419, - "source": 925, - "pc": [ - 3408 - ] - }, - { - "teal": 3420, - "source": 925, - "pc": [ - 3409 - ] - }, - { - "teal": 3421, - "source": 925, - "pc": [ - 3410 - ] - }, - { - "teal": 3422, - "source": 925, - "pc": [ - 3411 - ] - }, - { - "teal": 3436, - "source": 925, - "pc": [ - 3412, - 3413, - 3414 - ] - }, - { - "teal": 3439, - "source": 925, - "pc": [ - 3415 - ] - }, - { - "teal": 3440, - "source": 925, - "pc": [ - 3416, - 3417 - ] - }, - { - "teal": 3444, - "source": 930, - "pc": [ - 3418 - ] - }, - { - "teal": 3445, - "source": 930, - "pc": [ - 3419, - 3420 - ] - }, - { - "teal": 3449, - "source": 931, - "pc": [ - 3421 - ] - }, - { - "teal": 3450, - "source": 931, - "pc": [ - 3422, - 3423 - ] - }, - { - "teal": 3454, - "source": 939, - "pc": [ - 3424, - 3425 - ] - }, - { - "teal": 3455, - "source": 939, - "pc": [ - 3426, - 3427, - 3428 - ] - }, - { - "teal": 3456, - "source": 939, - "pc": [ - 3429, - 3430 - ] - }, - { - "teal": 3461, - "source": 942, - "pc": [ - 3431 - ] - }, - { - "teal": 3462, - "source": 942, - "pc": [ - 3432, - 3433 - ] - }, - { - "teal": 3463, - "source": 942, - "pc": [ - 3434 - ] - }, - { - "teal": 3464, - "source": 942, - "pc": [ - 3435 - ] - }, - { - "teal": 3465, - "source": 942, - "pc": [ - 3436 - ] - }, - { - "teal": 3466, - "source": 942, - "pc": [ - 3437 - ] - }, - { - "teal": 3467, - "source": 942, - "pc": [ - 3438, - 3439, - 3440 - ] - }, - { - "teal": 3472, - "source": 943, - "pc": [ - 3441 - ] - }, - { - "teal": 3473, - "source": 943, - "pc": [ - 3442, - 3443 - ] - }, - { - "teal": 3474, - "source": 943, - "pc": [ - 3444 - ] - }, - { - "teal": 3475, - "source": 943, - "pc": [ - 3445 - ] - }, - { - "teal": 3478, - "source": 943, - "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", - "pc": [ - 3446 - ] - }, - { - "teal": 3479, - "source": 943, - "pc": [ - 3447, - 3448 - ] - }, - { - "teal": 3483, - "source": 944, - "pc": [ - 3449, - 3450 - ] - }, - { - "teal": 3484, - "source": 944, - "pc": [ - 3451 - ] - }, - { - "teal": 3485, - "source": 944, - "pc": [ - 3452 - ] - }, - { - "teal": 3486, - "source": 944, - "pc": [ - 3453 - ] - }, - { - "teal": 3490, - "source": 945, - "pc": [ - 3454 - ] - }, - { - "teal": 3491, - "source": 945, - "pc": [ - 3455, - 3456 - ] - }, - { - "teal": 3496, - "source": 945, - "pc": [ - 3457, - 3458 - ] - }, - { - "teal": 3497, - "source": 945, - "pc": [ - 3459, - 3460 - ] - }, - { - "teal": 3498, - "source": 945, - "pc": [ - 3461 - ] - }, - { - "teal": 3499, - "source": 945, - "pc": [ - 3462, - 3463, - 3464 - ] - }, - { - "teal": 3504, - "source": 946, - "pc": [ - 3465, - 3466 - ] - }, - { - "teal": 3505, - "source": 946, - "pc": [ - 3467, - 3468 - ] - }, - { - "teal": 3506, - "source": 946, - "pc": [ - 3469 - ] - }, - { - "teal": 3507, - "source": 946, - "pc": [ - 3470, - 3471, - 3472 - ] - }, - { - "teal": 3512, - "source": 947, - "pc": [ - 3473 - ] - }, - { - "teal": 3513, - "source": 947, - "pc": [ - 3474, - 3475 - ] - }, - { - "teal": 3514, - "source": 947, - "pc": [ - 3476, - 3477 - ] - }, - { - "teal": 3515, - "source": 947, - "pc": [ - 3478 - ] - }, - { - "teal": 3516, - "source": 947, - "pc": [ - 3479, - 3480 - ] - }, - { - "teal": 3517, - "source": 947, - "pc": [ - 3481, - 3482 - ] - }, - { - "teal": 3518, - "source": 947, - "pc": [ - 3483 - ] - }, - { - "teal": 3519, - "source": 947, - "pc": [ - 3484, - 3485 - ] - }, - { - "teal": 3520, - "source": 947, - "pc": [ - 3486, - 3487 - ] - }, - { - "teal": 3521, - "source": 947, - "pc": [ - 3488, - 3489 - ] - }, - { - "teal": 3522, - "source": 947, - "pc": [ - 3490, - 3491 - ] - }, - { - "teal": 3523, - "source": 947, - "pc": [ - 3492 - ] - }, - { - "teal": 3529, - "source": 949, - "pc": [ - 3493, - 3494 - ] - }, - { - "teal": 3530, - "source": 949, - "pc": [ - 3495, - 3496 - ] - }, - { - "teal": 3531, - "source": 949, - "pc": [ - 3497 - ] - }, - { - "teal": 3532, - "source": 949, - "pc": [ - 3498 - ] - }, - { - "teal": 3533, - "source": 949, - "pc": [ - 3499 - ] - }, - { - "teal": 3534, - "source": 949, - "pc": [ - 3500 - ] - }, - { - "teal": 3535, - "source": 949, - "pc": [ - 3501 - ] - }, - { - "teal": 3536, - "source": 949, - "pc": [ - 3502 - ] - }, - { - "teal": 3537, - "source": 949, - "pc": [ - 3503 - ] - }, - { - "teal": 3538, - "source": 949, - "pc": [ - 3504 - ] - }, - { - "teal": 3539, - "source": 949, - "pc": [ - 3505 - ] - }, - { - "teal": 3540, - "source": 949, - "pc": [ - 3506, - 3507, - 3508 - ] - }, - { - "teal": 3543, - "source": 950, - "pc": [ - 3509, - 3510, - 3511 - ] - }, - { - "teal": 3548, - "source": 952, - "pc": [ - 3512 - ] - }, - { - "teal": 3549, - "source": 952, - "pc": [ - 3513, - 3514 - ] - }, - { - "teal": 3554, - "source": 953, - "pc": [ - 3515, - 3516 - ] - }, - { - "teal": 3555, - "source": 953, - "pc": [ - 3517, - 3518 - ] - }, - { - "teal": 3556, - "source": 953, - "pc": [ - 3519 - ] - }, - { - "teal": 3557, - "source": 953, - "pc": [ - 3520 - ] - }, - { - "teal": 3558, - "source": 953, - "pc": [ - 3521 - ] - }, - { - "teal": 3559, - "source": 953, - "pc": [ - 3522 - ] - }, - { - "teal": 3560, - "source": 953, - "pc": [ - 3523 - ] - }, - { - "teal": 3561, - "source": 953, - "pc": [ - 3524 - ] - }, - { - "teal": 3562, - "source": 953, - "pc": [ - 3525 - ] - }, - { - "teal": 3563, - "source": 953, - "pc": [ - 3526, - 3527 - ] - }, - { - "teal": 3564, - "source": 953, - "pc": [ - 3528 - ] - }, - { - "teal": 3565, - "source": 953, - "pc": [ - 3529, - 3530, - 3531 - ] - }, - { - "teal": 3570, - "source": 955, - "pc": [ - 3532 - ] - }, - { - "teal": 3571, - "source": 955, - "pc": [ - 3533, - 3534 - ] - }, - { - "teal": 3577, - "source": 957, - "pc": [ - 3535, - 3536 - ] - }, - { - "teal": 3578, - "source": 957, - "pc": [ - 3537, - 3538 - ] - }, - { - "teal": 3579, - "source": 957, - "pc": [ - 3539, - 3540 - ] - }, - { - "teal": 3580, - "source": 957, - "pc": [ - 3541 - ] - }, - { - "teal": 3581, - "source": 957, - "pc": [ - 3542 - ] - }, - { - "teal": 3582, - "source": 957, - "pc": [ - 3543 - ] - }, - { - "teal": 3583, - "source": 957, - "pc": [ - 3544 - ] - }, - { - "teal": 3584, - "source": 957, - "pc": [ - 3545 - ] - }, - { - "teal": 3585, - "source": 957, - "pc": [ - 3546 - ] - }, - { - "teal": 3586, - "source": 957, - "pc": [ - 3547 - ] - }, - { - "teal": 3587, - "source": 957, - "pc": [ - 3548 - ] - }, - { - "teal": 3588, - "source": 957, - "pc": [ - 3549 - ] - }, - { - "teal": 3589, - "source": 957, - "pc": [ - 3550, - 3551 - ] - }, - { - "teal": 3590, - "source": 957, - "pc": [ - 3552 - ] - }, - { - "teal": 3591, - "source": 957, - "pc": [ - 3553 - ] - }, - { - "teal": 3592, - "source": 957, - "pc": [ - 3554, - 3555 - ] - }, - { - "teal": 3593, - "source": 957, - "pc": [ - 3556 - ] - }, - { - "teal": 3594, - "source": 957, - "pc": [ - 3557 - ] - }, - { - "teal": 3595, - "source": 957, - "pc": [ - 3558 - ] - }, - { - "teal": 3596, - "source": 957, - "pc": [ - 3559, - 3560 - ] - }, - { - "teal": 3597, - "source": 957, - "pc": [ - 3561 - ] - }, - { - "teal": 3598, - "source": 957, - "pc": [ - 3562 - ] - }, - { - "teal": 3599, - "source": 957, - "pc": [ - 3563, - 3564 - ] - }, - { - "teal": 3600, - "source": 957, - "pc": [ - 3565 - ] - }, - { - "teal": 3601, - "source": 957, - "pc": [ - 3566 - ] - }, - { - "teal": 3602, - "source": 957, - "pc": [ - 3567, - 3568 - ] - }, - { - "teal": 3603, - "source": 957, - "pc": [ - 3569 - ] - }, - { - "teal": 3604, - "source": 958, - "pc": [ - 3570, - 3571 - ] - }, - { - "teal": 3605, - "source": 957, - "pc": [ - 3572 - ] - }, - { - "teal": 3606, - "source": 956, - "pc": [ - 3573, - 3574, - 3575 - ] - }, - { - "teal": 3611, - "source": 960, - "pc": [ - 3576, - 3577 - ] - }, - { - "teal": 3612, - "source": 960, - "pc": [ - 3578, - 3579 - ] - }, - { - "teal": 3613, - "source": 960, - "pc": [ - 3580 - ] - }, - { - "teal": 3614, - "source": 960, - "pc": [ - 3581 - ] - }, - { - "teal": 3615, - "source": 960, - "pc": [ - 3582 - ] - }, - { - "teal": 3616, - "source": 960, - "pc": [ - 3583 - ] - }, - { - "teal": 3617, - "source": 960, - "pc": [ - 3584, - 3585 - ] - }, - { - "teal": 3618, - "source": 960, - "pc": [ - 3586 - ] - }, - { - "teal": 3619, - "source": 960, - "pc": [ - 3587, - 3588 - ] - }, - { - "teal": 3620, - "source": 960, - "pc": [ - 3589 - ] - }, - { - "teal": 3621, - "source": 960, - "pc": [ - 3590 - ] - }, - { - "teal": 3622, - "source": 960, - "pc": [ - 3591, - 3592 - ] - }, - { - "teal": 3623, - "source": 960, - "pc": [ - 3593 - ] - }, - { - "teal": 3624, - "source": 960, - "pc": [ - 3594 - ] - }, - { - "teal": 3625, - "source": 960, - "pc": [ - 3595, - 3596, - 3597 - ] - }, - { - "teal": 3634, - "source": 945, - "pc": [ - 3598, - 3599 - ] - }, - { - "teal": 3635, - "source": 945, - "pc": [ - 3600 - ] - }, - { - "teal": 3636, - "source": 945, - "pc": [ - 3601 - ] - }, - { - "teal": 3637, - "source": 945, - "pc": [ - 3602, - 3603 - ] - }, - { - "teal": 3638, - "source": 945, - "pc": [ - 3604, - 3605, - 3606 - ] - }, - { - "teal": 3648, - "source": 968, - "pc": [ - 3607, - 3608 - ] - }, - { - "teal": 3649, - "source": 968, - "pc": [ - 3609, - 3610 - ] - }, - { - "teal": 3650, - "source": 968, - "pc": [ - 3611 - ] - }, - { - "teal": 3651, - "source": 968, - "pc": [ - 3612 - ] - }, - { - "teal": 3652, - "source": 968, - "pc": [ - 3613, - 3614 - ] - }, - { - "teal": 3653, - "source": 968, - "pc": [ - 3615 - ] - }, - { - "teal": 3654, - "source": 968, - "pc": [ - 3616 - ] - }, - { - "teal": 3655, - "source": 968, - "pc": [ - 3617, - 3618 - ] - }, - { - "teal": 3656, - "source": 968, - "pc": [ - 3619 - ] - }, - { - "teal": 3657, - "source": 968, - "pc": [ - 3620 - ] - }, - { - "teal": 3658, - "source": 968, - "pc": [ - 3621 - ] - }, - { - "teal": 3661, - "source": 967, - "errorMessage": "must stake at least the minimum for this pool", - "pc": [ - 3622 - ] - }, - { - "teal": 3665, - "source": 973, - "pc": [ - 3623, - 3624 - ] - }, - { - "teal": 3666, - "source": 973, - "pc": [ - 3625, - 3626 - ] - }, - { - "teal": 3667, - "source": 973, - "pc": [ - 3627 - ] - }, - { - "teal": 3668, - "source": 973, - "pc": [ - 3628, - 3629 - ] - }, - { - "teal": 3669, - "source": 973, - "pc": [ - 3630 - ] - }, - { - "teal": 3670, - "source": 973, - "pc": [ - 3631 - ] - }, - { - "teal": 3671, - "source": 973, - "pc": [ - 3632, - 3633 - ] - }, - { - "teal": 3672, - "source": 973, - "pc": [ - 3634 - ] - }, - { - "teal": 3673, - "source": 973, - "pc": [ - 3635, - 3636 - ] - }, - { - "teal": 3677, - "source": 974, - "pc": [ - 3637, - 3638 - ] - }, - { - "teal": 3678, - "source": 974, - "pc": [ - 3639, - 3640 - ] - }, - { - "teal": 3679, - "source": 974, - "pc": [ - 3641 - ] - }, - { - "teal": 3680, - "source": 974, - "pc": [ - 3642, - 3643 - ] - }, - { - "teal": 3681, - "source": 974, - "pc": [ - 3644 - ] - }, - { - "teal": 3682, - "source": 974, - "pc": [ - 3645 - ] - }, - { - "teal": 3683, - "source": 974, - "pc": [ - 3646, - 3647 - ] - }, - { - "teal": 3684, - "source": 974, - "pc": [ - 3648 - ] - }, - { - "teal": 3685, - "source": 974, - "pc": [ - 3649 - ] - }, - { - "teal": 3686, - "source": 974, - "pc": [ - 3650, - 3651 - ] - }, - { - "teal": 3690, - "source": 975, - "pc": [ - 3652 - ] - }, - { - "teal": 3691, - "source": 975, - "pc": [ - 3653, - 3654 - ] - }, - { - "teal": 3696, - "source": 975, - "pc": [ - 3655, - 3656 - ] - }, - { - "teal": 3697, - "source": 975, - "pc": [ - 3657, - 3658 - ] - }, - { - "teal": 3698, - "source": 975, - "pc": [ - 3659 - ] - }, - { - "teal": 3699, - "source": 975, - "pc": [ - 3660, - 3661, - 3662 - ] - }, - { - "teal": 3704, - "source": 976, - "pc": [ - 3663, - 3664 - ] - }, - { - "teal": 3705, - "source": 976, - "pc": [ - 3665, - 3666 - ] - }, - { - "teal": 3706, - "source": 976, - "pc": [ - 3667, - 3668 - ] - }, - { - "teal": 3707, - "source": 976, - "pc": [ - 3669 - ] - }, - { - "teal": 3708, - "source": 976, - "pc": [ - 3670, - 3671 - ] - }, - { - "teal": 3709, - "source": 976, - "pc": [ - 3672 - ] - }, - { - "teal": 3710, - "source": 976, - "pc": [ - 3673 - ] - }, - { - "teal": 3711, - "source": 976, - "pc": [ - 3674 - ] - }, - { - "teal": 3712, - "source": 976, - "pc": [ - 3675 - ] - }, - { - "teal": 3713, - "source": 976, - "pc": [ - 3676, - 3677 - ] - }, - { - "teal": 3714, - "source": 976, - "pc": [ - 3678 - ] - }, - { - "teal": 3715, - "source": 976, - "pc": [ - 3679, - 3680 - ] - }, - { - "teal": 3716, - "source": 976, - "pc": [ - 3681 - ] - }, - { - "teal": 3717, - "source": 976, - "pc": [ - 3682, - 3683, - 3684 - ] - }, - { - "teal": 3726, - "source": 978, - "pc": [ - 3685, - 3686 - ] - }, - { - "teal": 3727, - "source": 978, - "pc": [ - 3687 - ] - }, - { - "teal": 3728, - "source": 978, - "pc": [ - 3688, - 3689 - ] - }, - { - "teal": 3729, - "source": 978, - "pc": [ - 3690 - ] - }, - { - "teal": 3730, - "source": 978, - "pc": [ - 3691 - ] - }, - { - "teal": 3731, - "source": 978, - "pc": [ - 3692 - ] - }, - { - "teal": 3732, - "source": 978, - "pc": [ - 3693 - ] - }, - { - "teal": 3733, - "source": 978, - "pc": [ - 3694, - 3695 - ] - }, - { - "teal": 3734, - "source": 978, - "pc": [ - 3696, - 3697 - ] - }, - { - "teal": 3735, - "source": 978, - "pc": [ - 3698, - 3699 - ] - }, - { - "teal": 3736, - "source": 978, - "pc": [ - 3700 - ] - }, - { - "teal": 3737, - "source": 978, - "pc": [ - 3701 - ] - }, - { - "teal": 3738, - "source": 978, - "pc": [ - 3702 - ] - }, - { - "teal": 3739, - "source": 978, - "pc": [ - 3703 - ] - }, - { - "teal": 3740, - "source": 978, - "pc": [ - 3704 - ] - }, - { - "teal": 3741, - "source": 978, - "pc": [ - 3705 - ] - }, - { - "teal": 3742, - "source": 978, - "pc": [ - 3706 - ] - }, - { - "teal": 3743, - "source": 978, - "pc": [ - 3707 - ] - }, - { - "teal": 3744, - "source": 979, - "pc": [ - 3708, - 3709 - ] - }, - { - "teal": 3745, - "source": 979, - "pc": [ - 3710 - ] - }, - { - "teal": 3746, - "source": 979, - "pc": [ - 3711, - 3712 - ] - }, - { - "teal": 3747, - "source": 979, - "pc": [ - 3713 - ] - }, - { - "teal": 3748, - "source": 980, - "pc": [ - 3714 - ] - }, - { - "teal": 3749, - "source": 980, - "pc": [ - 3715, - 3716 - ] - }, - { - "teal": 3750, - "source": 980, - "pc": [ - 3717 - ] - }, - { - "teal": 3751, - "source": 977, - "pc": [ - 3718 - ] - }, - { - "teal": 3752, - "source": 977, - "pc": [ - 3719, - 3720, - 3721 - ] - }, - { - "teal": 3759, - "source": 975, - "pc": [ - 3722, - 3723 - ] - }, - { - "teal": 3760, - "source": 975, - "pc": [ - 3724 - ] - }, - { - "teal": 3761, - "source": 975, - "pc": [ - 3725 - ] - }, - { - "teal": 3762, - "source": 975, - "pc": [ - 3726, - 3727 - ] - }, - { - "teal": 3763, - "source": 975, - "pc": [ - 3728, - 3729, - 3730 - ] - }, - { - "teal": 3768, - "source": 985, - "pc": [ - 3731, - 3732 - ] - }, - { - "teal": 3769, - "source": 985, - "pc": [ - 3733 - ] - }, - { - "teal": 3770, - "source": 985, - "pc": [ - 3734, - 3735 - ] - }, - { - "teal": 3771, - "source": 985, - "pc": [ - 3736 - ] - }, - { - "teal": 3772, - "source": 985, - "pc": [ - 3737, - 3738 - ] - }, - { - "teal": 3773, - "source": 985, - "pc": [ - 3739 - ] - }, - { - "teal": 3774, - "source": 985, - "pc": [ - 3740, - 3741 - ] - }, - { - "teal": 3775, - "source": 985, - "pc": [ - 3742 - ] - }, - { - "teal": 3776, - "source": 985, - "pc": [ - 3743, - 3744 - ] - }, - { - "teal": 3777, - "source": 985, - "pc": [ - 3745 - ] - }, - { - "teal": 3778, - "source": 985, - "pc": [ - 3746 - ] - }, - { - "teal": 3779, - "source": 985, - "pc": [ - 3747, - 3748 - ] - }, - { - "teal": 3780, - "source": 985, - "pc": [ - 3749 - ] - }, - { - "teal": 3781, - "source": 985, - "pc": [ - 3750 - ] - }, - { - "teal": 3785, - "source": 925, - "pc": [ - 3751, - 3752 - ] - }, - { - "teal": 3788, - "source": 925, - "pc": [ - 3753, - 3754 - ] - }, - { - "teal": 3789, - "source": 925, - "pc": [ - 3755 - ] - }, - { - "teal": 3794, - "source": 999, - "pc": [ - 3756, - 3757, - 3758 - ] - }, - { - "teal": 3795, - "source": 999, - "pc": [ - 3759 - ] - }, - { - "teal": 3798, - "source": 999, - "pc": [ - 3760, - 3761, - 3762 - ] - }, - { - "teal": 3799, - "source": 999, - "pc": [ - 3763 - ] - }, - { - "teal": 3802, - "source": 999, - "pc": [ - 3764, - 3765, - 3766 - ] - }, - { - "teal": 3803, - "source": 999, - "pc": [ - 3767 - ] - }, - { - "teal": 3806, - "source": 999, - "pc": [ - 3768, - 3769, - 3770 - ] - }, - { - "teal": 3807, - "source": 999, - "pc": [ - 3771 - ] - }, - { - "teal": 3808, - "source": 999, - "pc": [ - 3772 - ] - }, - { - "teal": 3822, - "source": 999, - "pc": [ - 3773, - 3774, - 3775 - ] - }, - { - "teal": 3825, - "source": 999, - "pc": [ - 3776 - ] - }, - { - "teal": 3826, - "source": 999, - "pc": [ - 3777, - 3778 - ] - }, - { - "teal": 3834, - "source": 1002, - "pc": [ - 3779, - 3780 - ] - }, - { - "teal": 3835, - "source": 1002, - "pc": [ - 3781 - ] - }, - { - "teal": 3836, - "source": 1002, - "pc": [ - 3782, - 3783 - ] - }, - { - "teal": 3837, - "source": 1002, - "pc": [ - 3784 - ] - }, - { - "teal": 3838, - "source": 1002, - "pc": [ - 3785, - 3786 - ] - }, - { - "teal": 3839, - "source": 1002, - "pc": [ - 3787 - ] - }, - { - "teal": 3840, - "source": 1002, - "pc": [ - 3788 - ] - }, - { - "teal": 3841, - "source": 1002, - "pc": [ - 3789, - 3790 - ] - }, - { - "teal": 3842, - "source": 1002, - "pc": [ - 3791 - ] - }, - { - "teal": 3843, - "source": 1002, - "pc": [ - 3792 - ] - }, - { - "teal": 3844, - "source": 1002, - "pc": [ - 3793 - ] - }, - { - "teal": 3845, - "source": 1002, - "pc": [ - 3794, - 3795, - 3796 - ] - }, - { - "teal": 3846, - "source": 1003, - "pc": [ - 3797, - 3798 - ] - }, - { - "teal": 3847, - "source": 1003, - "pc": [ - 3799, - 3800 - ] - }, - { - "teal": 3848, - "source": 1003, - "pc": [ - 3801, - 3802 - ] - }, - { - "teal": 3849, - "source": 1003, - "pc": [ - 3803 - ] - }, - { - "teal": 3850, - "source": 1003, - "pc": [ - 3804, - 3805 - ] - }, - { - "teal": 3851, - "source": 1003, - "pc": [ - 3806 - ] - }, - { - "teal": 3852, - "source": 1003, - "pc": [ - 3807 - ] - }, - { - "teal": 3853, - "source": 1003, - "pc": [ - 3808, - 3809 - ] - }, - { - "teal": 3854, - "source": 1003, - "pc": [ - 3810 - ] - }, - { - "teal": 3855, - "source": 1003, - "pc": [ - 3811 - ] - }, - { - "teal": 3856, - "source": 1002, - "pc": [ - 3812 - ] - }, - { - "teal": 3860, - "source": 1001, - "errorMessage": "can only be called by owner or manager of validator", - "pc": [ - 3813 - ] - }, - { - "teal": 3864, - "source": 1007, - "pc": [ - 3814, - 3815 - ] - }, - { - "teal": 3865, - "source": 1007, - "pc": [ - 3816, - 3817 - ] - }, - { - "teal": 3866, - "source": 1007, - "pc": [ - 3818 - ] - }, - { - "teal": 3867, - "source": 1007, - "pc": [ - 3819, - 3820 - ] - }, - { - "teal": 3868, - "source": 1007, - "pc": [ - 3821 - ] - }, - { - "teal": 3869, - "source": 1007, - "pc": [ - 3822 - ] - }, - { - "teal": 3870, - "source": 1007, - "pc": [ - 3823, - 3824 - ] - }, - { - "teal": 3871, - "source": 1007, - "pc": [ - 3825 - ] - }, - { - "teal": 3872, - "source": 1007, - "pc": [ - 3826, - 3827 - ] - }, - { - "teal": 3876, - "source": 1008, - "pc": [ - 3828, - 3829 - ] - }, - { - "teal": 3877, - "source": 1008, - "pc": [ - 3830 - ] - }, - { - "teal": 3878, - "source": 1008, - "pc": [ - 3831 - ] - }, - { - "teal": 3879, - "source": 1008, - "pc": [ - 3832 - ] - }, - { - "teal": 3880, - "source": 1008, - "pc": [ - 3833, - 3834, - 3835 - ] - }, - { - "teal": 3881, - "source": 1008, - "pc": [ - 3836, - 3837 - ] - }, - { - "teal": 3882, - "source": 1008, - "pc": [ - 3838 - ] - }, - { - "teal": 3883, - "source": 1008, - "pc": [ - 3839 - ] - }, - { - "teal": 3884, - "source": 1008, - "pc": [ - 3840 - ] - }, - { - "teal": 3888, - "source": 1008, - "errorMessage": "node number out of allowable range", - "pc": [ - 3841 - ] - }, - { - "teal": 3892, - "source": 1010, - "pc": [ - 3842 - ] - }, - { - "teal": 3893, - "source": 1010, - "pc": [ - 3843, - 3844 - ] - }, - { - "teal": 3898, - "source": 1010, - "pc": [ - 3845, - 3846 - ] - }, - { - "teal": 3899, - "source": 1010, - "pc": [ - 3847 - ] - }, - { - "teal": 3900, - "source": 1010, - "pc": [ - 3848 - ] - }, - { - "teal": 3901, - "source": 1010, - "pc": [ - 3849, - 3850, - 3851 - ] - }, - { - "teal": 3905, - "source": 1011, - "pc": [ - 3852 - ] - }, - { - "teal": 3906, - "source": 1011, - "pc": [ - 3853, - 3854 - ] - }, - { - "teal": 3911, - "source": 1011, - "pc": [ - 3855, - 3856 - ] - }, - { - "teal": 3912, - "source": 1011, - "pc": [ - 3857, - 3858 - ] - }, - { - "teal": 3913, - "source": 1011, - "pc": [ - 3859 - ] - }, - { - "teal": 3914, - "source": 1011, - "pc": [ - 3860, - 3861, - 3862 - ] - }, - { - "teal": 3919, - "source": 1012, - "pc": [ - 3863, - 3864 - ] - }, - { - "teal": 3920, - "source": 1012, - "pc": [ - 3865 - ] - }, - { - "teal": 3921, - "source": 1012, - "pc": [ - 3866, - 3867 - ] - }, - { - "teal": 3922, - "source": 1012, - "pc": [ - 3868 - ] - }, - { - "teal": 3923, - "source": 1012, - "pc": [ - 3869 - ] - }, - { - "teal": 3924, - "source": 1012, - "pc": [ - 3870 - ] - }, - { - "teal": 3925, - "source": 1012, - "pc": [ - 3871 - ] - }, - { - "teal": 3926, - "source": 1012, - "pc": [ - 3872 - ] - }, - { - "teal": 3927, - "source": 1012, - "pc": [ - 3873, - 3874 - ] - }, - { - "teal": 3928, - "source": 1012, - "pc": [ - 3875 - ] - }, - { - "teal": 3929, - "source": 1012, - "pc": [ - 3876 - ] - }, - { - "teal": 3930, - "source": 1012, - "pc": [ - 3877 - ] - }, - { - "teal": 3931, - "source": 1012, - "pc": [ - 3878 - ] - }, - { - "teal": 3932, - "source": 1012, - "pc": [ - 3879 - ] - }, - { - "teal": 3933, - "source": 1012, - "pc": [ - 3880 - ] - }, - { - "teal": 3934, - "source": 1012, - "pc": [ - 3881, - 3882 - ] - }, - { - "teal": 3935, - "source": 1012, - "pc": [ - 3883 - ] - }, - { - "teal": 3936, - "source": 1012, - "pc": [ - 3884, - 3885, - 3886 - ] - }, - { - "teal": 3941, - "source": 1013, - "pc": [ - 3887, - 3888 - ] - }, - { - "teal": 3942, - "source": 1013, - "pc": [ - 3889 - ] - }, - { - "teal": 3943, - "source": 1013, - "pc": [ - 3890 - ] - }, - { - "teal": 3944, - "source": 1013, - "pc": [ - 3891, - 3892 - ] - }, - { - "teal": 3945, - "source": 1013, - "pc": [ - 3893 - ] - }, - { - "teal": 3948, - "source": 1013, - "errorMessage": "can't move to same node", - "pc": [ - 3894 - ] - }, - { - "teal": 3952, - "source": 1015, - "pc": [ - 3895, - 3896 - ] - }, - { - "teal": 3953, - "source": 1015, - "pc": [ - 3897, - 3898 - ] - }, - { - "teal": 3954, - "source": 1015, - "pc": [ - 3899 - ] - }, - { - "teal": 3955, - "source": 1015, - "pc": [ - 3900 - ] - }, - { - "teal": 3956, - "source": 1015, - "pc": [ - 3901 - ] - }, - { - "teal": 3957, - "source": 1015, - "pc": [ - 3902 - ] - }, - { - "teal": 3958, - "source": 1015, - "pc": [ - 3903 - ] - }, - { - "teal": 3959, - "source": 1015, - "pc": [ - 3904, - 3905 - ] - }, - { - "teal": 3960, - "source": 1015, - "pc": [ - 3906 - ] - }, - { - "teal": 3961, - "source": 1015, - "pc": [ - 3907 - ] - }, - { - "teal": 3962, - "source": 1015, - "pc": [ - 3908 - ] - }, - { - "teal": 3963, - "source": 1015, - "pc": [ - 3909, - 3910 - ] - }, - { - "teal": 3964, - "source": 1015, - "pc": [ - 3911 - ] - }, - { - "teal": 3965, - "source": 1015, - "pc": [ - 3912, - 3913 - ] - }, - { - "teal": 3966, - "source": 1015, - "pc": [ - 3914 - ] - }, - { - "teal": 3967, - "source": 1015, - "pc": [ - 3915 - ] - }, - { - "teal": 3968, - "source": 1015, - "pc": [ - 3916, - 3917 - ] - }, - { - "teal": 3969, - "source": 1015, - "pc": [ - 3918 - ] - }, - { - "teal": 3975, - "source": 1018, - "pc": [ - 3919 - ] - }, - { - "teal": 3976, - "source": 1018, - "pc": [ - 3920, - 3921 - ] - }, - { - "teal": 3977, - "source": 1018, - "pc": [ - 3922, - 3923 - ] - }, - { - "teal": 3978, - "source": 1018, - "pc": [ - 3924, - 3925, - 3926, - 3927, - 3928, - 3929 - ] - }, - { - "teal": 3979, - "source": 1018, - "pc": [ - 3930, - 3931 - ] - }, - { - "teal": 3983, - "source": 1019, - "pc": [ - 3932, - 3933 - ] - }, - { - "teal": 3984, - "source": 1019, - "pc": [ - 3934, - 3935 - ] - }, - { - "teal": 3987, - "source": 1018, - "pc": [ - 3936 - ] - }, - { - "teal": 3988, - "source": 1018, - "pc": [ - 3937, - 3938 - ] - }, - { - "teal": 3991, - "source": 1018, - "pc": [ - 3939 - ] - }, - { - "teal": 3995, - "source": 1023, - "pc": [ - 3940, - 3941 - ] - }, - { - "teal": 3996, - "source": 1023, - "pc": [ - 3942, - 3943 - ] - }, - { - "teal": 3997, - "source": 1023, - "pc": [ - 3944, - 3945 - ] - }, - { - "teal": 3998, - "source": 1023, - "pc": [ - 3946, - 3947, - 3948 - ] - }, - { - "teal": 4002, - "source": 1024, - "pc": [ - 3949 - ] - }, - { - "teal": 4009, - "source": 1011, - "pc": [ - 3950, - 3951 - ] - }, - { - "teal": 4010, - "source": 1011, - "pc": [ - 3952 - ] - }, - { - "teal": 4011, - "source": 1011, - "pc": [ - 3953 - ] - }, - { - "teal": 4012, - "source": 1011, - "pc": [ - 3954, - 3955 - ] - }, - { - "teal": 4013, - "source": 1011, - "pc": [ - 3956, - 3957, - 3958 - ] - }, - { - "teal": 4020, - "source": 1010, - "pc": [ - 3959, - 3960 - ] - }, - { - "teal": 4021, - "source": 1010, - "pc": [ - 3961 - ] - }, - { - "teal": 4022, - "source": 1010, - "pc": [ - 3962 - ] - }, - { - "teal": 4023, - "source": 1010, - "pc": [ - 3963, - 3964 - ] - }, - { - "teal": 4024, - "source": 1010, - "pc": [ - 3965, - 3966, - 3967 - ] - }, - { - "teal": 4028, - "source": 1028, - "errorMessage": "couldn't find pool app id in nodes to move", - "pc": [ - 3968 - ] - }, - { - "teal": 4029, - "source": 999, - "pc": [ - 3969 - ] - }, - { - "teal": 4034, - "source": 1042, - "pc": [ - 3970 - ] - }, - { - "teal": 4037, - "source": 1042, - "pc": [ - 3971, - 3972, - 3973 - ] - }, - { - "teal": 4038, - "source": 1042, - "pc": [ - 3974 - ] - }, - { - "teal": 4039, - "source": 1042, - "pc": [ - 3975 - ] - }, - { - "teal": 4040, - "source": 1042, - "pc": [ - 3976, - 3977 - ] - }, - { - "teal": 4041, - "source": 1042, - "pc": [ - 3978 - ] - }, - { - "teal": 4044, - "source": 1042, - "errorMessage": "argument 0 (receiver) for emptyTokenRewards must be a address", - "pc": [ - 3979 - ] - }, - { - "teal": 4047, - "source": 1042, - "pc": [ - 3980, - 3981, - 3982 - ] - }, - { - "teal": 4048, - "source": 1042, - "pc": [ - 3983 - ] - }, - { - "teal": 4051, - "source": 1042, - "pc": [ - 3984, - 3985, - 3986 - ] - }, - { - "teal": 4052, - "source": 1042, - "pc": [ - 3987 - ] - }, - { - "teal": 4053, - "source": 1042, - "pc": [ - 3988 - ] - }, - { - "teal": 4054, - "source": 1042, - "pc": [ - 3989 - ] - }, - { - "teal": 4055, - "source": 1042, - "pc": [ - 3990 - ] - }, - { - "teal": 4056, - "source": 1042, - "pc": [ - 3991 - ] - }, - { - "teal": 4070, - "source": 1042, - "pc": [ - 3992, - 3993, - 3994 - ] - }, - { - "teal": 4073, - "source": 1042, - "pc": [ - 3995 - ] - }, - { - "teal": 4074, - "source": 1042, - "pc": [ - 3996, - 3997 - ] - }, - { - "teal": 4081, - "source": 1044, - "pc": [ - 3998, - 3999 - ] - }, - { - "teal": 4082, - "source": 1044, - "pc": [ - 4000 - ] - }, - { - "teal": 4083, - "source": 1044, - "pc": [ - 4001, - 4002 - ] - }, - { - "teal": 4084, - "source": 1044, - "pc": [ - 4003 - ] - }, - { - "teal": 4085, - "source": 1044, - "pc": [ - 4004, - 4005 - ] - }, - { - "teal": 4086, - "source": 1044, - "pc": [ - 4006 - ] - }, - { - "teal": 4087, - "source": 1044, - "pc": [ - 4007 - ] - }, - { - "teal": 4088, - "source": 1044, - "pc": [ - 4008, - 4009 - ] - }, - { - "teal": 4089, - "source": 1044, - "pc": [ - 4010 - ] - }, - { - "teal": 4090, - "source": 1044, - "pc": [ - 4011 - ] - }, - { - "teal": 4093, - "source": 1043, - "errorMessage": "can only be called by validator owner", - "pc": [ - 4012 - ] - }, - { - "teal": 4097, - "source": 1047, - "pc": [ - 4013, - 4014 - ] - }, - { - "teal": 4098, - "source": 1047, - "pc": [ - 4015 - ] - }, - { - "teal": 4099, - "source": 1047, - "pc": [ - 4016 - ] - }, - { - "teal": 4100, - "source": 1047, - "pc": [ - 4017, - 4018 - ] - }, - { - "teal": 4101, - "source": 1047, - "pc": [ - 4019 - ] - }, - { - "teal": 4102, - "source": 1047, - "pc": [ - 4020 - ] - }, - { - "teal": 4103, - "source": 1047, - "pc": [ - 4021, - 4022 - ] - }, - { - "teal": 4104, - "source": 1047, - "pc": [ - 4023 - ] - }, - { - "teal": 4105, - "source": 1047, - "pc": [ - 4024 - ] - }, - { - "teal": 4106, - "source": 1047, - "pc": [ - 4025, - 4026 - ] - }, - { - "teal": 4110, - "source": 1048, - "pc": [ - 4027, - 4028 - ] - }, - { - "teal": 4111, - "source": 1048, - "pc": [ - 4029 - ] - }, - { - "teal": 4112, - "source": 1048, - "pc": [ - 4030 - ] - }, - { - "teal": 4113, - "source": 1048, - "pc": [ - 4031, - 4032 - ] - }, - { - "teal": 4114, - "source": 1048, - "pc": [ - 4033 - ] - }, - { - "teal": 4115, - "source": 1048, - "pc": [ - 4034 - ] - }, - { - "teal": 4116, - "source": 1048, - "pc": [ - 4035, - 4036 - ] - }, - { - "teal": 4117, - "source": 1048, - "pc": [ - 4037 - ] - }, - { - "teal": 4118, - "source": 1048, - "pc": [ - 4038 - ] - }, - { - "teal": 4119, - "source": 1048, - "pc": [ - 4039, - 4040 - ] - }, - { - "teal": 4123, - "source": 1049, - "pc": [ - 4041, - 4042 - ] - }, - { - "teal": 4124, - "source": 1049, - "pc": [ - 4043 - ] - }, - { - "teal": 4125, - "source": 1049, - "pc": [ - 4044 - ] - }, - { - "teal": 4128, - "source": 1049, - "errorMessage": "this validator doesn't have a reward token defined", - "pc": [ - 4045 - ] - }, - { - "teal": 4132, - "source": 1050, - "pc": [ - 4046, - 4047 - ] - }, - { - "teal": 4133, - "source": 1050, - "pc": [ - 4048 - ] - }, - { - "teal": 4134, - "source": 1050, - "pc": [ - 4049 - ] - }, - { - "teal": 4135, - "source": 1050, - "pc": [ - 4050, - 4051 - ] - }, - { - "teal": 4136, - "source": 1050, - "pc": [ - 4052 - ] - }, - { - "teal": 4137, - "source": 1050, - "pc": [ - 4053 - ] - }, - { - "teal": 4138, - "source": 1050, - "pc": [ - 4054, - 4055 - ] - }, - { - "teal": 4139, - "source": 1050, - "pc": [ - 4056 - ] - }, - { - "teal": 4140, - "source": 1050, - "pc": [ - 4057 - ] - }, - { - "teal": 4141, - "source": 1050, - "pc": [ - 4058, - 4059 - ] - }, - { - "teal": 4145, - "source": 1052, - "pc": [ - 4060, - 4061 - ] - }, - { - "teal": 4146, - "source": 1052, - "pc": [ - 4062, - 4063 - ] - }, - { - "teal": 4147, - "source": 1052, - "pc": [ - 4064 - ] - }, - { - "teal": 4148, - "source": 1052, - "pc": [ - 4065, - 4066 - ] - }, - { - "teal": 4149, - "source": 1052, - "pc": [ - 4067, - 4068 - ] - }, - { - "teal": 4150, - "source": 1052, - "pc": [ - 4069 - ] - }, - { - "teal": 4151, - "source": 1052, - "pc": [ - 4070, - 4071 - ] - }, - { - "teal": 4152, - "source": 1052, - "pc": [ - 4072 - ] - }, - { - "teal": 4153, - "source": 1052, - "pc": [ - 4073, - 4074 - ] - }, - { - "teal": 4160, - "source": 1055, - "pc": [ - 4075 - ] - }, - { - "teal": 4161, - "source": 1055, - "pc": [ - 4076, - 4077 - ] - }, - { - "teal": 4162, - "source": 1055, - "pc": [ - 4078, - 4079 - ] - }, - { - "teal": 4163, - "source": 1055, - "pc": [ - 4080, - 4081 - ] - }, - { - "teal": 4164, - "source": 1055, - "pc": [ - 4082, - 4083 - ] - }, - { - "teal": 4168, - "source": 1056, - "pc": [ - 4084, - 4085 - ] - }, - { - "teal": 4169, - "source": 1056, - "pc": [ - 4086, - 4087 - ] - }, - { - "teal": 4173, - "source": 1057, - "pc": [ - 4088, - 4089 - ] - }, - { - "teal": 4174, - "source": 1057, - "pc": [ - 4090, - 4091 - ] - }, - { - "teal": 4175, - "source": 1057, - "pc": [ - 4092, - 4093 - ] - }, - { - "teal": 4176, - "source": 1057, - "pc": [ - 4094 - ] - }, - { - "teal": 4177, - "source": 1057, - "pc": [ - 4095, - 4096 - ] - }, - { - "teal": 4178, - "source": 1057, - "pc": [ - 4097, - 4098 - ] - }, - { - "teal": 4179, - "source": 1057, - "pc": [ - 4099 - ] - }, - { - "teal": 4180, - "source": 1057, - "pc": [ - 4100, - 4101 - ] - }, - { - "teal": 4183, - "source": 1055, - "pc": [ - 4102 - ] - }, - { - "teal": 4184, - "source": 1055, - "pc": [ - 4103, - 4104 - ] - }, - { - "teal": 4187, - "source": 1055, - "pc": [ - 4105 - ] - }, - { - "teal": 4194, - "source": 1060, - "pc": [ - 4106, - 4107 - ] - }, - { - "teal": 4195, - "source": 1060, - "pc": [ - 4108, - 4109 - ] - }, - { - "teal": 4196, - "source": 1060, - "pc": [ - 4110 - ] - }, - { - "teal": 4197, - "source": 1060, - "pc": [ - 4111, - 4112 - ] - }, - { - "teal": 4198, - "source": 1060, - "pc": [ - 4113, - 4114 - ] - }, - { - "teal": 4199, - "source": 1060, - "pc": [ - 4115 - ] - }, - { - "teal": 4200, - "source": 1060, - "pc": [ - 4116, - 4117 - ] - }, - { - "teal": 4201, - "source": 1060, - "pc": [ - 4118 - ] - }, - { - "teal": 4204, - "source": 1059, - "errorMessage": "balance of remaining reward tokens should match the held back amount", - "pc": [ - 4119 - ] - }, - { - "teal": 4208, - "source": 1063, - "pc": [ - 4120, - 4121 - ] - }, - { - "teal": 4211, - "source": 1042, - "pc": [ - 4122, - 4123 - ] - }, - { - "teal": 4214, - "source": 1042, - "pc": [ - 4124, - 4125 - ] - }, - { - "teal": 4215, - "source": 1042, - "pc": [ - 4126 - ] - }, - { - "teal": 4226, - "source": 1160, - "pc": [ - 4127, - 4128, - 4129 - ] - }, - { - "teal": 4230, - "source": 1161, - "pc": [ - 4130 - ] - }, - { - "teal": 4231, - "source": 1161, - "pc": [ - 4131, - 4132 - ] - }, - { - "teal": 4232, - "source": 1161, - "pc": [ - 4133, - 4134, - 4135 - ] - }, - { - "teal": 4233, - "source": 1161, - "pc": [ - 4136 - ] - }, - { - "teal": 4234, - "source": 1161, - "pc": [ - 4137 - ] - }, - { - "teal": 4235, - "source": 1161, - "pc": [ - 4138 - ] - }, - { - "teal": 4236, - "source": 1161, - "pc": [ - 4139 - ] - }, - { - "teal": 4237, - "source": 1161, - "pc": [ - 4140 - ] - }, - { - "teal": 4238, - "source": 1161, - "pc": [ - 4141 - ] - }, - { - "teal": 4241, - "source": 1161, - "errorMessage": "the specified validator id isn't valid", - "pc": [ - 4142 - ] - }, - { - "teal": 4245, - "source": 1162, - "pc": [ - 4143, - 4144 - ] - }, - { - "teal": 4246, - "source": 1162, - "pc": [ - 4145, - 4146, - 4147 - ] - }, - { - "teal": 4247, - "source": 1162, - "pc": [ - 4148 - ] - }, - { - "teal": 4248, - "source": 32, - "pc": [ - 4149 - ] - }, - { - "teal": 4249, - "source": 1162, - "pc": [ - 4150 - ] - }, - { - "teal": 4252, - "source": 1162, - "errorMessage": "pool id not in valid range", - "pc": [ - 4151 - ] - }, - { - "teal": 4259, - "source": 1164, - "pc": [ - 4152, - 4153 - ] - }, - { - "teal": 4260, - "source": 1164, - "pc": [ - 4154, - 4155, - 4156 - ] - }, - { - "teal": 4261, - "source": 1164, - "pc": [ - 4157 - ] - }, - { - "teal": 4262, - "source": 1164, - "pc": [ - 4158 - ] - }, - { - "teal": 4263, - "source": 1164, - "pc": [ - 4159 - ] - }, - { - "teal": 4264, - "source": 1164, - "pc": [ - 4160 - ] - }, - { - "teal": 4265, - "source": 1164, - "pc": [ - 4161, - 4162, - 4163 - ] - }, - { - "teal": 4266, - "source": 1164, - "pc": [ - 4164, - 4165 - ] - }, - { - "teal": 4267, - "source": 1164, - "pc": [ - 4166, - 4167, - 4168 - ] - }, - { - "teal": 4268, - "source": 1164, - "pc": [ - 4169 - ] - }, - { - "teal": 4269, - "source": 1164, - "pc": [ - 4170, - 4171 - ] - }, - { - "teal": 4270, - "source": 1164, - "pc": [ - 4172, - 4173 - ] - }, - { - "teal": 4271, - "source": 1164, - "pc": [ - 4174 - ] - }, - { - "teal": 4272, - "source": 1164, - "pc": [ - 4175, - 4176 - ] - }, - { - "teal": 4273, - "source": 1164, - "pc": [ - 4177, - 4178, - 4179 - ] - }, - { - "teal": 4274, - "source": 1164, - "pc": [ - 4180 - ] - }, - { - "teal": 4275, - "source": 1164, - "pc": [ - 4181 - ] - }, - { - "teal": 4276, - "source": 1164, - "pc": [ - 4182 - ] - }, - { - "teal": 4277, - "source": 1164, - "pc": [ - 4183, - 4184 - ] - }, - { - "teal": 4278, - "source": 1164, - "pc": [ - 4185 - ] - }, - { - "teal": 4279, - "source": 1164, - "pc": [ - 4186 - ] - }, - { - "teal": 4280, - "source": 1164, - "pc": [ - 4187 - ] - }, - { - "teal": 4281, - "source": 1164, - "pc": [ - 4188 - ] - }, - { - "teal": 4285, - "source": 1163, - "errorMessage": "pool id outside of range of pools created for this validator", - "pc": [ - 4189 - ] - }, - { - "teal": 4292, - "source": 1170, - "pc": [ - 4190, - 4191 - ] - }, - { - "teal": 4293, - "source": 1170, - "pc": [ - 4192, - 4193, - 4194 - ] - }, - { - "teal": 4294, - "source": 1170, - "pc": [ - 4195 - ] - }, - { - "teal": 4295, - "source": 1170, - "pc": [ - 4196, - 4197 - ] - }, - { - "teal": 4296, - "source": 1170, - "pc": [ - 4198, - 4199 - ] - }, - { - "teal": 4297, - "source": 1170, - "pc": [ - 4200, - 4201, - 4202 - ] - }, - { - "teal": 4298, - "source": 1170, - "pc": [ - 4203 - ] - }, - { - "teal": 4299, - "source": 1170, - "pc": [ - 4204 - ] - }, - { - "teal": 4300, - "source": 1170, - "pc": [ - 4205 - ] - }, - { - "teal": 4301, - "source": 1170, - "pc": [ - 4206, - 4207 - ] - }, - { - "teal": 4302, - "source": 1170, - "pc": [ - 4208 - ] - }, - { - "teal": 4303, - "source": 1170, - "pc": [ - 4209 - ] - }, - { - "teal": 4304, - "source": 1170, - "pc": [ - 4210 - ] - }, - { - "teal": 4305, - "source": 1170, - "pc": [ - 4211 - ] - }, - { - "teal": 4306, - "source": 1170, - "pc": [ - 4212 - ] - }, - { - "teal": 4307, - "source": 1170, - "pc": [ - 4213 - ] - }, - { - "teal": 4308, - "source": 1170, - "pc": [ - 4214, - 4215 - ] - }, - { - "teal": 4309, - "source": 1170, - "pc": [ - 4216, - 4217, - 4218 - ] - }, - { - "teal": 4310, - "source": 1170, - "pc": [ - 4219 - ] - }, - { - "teal": 4311, - "source": 1170, - "pc": [ - 4220 - ] - }, - { - "teal": 4312, - "source": 1170, - "pc": [ - 4221 - ] - }, - { - "teal": 4313, - "source": 1170, - "pc": [ - 4222, - 4223 - ] - }, - { - "teal": 4314, - "source": 1170, - "pc": [ - 4224 - ] - }, - { - "teal": 4315, - "source": 1170, - "pc": [ - 4225 - ] - }, - { - "teal": 4316, - "source": 1170, - "pc": [ - 4226 - ] - }, - { - "teal": 4319, - "source": 1169, - "errorMessage": "The passed in app id doesn't match the passed in ids", - "pc": [ - 4227 - ] - }, - { - "teal": 4323, - "source": 1174, - "pc": [ - 4228, - 4229 - ] - }, - { - "teal": 4324, - "source": 1174, - "pc": [ - 4230, - 4231 - ] - }, - { - "teal": 4325, - "source": 1174, - "pc": [ - 4232, - 4233, - 4234 - ] - }, - { - "teal": 4326, - "source": 1174, - "pc": [ - 4235 - ] - }, - { - "teal": 4327, - "source": 1174, - "pc": [ - 4236, - 4237 - ] - }, - { - "teal": 4328, - "source": 1174, - "pc": [ - 4238 - ] - }, - { - "teal": 4329, - "source": 1174, - "pc": [ - 4239 - ] - }, - { - "teal": 4330, - "source": 1174, - "pc": [ - 4240 - ] - }, - { - "teal": 4334, - "source": 1176, - "pc": [ - 4241, - 4242 - ] - }, - { - "teal": 4335, - "source": 1176, - "pc": [ - 4243, - 4244, - 4245 - ] - }, - { - "teal": 4336, - "source": 1176, - "pc": [ - 4246 - ] - }, - { - "teal": 4337, - "source": 1176, - "pc": [ - 4247, - 4248 - ] - }, - { - "teal": 4338, - "source": 1176, - "pc": [ - 4249, - 4250, - 4251 - ] - }, - { - "teal": 4339, - "source": 1176, - "pc": [ - 4252 - ] - }, - { - "teal": 4340, - "source": 1176, - "pc": [ - 4253, - 4254, - 4255, - 4256, - 4257, - 4258, - 4259, - 4260, - 4261, - 4262, - 4263, - 4264, - 4265 - ] - }, - { - "teal": 4341, - "source": 1176, - "pc": [ - 4266 - ] - }, - { - "teal": 4344, - "source": 1176, - "errorMessage": "global state value does not exist: AppID.fromUint64(poolKey.poolAppId).globalState('validatorId')", - "pc": [ - 4267 - ] - }, - { - "teal": 4345, - "source": 1176, - "pc": [ - 4268 - ] - }, - { - "teal": 4346, - "source": 1176, - "pc": [ - 4269 - ] - }, - { - "teal": 4350, - "source": 1177, - "pc": [ - 4270, - 4271 - ] - }, - { - "teal": 4351, - "source": 1177, - "pc": [ - 4272, - 4273, - 4274 - ] - }, - { - "teal": 4352, - "source": 1177, - "pc": [ - 4275 - ] - }, - { - "teal": 4353, - "source": 1177, - "pc": [ - 4276, - 4277 - ] - }, - { - "teal": 4354, - "source": 1177, - "pc": [ - 4278, - 4279, - 4280 - ] - }, - { - "teal": 4355, - "source": 1177, - "pc": [ - 4281 - ] - }, - { - "teal": 4356, - "source": 1177, - "pc": [ - 4282, - 4283, - 4284, - 4285, - 4286, - 4287, - 4288, - 4289 - ] - }, - { - "teal": 4357, - "source": 1177, - "pc": [ - 4290 - ] - }, - { - "teal": 4360, - "source": 1177, - "errorMessage": "global state value does not exist: AppID.fromUint64(poolKey.poolAppId).globalState('poolId')", - "pc": [ - 4291 - ] - }, - { - "teal": 4361, - "source": 1177, - "pc": [ - 4292 - ] - }, - { - "teal": 4362, - "source": 1177, - "pc": [ - 4293 - ] - }, - { - "teal": 4363, - "source": 1160, - "pc": [ - 4294 - ] - }, - { - "teal": 4372, - "source": 1186, - "pc": [ - 4295, - 4296, - 4297 - ] - }, - { - "teal": 4375, - "source": 1186, - "pc": [ - 4298 - ] - }, - { - "teal": 4376, - "source": 1186, - "pc": [ - 4299 - ] - }, - { - "teal": 4380, - "source": 1187, - "pc": [ - 4300 - ] - }, - { - "teal": 4381, - "source": 1187, - "pc": [ - 4301, - 4302 - ] - }, - { - "teal": 4382, - "source": 1187, - "pc": [ - 4303 - ] - }, - { - "teal": 4383, - "source": 1187, - "pc": [ - 4304 - ] - }, - { - "teal": 4384, - "source": 1187, - "pc": [ - 4305, - 4306 - ] - }, - { - "teal": 4389, - "source": 1188, - "pc": [ - 4307, - 4308 - ] - }, - { - "teal": 4390, - "source": 1188, - "pc": [ - 4309 - ] - }, - { - "teal": 4391, - "source": 1187, - "pc": [ - 4310 - ] - }, - { - "teal": 4392, - "source": 1187, - "pc": [ - 4311, - 4312 - ] - }, - { - "teal": 4393, - "source": 1187, - "pc": [ - 4313 - ] - }, - { - "teal": 4394, - "source": 1187, - "pc": [ - 4314 - ] - }, - { - "teal": 4395, - "source": 1187, - "pc": [ - 4315, - 4316 - ] - }, - { - "teal": 4396, - "source": 1187, - "pc": [ - 4317 - ] - }, - { - "teal": 4397, - "source": 1188, - "pc": [ - 4318 - ] - }, - { - "teal": 4398, - "source": 1188, - "pc": [ - 4319 - ] - }, - { - "teal": 4399, - "source": 1188, - "pc": [ - 4320 - ] - }, - { - "teal": 4400, - "source": 1188, - "pc": [ - 4321, - 4322, - 4323 - ] - }, - { - "teal": 4405, - "source": 1191, - "pc": [ - 4324, - 4325 - ] - }, - { - "teal": 4406, - "source": 1191, - "pc": [ - 4326 - ] - }, - { - "teal": 4407, - "source": 1187, - "pc": [ - 4327 - ] - }, - { - "teal": 4408, - "source": 1187, - "pc": [ - 4328, - 4329 - ] - }, - { - "teal": 4409, - "source": 1187, - "pc": [ - 4330 - ] - }, - { - "teal": 4410, - "source": 1187, - "pc": [ - 4331 - ] - }, - { - "teal": 4411, - "source": 1187, - "pc": [ - 4332, - 4333 - ] - }, - { - "teal": 4412, - "source": 1187, - "pc": [ - 4334 - ] - }, - { - "teal": 4413, - "source": 1191, - "pc": [ - 4335 - ] - }, - { - "teal": 4414, - "source": 1191, - "pc": [ - 4336, - 4337 - ] - }, - { - "teal": 4415, - "source": 1191, - "pc": [ - 4338 - ] - }, - { - "teal": 4418, - "source": 1191, - "errorMessage": "global state value does not exist: AppID.fromUint64(validatorConfig.nfdForInfo).globalState('i.owner.a')", - "pc": [ - 4339 - ] - }, - { - "teal": 4419, - "source": 1191, - "pc": [ - 4340, - 4341 - ] - }, - { - "teal": 4424, - "source": 1193, - "pc": [ - 4342 - ] - }, - { - "teal": 4425, - "source": 1193, - "pc": [ - 4343, - 4344 - ] - }, - { - "teal": 4426, - "source": 1187, - "pc": [ - 4345 - ] - }, - { - "teal": 4427, - "source": 1187, - "pc": [ - 4346, - 4347 - ] - }, - { - "teal": 4428, - "source": 1187, - "pc": [ - 4348 - ] - }, - { - "teal": 4429, - "source": 1187, - "pc": [ - 4349 - ] - }, - { - "teal": 4430, - "source": 1187, - "pc": [ - 4350, - 4351 - ] - }, - { - "teal": 4431, - "source": 1187, - "pc": [ - 4352 - ] - }, - { - "teal": 4432, - "source": 1193, - "pc": [ - 4353, - 4354 - ] - }, - { - "teal": 4433, - "source": 1193, - "pc": [ - 4355 - ] - }, - { - "teal": 4434, - "source": 1193, - "pc": [ - 4356 - ] - }, - { - "teal": 4435, - "source": 1193, - "pc": [ - 4357, - 4358, - 4359 - ] - }, - { - "teal": 4436, - "source": 1193, - "pc": [ - 4360, - 4361 - ] - }, - { - "teal": 4437, - "source": 1193, - "pc": [ - 4362, - 4363 - ] - }, - { - "teal": 4438, - "source": 1187, - "pc": [ - 4364 - ] - }, - { - "teal": 4439, - "source": 1187, - "pc": [ - 4365, - 4366 - ] - }, - { - "teal": 4440, - "source": 1187, - "pc": [ - 4367 - ] - }, - { - "teal": 4441, - "source": 1187, - "pc": [ - 4368 - ] - }, - { - "teal": 4442, - "source": 1187, - "pc": [ - 4369, - 4370 - ] - }, - { - "teal": 4443, - "source": 1187, - "pc": [ - 4371 - ] - }, - { - "teal": 4444, - "source": 1193, - "pc": [ - 4372, - 4373 - ] - }, - { - "teal": 4445, - "source": 1193, - "pc": [ - 4374 - ] - }, - { - "teal": 4446, - "source": 1193, - "pc": [ - 4375 - ] - }, - { - "teal": 4449, - "source": 1193, - "pc": [ - 4376, - 4377, - 4378 - ] - }, - { - "teal": 4454, - "source": 1195, - "pc": [ - 4379, - 4380 - ] - }, - { - "teal": 4455, - "source": 1195, - "pc": [ - 4381, - 4382 - ] - }, - { - "teal": 4456, - "source": 1195, - "pc": [ - 4383 - ] - }, - { - "teal": 4457, - "source": 1195, - "pc": [ - 4384, - 4385 - ] - }, - { - "teal": 4458, - "source": 1195, - "pc": [ - 4386 - ] - }, - { - "teal": 4459, - "source": 1195, - "pc": [ - 4387 - ] - }, - { - "teal": 4460, - "source": 1195, - "pc": [ - 4388, - 4389 - ] - }, - { - "teal": 4461, - "source": 1195, - "pc": [ - 4390 - ] - }, - { - "teal": 4466, - "source": 1186, - "pc": [ - 4391 - ] - }, - { - "teal": 4470, - "source": 1200, - "pc": [ - 4392, - 4393, - 4394 - ] - }, - { - "teal": 4477, - "source": 1203, - "pc": [ - 4395, - 4396 - ] - }, - { - "teal": 4478, - "source": 1203, - "pc": [ - 4397, - 4398, - 4399 - ] - }, - { - "teal": 4479, - "source": 1203, - "pc": [ - 4400 - ] - }, - { - "teal": 4480, - "source": 1203, - "pc": [ - 4401 - ] - }, - { - "teal": 4481, - "source": 1203, - "pc": [ - 4402 - ] - }, - { - "teal": 4482, - "source": 1203, - "pc": [ - 4403 - ] - }, - { - "teal": 4483, - "source": 1203, - "pc": [ - 4404, - 4405, - 4406 - ] - }, - { - "teal": 4484, - "source": 1203, - "pc": [ - 4407, - 4408 - ] - }, - { - "teal": 4485, - "source": 1203, - "pc": [ - 4409, - 4410, - 4411 - ] - }, - { - "teal": 4486, - "source": 1203, - "pc": [ - 4412 - ] - }, - { - "teal": 4487, - "source": 1203, - "pc": [ - 4413, - 4414 - ] - }, - { - "teal": 4488, - "source": 1203, - "pc": [ - 4415 - ] - }, - { - "teal": 4489, - "source": 1203, - "pc": [ - 4416 - ] - }, - { - "teal": 4493, - "source": 1202, - "errorMessage": "gating type not valid", - "pc": [ - 4417 - ] - }, - { - "teal": 4500, - "source": 1207, - "pc": [ - 4418, - 4419 - ] - }, - { - "teal": 4501, - "source": 1207, - "pc": [ - 4420, - 4421, - 4422 - ] - }, - { - "teal": 4502, - "source": 1207, - "pc": [ - 4423 - ] - }, - { - "teal": 4503, - "source": 1207, - "pc": [ - 4424 - ] - }, - { - "teal": 4504, - "source": 1207, - "pc": [ - 4425 - ] - }, - { - "teal": 4505, - "source": 1207, - "pc": [ - 4426 - ] - }, - { - "teal": 4506, - "source": 1207, - "pc": [ - 4427, - 4428, - 4429 - ] - }, - { - "teal": 4507, - "source": 1207, - "pc": [ - 4430, - 4431 - ] - }, - { - "teal": 4508, - "source": 1207, - "pc": [ - 4432, - 4433, - 4434 - ] - }, - { - "teal": 4509, - "source": 1207, - "pc": [ - 4435 - ] - }, - { - "teal": 4510, - "source": 1207, - "pc": [ - 4436, - 4437 - ] - }, - { - "teal": 4511, - "source": 1207, - "pc": [ - 4438 - ] - }, - { - "teal": 4512, - "source": 1207, - "pc": [ - 4439 - ] - }, - { - "teal": 4516, - "source": 1206, - "errorMessage": "epoch length not in allowable range", - "pc": [ - 4440 - ] - }, - { - "teal": 4523, - "source": 1211, - "pc": [ - 4441, - 4442 - ] - }, - { - "teal": 4524, - "source": 1211, - "pc": [ - 4443, - 4444, - 4445 - ] - }, - { - "teal": 4525, - "source": 1211, - "pc": [ - 4446 - ] - }, - { - "teal": 4526, - "source": 1211, - "pc": [ - 4447 - ] - }, - { - "teal": 4527, - "source": 1211, - "pc": [ - 4448 - ] - }, - { - "teal": 4528, - "source": 1211, - "pc": [ - 4449 - ] - }, - { - "teal": 4529, - "source": 1211, - "pc": [ - 4450, - 4451, - 4452 - ] - }, - { - "teal": 4530, - "source": 1211, - "pc": [ - 4453, - 4454 - ] - }, - { - "teal": 4531, - "source": 1211, - "pc": [ - 4455, - 4456, - 4457 - ] - }, - { - "teal": 4532, - "source": 1211, - "pc": [ - 4458 - ] - }, - { - "teal": 4533, - "source": 1211, - "pc": [ - 4459, - 4460 - ] - }, - { - "teal": 4534, - "source": 1211, - "pc": [ - 4461 - ] - }, - { - "teal": 4535, - "source": 1211, - "pc": [ - 4462 - ] - }, - { - "teal": 4539, - "source": 1210, - "errorMessage": "commission percentage not valid", - "pc": [ - 4463 - ] - }, - { - "teal": 4544, - "source": 1214, - "pc": [ - 4464, - 4465 - ] - }, - { - "teal": 4545, - "source": 1214, - "pc": [ - 4466, - 4467, - 4468 - ] - }, - { - "teal": 4546, - "source": 1214, - "pc": [ - 4469 - ] - }, - { - "teal": 4547, - "source": 1214, - "pc": [ - 4470 - ] - }, - { - "teal": 4548, - "source": 1214, - "pc": [ - 4471 - ] - }, - { - "teal": 4549, - "source": 1214, - "pc": [ - 4472, - 4473, - 4474 - ] - }, - { - "teal": 4557, - "source": 1216, - "pc": [ - 4475, - 4476 - ] - }, - { - "teal": 4558, - "source": 1216, - "pc": [ - 4477, - 4478, - 4479 - ] - }, - { - "teal": 4559, - "source": 1216, - "pc": [ - 4480, - 4481 - ] - }, - { - "teal": 4560, - "source": 1216, - "pc": [ - 4482 - ] - }, - { - "teal": 4563, - "source": 1215, - "errorMessage": "validatorCommissionAddress must be set if percent to validator is not 0", - "pc": [ - 4483 - ] - }, - { - "teal": 4568, - "source": 1220, - "pc": [ - 4484, - 4485 - ] - }, - { - "teal": 4569, - "source": 1220, - "pc": [ - 4486, - 4487, - 4488 - ] - }, - { - "teal": 4570, - "source": 1220, - "pc": [ - 4489 - ] - }, - { - "teal": 4571, - "source": 1220, - "pc": [ - 4490, - 4491 - ] - }, - { - "teal": 4572, - "source": 1220, - "pc": [ - 4492 - ] - }, - { - "teal": 4575, - "source": 1220, - "errorMessage": "staking pool must have minimum entry of 1 algo", - "pc": [ - 4493 - ] - }, - { - "teal": 4582, - "source": 1223, - "pc": [ - 4494, - 4495 - ] - }, - { - "teal": 4583, - "source": 1223, - "pc": [ - 4496, - 4497, - 4498 - ] - }, - { - "teal": 4584, - "source": 1223, - "pc": [ - 4499 - ] - }, - { - "teal": 4585, - "source": 1223, - "pc": [ - 4500 - ] - }, - { - "teal": 4586, - "source": 1223, - "pc": [ - 4501 - ] - }, - { - "teal": 4587, - "source": 1223, - "pc": [ - 4502 - ] - }, - { - "teal": 4588, - "source": 1223, - "pc": [ - 4503, - 4504, - 4505 - ] - }, - { - "teal": 4589, - "source": 1223, - "pc": [ - 4506, - 4507 - ] - }, - { - "teal": 4590, - "source": 1223, - "pc": [ - 4508, - 4509, - 4510 - ] - }, - { - "teal": 4591, - "source": 1223, - "pc": [ - 4511 - ] - }, - { - "teal": 4592, - "source": 1223, - "pc": [ - 4512, - 4513 - ] - }, - { - "teal": 4593, - "source": 1223, - "pc": [ - 4514 - ] - }, - { - "teal": 4594, - "source": 1223, - "pc": [ - 4515 - ] - }, - { - "teal": 4598, - "source": 1222, - "errorMessage": "number of pools per node exceeds allowed number", - "pc": [ - 4516 - ] - }, - { - "teal": 4603, - "source": 1226, - "pc": [ - 4517, - 4518 - ] - }, - { - "teal": 4604, - "source": 1226, - "pc": [ - 4519, - 4520, - 4521 - ] - }, - { - "teal": 4605, - "source": 1226, - "pc": [ - 4522 - ] - }, - { - "teal": 4606, - "source": 1226, - "pc": [ - 4523 - ] - }, - { - "teal": 4607, - "source": 1226, - "pc": [ - 4524 - ] - }, - { - "teal": 4608, - "source": 1226, - "pc": [ - 4525, - 4526, - 4527 - ] - }, - { - "teal": 4613, - "source": 1227, - "pc": [ - 4528, - 4529 - ] - }, - { - "teal": 4614, - "source": 1227, - "pc": [ - 4530, - 4531, - 4532 - ] - }, - { - "teal": 4615, - "source": 1227, - "pc": [ - 4533 - ] - }, - { - "teal": 4616, - "source": 1227, - "pc": [ - 4534, - 4535 - ] - }, - { - "teal": 4617, - "source": 1227, - "pc": [ - 4536 - ] - }, - { - "teal": 4620, - "source": 1227, - "errorMessage": "sunsettingOn must be later than now if set", - "pc": [ - 4537 - ] - }, - { - "teal": 4623, - "source": 1200, - "pc": [ - 4538 - ] - }, - { - "teal": 4637, - "source": 1242, - "pc": [ - 4539, - 4540, - 4541 - ] - }, - { - "teal": 4640, - "source": 1242, - "pc": [ - 4542 - ] - }, - { - "teal": 4641, - "source": 1242, - "pc": [ - 4543, - 4544 - ] - }, - { - "teal": 4645, - "source": 1249, - "pc": [ - 4545, - 4546 - ] - }, - { - "teal": 4646, - "source": 1249, - "pc": [ - 4547, - 4548 - ] - }, - { - "teal": 4647, - "source": 1249, - "pc": [ - 4549, - 4550, - 4551 - ] - }, - { - "teal": 4648, - "source": 1249, - "pc": [ - 4552 - ] - }, - { - "teal": 4649, - "source": 1249, - "pc": [ - 4553 - ] - }, - { - "teal": 4650, - "source": 1249, - "pc": [ - 4554 - ] - }, - { - "teal": 4651, - "source": 1249, - "pc": [ - 4555, - 4556 - ] - }, - { - "teal": 4652, - "source": 1249, - "pc": [ - 4557 - ] - }, - { - "teal": 4653, - "source": 1249, - "pc": [ - 4558 - ] - }, - { - "teal": 4654, - "source": 1249, - "pc": [ - 4559 - ] - }, - { - "teal": 4655, - "source": 1249, - "pc": [ - 4560 - ] - }, - { - "teal": 4656, - "source": 1249, - "pc": [ - 4561 - ] - }, - { - "teal": 4657, - "source": 1249, - "pc": [ - 4562 - ] - }, - { - "teal": 4658, - "source": 1249, - "pc": [ - 4563, - 4564 - ] - }, - { - "teal": 4659, - "source": 1249, - "pc": [ - 4565, - 4566, - 4567 - ] - }, - { - "teal": 4660, - "source": 1249, - "pc": [ - 4568 - ] - }, - { - "teal": 4661, - "source": 1249, - "pc": [ - 4569 - ] - }, - { - "teal": 4662, - "source": 1249, - "pc": [ - 4570 - ] - }, - { - "teal": 4663, - "source": 1249, - "pc": [ - 4571, - 4572 - ] - }, - { - "teal": 4664, - "source": 1249, - "pc": [ - 4573 - ] - }, - { - "teal": 4665, - "source": 1249, - "pc": [ - 4574 - ] - }, - { - "teal": 4666, - "source": 1249, - "pc": [ - 4575, - 4576 - ] - }, - { - "teal": 4679, - "source": 1258, - "pc": [ - 4577 - ] - }, - { - "teal": 4680, - "source": 1258, - "pc": [ - 4578 - ] - }, - { - "teal": 4681, - "source": 1258, - "pc": [ - 4579, - 4580 - ] - }, - { - "teal": 4685, - "source": 1258, - "pc": [ - 4581, - 4582 - ] - }, - { - "teal": 4686, - "source": 1258, - "pc": [ - 4583, - 4584 - ] - }, - { - "teal": 4687, - "source": 1258, - "pc": [ - 4585, - 4586 - ] - }, - { - "teal": 4688, - "source": 1258, - "pc": [ - 4587 - ] - }, - { - "teal": 4689, - "source": 1258, - "pc": [ - 4588, - 4589 - ] - }, - { - "teal": 4693, - "source": 1258, - "pc": [ - 4590, - 4591 - ] - }, - { - "teal": 4694, - "source": 1258, - "pc": [ - 4592, - 4593 - ] - }, - { - "teal": 4695, - "source": 1258, - "pc": [ - 4594 - ] - }, - { - "teal": 4696, - "source": 1258, - "pc": [ - 4595, - 4596 - ] - }, - { - "teal": 4699, - "source": 1258, - "pc": [ - 4597 - ] - }, - { - "teal": 4700, - "source": 1258, - "pc": [ - 4598, - 4599 - ] - }, - { - "teal": 4701, - "source": 1253, - "pc": [ - 4600 - ] - }, - { - "teal": 4702, - "source": 1253, - "pc": [ - 4601, - 4602 - ] - }, - { - "teal": 4703, - "source": 1253, - "pc": [ - 4603, - 4604 - ] - }, - { - "teal": 4704, - "source": 1253, - "pc": [ - 4605, - 4606, - 4607, - 4608, - 4609, - 4610 - ] - }, - { - "teal": 4705, - "source": 1253, - "pc": [ - 4611, - 4612 - ] - }, - { - "teal": 4709, - "source": 1254, - "pc": [ - 4613, - 4614 - ] - }, - { - "teal": 4710, - "source": 1254, - "pc": [ - 4615, - 4616 - ] - }, - { - "teal": 4720, - "source": 1260, - "pc": [ - 4617, - 4618 - ] - }, - { - "teal": 4721, - "source": 1260, - "pc": [ - 4619, - 4620 - ] - }, - { - "teal": 4722, - "source": 1260, - "pc": [ - 4621, - 4622 - ] - }, - { - "teal": 4725, - "source": 1253, - "pc": [ - 4623 - ] - }, - { - "teal": 4726, - "source": 1253, - "pc": [ - 4624, - 4625 - ] - }, - { - "teal": 4729, - "source": 1253, - "pc": [ - 4626 - ] - }, - { - "teal": 4730, - "source": 1253, - "pc": [ - 4627, - 4628 - ] - }, - { - "teal": 4731, - "source": 1253, - "pc": [ - 4629 - ] - }, - { - "teal": 4732, - "source": 1253, - "pc": [ - 4630 - ] - }, - { - "teal": 4733, - "source": 1253, - "pc": [ - 4631, - 4632 - ] - }, - { - "teal": 4734, - "source": 1253, - "pc": [ - 4633, - 4634, - 4635 - ] - }, - { - "teal": 4735, - "source": 1253, - "pc": [ - 4636 - ] - }, - { - "teal": 4740, - "source": 1263, - "pc": [ - 4637, - 4638 - ] - }, - { - "teal": 4741, - "source": 1263, - "pc": [ - 4639, - 4640, - 4641 - ] - }, - { - "teal": 4742, - "source": 1263, - "pc": [ - 4642 - ] - }, - { - "teal": 4743, - "source": 1263, - "pc": [ - 4643, - 4644, - 4645 - ] - }, - { - "teal": 4748, - "source": 1264, - "pc": [ - 4646 - ] - }, - { - "teal": 4749, - "source": 1264, - "pc": [ - 4647, - 4648 - ] - }, - { - "teal": 4750, - "source": 1264, - "pc": [ - 4649, - 4650 - ] - }, - { - "teal": 4751, - "source": 1264, - "pc": [ - 4651 - ] - }, - { - "teal": 4752, - "source": 1264, - "pc": [ - 4652, - 4653 - ] - }, - { - "teal": 4753, - "source": 1264, - "pc": [ - 4654, - 4655 - ] - }, - { - "teal": 4754, - "source": 1264, - "pc": [ - 4656 - ] - }, - { - "teal": 4755, - "source": 1264, - "pc": [ - 4657, - 4658 - ] - }, - { - "teal": 4756, - "source": 1264, - "pc": [ - 4659, - 4660 - ] - }, - { - "teal": 4757, - "source": 1264, - "pc": [ - 4661, - 4662 - ] - }, - { - "teal": 4758, - "source": 1264, - "pc": [ - 4663, - 4664 - ] - }, - { - "teal": 4759, - "source": 1264, - "pc": [ - 4665 - ] - }, - { - "teal": 4764, - "source": 1268, - "pc": [ - 4666, - 4667 - ] - }, - { - "teal": 4765, - "source": 1268, - "pc": [ - 4668, - 4669 - ] - }, - { - "teal": 4766, - "source": 1268, - "pc": [ - 4670 - ] - }, - { - "teal": 4769, - "source": 1268, - "errorMessage": "global state value does not exist: AppID.fromUint64(poolAppId).globalState('numStakers')", - "pc": [ - 4671 - ] - }, - { - "teal": 4770, - "source": 1268, - "pc": [ - 4672, - 4673 - ] - }, - { - "teal": 4774, - "source": 1269, - "pc": [ - 4674, - 4675 - ] - }, - { - "teal": 4775, - "source": 1269, - "pc": [ - 4676, - 4677 - ] - }, - { - "teal": 4776, - "source": 1269, - "pc": [ - 4678 - ] - }, - { - "teal": 4779, - "source": 1269, - "errorMessage": "global state value does not exist: AppID.fromUint64(poolAppId).globalState('staked')", - "pc": [ - 4679 - ] - }, - { - "teal": 4780, - "source": 1269, - "pc": [ - 4680, - 4681 - ] - }, - { - "teal": 4784, - "source": 1270, - "pc": [ - 4682, - 4683 - ] - }, - { - "teal": 4785, - "source": 1270, - "pc": [ - 4684, - 4685 - ] - }, - { - "teal": 4786, - "source": 1270, - "pc": [ - 4686, - 4687, - 4688 - ] - }, - { - "teal": 4787, - "source": 1270, - "pc": [ - 4689 - ] - }, - { - "teal": 4788, - "source": 1270, - "pc": [ - 4690 - ] - }, - { - "teal": 4789, - "source": 1270, - "pc": [ - 4691 - ] - }, - { - "teal": 4790, - "source": 1270, - "pc": [ - 4692, - 4693 - ] - }, - { - "teal": 4791, - "source": 1270, - "pc": [ - 4694 - ] - }, - { - "teal": 4792, - "source": 1270, - "pc": [ - 4695 - ] - }, - { - "teal": 4793, - "source": 1270, - "pc": [ - 4696 - ] - }, - { - "teal": 4794, - "source": 1270, - "pc": [ - 4697 - ] - }, - { - "teal": 4795, - "source": 1270, - "pc": [ - 4698, - 4699 - ] - }, - { - "teal": 4796, - "source": 1270, - "pc": [ - 4700 - ] - }, - { - "teal": 4797, - "source": 1270, - "pc": [ - 4701, - 4702, - 4703 - ] - }, - { - "teal": 4798, - "source": 1270, - "pc": [ - 4704 - ] - }, - { - "teal": 4799, - "source": 1270, - "pc": [ - 4705, - 4706 - ] - }, - { - "teal": 4800, - "source": 1270, - "pc": [ - 4707, - 4708, - 4709 - ] - }, - { - "teal": 4801, - "source": 1270, - "pc": [ - 4710 - ] - }, - { - "teal": 4802, - "source": 1270, - "pc": [ - 4711 - ] - }, - { - "teal": 4803, - "source": 1270, - "pc": [ - 4712 - ] - }, - { - "teal": 4804, - "source": 1270, - "pc": [ - 4713, - 4714 - ] - }, - { - "teal": 4805, - "source": 1270, - "pc": [ - 4715 - ] - }, - { - "teal": 4809, - "source": 1271, - "pc": [ - 4716, - 4717 - ] - }, - { - "teal": 4810, - "source": 1271, - "pc": [ - 4718, - 4719 - ] - }, - { - "teal": 4811, - "source": 1271, - "pc": [ - 4720, - 4721, - 4722 - ] - }, - { - "teal": 4812, - "source": 1271, - "pc": [ - 4723 - ] - }, - { - "teal": 4813, - "source": 1271, - "pc": [ - 4724 - ] - }, - { - "teal": 4814, - "source": 1271, - "pc": [ - 4725 - ] - }, - { - "teal": 4815, - "source": 1271, - "pc": [ - 4726, - 4727 - ] - }, - { - "teal": 4816, - "source": 1271, - "pc": [ - 4728 - ] - }, - { - "teal": 4817, - "source": 1271, - "pc": [ - 4729 - ] - }, - { - "teal": 4818, - "source": 1271, - "pc": [ - 4730, - 4731 - ] - }, - { - "teal": 4819, - "source": 1271, - "pc": [ - 4732 - ] - }, - { - "teal": 4820, - "source": 1271, - "pc": [ - 4733, - 4734 - ] - }, - { - "teal": 4821, - "source": 1271, - "pc": [ - 4735 - ] - }, - { - "teal": 4822, - "source": 1271, - "pc": [ - 4736 - ] - }, - { - "teal": 4823, - "source": 1271, - "pc": [ - 4737, - 4738 - ] - }, - { - "teal": 4824, - "source": 1271, - "pc": [ - 4739, - 4740, - 4741 - ] - }, - { - "teal": 4825, - "source": 1271, - "pc": [ - 4742 - ] - }, - { - "teal": 4826, - "source": 1271, - "pc": [ - 4743 - ] - }, - { - "teal": 4827, - "source": 1271, - "pc": [ - 4744 - ] - }, - { - "teal": 4828, - "source": 1271, - "pc": [ - 4745, - 4746 - ] - }, - { - "teal": 4829, - "source": 1271, - "pc": [ - 4747 - ] - }, - { - "teal": 4834, - "source": 1274, - "pc": [ - 4748, - 4749 - ] - }, - { - "teal": 4835, - "source": 1274, - "pc": [ - 4750, - 4751, - 4752 - ] - }, - { - "teal": 4840, - "source": 1275, - "pc": [ - 4753, - 4754 - ] - }, - { - "teal": 4841, - "source": 1275, - "pc": [ - 4755 - ] - }, - { - "teal": 4842, - "source": 1275, - "pc": [ - 4756 - ] - }, - { - "teal": 4843, - "source": 1275, - "pc": [ - 4757 - ] - }, - { - "teal": 4844, - "source": 1275, - "pc": [ - 4758, - 4759 - ] - }, - { - "teal": 4845, - "source": 1275, - "pc": [ - 4760, - 4761, - 4762 - ] - }, - { - "teal": 4846, - "source": 1275, - "pc": [ - 4763 - ] - }, - { - "teal": 4847, - "source": 1275, - "pc": [ - 4764 - ] - }, - { - "teal": 4848, - "source": 1275, - "pc": [ - 4765 - ] - }, - { - "teal": 4849, - "source": 1275, - "pc": [ - 4766, - 4767 - ] - }, - { - "teal": 4850, - "source": 1275, - "pc": [ - 4768 - ] - }, - { - "teal": 4851, - "source": 1275, - "pc": [ - 4769 - ] - }, - { - "teal": 4852, - "source": 1275, - "pc": [ - 4770 - ] - }, - { - "teal": 4853, - "source": 1275, - "pc": [ - 4771 - ] - }, - { - "teal": 4854, - "source": 1275, - "pc": [ - 4772 - ] - }, - { - "teal": 4855, - "source": 1275, - "pc": [ - 4773 - ] - }, - { - "teal": 4856, - "source": 1275, - "pc": [ - 4774, - 4775 - ] - }, - { - "teal": 4857, - "source": 1275, - "pc": [ - 4776, - 4777, - 4778 - ] - }, - { - "teal": 4858, - "source": 1275, - "pc": [ - 4779 - ] - }, - { - "teal": 4859, - "source": 1275, - "pc": [ - 4780 - ] - }, - { - "teal": 4860, - "source": 1275, - "pc": [ - 4781 - ] - }, - { - "teal": 4861, - "source": 1275, - "pc": [ - 4782, - 4783 - ] - }, - { - "teal": 4862, - "source": 1275, - "pc": [ - 4784 - ] - }, - { - "teal": 4868, - "source": 1277, - "pc": [ - 4785, - 4786 - ] - }, - { - "teal": 4869, - "source": 1277, - "pc": [ - 4787, - 4788, - 4789 - ] - }, - { - "teal": 4874, - "source": 1278, - "pc": [ - 4790, - 4791 - ] - }, - { - "teal": 4875, - "source": 1278, - "pc": [ - 4792 - ] - }, - { - "teal": 4876, - "source": 1278, - "pc": [ - 4793 - ] - }, - { - "teal": 4877, - "source": 1278, - "pc": [ - 4794 - ] - }, - { - "teal": 4878, - "source": 1278, - "pc": [ - 4795, - 4796 - ] - }, - { - "teal": 4879, - "source": 1278, - "pc": [ - 4797 - ] - }, - { - "teal": 4880, - "source": 1278, - "pc": [ - 4798 - ] - }, - { - "teal": 4885, - "source": 1280, - "pc": [ - 4799, - 4800 - ] - }, - { - "teal": 4886, - "source": 1280, - "pc": [ - 4801 - ] - }, - { - "teal": 4887, - "source": 1280, - "pc": [ - 4802 - ] - }, - { - "teal": 4888, - "source": 1280, - "pc": [ - 4803 - ] - }, - { - "teal": 4889, - "source": 1280, - "pc": [ - 4804, - 4805 - ] - }, - { - "teal": 4890, - "source": 1280, - "pc": [ - 4806, - 4807, - 4808 - ] - }, - { - "teal": 4891, - "source": 1280, - "pc": [ - 4809 - ] - }, - { - "teal": 4892, - "source": 1280, - "pc": [ - 4810 - ] - }, - { - "teal": 4893, - "source": 1280, - "pc": [ - 4811 - ] - }, - { - "teal": 4894, - "source": 1280, - "pc": [ - 4812, - 4813 - ] - }, - { - "teal": 4895, - "source": 1280, - "pc": [ - 4814 - ] - }, - { - "teal": 4896, - "source": 1280, - "pc": [ - 4815 - ] - }, - { - "teal": 4897, - "source": 1280, - "pc": [ - 4816, - 4817 - ] - }, - { - "teal": 4898, - "source": 1280, - "pc": [ - 4818, - 4819 - ] - }, - { - "teal": 4899, - "source": 1280, - "pc": [ - 4820, - 4821 - ] - }, - { - "teal": 4900, - "source": 1280, - "pc": [ - 4822 - ] - }, - { - "teal": 4901, - "source": 1280, - "pc": [ - 4823 - ] - }, - { - "teal": 4902, - "source": 1280, - "pc": [ - 4824 - ] - }, - { - "teal": 4903, - "source": 1280, - "pc": [ - 4825 - ] - }, - { - "teal": 4904, - "source": 1280, - "pc": [ - 4826, - 4827 - ] - }, - { - "teal": 4905, - "source": 1280, - "pc": [ - 4828, - 4829, - 4830 - ] - }, - { - "teal": 4906, - "source": 1280, - "pc": [ - 4831 - ] - }, - { - "teal": 4907, - "source": 1280, - "pc": [ - 4832 - ] - }, - { - "teal": 4908, - "source": 1280, - "pc": [ - 4833 - ] - }, - { - "teal": 4909, - "source": 1280, - "pc": [ - 4834, - 4835 - ] - }, - { - "teal": 4910, - "source": 1280, - "pc": [ - 4836 - ] - }, - { - "teal": 4914, - "source": 1281, - "pc": [ - 4837, - 4838 - ] - }, - { - "teal": 4915, - "source": 1281, - "pc": [ - 4839 - ] - }, - { - "teal": 4916, - "source": 1281, - "pc": [ - 4840, - 4841 - ] - }, - { - "teal": 4917, - "source": 1281, - "pc": [ - 4842, - 4843 - ] - }, - { - "teal": 4918, - "source": 1281, - "pc": [ - 4844, - 4845 - ] - }, - { - "teal": 4919, - "source": 1281, - "pc": [ - 4846 - ] - }, - { - "teal": 4920, - "source": 1281, - "pc": [ - 4847 - ] - }, - { - "teal": 4921, - "source": 1281, - "pc": [ - 4848, - 4849 - ] - }, - { - "teal": 4922, - "source": 1281, - "pc": [ - 4850 - ] - }, - { - "teal": 4923, - "source": 1281, - "pc": [ - 4851 - ] - }, - { - "teal": 4924, - "source": 1242, - "pc": [ - 4852 - ] - }, - { - "teal": 4928, - "source": 1284, - "pc": [ - 4853, - 4854, - 4855 - ] - }, - { - "teal": 4931, - "source": 1284, - "pc": [ - 4856 - ] - }, - { - "teal": 4932, - "source": 1284, - "pc": [ - 4857, - 4858 - ] - }, - { - "teal": 4936, - "source": 1285, - "pc": [ - 4859 - ] - }, - { - "teal": 4937, - "source": 1285, - "pc": [ - 4860, - 4861 - ] - }, - { - "teal": 4938, - "source": 1285, - "pc": [ - 4862 - ] - }, - { - "teal": 4939, - "source": 1285, - "pc": [ - 4863 - ] - }, - { - "teal": 4940, - "source": 1285, - "pc": [ - 4864 - ] - }, - { - "teal": 4941, - "source": 1285, - "pc": [ - 4865 - ] - }, - { - "teal": 4942, - "source": 1285, - "pc": [ - 4866 - ] - }, - { - "teal": 4946, - "source": 1287, - "pc": [ - 4867 - ] - }, - { - "teal": 4947, - "source": 1287, - "pc": [ - 4868, - 4869 - ] - }, - { - "teal": 4948, - "source": 1287, - "pc": [ - 4870 - ] - }, - { - "teal": 4949, - "source": 1287, - "pc": [ - 4871 - ] - }, - { - "teal": 4952, - "source": 1287, - "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", - "pc": [ - 4872 - ] - }, - { - "teal": 4953, - "source": 1287, - "pc": [ - 4873, - 4874 - ] - }, - { - "teal": 4957, - "source": 1288, - "pc": [ - 4875 - ] - }, - { - "teal": 4958, - "source": 1288, - "pc": [ - 4876, - 4877 - ] - }, - { - "teal": 4962, - "source": 1289, - "pc": [ - 4878 - ] - }, - { - "teal": 4963, - "source": 1289, - "pc": [ - 4879, - 4880 - ] - }, - { - "teal": 4968, - "source": 1289, - "pc": [ - 4881, - 4882 - ] - }, - { - "teal": 4969, - "source": 1289, - "pc": [ - 4883, - 4884 - ] - }, - { - "teal": 4970, - "source": 1289, - "pc": [ - 4885 - ] - }, - { - "teal": 4971, - "source": 1289, - "pc": [ - 4886, - 4887, - 4888 - ] - }, - { - "teal": 4976, - "source": 1290, - "pc": [ - 4889, - 4890 - ] - }, - { - "teal": 4977, - "source": 1290, - "pc": [ - 4891, - 4892 - ] - }, - { - "teal": 4978, - "source": 1290, - "pc": [ - 4893 - ] - }, - { - "teal": 4979, - "source": 1290, - "pc": [ - 4894 - ] - }, - { - "teal": 4980, - "source": 1290, - "pc": [ - 4895 - ] - }, - { - "teal": 4981, - "source": 1290, - "pc": [ - 4896 - ] - }, - { - "teal": 4982, - "source": 1290, - "pc": [ - 4897, - 4898 - ] - }, - { - "teal": 4983, - "source": 1290, - "pc": [ - 4899 - ] - }, - { - "teal": 4984, - "source": 1290, - "pc": [ - 4900, - 4901, - 4902 - ] - }, - { - "teal": 4989, - "source": 1292, - "pc": [ - 4903 - ] - }, - { - "teal": 4995, - "source": 1294, - "pc": [ - 4904, - 4905 - ] - }, - { - "teal": 4996, - "source": 1294, - "pc": [ - 4906 - ] - }, - { - "teal": 4997, - "source": 1294, - "pc": [ - 4907 - ] - }, - { - "teal": 4998, - "source": 1294, - "pc": [ - 4908 - ] - }, - { - "teal": 4999, - "source": 1294, - "pc": [ - 4909, - 4910, - 4911 - ] - }, - { - "teal": 5000, - "source": 1294, - "pc": [ - 4912, - 4913 - ] - }, - { - "teal": 5001, - "source": 1294, - "pc": [ - 4914, - 4915 - ] - }, - { - "teal": 5002, - "source": 1294, - "pc": [ - 4916 - ] - }, - { - "teal": 5003, - "source": 1294, - "pc": [ - 4917 - ] - }, - { - "teal": 5004, - "source": 1294, - "pc": [ - 4918 - ] - }, - { - "teal": 5005, - "source": 1294, - "pc": [ - 4919 - ] - }, - { - "teal": 5006, - "source": 1294, - "pc": [ - 4920 - ] - }, - { - "teal": 5007, - "source": 1294, - "pc": [ - 4921 - ] - }, - { - "teal": 5008, - "source": 1294, - "pc": [ - 4922 - ] - }, - { - "teal": 5009, - "source": 1294, - "pc": [ - 4923 - ] - }, - { - "teal": 5010, - "source": 1294, - "pc": [ - 4924 - ] - }, - { - "teal": 5011, - "source": 1294, - "pc": [ - 4925 - ] - }, - { - "teal": 5014, - "source": 1294, - "pc": [ - 4926, - 4927, - 4928 - ] - }, - { - "teal": 5019, - "source": 1295, - "pc": [ - 4929, - 4930 - ] - }, - { - "teal": 5020, - "source": 1295, - "pc": [ - 4931 - ] - }, - { - "teal": 5021, - "source": 1295, - "pc": [ - 4932 - ] - }, - { - "teal": 5022, - "source": 1295, - "pc": [ - 4933, - 4934 - ] - }, - { - "teal": 5029, - "source": 1289, - "pc": [ - 4935, - 4936 - ] - }, - { - "teal": 5030, - "source": 1289, - "pc": [ - 4937 - ] - }, - { - "teal": 5031, - "source": 1289, - "pc": [ - 4938 - ] - }, - { - "teal": 5032, - "source": 1289, - "pc": [ - 4939, - 4940 - ] - }, - { - "teal": 5033, - "source": 1289, - "pc": [ - 4941, - 4942, - 4943 - ] - }, - { - "teal": 5039, - "source": 1298, - "pc": [ - 4944, - 4945 - ] - }, - { - "teal": 5040, - "source": 1298, - "pc": [ - 4946 - ] - }, - { - "teal": 5041, - "source": 1298, - "pc": [ - 4947 - ] - }, - { - "teal": 5042, - "source": 1298, - "pc": [ - 4948, - 4949, - 4950 - ] - }, - { - "teal": 5046, - "source": 1299, - "errorMessage": "No empty slot available in the staker pool set", - "pc": [ - 4951 - ] - }, - { - "teal": 5051, - "source": 1301, - "pc": [ - 4952, - 4953 - ] - }, - { - "teal": 5052, - "source": 1301, - "pc": [ - 4954 - ] - }, - { - "teal": 5053, - "source": 1301, - "pc": [ - 4955 - ] - }, - { - "teal": 5054, - "source": 1301, - "pc": [ - 4956 - ] - }, - { - "teal": 5055, - "source": 1301, - "pc": [ - 4957 - ] - }, - { - "teal": 5056, - "source": 1301, - "pc": [ - 4958, - 4959 - ] - }, - { - "teal": 5057, - "source": 1301, - "pc": [ - 4960 - ] - }, - { - "teal": 5058, - "source": 1301, - "pc": [ - 4961, - 4962 - ] - }, - { - "teal": 5059, - "source": 1301, - "pc": [ - 4963 - ] - }, - { - "teal": 5060, - "source": 1301, - "pc": [ - 4964, - 4965 - ] - }, - { - "teal": 5061, - "source": 1301, - "pc": [ - 4966 - ] - }, - { - "teal": 5062, - "source": 1284, - "pc": [ - 4967 - ] - }, - { - "teal": 5073, - "source": 1312, - "pc": [ - 4968, - 4969, - 4970 - ] - }, - { - "teal": 5076, - "source": 1312, - "pc": [ - 4971 - ] - }, - { - "teal": 5077, - "source": 1312, - "pc": [ - 4972, - 4973 - ] - }, - { - "teal": 5081, - "source": 1314, - "pc": [ - 4974 - ] - }, - { - "teal": 5082, - "source": 1314, - "pc": [ - 4975, - 4976 - ] - }, - { - "teal": 5086, - "source": 1315, - "pc": [ - 4977 - ] - }, - { - "teal": 5087, - "source": 1315, - "pc": [ - 4978, - 4979 - ] - }, - { - "teal": 5091, - "source": 1316, - "pc": [ - 4980 - ] - }, - { - "teal": 5092, - "source": 1316, - "pc": [ - 4981, - 4982 - ] - }, - { - "teal": 5096, - "source": 1318, - "pc": [ - 4983 - ] - }, - { - "teal": 5097, - "source": 1318, - "pc": [ - 4984, - 4985 - ] - }, - { - "teal": 5098, - "source": 1318, - "pc": [ - 4986 - ] - }, - { - "teal": 5099, - "source": 1318, - "pc": [ - 4987 - ] - }, - { - "teal": 5102, - "source": 1318, - "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", - "pc": [ - 4988 - ] - }, - { - "teal": 5103, - "source": 1318, - "pc": [ - 4989, - 4990 - ] - }, - { - "teal": 5107, - "source": 1319, - "pc": [ - 4991 - ] - }, - { - "teal": 5108, - "source": 1319, - "pc": [ - 4992, - 4993 - ] - }, - { - "teal": 5113, - "source": 1319, - "pc": [ - 4994, - 4995 - ] - }, - { - "teal": 5114, - "source": 1319, - "pc": [ - 4996, - 4997 - ] - }, - { - "teal": 5115, - "source": 1319, - "pc": [ - 4998 - ] - }, - { - "teal": 5116, - "source": 1319, - "pc": [ - 4999, - 5000, - 5001 - ] - }, - { - "teal": 5121, - "source": 1320, - "pc": [ - 5002, - 5003 - ] - }, - { - "teal": 5122, - "source": 1320, - "pc": [ - 5004, - 5005 - ] - }, - { - "teal": 5123, - "source": 1320, - "pc": [ - 5006 - ] - }, - { - "teal": 5124, - "source": 1320, - "pc": [ - 5007 - ] - }, - { - "teal": 5125, - "source": 1320, - "pc": [ - 5008 - ] - }, - { - "teal": 5126, - "source": 1320, - "pc": [ - 5009 - ] - }, - { - "teal": 5127, - "source": 1320, - "pc": [ - 5010 - ] - }, - { - "teal": 5128, - "source": 1320, - "pc": [ - 5011 - ] - }, - { - "teal": 5129, - "source": 1320, - "pc": [ - 5012 - ] - }, - { - "teal": 5130, - "source": 1320, - "pc": [ - 5013 - ] - }, - { - "teal": 5131, - "source": 1320, - "pc": [ - 5014 - ] - }, - { - "teal": 5132, - "source": 1320, - "pc": [ - 5015, - 5016, - 5017 - ] - }, - { - "teal": 5135, - "source": 1321, - "pc": [ - 5018, - 5019, - 5020 - ] - }, - { - "teal": 5140, - "source": 1323, - "pc": [ - 5021, - 5022 - ] - }, - { - "teal": 5141, - "source": 1323, - "pc": [ - 5023 - ] - }, - { - "teal": 5142, - "source": 1323, - "pc": [ - 5024 - ] - }, - { - "teal": 5143, - "source": 1323, - "pc": [ - 5025, - 5026 - ] - }, - { - "teal": 5148, - "source": 1324, - "pc": [ - 5027, - 5028 - ] - }, - { - "teal": 5149, - "source": 1324, - "pc": [ - 5029, - 5030 - ] - }, - { - "teal": 5150, - "source": 1324, - "pc": [ - 5031 - ] - }, - { - "teal": 5151, - "source": 1324, - "pc": [ - 5032 - ] - }, - { - "teal": 5152, - "source": 1324, - "pc": [ - 5033 - ] - }, - { - "teal": 5153, - "source": 1324, - "pc": [ - 5034 - ] - }, - { - "teal": 5154, - "source": 1324, - "pc": [ - 5035 - ] - }, - { - "teal": 5155, - "source": 1324, - "pc": [ - 5036 - ] - }, - { - "teal": 5156, - "source": 1324, - "pc": [ - 5037 - ] - }, - { - "teal": 5157, - "source": 1324, - "pc": [ - 5038, - 5039 - ] - }, - { - "teal": 5158, - "source": 1324, - "pc": [ - 5040, - 5041, - 5042 - ] - }, - { - "teal": 5159, - "source": 1324, - "pc": [ - 5043 - ] - }, - { - "teal": 5160, - "source": 1324, - "pc": [ - 5044 - ] - }, - { - "teal": 5161, - "source": 1324, - "pc": [ - 5045, - 5046, - 5047 - ] - }, - { - "teal": 5167, - "source": 1325, - "pc": [ - 5048, - 5049 - ] - }, - { - "teal": 5168, - "source": 1325, - "pc": [ - 5050, - 5051 - ] - }, - { - "teal": 5169, - "source": 1325, - "pc": [ - 5052 - ] - }, - { - "teal": 5170, - "source": 1325, - "pc": [ - 5053 - ] - }, - { - "teal": 5171, - "source": 1325, - "pc": [ - 5054 - ] - }, - { - "teal": 5172, - "source": 1325, - "pc": [ - 5055 - ] - }, - { - "teal": 5173, - "source": 1325, - "pc": [ - 5056, - 5057 - ] - }, - { - "teal": 5174, - "source": 1325, - "pc": [ - 5058 - ] - }, - { - "teal": 5175, - "source": 1325, - "pc": [ - 5059, - 5060, - 5061 - ] - }, - { - "teal": 5180, - "source": 1326, - "pc": [ - 5062 - ] - }, - { - "teal": 5181, - "source": 1326, - "pc": [ - 5063, - 5064 - ] - }, - { - "teal": 5185, - "source": 1328, - "pc": [ - 5065, - 5066 - ] - }, - { - "teal": 5186, - "source": 1328, - "pc": [ - 5067 - ] - }, - { - "teal": 5187, - "source": 1328, - "pc": [ - 5068 - ] - }, - { - "teal": 5188, - "source": 1328, - "pc": [ - 5069, - 5070, - 5071, - 5072, - 5073, - 5074, - 5075, - 5076, - 5077, - 5078, - 5079, - 5080, - 5081, - 5082, - 5083, - 5084, - 5085, - 5086, - 5087, - 5088, - 5089, - 5090, - 5091, - 5092, - 5093, - 5094 - ] - }, - { - "teal": 5189, - "source": 1328, - "pc": [ - 5095 - ] - }, - { - "teal": 5190, - "source": 1328, - "pc": [ - 5096, - 5097 - ] - }, - { - "teal": 5191, - "source": 1328, - "pc": [ - 5098 - ] - }, - { - "teal": 5192, - "source": 1328, - "pc": [ - 5099, - 5100 - ] - }, - { - "teal": 5193, - "source": 1328, - "pc": [ - 5101 - ] - }, - { - "teal": 5194, - "source": 1325, - "pc": [ - 5102, - 5103, - 5104 - ] - }, - { - "teal": 5199, - "source": 1330, - "pc": [ - 5105, - 5106 - ] - }, - { - "teal": 5200, - "source": 1330, - "pc": [ - 5107 - ] - }, - { - "teal": 5201, - "source": 1330, - "pc": [ - 5108 - ] - }, - { - "teal": 5202, - "source": 1330, - "pc": [ - 5109, - 5110 - ] - }, - { - "teal": 5211, - "source": 1319, - "pc": [ - 5111, - 5112 - ] - }, - { - "teal": 5212, - "source": 1319, - "pc": [ - 5113 - ] - }, - { - "teal": 5213, - "source": 1319, - "pc": [ - 5114 - ] - }, - { - "teal": 5214, - "source": 1319, - "pc": [ - 5115, - 5116 - ] - }, - { - "teal": 5215, - "source": 1319, - "pc": [ - 5117, - 5118, - 5119 - ] - }, - { - "teal": 5221, - "source": 1334, - "pc": [ - 5120, - 5121 - ] - }, - { - "teal": 5222, - "source": 1334, - "pc": [ - 5122 - ] - }, - { - "teal": 5223, - "source": 1334, - "pc": [ - 5123, - 5124, - 5125 - ] - }, - { - "teal": 5227, - "source": 1335, - "errorMessage": "No matching slot found when told to remove a pool from the stakers set", - "pc": [ - 5126 - ] - }, - { - "teal": 5232, - "source": 1338, - "pc": [ - 5127, - 5128 - ] - }, - { - "teal": 5233, - "source": 1338, - "pc": [ - 5129 - ] - }, - { - "teal": 5234, - "source": 1338, - "pc": [ - 5130, - 5131 - ] - }, - { - "teal": 5235, - "source": 1338, - "pc": [ - 5132 - ] - }, - { - "teal": 5236, - "source": 1338, - "pc": [ - 5133 - ] - }, - { - "teal": 5237, - "source": 1338, - "pc": [ - 5134 - ] - }, - { - "teal": 5238, - "source": 1338, - "pc": [ - 5135 - ] - }, - { - "teal": 5239, - "source": 1338, - "pc": [ - 5136, - 5137 - ] - }, - { - "teal": 5240, - "source": 1338, - "pc": [ - 5138 - ] - }, - { - "teal": 5241, - "source": 1338, - "pc": [ - 5139 - ] - }, - { - "teal": 5242, - "source": 1338, - "pc": [ - 5140 - ] - }, - { - "teal": 5245, - "source": 1312, - "pc": [ - 5141, - 5142 - ] - }, - { - "teal": 5248, - "source": 1312, - "pc": [ - 5143, - 5144 - ] - }, - { - "teal": 5249, - "source": 1312, - "pc": [ - 5145 - ] - }, - { - "teal": 5253, - "source": 1341, - "pc": [ - 5146, - 5147, - 5148 - ] - }, - { - "teal": 5256, - "source": 1341, - "pc": [ - 5149 - ] - }, - { - "teal": 5257, - "source": 1341, - "pc": [ - 5150, - 5151 - ] - }, - { - "teal": 5261, - "source": 1342, - "pc": [ - 5152, - 5153 - ] - }, - { - "teal": 5262, - "source": 1342, - "pc": [ - 5154, - 5155 - ] - }, - { - "teal": 5263, - "source": 1342, - "pc": [ - 5156 - ] - }, - { - "teal": 5264, - "source": 1342, - "pc": [ - 5157, - 5158 - ] - }, - { - "teal": 5265, - "source": 1342, - "pc": [ - 5159 - ] - }, - { - "teal": 5266, - "source": 1342, - "pc": [ - 5160 - ] - }, - { - "teal": 5267, - "source": 1342, - "pc": [ - 5161, - 5162 - ] - }, - { - "teal": 5268, - "source": 1342, - "pc": [ - 5163 - ] - }, - { - "teal": 5269, - "source": 1342, - "pc": [ - 5164, - 5165 - ] - }, - { - "teal": 5273, - "source": 1343, - "pc": [ - 5166, - 5167, - 5168 - ] - }, - { - "teal": 5274, - "source": 1343, - "pc": [ - 5169 - ] - }, - { - "teal": 5275, - "source": 1343, - "pc": [ - 5170 - ] - }, - { - "teal": 5276, - "source": 1343, - "pc": [ - 5171, - 5172 - ] - }, - { - "teal": 5277, - "source": 1343, - "pc": [ - 5173 - ] - }, - { - "teal": 5278, - "source": 1343, - "pc": [ - 5174 - ] - }, - { - "teal": 5279, - "source": 1343, - "pc": [ - 5175, - 5176 - ] - }, - { - "teal": 5280, - "source": 1343, - "pc": [ - 5177 - ] - }, - { - "teal": 5281, - "source": 1343, - "pc": [ - 5178 - ] - }, - { - "teal": 5282, - "source": 1343, - "pc": [ - 5179, - 5180 - ] - }, - { - "teal": 5286, - "source": 1345, - "pc": [ - 5181, - 5182 - ] - }, - { - "teal": 5287, - "source": 1345, - "pc": [ - 5183 - ] - }, - { - "teal": 5288, - "source": 1345, - "pc": [ - 5184 - ] - }, - { - "teal": 5289, - "source": 1345, - "pc": [ - 5185 - ] - }, - { - "teal": 5290, - "source": 1345, - "pc": [ - 5186, - 5187, - 5188 - ] - }, - { - "teal": 5291, - "source": 1345, - "pc": [ - 5189, - 5190 - ] - }, - { - "teal": 5292, - "source": 1345, - "pc": [ - 5191 - ] - }, - { - "teal": 5293, - "source": 1345, - "pc": [ - 5192 - ] - }, - { - "teal": 5294, - "source": 1345, - "pc": [ - 5193 - ] - }, - { - "teal": 5298, - "source": 1345, - "errorMessage": "node number not in valid range", - "pc": [ - 5194 - ] - }, - { - "teal": 5302, - "source": 1347, - "pc": [ - 5195 - ] - }, - { - "teal": 5303, - "source": 1347, - "pc": [ - 5196, - 5197 - ] - }, - { - "teal": 5308, - "source": 1347, - "pc": [ - 5198, - 5199 - ] - }, - { - "teal": 5309, - "source": 1347, - "pc": [ - 5200, - 5201 - ] - }, - { - "teal": 5310, - "source": 1347, - "pc": [ - 5202 - ] - }, - { - "teal": 5311, - "source": 1347, - "pc": [ - 5203, - 5204, - 5205 - ] - }, - { - "teal": 5316, - "source": 1348, - "pc": [ - 5206, - 5207 - ] - }, - { - "teal": 5317, - "source": 1348, - "pc": [ - 5208 - ] - }, - { - "teal": 5318, - "source": 1348, - "pc": [ - 5209, - 5210 - ] - }, - { - "teal": 5319, - "source": 1348, - "pc": [ - 5211 - ] - }, - { - "teal": 5320, - "source": 1348, - "pc": [ - 5212 - ] - }, - { - "teal": 5321, - "source": 1348, - "pc": [ - 5213 - ] - }, - { - "teal": 5322, - "source": 1348, - "pc": [ - 5214 - ] - }, - { - "teal": 5323, - "source": 1348, - "pc": [ - 5215 - ] - }, - { - "teal": 5324, - "source": 1348, - "pc": [ - 5216 - ] - }, - { - "teal": 5325, - "source": 1348, - "pc": [ - 5217 - ] - }, - { - "teal": 5326, - "source": 1348, - "pc": [ - 5218, - 5219 - ] - }, - { - "teal": 5327, - "source": 1348, - "pc": [ - 5220 - ] - }, - { - "teal": 5328, - "source": 1348, - "pc": [ - 5221 - ] - }, - { - "teal": 5329, - "source": 1348, - "pc": [ - 5222 - ] - }, - { - "teal": 5330, - "source": 1348, - "pc": [ - 5223 - ] - }, - { - "teal": 5331, - "source": 1348, - "pc": [ - 5224 - ] - }, - { - "teal": 5332, - "source": 1348, - "pc": [ - 5225 - ] - }, - { - "teal": 5333, - "source": 1348, - "pc": [ - 5226 - ] - }, - { - "teal": 5334, - "source": 1348, - "pc": [ - 5227 - ] - }, - { - "teal": 5335, - "source": 1348, - "pc": [ - 5228, - 5229, - 5230 - ] - }, - { - "teal": 5340, - "source": 1350, - "pc": [ - 5231, - 5232 - ] - }, - { - "teal": 5341, - "source": 1350, - "pc": [ - 5233, - 5234 - ] - }, - { - "teal": 5342, - "source": 1350, - "pc": [ - 5235 - ] - }, - { - "teal": 5343, - "source": 1350, - "pc": [ - 5236 - ] - }, - { - "teal": 5344, - "source": 1350, - "pc": [ - 5237 - ] - }, - { - "teal": 5345, - "source": 1350, - "pc": [ - 5238 - ] - }, - { - "teal": 5346, - "source": 1350, - "pc": [ - 5239 - ] - }, - { - "teal": 5347, - "source": 1350, - "pc": [ - 5240 - ] - }, - { - "teal": 5348, - "source": 1350, - "pc": [ - 5241 - ] - }, - { - "teal": 5349, - "source": 1350, - "pc": [ - 5242, - 5243 - ] - }, - { - "teal": 5350, - "source": 1350, - "pc": [ - 5244 - ] - }, - { - "teal": 5351, - "source": 1350, - "pc": [ - 5245 - ] - }, - { - "teal": 5352, - "source": 1350, - "pc": [ - 5246 - ] - }, - { - "teal": 5353, - "source": 1350, - "pc": [ - 5247, - 5248 - ] - }, - { - "teal": 5354, - "source": 1350, - "pc": [ - 5249 - ] - }, - { - "teal": 5355, - "source": 1350, - "pc": [ - 5250 - ] - }, - { - "teal": 5356, - "source": 1350, - "pc": [ - 5251, - 5252 - ] - }, - { - "teal": 5357, - "source": 1350, - "pc": [ - 5253 - ] - }, - { - "teal": 5358, - "source": 1350, - "pc": [ - 5254 - ] - }, - { - "teal": 5359, - "source": 1350, - "pc": [ - 5255, - 5256 - ] - }, - { - "teal": 5360, - "source": 1350, - "pc": [ - 5257 - ] - }, - { - "teal": 5364, - "source": 1351, - "pc": [ - 5258 - ] - }, - { - "teal": 5371, - "source": 1347, - "pc": [ - 5259, - 5260 - ] - }, - { - "teal": 5372, - "source": 1347, - "pc": [ - 5261 - ] - }, - { - "teal": 5373, - "source": 1347, - "pc": [ - 5262 - ] - }, - { - "teal": 5374, - "source": 1347, - "pc": [ - 5263, - 5264 - ] - }, - { - "teal": 5375, - "source": 1347, - "pc": [ - 5265, - 5266, - 5267 - ] - }, - { - "teal": 5379, - "source": 1354, - "errorMessage": "no available space in specified node for this pool", - "pc": [ - 5268 - ] - }, - { - "teal": 5380, - "source": 1341, - "pc": [ - 5269 - ] - }, - { - "teal": 5390, - "source": 1364, - "pc": [ - 5270, - 5271, - 5272 - ] - }, - { - "teal": 5393, - "source": 1364, - "pc": [ - 5273 - ] - }, - { - "teal": 5394, - "source": 1364, - "pc": [ - 5274, - 5275 - ] - }, - { - "teal": 5398, - "source": 1365, - "pc": [ - 5276, - 5277 - ] - }, - { - "teal": 5399, - "source": 1365, - "pc": [ - 5278 - ] - }, - { - "teal": 5400, - "source": 1365, - "pc": [ - 5279 - ] - }, - { - "teal": 5401, - "source": 1365, - "pc": [ - 5280, - 5281 - ] - }, - { - "teal": 5402, - "source": 1365, - "pc": [ - 5282 - ] - }, - { - "teal": 5403, - "source": 1365, - "pc": [ - 5283 - ] - }, - { - "teal": 5404, - "source": 1365, - "pc": [ - 5284, - 5285 - ] - }, - { - "teal": 5405, - "source": 1365, - "pc": [ - 5286 - ] - }, - { - "teal": 5406, - "source": 1365, - "pc": [ - 5287 - ] - }, - { - "teal": 5407, - "source": 1365, - "pc": [ - 5288, - 5289 - ] - }, - { - "teal": 5412, - "source": 1366, - "pc": [ - 5290, - 5291 - ] - }, - { - "teal": 5413, - "source": 1366, - "pc": [ - 5292 - ] - }, - { - "teal": 5414, - "source": 1366, - "pc": [ - 5293 - ] - }, - { - "teal": 5415, - "source": 1366, - "pc": [ - 5294, - 5295, - 5296 - ] - }, - { - "teal": 5420, - "source": 1367, - "pc": [ - 5297 - ] - }, - { - "teal": 5425, - "source": 1369, - "pc": [ - 5298, - 5299 - ] - }, - { - "teal": 5426, - "source": 1369, - "pc": [ - 5300, - 5301 - ] - }, - { - "teal": 5430, - "source": 1370, - "pc": [ - 5302 - ] - }, - { - "teal": 5431, - "source": 1370, - "pc": [ - 5303, - 5304 - ] - }, - { - "teal": 5432, - "source": 1370, - "pc": [ - 5305 - ] - }, - { - "teal": 5433, - "source": 1370, - "pc": [ - 5306, - 5307 - ] - }, - { - "teal": 5434, - "source": 1370, - "pc": [ - 5308 - ] - }, - { - "teal": 5435, - "source": 1370, - "pc": [ - 5309 - ] - }, - { - "teal": 5436, - "source": 1370, - "pc": [ - 5310, - 5311 - ] - }, - { - "teal": 5437, - "source": 1370, - "pc": [ - 5312 - ] - }, - { - "teal": 5438, - "source": 1370, - "pc": [ - 5313, - 5314 - ] - }, - { - "teal": 5445, - "source": 1374, - "pc": [ - 5315, - 5316 - ] - }, - { - "teal": 5446, - "source": 1374, - "pc": [ - 5317 - ] - }, - { - "teal": 5447, - "source": 1374, - "pc": [ - 5318 - ] - }, - { - "teal": 5448, - "source": 1374, - "pc": [ - 5319 - ] - }, - { - "teal": 5449, - "source": 1374, - "pc": [ - 5320, - 5321, - 5322 - ] - }, - { - "teal": 5450, - "source": 1375, - "pc": [ - 5323, - 5324 - ] - }, - { - "teal": 5451, - "source": 1375, - "pc": [ - 5325, - 5326 - ] - }, - { - "teal": 5452, - "source": 1375, - "pc": [ - 5327 - ] - }, - { - "teal": 5453, - "source": 1374, - "pc": [ - 5328 - ] - }, - { - "teal": 5456, - "source": 1375, - "pc": [ - 5329 - ] - }, - { - "teal": 5457, - "source": 1375, - "pc": [ - 5330, - 5331, - 5332 - ] - }, - { - "teal": 5458, - "source": 1376, - "pc": [ - 5333, - 5334 - ] - }, - { - "teal": 5459, - "source": 1376, - "pc": [ - 5335, - 5336 - ] - }, - { - "teal": 5460, - "source": 1376, - "pc": [ - 5337 - ] - }, - { - "teal": 5461, - "source": 1375, - "pc": [ - 5338 - ] - }, - { - "teal": 5464, - "source": 1373, - "pc": [ - 5339, - 5340, - 5341 - ] - }, - { - "teal": 5469, - "source": 1378, - "pc": [ - 5342, - 5343 - ] - }, - { - "teal": 5470, - "source": 1378, - "pc": [ - 5344 - ] - }, - { - "teal": 5471, - "source": 1378, - "pc": [ - 5345 - ] - }, - { - "teal": 5472, - "source": 1378, - "pc": [ - 5346 - ] - }, - { - "teal": 5476, - "source": 1379, - "pc": [ - 5347, - 5348 - ] - }, - { - "teal": 5477, - "source": 1379, - "pc": [ - 5349 - ] - }, - { - "teal": 5478, - "source": 1379, - "pc": [ - 5350 - ] - }, - { - "teal": 5479, - "source": 1379, - "pc": [ - 5351, - 5352 - ] - }, - { - "teal": 5480, - "source": 1379, - "pc": [ - 5353 - ] - }, - { - "teal": 5481, - "source": 1379, - "pc": [ - 5354 - ] - }, - { - "teal": 5482, - "source": 1379, - "pc": [ - 5355, - 5356 - ] - }, - { - "teal": 5483, - "source": 1379, - "pc": [ - 5357 - ] - }, - { - "teal": 5484, - "source": 1379, - "pc": [ - 5358 - ] - }, - { - "teal": 5485, - "source": 1379, - "pc": [ - 5359, - 5360 - ] - }, - { - "teal": 5490, - "source": 1380, - "pc": [ - 5361, - 5362 - ] - }, - { - "teal": 5491, - "source": 1380, - "pc": [ - 5363 - ] - }, - { - "teal": 5492, - "source": 1380, - "pc": [ - 5364 - ] - }, - { - "teal": 5493, - "source": 1380, - "pc": [ - 5365, - 5366, - 5367 - ] - }, - { - "teal": 5498, - "source": 1381, - "pc": [ - 5368 - ] - }, - { - "teal": 5499, - "source": 1381, - "pc": [ - 5369, - 5370 - ] - }, - { - "teal": 5507, - "source": 1384, - "pc": [ - 5371, - 5372 - ] - }, - { - "teal": 5508, - "source": 1384, - "pc": [ - 5373, - 5374 - ] - }, - { - "teal": 5509, - "source": 1384, - "pc": [ - 5375, - 5376 - ] - }, - { - "teal": 5510, - "source": 1384, - "pc": [ - 5377 - ] - }, - { - "teal": 5511, - "source": 1384, - "pc": [ - 5378, - 5379 - ] - }, - { - "teal": 5512, - "source": 1384, - "pc": [ - 5380 - ] - }, - { - "teal": 5515, - "source": 1383, - "errorMessage": "must have required minimum balance of validator defined token to add stake", - "pc": [ - 5381 - ] - }, - { - "teal": 5521, - "source": 1388, - "pc": [ - 5382, - 5383 - ] - }, - { - "teal": 5522, - "source": 1388, - "pc": [ - 5384 - ] - }, - { - "teal": 5523, - "source": 1388, - "pc": [ - 5385 - ] - }, - { - "teal": 5524, - "source": 1388, - "pc": [ - 5386, - 5387, - 5388 - ] - }, - { - "teal": 5532, - "source": 1390, - "pc": [ - 5389, - 5390 - ] - }, - { - "teal": 5533, - "source": 1390, - "pc": [ - 5391, - 5392 - ] - }, - { - "teal": 5534, - "source": 1390, - "pc": [ - 5393 - ] - }, - { - "teal": 5535, - "source": 1390, - "pc": [ - 5394, - 5395 - ] - }, - { - "teal": 5536, - "source": 1390, - "pc": [ - 5396, - 5397, - 5398 - ] - }, - { - "teal": 5537, - "source": 1390, - "pc": [ - 5399 - ] - }, - { - "teal": 5540, - "source": 1389, - "errorMessage": "specified asset must be created by creator that the validator defined as a requirement to stake", - "pc": [ - 5400 - ] - }, - { - "teal": 5546, - "source": 1394, - "pc": [ - 5401, - 5402 - ] - }, - { - "teal": 5547, - "source": 1394, - "pc": [ - 5403, - 5404 - ] - }, - { - "teal": 5548, - "source": 1394, - "pc": [ - 5405 - ] - }, - { - "teal": 5549, - "source": 1394, - "pc": [ - 5406, - 5407, - 5408 - ] - }, - { - "teal": 5554, - "source": 1395, - "pc": [ - 5409, - 5410 - ] - }, - { - "teal": 5555, - "source": 1395, - "pc": [ - 5411 - ] - }, - { - "teal": 5556, - "source": 1395, - "pc": [ - 5412 - ] - }, - { - "teal": 5557, - "source": 1395, - "pc": [ - 5413 - ] - }, - { - "teal": 5561, - "source": 1396, - "pc": [ - 5414 - ] - }, - { - "teal": 5562, - "source": 1396, - "pc": [ - 5415, - 5416 - ] - }, - { - "teal": 5566, - "source": 1397, - "pc": [ - 5417, - 5418 - ] - }, - { - "teal": 5567, - "source": 1397, - "pc": [ - 5419, - 5420, - 5421 - ] - }, - { - "teal": 5568, - "source": 1397, - "pc": [ - 5422 - ] - }, - { - "teal": 5569, - "source": 1397, - "pc": [ - 5423, - 5424 - ] - }, - { - "teal": 5570, - "source": 1397, - "pc": [ - 5425, - 5426, - 5427 - ] - }, - { - "teal": 5571, - "source": 1397, - "pc": [ - 5428 - ] - }, - { - "teal": 5572, - "source": 1397, - "pc": [ - 5429, - 5430 - ] - }, - { - "teal": 5573, - "source": 1397, - "pc": [ - 5431 - ] - }, - { - "teal": 5574, - "source": 1397, - "pc": [ - 5432, - 5433 - ] - }, - { - "teal": 5580, - "source": 1398, - "pc": [ - 5434, - 5435 - ] - }, - { - "teal": 5581, - "source": 1398, - "pc": [ - 5436, - 5437 - ] - }, - { - "teal": 5582, - "source": 1398, - "pc": [ - 5438 - ] - }, - { - "teal": 5583, - "source": 1398, - "pc": [ - 5439, - 5440, - 5441 - ] - }, - { - "teal": 5588, - "source": 1399, - "pc": [ - 5442 - ] - }, - { - "teal": 5589, - "source": 1399, - "pc": [ - 5443, - 5444 - ] - }, - { - "teal": 5590, - "source": 1400, - "pc": [ - 5445, - 5446, - 5447 - ] - }, - { - "teal": 5596, - "source": 1397, - "pc": [ - 5448, - 5449 - ] - }, - { - "teal": 5597, - "source": 1397, - "pc": [ - 5450 - ] - }, - { - "teal": 5598, - "source": 1397, - "pc": [ - 5451 - ] - }, - { - "teal": 5599, - "source": 1397, - "pc": [ - 5452 - ] - }, - { - "teal": 5600, - "source": 1397, - "pc": [ - 5453, - 5454 - ] - }, - { - "teal": 5601, - "source": 1397, - "pc": [ - 5455 - ] - }, - { - "teal": 5602, - "source": 1397, - "pc": [ - 5456, - 5457, - 5458 - ] - }, - { - "teal": 5603, - "source": 1397, - "pc": [ - 5459, - 5460 - ] - }, - { - "teal": 5604, - "source": 1397, - "pc": [ - 5461, - 5462 - ] - }, - { - "teal": 5605, - "source": 1397, - "pc": [ - 5463, - 5464 - ] - }, - { - "teal": 5606, - "source": 1397, - "pc": [ - 5465 - ] - }, - { - "teal": 5607, - "source": 1397, - "pc": [ - 5466 - ] - }, - { - "teal": 5608, - "source": 1397, - "pc": [ - 5467 - ] - }, - { - "teal": 5609, - "source": 1397, - "pc": [ - 5468, - 5469 - ] - }, - { - "teal": 5610, - "source": 1397, - "pc": [ - 5470, - 5471, - 5472 - ] - }, - { - "teal": 5615, - "source": 1403, - "pc": [ - 5473, - 5474 - ] - }, - { - "teal": 5618, - "source": 1403, - "errorMessage": "specified asset must be identical to the asset id defined as a requirement to stake", - "pc": [ - 5475 - ] - }, - { - "teal": 5624, - "source": 1405, - "pc": [ - 5476, - 5477 - ] - }, - { - "teal": 5625, - "source": 1405, - "pc": [ - 5478, - 5479 - ] - }, - { - "teal": 5626, - "source": 1405, - "pc": [ - 5480 - ] - }, - { - "teal": 5627, - "source": 1405, - "pc": [ - 5481, - 5482, - 5483 - ] - }, - { - "teal": 5635, - "source": 1409, - "pc": [ - 5484, - 5485 - ] - }, - { - "teal": 5636, - "source": 1409, - "pc": [ - 5486, - 5487 - ] - }, - { - "teal": 5637, - "source": 1409, - "pc": [ - 5488 - ] - }, - { - "teal": 5638, - "source": 1409, - "pc": [ - 5489, - 5490 - ] - }, - { - "teal": 5639, - "source": 1409, - "pc": [ - 5491, - 5492, - 5493 - ] - }, - { - "teal": 5640, - "source": 1409, - "pc": [ - 5494 - ] - }, - { - "teal": 5641, - "source": 1409, - "pc": [ - 5495, - 5496, - 5497 - ] - }, - { - "teal": 5644, - "source": 1408, - "errorMessage": "specified asset must be created by creator that is one of the linked addresses in an nfd", - "pc": [ - 5498 - ] - }, - { - "teal": 5650, - "source": 1413, - "pc": [ - 5499, - 5500 - ] - }, - { - "teal": 5651, - "source": 1413, - "pc": [ - 5501, - 5502 - ] - }, - { - "teal": 5652, - "source": 1413, - "pc": [ - 5503 - ] - }, - { - "teal": 5653, - "source": 1413, - "pc": [ - 5504, - 5505, - 5506 - ] - }, - { - "teal": 5658, - "source": 1415, - "pc": [ - 5507, - 5508 - ] - }, - { - "teal": 5659, - "source": 1415, - "pc": [ - 5509, - 5510 - ] - }, - { - "teal": 5663, - "source": 1416, - "pc": [ - 5511, - 5512 - ] - }, - { - "teal": 5664, - "source": 1416, - "pc": [ - 5513, - 5514, - 5515 - ] - }, - { - "teal": 5667, - "source": 1416, - "errorMessage": "provided NFD must be valid", - "pc": [ - 5516 - ] - }, - { - "teal": 5675, - "source": 1420, - "pc": [ - 5517, - 5518 - ] - }, - { - "teal": 5676, - "source": 1420, - "pc": [ - 5519, - 5520 - ] - }, - { - "teal": 5677, - "source": 1420, - "pc": [ - 5521 - ] - }, - { - "teal": 5680, - "source": 1420, - "errorMessage": "global state value does not exist: AppID.fromUint64(userOfferedNFDAppID).globalState('i.owner.a')", - "pc": [ - 5522 - ] - }, - { - "teal": 5681, - "source": 1420, - "pc": [ - 5523, - 5524 - ] - }, - { - "teal": 5682, - "source": 1420, - "pc": [ - 5525 - ] - }, - { - "teal": 5683, - "source": 1420, - "pc": [ - 5526 - ] - }, - { - "teal": 5684, - "source": 1420, - "pc": [ - 5527, - 5528, - 5529 - ] - }, - { - "teal": 5685, - "source": 1421, - "pc": [ - 5530, - 5531 - ] - }, - { - "teal": 5686, - "source": 1421, - "pc": [ - 5532, - 5533 - ] - }, - { - "teal": 5687, - "source": 1421, - "pc": [ - 5534, - 5535, - 5536 - ] - }, - { - "teal": 5688, - "source": 1420, - "pc": [ - 5537 - ] - }, - { - "teal": 5692, - "source": 1419, - "errorMessage": "provided nfd for entry isn't owned or linked to the staker", - "pc": [ - 5538 - ] - }, - { - "teal": 5700, - "source": 1427, - "pc": [ - 5539, - 5540 - ] - }, - { - "teal": 5701, - "source": 1427, - "pc": [ - 5541, - 5542, - 5543, - 5544, - 5545, - 5546, - 5547, - 5548, - 5549, - 5550, - 5551, - 5552, - 5553, - 5554, - 5555 - ] - }, - { - "teal": 5702, - "source": 1427, - "pc": [ - 5556 - ] - }, - { - "teal": 5705, - "source": 1427, - "errorMessage": "global state value does not exist: AppID.fromUint64(userOfferedNFDAppID).globalState('i.parentAppID')", - "pc": [ - 5557 - ] - }, - { - "teal": 5706, - "source": 1427, - "pc": [ - 5558 - ] - }, - { - "teal": 5707, - "source": 1428, - "pc": [ - 5559, - 5560 - ] - }, - { - "teal": 5708, - "source": 1428, - "pc": [ - 5561, - 5562, - 5563 - ] - }, - { - "teal": 5709, - "source": 1428, - "pc": [ - 5564 - ] - }, - { - "teal": 5710, - "source": 1427, - "pc": [ - 5565 - ] - }, - { - "teal": 5713, - "source": 1426, - "errorMessage": "specified nfd must be a segment of the nfd the validator specified as a requirement", - "pc": [ - 5566 - ] - }, - { - "teal": 5716, - "source": 1364, - "pc": [ - 5567 - ] - }, - { - "teal": 5728, - "source": 1443, - "pc": [ - 5568, - 5569, - 5570 - ] - }, - { - "teal": 5731, - "source": 1443, - "pc": [ - 5571 - ] - }, - { - "teal": 5735, - "source": 1445, - "pc": [ - 5572, - 5573 - ] - }, - { - "teal": 5736, - "source": 1445, - "pc": [ - 5574, - 5575, - 5576, - 5577, - 5578, - 5579, - 5580, - 5581 - ] - }, - { - "teal": 5737, - "source": 1445, - "pc": [ - 5582 - ] - }, - { - "teal": 5740, - "source": 1445, - "errorMessage": "global state value does not exist: AppID.fromUint64(nfdAppID).globalState('i.name')", - "pc": [ - 5583 - ] - }, - { - "teal": 5741, - "source": 1445, - "pc": [ - 5584, - 5585 - ] - }, - { - "teal": 5749, - "source": 1447, - "pc": [ - 5586 - ] - }, - { - "teal": 5750, - "source": 1447, - "pc": [ - 5587, - 5588 - ] - }, - { - "teal": 5751, - "source": 1447, - "pc": [ - 5589, - 5590 - ] - }, - { - "teal": 5755, - "source": 1448, - "pc": [ - 5591, - 5592 - ] - }, - { - "teal": 5756, - "source": 1448, - "pc": [ - 5593, - 5594 - ] - }, - { - "teal": 5760, - "source": 1449, - "pc": [ - 5595, - 5596 - ] - }, - { - "teal": 5761, - "source": 1449, - "pc": [ - 5597, - 5598 - ] - }, - { - "teal": 5762, - "source": 1449, - "pc": [ - 5599, - 5600 - ] - }, - { - "teal": 5763, - "source": 1449, - "pc": [ - 5601, - 5602 - ] - }, - { - "teal": 5764, - "source": 1449, - "pc": [ - 5603, - 5604 - ] - }, - { - "teal": 5765, - "source": 1449, - "pc": [ - 5605 - ] - }, - { - "teal": 5766, - "source": 1449, - "pc": [ - 5606, - 5607 - ] - }, - { - "teal": 5770, - "source": 1450, - "pc": [ - 5608, - 5609 - ] - }, - { - "teal": 5771, - "source": 1450, - "pc": [ - 5610, - 5611 - ] - }, - { - "teal": 5774, - "source": 1447, - "pc": [ - 5612 - ] - }, - { - "teal": 5775, - "source": 1447, - "pc": [ - 5613, - 5614 - ] - }, - { - "teal": 5778, - "source": 1447, - "pc": [ - 5615 - ] - }, - { - "teal": 5782, - "source": 1452, - "pc": [ - 5616, - 5617 - ] - }, - { - "teal": 5783, - "source": 1452, - "pc": [ - 5618 - ] - }, - { - "teal": 5784, - "source": 1452, - "pc": [ - 5619 - ] - }, - { - "teal": 5785, - "source": 1452, - "pc": [ - 5620 - ] - }, - { - "teal": 5788, - "source": 1443, - "pc": [ - 5621, - 5622 - ] - }, - { - "teal": 5789, - "source": 1443, - "pc": [ - 5623 - ] - }, - { - "teal": 5800, - "source": 1463, - "pc": [ - 5624, - 5625, - 5626 - ] - }, - { - "teal": 5803, - "source": 1463, - "pc": [ - 5627 - ] - }, - { - "teal": 5804, - "source": 1463, - "pc": [ - 5628, - 5629 - ] - }, - { - "teal": 5811, - "source": 1464, - "pc": [ - 5630 - ] - }, - { - "teal": 5812, - "source": 1464, - "pc": [ - 5631, - 5632 - ] - }, - { - "teal": 5813, - "source": 1464, - "pc": [ - 5633, - 5634 - ] - }, - { - "teal": 5817, - "source": 1465, - "pc": [ - 5635, - 5636 - ] - }, - { - "teal": 5818, - "source": 1465, - "pc": [ - 5637, - 5638 - ] - }, - { - "teal": 5822, - "source": 1466, - "pc": [ - 5639, - 5640, - 5641, - 5642, - 5643, - 5644, - 5645, - 5646, - 5647, - 5648, - 5649, - 5650, - 5651, - 5652, - 5653 - ] - }, - { - "teal": 5823, - "source": 1466, - "pc": [ - 5654, - 5655 - ] - }, - { - "teal": 5824, - "source": 1466, - "pc": [ - 5656, - 5657, - 5658, - 5659, - 5660, - 5661, - 5662, - 5663, - 5664, - 5665, - 5666, - 5667, - 5668, - 5669, - 5670 - ] - }, - { - "teal": 5825, - "source": 1466, - "pc": [ - 5671, - 5672 - ] - }, - { - "teal": 5828, - "source": 1464, - "pc": [ - 5673 - ] - }, - { - "teal": 5829, - "source": 1464, - "pc": [ - 5674, - 5675 - ] - }, - { - "teal": 5832, - "source": 1464, - "pc": [ - 5676 - ] - }, - { - "teal": 5836, - "source": 1468, - "pc": [ - 5677, - 5678 - ] - }, - { - "teal": 5837, - "source": 1468, - "pc": [ - 5679, - 5680 - ] - }, - { - "teal": 5841, - "source": 1469, - "pc": [ - 5681 - ] - }, - { - "teal": 5842, - "source": 1469, - "pc": [ - 5682, - 5683 - ] - }, - { - "teal": 5847, - "source": 1469, - "pc": [ - 5684, - 5685 - ] - }, - { - "teal": 5848, - "source": 1469, - "pc": [ - 5686, - 5687 - ] - }, - { - "teal": 5849, - "source": 1469, - "pc": [ - 5688 - ] - }, - { - "teal": 5850, - "source": 1469, - "pc": [ - 5689 - ] - }, - { - "teal": 5851, - "source": 1469, - "pc": [ - 5690, - 5691, - 5692 - ] - }, - { - "teal": 5855, - "source": 1470, - "pc": [ - 5693, - 5694 - ] - }, - { - "teal": 5856, - "source": 1470, - "pc": [ - 5695, - 5696 - ] - }, - { - "teal": 5857, - "source": 1470, - "pc": [ - 5697, - 5698 - ] - }, - { - "teal": 5858, - "source": 1470, - "pc": [ - 5699 - ] - }, - { - "teal": 5859, - "source": 1470, - "pc": [ - 5700, - 5701 - ] - }, - { - "teal": 5864, - "source": 1471, - "pc": [ - 5702, - 5703 - ] - }, - { - "teal": 5865, - "source": 1471, - "pc": [ - 5704, - 5705 - ] - }, - { - "teal": 5866, - "source": 1471, - "pc": [ - 5706 - ] - }, - { - "teal": 5867, - "source": 1471, - "pc": [ - 5707 - ] - }, - { - "teal": 5868, - "source": 1471, - "pc": [ - 5708, - 5709, - 5710 - ] - }, - { - "teal": 5869, - "source": 1471, - "pc": [ - 5711, - 5712 - ] - }, - { - "teal": 5870, - "source": 1471, - "pc": [ - 5713, - 5714 - ] - }, - { - "teal": 5871, - "source": 1471, - "pc": [ - 5715 - ] - }, - { - "teal": 5872, - "source": 1471, - "pc": [ - 5716 - ] - }, - { - "teal": 5875, - "source": 1471, - "pc": [ - 5717, - 5718, - 5719 - ] - }, - { - "teal": 5880, - "source": 1472, - "pc": [ - 5720 - ] - }, - { - "teal": 5881, - "source": 1472, - "pc": [ - 5721, - 5722, - 5723 - ] - }, - { - "teal": 5888, - "source": 1469, - "pc": [ - 5724, - 5725 - ] - }, - { - "teal": 5889, - "source": 1469, - "pc": [ - 5726, - 5727 - ] - }, - { - "teal": 5890, - "source": 1469, - "pc": [ - 5728 - ] - }, - { - "teal": 5891, - "source": 1469, - "pc": [ - 5729, - 5730 - ] - }, - { - "teal": 5892, - "source": 1469, - "pc": [ - 5731, - 5732, - 5733 - ] - }, - { - "teal": 5897, - "source": 1475, - "pc": [ - 5734 - ] - }, - { - "teal": 5901, - "source": 1463, - "pc": [ - 5735, - 5736 - ] - }, - { - "teal": 5904, - "source": 1463, - "pc": [ - 5737, - 5738 - ] - }, - { - "teal": 5905, - "source": 1463, - "pc": [ - 5739 - ] - }, - { - "teal": 5913, - "source": 1483, - "pc": [ - 5740, - 5741, - 5742 - ] - }, - { - "teal": 5916, - "source": 1483, - "pc": [ - 5743 - ] - }, - { - "teal": 5920, - "source": 1484, - "pc": [ - 5744, - 5745, - 5746 - ] - }, - { - "teal": 5921, - "source": 1484, - "pc": [ - 5747, - 5748 - ] - }, - { - "teal": 5925, - "source": 1486, - "pc": [ - 5749, - 5750 - ] - }, - { - "teal": 5926, - "source": 1486, - "pc": [ - 5751, - 5752 - ] - }, - { - "teal": 5927, - "source": 1486, - "pc": [ - 5753 - ] - }, - { - "teal": 5928, - "source": 1486, - "pc": [ - 5754 - ] - }, - { - "teal": 5929, - "source": 1486, - "pc": [ - 5755, - 5756 - ] - }, - { - "teal": 5930, - "source": 1486, - "pc": [ - 5757 - ] - }, - { - "teal": 5931, - "source": 1486, - "pc": [ - 5758 - ] - }, - { - "teal": 5932, - "source": 1486, - "pc": [ - 5759 - ] - }, - { - "teal": 5933, - "source": 1486, - "pc": [ - 5760 - ] - }, - { - "teal": 5934, - "source": 1486, - "pc": [ - 5761 - ] - }, - { - "teal": 5937, - "source": 1486, - "errorMessage": "wideRatio failed", - "pc": [ - 5762 - ] - }, - { - "teal": 5940, - "source": 1483, - "pc": [ - 5763, - 5764 - ] - }, - { - "teal": 5941, - "source": 1483, - "pc": [ - 5765 - ] - }, - { - "teal": 5948, - "source": 1493, - "pc": [ - 5766, - 5767, - 5768 - ] - }, - { - "teal": 5951, - "source": 1493, - "pc": [ - 5769 - ] - }, - { - "teal": 5955, - "source": 1494, - "pc": [ - 5770, - 5771, - 5772 - ] - }, - { - "teal": 5956, - "source": 1494, - "pc": [ - 5773, - 5774 - ] - }, - { - "teal": 5960, - "source": 1496, - "pc": [ - 5775, - 5776 - ] - }, - { - "teal": 5961, - "source": 1496, - "pc": [ - 5777, - 5778, - 5779 - ] - }, - { - "teal": 5962, - "source": 1496, - "pc": [ - 5780 - ] - }, - { - "teal": 5963, - "source": 1496, - "pc": [ - 5781 - ] - }, - { - "teal": 5964, - "source": 1496, - "pc": [ - 5782, - 5783 - ] - }, - { - "teal": 5965, - "source": 1496, - "pc": [ - 5784 - ] - }, - { - "teal": 5966, - "source": 1496, - "pc": [ - 5785 - ] - }, - { - "teal": 5967, - "source": 1496, - "pc": [ - 5786 - ] - }, - { - "teal": 5968, - "source": 1496, - "pc": [ - 5787 - ] - }, - { - "teal": 5969, - "source": 1496, - "pc": [ - 5788 - ] - }, - { - "teal": 5972, - "source": 1496, - "errorMessage": "wideRatio failed", - "pc": [ - 5789 - ] - }, - { - "teal": 5975, - "source": 1493, - "pc": [ - 5790, - 5791 - ] - }, - { - "teal": 5976, - "source": 1493, - "pc": [ - 5792 - ] - }, - { - "teal": 5982, - "source": 1502, - "pc": [ - 5793, - 5794, - 5795 - ] - }, - { - "teal": 5986, - "source": 1504, - "pc": [ - 5796, - 5797, - 5798, - 5799, - 5800, - 5801, - 5802, - 5803 - ] - }, - { - "teal": 5987, - "source": 1502, - "pc": [ - 5804 - ] - }, - { - "teal": 5991, - "source": 1507, - "pc": [ - 5805, - 5806, - 5807 - ] - }, - { - "teal": 5995, - "source": 1509, - "pc": [ - 5808, - 5809, - 5810, - 5811, - 5812, - 5813, - 5814, - 5815, - 5816 - ] - }, - { - "teal": 5996, - "source": 1507, - "pc": [ - 5817 - ] - }, - { - "teal": 6000, - "source": 1512, - "pc": [ - 5818, - 5819, - 5820 - ] - }, - { - "teal": 6003, - "source": 1512, - "pc": [ - 5821 - ] - }, - { - "teal": 6007, - "source": 1521, - "pc": [ - 5822, - 5823 - ] - }, - { - "teal": 6008, - "source": 1521, - "pc": [ - 5824, - 5825 - ] - }, - { - "teal": 6012, - "source": 1522, - "pc": [ - 5826, - 5827 - ] - }, - { - "teal": 6013, - "source": 1522, - "pc": [ - 5828, - 5829 - ] - }, - { - "teal": 6014, - "source": 1522, - "pc": [ - 5830, - 5831 - ] - }, - { - "teal": 6015, - "source": 1522, - "pc": [ - 5832 - ] - }, - { - "teal": 6016, - "source": 1522, - "pc": [ - 5833 - ] - }, - { - "teal": 6017, - "source": 1522, - "pc": [ - 5834, - 5835 - ] - }, - { - "teal": 6021, - "source": 1523, - "pc": [ - 5836, - 5837 - ] - }, - { - "teal": 6022, - "source": 1523, - "pc": [ - 5838, - 5839 - ] - }, - { - "teal": 6023, - "source": 1523, - "pc": [ - 5840, - 5841 - ] - }, - { - "teal": 6024, - "source": 1523, - "pc": [ - 5842 - ] - }, - { - "teal": 6025, - "source": 1523, - "pc": [ - 5843 - ] - }, - { - "teal": 6026, - "source": 1523, - "pc": [ - 5844, - 5845 - ] - }, - { - "teal": 6030, - "source": 1524, - "pc": [ - 5846, - 5847 - ] - }, - { - "teal": 6031, - "source": 1524, - "pc": [ - 5848, - 5849 - ] - }, - { - "teal": 6032, - "source": 1524, - "pc": [ - 5850, - 5851 - ] - }, - { - "teal": 6033, - "source": 1524, - "pc": [ - 5852 - ] - }, - { - "teal": 6034, - "source": 1524, - "pc": [ - 5853 - ] - }, - { - "teal": 6035, - "source": 1524, - "pc": [ - 5854, - 5855 - ] - }, - { - "teal": 6039, - "source": 1525, - "pc": [ - 5856, - 5857 - ] - }, - { - "teal": 6040, - "source": 1525, - "pc": [ - 5858, - 5859 - ] - }, - { - "teal": 6041, - "source": 1525, - "pc": [ - 5860, - 5861 - ] - }, - { - "teal": 6042, - "source": 1525, - "pc": [ - 5862 - ] - }, - { - "teal": 6043, - "source": 1525, - "pc": [ - 5863 - ] - }, - { - "teal": 6044, - "source": 1525, - "pc": [ - 5864, - 5865 - ] - }, - { - "teal": 6048, - "source": 1526, - "pc": [ - 5866, - 5867 - ] - }, - { - "teal": 6049, - "source": 1526, - "pc": [ - 5868, - 5869 - ] - }, - { - "teal": 6050, - "source": 1526, - "pc": [ - 5870, - 5871 - ] - }, - { - "teal": 6051, - "source": 1526, - "pc": [ - 5872 - ] - }, - { - "teal": 6052, - "source": 1526, - "pc": [ - 5873 - ] - }, - { - "teal": 6053, - "source": 1526, - "pc": [ - 5874, - 5875 - ] - }, - { - "teal": 6057, - "source": 1527, - "pc": [ - 5876, - 5877 - ] - }, - { - "teal": 6058, - "source": 1527, - "pc": [ - 5878, - 5879 - ] - }, - { - "teal": 6059, - "source": 1527, - "pc": [ - 5880, - 5881 - ] - }, - { - "teal": 6060, - "source": 1527, - "pc": [ - 5882 - ] - }, - { - "teal": 6061, - "source": 1527, - "pc": [ - 5883 - ] - }, - { - "teal": 6062, - "source": 1527, - "pc": [ - 5884, - 5885 - ] - }, - { - "teal": 6066, - "source": 1528, - "pc": [ - 5886, - 5887 - ] - }, - { - "teal": 6067, - "source": 1528, - "pc": [ - 5888, - 5889 - ] - }, - { - "teal": 6068, - "source": 1528, - "pc": [ - 5890, - 5891 - ] - }, - { - "teal": 6069, - "source": 1528, - "pc": [ - 5892 - ] - }, - { - "teal": 6070, - "source": 1528, - "pc": [ - 5893 - ] - }, - { - "teal": 6071, - "source": 1528, - "pc": [ - 5894, - 5895 - ] - }, - { - "teal": 6075, - "source": 1529, - "pc": [ - 5896, - 5897 - ] - }, - { - "teal": 6078, - "source": 1512, - "pc": [ - 5898, - 5899 - ] - }, - { - "teal": 6079, - "source": 1512, - "pc": [ - 5900 - ] - }, - { - "teal": 6083, - "source": 1532, - "pc": [ - 5901, - 5902, - 5903 - ] - }, - { - "teal": 6087, - "source": 1536, - "pc": [ - 5904, - 5905, - 5906 - ] - }, - { - "teal": 6088, - "source": 1536, - "pc": [ - 5907, - 5908 - ] - }, - { - "teal": 6089, - "source": 1536, - "pc": [ - 5909, - 5910, - 5911 - ] - }, - { - "teal": 6090, - "source": 1536, - "pc": [ - 5912 - ] - }, - { - "teal": 6091, - "source": 1536, - "pc": [ - 5913 - ] - }, - { - "teal": 6092, - "source": 1532, - "pc": [ - 5914 - ] - }, - { - "teal": 6095, - "source": 168, - "pc": [ - 5915, - 5916, - 5917, - 5918, - 5919, - 5920 - ] - }, - { - "teal": 6096, - "source": 168, - "pc": [ - 5921, - 5922, - 5923 - ] - }, - { - "teal": 6097, - "source": 168, - "pc": [ - 5924, - 5925, - 5926, - 5927 - ] - }, - { - "teal": 6100, - "source": 168, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 5928 - ] - }, - { - "teal": 6103, - "source": 168, - "pc": [ - 5929, - 5930, - 5931, - 5932, - 5933, - 5934 - ] - }, - { - "teal": 6104, - "source": 168, - "pc": [ - 5935, - 5936, - 5937, - 5938, - 5939, - 5940 - ] - }, - { - "teal": 6105, - "source": 168, - "pc": [ - 5941, - 5942, - 5943, - 5944, - 5945, - 5946 - ] - }, - { - "teal": 6106, - "source": 168, - "pc": [ - 5947, - 5948, - 5949, - 5950, - 5951, - 5952 - ] - }, - { - "teal": 6107, - "source": 168, - "pc": [ - 5953, - 5954, - 5955, - 5956, - 5957, - 5958 - ] - }, - { - "teal": 6108, - "source": 168, - "pc": [ - 5959, - 5960, - 5961, - 5962, - 5963, - 5964 - ] - }, - { - "teal": 6109, - "source": 168, - "pc": [ - 5965, - 5966, - 5967, - 5968, - 5969, - 5970 - ] - }, - { - "teal": 6110, - "source": 168, - "pc": [ - 5971, - 5972, - 5973, - 5974, - 5975, - 5976 - ] - }, - { - "teal": 6111, - "source": 168, - "pc": [ - 5977, - 5978, - 5979, - 5980, - 5981, - 5982 - ] - }, - { - "teal": 6112, - "source": 168, - "pc": [ - 5983, - 5984, - 5985, - 5986, - 5987, - 5988 - ] - }, - { - "teal": 6113, - "source": 168, - "pc": [ - 5989, - 5990, - 5991, - 5992, - 5993, - 5994 - ] - }, - { - "teal": 6114, - "source": 168, - "pc": [ - 5995, - 5996, - 5997, - 5998, - 5999, - 6000 - ] - }, - { - "teal": 6115, - "source": 168, - "pc": [ - 6001, - 6002, - 6003, - 6004, - 6005, - 6006 - ] - }, - { - "teal": 6116, - "source": 168, - "pc": [ - 6007, - 6008, - 6009, - 6010, - 6011, - 6012 - ] - }, - { - "teal": 6117, - "source": 168, - "pc": [ - 6013, - 6014, - 6015, - 6016, - 6017, - 6018 - ] - }, - { - "teal": 6118, - "source": 168, - "pc": [ - 6019, - 6020, - 6021, - 6022, - 6023, - 6024 - ] - }, - { - "teal": 6119, - "source": 168, - "pc": [ - 6025, - 6026, - 6027, - 6028, - 6029, - 6030 - ] - }, - { - "teal": 6120, - "source": 168, - "pc": [ - 6031, - 6032, - 6033, - 6034, - 6035, - 6036 - ] - }, - { - "teal": 6121, - "source": 168, - "pc": [ - 6037, - 6038, - 6039, - 6040, - 6041, - 6042 - ] - }, - { - "teal": 6122, - "source": 168, - "pc": [ - 6043, - 6044, - 6045, - 6046, - 6047, - 6048 - ] - }, - { - "teal": 6123, - "source": 168, - "pc": [ - 6049, - 6050, - 6051, - 6052, - 6053, - 6054 - ] - }, - { - "teal": 6124, - "source": 168, - "pc": [ - 6055, - 6056, - 6057, - 6058, - 6059, - 6060 - ] - }, - { - "teal": 6125, - "source": 168, - "pc": [ - 6061, - 6062, - 6063, - 6064, - 6065, - 6066 - ] - }, - { - "teal": 6126, - "source": 168, - "pc": [ - 6067, - 6068, - 6069, - 6070, - 6071, - 6072 - ] - }, - { - "teal": 6127, - "source": 168, - "pc": [ - 6073, - 6074, - 6075, - 6076, - 6077, - 6078 - ] - }, - { - "teal": 6128, - "source": 168, - "pc": [ - 6079, - 6080, - 6081, - 6082, - 6083, - 6084 - ] - }, - { - "teal": 6129, - "source": 168, - "pc": [ - 6085, - 6086, - 6087, - 6088, - 6089, - 6090 - ] - }, - { - "teal": 6130, - "source": 168, - "pc": [ - 6091, - 6092, - 6093, - 6094, - 6095, - 6096 - ] - }, - { - "teal": 6131, - "source": 168, - "pc": [ - 6097, - 6098, - 6099, - 6100, - 6101, - 6102 - ] - }, - { - "teal": 6132, - "source": 168, - "pc": [ - 6103, - 6104, - 6105, - 6106, - 6107, - 6108 - ] - }, - { - "teal": 6133, - "source": 168, - "pc": [ - 6109, - 6110, - 6111, - 6112, - 6113, - 6114 - ] - }, - { - "teal": 6134, - "source": 168, - "pc": [ - 6115, - 6116, - 6117, - 6118, - 6119, - 6120 - ] - }, - { - "teal": 6135, - "source": 168, - "pc": [ - 6121, - 6122, - 6123, - 6124, - 6125, - 6126 - ] - }, - { - "teal": 6136, - "source": 168, - "pc": [ - 6127, - 6128, - 6129 - ] - }, - { - "teal": 6137, - "source": 168, - "pc": [ - 6130, - 6131, - 6132, - 6133, - 6134, - 6135, - 6136, - 6137, - 6138, - 6139, - 6140, - 6141, - 6142, - 6143, - 6144, - 6145, - 6146, - 6147, - 6148, - 6149, - 6150, - 6151, - 6152, - 6153, - 6154, - 6155, - 6156, - 6157, - 6158, - 6159, - 6160, - 6161, - 6162, - 6163, - 6164, - 6165, - 6166, - 6167, - 6168, - 6169, - 6170, - 6171, - 6172, - 6173, - 6174, - 6175, - 6176, - 6177, - 6178, - 6179, - 6180, - 6181, - 6182, - 6183, - 6184, - 6185, - 6186, - 6187, - 6188, - 6189, - 6190, - 6191, - 6192, - 6193, - 6194, - 6195, - 6196, - 6197 - ] - }, - { - "teal": 6140, - "source": 168, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 6198 - ] - }, - { - "teal": 6143, - "source": 168, - "pc": [ - 6199, - 6200, - 6201, - 6202, - 6203, - 6204 - ] - }, - { - "teal": 6144, - "source": 168, - "pc": [ - 6205, - 6206, - 6207 - ] - }, - { - "teal": 6145, - "source": 168, - "pc": [ - 6208, - 6209, - 6210, - 6211 - ] - }, - { - "teal": 6148, - "source": 168, - "errorMessage": "this contract does not implement the given ABI method for call UpdateApplication", - "pc": [ - 6212 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 168, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183 + ] + }, + { + "teal": 9, + "source": 168, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 10, + "source": 168, + "pc": [ + 186 + ] + }, + { + "teal": 11, + "source": 168, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 18, + "source": 168, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 19, + "source": 168, + "pc": [ + 191 + ] + }, + { + "teal": 20, + "source": 168, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 21, + "source": 168, + "pc": [ + 194 + ] + }, + { + "teal": 22, + "source": 168, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 23, + "source": 168, + "pc": [ + 197 + ] + }, + { + "teal": 24, + "source": 168, + "pc": [ + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + }, + { + "teal": 28, + "source": 168, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 224 + ] + }, + { + "teal": 33, + "source": 201, + "pc": [ + 225, + 226, + 227 + ] + }, + { + "teal": 34, + "source": 201, + "pc": [ + 228 + ] + }, + { + "teal": 35, + "source": 201, + "pc": [ + 229 + ] + }, + { + "teal": 39, + "source": 201, + "pc": [ + 230, + 231, + 232 + ] + }, + { + "teal": 43, + "source": 202, + "pc": [ + 233, + 234 + ] + }, + { + "teal": 44, + "source": 202, + "pc": [ + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268 + ] + }, + { + "teal": 45, + "source": 202, + "pc": [ + 269 + ] + }, + { + "teal": 46, + "source": 202, + "pc": [ + 270 + ] + }, + { + "teal": 50, + "source": 204, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 51, + "source": 204, + "pc": [ + 273 + ] + }, + { + "teal": 55, + "source": 205, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 56, + "source": 205, + "pc": [ + 276 + ] + }, + { + "teal": 57, + "source": 205, + "pc": [ + 277, + 278 + ] + }, + { + "teal": 58, + "source": 205, + "pc": [ + 279 + ] + }, + { + "teal": 59, + "source": 205, + "pc": [ + 280, + 281 + ] + }, + { + "teal": 60, + "source": 205, + "pc": [ + 282 + ] + }, + { + "teal": 61, + "source": 205, + "pc": [ + 283 + ] + }, + { + "teal": 62, + "source": 201, + "pc": [ + 284 + ] + }, + { + "teal": 67, + "source": 208, + "pc": [ + 285, + 286, + 287 + ] + }, + { + "teal": 68, + "source": 208, + "pc": [ + 288 + ] + }, + { + "teal": 69, + "source": 208, + "pc": [ + 289 + ] + }, + { + "teal": 73, + "source": 208, + "pc": [ + 290, + 291, + 292 + ] + }, + { + "teal": 77, + "source": 209, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 78, + "source": 209, + "pc": [ + 295 + ] + }, + { + "teal": 79, + "source": 209, + "pc": [ + 296, + 297 + ] + }, + { + "teal": 80, + "source": 209, + "pc": [ + 298 + ] + }, + { + "teal": 81, + "source": 209, + "pc": [ + 299, + 300 + ] + }, + { + "teal": 82, + "source": 209, + "pc": [ + 301 + ] + }, + { + "teal": 83, + "source": 209, + "pc": [ + 302 + ] + }, + { + "teal": 87, + "source": 210, + "pc": [ + 303, + 304 + ] + }, + { + "teal": 88, + "source": 210, + "pc": [ + 305 + ] + }, + { + "teal": 89, + "source": 210, + "pc": [ + 306 + ] + }, + { + "teal": 93, + "source": 211, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 94, + "source": 211, + "pc": [ + 309 + ] + }, + { + "teal": 95, + "source": 211, + "pc": [ + 310 + ] + }, + { + "teal": 99, + "source": 212, + "pc": [ + 311, + 312 + ] + }, + { + "teal": 100, + "source": 212, + "pc": [ + 313 + ] + }, + { + "teal": 101, + "source": 212, + "pc": [ + 314 + ] + }, + { + "teal": 102, + "source": 208, + "pc": [ + 315 + ] + }, + { + "teal": 107, + "source": 215, + "pc": [ + 316, + 317, + 318 + ] + }, + { + "teal": 108, + "source": 215, + "pc": [ + 319 + ] + }, + { + "teal": 111, + "source": 215, + "pc": [ + 320, + 321, + 322 + ] + }, + { + "teal": 112, + "source": 215, + "pc": [ + 323 + ] + }, + { + "teal": 113, + "source": 215, + "pc": [ + 324 + ] + }, + { + "teal": 117, + "source": 215, + "pc": [ + 325, + 326, + 327 + ] + }, + { + "teal": 121, + "source": 217, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 122, + "source": 217, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 123, + "source": 217, + "pc": [ + 332 + ] + }, + { + "teal": 124, + "source": 217, + "pc": [ + 333 + ] + }, + { + "teal": 125, + "source": 215, + "pc": [ + 334 + ] + }, + { + "teal": 130, + "source": 220, + "pc": [ + 335, + 336, + 337 + ] + }, + { + "teal": 131, + "source": 220, + "pc": [ + 338, + 339, + 340 + ] + }, + { + "teal": 134, + "source": 220, + "pc": [ + 341, + 342, + 343 + ] + }, + { + "teal": 135, + "source": 220, + "pc": [ + 344 + ] + }, + { + "teal": 138, + "source": 220, + "pc": [ + 345, + 346, + 347 + ] + }, + { + "teal": 139, + "source": 220, + "pc": [ + 348 + ] + }, + { + "teal": 140, + "source": 220, + "pc": [ + 349 + ] + }, + { + "teal": 144, + "source": 220, + "pc": [ + 350, + 351, + 352 + ] + }, + { + "teal": 148, + "source": 221, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 149, + "source": 221, + "pc": [ + 355 + ] + }, + { + "teal": 150, + "source": 221, + "pc": [ + 356 + ] + }, + { + "teal": 151, + "source": 221, + "pc": [ + 357 + ] + }, + { + "teal": 152, + "source": 221, + "pc": [ + 358 + ] + }, + { + "teal": 153, + "source": 221, + "pc": [ + 359 + ] + }, + { + "teal": 157, + "source": 222, + "pc": [ + 360, + 361 + ] + }, + { + "teal": 158, + "source": 222, + "pc": [ + 362, + 363 + ] + }, + { + "teal": 159, + "source": 222, + "pc": [ + 364, + 365 + ] + }, + { + "teal": 160, + "source": 222, + "pc": [ + 366 + ] + }, + { + "teal": 161, + "source": 220, + "pc": [ + 367 + ] + }, + { + "teal": 166, + "source": 225, + "pc": [ + 368, + 369, + 370 + ] + }, + { + "teal": 167, + "source": 225, + "pc": [ + 371 + ] + }, + { + "teal": 168, + "source": 225, + "pc": [ + 372 + ] + }, + { + "teal": 172, + "source": 225, + "pc": [ + 373, + 374, + 375 + ] + }, + { + "teal": 176, + "source": 226, + "pc": [ + 376, + 377 + ] + }, + { + "teal": 177, + "source": 226, + "pc": [ + 378 + ] + }, + { + "teal": 178, + "source": 226, + "pc": [ + 379, + 380 + ] + }, + { + "teal": 179, + "source": 226, + "pc": [ + 381 + ] + }, + { + "teal": 180, + "source": 226, + "pc": [ + 382, + 383 + ] + }, + { + "teal": 181, + "source": 226, + "pc": [ + 384 + ] + }, + { + "teal": 182, + "source": 226, + "pc": [ + 385 + ] + }, + { + "teal": 183, + "source": 225, + "pc": [ + 386 + ] + }, + { + "teal": 188, + "source": 232, + "pc": [ + 387, + 388, + 389 + ] + }, + { + "teal": 189, + "source": 232, + "pc": [ + 390 + ] + }, + { + "teal": 190, + "source": 232, + "pc": [ + 391 + ] + }, + { + "teal": 196, + "source": 232, + "pc": [ + 392, + 393, + 394 + ] + }, + { + "teal": 197, + "source": 232, + "pc": [ + 395 + ] + }, + { + "teal": 202, + "source": 243, + "pc": [ + 396 + ] + }, + { + "teal": 205, + "source": 243, + "pc": [ + 397, + 398, + 399 + ] + }, + { + "teal": 206, + "source": 243, + "pc": [ + 400 + ] + }, + { + "teal": 207, + "source": 243, + "pc": [ + 401 + ] + }, + { + "teal": 208, + "source": 243, + "pc": [ + 402 + ] + }, + { + "teal": 209, + "source": 243, + "pc": [ + 403 + ] + }, + { + "teal": 221, + "source": 243, + "pc": [ + 404, + 405, + 406 + ] + }, + { + "teal": 244, + "source": 247, + "pc": [ + 407, + 408, + 409 + ] + }, + { + "teal": 245, + "source": 247, + "pc": [ + 410, + 411, + 412 + ] + }, + { + "teal": 246, + "source": 247, + "pc": [ + 413 + ] + }, + { + "teal": 247, + "source": 257, + "pc": [ + 414, + 415 + ] + }, + { + "teal": 248, + "source": 256, + "pc": [ + 416, + 417 + ] + }, + { + "teal": 249, + "source": 255, + "pc": [ + 418 + ] + }, + { + "teal": 250, + "source": 255, + "pc": [ + 419, + 420 + ] + }, + { + "teal": 251, + "source": 252, + "pc": [ + 421, + 422 + ] + }, + { + "teal": 252, + "source": 249, + "pc": [ + 423 + ] + }, + { + "teal": 253, + "source": 248, + "pc": [ + 424, + 425, + 426 + ] + }, + { + "teal": 254, + "source": 248, + "pc": [ + 427 + ] + }, + { + "teal": 255, + "source": 248, + "pc": [ + 428 + ] + }, + { + "teal": 256, + "source": 260, + "pc": [ + 429, + 430 + ] + }, + { + "teal": 257, + "source": 261, + "pc": [ + 431, + 432, + 433 + ] + }, + { + "teal": 258, + "source": 261, + "pc": [ + 434, + 435, + 436 + ] + }, + { + "teal": 259, + "source": 260, + "pc": [ + 437 + ] + }, + { + "teal": 260, + "source": 260, + "pc": [ + 438 + ] + }, + { + "teal": 261, + "source": 260, + "pc": [ + 439 + ] + }, + { + "teal": 262, + "source": 264, + "pc": [ + 440, + 441, + 442 + ] + }, + { + "teal": 263, + "source": 264, + "pc": [ + 443, + 444, + 445 + ] + }, + { + "teal": 264, + "source": 264, + "pc": [ + 446 + ] + }, + { + "teal": 265, + "source": 264, + "pc": [ + 447 + ] + }, + { + "teal": 266, + "source": 243, + "pc": [ + 448 + ] + }, + { + "teal": 271, + "source": 271, + "pc": [ + 449 + ] + }, + { + "teal": 274, + "source": 271, + "pc": [ + 450, + 451, + 452 + ] + }, + { + "teal": 275, + "source": 271, + "pc": [ + 453 + ] + }, + { + "teal": 276, + "source": 271, + "pc": [ + 454 + ] + }, + { + "teal": 277, + "source": 271, + "pc": [ + 455 + ] + }, + { + "teal": 278, + "source": 271, + "pc": [ + 456 + ] + }, + { + "teal": 284, + "source": 271, + "pc": [ + 457, + 458, + 459 + ] + }, + { + "teal": 300, + "source": 277, + "pc": [ + 460, + 461, + 462, + 463, + 464, + 465, + 466, + 467, + 468, + 469, + 470, + 471, + 472, + 473, + 474, + 475, + 476, + 477, + 478, + 479, + 480, + 481, + 482, + 483, + 484, + 485, + 486, + 487, + 488, + 489, + 490, + 491, + 492, + 493, + 494, + 495, + 496, + 497, + 498, + 499, + 500, + 501 + ] + }, + { + "teal": 301, + "source": 278, + "pc": [ + 502, + 503, + 504 + ] + }, + { + "teal": 302, + "source": 278, + "pc": [ + 505 + ] + }, + { + "teal": 303, + "source": 278, + "pc": [ + 506 + ] + }, + { + "teal": 304, + "source": 279, + "pc": [ + 507, + 508, + 509 + ] + }, + { + "teal": 305, + "source": 279, + "pc": [ + 510 + ] + }, + { + "teal": 306, + "source": 279, + "pc": [ + 511 + ] + }, + { + "teal": 307, + "source": 280, + "pc": [ + 512, + 513, + 514 + ] + }, + { + "teal": 308, + "source": 280, + "pc": [ + 515 + ] + }, + { + "teal": 309, + "source": 280, + "pc": [ + 516 + ] + }, + { + "teal": 310, + "source": 281, + "pc": [ + 517, + 518, + 519, + 520, + 521, + 522, + 523, + 524, + 525, + 526 + ] + }, + { + "teal": 311, + "source": 281, + "pc": [ + 527 + ] + }, + { + "teal": 312, + "source": 282, + "pc": [ + 528, + 529, + 530, + 531, + 532, + 533, + 534, + 535, + 536, + 537 + ] + }, + { + "teal": 313, + "source": 282, + "pc": [ + 538 + ] + }, + { + "teal": 314, + "source": 283, + "pc": [ + 539, + 540, + 541, + 542, + 543, + 544, + 545, + 546, + 547, + 548 + ] + }, + { + "teal": 315, + "source": 283, + "pc": [ + 549 + ] + }, + { + "teal": 316, + "source": 271, + "pc": [ + 550 + ] + }, + { + "teal": 321, + "source": 291, + "pc": [ + 551 + ] + }, + { + "teal": 324, + "source": 291, + "pc": [ + 552, + 553, + 554 + ] + }, + { + "teal": 325, + "source": 291, + "pc": [ + 555 + ] + }, + { + "teal": 326, + "source": 291, + "pc": [ + 556 + ] + }, + { + "teal": 327, + "source": 291, + "pc": [ + 557 + ] + }, + { + "teal": 328, + "source": 291, + "pc": [ + 558 + ] + }, + { + "teal": 329, + "source": 291, + "pc": [ + 559 + ] + }, + { + "teal": 335, + "source": 291, + "pc": [ + 560, + 561, + 562 + ] + }, + { + "teal": 339, + "source": 292, + "pc": [ + 563, + 564 + ] + }, + { + "teal": 340, + "source": 292, + "pc": [ + 565 + ] + }, + { + "teal": 341, + "source": 291, + "pc": [ + 566 + ] + }, + { + "teal": 346, + "source": 296, + "pc": [ + 567 + ] + }, + { + "teal": 349, + "source": 296, + "pc": [ + 568, + 569, + 570 + ] + }, + { + "teal": 350, + "source": 296, + "pc": [ + 571 + ] + }, + { + "teal": 353, + "source": 296, + "pc": [ + 572, + 573, + 574 + ] + }, + { + "teal": 354, + "source": 296, + "pc": [ + 575 + ] + }, + { + "teal": 355, + "source": 296, + "pc": [ + 576 + ] + }, + { + "teal": 356, + "source": 296, + "pc": [ + 577 + ] + }, + { + "teal": 357, + "source": 296, + "pc": [ + 578 + ] + }, + { + "teal": 361, + "source": 296, + "pc": [ + 579, + 580, + 581 + ] + }, + { + "teal": 365, + "source": 297, + "pc": [ + 582 + ] + }, + { + "teal": 366, + "source": 297, + "pc": [ + 583, + 584 + ] + }, + { + "teal": 367, + "source": 297, + "pc": [ + 585 + ] + }, + { + "teal": 368, + "source": 297, + "pc": [ + 586, + 587 + ] + }, + { + "teal": 369, + "source": 297, + "pc": [ + 588 + ] + }, + { + "teal": 370, + "source": 297, + "pc": [ + 589 + ] + }, + { + "teal": 371, + "source": 297, + "pc": [ + 590, + 591 + ] + }, + { + "teal": 372, + "source": 297, + "pc": [ + 592 + ] + }, + { + "teal": 373, + "source": 296, + "pc": [ + 593 + ] + }, + { + "teal": 378, + "source": 301, + "pc": [ + 594 + ] + }, + { + "teal": 381, + "source": 301, + "pc": [ + 595, + 596, + 597 + ] + }, + { + "teal": 382, + "source": 301, + "pc": [ + 598 + ] + }, + { + "teal": 385, + "source": 301, + "pc": [ + 599, + 600, + 601 + ] + }, + { + "teal": 386, + "source": 301, + "pc": [ + 602 + ] + }, + { + "teal": 387, + "source": 301, + "pc": [ + 603 + ] + }, + { + "teal": 388, + "source": 301, + "pc": [ + 604 + ] + }, + { + "teal": 389, + "source": 301, + "pc": [ + 605 + ] + }, + { + "teal": 393, + "source": 301, + "pc": [ + 606, + 607, + 608 + ] + }, + { + "teal": 397, + "source": 302, + "pc": [ + 609, + 610 + ] + }, + { + "teal": 398, + "source": 302, + "pc": [ + 611, + 612 + ] + }, + { + "teal": 399, + "source": 302, + "pc": [ + 613 + ] + }, + { + "teal": 400, + "source": 302, + "pc": [ + 614, + 615 + ] + }, + { + "teal": 401, + "source": 302, + "pc": [ + 616 + ] + }, + { + "teal": 402, + "source": 302, + "pc": [ + 617 + ] + }, + { + "teal": 403, + "source": 302, + "pc": [ + 618, + 619 + ] + }, + { + "teal": 404, + "source": 302, + "pc": [ + 620 + ] + }, + { + "teal": 405, + "source": 301, + "pc": [ + 621 + ] + }, + { + "teal": 410, + "source": 306, + "pc": [ + 622 + ] + }, + { + "teal": 413, + "source": 306, + "pc": [ + 623, + 624, + 625 + ] + }, + { + "teal": 414, + "source": 306, + "pc": [ + 626 + ] + }, + { + "teal": 417, + "source": 306, + "pc": [ + 627, + 628, + 629 + ] + }, + { + "teal": 418, + "source": 306, + "pc": [ + 630 + ] + }, + { + "teal": 419, + "source": 306, + "pc": [ + 631 + ] + }, + { + "teal": 420, + "source": 306, + "pc": [ + 632 + ] + }, + { + "teal": 421, + "source": 306, + "pc": [ + 633 + ] + }, + { + "teal": 425, + "source": 306, + "pc": [ + 634, + 635, + 636 + ] + }, + { + "teal": 429, + "source": 307, + "pc": [ + 637 + ] + }, + { + "teal": 430, + "source": 307, + "pc": [ + 638, + 639 + ] + }, + { + "teal": 431, + "source": 307, + "pc": [ + 640 + ] + }, + { + "teal": 432, + "source": 307, + "pc": [ + 641, + 642 + ] + }, + { + "teal": 433, + "source": 307, + "pc": [ + 643 + ] + }, + { + "teal": 434, + "source": 307, + "pc": [ + 644 + ] + }, + { + "teal": 435, + "source": 307, + "pc": [ + 645, + 646 + ] + }, + { + "teal": 436, + "source": 307, + "pc": [ + 647 + ] + }, + { + "teal": 437, + "source": 307, + "pc": [ + 648, + 649 + ] + }, + { + "teal": 438, + "source": 307, + "pc": [ + 650, + 651 + ] + }, + { + "teal": 439, + "source": 307, + "pc": [ + 652 + ] + }, + { + "teal": 440, + "source": 307, + "pc": [ + 653, + 654 + ] + }, + { + "teal": 441, + "source": 307, + "pc": [ + 655 + ] + }, + { + "teal": 442, + "source": 307, + "pc": [ + 656 + ] + }, + { + "teal": 443, + "source": 307, + "pc": [ + 657, + 658 + ] + }, + { + "teal": 444, + "source": 307, + "pc": [ + 659 + ] + }, + { + "teal": 445, + "source": 307, + "pc": [ + 660 + ] + }, + { + "teal": 446, + "source": 306, + "pc": [ + 661 + ] + }, + { + "teal": 451, + "source": 317, + "pc": [ + 662 + ] + }, + { + "teal": 454, + "source": 317, + "pc": [ + 663, + 664, + 665 + ] + }, + { + "teal": 455, + "source": 317, + "pc": [ + 666 + ] + }, + { + "teal": 458, + "source": 317, + "pc": [ + 667, + 668, + 669 + ] + }, + { + "teal": 459, + "source": 317, + "pc": [ + 670 + ] + }, + { + "teal": 460, + "source": 317, + "pc": [ + 671 + ] + }, + { + "teal": 461, + "source": 317, + "pc": [ + 672, + 673 + ] + }, + { + "teal": 462, + "source": 317, + "pc": [ + 674 + ] + }, + { + "teal": 463, + "source": 317, + "pc": [ + 675 + ] + }, + { + "teal": 464, + "source": 317, + "pc": [ + 676, + 677, + 678 + ] + }, + { + "teal": 465, + "source": 317, + "pc": [ + 679 + ] + }, + { + "teal": 466, + "source": 317, + "pc": [ + 680 + ] + }, + { + "teal": 467, + "source": 317, + "pc": [ + 681 + ] + }, + { + "teal": 468, + "source": 317, + "pc": [ + 682 + ] + }, + { + "teal": 469, + "source": 317, + "pc": [ + 683 + ] + }, + { + "teal": 470, + "source": 317, + "pc": [ + 684 + ] + }, + { + "teal": 479, + "source": 317, + "pc": [ + 685, + 686, + 687 + ] + }, + { + "teal": 482, + "source": 317, + "pc": [ + 688 + ] + }, + { + "teal": 483, + "source": 317, + "pc": [ + 689, + 690 + ] + }, + { + "teal": 487, + "source": 318, + "pc": [ + 691 + ] + }, + { + "teal": 488, + "source": 318, + "pc": [ + 692, + 693 + ] + }, + { + "teal": 492, + "source": 319, + "pc": [ + 694, + 695 + ] + }, + { + "teal": 493, + "source": 319, + "pc": [ + 696, + 697 + ] + }, + { + "teal": 494, + "source": 319, + "pc": [ + 698 + ] + }, + { + "teal": 495, + "source": 319, + "pc": [ + 699, + 700 + ] + }, + { + "teal": 496, + "source": 319, + "pc": [ + 701 + ] + }, + { + "teal": 497, + "source": 319, + "pc": [ + 702 + ] + }, + { + "teal": 498, + "source": 319, + "pc": [ + 703, + 704 + ] + }, + { + "teal": 499, + "source": 319, + "pc": [ + 705 + ] + }, + { + "teal": 500, + "source": 319, + "pc": [ + 706, + 707 + ] + }, + { + "teal": 504, + "source": 320, + "pc": [ + 708 + ] + }, + { + "teal": 505, + "source": 320, + "pc": [ + 709, + 710 + ] + }, + { + "teal": 510, + "source": 320, + "pc": [ + 711, + 712 + ] + }, + { + "teal": 511, + "source": 320, + "pc": [ + 713 + ] + }, + { + "teal": 512, + "source": 320, + "pc": [ + 714 + ] + }, + { + "teal": 513, + "source": 320, + "pc": [ + 715, + 716, + 717 + ] + }, + { + "teal": 518, + "source": 321, + "pc": [ + 718, + 719 + ] + }, + { + "teal": 519, + "source": 321, + "pc": [ + 720, + 721 + ] + }, + { + "teal": 520, + "source": 321, + "pc": [ + 722, + 723 + ] + }, + { + "teal": 521, + "source": 321, + "pc": [ + 724 + ] + }, + { + "teal": 522, + "source": 321, + "pc": [ + 725 + ] + }, + { + "teal": 523, + "source": 321, + "pc": [ + 726 + ] + }, + { + "teal": 524, + "source": 321, + "pc": [ + 727 + ] + }, + { + "teal": 525, + "source": 321, + "pc": [ + 728 + ] + }, + { + "teal": 526, + "source": 321, + "pc": [ + 729 + ] + }, + { + "teal": 527, + "source": 321, + "pc": [ + 730 + ] + }, + { + "teal": 528, + "source": 321, + "pc": [ + 731 + ] + }, + { + "teal": 529, + "source": 321, + "pc": [ + 732, + 733, + 734 + ] + }, + { + "teal": 532, + "source": 323, + "pc": [ + 735, + 736, + 737 + ] + }, + { + "teal": 537, + "source": 325, + "pc": [ + 738, + 739 + ] + }, + { + "teal": 538, + "source": 325, + "pc": [ + 740, + 741 + ] + }, + { + "teal": 539, + "source": 325, + "pc": [ + 742, + 743 + ] + }, + { + "teal": 540, + "source": 325, + "pc": [ + 744, + 745 + ] + }, + { + "teal": 541, + "source": 325, + "pc": [ + 746 + ] + }, + { + "teal": 542, + "source": 325, + "pc": [ + 747, + 748 + ] + }, + { + "teal": 543, + "source": 325, + "pc": [ + 749 + ] + }, + { + "teal": 544, + "source": 325, + "pc": [ + 750 + ] + }, + { + "teal": 545, + "source": 325, + "pc": [ + 751, + 752 + ] + }, + { + "teal": 550, + "source": 320, + "pc": [ + 753, + 754 + ] + }, + { + "teal": 551, + "source": 320, + "pc": [ + 755 + ] + }, + { + "teal": 552, + "source": 320, + "pc": [ + 756 + ] + }, + { + "teal": 553, + "source": 320, + "pc": [ + 757, + 758 + ] + }, + { + "teal": 554, + "source": 320, + "pc": [ + 759, + 760, + 761 + ] + }, + { + "teal": 559, + "source": 327, + "pc": [ + 762, + 763 + ] + }, + { + "teal": 562, + "source": 317, + "pc": [ + 764, + 765 + ] + }, + { + "teal": 565, + "source": 317, + "pc": [ + 766, + 767 + ] + }, + { + "teal": 566, + "source": 317, + "pc": [ + 768 + ] + }, + { + "teal": 571, + "source": 334, + "pc": [ + 769 + ] + }, + { + "teal": 574, + "source": 334, + "pc": [ + 770, + 771, + 772 + ] + }, + { + "teal": 575, + "source": 334, + "pc": [ + 773 + ] + }, + { + "teal": 578, + "source": 334, + "pc": [ + 774, + 775, + 776 + ] + }, + { + "teal": 579, + "source": 334, + "pc": [ + 777 + ] + }, + { + "teal": 582, + "source": 334, + "pc": [ + 778, + 779, + 780 + ] + }, + { + "teal": 583, + "source": 334, + "pc": [ + 781 + ] + }, + { + "teal": 584, + "source": 334, + "pc": [ + 782 + ] + }, + { + "teal": 585, + "source": 334, + "pc": [ + 783 + ] + }, + { + "teal": 586, + "source": 334, + "pc": [ + 784 + ] + }, + { + "teal": 587, + "source": 334, + "pc": [ + 785 + ] + }, + { + "teal": 591, + "source": 334, + "pc": [ + 786, + 787, + 788 + ] + }, + { + "teal": 598, + "source": 336, + "pc": [ + 789, + 790 + ] + }, + { + "teal": 599, + "source": 336, + "pc": [ + 791 + ] + }, + { + "teal": 600, + "source": 336, + "pc": [ + 792 + ] + }, + { + "teal": 601, + "source": 336, + "pc": [ + 793 + ] + }, + { + "teal": 602, + "source": 336, + "pc": [ + 794, + 795, + 796 + ] + }, + { + "teal": 603, + "source": 336, + "pc": [ + 797, + 798 + ] + }, + { + "teal": 604, + "source": 336, + "pc": [ + 799 + ] + }, + { + "teal": 605, + "source": 336, + "pc": [ + 800 + ] + }, + { + "teal": 606, + "source": 336, + "pc": [ + 801 + ] + }, + { + "teal": 610, + "source": 335, + "errorMessage": "pool id must be between 1 and number of pools for this validator", + "pc": [ + 802 + ] + }, + { + "teal": 614, + "source": 339, + "pc": [ + 803, + 804 + ] + }, + { + "teal": 615, + "source": 339, + "pc": [ + 805, + 806 + ] + }, + { + "teal": 616, + "source": 339, + "pc": [ + 807 + ] + }, + { + "teal": 617, + "source": 339, + "pc": [ + 808 + ] + }, + { + "teal": 618, + "source": 339, + "pc": [ + 809, + 810 + ] + }, + { + "teal": 619, + "source": 339, + "pc": [ + 811 + ] + }, + { + "teal": 620, + "source": 339, + "pc": [ + 812 + ] + }, + { + "teal": 621, + "source": 339, + "pc": [ + 813 + ] + }, + { + "teal": 622, + "source": 339, + "pc": [ + 814 + ] + }, + { + "teal": 623, + "source": 339, + "pc": [ + 815 + ] + }, + { + "teal": 624, + "source": 339, + "pc": [ + 816 + ] + }, + { + "teal": 625, + "source": 339, + "pc": [ + 817, + 818 + ] + }, + { + "teal": 626, + "source": 339, + "pc": [ + 819 + ] + }, + { + "teal": 627, + "source": 339, + "pc": [ + 820 + ] + }, + { + "teal": 628, + "source": 339, + "pc": [ + 821, + 822 + ] + }, + { + "teal": 629, + "source": 339, + "pc": [ + 823 + ] + }, + { + "teal": 630, + "source": 339, + "pc": [ + 824 + ] + }, + { + "teal": 631, + "source": 334, + "pc": [ + 825 + ] + }, + { + "teal": 636, + "source": 343, + "pc": [ + 826 + ] + }, + { + "teal": 639, + "source": 343, + "pc": [ + 827, + 828, + 829 + ] + }, + { + "teal": 640, + "source": 343, + "pc": [ + 830 + ] + }, + { + "teal": 641, + "source": 343, + "pc": [ + 831 + ] + }, + { + "teal": 642, + "source": 343, + "pc": [ + 832 + ] + }, + { + "teal": 643, + "source": 343, + "pc": [ + 833 + ] + }, + { + "teal": 646, + "source": 343, + "errorMessage": "argument 0 (poolKey) for getPoolInfo must be a (uint64,uint64,uint64)", + "pc": [ + 834 + ] + }, + { + "teal": 649, + "source": 343, + "pc": [ + 835, + 836, + 837 + ] + }, + { + "teal": 650, + "source": 343, + "pc": [ + 838 + ] + }, + { + "teal": 651, + "source": 343, + "pc": [ + 839 + ] + }, + { + "teal": 652, + "source": 343, + "pc": [ + 840 + ] + }, + { + "teal": 653, + "source": 343, + "pc": [ + 841 + ] + }, + { + "teal": 657, + "source": 343, + "pc": [ + 842, + 843, + 844 + ] + }, + { + "teal": 661, + "source": 344, + "pc": [ + 845, + 846 + ] + }, + { + "teal": 662, + "source": 344, + "pc": [ + 847, + 848 + ] + }, + { + "teal": 663, + "source": 344, + "pc": [ + 849, + 850, + 851 + ] + }, + { + "teal": 664, + "source": 344, + "pc": [ + 852 + ] + }, + { + "teal": 665, + "source": 344, + "pc": [ + 853 + ] + }, + { + "teal": 666, + "source": 344, + "pc": [ + 854 + ] + }, + { + "teal": 667, + "source": 344, + "pc": [ + 855, + 856 + ] + }, + { + "teal": 668, + "source": 344, + "pc": [ + 857 + ] + }, + { + "teal": 669, + "source": 344, + "pc": [ + 858 + ] + }, + { + "teal": 670, + "source": 344, + "pc": [ + 859, + 860 + ] + }, + { + "teal": 671, + "source": 344, + "pc": [ + 861 + ] + }, + { + "teal": 672, + "source": 344, + "pc": [ + 862, + 863 + ] + }, + { + "teal": 673, + "source": 344, + "pc": [ + 864, + 865, + 866 + ] + }, + { + "teal": 674, + "source": 344, + "pc": [ + 867 + ] + }, + { + "teal": 675, + "source": 344, + "pc": [ + 868 + ] + }, + { + "teal": 676, + "source": 344, + "pc": [ + 869 + ] + }, + { + "teal": 677, + "source": 344, + "pc": [ + 870, + 871 + ] + }, + { + "teal": 678, + "source": 344, + "pc": [ + 872 + ] + }, + { + "teal": 679, + "source": 343, + "pc": [ + 873 + ] + }, + { + "teal": 684, + "source": 354, + "pc": [ + 874 + ] + }, + { + "teal": 687, + "source": 354, + "pc": [ + 875, + 876, + 877 + ] + }, + { + "teal": 688, + "source": 354, + "pc": [ + 878 + ] + }, + { + "teal": 691, + "source": 354, + "pc": [ + 879, + 880, + 881 + ] + }, + { + "teal": 692, + "source": 354, + "pc": [ + 882 + ] + }, + { + "teal": 693, + "source": 354, + "pc": [ + 883 + ] + }, + { + "teal": 694, + "source": 354, + "pc": [ + 884 + ] + }, + { + "teal": 695, + "source": 354, + "pc": [ + 885 + ] + }, + { + "teal": 696, + "source": 354, + "pc": [ + 886 + ] + }, + { + "teal": 706, + "source": 354, + "pc": [ + 887, + 888, + 889 + ] + }, + { + "teal": 709, + "source": 354, + "pc": [ + 890 + ] + }, + { + "teal": 710, + "source": 354, + "pc": [ + 891, + 892 + ] + }, + { + "teal": 714, + "source": 355, + "pc": [ + 893, + 894 + ] + }, + { + "teal": 715, + "source": 355, + "pc": [ + 895, + 896 + ] + }, + { + "teal": 716, + "source": 355, + "pc": [ + 897 + ] + }, + { + "teal": 717, + "source": 355, + "pc": [ + 898, + 899 + ] + }, + { + "teal": 718, + "source": 355, + "pc": [ + 900 + ] + }, + { + "teal": 719, + "source": 355, + "pc": [ + 901 + ] + }, + { + "teal": 720, + "source": 355, + "pc": [ + 902, + 903 + ] + }, + { + "teal": 721, + "source": 355, + "pc": [ + 904 + ] + }, + { + "teal": 722, + "source": 355, + "pc": [ + 905 + ] + }, + { + "teal": 723, + "source": 355, + "pc": [ + 906, + 907 + ] + }, + { + "teal": 727, + "source": 356, + "pc": [ + 908, + 909, + 910 + ] + }, + { + "teal": 728, + "source": 356, + "pc": [ + 911, + 912 + ] + }, + { + "teal": 729, + "source": 356, + "pc": [ + 913 + ] + }, + { + "teal": 730, + "source": 356, + "pc": [ + 914, + 915 + ] + }, + { + "teal": 734, + "source": 357, + "pc": [ + 916, + 917, + 918 + ] + }, + { + "teal": 735, + "source": 357, + "pc": [ + 919 + ] + }, + { + "teal": 736, + "source": 357, + "pc": [ + 920 + ] + }, + { + "teal": 737, + "source": 357, + "pc": [ + 921, + 922 + ] + }, + { + "teal": 738, + "source": 357, + "pc": [ + 923 + ] + }, + { + "teal": 739, + "source": 357, + "pc": [ + 924 + ] + }, + { + "teal": 740, + "source": 357, + "pc": [ + 925, + 926 + ] + }, + { + "teal": 741, + "source": 357, + "pc": [ + 927 + ] + }, + { + "teal": 742, + "source": 357, + "pc": [ + 928 + ] + }, + { + "teal": 743, + "source": 357, + "pc": [ + 929, + 930 + ] + }, + { + "teal": 748, + "source": 358, + "pc": [ + 931, + 932 + ] + }, + { + "teal": 749, + "source": 358, + "pc": [ + 933 + ] + }, + { + "teal": 750, + "source": 358, + "pc": [ + 934 + ] + }, + { + "teal": 751, + "source": 358, + "pc": [ + 935, + 936, + 937 + ] + }, + { + "teal": 756, + "source": 359, + "pc": [ + 938, + 939, + 940 + ] + }, + { + "teal": 757, + "source": 359, + "pc": [ + 941, + 942 + ] + }, + { + "teal": 763, + "source": 361, + "pc": [ + 943, + 944 + ] + }, + { + "teal": 764, + "source": 361, + "pc": [ + 945, + 946 + ] + }, + { + "teal": 765, + "source": 361, + "pc": [ + 947 + ] + }, + { + "teal": 766, + "source": 361, + "pc": [ + 948, + 949, + 950 + ] + }, + { + "teal": 771, + "source": 362, + "pc": [ + 951, + 952 + ] + }, + { + "teal": 772, + "source": 362, + "pc": [ + 953, + 954 + ] + }, + { + "teal": 777, + "source": 364, + "pc": [ + 955, + 956 + ] + }, + { + "teal": 780, + "source": 354, + "pc": [ + 957, + 958 + ] + }, + { + "teal": 783, + "source": 354, + "pc": [ + 959, + 960 + ] + }, + { + "teal": 784, + "source": 354, + "pc": [ + 961 + ] + }, + { + "teal": 789, + "source": 372, + "pc": [ + 962 + ] + }, + { + "teal": 792, + "source": 372, + "pc": [ + 963, + 964, + 965 + ] + }, + { + "teal": 793, + "source": 372, + "pc": [ + 966 + ] + }, + { + "teal": 794, + "source": 372, + "pc": [ + 967 + ] + }, + { + "teal": 795, + "source": 372, + "pc": [ + 968, + 969 + ] + }, + { + "teal": 796, + "source": 372, + "pc": [ + 970 + ] + }, + { + "teal": 799, + "source": 372, + "errorMessage": "argument 0 (staker) for doesStakerNeedToPayMBR must be a address", + "pc": [ + 971 + ] + }, + { + "teal": 802, + "source": 372, + "pc": [ + 972, + 973, + 974 + ] + }, + { + "teal": 803, + "source": 372, + "pc": [ + 975, + 976 + ] + }, + { + "teal": 804, + "source": 372, + "pc": [ + 977 + ] + }, + { + "teal": 805, + "source": 372, + "pc": [ + 978, + 979 + ] + }, + { + "teal": 806, + "source": 372, + "pc": [ + 980 + ] + }, + { + "teal": 807, + "source": 372, + "pc": [ + 981 + ] + }, + { + "teal": 808, + "source": 372, + "pc": [ + 982 + ] + }, + { + "teal": 809, + "source": 372, + "pc": [ + 983 + ] + }, + { + "teal": 810, + "source": 372, + "pc": [ + 984 + ] + }, + { + "teal": 817, + "source": 372, + "pc": [ + 985, + 986, + 987 + ] + }, + { + "teal": 821, + "source": 373, + "pc": [ + 988 + ] + }, + { + "teal": 822, + "source": 373, + "pc": [ + 989, + 990 + ] + }, + { + "teal": 823, + "source": 373, + "pc": [ + 991 + ] + }, + { + "teal": 824, + "source": 373, + "pc": [ + 992 + ] + }, + { + "teal": 825, + "source": 373, + "pc": [ + 993 + ] + }, + { + "teal": 826, + "source": 373, + "pc": [ + 994 + ] + }, + { + "teal": 827, + "source": 373, + "pc": [ + 995 + ] + }, + { + "teal": 828, + "source": 372, + "pc": [ + 996 + ] + }, + { + "teal": 833, + "source": 382, + "pc": [ + 997 + ] + }, + { + "teal": 836, + "source": 382, + "pc": [ + 998, + 999, + 1000 + ] + }, + { + "teal": 837, + "source": 382, + "pc": [ + 1001 + ] + }, + { + "teal": 838, + "source": 382, + "pc": [ + 1002 + ] + }, + { + "teal": 839, + "source": 382, + "pc": [ + 1003, + 1004 + ] + }, + { + "teal": 840, + "source": 382, + "pc": [ + 1005 + ] + }, + { + "teal": 843, + "source": 382, + "errorMessage": "argument 0 (staker) for getStakedPoolsForAccount must be a address", + "pc": [ + 1006 + ] + }, + { + "teal": 846, + "source": 382, + "pc": [ + 1007, + 1008, + 1009 + ] + }, + { + "teal": 847, + "source": 382, + "pc": [ + 1010 + ] + }, + { + "teal": 848, + "source": 382, + "pc": [ + 1011 + ] + }, + { + "teal": 849, + "source": 382, + "pc": [ + 1012 + ] + }, + { + "teal": 850, + "source": 382, + "pc": [ + 1013 + ] + }, + { + "teal": 851, + "source": 382, + "pc": [ + 1014 + ] + }, + { + "teal": 852, + "source": 382, + "pc": [ + 1015, + 1016, + 1017 + ] + }, + { + "teal": 853, + "source": 382, + "pc": [ + 1018 + ] + }, + { + "teal": 854, + "source": 382, + "pc": [ + 1019 + ] + }, + { + "teal": 855, + "source": 382, + "pc": [ + 1020 + ] + }, + { + "teal": 856, + "source": 382, + "pc": [ + 1021 + ] + }, + { + "teal": 857, + "source": 382, + "pc": [ + 1022 + ] + }, + { + "teal": 858, + "source": 382, + "pc": [ + 1023 + ] + }, + { + "teal": 867, + "source": 382, + "pc": [ + 1024, + 1025, + 1026 + ] + }, + { + "teal": 870, + "source": 382, + "pc": [ + 1027 + ] + }, + { + "teal": 871, + "source": 382, + "pc": [ + 1028, + 1029 + ] + }, + { + "teal": 876, + "source": 383, + "pc": [ + 1030 + ] + }, + { + "teal": 877, + "source": 383, + "pc": [ + 1031, + 1032 + ] + }, + { + "teal": 878, + "source": 383, + "pc": [ + 1033 + ] + }, + { + "teal": 879, + "source": 383, + "pc": [ + 1034 + ] + }, + { + "teal": 880, + "source": 383, + "pc": [ + 1035 + ] + }, + { + "teal": 881, + "source": 383, + "pc": [ + 1036 + ] + }, + { + "teal": 882, + "source": 383, + "pc": [ + 1037 + ] + }, + { + "teal": 883, + "source": 383, + "pc": [ + 1038, + 1039, + 1040 + ] + }, + { + "teal": 888, + "source": 384, + "pc": [ + 1041 + ] + }, + { + "teal": 889, + "source": 384, + "pc": [ + 1042, + 1043, + 1044 + ] + }, + { + "teal": 894, + "source": 386, + "pc": [ + 1045 + ] + }, + { + "teal": 895, + "source": 386, + "pc": [ + 1046, + 1047 + ] + }, + { + "teal": 899, + "source": 387, + "pc": [ + 1048 + ] + }, + { + "teal": 900, + "source": 387, + "pc": [ + 1049, + 1050 + ] + }, + { + "teal": 901, + "source": 387, + "pc": [ + 1051 + ] + }, + { + "teal": 902, + "source": 387, + "pc": [ + 1052 + ] + }, + { + "teal": 905, + "source": 387, + "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", + "pc": [ + 1053 + ] + }, + { + "teal": 906, + "source": 387, + "pc": [ + 1054, + 1055 + ] + }, + { + "teal": 910, + "source": 388, + "pc": [ + 1056 + ] + }, + { + "teal": 911, + "source": 388, + "pc": [ + 1057, + 1058 + ] + }, + { + "teal": 916, + "source": 388, + "pc": [ + 1059, + 1060 + ] + }, + { + "teal": 917, + "source": 388, + "pc": [ + 1061, + 1062 + ] + }, + { + "teal": 918, + "source": 388, + "pc": [ + 1063 + ] + }, + { + "teal": 919, + "source": 388, + "pc": [ + 1064, + 1065, + 1066 + ] + }, + { + "teal": 924, + "source": 389, + "pc": [ + 1067, + 1068 + ] + }, + { + "teal": 925, + "source": 389, + "pc": [ + 1069, + 1070 + ] + }, + { + "teal": 926, + "source": 389, + "pc": [ + 1071 + ] + }, + { + "teal": 927, + "source": 389, + "pc": [ + 1072 + ] + }, + { + "teal": 928, + "source": 389, + "pc": [ + 1073 + ] + }, + { + "teal": 929, + "source": 389, + "pc": [ + 1074 + ] + }, + { + "teal": 930, + "source": 389, + "pc": [ + 1075 + ] + }, + { + "teal": 931, + "source": 389, + "pc": [ + 1076 + ] + }, + { + "teal": 932, + "source": 389, + "pc": [ + 1077 + ] + }, + { + "teal": 933, + "source": 389, + "pc": [ + 1078 + ] + }, + { + "teal": 934, + "source": 389, + "pc": [ + 1079 + ] + }, + { + "teal": 935, + "source": 389, + "pc": [ + 1080, + 1081, + 1082 + ] + }, + { + "teal": 940, + "source": 390, + "pc": [ + 1083, + 1084 + ] + }, + { + "teal": 941, + "source": 390, + "pc": [ + 1085, + 1086 + ] + }, + { + "teal": 942, + "source": 390, + "pc": [ + 1087, + 1088 + ] + }, + { + "teal": 943, + "source": 390, + "pc": [ + 1089 + ] + }, + { + "teal": 944, + "source": 390, + "pc": [ + 1090 + ] + }, + { + "teal": 945, + "source": 390, + "pc": [ + 1091 + ] + }, + { + "teal": 946, + "source": 390, + "pc": [ + 1092 + ] + }, + { + "teal": 947, + "source": 390, + "pc": [ + 1093 + ] + }, + { + "teal": 948, + "source": 390, + "pc": [ + 1094, + 1095 + ] + }, + { + "teal": 955, + "source": 388, + "pc": [ + 1096, + 1097 + ] + }, + { + "teal": 956, + "source": 388, + "pc": [ + 1098 + ] + }, + { + "teal": 957, + "source": 388, + "pc": [ + 1099 + ] + }, + { + "teal": 958, + "source": 388, + "pc": [ + 1100, + 1101 + ] + }, + { + "teal": 959, + "source": 388, + "pc": [ + 1102, + 1103, + 1104 + ] + }, + { + "teal": 964, + "source": 393, + "pc": [ + 1105, + 1106 + ] + }, + { + "teal": 968, + "source": 382, + "pc": [ + 1107, + 1108 + ] + }, + { + "teal": 971, + "source": 382, + "pc": [ + 1109, + 1110 + ] + }, + { + "teal": 972, + "source": 382, + "pc": [ + 1111 + ] + }, + { + "teal": 977, + "source": 404, + "pc": [ + 1112 + ] + }, + { + "teal": 980, + "source": 404, + "pc": [ + 1113, + 1114, + 1115 + ] + }, + { + "teal": 981, + "source": 404, + "pc": [ + 1116 + ] + }, + { + "teal": 984, + "source": 404, + "pc": [ + 1117, + 1118, + 1119 + ] + }, + { + "teal": 985, + "source": 404, + "pc": [ + 1120 + ] + }, + { + "teal": 986, + "source": 404, + "pc": [ + 1121 + ] + }, + { + "teal": 987, + "source": 404, + "pc": [ + 1122 + ] + }, + { + "teal": 988, + "source": 404, + "pc": [ + 1123 + ] + }, + { + "teal": 998, + "source": 404, + "pc": [ + 1124, + 1125, + 1126 + ] + }, + { + "teal": 1002, + "source": 405, + "pc": [ + 1127, + 1128 + ] + }, + { + "teal": 1003, + "source": 405, + "pc": [ + 1129, + 1130 + ] + }, + { + "teal": 1004, + "source": 405, + "pc": [ + 1131 + ] + }, + { + "teal": 1005, + "source": 405, + "pc": [ + 1132, + 1133 + ] + }, + { + "teal": 1006, + "source": 405, + "pc": [ + 1134 + ] + }, + { + "teal": 1007, + "source": 405, + "pc": [ + 1135 + ] + }, + { + "teal": 1008, + "source": 405, + "pc": [ + 1136, + 1137 + ] + }, + { + "teal": 1009, + "source": 405, + "pc": [ + 1138 + ] + }, + { + "teal": 1010, + "source": 404, + "pc": [ + 1139 + ] + }, + { + "teal": 1015, + "source": 409, + "pc": [ + 1140 + ] + }, + { + "teal": 1018, + "source": 409, + "pc": [ + 1141, + 1142, + 1143 + ] + }, + { + "teal": 1019, + "source": 409, + "pc": [ + 1144 + ] + }, + { + "teal": 1022, + "source": 409, + "pc": [ + 1145, + 1146, + 1147 + ] + }, + { + "teal": 1023, + "source": 409, + "pc": [ + 1148 + ] + }, + { + "teal": 1024, + "source": 409, + "pc": [ + 1149 + ] + }, + { + "teal": 1025, + "source": 409, + "pc": [ + 1150 + ] + }, + { + "teal": 1026, + "source": 409, + "pc": [ + 1151 + ] + }, + { + "teal": 1030, + "source": 409, + "pc": [ + 1152, + 1153, + 1154 + ] + }, + { + "teal": 1034, + "source": 410, + "pc": [ + 1155 + ] + }, + { + "teal": 1035, + "source": 410, + "pc": [ + 1156, + 1157 + ] + }, + { + "teal": 1036, + "source": 410, + "pc": [ + 1158 + ] + }, + { + "teal": 1037, + "source": 410, + "pc": [ + 1159 + ] + }, + { + "teal": 1038, + "source": 410, + "pc": [ + 1160 + ] + }, + { + "teal": 1039, + "source": 410, + "pc": [ + 1161 + ] + }, + { + "teal": 1040, + "source": 410, + "pc": [ + 1162 + ] + }, + { + "teal": 1043, + "source": 410, + "errorMessage": "the specified validator id doesn't exist", + "pc": [ + 1163 + ] + }, + { + "teal": 1047, + "source": 412, + "pc": [ + 1164, + 1165 + ] + }, + { + "teal": 1048, + "source": 412, + "pc": [ + 1166, + 1167 + ] + }, + { + "teal": 1049, + "source": 412, + "pc": [ + 1168 + ] + }, + { + "teal": 1050, + "source": 412, + "pc": [ + 1169, + 1170 + ] + }, + { + "teal": 1051, + "source": 412, + "pc": [ + 1171 + ] + }, + { + "teal": 1052, + "source": 412, + "pc": [ + 1172 + ] + }, + { + "teal": 1053, + "source": 412, + "pc": [ + 1173, + 1174 + ] + }, + { + "teal": 1054, + "source": 412, + "pc": [ + 1175 + ] + }, + { + "teal": 1055, + "source": 409, + "pc": [ + 1176 + ] + }, + { + "teal": 1060, + "source": 415, + "pc": [ + 1177 + ] + }, + { + "teal": 1063, + "source": 415, + "pc": [ + 1178, + 1179, + 1180 + ] + }, + { + "teal": 1064, + "source": 415, + "pc": [ + 1181 + ] + }, + { + "teal": 1065, + "source": 415, + "pc": [ + 1182 + ] + }, + { + "teal": 1066, + "source": 415, + "pc": [ + 1183 + ] + }, + { + "teal": 1067, + "source": 415, + "pc": [ + 1184 + ] + }, + { + "teal": 1068, + "source": 415, + "pc": [ + 1185 + ] + }, + { + "teal": 1072, + "source": 415, + "pc": [ + 1186, + 1187, + 1188 + ] + }, + { + "teal": 1076, + "source": 416, + "pc": [ + 1189, + 1190 + ] + }, + { + "teal": 1077, + "source": 415, + "pc": [ + 1191 + ] + }, + { + "teal": 1082, + "source": 427, + "pc": [ + 1192 + ] + }, + { + "teal": 1085, + "source": 427, + "pc": [ + 1193, + 1194, + 1195 + ] + }, + { + "teal": 1086, + "source": 427, + "pc": [ + 1196 + ] + }, + { + "teal": 1087, + "source": 427, + "pc": [ + 1197 + ] + }, + { + "teal": 1088, + "source": 427, + "pc": [ + 1198, + 1199 + ] + }, + { + "teal": 1089, + "source": 427, + "pc": [ + 1200 + ] + }, + { + "teal": 1092, + "source": 427, + "errorMessage": "argument 0 (config) for addValidator must be a (uint64,address,address,uint64,uint8,address,uint64[4],uint64,uint64,uint64,uint32,uint32,address,uint64,uint64,uint8,uint64,uint64)", + "pc": [ + 1201 + ] + }, + { + "teal": 1095, + "source": 427, + "pc": [ + 1202, + 1203, + 1204 + ] + }, + { + "teal": 1096, + "source": 427, + "pc": [ + 1205, + 1206, + 1207 + ] + }, + { + "teal": 1099, + "source": 427, + "pc": [ + 1208, + 1209 + ] + }, + { + "teal": 1100, + "source": 427, + "pc": [ + 1210 + ] + }, + { + "teal": 1101, + "source": 427, + "pc": [ + 1211 + ] + }, + { + "teal": 1102, + "source": 427, + "pc": [ + 1212 + ] + }, + { + "teal": 1103, + "source": 427, + "pc": [ + 1213, + 1214 + ] + }, + { + "teal": 1104, + "source": 427, + "pc": [ + 1215 + ] + }, + { + "teal": 1105, + "source": 427, + "pc": [ + 1216 + ] + }, + { + "teal": 1108, + "source": 427, + "errorMessage": "argument 2 (mbrPayment) for addValidator must be a pay transaction", + "pc": [ + 1217 + ] + }, + { + "teal": 1111, + "source": 427, + "pc": [ + 1218, + 1219, + 1220 + ] + }, + { + "teal": 1112, + "source": 427, + "pc": [ + 1221 + ] + }, + { + "teal": 1113, + "source": 427, + "pc": [ + 1222 + ] + }, + { + "teal": 1114, + "source": 427, + "pc": [ + 1223 + ] + }, + { + "teal": 1115, + "source": 427, + "pc": [ + 1224 + ] + }, + { + "teal": 1116, + "source": 427, + "pc": [ + 1225 + ] + }, + { + "teal": 1128, + "source": 427, + "pc": [ + 1226, + 1227, + 1228 + ] + }, + { + "teal": 1131, + "source": 427, + "pc": [ + 1229 + ] + }, + { + "teal": 1135, + "source": 428, + "pc": [ + 1230, + 1231 + ] + }, + { + "teal": 1136, + "source": 428, + "pc": [ + 1232, + 1233, + 1234 + ] + }, + { + "teal": 1140, + "source": 429, + "pc": [ + 1235, + 1236 + ] + }, + { + "teal": 1141, + "source": 429, + "pc": [ + 1237, + 1238, + 1239 + ] + }, + { + "teal": 1142, + "source": 429, + "pc": [ + 1240, + 1241 + ] + }, + { + "teal": 1143, + "source": 429, + "pc": [ + 1242 + ] + }, + { + "teal": 1144, + "source": 429, + "pc": [ + 1243 + ] + }, + { + "teal": 1148, + "source": 430, + "pc": [ + 1244, + 1245 + ] + }, + { + "teal": 1149, + "source": 430, + "pc": [ + 1246, + 1247, + 1248 + ] + }, + { + "teal": 1150, + "source": 430, + "pc": [ + 1249, + 1250 + ] + }, + { + "teal": 1151, + "source": 430, + "pc": [ + 1251 + ] + }, + { + "teal": 1152, + "source": 430, + "pc": [ + 1252 + ] + }, + { + "teal": 1156, + "source": 431, + "pc": [ + 1253, + 1254 + ] + }, + { + "teal": 1157, + "source": 431, + "pc": [ + 1255, + 1256 + ] + }, + { + "teal": 1158, + "source": 431, + "pc": [ + 1257, + 1258, + 1259 + ] + }, + { + "teal": 1159, + "source": 431, + "pc": [ + 1260 + ] + }, + { + "teal": 1162, + "source": 431, + "errorMessage": "sender must be owner to add new validator", + "pc": [ + 1261 + ] + }, + { + "teal": 1167, + "source": 433, + "pc": [ + 1262, + 1263 + ] + }, + { + "teal": 1168, + "source": 433, + "pc": [ + 1264, + 1265 + ] + }, + { + "teal": 1169, + "source": 433, + "pc": [ + 1266, + 1267, + 1268 + ] + }, + { + "teal": 1170, + "source": 433, + "pc": [ + 1269, + 1270, + 1271 + ] + }, + { + "teal": 1171, + "source": 433, + "pc": [ + 1272 + ] + }, + { + "teal": 1172, + "source": 433, + "pc": [ + 1273 + ] + }, + { + "teal": 1175, + "source": 433, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"this.getMbrAmounts().addValidatorMbr\"}", + "pc": [ + 1274 + ] + }, + { + "teal": 1179, + "source": 435, + "pc": [ + 1275, + 1276 + ] + }, + { + "teal": 1180, + "source": 435, + "pc": [ + 1277, + 1278 + ] + }, + { + "teal": 1181, + "source": 435, + "pc": [ + 1279, + 1280, + 1281, + 1282, + 1283 + ] + }, + { + "teal": 1182, + "source": 435, + "pc": [ + 1284 + ] + }, + { + "teal": 1185, + "source": 435, + "errorMessage": "fee must be 10 ALGO or more to prevent spamming of validators", + "pc": [ + 1285 + ] + }, + { + "teal": 1189, + "source": 438, + "pc": [ + 1286, + 1287 + ] + }, + { + "teal": 1190, + "source": 438, + "pc": [ + 1288 + ] + }, + { + "teal": 1191, + "source": 438, + "pc": [ + 1289 + ] + }, + { + "teal": 1192, + "source": 438, + "pc": [ + 1290 + ] + }, + { + "teal": 1193, + "source": 438, + "pc": [ + 1291, + 1292 + ] + }, + { + "teal": 1197, + "source": 439, + "pc": [ + 1293, + 1294 + ] + }, + { + "teal": 1198, + "source": 439, + "pc": [ + 1295, + 1296 + ] + }, + { + "teal": 1199, + "source": 439, + "pc": [ + 1297 + ] + }, + { + "teal": 1203, + "source": 441, + "pc": [ + 1298 + ] + }, + { + "teal": 1204, + "source": 441, + "pc": [ + 1299, + 1300 + ] + }, + { + "teal": 1205, + "source": 441, + "pc": [ + 1301 + ] + }, + { + "teal": 1206, + "source": 441, + "pc": [ + 1302 + ] + }, + { + "teal": 1207, + "source": 441, + "pc": [ + 1303, + 1304, + 1305 + ] + }, + { + "teal": 1208, + "source": 441, + "pc": [ + 1306 + ] + }, + { + "teal": 1209, + "source": 441, + "pc": [ + 1307 + ] + }, + { + "teal": 1213, + "source": 442, + "pc": [ + 1308 + ] + }, + { + "teal": 1214, + "source": 442, + "pc": [ + 1309, + 1310 + ] + }, + { + "teal": 1215, + "source": 442, + "pc": [ + 1311 + ] + }, + { + "teal": 1216, + "source": 442, + "pc": [ + 1312, + 1313 + ] + }, + { + "teal": 1217, + "source": 442, + "pc": [ + 1314 + ] + }, + { + "teal": 1218, + "source": 442, + "pc": [ + 1315 + ] + }, + { + "teal": 1219, + "source": 442, + "pc": [ + 1316, + 1317 + ] + }, + { + "teal": 1220, + "source": 442, + "pc": [ + 1318 + ] + }, + { + "teal": 1224, + "source": 443, + "pc": [ + 1319 + ] + }, + { + "teal": 1225, + "source": 443, + "pc": [ + 1320, + 1321 + ] + }, + { + "teal": 1226, + "source": 443, + "pc": [ + 1322 + ] + }, + { + "teal": 1227, + "source": 443, + "pc": [ + 1323 + ] + }, + { + "teal": 1228, + "source": 443, + "pc": [ + 1324, + 1325 + ] + }, + { + "teal": 1229, + "source": 443, + "pc": [ + 1326 + ] + }, + { + "teal": 1230, + "source": 443, + "pc": [ + 1327 + ] + }, + { + "teal": 1231, + "source": 443, + "pc": [ + 1328, + 1329 + ] + }, + { + "teal": 1232, + "source": 443, + "pc": [ + 1330 + ] + }, + { + "teal": 1237, + "source": 446, + "pc": [ + 1331, + 1332 + ] + }, + { + "teal": 1238, + "source": 446, + "pc": [ + 1333, + 1334, + 1335 + ] + }, + { + "teal": 1239, + "source": 446, + "pc": [ + 1336 + ] + }, + { + "teal": 1240, + "source": 446, + "pc": [ + 1337 + ] + }, + { + "teal": 1241, + "source": 446, + "pc": [ + 1338 + ] + }, + { + "teal": 1242, + "source": 446, + "pc": [ + 1339, + 1340, + 1341 + ] + }, + { + "teal": 1251, + "source": 448, + "pc": [ + 1342 + ] + }, + { + "teal": 1252, + "source": 448, + "pc": [ + 1343, + 1344 + ] + }, + { + "teal": 1253, + "source": 448, + "pc": [ + 1345, + 1346 + ] + }, + { + "teal": 1257, + "source": 449, + "pc": [ + 1347, + 1348 + ] + }, + { + "teal": 1258, + "source": 449, + "pc": [ + 1349, + 1350 + ] + }, + { + "teal": 1262, + "source": 450, + "pc": [ + 1351, + 1352 + ] + }, + { + "teal": 1263, + "source": 450, + "pc": [ + 1353, + 1354 + ] + }, + { + "teal": 1264, + "source": 450, + "pc": [ + 1355, + 1356 + ] + }, + { + "teal": 1265, + "source": 450, + "pc": [ + 1357, + 1358 + ] + }, + { + "teal": 1266, + "source": 450, + "pc": [ + 1359, + 1360 + ] + }, + { + "teal": 1267, + "source": 450, + "pc": [ + 1361, + 1362, + 1363 + ] + }, + { + "teal": 1268, + "source": 450, + "pc": [ + 1364 + ] + }, + { + "teal": 1269, + "source": 450, + "pc": [ + 1365 + ] + }, + { + "teal": 1270, + "source": 450, + "pc": [ + 1366, + 1367 + ] + }, + { + "teal": 1274, + "source": 451, + "pc": [ + 1368, + 1369 + ] + }, + { + "teal": 1275, + "source": 451, + "pc": [ + 1370, + 1371, + 1372 + ] + }, + { + "teal": 1276, + "source": 451, + "pc": [ + 1373 + ] + }, + { + "teal": 1277, + "source": 451, + "pc": [ + 1374, + 1375 + ] + }, + { + "teal": 1280, + "source": 448, + "pc": [ + 1376 + ] + }, + { + "teal": 1281, + "source": 448, + "pc": [ + 1377, + 1378 + ] + }, + { + "teal": 1284, + "source": 448, + "pc": [ + 1379 + ] + }, + { + "teal": 1288, + "source": 453, + "pc": [ + 1380, + 1381 + ] + }, + { + "teal": 1289, + "source": 453, + "pc": [ + 1382 + ] + }, + { + "teal": 1290, + "source": 453, + "pc": [ + 1383 + ] + }, + { + "teal": 1291, + "source": 453, + "pc": [ + 1384 + ] + }, + { + "teal": 1294, + "source": 453, + "errorMessage": "provided NFD isn't valid", + "pc": [ + 1385 + ] + }, + { + "teal": 1301, + "source": 456, + "pc": [ + 1386, + 1387 + ] + }, + { + "teal": 1302, + "source": 456, + "pc": [ + 1388, + 1389 + ] + }, + { + "teal": 1303, + "source": 456, + "pc": [ + 1390, + 1391, + 1392 + ] + }, + { + "teal": 1304, + "source": 456, + "pc": [ + 1393 + ] + }, + { + "teal": 1305, + "source": 456, + "pc": [ + 1394, + 1395 + ] + }, + { + "teal": 1306, + "source": 456, + "pc": [ + 1396 + ] + }, + { + "teal": 1309, + "source": 456, + "errorMessage": "global state value does not exist: AppID.fromUint64(config.nfdForInfo).globalState('i.owner.a')", + "pc": [ + 1397 + ] + }, + { + "teal": 1310, + "source": 456, + "pc": [ + 1398 + ] + }, + { + "teal": 1313, + "source": 455, + "errorMessage": "If specifying NFD, account adding validator must be owner", + "pc": [ + 1399 + ] + }, + { + "teal": 1320, + "source": 461, + "pc": [ + 1400, + 1401 + ] + }, + { + "teal": 1321, + "source": 461, + "pc": [ + 1402, + 1403, + 1404 + ] + }, + { + "teal": 1322, + "source": 461, + "pc": [ + 1405 + ] + }, + { + "teal": 1323, + "source": 461, + "pc": [ + 1406, + 1407 + ] + }, + { + "teal": 1324, + "source": 461, + "pc": [ + 1408 + ] + }, + { + "teal": 1325, + "source": 461, + "pc": [ + 1409 + ] + }, + { + "teal": 1326, + "source": 461, + "pc": [ + 1410, + 1411, + 1412 + ] + }, + { + "teal": 1327, + "source": 462, + "pc": [ + 1413, + 1414 + ] + }, + { + "teal": 1328, + "source": 462, + "pc": [ + 1415, + 1416, + 1417 + ] + }, + { + "teal": 1329, + "source": 462, + "pc": [ + 1418 + ] + }, + { + "teal": 1330, + "source": 462, + "pc": [ + 1419, + 1420 + ] + }, + { + "teal": 1331, + "source": 462, + "pc": [ + 1421 + ] + }, + { + "teal": 1332, + "source": 461, + "pc": [ + 1422 + ] + }, + { + "teal": 1335, + "source": 460, + "pc": [ + 1423, + 1424, + 1425 + ] + }, + { + "teal": 1340, + "source": 465, + "pc": [ + 1426, + 1427 + ] + }, + { + "teal": 1341, + "source": 465, + "pc": [ + 1428, + 1429, + 1430 + ] + }, + { + "teal": 1342, + "source": 465, + "pc": [ + 1431 + ] + }, + { + "teal": 1343, + "source": 465, + "pc": [ + 1432, + 1433, + 1434 + ] + }, + { + "teal": 1346, + "source": 465, + "errorMessage": "provided NFD App id for gating must be valid NFD", + "pc": [ + 1435 + ] + }, + { + "teal": 1351, + "source": 468, + "pc": [ + 1436, + 1437 + ] + }, + { + "teal": 1354, + "source": 427, + "pc": [ + 1438, + 1439 + ] + }, + { + "teal": 1355, + "source": 427, + "pc": [ + 1440 + ] + }, + { + "teal": 1360, + "source": 478, + "pc": [ + 1441, + 1442, + 1443 + ] + }, + { + "teal": 1361, + "source": 478, + "pc": [ + 1444 + ] + }, + { + "teal": 1362, + "source": 478, + "pc": [ + 1445 + ] + }, + { + "teal": 1363, + "source": 478, + "pc": [ + 1446, + 1447 + ] + }, + { + "teal": 1364, + "source": 478, + "pc": [ + 1448 + ] + }, + { + "teal": 1367, + "source": 478, + "errorMessage": "argument 0 (manager) for changeValidatorManager must be a address", + "pc": [ + 1449 + ] + }, + { + "teal": 1370, + "source": 478, + "pc": [ + 1450, + 1451, + 1452 + ] + }, + { + "teal": 1371, + "source": 478, + "pc": [ + 1453 + ] + }, + { + "teal": 1374, + "source": 478, + "pc": [ + 1454, + 1455, + 1456 + ] + }, + { + "teal": 1375, + "source": 478, + "pc": [ + 1457 + ] + }, + { + "teal": 1376, + "source": 478, + "pc": [ + 1458 + ] + }, + { + "teal": 1386, + "source": 478, + "pc": [ + 1459, + 1460, + 1461 + ] + }, + { + "teal": 1393, + "source": 480, + "pc": [ + 1462, + 1463 + ] + }, + { + "teal": 1394, + "source": 480, + "pc": [ + 1464 + ] + }, + { + "teal": 1395, + "source": 480, + "pc": [ + 1465, + 1466 + ] + }, + { + "teal": 1396, + "source": 480, + "pc": [ + 1467 + ] + }, + { + "teal": 1397, + "source": 480, + "pc": [ + 1468, + 1469 + ] + }, + { + "teal": 1398, + "source": 480, + "pc": [ + 1470 + ] + }, + { + "teal": 1399, + "source": 480, + "pc": [ + 1471 + ] + }, + { + "teal": 1400, + "source": 480, + "pc": [ + 1472, + 1473 + ] + }, + { + "teal": 1401, + "source": 480, + "pc": [ + 1474 + ] + }, + { + "teal": 1402, + "source": 480, + "pc": [ + 1475 + ] + }, + { + "teal": 1405, + "source": 479, + "errorMessage": "can only be called by validator owner", + "pc": [ + 1476 + ] + }, + { + "teal": 1409, + "source": 483, + "pc": [ + 1477, + 1478 + ] + }, + { + "teal": 1410, + "source": 483, + "pc": [ + 1479, + 1480 + ] + }, + { + "teal": 1411, + "source": 483, + "pc": [ + 1481 + ] + }, + { + "teal": 1412, + "source": 483, + "pc": [ + 1482, + 1483 + ] + }, + { + "teal": 1413, + "source": 483, + "pc": [ + 1484 + ] + }, + { + "teal": 1414, + "source": 483, + "pc": [ + 1485 + ] + }, + { + "teal": 1415, + "source": 483, + "pc": [ + 1486, + 1487 + ] + }, + { + "teal": 1416, + "source": 483, + "pc": [ + 1488 + ] + }, + { + "teal": 1417, + "source": 478, + "pc": [ + 1489 + ] + }, + { + "teal": 1422, + "source": 494, + "pc": [ + 1490, + 1491, + 1492 + ] + }, + { + "teal": 1423, + "source": 494, + "pc": [ + 1493 + ] + }, + { + "teal": 1426, + "source": 494, + "pc": [ + 1494, + 1495, + 1496 + ] + }, + { + "teal": 1427, + "source": 494, + "pc": [ + 1497 + ] + }, + { + "teal": 1430, + "source": 494, + "pc": [ + 1498, + 1499, + 1500 + ] + }, + { + "teal": 1431, + "source": 494, + "pc": [ + 1501 + ] + }, + { + "teal": 1434, + "source": 494, + "pc": [ + 1502, + 1503, + 1504 + ] + }, + { + "teal": 1435, + "source": 494, + "pc": [ + 1505 + ] + }, + { + "teal": 1436, + "source": 494, + "pc": [ + 1506 + ] + }, + { + "teal": 1447, + "source": 494, + "pc": [ + 1507, + 1508, + 1509 + ] + }, + { + "teal": 1454, + "source": 496, + "pc": [ + 1510, + 1511 + ] + }, + { + "teal": 1455, + "source": 496, + "pc": [ + 1512 + ] + }, + { + "teal": 1456, + "source": 496, + "pc": [ + 1513, + 1514 + ] + }, + { + "teal": 1457, + "source": 496, + "pc": [ + 1515 + ] + }, + { + "teal": 1458, + "source": 496, + "pc": [ + 1516, + 1517 + ] + }, + { + "teal": 1459, + "source": 496, + "pc": [ + 1518 + ] + }, + { + "teal": 1460, + "source": 496, + "pc": [ + 1519 + ] + }, + { + "teal": 1461, + "source": 496, + "pc": [ + 1520, + 1521 + ] + }, + { + "teal": 1462, + "source": 496, + "pc": [ + 1522 + ] + }, + { + "teal": 1463, + "source": 496, + "pc": [ + 1523 + ] + }, + { + "teal": 1466, + "source": 495, + "errorMessage": "can only be called by validator owner", + "pc": [ + 1524 + ] + }, + { + "teal": 1470, + "source": 499, + "pc": [ + 1525, + 1526 + ] + }, + { + "teal": 1471, + "source": 499, + "pc": [ + 1527, + 1528 + ] + }, + { + "teal": 1472, + "source": 499, + "pc": [ + 1529 + ] + }, + { + "teal": 1473, + "source": 499, + "pc": [ + 1530 + ] + }, + { + "teal": 1474, + "source": 499, + "pc": [ + 1531, + 1532 + ] + }, + { + "teal": 1475, + "source": 499, + "pc": [ + 1533 + ] + }, + { + "teal": 1476, + "source": 499, + "pc": [ + 1534 + ] + }, + { + "teal": 1477, + "source": 499, + "pc": [ + 1535, + 1536 + ] + }, + { + "teal": 1478, + "source": 499, + "pc": [ + 1537 + ] + }, + { + "teal": 1482, + "source": 500, + "pc": [ + 1538, + 1539, + 1540 + ] + }, + { + "teal": 1483, + "source": 500, + "pc": [ + 1541, + 1542 + ] + }, + { + "teal": 1484, + "source": 500, + "pc": [ + 1543 + ] + }, + { + "teal": 1485, + "source": 500, + "pc": [ + 1544 + ] + }, + { + "teal": 1486, + "source": 500, + "pc": [ + 1545, + 1546 + ] + }, + { + "teal": 1487, + "source": 500, + "pc": [ + 1547 + ] + }, + { + "teal": 1488, + "source": 500, + "pc": [ + 1548 + ] + }, + { + "teal": 1489, + "source": 500, + "pc": [ + 1549, + 1550 + ] + }, + { + "teal": 1490, + "source": 500, + "pc": [ + 1551 + ] + }, + { + "teal": 1491, + "source": 494, + "pc": [ + 1552 + ] + }, + { + "teal": 1496, + "source": 511, + "pc": [ + 1553, + 1554, + 1555 + ] + }, + { + "teal": 1497, + "source": 511, + "pc": [ + 1556, + 1557, + 1558 + ] + }, + { + "teal": 1500, + "source": 511, + "pc": [ + 1559, + 1560, + 1561 + ] + }, + { + "teal": 1501, + "source": 511, + "pc": [ + 1562 + ] + }, + { + "teal": 1504, + "source": 511, + "pc": [ + 1563, + 1564, + 1565 + ] + }, + { + "teal": 1505, + "source": 511, + "pc": [ + 1566 + ] + }, + { + "teal": 1508, + "source": 511, + "pc": [ + 1567, + 1568, + 1569 + ] + }, + { + "teal": 1509, + "source": 511, + "pc": [ + 1570 + ] + }, + { + "teal": 1510, + "source": 511, + "pc": [ + 1571 + ] + }, + { + "teal": 1521, + "source": 511, + "pc": [ + 1572, + 1573, + 1574 + ] + }, + { + "teal": 1528, + "source": 514, + "pc": [ + 1575, + 1576 + ] + }, + { + "teal": 1529, + "source": 514, + "pc": [ + 1577 + ] + }, + { + "teal": 1530, + "source": 514, + "pc": [ + 1578, + 1579 + ] + }, + { + "teal": 1531, + "source": 514, + "pc": [ + 1580 + ] + }, + { + "teal": 1532, + "source": 514, + "pc": [ + 1581, + 1582 + ] + }, + { + "teal": 1533, + "source": 514, + "pc": [ + 1583 + ] + }, + { + "teal": 1534, + "source": 514, + "pc": [ + 1584 + ] + }, + { + "teal": 1535, + "source": 514, + "pc": [ + 1585, + 1586 + ] + }, + { + "teal": 1536, + "source": 514, + "pc": [ + 1587 + ] + }, + { + "teal": 1537, + "source": 514, + "pc": [ + 1588 + ] + }, + { + "teal": 1540, + "source": 513, + "errorMessage": "can only be called by validator owner", + "pc": [ + 1589 + ] + }, + { + "teal": 1548, + "source": 518, + "pc": [ + 1590 + ] + }, + { + "teal": 1549, + "source": 518, + "pc": [ + 1591, + 1592 + ] + }, + { + "teal": 1550, + "source": 518, + "pc": [ + 1593, + 1594 + ] + }, + { + "teal": 1554, + "source": 519, + "pc": [ + 1595, + 1596 + ] + }, + { + "teal": 1555, + "source": 519, + "pc": [ + 1597, + 1598 + ] + }, + { + "teal": 1559, + "source": 520, + "pc": [ + 1599, + 1600 + ] + }, + { + "teal": 1560, + "source": 520, + "pc": [ + 1601, + 1602 + ] + }, + { + "teal": 1561, + "source": 520, + "pc": [ + 1603, + 1604 + ] + }, + { + "teal": 1562, + "source": 520, + "pc": [ + 1605, + 1606 + ] + }, + { + "teal": 1563, + "source": 520, + "pc": [ + 1607, + 1608 + ] + }, + { + "teal": 1564, + "source": 520, + "pc": [ + 1609 + ] + }, + { + "teal": 1565, + "source": 520, + "pc": [ + 1610, + 1611 + ] + }, + { + "teal": 1569, + "source": 521, + "pc": [ + 1612, + 1613 + ] + }, + { + "teal": 1570, + "source": 521, + "pc": [ + 1614, + 1615 + ] + }, + { + "teal": 1573, + "source": 518, + "pc": [ + 1616 + ] + }, + { + "teal": 1574, + "source": 518, + "pc": [ + 1617, + 1618 + ] + }, + { + "teal": 1577, + "source": 518, + "pc": [ + 1619 + ] + }, + { + "teal": 1584, + "source": 525, + "pc": [ + 1620, + 1621 + ] + }, + { + "teal": 1585, + "source": 525, + "pc": [ + 1622, + 1623 + ] + }, + { + "teal": 1586, + "source": 525, + "pc": [ + 1624, + 1625 + ] + }, + { + "teal": 1587, + "source": 525, + "pc": [ + 1626 + ] + }, + { + "teal": 1590, + "source": 525, + "errorMessage": "global state value does not exist: AppID.fromUint64(nfdAppID).globalState('i.owner.a')", + "pc": [ + 1627 + ] + }, + { + "teal": 1591, + "source": 525, + "pc": [ + 1628 + ] + }, + { + "teal": 1594, + "source": 524, + "errorMessage": "If specifying NFD, account adding validator must be owner", + "pc": [ + 1629 + ] + }, + { + "teal": 1598, + "source": 528, + "pc": [ + 1630, + 1631 + ] + }, + { + "teal": 1599, + "source": 528, + "pc": [ + 1632, + 1633 + ] + }, + { + "teal": 1600, + "source": 528, + "pc": [ + 1634 + ] + }, + { + "teal": 1601, + "source": 528, + "pc": [ + 1635 + ] + }, + { + "teal": 1602, + "source": 528, + "pc": [ + 1636, + 1637 + ] + }, + { + "teal": 1603, + "source": 528, + "pc": [ + 1638 + ] + }, + { + "teal": 1604, + "source": 528, + "pc": [ + 1639 + ] + }, + { + "teal": 1605, + "source": 528, + "pc": [ + 1640, + 1641 + ] + }, + { + "teal": 1606, + "source": 528, + "pc": [ + 1642 + ] + }, + { + "teal": 1607, + "source": 511, + "pc": [ + 1643 + ] + }, + { + "teal": 1612, + "source": 535, + "pc": [ + 1644, + 1645, + 1646 + ] + }, + { + "teal": 1613, + "source": 535, + "pc": [ + 1647 + ] + }, + { + "teal": 1614, + "source": 535, + "pc": [ + 1648 + ] + }, + { + "teal": 1615, + "source": 535, + "pc": [ + 1649, + 1650 + ] + }, + { + "teal": 1616, + "source": 535, + "pc": [ + 1651 + ] + }, + { + "teal": 1619, + "source": 535, + "errorMessage": "argument 0 (commissionAddress) for changeValidatorCommissionAddress must be a address", + "pc": [ + 1652 + ] + }, + { + "teal": 1622, + "source": 535, + "pc": [ + 1653, + 1654, + 1655 + ] + }, + { + "teal": 1623, + "source": 535, + "pc": [ + 1656 + ] + }, + { + "teal": 1626, + "source": 535, + "pc": [ + 1657, + 1658, + 1659 + ] + }, + { + "teal": 1627, + "source": 535, + "pc": [ + 1660 + ] + }, + { + "teal": 1628, + "source": 535, + "pc": [ + 1661 + ] + }, + { + "teal": 1635, + "source": 535, + "pc": [ + 1662, + 1663, + 1664 + ] + }, + { + "teal": 1642, + "source": 537, + "pc": [ + 1665, + 1666 + ] + }, + { + "teal": 1643, + "source": 537, + "pc": [ + 1667 + ] + }, + { + "teal": 1644, + "source": 537, + "pc": [ + 1668, + 1669 + ] + }, + { + "teal": 1645, + "source": 537, + "pc": [ + 1670 + ] + }, + { + "teal": 1646, + "source": 537, + "pc": [ + 1671, + 1672 + ] + }, + { + "teal": 1647, + "source": 537, + "pc": [ + 1673 + ] + }, + { + "teal": 1648, + "source": 537, + "pc": [ + 1674 + ] + }, + { + "teal": 1649, + "source": 537, + "pc": [ + 1675, + 1676 + ] + }, + { + "teal": 1650, + "source": 537, + "pc": [ + 1677 + ] + }, + { + "teal": 1651, + "source": 537, + "pc": [ + 1678 + ] + }, + { + "teal": 1654, + "source": 536, + "errorMessage": "can only be called by validator owner", + "pc": [ + 1679 + ] + }, + { + "teal": 1658, + "source": 540, + "pc": [ + 1680, + 1681 + ] + }, + { + "teal": 1659, + "source": 540, + "pc": [ + 1682, + 1683 + ] + }, + { + "teal": 1660, + "source": 540, + "pc": [ + 1684 + ] + }, + { + "teal": 1661, + "source": 540, + "pc": [ + 1685 + ] + }, + { + "teal": 1665, + "source": 541, + "pc": [ + 1686, + 1687, + 1688 + ] + }, + { + "teal": 1666, + "source": 541, + "pc": [ + 1689, + 1690 + ] + }, + { + "teal": 1667, + "source": 541, + "pc": [ + 1691 + ] + }, + { + "teal": 1668, + "source": 541, + "pc": [ + 1692, + 1693 + ] + }, + { + "teal": 1669, + "source": 541, + "pc": [ + 1694 + ] + }, + { + "teal": 1670, + "source": 541, + "pc": [ + 1695 + ] + }, + { + "teal": 1671, + "source": 541, + "pc": [ + 1696, + 1697 + ] + }, + { + "teal": 1672, + "source": 541, + "pc": [ + 1698 + ] + }, + { + "teal": 1673, + "source": 535, + "pc": [ + 1699 + ] + }, + { + "teal": 1678, + "source": 554, + "pc": [ + 1700, + 1701, + 1702 + ] + }, + { + "teal": 1679, + "source": 554, + "pc": [ + 1703 + ] + }, + { + "teal": 1682, + "source": 553, + "pc": [ + 1704, + 1705, + 1706 + ] + }, + { + "teal": 1683, + "source": 553, + "pc": [ + 1707 + ] + }, + { + "teal": 1686, + "source": 552, + "pc": [ + 1708, + 1709, + 1710 + ] + }, + { + "teal": 1687, + "source": 552, + "pc": [ + 1711 + ] + }, + { + "teal": 1688, + "source": 552, + "pc": [ + 1712 + ] + }, + { + "teal": 1689, + "source": 552, + "pc": [ + 1713, + 1714 + ] + }, + { + "teal": 1690, + "source": 552, + "pc": [ + 1715 + ] + }, + { + "teal": 1693, + "source": 552, + "errorMessage": "argument 2 (EntryGatingAssets) for changeValidatorRewardInfo must be a uint64[4]", + "pc": [ + 1716 + ] + }, + { + "teal": 1696, + "source": 551, + "pc": [ + 1717, + 1718, + 1719 + ] + }, + { + "teal": 1697, + "source": 551, + "pc": [ + 1720 + ] + }, + { + "teal": 1698, + "source": 551, + "pc": [ + 1721 + ] + }, + { + "teal": 1699, + "source": 551, + "pc": [ + 1722, + 1723 + ] + }, + { + "teal": 1700, + "source": 551, + "pc": [ + 1724 + ] + }, + { + "teal": 1703, + "source": 551, + "errorMessage": "argument 3 (EntryGatingAddress) for changeValidatorRewardInfo must be a address", + "pc": [ + 1725 + ] + }, + { + "teal": 1706, + "source": 550, + "pc": [ + 1726, + 1727, + 1728 + ] + }, + { + "teal": 1707, + "source": 550, + "pc": [ + 1729 + ] + }, + { + "teal": 1708, + "source": 550, + "pc": [ + 1730 + ] + }, + { + "teal": 1709, + "source": 550, + "pc": [ + 1731 + ] + }, + { + "teal": 1710, + "source": 550, + "pc": [ + 1732 + ] + }, + { + "teal": 1713, + "source": 550, + "errorMessage": "argument 4 (EntryGatingType) for changeValidatorRewardInfo must be a uint8", + "pc": [ + 1733 + ] + }, + { + "teal": 1714, + "source": 550, + "pc": [ + 1734 + ] + }, + { + "teal": 1717, + "source": 549, + "pc": [ + 1735, + 1736, + 1737 + ] + }, + { + "teal": 1718, + "source": 549, + "pc": [ + 1738 + ] + }, + { + "teal": 1721, + "source": 548, + "pc": [ + 1739, + 1740, + 1741 + ] + }, + { + "teal": 1722, + "source": 548, + "pc": [ + 1742 + ] + }, + { + "teal": 1723, + "source": 548, + "pc": [ + 1743 + ] + }, + { + "teal": 1730, + "source": 548, + "pc": [ + 1744, + 1745, + 1746 + ] + }, + { + "teal": 1737, + "source": 557, + "pc": [ + 1747, + 1748 + ] + }, + { + "teal": 1738, + "source": 557, + "pc": [ + 1749 + ] + }, + { + "teal": 1739, + "source": 557, + "pc": [ + 1750, + 1751 + ] + }, + { + "teal": 1740, + "source": 557, + "pc": [ + 1752 + ] + }, + { + "teal": 1741, + "source": 557, + "pc": [ + 1753, + 1754 + ] + }, + { + "teal": 1742, + "source": 557, + "pc": [ + 1755 + ] + }, + { + "teal": 1743, + "source": 557, + "pc": [ + 1756 + ] + }, + { + "teal": 1744, + "source": 557, + "pc": [ + 1757, + 1758 + ] + }, + { + "teal": 1745, + "source": 557, + "pc": [ + 1759 + ] + }, + { + "teal": 1746, + "source": 557, + "pc": [ + 1760 + ] + }, + { + "teal": 1749, + "source": 556, + "errorMessage": "can only be called by validator owner", + "pc": [ + 1761 + ] + }, + { + "teal": 1753, + "source": 561, + "pc": [ + 1762, + 1763 + ] + }, + { + "teal": 1754, + "source": 561, + "pc": [ + 1764, + 1765 + ] + }, + { + "teal": 1755, + "source": 561, + "pc": [ + 1766 + ] + }, + { + "teal": 1756, + "source": 561, + "pc": [ + 1767, + 1768, + 1769 + ] + }, + { + "teal": 1757, + "source": 561, + "pc": [ + 1770 + ] + }, + { + "teal": 1758, + "source": 561, + "pc": [ + 1771, + 1772 + ] + }, + { + "teal": 1759, + "source": 561, + "pc": [ + 1773 + ] + }, + { + "teal": 1760, + "source": 561, + "pc": [ + 1774 + ] + }, + { + "teal": 1761, + "source": 561, + "pc": [ + 1775, + 1776 + ] + }, + { + "teal": 1762, + "source": 561, + "pc": [ + 1777 + ] + }, + { + "teal": 1766, + "source": 562, + "pc": [ + 1778, + 1779 + ] + }, + { + "teal": 1767, + "source": 562, + "pc": [ + 1780, + 1781 + ] + }, + { + "teal": 1768, + "source": 562, + "pc": [ + 1782 + ] + }, + { + "teal": 1769, + "source": 562, + "pc": [ + 1783, + 1784 + ] + }, + { + "teal": 1770, + "source": 562, + "pc": [ + 1785 + ] + }, + { + "teal": 1771, + "source": 562, + "pc": [ + 1786 + ] + }, + { + "teal": 1772, + "source": 562, + "pc": [ + 1787, + 1788 + ] + }, + { + "teal": 1773, + "source": 562, + "pc": [ + 1789 + ] + }, + { + "teal": 1777, + "source": 563, + "pc": [ + 1790, + 1791 + ] + }, + { + "teal": 1778, + "source": 563, + "pc": [ + 1792, + 1793 + ] + }, + { + "teal": 1779, + "source": 563, + "pc": [ + 1794 + ] + }, + { + "teal": 1780, + "source": 563, + "pc": [ + 1795, + 1796 + ] + }, + { + "teal": 1781, + "source": 563, + "pc": [ + 1797 + ] + }, + { + "teal": 1782, + "source": 563, + "pc": [ + 1798 + ] + }, + { + "teal": 1783, + "source": 563, + "pc": [ + 1799, + 1800 + ] + }, + { + "teal": 1784, + "source": 563, + "pc": [ + 1801 + ] + }, + { + "teal": 1788, + "source": 564, + "pc": [ + 1802, + 1803 + ] + }, + { + "teal": 1789, + "source": 564, + "pc": [ + 1804, + 1805 + ] + }, + { + "teal": 1790, + "source": 564, + "pc": [ + 1806 + ] + }, + { + "teal": 1791, + "source": 564, + "pc": [ + 1807 + ] + }, + { + "teal": 1792, + "source": 564, + "pc": [ + 1808, + 1809 + ] + }, + { + "teal": 1793, + "source": 564, + "pc": [ + 1810 + ] + }, + { + "teal": 1794, + "source": 564, + "pc": [ + 1811 + ] + }, + { + "teal": 1795, + "source": 564, + "pc": [ + 1812, + 1813 + ] + }, + { + "teal": 1796, + "source": 564, + "pc": [ + 1814 + ] + }, + { + "teal": 1800, + "source": 565, + "pc": [ + 1815, + 1816, + 1817 + ] + }, + { + "teal": 1801, + "source": 565, + "pc": [ + 1818, + 1819 + ] + }, + { + "teal": 1802, + "source": 565, + "pc": [ + 1820 + ] + }, + { + "teal": 1803, + "source": 565, + "pc": [ + 1821 + ] + }, + { + "teal": 1804, + "source": 565, + "pc": [ + 1822, + 1823 + ] + }, + { + "teal": 1805, + "source": 565, + "pc": [ + 1824 + ] + }, + { + "teal": 1806, + "source": 565, + "pc": [ + 1825 + ] + }, + { + "teal": 1807, + "source": 565, + "pc": [ + 1826, + 1827 + ] + }, + { + "teal": 1808, + "source": 565, + "pc": [ + 1828 + ] + }, + { + "teal": 1809, + "source": 548, + "pc": [ + 1829 + ] + }, + { + "teal": 1814, + "source": 579, + "pc": [ + 1830 + ] + }, + { + "teal": 1817, + "source": 579, + "pc": [ + 1831, + 1832, + 1833 + ] + }, + { + "teal": 1818, + "source": 579, + "pc": [ + 1834 + ] + }, + { + "teal": 1821, + "source": 579, + "pc": [ + 1835, + 1836, + 1837 + ] + }, + { + "teal": 1822, + "source": 579, + "pc": [ + 1838 + ] + }, + { + "teal": 1825, + "source": 579, + "pc": [ + 1839, + 1840 + ] + }, + { + "teal": 1826, + "source": 579, + "pc": [ + 1841 + ] + }, + { + "teal": 1827, + "source": 579, + "pc": [ + 1842 + ] + }, + { + "teal": 1828, + "source": 579, + "pc": [ + 1843 + ] + }, + { + "teal": 1829, + "source": 579, + "pc": [ + 1844, + 1845 + ] + }, + { + "teal": 1830, + "source": 579, + "pc": [ + 1846 + ] + }, + { + "teal": 1831, + "source": 579, + "pc": [ + 1847 + ] + }, + { + "teal": 1834, + "source": 579, + "errorMessage": "argument 2 (mbrPayment) for addPool must be a pay transaction", + "pc": [ + 1848 + ] + }, + { + "teal": 1837, + "source": 579, + "pc": [ + 1849, + 1850, + 1851 + ] + }, + { + "teal": 1838, + "source": 579, + "pc": [ + 1852 + ] + }, + { + "teal": 1839, + "source": 579, + "pc": [ + 1853 + ] + }, + { + "teal": 1840, + "source": 579, + "pc": [ + 1854 + ] + }, + { + "teal": 1841, + "source": 579, + "pc": [ + 1855 + ] + }, + { + "teal": 1854, + "source": 579, + "pc": [ + 1856, + 1857, + 1858 + ] + }, + { + "teal": 1857, + "source": 579, + "pc": [ + 1859 + ] + }, + { + "teal": 1858, + "source": 579, + "pc": [ + 1860 + ] + }, + { + "teal": 1866, + "source": 582, + "pc": [ + 1861, + 1862 + ] + }, + { + "teal": 1867, + "source": 582, + "pc": [ + 1863 + ] + }, + { + "teal": 1868, + "source": 582, + "pc": [ + 1864, + 1865 + ] + }, + { + "teal": 1869, + "source": 582, + "pc": [ + 1866 + ] + }, + { + "teal": 1870, + "source": 582, + "pc": [ + 1867, + 1868 + ] + }, + { + "teal": 1871, + "source": 582, + "pc": [ + 1869 + ] + }, + { + "teal": 1872, + "source": 582, + "pc": [ + 1870 + ] + }, + { + "teal": 1873, + "source": 582, + "pc": [ + 1871, + 1872 + ] + }, + { + "teal": 1874, + "source": 582, + "pc": [ + 1873 + ] + }, + { + "teal": 1875, + "source": 582, + "pc": [ + 1874 + ] + }, + { + "teal": 1876, + "source": 582, + "pc": [ + 1875 + ] + }, + { + "teal": 1877, + "source": 582, + "pc": [ + 1876, + 1877, + 1878 + ] + }, + { + "teal": 1878, + "source": 583, + "pc": [ + 1879, + 1880 + ] + }, + { + "teal": 1879, + "source": 583, + "pc": [ + 1881, + 1882 + ] + }, + { + "teal": 1880, + "source": 583, + "pc": [ + 1883, + 1884 + ] + }, + { + "teal": 1881, + "source": 583, + "pc": [ + 1885 + ] + }, + { + "teal": 1882, + "source": 583, + "pc": [ + 1886, + 1887 + ] + }, + { + "teal": 1883, + "source": 583, + "pc": [ + 1888 + ] + }, + { + "teal": 1884, + "source": 583, + "pc": [ + 1889 + ] + }, + { + "teal": 1885, + "source": 583, + "pc": [ + 1890, + 1891 + ] + }, + { + "teal": 1886, + "source": 583, + "pc": [ + 1892 + ] + }, + { + "teal": 1887, + "source": 583, + "pc": [ + 1893 + ] + }, + { + "teal": 1888, + "source": 582, + "pc": [ + 1894 + ] + }, + { + "teal": 1892, + "source": 581, + "errorMessage": "can only be called by owner or manager of validator", + "pc": [ + 1895 + ] + }, + { + "teal": 1897, + "source": 588, + "pc": [ + 1896, + 1897 + ] + }, + { + "teal": 1898, + "source": 588, + "pc": [ + 1898, + 1899 + ] + }, + { + "teal": 1899, + "source": 588, + "pc": [ + 1900, + 1901, + 1902 + ] + }, + { + "teal": 1900, + "source": 588, + "pc": [ + 1903, + 1904, + 1905 + ] + }, + { + "teal": 1901, + "source": 588, + "pc": [ + 1906 + ] + }, + { + "teal": 1902, + "source": 588, + "pc": [ + 1907 + ] + }, + { + "teal": 1905, + "source": 588, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"this.getMbrAmounts().addPoolMbr\"}", + "pc": [ + 1908 + ] + }, + { + "teal": 1908, + "source": 588, + "pc": [ + 1909, + 1910 + ] + }, + { + "teal": 1909, + "source": 588, + "pc": [ + 1911, + 1912 + ] + }, + { + "teal": 1910, + "source": 588, + "pc": [ + 1913, + 1914 + ] + }, + { + "teal": 1911, + "source": 588, + "pc": [ + 1915 + ] + }, + { + "teal": 1914, + "source": 588, + "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 1916 + ] + }, + { + "teal": 1918, + "source": 590, + "pc": [ + 1917 + ] + }, + { + "teal": 1919, + "source": 590, + "pc": [ + 1918, + 1919 + ] + }, + { + "teal": 1920, + "source": 590, + "pc": [ + 1920 + ] + }, + { + "teal": 1921, + "source": 590, + "pc": [ + 1921 + ] + }, + { + "teal": 1922, + "source": 590, + "pc": [ + 1922 + ] + }, + { + "teal": 1923, + "source": 590, + "pc": [ + 1923 + ] + }, + { + "teal": 1924, + "source": 590, + "pc": [ + 1924 + ] + }, + { + "teal": 1927, + "source": 590, + "errorMessage": "specified validator id isn't valid", + "pc": [ + 1925 + ] + }, + { + "teal": 1931, + "source": 592, + "pc": [ + 1926, + 1927 + ] + }, + { + "teal": 1932, + "source": 592, + "pc": [ + 1928, + 1929 + ] + }, + { + "teal": 1933, + "source": 592, + "pc": [ + 1930 + ] + }, + { + "teal": 1934, + "source": 592, + "pc": [ + 1931, + 1932 + ] + }, + { + "teal": 1935, + "source": 592, + "pc": [ + 1933 + ] + }, + { + "teal": 1936, + "source": 592, + "pc": [ + 1934 + ] + }, + { + "teal": 1937, + "source": 592, + "pc": [ + 1935, + 1936 + ] + }, + { + "teal": 1938, + "source": 592, + "pc": [ + 1937 + ] + }, + { + "teal": 1939, + "source": 592, + "pc": [ + 1938 + ] + }, + { + "teal": 1940, + "source": 592, + "pc": [ + 1939, + 1940 + ] + }, + { + "teal": 1945, + "source": 593, + "pc": [ + 1941, + 1942 + ] + }, + { + "teal": 1946, + "source": 32, + "pc": [ + 1943 + ] + }, + { + "teal": 1947, + "source": 593, + "pc": [ + 1944 + ] + }, + { + "teal": 1948, + "source": 593, + "pc": [ + 1945, + 1946, + 1947 + ] + }, + { + "teal": 1952, + "source": 594, + "errorMessage": "already at max pool size", + "pc": [ + 1948 + ] + }, + { + "teal": 1957, + "source": 596, + "pc": [ + 1949, + 1950 + ] + }, + { + "teal": 1958, + "source": 596, + "pc": [ + 1951 + ] + }, + { + "teal": 1959, + "source": 596, + "pc": [ + 1952 + ] + }, + { + "teal": 1960, + "source": 596, + "pc": [ + 1953, + 1954 + ] + }, + { + "teal": 1982, + "source": 599, + "pc": [ + 1955 + ] + }, + { + "teal": 1983, + "source": 599, + "pc": [ + 1956, + 1957 + ] + }, + { + "teal": 1984, + "source": 599, + "pc": [ + 1958, + 1959 + ] + }, + { + "teal": 1988, + "source": 600, + "pc": [ + 1960 + ] + }, + { + "teal": 1989, + "source": 600, + "pc": [ + 1961, + 1962 + ] + }, + { + "teal": 1996, + "source": 602, + "pc": [ + 1963, + 1964 + ] + }, + { + "teal": 1997, + "source": 602, + "pc": [ + 1965 + ] + }, + { + "teal": 1998, + "source": 602, + "pc": [ + 1966, + 1967 + ] + }, + { + "teal": 1999, + "source": 602, + "pc": [ + 1968 + ] + }, + { + "teal": 2000, + "source": 602, + "pc": [ + 1969, + 1970 + ] + }, + { + "teal": 2001, + "source": 603, + "pc": [ + 1971, + 1972 + ] + }, + { + "teal": 2002, + "source": 603, + "pc": [ + 1973, + 1974 + ] + }, + { + "teal": 2003, + "source": 603, + "pc": [ + 1975, + 1976 + ] + }, + { + "teal": 2004, + "source": 603, + "pc": [ + 1977 + ] + }, + { + "teal": 2007, + "source": 603, + "errorMessage": "box value does not exist: this.stakingPoolApprovalProgram.size", + "pc": [ + 1978 + ] + }, + { + "teal": 2008, + "source": 603, + "pc": [ + 1979, + 1980 + ] + }, + { + "teal": 2009, + "source": 603, + "pc": [ + 1981 + ] + }, + { + "teal": 2010, + "source": 603, + "pc": [ + 1982 + ] + }, + { + "teal": 2011, + "source": 603, + "pc": [ + 1983, + 1984 + ] + }, + { + "teal": 2015, + "source": 605, + "pc": [ + 1985, + 1986, + 1987 + ] + }, + { + "teal": 2016, + "source": 605, + "pc": [ + 1988, + 1989 + ] + }, + { + "teal": 2020, + "source": 606, + "pc": [ + 1990, + 1991 + ] + }, + { + "teal": 2021, + "source": 606, + "pc": [ + 1992, + 1993 + ] + }, + { + "teal": 2025, + "source": 607, + "pc": [ + 1994, + 1995 + ] + }, + { + "teal": 2026, + "source": 607, + "pc": [ + 1996, + 1997 + ] + }, + { + "teal": 2030, + "source": 608, + "pc": [ + 1998, + 1999 + ] + }, + { + "teal": 2031, + "source": 608, + "pc": [ + 2000, + 2001 + ] + }, + { + "teal": 2042, + "source": 611, + "pc": [ + 2002, + 2003, + 2004, + 2005, + 2006, + 2007 + ] + }, + { + "teal": 2043, + "source": 611, + "pc": [ + 2008, + 2009 + ] + }, + { + "teal": 2044, + "source": 612, + "pc": [ + 2010, + 2011, + 2012 + ] + }, + { + "teal": 2045, + "source": 612, + "pc": [ + 2013 + ] + }, + { + "teal": 2046, + "source": 612, + "pc": [ + 2014, + 2015 + ] + }, + { + "teal": 2047, + "source": 613, + "pc": [ + 2016, + 2017 + ] + }, + { + "teal": 2048, + "source": 613, + "pc": [ + 2018 + ] + }, + { + "teal": 2049, + "source": 613, + "pc": [ + 2019, + 2020 + ] + }, + { + "teal": 2050, + "source": 614, + "pc": [ + 2021, + 2022 + ] + }, + { + "teal": 2051, + "source": 614, + "pc": [ + 2023 + ] + }, + { + "teal": 2052, + "source": 614, + "pc": [ + 2024, + 2025 + ] + }, + { + "teal": 2053, + "source": 615, + "pc": [ + 2026, + 2027 + ] + }, + { + "teal": 2054, + "source": 615, + "pc": [ + 2028 + ] + }, + { + "teal": 2055, + "source": 615, + "pc": [ + 2029 + ] + }, + { + "teal": 2056, + "source": 615, + "pc": [ + 2030, + 2031 + ] + }, + { + "teal": 2057, + "source": 615, + "pc": [ + 2032 + ] + }, + { + "teal": 2058, + "source": 615, + "pc": [ + 2033 + ] + }, + { + "teal": 2059, + "source": 615, + "pc": [ + 2034, + 2035 + ] + }, + { + "teal": 2060, + "source": 615, + "pc": [ + 2036 + ] + }, + { + "teal": 2061, + "source": 615, + "pc": [ + 2037 + ] + }, + { + "teal": 2062, + "source": 615, + "pc": [ + 2038 + ] + }, + { + "teal": 2063, + "source": 615, + "pc": [ + 2039, + 2040 + ] + }, + { + "teal": 2066, + "source": 599, + "pc": [ + 2041 + ] + }, + { + "teal": 2067, + "source": 599, + "pc": [ + 2042, + 2043 + ] + }, + { + "teal": 2070, + "source": 599, + "pc": [ + 2044 + ] + }, + { + "teal": 2074, + "source": 619, + "pc": [ + 2045, + 2046 + ] + }, + { + "teal": 2075, + "source": 619, + "pc": [ + 2047, + 2048 + ] + }, + { + "teal": 2076, + "source": 619, + "pc": [ + 2049 + ] + }, + { + "teal": 2077, + "source": 619, + "pc": [ + 2050, + 2051, + 2052 + ] + }, + { + "teal": 2078, + "source": 619, + "pc": [ + 2053 + ] + }, + { + "teal": 2079, + "source": 619, + "pc": [ + 2054, + 2055 + ] + }, + { + "teal": 2080, + "source": 619, + "pc": [ + 2056 + ] + }, + { + "teal": 2081, + "source": 619, + "pc": [ + 2057 + ] + }, + { + "teal": 2082, + "source": 619, + "pc": [ + 2058, + 2059 + ] + }, + { + "teal": 2083, + "source": 619, + "pc": [ + 2060 + ] + }, + { + "teal": 2087, + "source": 622, + "pc": [ + 2061, + 2062 + ] + }, + { + "teal": 2088, + "source": 622, + "pc": [ + 2063, + 2064 + ] + }, + { + "teal": 2092, + "source": 623, + "pc": [ + 2065, + 2066 + ] + }, + { + "teal": 2093, + "source": 623, + "pc": [ + 2067, + 2068 + ] + }, + { + "teal": 2094, + "source": 623, + "pc": [ + 2069 + ] + }, + { + "teal": 2095, + "source": 623, + "pc": [ + 2070 + ] + }, + { + "teal": 2096, + "source": 623, + "pc": [ + 2071, + 2072 + ] + }, + { + "teal": 2097, + "source": 623, + "pc": [ + 2073 + ] + }, + { + "teal": 2098, + "source": 623, + "pc": [ + 2074 + ] + }, + { + "teal": 2099, + "source": 623, + "pc": [ + 2075 + ] + }, + { + "teal": 2100, + "source": 623, + "pc": [ + 2076 + ] + }, + { + "teal": 2101, + "source": 623, + "pc": [ + 2077, + 2078 + ] + }, + { + "teal": 2102, + "source": 623, + "pc": [ + 2079 + ] + }, + { + "teal": 2103, + "source": 623, + "pc": [ + 2080 + ] + }, + { + "teal": 2104, + "source": 623, + "pc": [ + 2081, + 2082 + ] + }, + { + "teal": 2105, + "source": 623, + "pc": [ + 2083 + ] + }, + { + "teal": 2106, + "source": 623, + "pc": [ + 2084 + ] + }, + { + "teal": 2107, + "source": 623, + "pc": [ + 2085, + 2086 + ] + }, + { + "teal": 2108, + "source": 623, + "pc": [ + 2087 + ] + }, + { + "teal": 2112, + "source": 624, + "pc": [ + 2088, + 2089 + ] + }, + { + "teal": 2113, + "source": 624, + "pc": [ + 2090, + 2091 + ] + }, + { + "teal": 2114, + "source": 624, + "pc": [ + 2092, + 2093 + ] + }, + { + "teal": 2115, + "source": 624, + "pc": [ + 2094, + 2095, + 2096 + ] + }, + { + "teal": 2119, + "source": 632, + "pc": [ + 2097, + 2098 + ] + }, + { + "teal": 2120, + "source": 632, + "pc": [ + 2099 + ] + }, + { + "teal": 2121, + "source": 632, + "pc": [ + 2100, + 2101 + ] + }, + { + "teal": 2122, + "source": 632, + "pc": [ + 2102 + ] + }, + { + "teal": 2123, + "source": 632, + "pc": [ + 2103 + ] + }, + { + "teal": 2124, + "source": 632, + "pc": [ + 2104, + 2105 + ] + }, + { + "teal": 2125, + "source": 632, + "pc": [ + 2106 + ] + }, + { + "teal": 2126, + "source": 632, + "pc": [ + 2107 + ] + }, + { + "teal": 2129, + "source": 579, + "pc": [ + 2108, + 2109 + ] + }, + { + "teal": 2132, + "source": 579, + "pc": [ + 2110, + 2111 + ] + }, + { + "teal": 2133, + "source": 579, + "pc": [ + 2112 + ] + }, + { + "teal": 2138, + "source": 644, + "pc": [ + 2113 + ] + }, + { + "teal": 2141, + "source": 644, + "pc": [ + 2114, + 2115, + 2116 + ] + }, + { + "teal": 2142, + "source": 644, + "pc": [ + 2117 + ] + }, + { + "teal": 2145, + "source": 644, + "pc": [ + 2118, + 2119, + 2120 + ] + }, + { + "teal": 2146, + "source": 644, + "pc": [ + 2121 + ] + }, + { + "teal": 2149, + "source": 644, + "pc": [ + 2122, + 2123 + ] + }, + { + "teal": 2150, + "source": 644, + "pc": [ + 2124 + ] + }, + { + "teal": 2151, + "source": 644, + "pc": [ + 2125 + ] + }, + { + "teal": 2152, + "source": 644, + "pc": [ + 2126 + ] + }, + { + "teal": 2153, + "source": 644, + "pc": [ + 2127, + 2128 + ] + }, + { + "teal": 2154, + "source": 644, + "pc": [ + 2129 + ] + }, + { + "teal": 2155, + "source": 644, + "pc": [ + 2130 + ] + }, + { + "teal": 2158, + "source": 644, + "errorMessage": "argument 2 (stakedAmountPayment) for addStake must be a pay transaction", + "pc": [ + 2131 + ] + }, + { + "teal": 2161, + "source": 644, + "pc": [ + 2132, + 2133, + 2134 + ] + }, + { + "teal": 2162, + "source": 644, + "pc": [ + 2135 + ] + }, + { + "teal": 2163, + "source": 644, + "pc": [ + 2136 + ] + }, + { + "teal": 2164, + "source": 644, + "pc": [ + 2137 + ] + }, + { + "teal": 2165, + "source": 644, + "pc": [ + 2138 + ] + }, + { + "teal": 2177, + "source": 644, + "pc": [ + 2139, + 2140, + 2141 + ] + }, + { + "teal": 2180, + "source": 644, + "pc": [ + 2142 + ] + }, + { + "teal": 2181, + "source": 644, + "pc": [ + 2143, + 2144 + ] + }, + { + "teal": 2185, + "source": 645, + "pc": [ + 2145 + ] + }, + { + "teal": 2186, + "source": 645, + "pc": [ + 2146, + 2147 + ] + }, + { + "teal": 2187, + "source": 645, + "pc": [ + 2148 + ] + }, + { + "teal": 2188, + "source": 645, + "pc": [ + 2149 + ] + }, + { + "teal": 2189, + "source": 645, + "pc": [ + 2150 + ] + }, + { + "teal": 2190, + "source": 645, + "pc": [ + 2151 + ] + }, + { + "teal": 2191, + "source": 645, + "pc": [ + 2152 + ] + }, + { + "teal": 2194, + "source": 645, + "errorMessage": "specified validator id isn't valid", + "pc": [ + 2153 + ] + }, + { + "teal": 2199, + "source": 648, + "pc": [ + 2154, + 2155 + ] + }, + { + "teal": 2200, + "source": 648, + "pc": [ + 2156 + ] + }, + { + "teal": 2201, + "source": 648, + "pc": [ + 2157 + ] + }, + { + "teal": 2202, + "source": 648, + "pc": [ + 2158, + 2159 + ] + }, + { + "teal": 2203, + "source": 648, + "pc": [ + 2160 + ] + }, + { + "teal": 2204, + "source": 648, + "pc": [ + 2161 + ] + }, + { + "teal": 2205, + "source": 648, + "pc": [ + 2162, + 2163 + ] + }, + { + "teal": 2206, + "source": 648, + "pc": [ + 2164 + ] + }, + { + "teal": 2207, + "source": 648, + "pc": [ + 2165 + ] + }, + { + "teal": 2208, + "source": 648, + "pc": [ + 2166 + ] + }, + { + "teal": 2209, + "source": 648, + "pc": [ + 2167 + ] + }, + { + "teal": 2210, + "source": 648, + "pc": [ + 2168, + 2169, + 2170 + ] + }, + { + "teal": 2218, + "source": 650, + "pc": [ + 2171, + 2172 + ] + }, + { + "teal": 2219, + "source": 650, + "pc": [ + 2173 + ] + }, + { + "teal": 2220, + "source": 650, + "pc": [ + 2174 + ] + }, + { + "teal": 2221, + "source": 650, + "pc": [ + 2175, + 2176 + ] + }, + { + "teal": 2222, + "source": 650, + "pc": [ + 2177 + ] + }, + { + "teal": 2223, + "source": 650, + "pc": [ + 2178 + ] + }, + { + "teal": 2224, + "source": 650, + "pc": [ + 2179, + 2180 + ] + }, + { + "teal": 2225, + "source": 650, + "pc": [ + 2181 + ] + }, + { + "teal": 2226, + "source": 650, + "pc": [ + 2182 + ] + }, + { + "teal": 2227, + "source": 650, + "pc": [ + 2183, + 2184 + ] + }, + { + "teal": 2228, + "source": 650, + "pc": [ + 2185 + ] + }, + { + "teal": 2231, + "source": 649, + "errorMessage": "can't stake with a validator that is past its sunsetting time", + "pc": [ + 2186 + ] + }, + { + "teal": 2236, + "source": 655, + "pc": [ + 2187, + 2188 + ] + }, + { + "teal": 2237, + "source": 655, + "pc": [ + 2189, + 2190 + ] + }, + { + "teal": 2245, + "source": 659, + "pc": [ + 2191, + 2192 + ] + }, + { + "teal": 2246, + "source": 660, + "pc": [ + 2193, + 2194 + ] + }, + { + "teal": 2247, + "source": 660, + "pc": [ + 2195, + 2196 + ] + }, + { + "teal": 2248, + "source": 660, + "pc": [ + 2197 + ] + }, + { + "teal": 2251, + "source": 660, + "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"sender\",\"expected\":\"staker\"}", + "pc": [ + 2198 + ] + }, + { + "teal": 2254, + "source": 659, + "pc": [ + 2199, + 2200 + ] + }, + { + "teal": 2255, + "source": 661, + "pc": [ + 2201, + 2202 + ] + }, + { + "teal": 2256, + "source": 661, + "pc": [ + 2203, + 2204 + ] + }, + { + "teal": 2257, + "source": 661, + "pc": [ + 2205 + ] + }, + { + "teal": 2260, + "source": 661, + "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 2206 + ] + }, + { + "teal": 2267, + "source": 667, + "pc": [ + 2207, + 2208 + ] + }, + { + "teal": 2268, + "source": 667, + "pc": [ + 2209 + ] + }, + { + "teal": 2269, + "source": 667, + "pc": [ + 2210 + ] + }, + { + "teal": 2270, + "source": 667, + "pc": [ + 2211, + 2212 + ] + }, + { + "teal": 2271, + "source": 667, + "pc": [ + 2213 + ] + }, + { + "teal": 2272, + "source": 667, + "pc": [ + 2214 + ] + }, + { + "teal": 2273, + "source": 667, + "pc": [ + 2215, + 2216 + ] + }, + { + "teal": 2274, + "source": 667, + "pc": [ + 2217 + ] + }, + { + "teal": 2275, + "source": 667, + "pc": [ + 2218 + ] + }, + { + "teal": 2276, + "source": 667, + "pc": [ + 2219, + 2220, + 2221 + ] + }, + { + "teal": 2277, + "source": 667, + "pc": [ + 2222 + ] + }, + { + "teal": 2280, + "source": 666, + "errorMessage": "total staked for all of a validators pools may not exceed hard cap", + "pc": [ + 2223 + ] + }, + { + "teal": 2284, + "source": 673, + "pc": [ + 2224, + 2225 + ] + }, + { + "teal": 2285, + "source": 673, + "pc": [ + 2226, + 2227 + ] + }, + { + "teal": 2286, + "source": 673, + "pc": [ + 2228, + 2229, + 2230 + ] + }, + { + "teal": 2290, + "source": 675, + "pc": [ + 2231, + 2232 + ] + }, + { + "teal": 2291, + "source": 675, + "pc": [ + 2233, + 2234 + ] + }, + { + "teal": 2292, + "source": 675, + "pc": [ + 2235, + 2236 + ] + }, + { + "teal": 2296, + "source": 676, + "pc": [ + 2237 + ] + }, + { + "teal": 2297, + "source": 676, + "pc": [ + 2238, + 2239 + ] + }, + { + "teal": 2302, + "source": 678, + "pc": [ + 2240 + ] + }, + { + "teal": 2303, + "source": 678, + "pc": [ + 2241, + 2242 + ] + }, + { + "teal": 2304, + "source": 678, + "pc": [ + 2243 + ] + }, + { + "teal": 2305, + "source": 678, + "pc": [ + 2244 + ] + }, + { + "teal": 2306, + "source": 678, + "pc": [ + 2245 + ] + }, + { + "teal": 2307, + "source": 678, + "pc": [ + 2246 + ] + }, + { + "teal": 2308, + "source": 678, + "pc": [ + 2247 + ] + }, + { + "teal": 2309, + "source": 678, + "pc": [ + 2248, + 2249, + 2250 + ] + }, + { + "teal": 2314, + "source": 681, + "pc": [ + 2251, + 2252, + 2253 + ] + }, + { + "teal": 2315, + "source": 681, + "pc": [ + 2254, + 2255, + 2256 + ] + }, + { + "teal": 2316, + "source": 681, + "pc": [ + 2257 + ] + }, + { + "teal": 2317, + "source": 681, + "pc": [ + 2258, + 2259 + ] + }, + { + "teal": 2321, + "source": 682, + "pc": [ + 2260, + 2261 + ] + }, + { + "teal": 2322, + "source": 682, + "pc": [ + 2262, + 2263 + ] + }, + { + "teal": 2323, + "source": 682, + "pc": [ + 2264 + ] + }, + { + "teal": 2324, + "source": 682, + "pc": [ + 2265, + 2266 + ] + }, + { + "teal": 2328, + "source": 683, + "pc": [ + 2267 + ] + }, + { + "teal": 2329, + "source": 683, + "pc": [ + 2268, + 2269 + ] + }, + { + "teal": 2330, + "source": 683, + "pc": [ + 2270 + ] + }, + { + "teal": 2331, + "source": 683, + "pc": [ + 2271, + 2272, + 2273 + ] + }, + { + "teal": 2332, + "source": 683, + "pc": [ + 2274 + ] + }, + { + "teal": 2333, + "source": 683, + "pc": [ + 2275 + ] + }, + { + "teal": 2338, + "source": 687, + "pc": [ + 2276, + 2277 + ] + }, + { + "teal": 2339, + "source": 687, + "pc": [ + 2278, + 2279 + ] + }, + { + "teal": 2340, + "source": 687, + "pc": [ + 2280, + 2281 + ] + }, + { + "teal": 2341, + "source": 687, + "pc": [ + 2282, + 2283, + 2284 + ] + }, + { + "teal": 2342, + "source": 687, + "pc": [ + 2285, + 2286 + ] + }, + { + "teal": 2348, + "source": 689, + "pc": [ + 2287, + 2288 + ] + }, + { + "teal": 2349, + "source": 689, + "pc": [ + 2289, + 2290 + ] + }, + { + "teal": 2350, + "source": 689, + "pc": [ + 2291, + 2292 + ] + }, + { + "teal": 2351, + "source": 689, + "pc": [ + 2293, + 2294 + ] + }, + { + "teal": 2352, + "source": 689, + "pc": [ + 2295 + ] + }, + { + "teal": 2353, + "source": 689, + "pc": [ + 2296, + 2297 + ] + }, + { + "teal": 2357, + "source": 690, + "pc": [ + 2298, + 2299 + ] + }, + { + "teal": 2358, + "source": 690, + "pc": [ + 2300, + 2301 + ] + }, + { + "teal": 2359, + "source": 690, + "pc": [ + 2302, + 2303 + ] + }, + { + "teal": 2360, + "source": 690, + "pc": [ + 2304, + 2305, + 2306 + ] + }, + { + "teal": 2361, + "source": 690, + "pc": [ + 2307 + ] + }, + { + "teal": 2362, + "source": 690, + "pc": [ + 2308, + 2309 + ] + }, + { + "teal": 2367, + "source": 691, + "pc": [ + 2310, + 2311 + ] + }, + { + "teal": 2368, + "source": 691, + "pc": [ + 2312, + 2313 + ] + }, + { + "teal": 2369, + "source": 691, + "pc": [ + 2314, + 2315 + ] + }, + { + "teal": 2370, + "source": 691, + "pc": [ + 2316, + 2317, + 2318 + ] + }, + { + "teal": 2371, + "source": 691, + "pc": [ + 2319 + ] + }, + { + "teal": 2372, + "source": 691, + "pc": [ + 2320 + ] + }, + { + "teal": 2373, + "source": 691, + "pc": [ + 2321 + ] + }, + { + "teal": 2374, + "source": 691, + "pc": [ + 2322, + 2323, + 2324 + ] + }, + { + "teal": 2378, + "source": 692, + "errorMessage": "No pool available with free stake. Validator needs to add another pool", + "pc": [ + 2325 + ] + }, + { + "teal": 2383, + "source": 696, + "pc": [ + 2326, + 2327 + ] + }, + { + "teal": 2384, + "source": 696, + "pc": [ + 2328, + 2329 + ] + }, + { + "teal": 2385, + "source": 696, + "pc": [ + 2330, + 2331 + ] + }, + { + "teal": 2386, + "source": 696, + "pc": [ + 2332, + 2333, + 2334 + ] + }, + { + "teal": 2387, + "source": 696, + "pc": [ + 2335, + 2336 + ] + }, + { + "teal": 2388, + "source": 696, + "pc": [ + 2337, + 2338, + 2339 + ] + }, + { + "teal": 2398, + "source": 704, + "pc": [ + 2340, + 2341 + ] + }, + { + "teal": 2399, + "source": 703, + "pc": [ + 2342, + 2343 + ] + }, + { + "teal": 2400, + "source": 702, + "pc": [ + 2344, + 2345 + ] + }, + { + "teal": 2401, + "source": 701, + "pc": [ + 2346, + 2347 + ] + }, + { + "teal": 2402, + "source": 701, + "pc": [ + 2348, + 2349 + ] + }, + { + "teal": 2403, + "source": 701, + "pc": [ + 2350, + 2351 + ] + }, + { + "teal": 2404, + "source": 701, + "pc": [ + 2352, + 2353, + 2354 + ] + }, + { + "teal": 2405, + "source": 700, + "pc": [ + 2355, + 2356 + ] + }, + { + "teal": 2406, + "source": 699, + "pc": [ + 2357, + 2358, + 2359 + ] + }, + { + "teal": 2410, + "source": 714, + "pc": [ + 2360, + 2361 + ] + }, + { + "teal": 2411, + "source": 714, + "pc": [ + 2362, + 2363 + ] + }, + { + "teal": 2412, + "source": 714, + "pc": [ + 2364, + 2365 + ] + }, + { + "teal": 2413, + "source": 714, + "pc": [ + 2366, + 2367, + 2368 + ] + }, + { + "teal": 2416, + "source": 644, + "pc": [ + 2369, + 2370 + ] + }, + { + "teal": 2419, + "source": 644, + "pc": [ + 2371, + 2372 + ] + }, + { + "teal": 2420, + "source": 644, + "pc": [ + 2373 + ] + }, + { + "teal": 2425, + "source": 732, + "pc": [ + 2374 + ] + }, + { + "teal": 2428, + "source": 732, + "pc": [ + 2375, + 2376, + 2377 + ] + }, + { + "teal": 2429, + "source": 732, + "pc": [ + 2378 + ] + }, + { + "teal": 2432, + "source": 732, + "pc": [ + 2379, + 2380, + 2381 + ] + }, + { + "teal": 2433, + "source": 732, + "pc": [ + 2382 + ] + }, + { + "teal": 2434, + "source": 732, + "pc": [ + 2383 + ] + }, + { + "teal": 2435, + "source": 732, + "pc": [ + 2384 + ] + }, + { + "teal": 2436, + "source": 732, + "pc": [ + 2385 + ] + }, + { + "teal": 2454, + "source": 732, + "pc": [ + 2386, + 2387, + 2388 + ] + }, + { + "teal": 2457, + "source": 732, + "pc": [ + 2389 + ] + }, + { + "teal": 2458, + "source": 732, + "pc": [ + 2390, + 2391 + ] + }, + { + "teal": 2462, + "source": 734, + "pc": [ + 2392, + 2393 + ] + }, + { + "teal": 2463, + "source": 734, + "pc": [ + 2394 + ] + }, + { + "teal": 2464, + "source": 734, + "pc": [ + 2395 + ] + }, + { + "teal": 2465, + "source": 734, + "pc": [ + 2396, + 2397 + ] + }, + { + "teal": 2466, + "source": 734, + "pc": [ + 2398 + ] + }, + { + "teal": 2467, + "source": 734, + "pc": [ + 2399 + ] + }, + { + "teal": 2468, + "source": 734, + "pc": [ + 2400, + 2401 + ] + }, + { + "teal": 2469, + "source": 734, + "pc": [ + 2402 + ] + }, + { + "teal": 2470, + "source": 734, + "pc": [ + 2403 + ] + }, + { + "teal": 2471, + "source": 734, + "pc": [ + 2404, + 2405 + ] + }, + { + "teal": 2475, + "source": 735, + "pc": [ + 2406, + 2407 + ] + }, + { + "teal": 2476, + "source": 735, + "pc": [ + 2408 + ] + }, + { + "teal": 2477, + "source": 735, + "pc": [ + 2409 + ] + }, + { + "teal": 2478, + "source": 735, + "pc": [ + 2410 + ] + }, + { + "teal": 2483, + "source": 737, + "pc": [ + 2411, + 2412 + ] + }, + { + "teal": 2484, + "source": 737, + "pc": [ + 2413, + 2414 + ] + }, + { + "teal": 2485, + "source": 737, + "pc": [ + 2415, + 2416 + ] + }, + { + "teal": 2486, + "source": 737, + "pc": [ + 2417 + ] + }, + { + "teal": 2487, + "source": 737, + "pc": [ + 2418 + ] + }, + { + "teal": 2488, + "source": 737, + "pc": [ + 2419, + 2420, + 2421 + ] + }, + { + "teal": 2493, + "source": 738, + "pc": [ + 2422, + 2423 + ] + }, + { + "teal": 2494, + "source": 738, + "pc": [ + 2424, + 2425 + ] + }, + { + "teal": 2495, + "source": 738, + "pc": [ + 2426 + ] + }, + { + "teal": 2496, + "source": 738, + "pc": [ + 2427, + 2428 + ] + }, + { + "teal": 2497, + "source": 738, + "pc": [ + 2429 + ] + }, + { + "teal": 2498, + "source": 738, + "pc": [ + 2430 + ] + }, + { + "teal": 2499, + "source": 738, + "pc": [ + 2431, + 2432 + ] + }, + { + "teal": 2500, + "source": 738, + "pc": [ + 2433 + ] + }, + { + "teal": 2501, + "source": 738, + "pc": [ + 2434, + 2435, + 2436 + ] + }, + { + "teal": 2506, + "source": 744, + "pc": [ + 2437, + 2438 + ] + }, + { + "teal": 2507, + "source": 744, + "pc": [ + 2439, + 2440 + ] + }, + { + "teal": 2511, + "source": 745, + "pc": [ + 2441, + 2442 + ] + }, + { + "teal": 2512, + "source": 745, + "pc": [ + 2443 + ] + }, + { + "teal": 2513, + "source": 745, + "pc": [ + 2444 + ] + }, + { + "teal": 2514, + "source": 745, + "pc": [ + 2445, + 2446 + ] + }, + { + "teal": 2515, + "source": 745, + "pc": [ + 2447 + ] + }, + { + "teal": 2516, + "source": 745, + "pc": [ + 2448 + ] + }, + { + "teal": 2517, + "source": 745, + "pc": [ + 2449, + 2450 + ] + }, + { + "teal": 2518, + "source": 745, + "pc": [ + 2451 + ] + }, + { + "teal": 2519, + "source": 745, + "pc": [ + 2452 + ] + }, + { + "teal": 2520, + "source": 745, + "pc": [ + 2453, + 2454 + ] + }, + { + "teal": 2525, + "source": 746, + "pc": [ + 2455, + 2456 + ] + }, + { + "teal": 2526, + "source": 746, + "pc": [ + 2457 + ] + }, + { + "teal": 2527, + "source": 746, + "pc": [ + 2458 + ] + }, + { + "teal": 2528, + "source": 746, + "pc": [ + 2459, + 2460, + 2461 + ] + }, + { + "teal": 2534, + "source": 748, + "pc": [ + 2462, + 2463 + ] + }, + { + "teal": 2535, + "source": 748, + "pc": [ + 2464, + 2465, + 2466, + 2467, + 2468, + 2469, + 2470, + 2471, + 2472, + 2473, + 2474, + 2475 + ] + }, + { + "teal": 2536, + "source": 748, + "pc": [ + 2476 + ] + }, + { + "teal": 2539, + "source": 748, + "errorMessage": "global state value does not exist: AppID.fromUint64(pool1AppID).globalState('lastPayout')", + "pc": [ + 2477 + ] + }, + { + "teal": 2540, + "source": 748, + "pc": [ + 2478, + 2479 + ] + }, + { + "teal": 2541, + "source": 748, + "pc": [ + 2480 + ] + }, + { + "teal": 2542, + "source": 748, + "pc": [ + 2481, + 2482, + 2483 + ] + }, + { + "teal": 2547, + "source": 749, + "pc": [ + 2484, + 2485 + ] + }, + { + "teal": 2548, + "source": 749, + "pc": [ + 2486, + 2487 + ] + }, + { + "teal": 2549, + "source": 749, + "pc": [ + 2488 + ] + }, + { + "teal": 2550, + "source": 749, + "pc": [ + 2489, + 2490 + ] + }, + { + "teal": 2551, + "source": 749, + "pc": [ + 2491 + ] + }, + { + "teal": 2552, + "source": 749, + "pc": [ + 2492 + ] + }, + { + "teal": 2553, + "source": 749, + "pc": [ + 2493, + 2494 + ] + }, + { + "teal": 2554, + "source": 749, + "pc": [ + 2495 + ] + }, + { + "teal": 2555, + "source": 749, + "pc": [ + 2496, + 2497, + 2498 + ] + }, + { + "teal": 2560, + "source": 751, + "pc": [ + 2499, + 2500, + 2501 + ] + }, + { + "teal": 2561, + "source": 751, + "pc": [ + 2502, + 2503 + ] + }, + { + "teal": 2562, + "source": 751, + "pc": [ + 2504 + ] + }, + { + "teal": 2563, + "source": 751, + "pc": [ + 2505, + 2506 + ] + }, + { + "teal": 2564, + "source": 751, + "pc": [ + 2507 + ] + }, + { + "teal": 2565, + "source": 751, + "pc": [ + 2508 + ] + }, + { + "teal": 2566, + "source": 751, + "pc": [ + 2509, + 2510 + ] + }, + { + "teal": 2567, + "source": 751, + "pc": [ + 2511 + ] + }, + { + "teal": 2568, + "source": 751, + "pc": [ + 2512 + ] + }, + { + "teal": 2569, + "source": 751, + "pc": [ + 2513, + 2514 + ] + }, + { + "teal": 2573, + "source": 752, + "pc": [ + 2515, + 2516 + ] + }, + { + "teal": 2574, + "source": 752, + "pc": [ + 2517, + 2518 + ] + }, + { + "teal": 2575, + "source": 752, + "pc": [ + 2519, + 2520 + ] + }, + { + "teal": 2576, + "source": 752, + "pc": [ + 2521 + ] + }, + { + "teal": 2577, + "source": 752, + "pc": [ + 2522 + ] + }, + { + "teal": 2578, + "source": 752, + "pc": [ + 2523, + 2524 + ] + }, + { + "teal": 2583, + "source": 754, + "pc": [ + 2525, + 2526 + ] + }, + { + "teal": 2584, + "source": 754, + "pc": [ + 2527, + 2528 + ] + }, + { + "teal": 2585, + "source": 754, + "pc": [ + 2529, + 2530 + ] + }, + { + "teal": 2586, + "source": 754, + "pc": [ + 2531 + ] + }, + { + "teal": 2587, + "source": 754, + "pc": [ + 2532 + ] + }, + { + "teal": 2588, + "source": 754, + "pc": [ + 2533, + 2534 + ] + }, + { + "teal": 2589, + "source": 754, + "pc": [ + 2535 + ] + }, + { + "teal": 2590, + "source": 754, + "pc": [ + 2536, + 2537, + 2538 + ] + }, + { + "teal": 2595, + "source": 755, + "pc": [ + 2539, + 2540 + ] + }, + { + "teal": 2596, + "source": 755, + "pc": [ + 2541, + 2542 + ] + }, + { + "teal": 2597, + "source": 755, + "pc": [ + 2543 + ] + }, + { + "teal": 2598, + "source": 755, + "pc": [ + 2544, + 2545 + ] + }, + { + "teal": 2599, + "source": 755, + "pc": [ + 2546 + ] + }, + { + "teal": 2600, + "source": 755, + "pc": [ + 2547 + ] + }, + { + "teal": 2601, + "source": 755, + "pc": [ + 2548, + 2549 + ] + }, + { + "teal": 2602, + "source": 755, + "pc": [ + 2550 + ] + }, + { + "teal": 2603, + "source": 755, + "pc": [ + 2551, + 2552, + 2553 + ] + }, + { + "teal": 2610, + "source": 758, + "pc": [ + 2554, + 2555 + ] + }, + { + "teal": 2611, + "source": 758, + "pc": [ + 2556, + 2557 + ] + }, + { + "teal": 2612, + "source": 758, + "pc": [ + 2558 + ] + }, + { + "teal": 2613, + "source": 758, + "pc": [ + 2559 + ] + }, + { + "teal": 2614, + "source": 758, + "pc": [ + 2560, + 2561 + ] + }, + { + "teal": 2615, + "source": 758, + "pc": [ + 2562 + ] + }, + { + "teal": 2616, + "source": 758, + "pc": [ + 2563 + ] + }, + { + "teal": 2617, + "source": 758, + "pc": [ + 2564, + 2565 + ] + }, + { + "teal": 2618, + "source": 758, + "pc": [ + 2566 + ] + }, + { + "teal": 2622, + "source": 760, + "pc": [ + 2567, + 2568 + ] + }, + { + "teal": 2623, + "source": 760, + "pc": [ + 2569, + 2570 + ] + }, + { + "teal": 2624, + "source": 760, + "pc": [ + 2571 + ] + }, + { + "teal": 2625, + "source": 760, + "pc": [ + 2572, + 2573 + ] + }, + { + "teal": 2626, + "source": 760, + "pc": [ + 2574 + ] + }, + { + "teal": 2627, + "source": 760, + "pc": [ + 2575 + ] + }, + { + "teal": 2628, + "source": 760, + "pc": [ + 2576, + 2577 + ] + }, + { + "teal": 2629, + "source": 760, + "pc": [ + 2578 + ] + }, + { + "teal": 2630, + "source": 760, + "pc": [ + 2579 + ] + }, + { + "teal": 2631, + "source": 760, + "pc": [ + 2580, + 2581 + ] + }, + { + "teal": 2635, + "source": 761, + "pc": [ + 2582, + 2583 + ] + }, + { + "teal": 2636, + "source": 761, + "pc": [ + 2584 + ] + }, + { + "teal": 2637, + "source": 761, + "pc": [ + 2585 + ] + }, + { + "teal": 2638, + "source": 761, + "pc": [ + 2586, + 2587 + ] + }, + { + "teal": 2639, + "source": 761, + "pc": [ + 2588 + ] + }, + { + "teal": 2640, + "source": 761, + "pc": [ + 2589 + ] + }, + { + "teal": 2641, + "source": 761, + "pc": [ + 2590, + 2591 + ] + }, + { + "teal": 2642, + "source": 761, + "pc": [ + 2592 + ] + }, + { + "teal": 2643, + "source": 761, + "pc": [ + 2593 + ] + }, + { + "teal": 2644, + "source": 761, + "pc": [ + 2594, + 2595 + ] + }, + { + "teal": 2648, + "source": 762, + "pc": [ + 2596 + ] + }, + { + "teal": 2649, + "source": 762, + "pc": [ + 2597, + 2598 + ] + }, + { + "teal": 2654, + "source": 762, + "pc": [ + 2599, + 2600 + ] + }, + { + "teal": 2655, + "source": 762, + "pc": [ + 2601, + 2602 + ] + }, + { + "teal": 2656, + "source": 762, + "pc": [ + 2603 + ] + }, + { + "teal": 2657, + "source": 762, + "pc": [ + 2604, + 2605, + 2606 + ] + }, + { + "teal": 2664, + "source": 768, + "pc": [ + 2607, + 2608 + ] + }, + { + "teal": 2665, + "source": 768, + "pc": [ + 2609, + 2610 + ] + }, + { + "teal": 2666, + "source": 768, + "pc": [ + 2611, + 2612 + ] + }, + { + "teal": 2667, + "source": 768, + "pc": [ + 2613 + ] + }, + { + "teal": 2668, + "source": 768, + "pc": [ + 2614 + ] + }, + { + "teal": 2669, + "source": 768, + "pc": [ + 2615, + 2616 + ] + }, + { + "teal": 2670, + "source": 768, + "pc": [ + 2617 + ] + }, + { + "teal": 2671, + "source": 768, + "pc": [ + 2618 + ] + }, + { + "teal": 2672, + "source": 768, + "pc": [ + 2619 + ] + }, + { + "teal": 2673, + "source": 768, + "pc": [ + 2620, + 2621 + ] + }, + { + "teal": 2674, + "source": 768, + "pc": [ + 2622 + ] + }, + { + "teal": 2675, + "source": 768, + "pc": [ + 2623 + ] + }, + { + "teal": 2676, + "source": 768, + "pc": [ + 2624, + 2625 + ] + }, + { + "teal": 2677, + "source": 768, + "pc": [ + 2626 + ] + }, + { + "teal": 2678, + "source": 768, + "pc": [ + 2627 + ] + }, + { + "teal": 2679, + "source": 768, + "pc": [ + 2628, + 2629 + ] + }, + { + "teal": 2680, + "source": 767, + "pc": [ + 2630 + ] + }, + { + "teal": 2681, + "source": 767, + "pc": [ + 2631 + ] + }, + { + "teal": 2682, + "source": 769, + "pc": [ + 2632, + 2633 + ] + }, + { + "teal": 2683, + "source": 767, + "pc": [ + 2634 + ] + }, + { + "teal": 2684, + "source": 767, + "pc": [ + 2635 + ] + }, + { + "teal": 2685, + "source": 767, + "pc": [ + 2636 + ] + }, + { + "teal": 2686, + "source": 767, + "pc": [ + 2637 + ] + }, + { + "teal": 2687, + "source": 767, + "pc": [ + 2638 + ] + }, + { + "teal": 2690, + "source": 767, + "errorMessage": "wideRatio failed", + "pc": [ + 2639 + ] + }, + { + "teal": 2691, + "source": 767, + "pc": [ + 2640, + 2641 + ] + }, + { + "teal": 2695, + "source": 771, + "pc": [ + 2642, + 2643 + ] + }, + { + "teal": 2696, + "source": 771, + "pc": [ + 2644, + 2645 + ] + }, + { + "teal": 2697, + "source": 771, + "pc": [ + 2646 + ] + }, + { + "teal": 2698, + "source": 771, + "pc": [ + 2647 + ] + }, + { + "teal": 2699, + "source": 771, + "pc": [ + 2648 + ] + }, + { + "teal": 2700, + "source": 771, + "pc": [ + 2649, + 2650 + ] + }, + { + "teal": 2701, + "source": 771, + "pc": [ + 2651 + ] + }, + { + "teal": 2702, + "source": 771, + "pc": [ + 2652 + ] + }, + { + "teal": 2703, + "source": 771, + "pc": [ + 2653, + 2654 + ] + }, + { + "teal": 2704, + "source": 771, + "pc": [ + 2655 + ] + }, + { + "teal": 2705, + "source": 771, + "pc": [ + 2656 + ] + }, + { + "teal": 2706, + "source": 771, + "pc": [ + 2657, + 2658 + ] + }, + { + "teal": 2707, + "source": 771, + "pc": [ + 2659 + ] + }, + { + "teal": 2712, + "source": 762, + "pc": [ + 2660, + 2661 + ] + }, + { + "teal": 2713, + "source": 762, + "pc": [ + 2662 + ] + }, + { + "teal": 2714, + "source": 762, + "pc": [ + 2663 + ] + }, + { + "teal": 2715, + "source": 762, + "pc": [ + 2664, + 2665 + ] + }, + { + "teal": 2716, + "source": 762, + "pc": [ + 2666, + 2667, + 2668 + ] + }, + { + "teal": 2721, + "source": 773, + "pc": [ + 2669, + 2670 + ] + }, + { + "teal": 2722, + "source": 773, + "pc": [ + 2671, + 2672 + ] + }, + { + "teal": 2723, + "source": 773, + "pc": [ + 2673 + ] + }, + { + "teal": 2724, + "source": 773, + "pc": [ + 2674, + 2675 + ] + }, + { + "teal": 2725, + "source": 773, + "pc": [ + 2676 + ] + }, + { + "teal": 2726, + "source": 773, + "pc": [ + 2677 + ] + }, + { + "teal": 2727, + "source": 773, + "pc": [ + 2678, + 2679 + ] + }, + { + "teal": 2728, + "source": 773, + "pc": [ + 2680 + ] + }, + { + "teal": 2732, + "source": 732, + "pc": [ + 2681, + 2682 + ] + }, + { + "teal": 2735, + "source": 732, + "pc": [ + 2683, + 2684 + ] + }, + { + "teal": 2736, + "source": 732, + "pc": [ + 2685 + ] + }, + { + "teal": 2741, + "source": 792, + "pc": [ + 2686, + 2687, + 2688 + ] + }, + { + "teal": 2742, + "source": 792, + "pc": [ + 2689 + ] + }, + { + "teal": 2745, + "source": 791, + "pc": [ + 2690, + 2691, + 2692 + ] + }, + { + "teal": 2746, + "source": 791, + "pc": [ + 2693 + ] + }, + { + "teal": 2749, + "source": 790, + "pc": [ + 2694, + 2695, + 2696 + ] + }, + { + "teal": 2750, + "source": 790, + "pc": [ + 2697 + ] + }, + { + "teal": 2753, + "source": 789, + "pc": [ + 2698, + 2699, + 2700 + ] + }, + { + "teal": 2754, + "source": 789, + "pc": [ + 2701 + ] + }, + { + "teal": 2757, + "source": 788, + "pc": [ + 2702, + 2703, + 2704 + ] + }, + { + "teal": 2758, + "source": 788, + "pc": [ + 2705 + ] + }, + { + "teal": 2759, + "source": 788, + "pc": [ + 2706 + ] + }, + { + "teal": 2760, + "source": 788, + "pc": [ + 2707 + ] + }, + { + "teal": 2761, + "source": 788, + "pc": [ + 2708 + ] + }, + { + "teal": 2764, + "source": 788, + "errorMessage": "argument 4 (poolKey) for stakeUpdatedViaRewards must be a (uint64,uint64,uint64)", + "pc": [ + 2709 + ] + }, + { + "teal": 2767, + "source": 787, + "pc": [ + 2710, + 2711, + 2712 + ] + }, + { + "teal": 2768, + "source": 787, + "pc": [ + 2713 + ] + }, + { + "teal": 2769, + "source": 787, + "pc": [ + 2714 + ] + }, + { + "teal": 2783, + "source": 787, + "pc": [ + 2715, + 2716, + 2717 + ] + }, + { + "teal": 2787, + "source": 794, + "pc": [ + 2718, + 2719 + ] + }, + { + "teal": 2788, + "source": 794, + "pc": [ + 2720, + 2721, + 2722 + ] + }, + { + "teal": 2792, + "source": 797, + "pc": [ + 2723, + 2724 + ] + }, + { + "teal": 2793, + "source": 797, + "pc": [ + 2725, + 2726 + ] + }, + { + "teal": 2794, + "source": 797, + "pc": [ + 2727, + 2728, + 2729 + ] + }, + { + "teal": 2795, + "source": 797, + "pc": [ + 2730 + ] + }, + { + "teal": 2796, + "source": 797, + "pc": [ + 2731 + ] + }, + { + "teal": 2797, + "source": 797, + "pc": [ + 2732 + ] + }, + { + "teal": 2798, + "source": 797, + "pc": [ + 2733, + 2734 + ] + }, + { + "teal": 2799, + "source": 797, + "pc": [ + 2735 + ] + }, + { + "teal": 2800, + "source": 797, + "pc": [ + 2736 + ] + }, + { + "teal": 2801, + "source": 797, + "pc": [ + 2737, + 2738 + ] + }, + { + "teal": 2802, + "source": 797, + "pc": [ + 2739 + ] + }, + { + "teal": 2803, + "source": 797, + "pc": [ + 2740, + 2741 + ] + }, + { + "teal": 2804, + "source": 797, + "pc": [ + 2742, + 2743 + ] + }, + { + "teal": 2805, + "source": 797, + "pc": [ + 2744, + 2745, + 2746 + ] + }, + { + "teal": 2806, + "source": 797, + "pc": [ + 2747 + ] + }, + { + "teal": 2807, + "source": 797, + "pc": [ + 2748 + ] + }, + { + "teal": 2808, + "source": 797, + "pc": [ + 2749 + ] + }, + { + "teal": 2809, + "source": 797, + "pc": [ + 2750, + 2751 + ] + }, + { + "teal": 2810, + "source": 797, + "pc": [ + 2752 + ] + }, + { + "teal": 2811, + "source": 797, + "pc": [ + 2753 + ] + }, + { + "teal": 2812, + "source": 797, + "pc": [ + 2754, + 2755 + ] + }, + { + "teal": 2813, + "source": 797, + "pc": [ + 2756 + ] + }, + { + "teal": 2814, + "source": 797, + "pc": [ + 2757 + ] + }, + { + "teal": 2815, + "source": 797, + "pc": [ + 2758 + ] + }, + { + "teal": 2816, + "source": 797, + "pc": [ + 2759, + 2760 + ] + }, + { + "teal": 2817, + "source": 797, + "pc": [ + 2761, + 2762, + 2763 + ] + }, + { + "teal": 2818, + "source": 797, + "pc": [ + 2764 + ] + }, + { + "teal": 2819, + "source": 797, + "pc": [ + 2765 + ] + }, + { + "teal": 2820, + "source": 797, + "pc": [ + 2766 + ] + }, + { + "teal": 2821, + "source": 797, + "pc": [ + 2767, + 2768 + ] + }, + { + "teal": 2822, + "source": 797, + "pc": [ + 2769 + ] + }, + { + "teal": 2823, + "source": 797, + "pc": [ + 2770 + ] + }, + { + "teal": 2824, + "source": 797, + "pc": [ + 2771, + 2772 + ] + }, + { + "teal": 2825, + "source": 797, + "pc": [ + 2773 + ] + }, + { + "teal": 2826, + "source": 797, + "pc": [ + 2774 + ] + }, + { + "teal": 2827, + "source": 797, + "pc": [ + 2775 + ] + }, + { + "teal": 2828, + "source": 797, + "pc": [ + 2776, + 2777 + ] + }, + { + "teal": 2829, + "source": 797, + "pc": [ + 2778, + 2779, + 2780 + ] + }, + { + "teal": 2830, + "source": 797, + "pc": [ + 2781 + ] + }, + { + "teal": 2831, + "source": 797, + "pc": [ + 2782 + ] + }, + { + "teal": 2832, + "source": 797, + "pc": [ + 2783 + ] + }, + { + "teal": 2833, + "source": 797, + "pc": [ + 2784, + 2785 + ] + }, + { + "teal": 2834, + "source": 797, + "pc": [ + 2786 + ] + }, + { + "teal": 2838, + "source": 798, + "pc": [ + 2787, + 2788 + ] + }, + { + "teal": 2839, + "source": 798, + "pc": [ + 2789 + ] + }, + { + "teal": 2840, + "source": 798, + "pc": [ + 2790 + ] + }, + { + "teal": 2841, + "source": 798, + "pc": [ + 2791 + ] + }, + { + "teal": 2842, + "source": 798, + "pc": [ + 2792, + 2793 + ] + }, + { + "teal": 2843, + "source": 798, + "pc": [ + 2794, + 2795, + 2796 + ] + }, + { + "teal": 2844, + "source": 798, + "pc": [ + 2797 + ] + }, + { + "teal": 2845, + "source": 798, + "pc": [ + 2798 + ] + }, + { + "teal": 2846, + "source": 798, + "pc": [ + 2799 + ] + }, + { + "teal": 2847, + "source": 798, + "pc": [ + 2800, + 2801 + ] + }, + { + "teal": 2848, + "source": 798, + "pc": [ + 2802 + ] + }, + { + "teal": 2849, + "source": 798, + "pc": [ + 2803 + ] + }, + { + "teal": 2850, + "source": 798, + "pc": [ + 2804, + 2805 + ] + }, + { + "teal": 2851, + "source": 798, + "pc": [ + 2806 + ] + }, + { + "teal": 2852, + "source": 798, + "pc": [ + 2807 + ] + }, + { + "teal": 2853, + "source": 798, + "pc": [ + 2808 + ] + }, + { + "teal": 2854, + "source": 798, + "pc": [ + 2809, + 2810 + ] + }, + { + "teal": 2855, + "source": 798, + "pc": [ + 2811, + 2812, + 2813 + ] + }, + { + "teal": 2856, + "source": 798, + "pc": [ + 2814 + ] + }, + { + "teal": 2857, + "source": 798, + "pc": [ + 2815 + ] + }, + { + "teal": 2858, + "source": 798, + "pc": [ + 2816 + ] + }, + { + "teal": 2859, + "source": 798, + "pc": [ + 2817, + 2818 + ] + }, + { + "teal": 2860, + "source": 798, + "pc": [ + 2819 + ] + }, + { + "teal": 2864, + "source": 799, + "pc": [ + 2820, + 2821 + ] + }, + { + "teal": 2865, + "source": 799, + "pc": [ + 2822 + ] + }, + { + "teal": 2866, + "source": 799, + "pc": [ + 2823 + ] + }, + { + "teal": 2867, + "source": 799, + "pc": [ + 2824 + ] + }, + { + "teal": 2868, + "source": 799, + "pc": [ + 2825, + 2826 + ] + }, + { + "teal": 2869, + "source": 799, + "pc": [ + 2827, + 2828, + 2829 + ] + }, + { + "teal": 2870, + "source": 799, + "pc": [ + 2830 + ] + }, + { + "teal": 2871, + "source": 799, + "pc": [ + 2831 + ] + }, + { + "teal": 2872, + "source": 799, + "pc": [ + 2832 + ] + }, + { + "teal": 2873, + "source": 799, + "pc": [ + 2833, + 2834 + ] + }, + { + "teal": 2874, + "source": 799, + "pc": [ + 2835 + ] + }, + { + "teal": 2875, + "source": 799, + "pc": [ + 2836 + ] + }, + { + "teal": 2876, + "source": 799, + "pc": [ + 2837, + 2838 + ] + }, + { + "teal": 2877, + "source": 799, + "pc": [ + 2839 + ] + }, + { + "teal": 2878, + "source": 799, + "pc": [ + 2840 + ] + }, + { + "teal": 2879, + "source": 799, + "pc": [ + 2841 + ] + }, + { + "teal": 2880, + "source": 799, + "pc": [ + 2842, + 2843 + ] + }, + { + "teal": 2881, + "source": 799, + "pc": [ + 2844, + 2845, + 2846 + ] + }, + { + "teal": 2882, + "source": 799, + "pc": [ + 2847 + ] + }, + { + "teal": 2883, + "source": 799, + "pc": [ + 2848 + ] + }, + { + "teal": 2884, + "source": 799, + "pc": [ + 2849 + ] + }, + { + "teal": 2885, + "source": 799, + "pc": [ + 2850, + 2851 + ] + }, + { + "teal": 2886, + "source": 799, + "pc": [ + 2852 + ] + }, + { + "teal": 2890, + "source": 801, + "pc": [ + 2853, + 2854 + ] + }, + { + "teal": 2891, + "source": 801, + "pc": [ + 2855 + ] + }, + { + "teal": 2892, + "source": 801, + "pc": [ + 2856, + 2857 + ] + }, + { + "teal": 2893, + "source": 801, + "pc": [ + 2858 + ] + }, + { + "teal": 2894, + "source": 801, + "pc": [ + 2859, + 2860 + ] + }, + { + "teal": 2895, + "source": 801, + "pc": [ + 2861 + ] + }, + { + "teal": 2896, + "source": 801, + "pc": [ + 2862 + ] + }, + { + "teal": 2900, + "source": 804, + "pc": [ + 2863, + 2864 + ] + }, + { + "teal": 2901, + "source": 804, + "pc": [ + 2865, + 2866, + 2867 + ] + }, + { + "teal": 2902, + "source": 804, + "pc": [ + 2868 + ] + }, + { + "teal": 2903, + "source": 804, + "pc": [ + 2869, + 2870, + 2871 + ] + }, + { + "teal": 2904, + "source": 787, + "pc": [ + 2872 + ] + }, + { + "teal": 2909, + "source": 834, + "pc": [ + 2873, + 2874, + 2875 + ] + }, + { + "teal": 2910, + "source": 834, + "pc": [ + 2876 + ] + }, + { + "teal": 2911, + "source": 834, + "pc": [ + 2877 + ] + }, + { + "teal": 2912, + "source": 834, + "pc": [ + 2878 + ] + }, + { + "teal": 2913, + "source": 834, + "pc": [ + 2879 + ] + }, + { + "teal": 2916, + "source": 834, + "errorMessage": "argument 0 (stakerRemoved) for stakeRemoved must be a bool", + "pc": [ + 2880 + ] + }, + { + "teal": 2917, + "source": 834, + "pc": [ + 2881 + ] + }, + { + "teal": 2918, + "source": 834, + "pc": [ + 2882 + ] + }, + { + "teal": 2921, + "source": 833, + "pc": [ + 2883, + 2884, + 2885 + ] + }, + { + "teal": 2922, + "source": 833, + "pc": [ + 2886 + ] + }, + { + "teal": 2925, + "source": 832, + "pc": [ + 2887, + 2888, + 2889 + ] + }, + { + "teal": 2926, + "source": 832, + "pc": [ + 2890 + ] + }, + { + "teal": 2929, + "source": 831, + "pc": [ + 2891, + 2892, + 2893 + ] + }, + { + "teal": 2930, + "source": 831, + "pc": [ + 2894 + ] + }, + { + "teal": 2931, + "source": 831, + "pc": [ + 2895 + ] + }, + { + "teal": 2932, + "source": 831, + "pc": [ + 2896, + 2897 + ] + }, + { + "teal": 2933, + "source": 831, + "pc": [ + 2898 + ] + }, + { + "teal": 2936, + "source": 831, + "errorMessage": "argument 3 (staker) for stakeRemoved must be a address", + "pc": [ + 2899 + ] + }, + { + "teal": 2939, + "source": 830, + "pc": [ + 2900, + 2901, + 2902 + ] + }, + { + "teal": 2940, + "source": 830, + "pc": [ + 2903 + ] + }, + { + "teal": 2941, + "source": 830, + "pc": [ + 2904 + ] + }, + { + "teal": 2942, + "source": 830, + "pc": [ + 2905 + ] + }, + { + "teal": 2943, + "source": 830, + "pc": [ + 2906 + ] + }, + { + "teal": 2946, + "source": 830, + "errorMessage": "argument 4 (poolKey) for stakeRemoved must be a (uint64,uint64,uint64)", + "pc": [ + 2907 + ] + }, + { + "teal": 2949, + "source": 829, + "pc": [ + 2908, + 2909, + 2910 + ] + }, + { + "teal": 2950, + "source": 829, + "pc": [ + 2911 + ] + }, + { + "teal": 2951, + "source": 829, + "pc": [ + 2912 + ] + }, + { + "teal": 2966, + "source": 829, + "pc": [ + 2913, + 2914, + 2915 + ] + }, + { + "teal": 2969, + "source": 829, + "pc": [ + 2916 + ] + }, + { + "teal": 2970, + "source": 829, + "pc": [ + 2917, + 2918 + ] + }, + { + "teal": 2975, + "source": 836, + "pc": [ + 2919, + 2920 + ] + }, + { + "teal": 2976, + "source": 836, + "pc": [ + 2921, + 2922 + ] + }, + { + "teal": 2977, + "source": 836, + "pc": [ + 2923 + ] + }, + { + "teal": 2978, + "source": 836, + "pc": [ + 2924, + 2925, + 2926 + ] + }, + { + "teal": 2983, + "source": 837, + "pc": [ + 2927 + ] + }, + { + "teal": 2984, + "source": 837, + "pc": [ + 2928, + 2929 + ] + }, + { + "teal": 2985, + "source": 837, + "pc": [ + 2930, + 2931 + ] + }, + { + "teal": 2986, + "source": 837, + "pc": [ + 2932 + ] + }, + { + "teal": 2987, + "source": 837, + "pc": [ + 2933, + 2934 + ] + }, + { + "teal": 2988, + "source": 837, + "pc": [ + 2935, + 2936 + ] + }, + { + "teal": 2989, + "source": 837, + "pc": [ + 2937 + ] + }, + { + "teal": 2990, + "source": 837, + "pc": [ + 2938, + 2939 + ] + }, + { + "teal": 2991, + "source": 837, + "pc": [ + 2940, + 2941 + ] + }, + { + "teal": 2992, + "source": 837, + "pc": [ + 2942, + 2943 + ] + }, + { + "teal": 2993, + "source": 837, + "pc": [ + 2944, + 2945 + ] + }, + { + "teal": 2994, + "source": 837, + "pc": [ + 2946 + ] + }, + { + "teal": 2999, + "source": 839, + "pc": [ + 2947, + 2948 + ] + }, + { + "teal": 3000, + "source": 839, + "pc": [ + 2949, + 2950, + 2951 + ] + }, + { + "teal": 3004, + "source": 843, + "pc": [ + 2952, + 2953 + ] + }, + { + "teal": 3005, + "source": 843, + "pc": [ + 2954 + ] + }, + { + "teal": 3006, + "source": 843, + "pc": [ + 2955 + ] + }, + { + "teal": 3007, + "source": 843, + "pc": [ + 2956 + ] + }, + { + "teal": 3008, + "source": 843, + "pc": [ + 2957, + 2958, + 2959 + ] + }, + { + "teal": 3009, + "source": 843, + "pc": [ + 2960, + 2961 + ] + }, + { + "teal": 3010, + "source": 843, + "pc": [ + 2962 + ] + }, + { + "teal": 3011, + "source": 843, + "pc": [ + 2963 + ] + }, + { + "teal": 3012, + "source": 843, + "pc": [ + 2964 + ] + }, + { + "teal": 3016, + "source": 843, + "errorMessage": "should only be called if algo or reward was removed", + "pc": [ + 2965 + ] + }, + { + "teal": 3020, + "source": 846, + "pc": [ + 2966, + 2967 + ] + }, + { + "teal": 3021, + "source": 846, + "pc": [ + 2968, + 2969 + ] + }, + { + "teal": 3022, + "source": 846, + "pc": [ + 2970, + 2971, + 2972 + ] + }, + { + "teal": 3023, + "source": 846, + "pc": [ + 2973 + ] + }, + { + "teal": 3024, + "source": 846, + "pc": [ + 2974 + ] + }, + { + "teal": 3025, + "source": 846, + "pc": [ + 2975 + ] + }, + { + "teal": 3026, + "source": 846, + "pc": [ + 2976, + 2977 + ] + }, + { + "teal": 3027, + "source": 846, + "pc": [ + 2978 + ] + }, + { + "teal": 3028, + "source": 846, + "pc": [ + 2979 + ] + }, + { + "teal": 3029, + "source": 846, + "pc": [ + 2980, + 2981 + ] + }, + { + "teal": 3030, + "source": 846, + "pc": [ + 2982 + ] + }, + { + "teal": 3031, + "source": 846, + "pc": [ + 2983, + 2984 + ] + }, + { + "teal": 3032, + "source": 846, + "pc": [ + 2985, + 2986 + ] + }, + { + "teal": 3033, + "source": 846, + "pc": [ + 2987, + 2988, + 2989 + ] + }, + { + "teal": 3034, + "source": 846, + "pc": [ + 2990 + ] + }, + { + "teal": 3035, + "source": 846, + "pc": [ + 2991 + ] + }, + { + "teal": 3036, + "source": 846, + "pc": [ + 2992 + ] + }, + { + "teal": 3037, + "source": 846, + "pc": [ + 2993, + 2994 + ] + }, + { + "teal": 3038, + "source": 846, + "pc": [ + 2995 + ] + }, + { + "teal": 3039, + "source": 846, + "pc": [ + 2996 + ] + }, + { + "teal": 3040, + "source": 846, + "pc": [ + 2997, + 2998 + ] + }, + { + "teal": 3041, + "source": 846, + "pc": [ + 2999 + ] + }, + { + "teal": 3042, + "source": 846, + "pc": [ + 3000 + ] + }, + { + "teal": 3043, + "source": 846, + "pc": [ + 3001 + ] + }, + { + "teal": 3044, + "source": 846, + "pc": [ + 3002, + 3003 + ] + }, + { + "teal": 3045, + "source": 846, + "pc": [ + 3004, + 3005, + 3006 + ] + }, + { + "teal": 3046, + "source": 846, + "pc": [ + 3007 + ] + }, + { + "teal": 3047, + "source": 846, + "pc": [ + 3008 + ] + }, + { + "teal": 3048, + "source": 846, + "pc": [ + 3009 + ] + }, + { + "teal": 3049, + "source": 846, + "pc": [ + 3010, + 3011 + ] + }, + { + "teal": 3050, + "source": 846, + "pc": [ + 3012 + ] + }, + { + "teal": 3051, + "source": 846, + "pc": [ + 3013 + ] + }, + { + "teal": 3052, + "source": 846, + "pc": [ + 3014, + 3015 + ] + }, + { + "teal": 3053, + "source": 846, + "pc": [ + 3016 + ] + }, + { + "teal": 3054, + "source": 846, + "pc": [ + 3017 + ] + }, + { + "teal": 3055, + "source": 846, + "pc": [ + 3018 + ] + }, + { + "teal": 3056, + "source": 846, + "pc": [ + 3019, + 3020 + ] + }, + { + "teal": 3057, + "source": 846, + "pc": [ + 3021, + 3022, + 3023 + ] + }, + { + "teal": 3058, + "source": 846, + "pc": [ + 3024 + ] + }, + { + "teal": 3059, + "source": 846, + "pc": [ + 3025 + ] + }, + { + "teal": 3060, + "source": 846, + "pc": [ + 3026 + ] + }, + { + "teal": 3061, + "source": 846, + "pc": [ + 3027, + 3028 + ] + }, + { + "teal": 3062, + "source": 846, + "pc": [ + 3029 + ] + }, + { + "teal": 3066, + "source": 847, + "pc": [ + 3030, + 3031 + ] + }, + { + "teal": 3067, + "source": 847, + "pc": [ + 3032 + ] + }, + { + "teal": 3068, + "source": 847, + "pc": [ + 3033 + ] + }, + { + "teal": 3069, + "source": 847, + "pc": [ + 3034 + ] + }, + { + "teal": 3070, + "source": 847, + "pc": [ + 3035, + 3036 + ] + }, + { + "teal": 3071, + "source": 847, + "pc": [ + 3037, + 3038, + 3039 + ] + }, + { + "teal": 3072, + "source": 847, + "pc": [ + 3040 + ] + }, + { + "teal": 3073, + "source": 847, + "pc": [ + 3041 + ] + }, + { + "teal": 3074, + "source": 847, + "pc": [ + 3042 + ] + }, + { + "teal": 3075, + "source": 847, + "pc": [ + 3043, + 3044 + ] + }, + { + "teal": 3076, + "source": 847, + "pc": [ + 3045 + ] + }, + { + "teal": 3077, + "source": 847, + "pc": [ + 3046 + ] + }, + { + "teal": 3078, + "source": 847, + "pc": [ + 3047, + 3048 + ] + }, + { + "teal": 3079, + "source": 847, + "pc": [ + 3049 + ] + }, + { + "teal": 3080, + "source": 847, + "pc": [ + 3050 + ] + }, + { + "teal": 3081, + "source": 847, + "pc": [ + 3051 + ] + }, + { + "teal": 3082, + "source": 847, + "pc": [ + 3052, + 3053 + ] + }, + { + "teal": 3083, + "source": 847, + "pc": [ + 3054, + 3055, + 3056 + ] + }, + { + "teal": 3084, + "source": 847, + "pc": [ + 3057 + ] + }, + { + "teal": 3085, + "source": 847, + "pc": [ + 3058 + ] + }, + { + "teal": 3086, + "source": 847, + "pc": [ + 3059 + ] + }, + { + "teal": 3087, + "source": 847, + "pc": [ + 3060, + 3061 + ] + }, + { + "teal": 3088, + "source": 847, + "pc": [ + 3062 + ] + }, + { + "teal": 3092, + "source": 848, + "pc": [ + 3063, + 3064 + ] + }, + { + "teal": 3093, + "source": 848, + "pc": [ + 3065 + ] + }, + { + "teal": 3094, + "source": 848, + "pc": [ + 3066, + 3067 + ] + }, + { + "teal": 3095, + "source": 848, + "pc": [ + 3068 + ] + }, + { + "teal": 3096, + "source": 848, + "pc": [ + 3069, + 3070 + ] + }, + { + "teal": 3097, + "source": 848, + "pc": [ + 3071 + ] + }, + { + "teal": 3098, + "source": 848, + "pc": [ + 3072 + ] + }, + { + "teal": 3103, + "source": 850, + "pc": [ + 3073, + 3074 + ] + }, + { + "teal": 3104, + "source": 850, + "pc": [ + 3075 + ] + }, + { + "teal": 3105, + "source": 850, + "pc": [ + 3076 + ] + }, + { + "teal": 3106, + "source": 850, + "pc": [ + 3077, + 3078, + 3079 + ] + }, + { + "teal": 3111, + "source": 851, + "pc": [ + 3080, + 3081 + ] + }, + { + "teal": 3112, + "source": 851, + "pc": [ + 3082 + ] + }, + { + "teal": 3113, + "source": 851, + "pc": [ + 3083 + ] + }, + { + "teal": 3114, + "source": 851, + "pc": [ + 3084, + 3085 + ] + }, + { + "teal": 3115, + "source": 851, + "pc": [ + 3086, + 3087, + 3088 + ] + }, + { + "teal": 3116, + "source": 851, + "pc": [ + 3089 + ] + }, + { + "teal": 3117, + "source": 851, + "pc": [ + 3090 + ] + }, + { + "teal": 3118, + "source": 851, + "pc": [ + 3091 + ] + }, + { + "teal": 3119, + "source": 851, + "pc": [ + 3092, + 3093 + ] + }, + { + "teal": 3120, + "source": 851, + "pc": [ + 3094 + ] + }, + { + "teal": 3121, + "source": 851, + "pc": [ + 3095 + ] + }, + { + "teal": 3122, + "source": 851, + "pc": [ + 3096, + 3097 + ] + }, + { + "teal": 3126, + "source": 852, + "pc": [ + 3098, + 3099 + ] + }, + { + "teal": 3127, + "source": 852, + "pc": [ + 3100 + ] + }, + { + "teal": 3128, + "source": 852, + "pc": [ + 3101 + ] + }, + { + "teal": 3131, + "source": 852, + "errorMessage": "rewardRemoved can't be set if validator doesn't have reward token!", + "pc": [ + 3102 + ] + }, + { + "teal": 3138, + "source": 854, + "pc": [ + 3103, + 3104 + ] + }, + { + "teal": 3139, + "source": 854, + "pc": [ + 3105 + ] + }, + { + "teal": 3140, + "source": 854, + "pc": [ + 3106 + ] + }, + { + "teal": 3141, + "source": 854, + "pc": [ + 3107, + 3108 + ] + }, + { + "teal": 3142, + "source": 854, + "pc": [ + 3109, + 3110, + 3111 + ] + }, + { + "teal": 3143, + "source": 854, + "pc": [ + 3112 + ] + }, + { + "teal": 3144, + "source": 854, + "pc": [ + 3113 + ] + }, + { + "teal": 3145, + "source": 854, + "pc": [ + 3114 + ] + }, + { + "teal": 3146, + "source": 854, + "pc": [ + 3115, + 3116 + ] + }, + { + "teal": 3147, + "source": 854, + "pc": [ + 3117 + ] + }, + { + "teal": 3148, + "source": 854, + "pc": [ + 3118 + ] + }, + { + "teal": 3149, + "source": 854, + "pc": [ + 3119, + 3120 + ] + }, + { + "teal": 3150, + "source": 854, + "pc": [ + 3121 + ] + }, + { + "teal": 3153, + "source": 853, + "errorMessage": "reward being removed must be covered by hold back amount", + "pc": [ + 3122 + ] + }, + { + "teal": 3157, + "source": 859, + "pc": [ + 3123, + 3124 + ] + }, + { + "teal": 3158, + "source": 859, + "pc": [ + 3125 + ] + }, + { + "teal": 3159, + "source": 859, + "pc": [ + 3126 + ] + }, + { + "teal": 3160, + "source": 859, + "pc": [ + 3127 + ] + }, + { + "teal": 3161, + "source": 859, + "pc": [ + 3128, + 3129 + ] + }, + { + "teal": 3162, + "source": 859, + "pc": [ + 3130, + 3131, + 3132 + ] + }, + { + "teal": 3163, + "source": 859, + "pc": [ + 3133 + ] + }, + { + "teal": 3164, + "source": 859, + "pc": [ + 3134 + ] + }, + { + "teal": 3165, + "source": 859, + "pc": [ + 3135 + ] + }, + { + "teal": 3166, + "source": 859, + "pc": [ + 3136, + 3137 + ] + }, + { + "teal": 3167, + "source": 859, + "pc": [ + 3138 + ] + }, + { + "teal": 3168, + "source": 859, + "pc": [ + 3139 + ] + }, + { + "teal": 3169, + "source": 859, + "pc": [ + 3140, + 3141 + ] + }, + { + "teal": 3170, + "source": 859, + "pc": [ + 3142 + ] + }, + { + "teal": 3171, + "source": 859, + "pc": [ + 3143 + ] + }, + { + "teal": 3172, + "source": 859, + "pc": [ + 3144 + ] + }, + { + "teal": 3173, + "source": 859, + "pc": [ + 3145, + 3146 + ] + }, + { + "teal": 3174, + "source": 859, + "pc": [ + 3147, + 3148, + 3149 + ] + }, + { + "teal": 3175, + "source": 859, + "pc": [ + 3150 + ] + }, + { + "teal": 3176, + "source": 859, + "pc": [ + 3151 + ] + }, + { + "teal": 3177, + "source": 859, + "pc": [ + 3152 + ] + }, + { + "teal": 3178, + "source": 859, + "pc": [ + 3153, + 3154 + ] + }, + { + "teal": 3179, + "source": 859, + "pc": [ + 3155 + ] + }, + { + "teal": 3184, + "source": 864, + "pc": [ + 3156, + 3157 + ] + }, + { + "teal": 3185, + "source": 864, + "pc": [ + 3158, + 3159, + 3160 + ] + }, + { + "teal": 3186, + "source": 864, + "pc": [ + 3161 + ] + }, + { + "teal": 3187, + "source": 864, + "pc": [ + 3162 + ] + }, + { + "teal": 3188, + "source": 864, + "pc": [ + 3163 + ] + }, + { + "teal": 3189, + "source": 864, + "pc": [ + 3164, + 3165, + 3166 + ] + }, + { + "teal": 3197, + "source": 865, + "pc": [ + 3167 + ] + }, + { + "teal": 3198, + "source": 865, + "pc": [ + 3168, + 3169 + ] + }, + { + "teal": 3199, + "source": 865, + "pc": [ + 3170, + 3171 + ] + }, + { + "teal": 3200, + "source": 865, + "pc": [ + 3172, + 3173 + ] + }, + { + "teal": 3201, + "source": 865, + "pc": [ + 3174, + 3175 + ] + }, + { + "teal": 3205, + "source": 866, + "pc": [ + 3176, + 3177 + ] + }, + { + "teal": 3206, + "source": 866, + "pc": [ + 3178 + ] + }, + { + "teal": 3207, + "source": 866, + "pc": [ + 3179 + ] + }, + { + "teal": 3208, + "source": 866, + "pc": [ + 3180, + 3181 + ] + }, + { + "teal": 3209, + "source": 866, + "pc": [ + 3182, + 3183, + 3184 + ] + }, + { + "teal": 3210, + "source": 866, + "pc": [ + 3185 + ] + }, + { + "teal": 3211, + "source": 866, + "pc": [ + 3186 + ] + }, + { + "teal": 3212, + "source": 866, + "pc": [ + 3187 + ] + }, + { + "teal": 3213, + "source": 866, + "pc": [ + 3188, + 3189 + ] + }, + { + "teal": 3214, + "source": 866, + "pc": [ + 3190 + ] + }, + { + "teal": 3215, + "source": 866, + "pc": [ + 3191 + ] + }, + { + "teal": 3216, + "source": 866, + "pc": [ + 3192, + 3193 + ] + }, + { + "teal": 3220, + "source": 867, + "pc": [ + 3194, + 3195 + ] + }, + { + "teal": 3221, + "source": 867, + "pc": [ + 3196, + 3197 + ] + }, + { + "teal": 3222, + "source": 867, + "pc": [ + 3198, + 3199 + ] + }, + { + "teal": 3223, + "source": 867, + "pc": [ + 3200 + ] + }, + { + "teal": 3224, + "source": 867, + "pc": [ + 3201, + 3202 + ] + }, + { + "teal": 3225, + "source": 867, + "pc": [ + 3203, + 3204 + ] + }, + { + "teal": 3226, + "source": 867, + "pc": [ + 3205 + ] + }, + { + "teal": 3227, + "source": 867, + "pc": [ + 3206, + 3207 + ] + }, + { + "teal": 3230, + "source": 865, + "pc": [ + 3208 + ] + }, + { + "teal": 3231, + "source": 865, + "pc": [ + 3209, + 3210 + ] + }, + { + "teal": 3234, + "source": 865, + "pc": [ + 3211 + ] + }, + { + "teal": 3237, + "source": 850, + "pc": [ + 3212, + 3213, + 3214 + ] + }, + { + "teal": 3245, + "source": 892, + "pc": [ + 3215, + 3216 + ] + }, + { + "teal": 3246, + "source": 892, + "pc": [ + 3217, + 3218, + 3219 + ] + }, + { + "teal": 3251, + "source": 894, + "pc": [ + 3220, + 3221 + ] + }, + { + "teal": 3252, + "source": 894, + "pc": [ + 3222, + 3223 + ] + }, + { + "teal": 3253, + "source": 894, + "pc": [ + 3224, + 3225, + 3226 + ] + }, + { + "teal": 3254, + "source": 894, + "pc": [ + 3227 + ] + }, + { + "teal": 3255, + "source": 894, + "pc": [ + 3228 + ] + }, + { + "teal": 3256, + "source": 894, + "pc": [ + 3229 + ] + }, + { + "teal": 3257, + "source": 894, + "pc": [ + 3230, + 3231 + ] + }, + { + "teal": 3258, + "source": 894, + "pc": [ + 3232 + ] + }, + { + "teal": 3259, + "source": 894, + "pc": [ + 3233 + ] + }, + { + "teal": 3260, + "source": 894, + "pc": [ + 3234 + ] + }, + { + "teal": 3261, + "source": 894, + "pc": [ + 3235 + ] + }, + { + "teal": 3262, + "source": 894, + "pc": [ + 3236, + 3237 + ] + }, + { + "teal": 3263, + "source": 894, + "pc": [ + 3238, + 3239 + ] + }, + { + "teal": 3264, + "source": 894, + "pc": [ + 3240, + 3241, + 3242 + ] + }, + { + "teal": 3265, + "source": 894, + "pc": [ + 3243 + ] + }, + { + "teal": 3266, + "source": 894, + "pc": [ + 3244 + ] + }, + { + "teal": 3267, + "source": 894, + "pc": [ + 3245 + ] + }, + { + "teal": 3268, + "source": 894, + "pc": [ + 3246, + 3247 + ] + }, + { + "teal": 3269, + "source": 894, + "pc": [ + 3248 + ] + }, + { + "teal": 3270, + "source": 894, + "pc": [ + 3249 + ] + }, + { + "teal": 3271, + "source": 894, + "pc": [ + 3250 + ] + }, + { + "teal": 3272, + "source": 894, + "pc": [ + 3251 + ] + }, + { + "teal": 3273, + "source": 894, + "pc": [ + 3252, + 3253 + ] + }, + { + "teal": 3274, + "source": 894, + "pc": [ + 3254 + ] + }, + { + "teal": 3275, + "source": 894, + "pc": [ + 3255, + 3256 + ] + }, + { + "teal": 3276, + "source": 894, + "pc": [ + 3257, + 3258, + 3259 + ] + }, + { + "teal": 3277, + "source": 894, + "pc": [ + 3260 + ] + }, + { + "teal": 3278, + "source": 894, + "pc": [ + 3261 + ] + }, + { + "teal": 3279, + "source": 894, + "pc": [ + 3262 + ] + }, + { + "teal": 3280, + "source": 894, + "pc": [ + 3263, + 3264 + ] + }, + { + "teal": 3281, + "source": 894, + "pc": [ + 3265 + ] + }, + { + "teal": 3282, + "source": 894, + "pc": [ + 3266 + ] + }, + { + "teal": 3283, + "source": 894, + "pc": [ + 3267 + ] + }, + { + "teal": 3284, + "source": 894, + "pc": [ + 3268 + ] + }, + { + "teal": 3285, + "source": 894, + "pc": [ + 3269 + ] + }, + { + "teal": 3286, + "source": 894, + "pc": [ + 3270, + 3271, + 3272 + ] + }, + { + "teal": 3287, + "source": 894, + "pc": [ + 3273 + ] + }, + { + "teal": 3288, + "source": 894, + "pc": [ + 3274, + 3275 + ] + }, + { + "teal": 3289, + "source": 894, + "pc": [ + 3276, + 3277, + 3278 + ] + }, + { + "teal": 3290, + "source": 894, + "pc": [ + 3279 + ] + }, + { + "teal": 3291, + "source": 894, + "pc": [ + 3280 + ] + }, + { + "teal": 3292, + "source": 894, + "pc": [ + 3281 + ] + }, + { + "teal": 3293, + "source": 894, + "pc": [ + 3282, + 3283 + ] + }, + { + "teal": 3294, + "source": 894, + "pc": [ + 3284 + ] + }, + { + "teal": 3302, + "source": 897, + "pc": [ + 3285, + 3286 + ] + }, + { + "teal": 3303, + "source": 897, + "pc": [ + 3287, + 3288, + 3289 + ] + }, + { + "teal": 3304, + "source": 897, + "pc": [ + 3290 + ] + }, + { + "teal": 3305, + "source": 897, + "pc": [ + 3291 + ] + }, + { + "teal": 3306, + "source": 898, + "pc": [ + 3292, + 3293 + ] + }, + { + "teal": 3307, + "source": 898, + "pc": [ + 3294, + 3295, + 3296 + ] + }, + { + "teal": 3308, + "source": 898, + "pc": [ + 3297 + ] + }, + { + "teal": 3309, + "source": 898, + "pc": [ + 3298 + ] + }, + { + "teal": 3310, + "source": 898, + "pc": [ + 3299 + ] + }, + { + "teal": 3311, + "source": 899, + "pc": [ + 3300, + 3301 + ] + }, + { + "teal": 3312, + "source": 899, + "pc": [ + 3302, + 3303, + 3304 + ] + }, + { + "teal": 3313, + "source": 899, + "pc": [ + 3305 + ] + }, + { + "teal": 3314, + "source": 899, + "pc": [ + 3306 + ] + }, + { + "teal": 3315, + "source": 899, + "pc": [ + 3307 + ] + }, + { + "teal": 3316, + "source": 896, + "pc": [ + 3308, + 3309 + ] + }, + { + "teal": 3317, + "source": 896, + "pc": [ + 3310, + 3311, + 3312 + ] + }, + { + "teal": 3318, + "source": 896, + "pc": [ + 3313, + 3314 + ] + }, + { + "teal": 3322, + "source": 901, + "pc": [ + 3315, + 3316 + ] + }, + { + "teal": 3323, + "source": 901, + "pc": [ + 3317, + 3318 + ] + }, + { + "teal": 3324, + "source": 901, + "pc": [ + 3319, + 3320 + ] + }, + { + "teal": 3325, + "source": 901, + "pc": [ + 3321 + ] + }, + { + "teal": 3326, + "source": 901, + "pc": [ + 3322 + ] + }, + { + "teal": 3327, + "source": 901, + "pc": [ + 3323, + 3324 + ] + }, + { + "teal": 3331, + "source": 902, + "pc": [ + 3325, + 3326 + ] + }, + { + "teal": 3332, + "source": 902, + "pc": [ + 3327, + 3328 + ] + }, + { + "teal": 3333, + "source": 902, + "pc": [ + 3329, + 3330 + ] + }, + { + "teal": 3334, + "source": 902, + "pc": [ + 3331 + ] + }, + { + "teal": 3335, + "source": 902, + "pc": [ + 3332 + ] + }, + { + "teal": 3336, + "source": 902, + "pc": [ + 3333, + 3334 + ] + }, + { + "teal": 3341, + "source": 904, + "pc": [ + 3335, + 3336 + ] + }, + { + "teal": 3342, + "source": 904, + "pc": [ + 3337, + 3338, + 3339 + ] + }, + { + "teal": 3347, + "source": 905, + "pc": [ + 3340, + 3341 + ] + }, + { + "teal": 3348, + "source": 905, + "pc": [ + 3342 + ] + }, + { + "teal": 3349, + "source": 905, + "pc": [ + 3343 + ] + }, + { + "teal": 3350, + "source": 905, + "pc": [ + 3344 + ] + }, + { + "teal": 3351, + "source": 905, + "pc": [ + 3345, + 3346 + ] + }, + { + "teal": 3352, + "source": 905, + "pc": [ + 3347, + 3348, + 3349 + ] + }, + { + "teal": 3353, + "source": 905, + "pc": [ + 3350 + ] + }, + { + "teal": 3354, + "source": 905, + "pc": [ + 3351 + ] + }, + { + "teal": 3355, + "source": 905, + "pc": [ + 3352 + ] + }, + { + "teal": 3356, + "source": 905, + "pc": [ + 3353, + 3354 + ] + }, + { + "teal": 3357, + "source": 905, + "pc": [ + 3355 + ] + }, + { + "teal": 3358, + "source": 905, + "pc": [ + 3356 + ] + }, + { + "teal": 3359, + "source": 905, + "pc": [ + 3357 + ] + }, + { + "teal": 3360, + "source": 905, + "pc": [ + 3358 + ] + }, + { + "teal": 3361, + "source": 905, + "pc": [ + 3359 + ] + }, + { + "teal": 3362, + "source": 905, + "pc": [ + 3360 + ] + }, + { + "teal": 3363, + "source": 905, + "pc": [ + 3361, + 3362 + ] + }, + { + "teal": 3364, + "source": 905, + "pc": [ + 3363, + 3364, + 3365 + ] + }, + { + "teal": 3365, + "source": 905, + "pc": [ + 3366 + ] + }, + { + "teal": 3366, + "source": 905, + "pc": [ + 3367 + ] + }, + { + "teal": 3367, + "source": 905, + "pc": [ + 3368 + ] + }, + { + "teal": 3368, + "source": 905, + "pc": [ + 3369, + 3370 + ] + }, + { + "teal": 3369, + "source": 905, + "pc": [ + 3371 + ] + }, + { + "teal": 3375, + "source": 908, + "pc": [ + 3372, + 3373 + ] + }, + { + "teal": 3376, + "source": 908, + "pc": [ + 3374, + 3375, + 3376 + ] + }, + { + "teal": 3381, + "source": 909, + "pc": [ + 3377, + 3378 + ] + }, + { + "teal": 3382, + "source": 909, + "pc": [ + 3379 + ] + }, + { + "teal": 3383, + "source": 909, + "pc": [ + 3380 + ] + }, + { + "teal": 3384, + "source": 909, + "pc": [ + 3381 + ] + }, + { + "teal": 3385, + "source": 909, + "pc": [ + 3382, + 3383 + ] + }, + { + "teal": 3386, + "source": 909, + "pc": [ + 3384 + ] + }, + { + "teal": 3387, + "source": 909, + "pc": [ + 3385 + ] + }, + { + "teal": 3392, + "source": 829, + "pc": [ + 3386 + ] + }, + { + "teal": 3397, + "source": 925, + "pc": [ + 3387 + ] + }, + { + "teal": 3400, + "source": 928, + "pc": [ + 3388, + 3389, + 3390 + ] + }, + { + "teal": 3401, + "source": 928, + "pc": [ + 3391 + ] + }, + { + "teal": 3404, + "source": 927, + "pc": [ + 3392, + 3393, + 3394 + ] + }, + { + "teal": 3405, + "source": 927, + "pc": [ + 3395 + ] + }, + { + "teal": 3406, + "source": 927, + "pc": [ + 3396 + ] + }, + { + "teal": 3407, + "source": 927, + "pc": [ + 3397, + 3398 + ] + }, + { + "teal": 3408, + "source": 927, + "pc": [ + 3399 + ] + }, + { + "teal": 3411, + "source": 927, + "errorMessage": "argument 1 (staker) for findPoolForStaker must be a address", + "pc": [ + 3400 + ] + }, + { + "teal": 3414, + "source": 926, + "pc": [ + 3401, + 3402, + 3403 + ] + }, + { + "teal": 3415, + "source": 926, + "pc": [ + 3404 + ] + }, + { + "teal": 3418, + "source": 925, + "pc": [ + 3405, + 3406, + 3407 + ] + }, + { + "teal": 3419, + "source": 925, + "pc": [ + 3408 + ] + }, + { + "teal": 3420, + "source": 925, + "pc": [ + 3409 + ] + }, + { + "teal": 3421, + "source": 925, + "pc": [ + 3410 + ] + }, + { + "teal": 3422, + "source": 925, + "pc": [ + 3411 + ] + }, + { + "teal": 3436, + "source": 925, + "pc": [ + 3412, + 3413, + 3414 + ] + }, + { + "teal": 3439, + "source": 925, + "pc": [ + 3415 + ] + }, + { + "teal": 3440, + "source": 925, + "pc": [ + 3416, + 3417 + ] + }, + { + "teal": 3444, + "source": 930, + "pc": [ + 3418 + ] + }, + { + "teal": 3445, + "source": 930, + "pc": [ + 3419, + 3420 + ] + }, + { + "teal": 3449, + "source": 931, + "pc": [ + 3421 + ] + }, + { + "teal": 3450, + "source": 931, + "pc": [ + 3422, + 3423 + ] + }, + { + "teal": 3454, + "source": 939, + "pc": [ + 3424, + 3425 + ] + }, + { + "teal": 3455, + "source": 939, + "pc": [ + 3426, + 3427, + 3428 + ] + }, + { + "teal": 3456, + "source": 939, + "pc": [ + 3429, + 3430 + ] + }, + { + "teal": 3461, + "source": 942, + "pc": [ + 3431 + ] + }, + { + "teal": 3462, + "source": 942, + "pc": [ + 3432, + 3433 + ] + }, + { + "teal": 3463, + "source": 942, + "pc": [ + 3434 + ] + }, + { + "teal": 3464, + "source": 942, + "pc": [ + 3435 + ] + }, + { + "teal": 3465, + "source": 942, + "pc": [ + 3436 + ] + }, + { + "teal": 3466, + "source": 942, + "pc": [ + 3437 + ] + }, + { + "teal": 3467, + "source": 942, + "pc": [ + 3438, + 3439, + 3440 + ] + }, + { + "teal": 3472, + "source": 943, + "pc": [ + 3441 + ] + }, + { + "teal": 3473, + "source": 943, + "pc": [ + 3442, + 3443 + ] + }, + { + "teal": 3474, + "source": 943, + "pc": [ + 3444 + ] + }, + { + "teal": 3475, + "source": 943, + "pc": [ + 3445 + ] + }, + { + "teal": 3478, + "source": 943, + "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", + "pc": [ + 3446 + ] + }, + { + "teal": 3479, + "source": 943, + "pc": [ + 3447, + 3448 + ] + }, + { + "teal": 3483, + "source": 944, + "pc": [ + 3449, + 3450 + ] + }, + { + "teal": 3484, + "source": 944, + "pc": [ + 3451 + ] + }, + { + "teal": 3485, + "source": 944, + "pc": [ + 3452 + ] + }, + { + "teal": 3486, + "source": 944, + "pc": [ + 3453 + ] + }, + { + "teal": 3490, + "source": 945, + "pc": [ + 3454 + ] + }, + { + "teal": 3491, + "source": 945, + "pc": [ + 3455, + 3456 + ] + }, + { + "teal": 3496, + "source": 945, + "pc": [ + 3457, + 3458 + ] + }, + { + "teal": 3497, + "source": 945, + "pc": [ + 3459, + 3460 + ] + }, + { + "teal": 3498, + "source": 945, + "pc": [ + 3461 + ] + }, + { + "teal": 3499, + "source": 945, + "pc": [ + 3462, + 3463, + 3464 + ] + }, + { + "teal": 3504, + "source": 946, + "pc": [ + 3465, + 3466 + ] + }, + { + "teal": 3505, + "source": 946, + "pc": [ + 3467, + 3468 + ] + }, + { + "teal": 3506, + "source": 946, + "pc": [ + 3469 + ] + }, + { + "teal": 3507, + "source": 946, + "pc": [ + 3470, + 3471, + 3472 + ] + }, + { + "teal": 3512, + "source": 947, + "pc": [ + 3473 + ] + }, + { + "teal": 3513, + "source": 947, + "pc": [ + 3474, + 3475 + ] + }, + { + "teal": 3514, + "source": 947, + "pc": [ + 3476, + 3477 + ] + }, + { + "teal": 3515, + "source": 947, + "pc": [ + 3478 + ] + }, + { + "teal": 3516, + "source": 947, + "pc": [ + 3479, + 3480 + ] + }, + { + "teal": 3517, + "source": 947, + "pc": [ + 3481, + 3482 + ] + }, + { + "teal": 3518, + "source": 947, + "pc": [ + 3483 + ] + }, + { + "teal": 3519, + "source": 947, + "pc": [ + 3484, + 3485 + ] + }, + { + "teal": 3520, + "source": 947, + "pc": [ + 3486, + 3487 + ] + }, + { + "teal": 3521, + "source": 947, + "pc": [ + 3488, + 3489 + ] + }, + { + "teal": 3522, + "source": 947, + "pc": [ + 3490, + 3491 + ] + }, + { + "teal": 3523, + "source": 947, + "pc": [ + 3492 + ] + }, + { + "teal": 3529, + "source": 949, + "pc": [ + 3493, + 3494 + ] + }, + { + "teal": 3530, + "source": 949, + "pc": [ + 3495, + 3496 + ] + }, + { + "teal": 3531, + "source": 949, + "pc": [ + 3497 + ] + }, + { + "teal": 3532, + "source": 949, + "pc": [ + 3498 + ] + }, + { + "teal": 3533, + "source": 949, + "pc": [ + 3499 + ] + }, + { + "teal": 3534, + "source": 949, + "pc": [ + 3500 + ] + }, + { + "teal": 3535, + "source": 949, + "pc": [ + 3501 + ] + }, + { + "teal": 3536, + "source": 949, + "pc": [ + 3502 + ] + }, + { + "teal": 3537, + "source": 949, + "pc": [ + 3503 + ] + }, + { + "teal": 3538, + "source": 949, + "pc": [ + 3504 + ] + }, + { + "teal": 3539, + "source": 949, + "pc": [ + 3505 + ] + }, + { + "teal": 3540, + "source": 949, + "pc": [ + 3506, + 3507, + 3508 + ] + }, + { + "teal": 3543, + "source": 950, + "pc": [ + 3509, + 3510, + 3511 + ] + }, + { + "teal": 3548, + "source": 952, + "pc": [ + 3512 + ] + }, + { + "teal": 3549, + "source": 952, + "pc": [ + 3513, + 3514 + ] + }, + { + "teal": 3554, + "source": 953, + "pc": [ + 3515, + 3516 + ] + }, + { + "teal": 3555, + "source": 953, + "pc": [ + 3517, + 3518 + ] + }, + { + "teal": 3556, + "source": 953, + "pc": [ + 3519 + ] + }, + { + "teal": 3557, + "source": 953, + "pc": [ + 3520 + ] + }, + { + "teal": 3558, + "source": 953, + "pc": [ + 3521 + ] + }, + { + "teal": 3559, + "source": 953, + "pc": [ + 3522 + ] + }, + { + "teal": 3560, + "source": 953, + "pc": [ + 3523 + ] + }, + { + "teal": 3561, + "source": 953, + "pc": [ + 3524 + ] + }, + { + "teal": 3562, + "source": 953, + "pc": [ + 3525 + ] + }, + { + "teal": 3563, + "source": 953, + "pc": [ + 3526, + 3527 + ] + }, + { + "teal": 3564, + "source": 953, + "pc": [ + 3528 + ] + }, + { + "teal": 3565, + "source": 953, + "pc": [ + 3529, + 3530, + 3531 + ] + }, + { + "teal": 3570, + "source": 955, + "pc": [ + 3532 + ] + }, + { + "teal": 3571, + "source": 955, + "pc": [ + 3533, + 3534 + ] + }, + { + "teal": 3577, + "source": 957, + "pc": [ + 3535, + 3536 + ] + }, + { + "teal": 3578, + "source": 957, + "pc": [ + 3537, + 3538 + ] + }, + { + "teal": 3579, + "source": 957, + "pc": [ + 3539, + 3540 + ] + }, + { + "teal": 3580, + "source": 957, + "pc": [ + 3541 + ] + }, + { + "teal": 3581, + "source": 957, + "pc": [ + 3542 + ] + }, + { + "teal": 3582, + "source": 957, + "pc": [ + 3543 + ] + }, + { + "teal": 3583, + "source": 957, + "pc": [ + 3544 + ] + }, + { + "teal": 3584, + "source": 957, + "pc": [ + 3545 + ] + }, + { + "teal": 3585, + "source": 957, + "pc": [ + 3546 + ] + }, + { + "teal": 3586, + "source": 957, + "pc": [ + 3547 + ] + }, + { + "teal": 3587, + "source": 957, + "pc": [ + 3548 + ] + }, + { + "teal": 3588, + "source": 957, + "pc": [ + 3549 + ] + }, + { + "teal": 3589, + "source": 957, + "pc": [ + 3550, + 3551 + ] + }, + { + "teal": 3590, + "source": 957, + "pc": [ + 3552 + ] + }, + { + "teal": 3591, + "source": 957, + "pc": [ + 3553 + ] + }, + { + "teal": 3592, + "source": 957, + "pc": [ + 3554, + 3555 + ] + }, + { + "teal": 3593, + "source": 957, + "pc": [ + 3556 + ] + }, + { + "teal": 3594, + "source": 957, + "pc": [ + 3557 + ] + }, + { + "teal": 3595, + "source": 957, + "pc": [ + 3558 + ] + }, + { + "teal": 3596, + "source": 957, + "pc": [ + 3559, + 3560 + ] + }, + { + "teal": 3597, + "source": 957, + "pc": [ + 3561 + ] + }, + { + "teal": 3598, + "source": 957, + "pc": [ + 3562 + ] + }, + { + "teal": 3599, + "source": 957, + "pc": [ + 3563, + 3564 + ] + }, + { + "teal": 3600, + "source": 957, + "pc": [ + 3565 + ] + }, + { + "teal": 3601, + "source": 957, + "pc": [ + 3566 + ] + }, + { + "teal": 3602, + "source": 957, + "pc": [ + 3567, + 3568 + ] + }, + { + "teal": 3603, + "source": 957, + "pc": [ + 3569 + ] + }, + { + "teal": 3604, + "source": 958, + "pc": [ + 3570, + 3571 + ] + }, + { + "teal": 3605, + "source": 957, + "pc": [ + 3572 + ] + }, + { + "teal": 3606, + "source": 956, + "pc": [ + 3573, + 3574, + 3575 + ] + }, + { + "teal": 3611, + "source": 960, + "pc": [ + 3576, + 3577 + ] + }, + { + "teal": 3612, + "source": 960, + "pc": [ + 3578, + 3579 + ] + }, + { + "teal": 3613, + "source": 960, + "pc": [ + 3580 + ] + }, + { + "teal": 3614, + "source": 960, + "pc": [ + 3581 + ] + }, + { + "teal": 3615, + "source": 960, + "pc": [ + 3582 + ] + }, + { + "teal": 3616, + "source": 960, + "pc": [ + 3583 + ] + }, + { + "teal": 3617, + "source": 960, + "pc": [ + 3584, + 3585 + ] + }, + { + "teal": 3618, + "source": 960, + "pc": [ + 3586 + ] + }, + { + "teal": 3619, + "source": 960, + "pc": [ + 3587, + 3588 + ] + }, + { + "teal": 3620, + "source": 960, + "pc": [ + 3589 + ] + }, + { + "teal": 3621, + "source": 960, + "pc": [ + 3590 + ] + }, + { + "teal": 3622, + "source": 960, + "pc": [ + 3591, + 3592 + ] + }, + { + "teal": 3623, + "source": 960, + "pc": [ + 3593 + ] + }, + { + "teal": 3624, + "source": 960, + "pc": [ + 3594 + ] + }, + { + "teal": 3625, + "source": 960, + "pc": [ + 3595, + 3596, + 3597 + ] + }, + { + "teal": 3634, + "source": 945, + "pc": [ + 3598, + 3599 + ] + }, + { + "teal": 3635, + "source": 945, + "pc": [ + 3600 + ] + }, + { + "teal": 3636, + "source": 945, + "pc": [ + 3601 + ] + }, + { + "teal": 3637, + "source": 945, + "pc": [ + 3602, + 3603 + ] + }, + { + "teal": 3638, + "source": 945, + "pc": [ + 3604, + 3605, + 3606 + ] + }, + { + "teal": 3648, + "source": 968, + "pc": [ + 3607, + 3608 + ] + }, + { + "teal": 3649, + "source": 968, + "pc": [ + 3609, + 3610 + ] + }, + { + "teal": 3650, + "source": 968, + "pc": [ + 3611 + ] + }, + { + "teal": 3651, + "source": 968, + "pc": [ + 3612 + ] + }, + { + "teal": 3652, + "source": 968, + "pc": [ + 3613, + 3614 + ] + }, + { + "teal": 3653, + "source": 968, + "pc": [ + 3615 + ] + }, + { + "teal": 3654, + "source": 968, + "pc": [ + 3616 + ] + }, + { + "teal": 3655, + "source": 968, + "pc": [ + 3617, + 3618 + ] + }, + { + "teal": 3656, + "source": 968, + "pc": [ + 3619 + ] + }, + { + "teal": 3657, + "source": 968, + "pc": [ + 3620 + ] + }, + { + "teal": 3658, + "source": 968, + "pc": [ + 3621 + ] + }, + { + "teal": 3661, + "source": 967, + "errorMessage": "must stake at least the minimum for this pool", + "pc": [ + 3622 + ] + }, + { + "teal": 3665, + "source": 973, + "pc": [ + 3623, + 3624 + ] + }, + { + "teal": 3666, + "source": 973, + "pc": [ + 3625, + 3626 + ] + }, + { + "teal": 3667, + "source": 973, + "pc": [ + 3627 + ] + }, + { + "teal": 3668, + "source": 973, + "pc": [ + 3628, + 3629 + ] + }, + { + "teal": 3669, + "source": 973, + "pc": [ + 3630 + ] + }, + { + "teal": 3670, + "source": 973, + "pc": [ + 3631 + ] + }, + { + "teal": 3671, + "source": 973, + "pc": [ + 3632, + 3633 + ] + }, + { + "teal": 3672, + "source": 973, + "pc": [ + 3634 + ] + }, + { + "teal": 3673, + "source": 973, + "pc": [ + 3635, + 3636 + ] + }, + { + "teal": 3677, + "source": 974, + "pc": [ + 3637, + 3638 + ] + }, + { + "teal": 3678, + "source": 974, + "pc": [ + 3639, + 3640 + ] + }, + { + "teal": 3679, + "source": 974, + "pc": [ + 3641 + ] + }, + { + "teal": 3680, + "source": 974, + "pc": [ + 3642, + 3643 + ] + }, + { + "teal": 3681, + "source": 974, + "pc": [ + 3644 + ] + }, + { + "teal": 3682, + "source": 974, + "pc": [ + 3645 + ] + }, + { + "teal": 3683, + "source": 974, + "pc": [ + 3646, + 3647 + ] + }, + { + "teal": 3684, + "source": 974, + "pc": [ + 3648 + ] + }, + { + "teal": 3685, + "source": 974, + "pc": [ + 3649 + ] + }, + { + "teal": 3686, + "source": 974, + "pc": [ + 3650, + 3651 + ] + }, + { + "teal": 3690, + "source": 975, + "pc": [ + 3652 + ] + }, + { + "teal": 3691, + "source": 975, + "pc": [ + 3653, + 3654 + ] + }, + { + "teal": 3696, + "source": 975, + "pc": [ + 3655, + 3656 + ] + }, + { + "teal": 3697, + "source": 975, + "pc": [ + 3657, + 3658 + ] + }, + { + "teal": 3698, + "source": 975, + "pc": [ + 3659 + ] + }, + { + "teal": 3699, + "source": 975, + "pc": [ + 3660, + 3661, + 3662 + ] + }, + { + "teal": 3704, + "source": 976, + "pc": [ + 3663, + 3664 + ] + }, + { + "teal": 3705, + "source": 976, + "pc": [ + 3665, + 3666 + ] + }, + { + "teal": 3706, + "source": 976, + "pc": [ + 3667, + 3668 + ] + }, + { + "teal": 3707, + "source": 976, + "pc": [ + 3669 + ] + }, + { + "teal": 3708, + "source": 976, + "pc": [ + 3670, + 3671 + ] + }, + { + "teal": 3709, + "source": 976, + "pc": [ + 3672 + ] + }, + { + "teal": 3710, + "source": 976, + "pc": [ + 3673 + ] + }, + { + "teal": 3711, + "source": 976, + "pc": [ + 3674 + ] + }, + { + "teal": 3712, + "source": 976, + "pc": [ + 3675 + ] + }, + { + "teal": 3713, + "source": 976, + "pc": [ + 3676, + 3677 + ] + }, + { + "teal": 3714, + "source": 976, + "pc": [ + 3678 + ] + }, + { + "teal": 3715, + "source": 976, + "pc": [ + 3679, + 3680 + ] + }, + { + "teal": 3716, + "source": 976, + "pc": [ + 3681 + ] + }, + { + "teal": 3717, + "source": 976, + "pc": [ + 3682, + 3683, + 3684 + ] + }, + { + "teal": 3726, + "source": 978, + "pc": [ + 3685, + 3686 + ] + }, + { + "teal": 3727, + "source": 978, + "pc": [ + 3687 + ] + }, + { + "teal": 3728, + "source": 978, + "pc": [ + 3688, + 3689 + ] + }, + { + "teal": 3729, + "source": 978, + "pc": [ + 3690 + ] + }, + { + "teal": 3730, + "source": 978, + "pc": [ + 3691 + ] + }, + { + "teal": 3731, + "source": 978, + "pc": [ + 3692 + ] + }, + { + "teal": 3732, + "source": 978, + "pc": [ + 3693 + ] + }, + { + "teal": 3733, + "source": 978, + "pc": [ + 3694, + 3695 + ] + }, + { + "teal": 3734, + "source": 978, + "pc": [ + 3696, + 3697 + ] + }, + { + "teal": 3735, + "source": 978, + "pc": [ + 3698, + 3699 + ] + }, + { + "teal": 3736, + "source": 978, + "pc": [ + 3700 + ] + }, + { + "teal": 3737, + "source": 978, + "pc": [ + 3701 + ] + }, + { + "teal": 3738, + "source": 978, + "pc": [ + 3702 + ] + }, + { + "teal": 3739, + "source": 978, + "pc": [ + 3703 + ] + }, + { + "teal": 3740, + "source": 978, + "pc": [ + 3704 + ] + }, + { + "teal": 3741, + "source": 978, + "pc": [ + 3705 + ] + }, + { + "teal": 3742, + "source": 978, + "pc": [ + 3706 + ] + }, + { + "teal": 3743, + "source": 978, + "pc": [ + 3707 + ] + }, + { + "teal": 3744, + "source": 979, + "pc": [ + 3708, + 3709 + ] + }, + { + "teal": 3745, + "source": 979, + "pc": [ + 3710 + ] + }, + { + "teal": 3746, + "source": 979, + "pc": [ + 3711, + 3712 + ] + }, + { + "teal": 3747, + "source": 979, + "pc": [ + 3713 + ] + }, + { + "teal": 3748, + "source": 980, + "pc": [ + 3714 + ] + }, + { + "teal": 3749, + "source": 980, + "pc": [ + 3715, + 3716 + ] + }, + { + "teal": 3750, + "source": 980, + "pc": [ + 3717 + ] + }, + { + "teal": 3751, + "source": 977, + "pc": [ + 3718 + ] + }, + { + "teal": 3752, + "source": 977, + "pc": [ + 3719, + 3720, + 3721 + ] + }, + { + "teal": 3759, + "source": 975, + "pc": [ + 3722, + 3723 + ] + }, + { + "teal": 3760, + "source": 975, + "pc": [ + 3724 + ] + }, + { + "teal": 3761, + "source": 975, + "pc": [ + 3725 + ] + }, + { + "teal": 3762, + "source": 975, + "pc": [ + 3726, + 3727 + ] + }, + { + "teal": 3763, + "source": 975, + "pc": [ + 3728, + 3729, + 3730 + ] + }, + { + "teal": 3768, + "source": 985, + "pc": [ + 3731, + 3732 + ] + }, + { + "teal": 3769, + "source": 985, + "pc": [ + 3733 + ] + }, + { + "teal": 3770, + "source": 985, + "pc": [ + 3734, + 3735 + ] + }, + { + "teal": 3771, + "source": 985, + "pc": [ + 3736 + ] + }, + { + "teal": 3772, + "source": 985, + "pc": [ + 3737, + 3738 + ] + }, + { + "teal": 3773, + "source": 985, + "pc": [ + 3739 + ] + }, + { + "teal": 3774, + "source": 985, + "pc": [ + 3740, + 3741 + ] + }, + { + "teal": 3775, + "source": 985, + "pc": [ + 3742 + ] + }, + { + "teal": 3776, + "source": 985, + "pc": [ + 3743, + 3744 + ] + }, + { + "teal": 3777, + "source": 985, + "pc": [ + 3745 + ] + }, + { + "teal": 3778, + "source": 985, + "pc": [ + 3746 + ] + }, + { + "teal": 3779, + "source": 985, + "pc": [ + 3747, + 3748 + ] + }, + { + "teal": 3780, + "source": 985, + "pc": [ + 3749 + ] + }, + { + "teal": 3781, + "source": 985, + "pc": [ + 3750 + ] + }, + { + "teal": 3785, + "source": 925, + "pc": [ + 3751, + 3752 + ] + }, + { + "teal": 3788, + "source": 925, + "pc": [ + 3753, + 3754 + ] + }, + { + "teal": 3789, + "source": 925, + "pc": [ + 3755 + ] + }, + { + "teal": 3794, + "source": 999, + "pc": [ + 3756, + 3757, + 3758 + ] + }, + { + "teal": 3795, + "source": 999, + "pc": [ + 3759 + ] + }, + { + "teal": 3798, + "source": 999, + "pc": [ + 3760, + 3761, + 3762 + ] + }, + { + "teal": 3799, + "source": 999, + "pc": [ + 3763 + ] + }, + { + "teal": 3802, + "source": 999, + "pc": [ + 3764, + 3765, + 3766 + ] + }, + { + "teal": 3803, + "source": 999, + "pc": [ + 3767 + ] + }, + { + "teal": 3806, + "source": 999, + "pc": [ + 3768, + 3769, + 3770 + ] + }, + { + "teal": 3807, + "source": 999, + "pc": [ + 3771 + ] + }, + { + "teal": 3808, + "source": 999, + "pc": [ + 3772 + ] + }, + { + "teal": 3822, + "source": 999, + "pc": [ + 3773, + 3774, + 3775 + ] + }, + { + "teal": 3825, + "source": 999, + "pc": [ + 3776 + ] + }, + { + "teal": 3826, + "source": 999, + "pc": [ + 3777, + 3778 + ] + }, + { + "teal": 3834, + "source": 1002, + "pc": [ + 3779, + 3780 + ] + }, + { + "teal": 3835, + "source": 1002, + "pc": [ + 3781 + ] + }, + { + "teal": 3836, + "source": 1002, + "pc": [ + 3782, + 3783 + ] + }, + { + "teal": 3837, + "source": 1002, + "pc": [ + 3784 + ] + }, + { + "teal": 3838, + "source": 1002, + "pc": [ + 3785, + 3786 + ] + }, + { + "teal": 3839, + "source": 1002, + "pc": [ + 3787 + ] + }, + { + "teal": 3840, + "source": 1002, + "pc": [ + 3788 + ] + }, + { + "teal": 3841, + "source": 1002, + "pc": [ + 3789, + 3790 + ] + }, + { + "teal": 3842, + "source": 1002, + "pc": [ + 3791 + ] + }, + { + "teal": 3843, + "source": 1002, + "pc": [ + 3792 + ] + }, + { + "teal": 3844, + "source": 1002, + "pc": [ + 3793 + ] + }, + { + "teal": 3845, + "source": 1002, + "pc": [ + 3794, + 3795, + 3796 + ] + }, + { + "teal": 3846, + "source": 1003, + "pc": [ + 3797, + 3798 + ] + }, + { + "teal": 3847, + "source": 1003, + "pc": [ + 3799, + 3800 + ] + }, + { + "teal": 3848, + "source": 1003, + "pc": [ + 3801, + 3802 + ] + }, + { + "teal": 3849, + "source": 1003, + "pc": [ + 3803 + ] + }, + { + "teal": 3850, + "source": 1003, + "pc": [ + 3804, + 3805 + ] + }, + { + "teal": 3851, + "source": 1003, + "pc": [ + 3806 + ] + }, + { + "teal": 3852, + "source": 1003, + "pc": [ + 3807 + ] + }, + { + "teal": 3853, + "source": 1003, + "pc": [ + 3808, + 3809 + ] + }, + { + "teal": 3854, + "source": 1003, + "pc": [ + 3810 + ] + }, + { + "teal": 3855, + "source": 1003, + "pc": [ + 3811 + ] + }, + { + "teal": 3856, + "source": 1002, + "pc": [ + 3812 + ] + }, + { + "teal": 3860, + "source": 1001, + "errorMessage": "can only be called by owner or manager of validator", + "pc": [ + 3813 + ] + }, + { + "teal": 3864, + "source": 1007, + "pc": [ + 3814, + 3815 + ] + }, + { + "teal": 3865, + "source": 1007, + "pc": [ + 3816, + 3817 + ] + }, + { + "teal": 3866, + "source": 1007, + "pc": [ + 3818 + ] + }, + { + "teal": 3867, + "source": 1007, + "pc": [ + 3819, + 3820 + ] + }, + { + "teal": 3868, + "source": 1007, + "pc": [ + 3821 + ] + }, + { + "teal": 3869, + "source": 1007, + "pc": [ + 3822 + ] + }, + { + "teal": 3870, + "source": 1007, + "pc": [ + 3823, + 3824 + ] + }, + { + "teal": 3871, + "source": 1007, + "pc": [ + 3825 + ] + }, + { + "teal": 3872, + "source": 1007, + "pc": [ + 3826, + 3827 + ] + }, + { + "teal": 3876, + "source": 1008, + "pc": [ + 3828, + 3829 + ] + }, + { + "teal": 3877, + "source": 1008, + "pc": [ + 3830 + ] + }, + { + "teal": 3878, + "source": 1008, + "pc": [ + 3831 + ] + }, + { + "teal": 3879, + "source": 1008, + "pc": [ + 3832 + ] + }, + { + "teal": 3880, + "source": 1008, + "pc": [ + 3833, + 3834, + 3835 + ] + }, + { + "teal": 3881, + "source": 1008, + "pc": [ + 3836, + 3837 + ] + }, + { + "teal": 3882, + "source": 1008, + "pc": [ + 3838 + ] + }, + { + "teal": 3883, + "source": 1008, + "pc": [ + 3839 + ] + }, + { + "teal": 3884, + "source": 1008, + "pc": [ + 3840 + ] + }, + { + "teal": 3888, + "source": 1008, + "errorMessage": "node number out of allowable range", + "pc": [ + 3841 + ] + }, + { + "teal": 3892, + "source": 1010, + "pc": [ + 3842 + ] + }, + { + "teal": 3893, + "source": 1010, + "pc": [ + 3843, + 3844 + ] + }, + { + "teal": 3898, + "source": 1010, + "pc": [ + 3845, + 3846 + ] + }, + { + "teal": 3899, + "source": 1010, + "pc": [ + 3847 + ] + }, + { + "teal": 3900, + "source": 1010, + "pc": [ + 3848 + ] + }, + { + "teal": 3901, + "source": 1010, + "pc": [ + 3849, + 3850, + 3851 + ] + }, + { + "teal": 3905, + "source": 1011, + "pc": [ + 3852 + ] + }, + { + "teal": 3906, + "source": 1011, + "pc": [ + 3853, + 3854 + ] + }, + { + "teal": 3911, + "source": 1011, + "pc": [ + 3855, + 3856 + ] + }, + { + "teal": 3912, + "source": 1011, + "pc": [ + 3857, + 3858 + ] + }, + { + "teal": 3913, + "source": 1011, + "pc": [ + 3859 + ] + }, + { + "teal": 3914, + "source": 1011, + "pc": [ + 3860, + 3861, + 3862 + ] + }, + { + "teal": 3919, + "source": 1012, + "pc": [ + 3863, + 3864 + ] + }, + { + "teal": 3920, + "source": 1012, + "pc": [ + 3865 + ] + }, + { + "teal": 3921, + "source": 1012, + "pc": [ + 3866, + 3867 + ] + }, + { + "teal": 3922, + "source": 1012, + "pc": [ + 3868 + ] + }, + { + "teal": 3923, + "source": 1012, + "pc": [ + 3869 + ] + }, + { + "teal": 3924, + "source": 1012, + "pc": [ + 3870 + ] + }, + { + "teal": 3925, + "source": 1012, + "pc": [ + 3871 + ] + }, + { + "teal": 3926, + "source": 1012, + "pc": [ + 3872 + ] + }, + { + "teal": 3927, + "source": 1012, + "pc": [ + 3873, + 3874 + ] + }, + { + "teal": 3928, + "source": 1012, + "pc": [ + 3875 + ] + }, + { + "teal": 3929, + "source": 1012, + "pc": [ + 3876 + ] + }, + { + "teal": 3930, + "source": 1012, + "pc": [ + 3877 + ] + }, + { + "teal": 3931, + "source": 1012, + "pc": [ + 3878 + ] + }, + { + "teal": 3932, + "source": 1012, + "pc": [ + 3879 + ] + }, + { + "teal": 3933, + "source": 1012, + "pc": [ + 3880 + ] + }, + { + "teal": 3934, + "source": 1012, + "pc": [ + 3881, + 3882 + ] + }, + { + "teal": 3935, + "source": 1012, + "pc": [ + 3883 + ] + }, + { + "teal": 3936, + "source": 1012, + "pc": [ + 3884, + 3885, + 3886 + ] + }, + { + "teal": 3941, + "source": 1013, + "pc": [ + 3887, + 3888 + ] + }, + { + "teal": 3942, + "source": 1013, + "pc": [ + 3889 + ] + }, + { + "teal": 3943, + "source": 1013, + "pc": [ + 3890 + ] + }, + { + "teal": 3944, + "source": 1013, + "pc": [ + 3891, + 3892 + ] + }, + { + "teal": 3945, + "source": 1013, + "pc": [ + 3893 + ] + }, + { + "teal": 3948, + "source": 1013, + "errorMessage": "can't move to same node", + "pc": [ + 3894 + ] + }, + { + "teal": 3952, + "source": 1015, + "pc": [ + 3895, + 3896 + ] + }, + { + "teal": 3953, + "source": 1015, + "pc": [ + 3897, + 3898 + ] + }, + { + "teal": 3954, + "source": 1015, + "pc": [ + 3899 + ] + }, + { + "teal": 3955, + "source": 1015, + "pc": [ + 3900 + ] + }, + { + "teal": 3956, + "source": 1015, + "pc": [ + 3901 + ] + }, + { + "teal": 3957, + "source": 1015, + "pc": [ + 3902 + ] + }, + { + "teal": 3958, + "source": 1015, + "pc": [ + 3903 + ] + }, + { + "teal": 3959, + "source": 1015, + "pc": [ + 3904, + 3905 + ] + }, + { + "teal": 3960, + "source": 1015, + "pc": [ + 3906 + ] + }, + { + "teal": 3961, + "source": 1015, + "pc": [ + 3907 + ] + }, + { + "teal": 3962, + "source": 1015, + "pc": [ + 3908 + ] + }, + { + "teal": 3963, + "source": 1015, + "pc": [ + 3909, + 3910 + ] + }, + { + "teal": 3964, + "source": 1015, + "pc": [ + 3911 + ] + }, + { + "teal": 3965, + "source": 1015, + "pc": [ + 3912, + 3913 + ] + }, + { + "teal": 3966, + "source": 1015, + "pc": [ + 3914 + ] + }, + { + "teal": 3967, + "source": 1015, + "pc": [ + 3915 + ] + }, + { + "teal": 3968, + "source": 1015, + "pc": [ + 3916, + 3917 + ] + }, + { + "teal": 3969, + "source": 1015, + "pc": [ + 3918 + ] + }, + { + "teal": 3975, + "source": 1018, + "pc": [ + 3919 + ] + }, + { + "teal": 3976, + "source": 1018, + "pc": [ + 3920, + 3921 + ] + }, + { + "teal": 3977, + "source": 1018, + "pc": [ + 3922, + 3923 + ] + }, + { + "teal": 3978, + "source": 1018, + "pc": [ + 3924, + 3925, + 3926, + 3927, + 3928, + 3929 + ] + }, + { + "teal": 3979, + "source": 1018, + "pc": [ + 3930, + 3931 + ] + }, + { + "teal": 3983, + "source": 1019, + "pc": [ + 3932, + 3933 + ] + }, + { + "teal": 3984, + "source": 1019, + "pc": [ + 3934, + 3935 + ] + }, + { + "teal": 3987, + "source": 1018, + "pc": [ + 3936 + ] + }, + { + "teal": 3988, + "source": 1018, + "pc": [ + 3937, + 3938 + ] + }, + { + "teal": 3991, + "source": 1018, + "pc": [ + 3939 + ] + }, + { + "teal": 3995, + "source": 1023, + "pc": [ + 3940, + 3941 + ] + }, + { + "teal": 3996, + "source": 1023, + "pc": [ + 3942, + 3943 + ] + }, + { + "teal": 3997, + "source": 1023, + "pc": [ + 3944, + 3945 + ] + }, + { + "teal": 3998, + "source": 1023, + "pc": [ + 3946, + 3947, + 3948 + ] + }, + { + "teal": 4002, + "source": 1024, + "pc": [ + 3949 + ] + }, + { + "teal": 4009, + "source": 1011, + "pc": [ + 3950, + 3951 + ] + }, + { + "teal": 4010, + "source": 1011, + "pc": [ + 3952 + ] + }, + { + "teal": 4011, + "source": 1011, + "pc": [ + 3953 + ] + }, + { + "teal": 4012, + "source": 1011, + "pc": [ + 3954, + 3955 + ] + }, + { + "teal": 4013, + "source": 1011, + "pc": [ + 3956, + 3957, + 3958 + ] + }, + { + "teal": 4020, + "source": 1010, + "pc": [ + 3959, + 3960 + ] + }, + { + "teal": 4021, + "source": 1010, + "pc": [ + 3961 + ] + }, + { + "teal": 4022, + "source": 1010, + "pc": [ + 3962 + ] + }, + { + "teal": 4023, + "source": 1010, + "pc": [ + 3963, + 3964 + ] + }, + { + "teal": 4024, + "source": 1010, + "pc": [ + 3965, + 3966, + 3967 + ] + }, + { + "teal": 4028, + "source": 1028, + "errorMessage": "couldn't find pool app id in nodes to move", + "pc": [ + 3968 + ] + }, + { + "teal": 4029, + "source": 999, + "pc": [ + 3969 + ] + }, + { + "teal": 4034, + "source": 1042, + "pc": [ + 3970 + ] + }, + { + "teal": 4037, + "source": 1042, + "pc": [ + 3971, + 3972, + 3973 + ] + }, + { + "teal": 4038, + "source": 1042, + "pc": [ + 3974 + ] + }, + { + "teal": 4039, + "source": 1042, + "pc": [ + 3975 + ] + }, + { + "teal": 4040, + "source": 1042, + "pc": [ + 3976, + 3977 + ] + }, + { + "teal": 4041, + "source": 1042, + "pc": [ + 3978 + ] + }, + { + "teal": 4044, + "source": 1042, + "errorMessage": "argument 0 (receiver) for emptyTokenRewards must be a address", + "pc": [ + 3979 + ] + }, + { + "teal": 4047, + "source": 1042, + "pc": [ + 3980, + 3981, + 3982 + ] + }, + { + "teal": 4048, + "source": 1042, + "pc": [ + 3983 + ] + }, + { + "teal": 4051, + "source": 1042, + "pc": [ + 3984, + 3985, + 3986 + ] + }, + { + "teal": 4052, + "source": 1042, + "pc": [ + 3987 + ] + }, + { + "teal": 4053, + "source": 1042, + "pc": [ + 3988 + ] + }, + { + "teal": 4054, + "source": 1042, + "pc": [ + 3989 + ] + }, + { + "teal": 4055, + "source": 1042, + "pc": [ + 3990 + ] + }, + { + "teal": 4056, + "source": 1042, + "pc": [ + 3991 + ] + }, + { + "teal": 4070, + "source": 1042, + "pc": [ + 3992, + 3993, + 3994 + ] + }, + { + "teal": 4073, + "source": 1042, + "pc": [ + 3995 + ] + }, + { + "teal": 4074, + "source": 1042, + "pc": [ + 3996, + 3997 + ] + }, + { + "teal": 4081, + "source": 1044, + "pc": [ + 3998, + 3999 + ] + }, + { + "teal": 4082, + "source": 1044, + "pc": [ + 4000 + ] + }, + { + "teal": 4083, + "source": 1044, + "pc": [ + 4001, + 4002 + ] + }, + { + "teal": 4084, + "source": 1044, + "pc": [ + 4003 + ] + }, + { + "teal": 4085, + "source": 1044, + "pc": [ + 4004, + 4005 + ] + }, + { + "teal": 4086, + "source": 1044, + "pc": [ + 4006 + ] + }, + { + "teal": 4087, + "source": 1044, + "pc": [ + 4007 + ] + }, + { + "teal": 4088, + "source": 1044, + "pc": [ + 4008, + 4009 + ] + }, + { + "teal": 4089, + "source": 1044, + "pc": [ + 4010 + ] + }, + { + "teal": 4090, + "source": 1044, + "pc": [ + 4011 + ] + }, + { + "teal": 4093, + "source": 1043, + "errorMessage": "can only be called by validator owner", + "pc": [ + 4012 + ] + }, + { + "teal": 4097, + "source": 1047, + "pc": [ + 4013, + 4014 + ] + }, + { + "teal": 4098, + "source": 1047, + "pc": [ + 4015 + ] + }, + { + "teal": 4099, + "source": 1047, + "pc": [ + 4016 + ] + }, + { + "teal": 4100, + "source": 1047, + "pc": [ + 4017, + 4018 + ] + }, + { + "teal": 4101, + "source": 1047, + "pc": [ + 4019 + ] + }, + { + "teal": 4102, + "source": 1047, + "pc": [ + 4020 + ] + }, + { + "teal": 4103, + "source": 1047, + "pc": [ + 4021, + 4022 + ] + }, + { + "teal": 4104, + "source": 1047, + "pc": [ + 4023 + ] + }, + { + "teal": 4105, + "source": 1047, + "pc": [ + 4024 + ] + }, + { + "teal": 4106, + "source": 1047, + "pc": [ + 4025, + 4026 + ] + }, + { + "teal": 4110, + "source": 1048, + "pc": [ + 4027, + 4028 + ] + }, + { + "teal": 4111, + "source": 1048, + "pc": [ + 4029 + ] + }, + { + "teal": 4112, + "source": 1048, + "pc": [ + 4030 + ] + }, + { + "teal": 4113, + "source": 1048, + "pc": [ + 4031, + 4032 + ] + }, + { + "teal": 4114, + "source": 1048, + "pc": [ + 4033 + ] + }, + { + "teal": 4115, + "source": 1048, + "pc": [ + 4034 + ] + }, + { + "teal": 4116, + "source": 1048, + "pc": [ + 4035, + 4036 + ] + }, + { + "teal": 4117, + "source": 1048, + "pc": [ + 4037 + ] + }, + { + "teal": 4118, + "source": 1048, + "pc": [ + 4038 + ] + }, + { + "teal": 4119, + "source": 1048, + "pc": [ + 4039, + 4040 + ] + }, + { + "teal": 4123, + "source": 1049, + "pc": [ + 4041, + 4042 + ] + }, + { + "teal": 4124, + "source": 1049, + "pc": [ + 4043 + ] + }, + { + "teal": 4125, + "source": 1049, + "pc": [ + 4044 + ] + }, + { + "teal": 4128, + "source": 1049, + "errorMessage": "this validator doesn't have a reward token defined", + "pc": [ + 4045 + ] + }, + { + "teal": 4132, + "source": 1050, + "pc": [ + 4046, + 4047 + ] + }, + { + "teal": 4133, + "source": 1050, + "pc": [ + 4048 + ] + }, + { + "teal": 4134, + "source": 1050, + "pc": [ + 4049 + ] + }, + { + "teal": 4135, + "source": 1050, + "pc": [ + 4050, + 4051 + ] + }, + { + "teal": 4136, + "source": 1050, + "pc": [ + 4052 + ] + }, + { + "teal": 4137, + "source": 1050, + "pc": [ + 4053 + ] + }, + { + "teal": 4138, + "source": 1050, + "pc": [ + 4054, + 4055 + ] + }, + { + "teal": 4139, + "source": 1050, + "pc": [ + 4056 + ] + }, + { + "teal": 4140, + "source": 1050, + "pc": [ + 4057 + ] + }, + { + "teal": 4141, + "source": 1050, + "pc": [ + 4058, + 4059 + ] + }, + { + "teal": 4145, + "source": 1052, + "pc": [ + 4060, + 4061 + ] + }, + { + "teal": 4146, + "source": 1052, + "pc": [ + 4062, + 4063 + ] + }, + { + "teal": 4147, + "source": 1052, + "pc": [ + 4064 + ] + }, + { + "teal": 4148, + "source": 1052, + "pc": [ + 4065, + 4066 + ] + }, + { + "teal": 4149, + "source": 1052, + "pc": [ + 4067, + 4068 + ] + }, + { + "teal": 4150, + "source": 1052, + "pc": [ + 4069 + ] + }, + { + "teal": 4151, + "source": 1052, + "pc": [ + 4070, + 4071 + ] + }, + { + "teal": 4152, + "source": 1052, + "pc": [ + 4072 + ] + }, + { + "teal": 4153, + "source": 1052, + "pc": [ + 4073, + 4074 + ] + }, + { + "teal": 4160, + "source": 1055, + "pc": [ + 4075 + ] + }, + { + "teal": 4161, + "source": 1055, + "pc": [ + 4076, + 4077 + ] + }, + { + "teal": 4162, + "source": 1055, + "pc": [ + 4078, + 4079 + ] + }, + { + "teal": 4163, + "source": 1055, + "pc": [ + 4080, + 4081 + ] + }, + { + "teal": 4164, + "source": 1055, + "pc": [ + 4082, + 4083 + ] + }, + { + "teal": 4168, + "source": 1056, + "pc": [ + 4084, + 4085 + ] + }, + { + "teal": 4169, + "source": 1056, + "pc": [ + 4086, + 4087 + ] + }, + { + "teal": 4173, + "source": 1057, + "pc": [ + 4088, + 4089 + ] + }, + { + "teal": 4174, + "source": 1057, + "pc": [ + 4090, + 4091 + ] + }, + { + "teal": 4175, + "source": 1057, + "pc": [ + 4092, + 4093 + ] + }, + { + "teal": 4176, + "source": 1057, + "pc": [ + 4094 + ] + }, + { + "teal": 4177, + "source": 1057, + "pc": [ + 4095, + 4096 + ] + }, + { + "teal": 4178, + "source": 1057, + "pc": [ + 4097, + 4098 + ] + }, + { + "teal": 4179, + "source": 1057, + "pc": [ + 4099 + ] + }, + { + "teal": 4180, + "source": 1057, + "pc": [ + 4100, + 4101 + ] + }, + { + "teal": 4183, + "source": 1055, + "pc": [ + 4102 + ] + }, + { + "teal": 4184, + "source": 1055, + "pc": [ + 4103, + 4104 + ] + }, + { + "teal": 4187, + "source": 1055, + "pc": [ + 4105 + ] + }, + { + "teal": 4194, + "source": 1060, + "pc": [ + 4106, + 4107 + ] + }, + { + "teal": 4195, + "source": 1060, + "pc": [ + 4108, + 4109 + ] + }, + { + "teal": 4196, + "source": 1060, + "pc": [ + 4110 + ] + }, + { + "teal": 4197, + "source": 1060, + "pc": [ + 4111, + 4112 + ] + }, + { + "teal": 4198, + "source": 1060, + "pc": [ + 4113, + 4114 + ] + }, + { + "teal": 4199, + "source": 1060, + "pc": [ + 4115 + ] + }, + { + "teal": 4200, + "source": 1060, + "pc": [ + 4116, + 4117 + ] + }, + { + "teal": 4201, + "source": 1060, + "pc": [ + 4118 + ] + }, + { + "teal": 4204, + "source": 1059, + "errorMessage": "balance of remaining reward tokens should match the held back amount", + "pc": [ + 4119 + ] + }, + { + "teal": 4208, + "source": 1063, + "pc": [ + 4120, + 4121 + ] + }, + { + "teal": 4211, + "source": 1042, + "pc": [ + 4122, + 4123 + ] + }, + { + "teal": 4214, + "source": 1042, + "pc": [ + 4124, + 4125 + ] + }, + { + "teal": 4215, + "source": 1042, + "pc": [ + 4126 + ] + }, + { + "teal": 4226, + "source": 1160, + "pc": [ + 4127, + 4128, + 4129 + ] + }, + { + "teal": 4230, + "source": 1161, + "pc": [ + 4130 + ] + }, + { + "teal": 4231, + "source": 1161, + "pc": [ + 4131, + 4132 + ] + }, + { + "teal": 4232, + "source": 1161, + "pc": [ + 4133, + 4134, + 4135 + ] + }, + { + "teal": 4233, + "source": 1161, + "pc": [ + 4136 + ] + }, + { + "teal": 4234, + "source": 1161, + "pc": [ + 4137 + ] + }, + { + "teal": 4235, + "source": 1161, + "pc": [ + 4138 + ] + }, + { + "teal": 4236, + "source": 1161, + "pc": [ + 4139 + ] + }, + { + "teal": 4237, + "source": 1161, + "pc": [ + 4140 + ] + }, + { + "teal": 4238, + "source": 1161, + "pc": [ + 4141 + ] + }, + { + "teal": 4241, + "source": 1161, + "errorMessage": "the specified validator id isn't valid", + "pc": [ + 4142 + ] + }, + { + "teal": 4245, + "source": 1162, + "pc": [ + 4143, + 4144 + ] + }, + { + "teal": 4246, + "source": 1162, + "pc": [ + 4145, + 4146, + 4147 + ] + }, + { + "teal": 4247, + "source": 1162, + "pc": [ + 4148 + ] + }, + { + "teal": 4248, + "source": 32, + "pc": [ + 4149 + ] + }, + { + "teal": 4249, + "source": 1162, + "pc": [ + 4150 + ] + }, + { + "teal": 4252, + "source": 1162, + "errorMessage": "pool id not in valid range", + "pc": [ + 4151 + ] + }, + { + "teal": 4259, + "source": 1164, + "pc": [ + 4152, + 4153 + ] + }, + { + "teal": 4260, + "source": 1164, + "pc": [ + 4154, + 4155, + 4156 + ] + }, + { + "teal": 4261, + "source": 1164, + "pc": [ + 4157 + ] + }, + { + "teal": 4262, + "source": 1164, + "pc": [ + 4158 + ] + }, + { + "teal": 4263, + "source": 1164, + "pc": [ + 4159 + ] + }, + { + "teal": 4264, + "source": 1164, + "pc": [ + 4160 + ] + }, + { + "teal": 4265, + "source": 1164, + "pc": [ + 4161, + 4162, + 4163 + ] + }, + { + "teal": 4266, + "source": 1164, + "pc": [ + 4164, + 4165 + ] + }, + { + "teal": 4267, + "source": 1164, + "pc": [ + 4166, + 4167, + 4168 + ] + }, + { + "teal": 4268, + "source": 1164, + "pc": [ + 4169 + ] + }, + { + "teal": 4269, + "source": 1164, + "pc": [ + 4170, + 4171 + ] + }, + { + "teal": 4270, + "source": 1164, + "pc": [ + 4172, + 4173 + ] + }, + { + "teal": 4271, + "source": 1164, + "pc": [ + 4174 + ] + }, + { + "teal": 4272, + "source": 1164, + "pc": [ + 4175, + 4176 + ] + }, + { + "teal": 4273, + "source": 1164, + "pc": [ + 4177, + 4178, + 4179 + ] + }, + { + "teal": 4274, + "source": 1164, + "pc": [ + 4180 + ] + }, + { + "teal": 4275, + "source": 1164, + "pc": [ + 4181 + ] + }, + { + "teal": 4276, + "source": 1164, + "pc": [ + 4182 + ] + }, + { + "teal": 4277, + "source": 1164, + "pc": [ + 4183, + 4184 + ] + }, + { + "teal": 4278, + "source": 1164, + "pc": [ + 4185 + ] + }, + { + "teal": 4279, + "source": 1164, + "pc": [ + 4186 + ] + }, + { + "teal": 4280, + "source": 1164, + "pc": [ + 4187 + ] + }, + { + "teal": 4281, + "source": 1164, + "pc": [ + 4188 + ] + }, + { + "teal": 4285, + "source": 1163, + "errorMessage": "pool id outside of range of pools created for this validator", + "pc": [ + 4189 + ] + }, + { + "teal": 4292, + "source": 1170, + "pc": [ + 4190, + 4191 + ] + }, + { + "teal": 4293, + "source": 1170, + "pc": [ + 4192, + 4193, + 4194 + ] + }, + { + "teal": 4294, + "source": 1170, + "pc": [ + 4195 + ] + }, + { + "teal": 4295, + "source": 1170, + "pc": [ + 4196, + 4197 + ] + }, + { + "teal": 4296, + "source": 1170, + "pc": [ + 4198, + 4199 + ] + }, + { + "teal": 4297, + "source": 1170, + "pc": [ + 4200, + 4201, + 4202 + ] + }, + { + "teal": 4298, + "source": 1170, + "pc": [ + 4203 + ] + }, + { + "teal": 4299, + "source": 1170, + "pc": [ + 4204 + ] + }, + { + "teal": 4300, + "source": 1170, + "pc": [ + 4205 + ] + }, + { + "teal": 4301, + "source": 1170, + "pc": [ + 4206, + 4207 + ] + }, + { + "teal": 4302, + "source": 1170, + "pc": [ + 4208 + ] + }, + { + "teal": 4303, + "source": 1170, + "pc": [ + 4209 + ] + }, + { + "teal": 4304, + "source": 1170, + "pc": [ + 4210 + ] + }, + { + "teal": 4305, + "source": 1170, + "pc": [ + 4211 + ] + }, + { + "teal": 4306, + "source": 1170, + "pc": [ + 4212 + ] + }, + { + "teal": 4307, + "source": 1170, + "pc": [ + 4213 + ] + }, + { + "teal": 4308, + "source": 1170, + "pc": [ + 4214, + 4215 + ] + }, + { + "teal": 4309, + "source": 1170, + "pc": [ + 4216, + 4217, + 4218 + ] + }, + { + "teal": 4310, + "source": 1170, + "pc": [ + 4219 + ] + }, + { + "teal": 4311, + "source": 1170, + "pc": [ + 4220 + ] + }, + { + "teal": 4312, + "source": 1170, + "pc": [ + 4221 + ] + }, + { + "teal": 4313, + "source": 1170, + "pc": [ + 4222, + 4223 + ] + }, + { + "teal": 4314, + "source": 1170, + "pc": [ + 4224 + ] + }, + { + "teal": 4315, + "source": 1170, + "pc": [ + 4225 + ] + }, + { + "teal": 4316, + "source": 1170, + "pc": [ + 4226 + ] + }, + { + "teal": 4319, + "source": 1169, + "errorMessage": "The passed in app id doesn't match the passed in ids", + "pc": [ + 4227 + ] + }, + { + "teal": 4323, + "source": 1174, + "pc": [ + 4228, + 4229 + ] + }, + { + "teal": 4324, + "source": 1174, + "pc": [ + 4230, + 4231 + ] + }, + { + "teal": 4325, + "source": 1174, + "pc": [ + 4232, + 4233, + 4234 + ] + }, + { + "teal": 4326, + "source": 1174, + "pc": [ + 4235 + ] + }, + { + "teal": 4327, + "source": 1174, + "pc": [ + 4236, + 4237 + ] + }, + { + "teal": 4328, + "source": 1174, + "pc": [ + 4238 + ] + }, + { + "teal": 4329, + "source": 1174, + "pc": [ + 4239 + ] + }, + { + "teal": 4330, + "source": 1174, + "pc": [ + 4240 + ] + }, + { + "teal": 4334, + "source": 1176, + "pc": [ + 4241, + 4242 + ] + }, + { + "teal": 4335, + "source": 1176, + "pc": [ + 4243, + 4244, + 4245 + ] + }, + { + "teal": 4336, + "source": 1176, + "pc": [ + 4246 + ] + }, + { + "teal": 4337, + "source": 1176, + "pc": [ + 4247, + 4248 + ] + }, + { + "teal": 4338, + "source": 1176, + "pc": [ + 4249, + 4250, + 4251 + ] + }, + { + "teal": 4339, + "source": 1176, + "pc": [ + 4252 + ] + }, + { + "teal": 4340, + "source": 1176, + "pc": [ + 4253, + 4254, + 4255, + 4256, + 4257, + 4258, + 4259, + 4260, + 4261, + 4262, + 4263, + 4264, + 4265 + ] + }, + { + "teal": 4341, + "source": 1176, + "pc": [ + 4266 + ] + }, + { + "teal": 4344, + "source": 1176, + "errorMessage": "global state value does not exist: AppID.fromUint64(poolKey.poolAppId).globalState('validatorId')", + "pc": [ + 4267 + ] + }, + { + "teal": 4345, + "source": 1176, + "pc": [ + 4268 + ] + }, + { + "teal": 4346, + "source": 1176, + "pc": [ + 4269 + ] + }, + { + "teal": 4350, + "source": 1177, + "pc": [ + 4270, + 4271 + ] + }, + { + "teal": 4351, + "source": 1177, + "pc": [ + 4272, + 4273, + 4274 + ] + }, + { + "teal": 4352, + "source": 1177, + "pc": [ + 4275 + ] + }, + { + "teal": 4353, + "source": 1177, + "pc": [ + 4276, + 4277 + ] + }, + { + "teal": 4354, + "source": 1177, + "pc": [ + 4278, + 4279, + 4280 + ] + }, + { + "teal": 4355, + "source": 1177, + "pc": [ + 4281 + ] + }, + { + "teal": 4356, + "source": 1177, + "pc": [ + 4282, + 4283, + 4284, + 4285, + 4286, + 4287, + 4288, + 4289 + ] + }, + { + "teal": 4357, + "source": 1177, + "pc": [ + 4290 + ] + }, + { + "teal": 4360, + "source": 1177, + "errorMessage": "global state value does not exist: AppID.fromUint64(poolKey.poolAppId).globalState('poolId')", + "pc": [ + 4291 + ] + }, + { + "teal": 4361, + "source": 1177, + "pc": [ + 4292 + ] + }, + { + "teal": 4362, + "source": 1177, + "pc": [ + 4293 + ] + }, + { + "teal": 4363, + "source": 1160, + "pc": [ + 4294 + ] + }, + { + "teal": 4372, + "source": 1186, + "pc": [ + 4295, + 4296, + 4297 + ] + }, + { + "teal": 4375, + "source": 1186, + "pc": [ + 4298 + ] + }, + { + "teal": 4376, + "source": 1186, + "pc": [ + 4299 + ] + }, + { + "teal": 4380, + "source": 1187, + "pc": [ + 4300 + ] + }, + { + "teal": 4381, + "source": 1187, + "pc": [ + 4301, + 4302 + ] + }, + { + "teal": 4382, + "source": 1187, + "pc": [ + 4303 + ] + }, + { + "teal": 4383, + "source": 1187, + "pc": [ + 4304 + ] + }, + { + "teal": 4384, + "source": 1187, + "pc": [ + 4305, + 4306 + ] + }, + { + "teal": 4389, + "source": 1188, + "pc": [ + 4307, + 4308 + ] + }, + { + "teal": 4390, + "source": 1188, + "pc": [ + 4309 + ] + }, + { + "teal": 4391, + "source": 1187, + "pc": [ + 4310 + ] + }, + { + "teal": 4392, + "source": 1187, + "pc": [ + 4311, + 4312 + ] + }, + { + "teal": 4393, + "source": 1187, + "pc": [ + 4313 + ] + }, + { + "teal": 4394, + "source": 1187, + "pc": [ + 4314 + ] + }, + { + "teal": 4395, + "source": 1187, + "pc": [ + 4315, + 4316 + ] + }, + { + "teal": 4396, + "source": 1187, + "pc": [ + 4317 + ] + }, + { + "teal": 4397, + "source": 1188, + "pc": [ + 4318 + ] + }, + { + "teal": 4398, + "source": 1188, + "pc": [ + 4319 + ] + }, + { + "teal": 4399, + "source": 1188, + "pc": [ + 4320 + ] + }, + { + "teal": 4400, + "source": 1188, + "pc": [ + 4321, + 4322, + 4323 + ] + }, + { + "teal": 4405, + "source": 1191, + "pc": [ + 4324, + 4325 + ] + }, + { + "teal": 4406, + "source": 1191, + "pc": [ + 4326 + ] + }, + { + "teal": 4407, + "source": 1187, + "pc": [ + 4327 + ] + }, + { + "teal": 4408, + "source": 1187, + "pc": [ + 4328, + 4329 + ] + }, + { + "teal": 4409, + "source": 1187, + "pc": [ + 4330 + ] + }, + { + "teal": 4410, + "source": 1187, + "pc": [ + 4331 + ] + }, + { + "teal": 4411, + "source": 1187, + "pc": [ + 4332, + 4333 + ] + }, + { + "teal": 4412, + "source": 1187, + "pc": [ + 4334 + ] + }, + { + "teal": 4413, + "source": 1191, + "pc": [ + 4335 + ] + }, + { + "teal": 4414, + "source": 1191, + "pc": [ + 4336, + 4337 + ] + }, + { + "teal": 4415, + "source": 1191, + "pc": [ + 4338 + ] + }, + { + "teal": 4418, + "source": 1191, + "errorMessage": "global state value does not exist: AppID.fromUint64(validatorConfig.nfdForInfo).globalState('i.owner.a')", + "pc": [ + 4339 + ] + }, + { + "teal": 4419, + "source": 1191, + "pc": [ + 4340, + 4341 + ] + }, + { + "teal": 4424, + "source": 1193, + "pc": [ + 4342 + ] + }, + { + "teal": 4425, + "source": 1193, + "pc": [ + 4343, + 4344 + ] + }, + { + "teal": 4426, + "source": 1187, + "pc": [ + 4345 + ] + }, + { + "teal": 4427, + "source": 1187, + "pc": [ + 4346, + 4347 + ] + }, + { + "teal": 4428, + "source": 1187, + "pc": [ + 4348 + ] + }, + { + "teal": 4429, + "source": 1187, + "pc": [ + 4349 + ] + }, + { + "teal": 4430, + "source": 1187, + "pc": [ + 4350, + 4351 + ] + }, + { + "teal": 4431, + "source": 1187, + "pc": [ + 4352 + ] + }, + { + "teal": 4432, + "source": 1193, + "pc": [ + 4353, + 4354 + ] + }, + { + "teal": 4433, + "source": 1193, + "pc": [ + 4355 + ] + }, + { + "teal": 4434, + "source": 1193, + "pc": [ + 4356 + ] + }, + { + "teal": 4435, + "source": 1193, + "pc": [ + 4357, + 4358, + 4359 + ] + }, + { + "teal": 4436, + "source": 1193, + "pc": [ + 4360, + 4361 + ] + }, + { + "teal": 4437, + "source": 1193, + "pc": [ + 4362, + 4363 + ] + }, + { + "teal": 4438, + "source": 1187, + "pc": [ + 4364 + ] + }, + { + "teal": 4439, + "source": 1187, + "pc": [ + 4365, + 4366 + ] + }, + { + "teal": 4440, + "source": 1187, + "pc": [ + 4367 + ] + }, + { + "teal": 4441, + "source": 1187, + "pc": [ + 4368 + ] + }, + { + "teal": 4442, + "source": 1187, + "pc": [ + 4369, + 4370 + ] + }, + { + "teal": 4443, + "source": 1187, + "pc": [ + 4371 + ] + }, + { + "teal": 4444, + "source": 1193, + "pc": [ + 4372, + 4373 + ] + }, + { + "teal": 4445, + "source": 1193, + "pc": [ + 4374 + ] + }, + { + "teal": 4446, + "source": 1193, + "pc": [ + 4375 + ] + }, + { + "teal": 4449, + "source": 1193, + "pc": [ + 4376, + 4377, + 4378 + ] + }, + { + "teal": 4454, + "source": 1195, + "pc": [ + 4379, + 4380 + ] + }, + { + "teal": 4455, + "source": 1195, + "pc": [ + 4381, + 4382 + ] + }, + { + "teal": 4456, + "source": 1195, + "pc": [ + 4383 + ] + }, + { + "teal": 4457, + "source": 1195, + "pc": [ + 4384, + 4385 + ] + }, + { + "teal": 4458, + "source": 1195, + "pc": [ + 4386 + ] + }, + { + "teal": 4459, + "source": 1195, + "pc": [ + 4387 + ] + }, + { + "teal": 4460, + "source": 1195, + "pc": [ + 4388, + 4389 + ] + }, + { + "teal": 4461, + "source": 1195, + "pc": [ + 4390 + ] + }, + { + "teal": 4466, + "source": 1186, + "pc": [ + 4391 + ] + }, + { + "teal": 4470, + "source": 1200, + "pc": [ + 4392, + 4393, + 4394 + ] + }, + { + "teal": 4477, + "source": 1203, + "pc": [ + 4395, + 4396 + ] + }, + { + "teal": 4478, + "source": 1203, + "pc": [ + 4397, + 4398, + 4399 + ] + }, + { + "teal": 4479, + "source": 1203, + "pc": [ + 4400 + ] + }, + { + "teal": 4480, + "source": 1203, + "pc": [ + 4401 + ] + }, + { + "teal": 4481, + "source": 1203, + "pc": [ + 4402 + ] + }, + { + "teal": 4482, + "source": 1203, + "pc": [ + 4403 + ] + }, + { + "teal": 4483, + "source": 1203, + "pc": [ + 4404, + 4405, + 4406 + ] + }, + { + "teal": 4484, + "source": 1203, + "pc": [ + 4407, + 4408 + ] + }, + { + "teal": 4485, + "source": 1203, + "pc": [ + 4409, + 4410, + 4411 + ] + }, + { + "teal": 4486, + "source": 1203, + "pc": [ + 4412 + ] + }, + { + "teal": 4487, + "source": 1203, + "pc": [ + 4413, + 4414 + ] + }, + { + "teal": 4488, + "source": 1203, + "pc": [ + 4415 + ] + }, + { + "teal": 4489, + "source": 1203, + "pc": [ + 4416 + ] + }, + { + "teal": 4493, + "source": 1202, + "errorMessage": "gating type not valid", + "pc": [ + 4417 + ] + }, + { + "teal": 4500, + "source": 1207, + "pc": [ + 4418, + 4419 + ] + }, + { + "teal": 4501, + "source": 1207, + "pc": [ + 4420, + 4421, + 4422 + ] + }, + { + "teal": 4502, + "source": 1207, + "pc": [ + 4423 + ] + }, + { + "teal": 4503, + "source": 1207, + "pc": [ + 4424 + ] + }, + { + "teal": 4504, + "source": 1207, + "pc": [ + 4425 + ] + }, + { + "teal": 4505, + "source": 1207, + "pc": [ + 4426 + ] + }, + { + "teal": 4506, + "source": 1207, + "pc": [ + 4427, + 4428, + 4429 + ] + }, + { + "teal": 4507, + "source": 1207, + "pc": [ + 4430, + 4431 + ] + }, + { + "teal": 4508, + "source": 1207, + "pc": [ + 4432, + 4433, + 4434 + ] + }, + { + "teal": 4509, + "source": 1207, + "pc": [ + 4435 + ] + }, + { + "teal": 4510, + "source": 1207, + "pc": [ + 4436, + 4437 + ] + }, + { + "teal": 4511, + "source": 1207, + "pc": [ + 4438 + ] + }, + { + "teal": 4512, + "source": 1207, + "pc": [ + 4439 + ] + }, + { + "teal": 4516, + "source": 1206, + "errorMessage": "epoch length not in allowable range", + "pc": [ + 4440 + ] + }, + { + "teal": 4523, + "source": 1211, + "pc": [ + 4441, + 4442 + ] + }, + { + "teal": 4524, + "source": 1211, + "pc": [ + 4443, + 4444, + 4445 + ] + }, + { + "teal": 4525, + "source": 1211, + "pc": [ + 4446 + ] + }, + { + "teal": 4526, + "source": 1211, + "pc": [ + 4447 + ] + }, + { + "teal": 4527, + "source": 1211, + "pc": [ + 4448 + ] + }, + { + "teal": 4528, + "source": 1211, + "pc": [ + 4449 + ] + }, + { + "teal": 4529, + "source": 1211, + "pc": [ + 4450, + 4451, + 4452 + ] + }, + { + "teal": 4530, + "source": 1211, + "pc": [ + 4453, + 4454 + ] + }, + { + "teal": 4531, + "source": 1211, + "pc": [ + 4455, + 4456, + 4457 + ] + }, + { + "teal": 4532, + "source": 1211, + "pc": [ + 4458 + ] + }, + { + "teal": 4533, + "source": 1211, + "pc": [ + 4459, + 4460 + ] + }, + { + "teal": 4534, + "source": 1211, + "pc": [ + 4461 + ] + }, + { + "teal": 4535, + "source": 1211, + "pc": [ + 4462 + ] + }, + { + "teal": 4539, + "source": 1210, + "errorMessage": "commission percentage not valid", + "pc": [ + 4463 + ] + }, + { + "teal": 4544, + "source": 1214, + "pc": [ + 4464, + 4465 + ] + }, + { + "teal": 4545, + "source": 1214, + "pc": [ + 4466, + 4467, + 4468 + ] + }, + { + "teal": 4546, + "source": 1214, + "pc": [ + 4469 + ] + }, + { + "teal": 4547, + "source": 1214, + "pc": [ + 4470 + ] + }, + { + "teal": 4548, + "source": 1214, + "pc": [ + 4471 + ] + }, + { + "teal": 4549, + "source": 1214, + "pc": [ + 4472, + 4473, + 4474 + ] + }, + { + "teal": 4557, + "source": 1216, + "pc": [ + 4475, + 4476 + ] + }, + { + "teal": 4558, + "source": 1216, + "pc": [ + 4477, + 4478, + 4479 + ] + }, + { + "teal": 4559, + "source": 1216, + "pc": [ + 4480, + 4481 + ] + }, + { + "teal": 4560, + "source": 1216, + "pc": [ + 4482 + ] + }, + { + "teal": 4563, + "source": 1215, + "errorMessage": "validatorCommissionAddress must be set if percent to validator is not 0", + "pc": [ + 4483 + ] + }, + { + "teal": 4568, + "source": 1220, + "pc": [ + 4484, + 4485 + ] + }, + { + "teal": 4569, + "source": 1220, + "pc": [ + 4486, + 4487, + 4488 + ] + }, + { + "teal": 4570, + "source": 1220, + "pc": [ + 4489 + ] + }, + { + "teal": 4571, + "source": 1220, + "pc": [ + 4490, + 4491 + ] + }, + { + "teal": 4572, + "source": 1220, + "pc": [ + 4492 + ] + }, + { + "teal": 4575, + "source": 1220, + "errorMessage": "staking pool must have minimum entry of 1 algo", + "pc": [ + 4493 + ] + }, + { + "teal": 4582, + "source": 1223, + "pc": [ + 4494, + 4495 + ] + }, + { + "teal": 4583, + "source": 1223, + "pc": [ + 4496, + 4497, + 4498 + ] + }, + { + "teal": 4584, + "source": 1223, + "pc": [ + 4499 + ] + }, + { + "teal": 4585, + "source": 1223, + "pc": [ + 4500 + ] + }, + { + "teal": 4586, + "source": 1223, + "pc": [ + 4501 + ] + }, + { + "teal": 4587, + "source": 1223, + "pc": [ + 4502 + ] + }, + { + "teal": 4588, + "source": 1223, + "pc": [ + 4503, + 4504, + 4505 + ] + }, + { + "teal": 4589, + "source": 1223, + "pc": [ + 4506, + 4507 + ] + }, + { + "teal": 4590, + "source": 1223, + "pc": [ + 4508, + 4509, + 4510 + ] + }, + { + "teal": 4591, + "source": 1223, + "pc": [ + 4511 + ] + }, + { + "teal": 4592, + "source": 1223, + "pc": [ + 4512, + 4513 + ] + }, + { + "teal": 4593, + "source": 1223, + "pc": [ + 4514 + ] + }, + { + "teal": 4594, + "source": 1223, + "pc": [ + 4515 + ] + }, + { + "teal": 4598, + "source": 1222, + "errorMessage": "number of pools per node exceeds allowed number", + "pc": [ + 4516 + ] + }, + { + "teal": 4603, + "source": 1226, + "pc": [ + 4517, + 4518 + ] + }, + { + "teal": 4604, + "source": 1226, + "pc": [ + 4519, + 4520, + 4521 + ] + }, + { + "teal": 4605, + "source": 1226, + "pc": [ + 4522 + ] + }, + { + "teal": 4606, + "source": 1226, + "pc": [ + 4523 + ] + }, + { + "teal": 4607, + "source": 1226, + "pc": [ + 4524 + ] + }, + { + "teal": 4608, + "source": 1226, + "pc": [ + 4525, + 4526, + 4527 + ] + }, + { + "teal": 4613, + "source": 1227, + "pc": [ + 4528, + 4529 + ] + }, + { + "teal": 4614, + "source": 1227, + "pc": [ + 4530, + 4531, + 4532 + ] + }, + { + "teal": 4615, + "source": 1227, + "pc": [ + 4533 + ] + }, + { + "teal": 4616, + "source": 1227, + "pc": [ + 4534, + 4535 + ] + }, + { + "teal": 4617, + "source": 1227, + "pc": [ + 4536 + ] + }, + { + "teal": 4620, + "source": 1227, + "errorMessage": "sunsettingOn must be later than now if set", + "pc": [ + 4537 + ] + }, + { + "teal": 4623, + "source": 1200, + "pc": [ + 4538 + ] + }, + { + "teal": 4637, + "source": 1242, + "pc": [ + 4539, + 4540, + 4541 + ] + }, + { + "teal": 4640, + "source": 1242, + "pc": [ + 4542 + ] + }, + { + "teal": 4641, + "source": 1242, + "pc": [ + 4543, + 4544 + ] + }, + { + "teal": 4645, + "source": 1249, + "pc": [ + 4545, + 4546 + ] + }, + { + "teal": 4646, + "source": 1249, + "pc": [ + 4547, + 4548 + ] + }, + { + "teal": 4647, + "source": 1249, + "pc": [ + 4549, + 4550, + 4551 + ] + }, + { + "teal": 4648, + "source": 1249, + "pc": [ + 4552 + ] + }, + { + "teal": 4649, + "source": 1249, + "pc": [ + 4553 + ] + }, + { + "teal": 4650, + "source": 1249, + "pc": [ + 4554 + ] + }, + { + "teal": 4651, + "source": 1249, + "pc": [ + 4555, + 4556 + ] + }, + { + "teal": 4652, + "source": 1249, + "pc": [ + 4557 + ] + }, + { + "teal": 4653, + "source": 1249, + "pc": [ + 4558 + ] + }, + { + "teal": 4654, + "source": 1249, + "pc": [ + 4559 + ] + }, + { + "teal": 4655, + "source": 1249, + "pc": [ + 4560 + ] + }, + { + "teal": 4656, + "source": 1249, + "pc": [ + 4561 + ] + }, + { + "teal": 4657, + "source": 1249, + "pc": [ + 4562 + ] + }, + { + "teal": 4658, + "source": 1249, + "pc": [ + 4563, + 4564 + ] + }, + { + "teal": 4659, + "source": 1249, + "pc": [ + 4565, + 4566, + 4567 + ] + }, + { + "teal": 4660, + "source": 1249, + "pc": [ + 4568 + ] + }, + { + "teal": 4661, + "source": 1249, + "pc": [ + 4569 + ] + }, + { + "teal": 4662, + "source": 1249, + "pc": [ + 4570 + ] + }, + { + "teal": 4663, + "source": 1249, + "pc": [ + 4571, + 4572 + ] + }, + { + "teal": 4664, + "source": 1249, + "pc": [ + 4573 + ] + }, + { + "teal": 4665, + "source": 1249, + "pc": [ + 4574 + ] + }, + { + "teal": 4666, + "source": 1249, + "pc": [ + 4575, + 4576 + ] + }, + { + "teal": 4679, + "source": 1258, + "pc": [ + 4577 + ] + }, + { + "teal": 4680, + "source": 1258, + "pc": [ + 4578 + ] + }, + { + "teal": 4681, + "source": 1258, + "pc": [ + 4579, + 4580 + ] + }, + { + "teal": 4685, + "source": 1258, + "pc": [ + 4581, + 4582 + ] + }, + { + "teal": 4686, + "source": 1258, + "pc": [ + 4583, + 4584 + ] + }, + { + "teal": 4687, + "source": 1258, + "pc": [ + 4585, + 4586 + ] + }, + { + "teal": 4688, + "source": 1258, + "pc": [ + 4587 + ] + }, + { + "teal": 4689, + "source": 1258, + "pc": [ + 4588, + 4589 + ] + }, + { + "teal": 4693, + "source": 1258, + "pc": [ + 4590, + 4591 + ] + }, + { + "teal": 4694, + "source": 1258, + "pc": [ + 4592, + 4593 + ] + }, + { + "teal": 4695, + "source": 1258, + "pc": [ + 4594 + ] + }, + { + "teal": 4696, + "source": 1258, + "pc": [ + 4595, + 4596 + ] + }, + { + "teal": 4699, + "source": 1258, + "pc": [ + 4597 + ] + }, + { + "teal": 4700, + "source": 1258, + "pc": [ + 4598, + 4599 + ] + }, + { + "teal": 4701, + "source": 1253, + "pc": [ + 4600 + ] + }, + { + "teal": 4702, + "source": 1253, + "pc": [ + 4601, + 4602 + ] + }, + { + "teal": 4703, + "source": 1253, + "pc": [ + 4603, + 4604 + ] + }, + { + "teal": 4704, + "source": 1253, + "pc": [ + 4605, + 4606, + 4607, + 4608, + 4609, + 4610 + ] + }, + { + "teal": 4705, + "source": 1253, + "pc": [ + 4611, + 4612 + ] + }, + { + "teal": 4709, + "source": 1254, + "pc": [ + 4613, + 4614 + ] + }, + { + "teal": 4710, + "source": 1254, + "pc": [ + 4615, + 4616 + ] + }, + { + "teal": 4720, + "source": 1260, + "pc": [ + 4617, + 4618 + ] + }, + { + "teal": 4721, + "source": 1260, + "pc": [ + 4619, + 4620 + ] + }, + { + "teal": 4722, + "source": 1260, + "pc": [ + 4621, + 4622 + ] + }, + { + "teal": 4725, + "source": 1253, + "pc": [ + 4623 + ] + }, + { + "teal": 4726, + "source": 1253, + "pc": [ + 4624, + 4625 + ] + }, + { + "teal": 4729, + "source": 1253, + "pc": [ + 4626 + ] + }, + { + "teal": 4730, + "source": 1253, + "pc": [ + 4627, + 4628 + ] + }, + { + "teal": 4731, + "source": 1253, + "pc": [ + 4629 + ] + }, + { + "teal": 4732, + "source": 1253, + "pc": [ + 4630 + ] + }, + { + "teal": 4733, + "source": 1253, + "pc": [ + 4631, + 4632 + ] + }, + { + "teal": 4734, + "source": 1253, + "pc": [ + 4633, + 4634, + 4635 + ] + }, + { + "teal": 4735, + "source": 1253, + "pc": [ + 4636 + ] + }, + { + "teal": 4740, + "source": 1263, + "pc": [ + 4637, + 4638 + ] + }, + { + "teal": 4741, + "source": 1263, + "pc": [ + 4639, + 4640, + 4641 + ] + }, + { + "teal": 4742, + "source": 1263, + "pc": [ + 4642 + ] + }, + { + "teal": 4743, + "source": 1263, + "pc": [ + 4643, + 4644, + 4645 + ] + }, + { + "teal": 4748, + "source": 1264, + "pc": [ + 4646 + ] + }, + { + "teal": 4749, + "source": 1264, + "pc": [ + 4647, + 4648 + ] + }, + { + "teal": 4750, + "source": 1264, + "pc": [ + 4649, + 4650 + ] + }, + { + "teal": 4751, + "source": 1264, + "pc": [ + 4651 + ] + }, + { + "teal": 4752, + "source": 1264, + "pc": [ + 4652, + 4653 + ] + }, + { + "teal": 4753, + "source": 1264, + "pc": [ + 4654, + 4655 + ] + }, + { + "teal": 4754, + "source": 1264, + "pc": [ + 4656 + ] + }, + { + "teal": 4755, + "source": 1264, + "pc": [ + 4657, + 4658 + ] + }, + { + "teal": 4756, + "source": 1264, + "pc": [ + 4659, + 4660 + ] + }, + { + "teal": 4757, + "source": 1264, + "pc": [ + 4661, + 4662 + ] + }, + { + "teal": 4758, + "source": 1264, + "pc": [ + 4663, + 4664 + ] + }, + { + "teal": 4759, + "source": 1264, + "pc": [ + 4665 + ] + }, + { + "teal": 4764, + "source": 1268, + "pc": [ + 4666, + 4667 + ] + }, + { + "teal": 4765, + "source": 1268, + "pc": [ + 4668, + 4669 + ] + }, + { + "teal": 4766, + "source": 1268, + "pc": [ + 4670 + ] + }, + { + "teal": 4769, + "source": 1268, + "errorMessage": "global state value does not exist: AppID.fromUint64(poolAppId).globalState('numStakers')", + "pc": [ + 4671 + ] + }, + { + "teal": 4770, + "source": 1268, + "pc": [ + 4672, + 4673 + ] + }, + { + "teal": 4774, + "source": 1269, + "pc": [ + 4674, + 4675 + ] + }, + { + "teal": 4775, + "source": 1269, + "pc": [ + 4676, + 4677 + ] + }, + { + "teal": 4776, + "source": 1269, + "pc": [ + 4678 + ] + }, + { + "teal": 4779, + "source": 1269, + "errorMessage": "global state value does not exist: AppID.fromUint64(poolAppId).globalState('staked')", + "pc": [ + 4679 + ] + }, + { + "teal": 4780, + "source": 1269, + "pc": [ + 4680, + 4681 + ] + }, + { + "teal": 4784, + "source": 1270, + "pc": [ + 4682, + 4683 + ] + }, + { + "teal": 4785, + "source": 1270, + "pc": [ + 4684, + 4685 + ] + }, + { + "teal": 4786, + "source": 1270, + "pc": [ + 4686, + 4687, + 4688 + ] + }, + { + "teal": 4787, + "source": 1270, + "pc": [ + 4689 + ] + }, + { + "teal": 4788, + "source": 1270, + "pc": [ + 4690 + ] + }, + { + "teal": 4789, + "source": 1270, + "pc": [ + 4691 + ] + }, + { + "teal": 4790, + "source": 1270, + "pc": [ + 4692, + 4693 + ] + }, + { + "teal": 4791, + "source": 1270, + "pc": [ + 4694 + ] + }, + { + "teal": 4792, + "source": 1270, + "pc": [ + 4695 + ] + }, + { + "teal": 4793, + "source": 1270, + "pc": [ + 4696 + ] + }, + { + "teal": 4794, + "source": 1270, + "pc": [ + 4697 + ] + }, + { + "teal": 4795, + "source": 1270, + "pc": [ + 4698, + 4699 + ] + }, + { + "teal": 4796, + "source": 1270, + "pc": [ + 4700 + ] + }, + { + "teal": 4797, + "source": 1270, + "pc": [ + 4701, + 4702, + 4703 + ] + }, + { + "teal": 4798, + "source": 1270, + "pc": [ + 4704 + ] + }, + { + "teal": 4799, + "source": 1270, + "pc": [ + 4705, + 4706 + ] + }, + { + "teal": 4800, + "source": 1270, + "pc": [ + 4707, + 4708, + 4709 + ] + }, + { + "teal": 4801, + "source": 1270, + "pc": [ + 4710 + ] + }, + { + "teal": 4802, + "source": 1270, + "pc": [ + 4711 + ] + }, + { + "teal": 4803, + "source": 1270, + "pc": [ + 4712 + ] + }, + { + "teal": 4804, + "source": 1270, + "pc": [ + 4713, + 4714 + ] + }, + { + "teal": 4805, + "source": 1270, + "pc": [ + 4715 + ] + }, + { + "teal": 4809, + "source": 1271, + "pc": [ + 4716, + 4717 + ] + }, + { + "teal": 4810, + "source": 1271, + "pc": [ + 4718, + 4719 + ] + }, + { + "teal": 4811, + "source": 1271, + "pc": [ + 4720, + 4721, + 4722 + ] + }, + { + "teal": 4812, + "source": 1271, + "pc": [ + 4723 + ] + }, + { + "teal": 4813, + "source": 1271, + "pc": [ + 4724 + ] + }, + { + "teal": 4814, + "source": 1271, + "pc": [ + 4725 + ] + }, + { + "teal": 4815, + "source": 1271, + "pc": [ + 4726, + 4727 + ] + }, + { + "teal": 4816, + "source": 1271, + "pc": [ + 4728 + ] + }, + { + "teal": 4817, + "source": 1271, + "pc": [ + 4729 + ] + }, + { + "teal": 4818, + "source": 1271, + "pc": [ + 4730, + 4731 + ] + }, + { + "teal": 4819, + "source": 1271, + "pc": [ + 4732 + ] + }, + { + "teal": 4820, + "source": 1271, + "pc": [ + 4733, + 4734 + ] + }, + { + "teal": 4821, + "source": 1271, + "pc": [ + 4735 + ] + }, + { + "teal": 4822, + "source": 1271, + "pc": [ + 4736 + ] + }, + { + "teal": 4823, + "source": 1271, + "pc": [ + 4737, + 4738 + ] + }, + { + "teal": 4824, + "source": 1271, + "pc": [ + 4739, + 4740, + 4741 + ] + }, + { + "teal": 4825, + "source": 1271, + "pc": [ + 4742 + ] + }, + { + "teal": 4826, + "source": 1271, + "pc": [ + 4743 + ] + }, + { + "teal": 4827, + "source": 1271, + "pc": [ + 4744 + ] + }, + { + "teal": 4828, + "source": 1271, + "pc": [ + 4745, + 4746 + ] + }, + { + "teal": 4829, + "source": 1271, + "pc": [ + 4747 + ] + }, + { + "teal": 4834, + "source": 1274, + "pc": [ + 4748, + 4749 + ] + }, + { + "teal": 4835, + "source": 1274, + "pc": [ + 4750, + 4751, + 4752 + ] + }, + { + "teal": 4840, + "source": 1275, + "pc": [ + 4753, + 4754 + ] + }, + { + "teal": 4841, + "source": 1275, + "pc": [ + 4755 + ] + }, + { + "teal": 4842, + "source": 1275, + "pc": [ + 4756 + ] + }, + { + "teal": 4843, + "source": 1275, + "pc": [ + 4757 + ] + }, + { + "teal": 4844, + "source": 1275, + "pc": [ + 4758, + 4759 + ] + }, + { + "teal": 4845, + "source": 1275, + "pc": [ + 4760, + 4761, + 4762 + ] + }, + { + "teal": 4846, + "source": 1275, + "pc": [ + 4763 + ] + }, + { + "teal": 4847, + "source": 1275, + "pc": [ + 4764 + ] + }, + { + "teal": 4848, + "source": 1275, + "pc": [ + 4765 + ] + }, + { + "teal": 4849, + "source": 1275, + "pc": [ + 4766, + 4767 + ] + }, + { + "teal": 4850, + "source": 1275, + "pc": [ + 4768 + ] + }, + { + "teal": 4851, + "source": 1275, + "pc": [ + 4769 + ] + }, + { + "teal": 4852, + "source": 1275, + "pc": [ + 4770 + ] + }, + { + "teal": 4853, + "source": 1275, + "pc": [ + 4771 + ] + }, + { + "teal": 4854, + "source": 1275, + "pc": [ + 4772 + ] + }, + { + "teal": 4855, + "source": 1275, + "pc": [ + 4773 + ] + }, + { + "teal": 4856, + "source": 1275, + "pc": [ + 4774, + 4775 + ] + }, + { + "teal": 4857, + "source": 1275, + "pc": [ + 4776, + 4777, + 4778 + ] + }, + { + "teal": 4858, + "source": 1275, + "pc": [ + 4779 + ] + }, + { + "teal": 4859, + "source": 1275, + "pc": [ + 4780 + ] + }, + { + "teal": 4860, + "source": 1275, + "pc": [ + 4781 + ] + }, + { + "teal": 4861, + "source": 1275, + "pc": [ + 4782, + 4783 + ] + }, + { + "teal": 4862, + "source": 1275, + "pc": [ + 4784 + ] + }, + { + "teal": 4868, + "source": 1277, + "pc": [ + 4785, + 4786 + ] + }, + { + "teal": 4869, + "source": 1277, + "pc": [ + 4787, + 4788, + 4789 + ] + }, + { + "teal": 4874, + "source": 1278, + "pc": [ + 4790, + 4791 + ] + }, + { + "teal": 4875, + "source": 1278, + "pc": [ + 4792 + ] + }, + { + "teal": 4876, + "source": 1278, + "pc": [ + 4793 + ] + }, + { + "teal": 4877, + "source": 1278, + "pc": [ + 4794 + ] + }, + { + "teal": 4878, + "source": 1278, + "pc": [ + 4795, + 4796 + ] + }, + { + "teal": 4879, + "source": 1278, + "pc": [ + 4797 + ] + }, + { + "teal": 4880, + "source": 1278, + "pc": [ + 4798 + ] + }, + { + "teal": 4885, + "source": 1280, + "pc": [ + 4799, + 4800 + ] + }, + { + "teal": 4886, + "source": 1280, + "pc": [ + 4801 + ] + }, + { + "teal": 4887, + "source": 1280, + "pc": [ + 4802 + ] + }, + { + "teal": 4888, + "source": 1280, + "pc": [ + 4803 + ] + }, + { + "teal": 4889, + "source": 1280, + "pc": [ + 4804, + 4805 + ] + }, + { + "teal": 4890, + "source": 1280, + "pc": [ + 4806, + 4807, + 4808 + ] + }, + { + "teal": 4891, + "source": 1280, + "pc": [ + 4809 + ] + }, + { + "teal": 4892, + "source": 1280, + "pc": [ + 4810 + ] + }, + { + "teal": 4893, + "source": 1280, + "pc": [ + 4811 + ] + }, + { + "teal": 4894, + "source": 1280, + "pc": [ + 4812, + 4813 + ] + }, + { + "teal": 4895, + "source": 1280, + "pc": [ + 4814 + ] + }, + { + "teal": 4896, + "source": 1280, + "pc": [ + 4815 + ] + }, + { + "teal": 4897, + "source": 1280, + "pc": [ + 4816, + 4817 + ] + }, + { + "teal": 4898, + "source": 1280, + "pc": [ + 4818, + 4819 + ] + }, + { + "teal": 4899, + "source": 1280, + "pc": [ + 4820, + 4821 + ] + }, + { + "teal": 4900, + "source": 1280, + "pc": [ + 4822 + ] + }, + { + "teal": 4901, + "source": 1280, + "pc": [ + 4823 + ] + }, + { + "teal": 4902, + "source": 1280, + "pc": [ + 4824 + ] + }, + { + "teal": 4903, + "source": 1280, + "pc": [ + 4825 + ] + }, + { + "teal": 4904, + "source": 1280, + "pc": [ + 4826, + 4827 + ] + }, + { + "teal": 4905, + "source": 1280, + "pc": [ + 4828, + 4829, + 4830 + ] + }, + { + "teal": 4906, + "source": 1280, + "pc": [ + 4831 + ] + }, + { + "teal": 4907, + "source": 1280, + "pc": [ + 4832 + ] + }, + { + "teal": 4908, + "source": 1280, + "pc": [ + 4833 + ] + }, + { + "teal": 4909, + "source": 1280, + "pc": [ + 4834, + 4835 + ] + }, + { + "teal": 4910, + "source": 1280, + "pc": [ + 4836 + ] + }, + { + "teal": 4914, + "source": 1281, + "pc": [ + 4837, + 4838 + ] + }, + { + "teal": 4915, + "source": 1281, + "pc": [ + 4839 + ] + }, + { + "teal": 4916, + "source": 1281, + "pc": [ + 4840, + 4841 + ] + }, + { + "teal": 4917, + "source": 1281, + "pc": [ + 4842, + 4843 + ] + }, + { + "teal": 4918, + "source": 1281, + "pc": [ + 4844, + 4845 + ] + }, + { + "teal": 4919, + "source": 1281, + "pc": [ + 4846 + ] + }, + { + "teal": 4920, + "source": 1281, + "pc": [ + 4847 + ] + }, + { + "teal": 4921, + "source": 1281, + "pc": [ + 4848, + 4849 + ] + }, + { + "teal": 4922, + "source": 1281, + "pc": [ + 4850 + ] + }, + { + "teal": 4923, + "source": 1281, + "pc": [ + 4851 + ] + }, + { + "teal": 4924, + "source": 1242, + "pc": [ + 4852 + ] + }, + { + "teal": 4928, + "source": 1284, + "pc": [ + 4853, + 4854, + 4855 + ] + }, + { + "teal": 4931, + "source": 1284, + "pc": [ + 4856 + ] + }, + { + "teal": 4932, + "source": 1284, + "pc": [ + 4857, + 4858 + ] + }, + { + "teal": 4936, + "source": 1285, + "pc": [ + 4859 + ] + }, + { + "teal": 4937, + "source": 1285, + "pc": [ + 4860, + 4861 + ] + }, + { + "teal": 4938, + "source": 1285, + "pc": [ + 4862 + ] + }, + { + "teal": 4939, + "source": 1285, + "pc": [ + 4863 + ] + }, + { + "teal": 4940, + "source": 1285, + "pc": [ + 4864 + ] + }, + { + "teal": 4941, + "source": 1285, + "pc": [ + 4865 + ] + }, + { + "teal": 4942, + "source": 1285, + "pc": [ + 4866 + ] + }, + { + "teal": 4946, + "source": 1287, + "pc": [ + 4867 + ] + }, + { + "teal": 4947, + "source": 1287, + "pc": [ + 4868, + 4869 + ] + }, + { + "teal": 4948, + "source": 1287, + "pc": [ + 4870 + ] + }, + { + "teal": 4949, + "source": 1287, + "pc": [ + 4871 + ] + }, + { + "teal": 4952, + "source": 1287, + "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", + "pc": [ + 4872 + ] + }, + { + "teal": 4953, + "source": 1287, + "pc": [ + 4873, + 4874 + ] + }, + { + "teal": 4957, + "source": 1288, + "pc": [ + 4875 + ] + }, + { + "teal": 4958, + "source": 1288, + "pc": [ + 4876, + 4877 + ] + }, + { + "teal": 4962, + "source": 1289, + "pc": [ + 4878 + ] + }, + { + "teal": 4963, + "source": 1289, + "pc": [ + 4879, + 4880 + ] + }, + { + "teal": 4968, + "source": 1289, + "pc": [ + 4881, + 4882 + ] + }, + { + "teal": 4969, + "source": 1289, + "pc": [ + 4883, + 4884 + ] + }, + { + "teal": 4970, + "source": 1289, + "pc": [ + 4885 + ] + }, + { + "teal": 4971, + "source": 1289, + "pc": [ + 4886, + 4887, + 4888 + ] + }, + { + "teal": 4976, + "source": 1290, + "pc": [ + 4889, + 4890 + ] + }, + { + "teal": 4977, + "source": 1290, + "pc": [ + 4891, + 4892 + ] + }, + { + "teal": 4978, + "source": 1290, + "pc": [ + 4893 + ] + }, + { + "teal": 4979, + "source": 1290, + "pc": [ + 4894 + ] + }, + { + "teal": 4980, + "source": 1290, + "pc": [ + 4895 + ] + }, + { + "teal": 4981, + "source": 1290, + "pc": [ + 4896 + ] + }, + { + "teal": 4982, + "source": 1290, + "pc": [ + 4897, + 4898 + ] + }, + { + "teal": 4983, + "source": 1290, + "pc": [ + 4899 + ] + }, + { + "teal": 4984, + "source": 1290, + "pc": [ + 4900, + 4901, + 4902 + ] + }, + { + "teal": 4989, + "source": 1292, + "pc": [ + 4903 + ] + }, + { + "teal": 4995, + "source": 1294, + "pc": [ + 4904, + 4905 + ] + }, + { + "teal": 4996, + "source": 1294, + "pc": [ + 4906 + ] + }, + { + "teal": 4997, + "source": 1294, + "pc": [ + 4907 + ] + }, + { + "teal": 4998, + "source": 1294, + "pc": [ + 4908 + ] + }, + { + "teal": 4999, + "source": 1294, + "pc": [ + 4909, + 4910, + 4911 + ] + }, + { + "teal": 5000, + "source": 1294, + "pc": [ + 4912, + 4913 + ] + }, + { + "teal": 5001, + "source": 1294, + "pc": [ + 4914, + 4915 + ] + }, + { + "teal": 5002, + "source": 1294, + "pc": [ + 4916 + ] + }, + { + "teal": 5003, + "source": 1294, + "pc": [ + 4917 + ] + }, + { + "teal": 5004, + "source": 1294, + "pc": [ + 4918 + ] + }, + { + "teal": 5005, + "source": 1294, + "pc": [ + 4919 + ] + }, + { + "teal": 5006, + "source": 1294, + "pc": [ + 4920 + ] + }, + { + "teal": 5007, + "source": 1294, + "pc": [ + 4921 + ] + }, + { + "teal": 5008, + "source": 1294, + "pc": [ + 4922 + ] + }, + { + "teal": 5009, + "source": 1294, + "pc": [ + 4923 + ] + }, + { + "teal": 5010, + "source": 1294, + "pc": [ + 4924 + ] + }, + { + "teal": 5011, + "source": 1294, + "pc": [ + 4925 + ] + }, + { + "teal": 5014, + "source": 1294, + "pc": [ + 4926, + 4927, + 4928 + ] + }, + { + "teal": 5019, + "source": 1295, + "pc": [ + 4929, + 4930 + ] + }, + { + "teal": 5020, + "source": 1295, + "pc": [ + 4931 + ] + }, + { + "teal": 5021, + "source": 1295, + "pc": [ + 4932 + ] + }, + { + "teal": 5022, + "source": 1295, + "pc": [ + 4933, + 4934 + ] + }, + { + "teal": 5029, + "source": 1289, + "pc": [ + 4935, + 4936 + ] + }, + { + "teal": 5030, + "source": 1289, + "pc": [ + 4937 + ] + }, + { + "teal": 5031, + "source": 1289, + "pc": [ + 4938 + ] + }, + { + "teal": 5032, + "source": 1289, + "pc": [ + 4939, + 4940 + ] + }, + { + "teal": 5033, + "source": 1289, + "pc": [ + 4941, + 4942, + 4943 + ] + }, + { + "teal": 5039, + "source": 1298, + "pc": [ + 4944, + 4945 + ] + }, + { + "teal": 5040, + "source": 1298, + "pc": [ + 4946 + ] + }, + { + "teal": 5041, + "source": 1298, + "pc": [ + 4947 + ] + }, + { + "teal": 5042, + "source": 1298, + "pc": [ + 4948, + 4949, + 4950 + ] + }, + { + "teal": 5046, + "source": 1299, + "errorMessage": "No empty slot available in the staker pool set", + "pc": [ + 4951 + ] + }, + { + "teal": 5051, + "source": 1301, + "pc": [ + 4952, + 4953 + ] + }, + { + "teal": 5052, + "source": 1301, + "pc": [ + 4954 + ] + }, + { + "teal": 5053, + "source": 1301, + "pc": [ + 4955 + ] + }, + { + "teal": 5054, + "source": 1301, + "pc": [ + 4956 + ] + }, + { + "teal": 5055, + "source": 1301, + "pc": [ + 4957 + ] + }, + { + "teal": 5056, + "source": 1301, + "pc": [ + 4958, + 4959 + ] + }, + { + "teal": 5057, + "source": 1301, + "pc": [ + 4960 + ] + }, + { + "teal": 5058, + "source": 1301, + "pc": [ + 4961, + 4962 + ] + }, + { + "teal": 5059, + "source": 1301, + "pc": [ + 4963 + ] + }, + { + "teal": 5060, + "source": 1301, + "pc": [ + 4964, + 4965 + ] + }, + { + "teal": 5061, + "source": 1301, + "pc": [ + 4966 + ] + }, + { + "teal": 5062, + "source": 1284, + "pc": [ + 4967 + ] + }, + { + "teal": 5073, + "source": 1312, + "pc": [ + 4968, + 4969, + 4970 + ] + }, + { + "teal": 5076, + "source": 1312, + "pc": [ + 4971 + ] + }, + { + "teal": 5077, + "source": 1312, + "pc": [ + 4972, + 4973 + ] + }, + { + "teal": 5081, + "source": 1314, + "pc": [ + 4974 + ] + }, + { + "teal": 5082, + "source": 1314, + "pc": [ + 4975, + 4976 + ] + }, + { + "teal": 5086, + "source": 1315, + "pc": [ + 4977 + ] + }, + { + "teal": 5087, + "source": 1315, + "pc": [ + 4978, + 4979 + ] + }, + { + "teal": 5091, + "source": 1316, + "pc": [ + 4980 + ] + }, + { + "teal": 5092, + "source": 1316, + "pc": [ + 4981, + 4982 + ] + }, + { + "teal": 5096, + "source": 1318, + "pc": [ + 4983 + ] + }, + { + "teal": 5097, + "source": 1318, + "pc": [ + 4984, + 4985 + ] + }, + { + "teal": 5098, + "source": 1318, + "pc": [ + 4986 + ] + }, + { + "teal": 5099, + "source": 1318, + "pc": [ + 4987 + ] + }, + { + "teal": 5102, + "source": 1318, + "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", + "pc": [ + 4988 + ] + }, + { + "teal": 5103, + "source": 1318, + "pc": [ + 4989, + 4990 + ] + }, + { + "teal": 5107, + "source": 1319, + "pc": [ + 4991 + ] + }, + { + "teal": 5108, + "source": 1319, + "pc": [ + 4992, + 4993 + ] + }, + { + "teal": 5113, + "source": 1319, + "pc": [ + 4994, + 4995 + ] + }, + { + "teal": 5114, + "source": 1319, + "pc": [ + 4996, + 4997 + ] + }, + { + "teal": 5115, + "source": 1319, + "pc": [ + 4998 + ] + }, + { + "teal": 5116, + "source": 1319, + "pc": [ + 4999, + 5000, + 5001 + ] + }, + { + "teal": 5121, + "source": 1320, + "pc": [ + 5002, + 5003 + ] + }, + { + "teal": 5122, + "source": 1320, + "pc": [ + 5004, + 5005 + ] + }, + { + "teal": 5123, + "source": 1320, + "pc": [ + 5006 + ] + }, + { + "teal": 5124, + "source": 1320, + "pc": [ + 5007 + ] + }, + { + "teal": 5125, + "source": 1320, + "pc": [ + 5008 + ] + }, + { + "teal": 5126, + "source": 1320, + "pc": [ + 5009 + ] + }, + { + "teal": 5127, + "source": 1320, + "pc": [ + 5010 + ] + }, + { + "teal": 5128, + "source": 1320, + "pc": [ + 5011 + ] + }, + { + "teal": 5129, + "source": 1320, + "pc": [ + 5012 + ] + }, + { + "teal": 5130, + "source": 1320, + "pc": [ + 5013 + ] + }, + { + "teal": 5131, + "source": 1320, + "pc": [ + 5014 + ] + }, + { + "teal": 5132, + "source": 1320, + "pc": [ + 5015, + 5016, + 5017 + ] + }, + { + "teal": 5135, + "source": 1321, + "pc": [ + 5018, + 5019, + 5020 + ] + }, + { + "teal": 5140, + "source": 1323, + "pc": [ + 5021, + 5022 + ] + }, + { + "teal": 5141, + "source": 1323, + "pc": [ + 5023 + ] + }, + { + "teal": 5142, + "source": 1323, + "pc": [ + 5024 + ] + }, + { + "teal": 5143, + "source": 1323, + "pc": [ + 5025, + 5026 + ] + }, + { + "teal": 5148, + "source": 1324, + "pc": [ + 5027, + 5028 + ] + }, + { + "teal": 5149, + "source": 1324, + "pc": [ + 5029, + 5030 + ] + }, + { + "teal": 5150, + "source": 1324, + "pc": [ + 5031 + ] + }, + { + "teal": 5151, + "source": 1324, + "pc": [ + 5032 + ] + }, + { + "teal": 5152, + "source": 1324, + "pc": [ + 5033 + ] + }, + { + "teal": 5153, + "source": 1324, + "pc": [ + 5034 + ] + }, + { + "teal": 5154, + "source": 1324, + "pc": [ + 5035 + ] + }, + { + "teal": 5155, + "source": 1324, + "pc": [ + 5036 + ] + }, + { + "teal": 5156, + "source": 1324, + "pc": [ + 5037 + ] + }, + { + "teal": 5157, + "source": 1324, + "pc": [ + 5038, + 5039 + ] + }, + { + "teal": 5158, + "source": 1324, + "pc": [ + 5040, + 5041, + 5042 + ] + }, + { + "teal": 5159, + "source": 1324, + "pc": [ + 5043 + ] + }, + { + "teal": 5160, + "source": 1324, + "pc": [ + 5044 + ] + }, + { + "teal": 5161, + "source": 1324, + "pc": [ + 5045, + 5046, + 5047 + ] + }, + { + "teal": 5167, + "source": 1325, + "pc": [ + 5048, + 5049 + ] + }, + { + "teal": 5168, + "source": 1325, + "pc": [ + 5050, + 5051 + ] + }, + { + "teal": 5169, + "source": 1325, + "pc": [ + 5052 + ] + }, + { + "teal": 5170, + "source": 1325, + "pc": [ + 5053 + ] + }, + { + "teal": 5171, + "source": 1325, + "pc": [ + 5054 + ] + }, + { + "teal": 5172, + "source": 1325, + "pc": [ + 5055 + ] + }, + { + "teal": 5173, + "source": 1325, + "pc": [ + 5056, + 5057 + ] + }, + { + "teal": 5174, + "source": 1325, + "pc": [ + 5058 + ] + }, + { + "teal": 5175, + "source": 1325, + "pc": [ + 5059, + 5060, + 5061 + ] + }, + { + "teal": 5180, + "source": 1326, + "pc": [ + 5062 + ] + }, + { + "teal": 5181, + "source": 1326, + "pc": [ + 5063, + 5064 + ] + }, + { + "teal": 5185, + "source": 1328, + "pc": [ + 5065, + 5066 + ] + }, + { + "teal": 5186, + "source": 1328, + "pc": [ + 5067 + ] + }, + { + "teal": 5187, + "source": 1328, + "pc": [ + 5068 + ] + }, + { + "teal": 5188, + "source": 1328, + "pc": [ + 5069, + 5070, + 5071, + 5072, + 5073, + 5074, + 5075, + 5076, + 5077, + 5078, + 5079, + 5080, + 5081, + 5082, + 5083, + 5084, + 5085, + 5086, + 5087, + 5088, + 5089, + 5090, + 5091, + 5092, + 5093, + 5094 + ] + }, + { + "teal": 5189, + "source": 1328, + "pc": [ + 5095 + ] + }, + { + "teal": 5190, + "source": 1328, + "pc": [ + 5096, + 5097 + ] + }, + { + "teal": 5191, + "source": 1328, + "pc": [ + 5098 + ] + }, + { + "teal": 5192, + "source": 1328, + "pc": [ + 5099, + 5100 + ] + }, + { + "teal": 5193, + "source": 1328, + "pc": [ + 5101 + ] + }, + { + "teal": 5194, + "source": 1325, + "pc": [ + 5102, + 5103, + 5104 + ] + }, + { + "teal": 5199, + "source": 1330, + "pc": [ + 5105, + 5106 + ] + }, + { + "teal": 5200, + "source": 1330, + "pc": [ + 5107 + ] + }, + { + "teal": 5201, + "source": 1330, + "pc": [ + 5108 + ] + }, + { + "teal": 5202, + "source": 1330, + "pc": [ + 5109, + 5110 + ] + }, + { + "teal": 5211, + "source": 1319, + "pc": [ + 5111, + 5112 + ] + }, + { + "teal": 5212, + "source": 1319, + "pc": [ + 5113 + ] + }, + { + "teal": 5213, + "source": 1319, + "pc": [ + 5114 + ] + }, + { + "teal": 5214, + "source": 1319, + "pc": [ + 5115, + 5116 + ] + }, + { + "teal": 5215, + "source": 1319, + "pc": [ + 5117, + 5118, + 5119 + ] + }, + { + "teal": 5221, + "source": 1334, + "pc": [ + 5120, + 5121 + ] + }, + { + "teal": 5222, + "source": 1334, + "pc": [ + 5122 + ] + }, + { + "teal": 5223, + "source": 1334, + "pc": [ + 5123, + 5124, + 5125 + ] + }, + { + "teal": 5227, + "source": 1335, + "errorMessage": "No matching slot found when told to remove a pool from the stakers set", + "pc": [ + 5126 + ] + }, + { + "teal": 5232, + "source": 1338, + "pc": [ + 5127, + 5128 + ] + }, + { + "teal": 5233, + "source": 1338, + "pc": [ + 5129 + ] + }, + { + "teal": 5234, + "source": 1338, + "pc": [ + 5130, + 5131 + ] + }, + { + "teal": 5235, + "source": 1338, + "pc": [ + 5132 + ] + }, + { + "teal": 5236, + "source": 1338, + "pc": [ + 5133 + ] + }, + { + "teal": 5237, + "source": 1338, + "pc": [ + 5134 + ] + }, + { + "teal": 5238, + "source": 1338, + "pc": [ + 5135 + ] + }, + { + "teal": 5239, + "source": 1338, + "pc": [ + 5136, + 5137 + ] + }, + { + "teal": 5240, + "source": 1338, + "pc": [ + 5138 + ] + }, + { + "teal": 5241, + "source": 1338, + "pc": [ + 5139 + ] + }, + { + "teal": 5242, + "source": 1338, + "pc": [ + 5140 + ] + }, + { + "teal": 5245, + "source": 1312, + "pc": [ + 5141, + 5142 + ] + }, + { + "teal": 5248, + "source": 1312, + "pc": [ + 5143, + 5144 + ] + }, + { + "teal": 5249, + "source": 1312, + "pc": [ + 5145 + ] + }, + { + "teal": 5253, + "source": 1341, + "pc": [ + 5146, + 5147, + 5148 + ] + }, + { + "teal": 5256, + "source": 1341, + "pc": [ + 5149 + ] + }, + { + "teal": 5257, + "source": 1341, + "pc": [ + 5150, + 5151 + ] + }, + { + "teal": 5261, + "source": 1342, + "pc": [ + 5152, + 5153 + ] + }, + { + "teal": 5262, + "source": 1342, + "pc": [ + 5154, + 5155 + ] + }, + { + "teal": 5263, + "source": 1342, + "pc": [ + 5156 + ] + }, + { + "teal": 5264, + "source": 1342, + "pc": [ + 5157, + 5158 + ] + }, + { + "teal": 5265, + "source": 1342, + "pc": [ + 5159 + ] + }, + { + "teal": 5266, + "source": 1342, + "pc": [ + 5160 + ] + }, + { + "teal": 5267, + "source": 1342, + "pc": [ + 5161, + 5162 + ] + }, + { + "teal": 5268, + "source": 1342, + "pc": [ + 5163 + ] + }, + { + "teal": 5269, + "source": 1342, + "pc": [ + 5164, + 5165 + ] + }, + { + "teal": 5273, + "source": 1343, + "pc": [ + 5166, + 5167, + 5168 + ] + }, + { + "teal": 5274, + "source": 1343, + "pc": [ + 5169 + ] + }, + { + "teal": 5275, + "source": 1343, + "pc": [ + 5170 + ] + }, + { + "teal": 5276, + "source": 1343, + "pc": [ + 5171, + 5172 + ] + }, + { + "teal": 5277, + "source": 1343, + "pc": [ + 5173 + ] + }, + { + "teal": 5278, + "source": 1343, + "pc": [ + 5174 + ] + }, + { + "teal": 5279, + "source": 1343, + "pc": [ + 5175, + 5176 + ] + }, + { + "teal": 5280, + "source": 1343, + "pc": [ + 5177 + ] + }, + { + "teal": 5281, + "source": 1343, + "pc": [ + 5178 + ] + }, + { + "teal": 5282, + "source": 1343, + "pc": [ + 5179, + 5180 + ] + }, + { + "teal": 5286, + "source": 1345, + "pc": [ + 5181, + 5182 + ] + }, + { + "teal": 5287, + "source": 1345, + "pc": [ + 5183 + ] + }, + { + "teal": 5288, + "source": 1345, + "pc": [ + 5184 + ] + }, + { + "teal": 5289, + "source": 1345, + "pc": [ + 5185 + ] + }, + { + "teal": 5290, + "source": 1345, + "pc": [ + 5186, + 5187, + 5188 + ] + }, + { + "teal": 5291, + "source": 1345, + "pc": [ + 5189, + 5190 + ] + }, + { + "teal": 5292, + "source": 1345, + "pc": [ + 5191 + ] + }, + { + "teal": 5293, + "source": 1345, + "pc": [ + 5192 + ] + }, + { + "teal": 5294, + "source": 1345, + "pc": [ + 5193 + ] + }, + { + "teal": 5298, + "source": 1345, + "errorMessage": "node number not in valid range", + "pc": [ + 5194 + ] + }, + { + "teal": 5302, + "source": 1347, + "pc": [ + 5195 + ] + }, + { + "teal": 5303, + "source": 1347, + "pc": [ + 5196, + 5197 + ] + }, + { + "teal": 5308, + "source": 1347, + "pc": [ + 5198, + 5199 + ] + }, + { + "teal": 5309, + "source": 1347, + "pc": [ + 5200, + 5201 + ] + }, + { + "teal": 5310, + "source": 1347, + "pc": [ + 5202 + ] + }, + { + "teal": 5311, + "source": 1347, + "pc": [ + 5203, + 5204, + 5205 + ] + }, + { + "teal": 5316, + "source": 1348, + "pc": [ + 5206, + 5207 + ] + }, + { + "teal": 5317, + "source": 1348, + "pc": [ + 5208 + ] + }, + { + "teal": 5318, + "source": 1348, + "pc": [ + 5209, + 5210 + ] + }, + { + "teal": 5319, + "source": 1348, + "pc": [ + 5211 + ] + }, + { + "teal": 5320, + "source": 1348, + "pc": [ + 5212 + ] + }, + { + "teal": 5321, + "source": 1348, + "pc": [ + 5213 + ] + }, + { + "teal": 5322, + "source": 1348, + "pc": [ + 5214 + ] + }, + { + "teal": 5323, + "source": 1348, + "pc": [ + 5215 + ] + }, + { + "teal": 5324, + "source": 1348, + "pc": [ + 5216 + ] + }, + { + "teal": 5325, + "source": 1348, + "pc": [ + 5217 + ] + }, + { + "teal": 5326, + "source": 1348, + "pc": [ + 5218, + 5219 + ] + }, + { + "teal": 5327, + "source": 1348, + "pc": [ + 5220 + ] + }, + { + "teal": 5328, + "source": 1348, + "pc": [ + 5221 + ] + }, + { + "teal": 5329, + "source": 1348, + "pc": [ + 5222 + ] + }, + { + "teal": 5330, + "source": 1348, + "pc": [ + 5223 + ] + }, + { + "teal": 5331, + "source": 1348, + "pc": [ + 5224 + ] + }, + { + "teal": 5332, + "source": 1348, + "pc": [ + 5225 + ] + }, + { + "teal": 5333, + "source": 1348, + "pc": [ + 5226 + ] + }, + { + "teal": 5334, + "source": 1348, + "pc": [ + 5227 + ] + }, + { + "teal": 5335, + "source": 1348, + "pc": [ + 5228, + 5229, + 5230 + ] + }, + { + "teal": 5340, + "source": 1350, + "pc": [ + 5231, + 5232 + ] + }, + { + "teal": 5341, + "source": 1350, + "pc": [ + 5233, + 5234 + ] + }, + { + "teal": 5342, + "source": 1350, + "pc": [ + 5235 + ] + }, + { + "teal": 5343, + "source": 1350, + "pc": [ + 5236 + ] + }, + { + "teal": 5344, + "source": 1350, + "pc": [ + 5237 + ] + }, + { + "teal": 5345, + "source": 1350, + "pc": [ + 5238 + ] + }, + { + "teal": 5346, + "source": 1350, + "pc": [ + 5239 + ] + }, + { + "teal": 5347, + "source": 1350, + "pc": [ + 5240 + ] + }, + { + "teal": 5348, + "source": 1350, + "pc": [ + 5241 + ] + }, + { + "teal": 5349, + "source": 1350, + "pc": [ + 5242, + 5243 + ] + }, + { + "teal": 5350, + "source": 1350, + "pc": [ + 5244 + ] + }, + { + "teal": 5351, + "source": 1350, + "pc": [ + 5245 + ] + }, + { + "teal": 5352, + "source": 1350, + "pc": [ + 5246 + ] + }, + { + "teal": 5353, + "source": 1350, + "pc": [ + 5247, + 5248 + ] + }, + { + "teal": 5354, + "source": 1350, + "pc": [ + 5249 + ] + }, + { + "teal": 5355, + "source": 1350, + "pc": [ + 5250 + ] + }, + { + "teal": 5356, + "source": 1350, + "pc": [ + 5251, + 5252 + ] + }, + { + "teal": 5357, + "source": 1350, + "pc": [ + 5253 + ] + }, + { + "teal": 5358, + "source": 1350, + "pc": [ + 5254 + ] + }, + { + "teal": 5359, + "source": 1350, + "pc": [ + 5255, + 5256 + ] + }, + { + "teal": 5360, + "source": 1350, + "pc": [ + 5257 + ] + }, + { + "teal": 5364, + "source": 1351, + "pc": [ + 5258 + ] + }, + { + "teal": 5371, + "source": 1347, + "pc": [ + 5259, + 5260 + ] + }, + { + "teal": 5372, + "source": 1347, + "pc": [ + 5261 + ] + }, + { + "teal": 5373, + "source": 1347, + "pc": [ + 5262 + ] + }, + { + "teal": 5374, + "source": 1347, + "pc": [ + 5263, + 5264 + ] + }, + { + "teal": 5375, + "source": 1347, + "pc": [ + 5265, + 5266, + 5267 + ] + }, + { + "teal": 5379, + "source": 1354, + "errorMessage": "no available space in specified node for this pool", + "pc": [ + 5268 + ] + }, + { + "teal": 5380, + "source": 1341, + "pc": [ + 5269 + ] + }, + { + "teal": 5390, + "source": 1364, + "pc": [ + 5270, + 5271, + 5272 + ] + }, + { + "teal": 5393, + "source": 1364, + "pc": [ + 5273 + ] + }, + { + "teal": 5394, + "source": 1364, + "pc": [ + 5274, + 5275 + ] + }, + { + "teal": 5398, + "source": 1365, + "pc": [ + 5276, + 5277 + ] + }, + { + "teal": 5399, + "source": 1365, + "pc": [ + 5278 + ] + }, + { + "teal": 5400, + "source": 1365, + "pc": [ + 5279 + ] + }, + { + "teal": 5401, + "source": 1365, + "pc": [ + 5280, + 5281 + ] + }, + { + "teal": 5402, + "source": 1365, + "pc": [ + 5282 + ] + }, + { + "teal": 5403, + "source": 1365, + "pc": [ + 5283 + ] + }, + { + "teal": 5404, + "source": 1365, + "pc": [ + 5284, + 5285 + ] + }, + { + "teal": 5405, + "source": 1365, + "pc": [ + 5286 + ] + }, + { + "teal": 5406, + "source": 1365, + "pc": [ + 5287 + ] + }, + { + "teal": 5407, + "source": 1365, + "pc": [ + 5288, + 5289 + ] + }, + { + "teal": 5412, + "source": 1366, + "pc": [ + 5290, + 5291 + ] + }, + { + "teal": 5413, + "source": 1366, + "pc": [ + 5292 + ] + }, + { + "teal": 5414, + "source": 1366, + "pc": [ + 5293 + ] + }, + { + "teal": 5415, + "source": 1366, + "pc": [ + 5294, + 5295, + 5296 + ] + }, + { + "teal": 5420, + "source": 1367, + "pc": [ + 5297 + ] + }, + { + "teal": 5425, + "source": 1369, + "pc": [ + 5298, + 5299 + ] + }, + { + "teal": 5426, + "source": 1369, + "pc": [ + 5300, + 5301 + ] + }, + { + "teal": 5430, + "source": 1370, + "pc": [ + 5302 + ] + }, + { + "teal": 5431, + "source": 1370, + "pc": [ + 5303, + 5304 + ] + }, + { + "teal": 5432, + "source": 1370, + "pc": [ + 5305 + ] + }, + { + "teal": 5433, + "source": 1370, + "pc": [ + 5306, + 5307 + ] + }, + { + "teal": 5434, + "source": 1370, + "pc": [ + 5308 + ] + }, + { + "teal": 5435, + "source": 1370, + "pc": [ + 5309 + ] + }, + { + "teal": 5436, + "source": 1370, + "pc": [ + 5310, + 5311 + ] + }, + { + "teal": 5437, + "source": 1370, + "pc": [ + 5312 + ] + }, + { + "teal": 5438, + "source": 1370, + "pc": [ + 5313, + 5314 + ] + }, + { + "teal": 5445, + "source": 1374, + "pc": [ + 5315, + 5316 + ] + }, + { + "teal": 5446, + "source": 1374, + "pc": [ + 5317 + ] + }, + { + "teal": 5447, + "source": 1374, + "pc": [ + 5318 + ] + }, + { + "teal": 5448, + "source": 1374, + "pc": [ + 5319 + ] + }, + { + "teal": 5449, + "source": 1374, + "pc": [ + 5320, + 5321, + 5322 + ] + }, + { + "teal": 5450, + "source": 1375, + "pc": [ + 5323, + 5324 + ] + }, + { + "teal": 5451, + "source": 1375, + "pc": [ + 5325, + 5326 + ] + }, + { + "teal": 5452, + "source": 1375, + "pc": [ + 5327 + ] + }, + { + "teal": 5453, + "source": 1374, + "pc": [ + 5328 + ] + }, + { + "teal": 5456, + "source": 1375, + "pc": [ + 5329 + ] + }, + { + "teal": 5457, + "source": 1375, + "pc": [ + 5330, + 5331, + 5332 + ] + }, + { + "teal": 5458, + "source": 1376, + "pc": [ + 5333, + 5334 + ] + }, + { + "teal": 5459, + "source": 1376, + "pc": [ + 5335, + 5336 + ] + }, + { + "teal": 5460, + "source": 1376, + "pc": [ + 5337 + ] + }, + { + "teal": 5461, + "source": 1375, + "pc": [ + 5338 + ] + }, + { + "teal": 5464, + "source": 1373, + "pc": [ + 5339, + 5340, + 5341 + ] + }, + { + "teal": 5469, + "source": 1378, + "pc": [ + 5342, + 5343 + ] + }, + { + "teal": 5470, + "source": 1378, + "pc": [ + 5344 + ] + }, + { + "teal": 5471, + "source": 1378, + "pc": [ + 5345 + ] + }, + { + "teal": 5472, + "source": 1378, + "pc": [ + 5346 + ] + }, + { + "teal": 5476, + "source": 1379, + "pc": [ + 5347, + 5348 + ] + }, + { + "teal": 5477, + "source": 1379, + "pc": [ + 5349 + ] + }, + { + "teal": 5478, + "source": 1379, + "pc": [ + 5350 + ] + }, + { + "teal": 5479, + "source": 1379, + "pc": [ + 5351, + 5352 + ] + }, + { + "teal": 5480, + "source": 1379, + "pc": [ + 5353 + ] + }, + { + "teal": 5481, + "source": 1379, + "pc": [ + 5354 + ] + }, + { + "teal": 5482, + "source": 1379, + "pc": [ + 5355, + 5356 + ] + }, + { + "teal": 5483, + "source": 1379, + "pc": [ + 5357 + ] + }, + { + "teal": 5484, + "source": 1379, + "pc": [ + 5358 + ] + }, + { + "teal": 5485, + "source": 1379, + "pc": [ + 5359, + 5360 + ] + }, + { + "teal": 5490, + "source": 1380, + "pc": [ + 5361, + 5362 + ] + }, + { + "teal": 5491, + "source": 1380, + "pc": [ + 5363 + ] + }, + { + "teal": 5492, + "source": 1380, + "pc": [ + 5364 + ] + }, + { + "teal": 5493, + "source": 1380, + "pc": [ + 5365, + 5366, + 5367 + ] + }, + { + "teal": 5498, + "source": 1381, + "pc": [ + 5368 + ] + }, + { + "teal": 5499, + "source": 1381, + "pc": [ + 5369, + 5370 + ] + }, + { + "teal": 5507, + "source": 1384, + "pc": [ + 5371, + 5372 + ] + }, + { + "teal": 5508, + "source": 1384, + "pc": [ + 5373, + 5374 + ] + }, + { + "teal": 5509, + "source": 1384, + "pc": [ + 5375, + 5376 + ] + }, + { + "teal": 5510, + "source": 1384, + "pc": [ + 5377 + ] + }, + { + "teal": 5511, + "source": 1384, + "pc": [ + 5378, + 5379 + ] + }, + { + "teal": 5512, + "source": 1384, + "pc": [ + 5380 + ] + }, + { + "teal": 5515, + "source": 1383, + "errorMessage": "must have required minimum balance of validator defined token to add stake", + "pc": [ + 5381 + ] + }, + { + "teal": 5521, + "source": 1388, + "pc": [ + 5382, + 5383 + ] + }, + { + "teal": 5522, + "source": 1388, + "pc": [ + 5384 + ] + }, + { + "teal": 5523, + "source": 1388, + "pc": [ + 5385 + ] + }, + { + "teal": 5524, + "source": 1388, + "pc": [ + 5386, + 5387, + 5388 + ] + }, + { + "teal": 5532, + "source": 1390, + "pc": [ + 5389, + 5390 + ] + }, + { + "teal": 5533, + "source": 1390, + "pc": [ + 5391, + 5392 + ] + }, + { + "teal": 5534, + "source": 1390, + "pc": [ + 5393 + ] + }, + { + "teal": 5535, + "source": 1390, + "pc": [ + 5394, + 5395 + ] + }, + { + "teal": 5536, + "source": 1390, + "pc": [ + 5396, + 5397, + 5398 + ] + }, + { + "teal": 5537, + "source": 1390, + "pc": [ + 5399 + ] + }, + { + "teal": 5540, + "source": 1389, + "errorMessage": "specified asset must be created by creator that the validator defined as a requirement to stake", + "pc": [ + 5400 + ] + }, + { + "teal": 5546, + "source": 1394, + "pc": [ + 5401, + 5402 + ] + }, + { + "teal": 5547, + "source": 1394, + "pc": [ + 5403, + 5404 + ] + }, + { + "teal": 5548, + "source": 1394, + "pc": [ + 5405 + ] + }, + { + "teal": 5549, + "source": 1394, + "pc": [ + 5406, + 5407, + 5408 + ] + }, + { + "teal": 5554, + "source": 1395, + "pc": [ + 5409, + 5410 + ] + }, + { + "teal": 5555, + "source": 1395, + "pc": [ + 5411 + ] + }, + { + "teal": 5556, + "source": 1395, + "pc": [ + 5412 + ] + }, + { + "teal": 5557, + "source": 1395, + "pc": [ + 5413 + ] + }, + { + "teal": 5561, + "source": 1396, + "pc": [ + 5414 + ] + }, + { + "teal": 5562, + "source": 1396, + "pc": [ + 5415, + 5416 + ] + }, + { + "teal": 5566, + "source": 1397, + "pc": [ + 5417, + 5418 + ] + }, + { + "teal": 5567, + "source": 1397, + "pc": [ + 5419, + 5420, + 5421 + ] + }, + { + "teal": 5568, + "source": 1397, + "pc": [ + 5422 + ] + }, + { + "teal": 5569, + "source": 1397, + "pc": [ + 5423, + 5424 + ] + }, + { + "teal": 5570, + "source": 1397, + "pc": [ + 5425, + 5426, + 5427 + ] + }, + { + "teal": 5571, + "source": 1397, + "pc": [ + 5428 + ] + }, + { + "teal": 5572, + "source": 1397, + "pc": [ + 5429, + 5430 + ] + }, + { + "teal": 5573, + "source": 1397, + "pc": [ + 5431 + ] + }, + { + "teal": 5574, + "source": 1397, + "pc": [ + 5432, + 5433 + ] + }, + { + "teal": 5580, + "source": 1398, + "pc": [ + 5434, + 5435 + ] + }, + { + "teal": 5581, + "source": 1398, + "pc": [ + 5436, + 5437 + ] + }, + { + "teal": 5582, + "source": 1398, + "pc": [ + 5438 + ] + }, + { + "teal": 5583, + "source": 1398, + "pc": [ + 5439, + 5440, + 5441 + ] + }, + { + "teal": 5588, + "source": 1399, + "pc": [ + 5442 + ] + }, + { + "teal": 5589, + "source": 1399, + "pc": [ + 5443, + 5444 + ] + }, + { + "teal": 5590, + "source": 1400, + "pc": [ + 5445, + 5446, + 5447 + ] + }, + { + "teal": 5596, + "source": 1397, + "pc": [ + 5448, + 5449 + ] + }, + { + "teal": 5597, + "source": 1397, + "pc": [ + 5450 + ] + }, + { + "teal": 5598, + "source": 1397, + "pc": [ + 5451 + ] + }, + { + "teal": 5599, + "source": 1397, + "pc": [ + 5452 + ] + }, + { + "teal": 5600, + "source": 1397, + "pc": [ + 5453, + 5454 + ] + }, + { + "teal": 5601, + "source": 1397, + "pc": [ + 5455 + ] + }, + { + "teal": 5602, + "source": 1397, + "pc": [ + 5456, + 5457, + 5458 + ] + }, + { + "teal": 5603, + "source": 1397, + "pc": [ + 5459, + 5460 + ] + }, + { + "teal": 5604, + "source": 1397, + "pc": [ + 5461, + 5462 + ] + }, + { + "teal": 5605, + "source": 1397, + "pc": [ + 5463, + 5464 + ] + }, + { + "teal": 5606, + "source": 1397, + "pc": [ + 5465 + ] + }, + { + "teal": 5607, + "source": 1397, + "pc": [ + 5466 + ] + }, + { + "teal": 5608, + "source": 1397, + "pc": [ + 5467 + ] + }, + { + "teal": 5609, + "source": 1397, + "pc": [ + 5468, + 5469 + ] + }, + { + "teal": 5610, + "source": 1397, + "pc": [ + 5470, + 5471, + 5472 + ] + }, + { + "teal": 5615, + "source": 1403, + "pc": [ + 5473, + 5474 + ] + }, + { + "teal": 5618, + "source": 1403, + "errorMessage": "specified asset must be identical to the asset id defined as a requirement to stake", + "pc": [ + 5475 + ] + }, + { + "teal": 5624, + "source": 1405, + "pc": [ + 5476, + 5477 + ] + }, + { + "teal": 5625, + "source": 1405, + "pc": [ + 5478, + 5479 + ] + }, + { + "teal": 5626, + "source": 1405, + "pc": [ + 5480 + ] + }, + { + "teal": 5627, + "source": 1405, + "pc": [ + 5481, + 5482, + 5483 + ] + }, + { + "teal": 5635, + "source": 1409, + "pc": [ + 5484, + 5485 + ] + }, + { + "teal": 5636, + "source": 1409, + "pc": [ + 5486, + 5487 + ] + }, + { + "teal": 5637, + "source": 1409, + "pc": [ + 5488 + ] + }, + { + "teal": 5638, + "source": 1409, + "pc": [ + 5489, + 5490 + ] + }, + { + "teal": 5639, + "source": 1409, + "pc": [ + 5491, + 5492, + 5493 + ] + }, + { + "teal": 5640, + "source": 1409, + "pc": [ + 5494 + ] + }, + { + "teal": 5641, + "source": 1409, + "pc": [ + 5495, + 5496, + 5497 + ] + }, + { + "teal": 5644, + "source": 1408, + "errorMessage": "specified asset must be created by creator that is one of the linked addresses in an nfd", + "pc": [ + 5498 + ] + }, + { + "teal": 5650, + "source": 1413, + "pc": [ + 5499, + 5500 + ] + }, + { + "teal": 5651, + "source": 1413, + "pc": [ + 5501, + 5502 + ] + }, + { + "teal": 5652, + "source": 1413, + "pc": [ + 5503 + ] + }, + { + "teal": 5653, + "source": 1413, + "pc": [ + 5504, + 5505, + 5506 + ] + }, + { + "teal": 5658, + "source": 1415, + "pc": [ + 5507, + 5508 + ] + }, + { + "teal": 5659, + "source": 1415, + "pc": [ + 5509, + 5510 + ] + }, + { + "teal": 5663, + "source": 1416, + "pc": [ + 5511, + 5512 + ] + }, + { + "teal": 5664, + "source": 1416, + "pc": [ + 5513, + 5514, + 5515 + ] + }, + { + "teal": 5667, + "source": 1416, + "errorMessage": "provided NFD must be valid", + "pc": [ + 5516 + ] + }, + { + "teal": 5675, + "source": 1420, + "pc": [ + 5517, + 5518 + ] + }, + { + "teal": 5676, + "source": 1420, + "pc": [ + 5519, + 5520 + ] + }, + { + "teal": 5677, + "source": 1420, + "pc": [ + 5521 + ] + }, + { + "teal": 5680, + "source": 1420, + "errorMessage": "global state value does not exist: AppID.fromUint64(userOfferedNFDAppID).globalState('i.owner.a')", + "pc": [ + 5522 + ] + }, + { + "teal": 5681, + "source": 1420, + "pc": [ + 5523, + 5524 + ] + }, + { + "teal": 5682, + "source": 1420, + "pc": [ + 5525 + ] + }, + { + "teal": 5683, + "source": 1420, + "pc": [ + 5526 + ] + }, + { + "teal": 5684, + "source": 1420, + "pc": [ + 5527, + 5528, + 5529 + ] + }, + { + "teal": 5685, + "source": 1421, + "pc": [ + 5530, + 5531 + ] + }, + { + "teal": 5686, + "source": 1421, + "pc": [ + 5532, + 5533 + ] + }, + { + "teal": 5687, + "source": 1421, + "pc": [ + 5534, + 5535, + 5536 + ] + }, + { + "teal": 5688, + "source": 1420, + "pc": [ + 5537 + ] + }, + { + "teal": 5692, + "source": 1419, + "errorMessage": "provided nfd for entry isn't owned or linked to the staker", + "pc": [ + 5538 + ] + }, + { + "teal": 5700, + "source": 1427, + "pc": [ + 5539, + 5540 + ] + }, + { + "teal": 5701, + "source": 1427, + "pc": [ + 5541, + 5542, + 5543, + 5544, + 5545, + 5546, + 5547, + 5548, + 5549, + 5550, + 5551, + 5552, + 5553, + 5554, + 5555 + ] + }, + { + "teal": 5702, + "source": 1427, + "pc": [ + 5556 + ] + }, + { + "teal": 5705, + "source": 1427, + "errorMessage": "global state value does not exist: AppID.fromUint64(userOfferedNFDAppID).globalState('i.parentAppID')", + "pc": [ + 5557 + ] + }, + { + "teal": 5706, + "source": 1427, + "pc": [ + 5558 + ] + }, + { + "teal": 5707, + "source": 1428, + "pc": [ + 5559, + 5560 + ] + }, + { + "teal": 5708, + "source": 1428, + "pc": [ + 5561, + 5562, + 5563 + ] + }, + { + "teal": 5709, + "source": 1428, + "pc": [ + 5564 + ] + }, + { + "teal": 5710, + "source": 1427, + "pc": [ + 5565 + ] + }, + { + "teal": 5713, + "source": 1426, + "errorMessage": "specified nfd must be a segment of the nfd the validator specified as a requirement", + "pc": [ + 5566 + ] + }, + { + "teal": 5716, + "source": 1364, + "pc": [ + 5567 + ] + }, + { + "teal": 5728, + "source": 1443, + "pc": [ + 5568, + 5569, + 5570 + ] + }, + { + "teal": 5731, + "source": 1443, + "pc": [ + 5571 + ] + }, + { + "teal": 5735, + "source": 1445, + "pc": [ + 5572, + 5573 + ] + }, + { + "teal": 5736, + "source": 1445, + "pc": [ + 5574, + 5575, + 5576, + 5577, + 5578, + 5579, + 5580, + 5581 + ] + }, + { + "teal": 5737, + "source": 1445, + "pc": [ + 5582 + ] + }, + { + "teal": 5740, + "source": 1445, + "errorMessage": "global state value does not exist: AppID.fromUint64(nfdAppID).globalState('i.name')", + "pc": [ + 5583 + ] + }, + { + "teal": 5741, + "source": 1445, + "pc": [ + 5584, + 5585 + ] + }, + { + "teal": 5749, + "source": 1447, + "pc": [ + 5586 + ] + }, + { + "teal": 5750, + "source": 1447, + "pc": [ + 5587, + 5588 + ] + }, + { + "teal": 5751, + "source": 1447, + "pc": [ + 5589, + 5590 + ] + }, + { + "teal": 5755, + "source": 1448, + "pc": [ + 5591, + 5592 + ] + }, + { + "teal": 5756, + "source": 1448, + "pc": [ + 5593, + 5594 + ] + }, + { + "teal": 5760, + "source": 1449, + "pc": [ + 5595, + 5596 + ] + }, + { + "teal": 5761, + "source": 1449, + "pc": [ + 5597, + 5598 + ] + }, + { + "teal": 5762, + "source": 1449, + "pc": [ + 5599, + 5600 + ] + }, + { + "teal": 5763, + "source": 1449, + "pc": [ + 5601, + 5602 + ] + }, + { + "teal": 5764, + "source": 1449, + "pc": [ + 5603, + 5604 + ] + }, + { + "teal": 5765, + "source": 1449, + "pc": [ + 5605 + ] + }, + { + "teal": 5766, + "source": 1449, + "pc": [ + 5606, + 5607 + ] + }, + { + "teal": 5770, + "source": 1450, + "pc": [ + 5608, + 5609 + ] + }, + { + "teal": 5771, + "source": 1450, + "pc": [ + 5610, + 5611 + ] + }, + { + "teal": 5774, + "source": 1447, + "pc": [ + 5612 + ] + }, + { + "teal": 5775, + "source": 1447, + "pc": [ + 5613, + 5614 + ] + }, + { + "teal": 5778, + "source": 1447, + "pc": [ + 5615 + ] + }, + { + "teal": 5782, + "source": 1452, + "pc": [ + 5616, + 5617 + ] + }, + { + "teal": 5783, + "source": 1452, + "pc": [ + 5618 + ] + }, + { + "teal": 5784, + "source": 1452, + "pc": [ + 5619 + ] + }, + { + "teal": 5785, + "source": 1452, + "pc": [ + 5620 + ] + }, + { + "teal": 5788, + "source": 1443, + "pc": [ + 5621, + 5622 + ] + }, + { + "teal": 5789, + "source": 1443, + "pc": [ + 5623 + ] + }, + { + "teal": 5800, + "source": 1463, + "pc": [ + 5624, + 5625, + 5626 + ] + }, + { + "teal": 5803, + "source": 1463, + "pc": [ + 5627 + ] + }, + { + "teal": 5804, + "source": 1463, + "pc": [ + 5628, + 5629 + ] + }, + { + "teal": 5811, + "source": 1464, + "pc": [ + 5630 + ] + }, + { + "teal": 5812, + "source": 1464, + "pc": [ + 5631, + 5632 + ] + }, + { + "teal": 5813, + "source": 1464, + "pc": [ + 5633, + 5634 + ] + }, + { + "teal": 5817, + "source": 1465, + "pc": [ + 5635, + 5636 + ] + }, + { + "teal": 5818, + "source": 1465, + "pc": [ + 5637, + 5638 + ] + }, + { + "teal": 5822, + "source": 1466, + "pc": [ + 5639, + 5640, + 5641, + 5642, + 5643, + 5644, + 5645, + 5646, + 5647, + 5648, + 5649, + 5650, + 5651, + 5652, + 5653 + ] + }, + { + "teal": 5823, + "source": 1466, + "pc": [ + 5654, + 5655 + ] + }, + { + "teal": 5824, + "source": 1466, + "pc": [ + 5656, + 5657, + 5658, + 5659, + 5660, + 5661, + 5662, + 5663, + 5664, + 5665, + 5666, + 5667, + 5668, + 5669, + 5670 + ] + }, + { + "teal": 5825, + "source": 1466, + "pc": [ + 5671, + 5672 + ] + }, + { + "teal": 5828, + "source": 1464, + "pc": [ + 5673 + ] + }, + { + "teal": 5829, + "source": 1464, + "pc": [ + 5674, + 5675 + ] + }, + { + "teal": 5832, + "source": 1464, + "pc": [ + 5676 + ] + }, + { + "teal": 5836, + "source": 1468, + "pc": [ + 5677, + 5678 + ] + }, + { + "teal": 5837, + "source": 1468, + "pc": [ + 5679, + 5680 + ] + }, + { + "teal": 5841, + "source": 1469, + "pc": [ + 5681 + ] + }, + { + "teal": 5842, + "source": 1469, + "pc": [ + 5682, + 5683 + ] + }, + { + "teal": 5847, + "source": 1469, + "pc": [ + 5684, + 5685 + ] + }, + { + "teal": 5848, + "source": 1469, + "pc": [ + 5686, + 5687 + ] + }, + { + "teal": 5849, + "source": 1469, + "pc": [ + 5688 + ] + }, + { + "teal": 5850, + "source": 1469, + "pc": [ + 5689 + ] + }, + { + "teal": 5851, + "source": 1469, + "pc": [ + 5690, + 5691, + 5692 + ] + }, + { + "teal": 5855, + "source": 1470, + "pc": [ + 5693, + 5694 + ] + }, + { + "teal": 5856, + "source": 1470, + "pc": [ + 5695, + 5696 + ] + }, + { + "teal": 5857, + "source": 1470, + "pc": [ + 5697, + 5698 + ] + }, + { + "teal": 5858, + "source": 1470, + "pc": [ + 5699 + ] + }, + { + "teal": 5859, + "source": 1470, + "pc": [ + 5700, + 5701 + ] + }, + { + "teal": 5864, + "source": 1471, + "pc": [ + 5702, + 5703 + ] + }, + { + "teal": 5865, + "source": 1471, + "pc": [ + 5704, + 5705 + ] + }, + { + "teal": 5866, + "source": 1471, + "pc": [ + 5706 + ] + }, + { + "teal": 5867, + "source": 1471, + "pc": [ + 5707 + ] + }, + { + "teal": 5868, + "source": 1471, + "pc": [ + 5708, + 5709, + 5710 + ] + }, + { + "teal": 5869, + "source": 1471, + "pc": [ + 5711, + 5712 + ] + }, + { + "teal": 5870, + "source": 1471, + "pc": [ + 5713, + 5714 + ] + }, + { + "teal": 5871, + "source": 1471, + "pc": [ + 5715 + ] + }, + { + "teal": 5872, + "source": 1471, + "pc": [ + 5716 + ] + }, + { + "teal": 5875, + "source": 1471, + "pc": [ + 5717, + 5718, + 5719 + ] + }, + { + "teal": 5880, + "source": 1472, + "pc": [ + 5720 + ] + }, + { + "teal": 5881, + "source": 1472, + "pc": [ + 5721, + 5722, + 5723 + ] + }, + { + "teal": 5888, + "source": 1469, + "pc": [ + 5724, + 5725 + ] + }, + { + "teal": 5889, + "source": 1469, + "pc": [ + 5726, + 5727 + ] + }, + { + "teal": 5890, + "source": 1469, + "pc": [ + 5728 + ] + }, + { + "teal": 5891, + "source": 1469, + "pc": [ + 5729, + 5730 + ] + }, + { + "teal": 5892, + "source": 1469, + "pc": [ + 5731, + 5732, + 5733 + ] + }, + { + "teal": 5897, + "source": 1475, + "pc": [ + 5734 + ] + }, + { + "teal": 5901, + "source": 1463, + "pc": [ + 5735, + 5736 + ] + }, + { + "teal": 5904, + "source": 1463, + "pc": [ + 5737, + 5738 + ] + }, + { + "teal": 5905, + "source": 1463, + "pc": [ + 5739 + ] + }, + { + "teal": 5913, + "source": 1483, + "pc": [ + 5740, + 5741, + 5742 + ] + }, + { + "teal": 5916, + "source": 1483, + "pc": [ + 5743 + ] + }, + { + "teal": 5920, + "source": 1484, + "pc": [ + 5744, + 5745, + 5746 + ] + }, + { + "teal": 5921, + "source": 1484, + "pc": [ + 5747, + 5748 + ] + }, + { + "teal": 5925, + "source": 1486, + "pc": [ + 5749, + 5750 + ] + }, + { + "teal": 5926, + "source": 1486, + "pc": [ + 5751, + 5752 + ] + }, + { + "teal": 5927, + "source": 1486, + "pc": [ + 5753 + ] + }, + { + "teal": 5928, + "source": 1486, + "pc": [ + 5754 + ] + }, + { + "teal": 5929, + "source": 1486, + "pc": [ + 5755, + 5756 + ] + }, + { + "teal": 5930, + "source": 1486, + "pc": [ + 5757 + ] + }, + { + "teal": 5931, + "source": 1486, + "pc": [ + 5758 + ] + }, + { + "teal": 5932, + "source": 1486, + "pc": [ + 5759 + ] + }, + { + "teal": 5933, + "source": 1486, + "pc": [ + 5760 + ] + }, + { + "teal": 5934, + "source": 1486, + "pc": [ + 5761 + ] + }, + { + "teal": 5937, + "source": 1486, + "errorMessage": "wideRatio failed", + "pc": [ + 5762 + ] + }, + { + "teal": 5940, + "source": 1483, + "pc": [ + 5763, + 5764 + ] + }, + { + "teal": 5941, + "source": 1483, + "pc": [ + 5765 + ] + }, + { + "teal": 5948, + "source": 1493, + "pc": [ + 5766, + 5767, + 5768 + ] + }, + { + "teal": 5951, + "source": 1493, + "pc": [ + 5769 + ] + }, + { + "teal": 5955, + "source": 1494, + "pc": [ + 5770, + 5771, + 5772 + ] + }, + { + "teal": 5956, + "source": 1494, + "pc": [ + 5773, + 5774 + ] + }, + { + "teal": 5960, + "source": 1496, + "pc": [ + 5775, + 5776 + ] + }, + { + "teal": 5961, + "source": 1496, + "pc": [ + 5777, + 5778, + 5779 + ] + }, + { + "teal": 5962, + "source": 1496, + "pc": [ + 5780 + ] + }, + { + "teal": 5963, + "source": 1496, + "pc": [ + 5781 + ] + }, + { + "teal": 5964, + "source": 1496, + "pc": [ + 5782, + 5783 + ] + }, + { + "teal": 5965, + "source": 1496, + "pc": [ + 5784 + ] + }, + { + "teal": 5966, + "source": 1496, + "pc": [ + 5785 + ] + }, + { + "teal": 5967, + "source": 1496, + "pc": [ + 5786 + ] + }, + { + "teal": 5968, + "source": 1496, + "pc": [ + 5787 + ] + }, + { + "teal": 5969, + "source": 1496, + "pc": [ + 5788 + ] + }, + { + "teal": 5972, + "source": 1496, + "errorMessage": "wideRatio failed", + "pc": [ + 5789 + ] + }, + { + "teal": 5975, + "source": 1493, + "pc": [ + 5790, + 5791 + ] + }, + { + "teal": 5976, + "source": 1493, + "pc": [ + 5792 + ] + }, + { + "teal": 5982, + "source": 1502, + "pc": [ + 5793, + 5794, + 5795 + ] + }, + { + "teal": 5986, + "source": 1504, + "pc": [ + 5796, + 5797, + 5798, + 5799, + 5800, + 5801, + 5802, + 5803 + ] + }, + { + "teal": 5987, + "source": 1502, + "pc": [ + 5804 + ] + }, + { + "teal": 5991, + "source": 1507, + "pc": [ + 5805, + 5806, + 5807 + ] + }, + { + "teal": 5995, + "source": 1509, + "pc": [ + 5808, + 5809, + 5810, + 5811, + 5812, + 5813, + 5814, + 5815, + 5816 + ] + }, + { + "teal": 5996, + "source": 1507, + "pc": [ + 5817 + ] + }, + { + "teal": 6000, + "source": 1512, + "pc": [ + 5818, + 5819, + 5820 + ] + }, + { + "teal": 6003, + "source": 1512, + "pc": [ + 5821 + ] + }, + { + "teal": 6007, + "source": 1521, + "pc": [ + 5822, + 5823 + ] + }, + { + "teal": 6008, + "source": 1521, + "pc": [ + 5824, + 5825 + ] + }, + { + "teal": 6012, + "source": 1522, + "pc": [ + 5826, + 5827 + ] + }, + { + "teal": 6013, + "source": 1522, + "pc": [ + 5828, + 5829 + ] + }, + { + "teal": 6014, + "source": 1522, + "pc": [ + 5830, + 5831 + ] + }, + { + "teal": 6015, + "source": 1522, + "pc": [ + 5832 + ] + }, + { + "teal": 6016, + "source": 1522, + "pc": [ + 5833 + ] + }, + { + "teal": 6017, + "source": 1522, + "pc": [ + 5834, + 5835 + ] + }, + { + "teal": 6021, + "source": 1523, + "pc": [ + 5836, + 5837 + ] + }, + { + "teal": 6022, + "source": 1523, + "pc": [ + 5838, + 5839 + ] + }, + { + "teal": 6023, + "source": 1523, + "pc": [ + 5840, + 5841 + ] + }, + { + "teal": 6024, + "source": 1523, + "pc": [ + 5842 + ] + }, + { + "teal": 6025, + "source": 1523, + "pc": [ + 5843 + ] + }, + { + "teal": 6026, + "source": 1523, + "pc": [ + 5844, + 5845 + ] + }, + { + "teal": 6030, + "source": 1524, + "pc": [ + 5846, + 5847 + ] + }, + { + "teal": 6031, + "source": 1524, + "pc": [ + 5848, + 5849 + ] + }, + { + "teal": 6032, + "source": 1524, + "pc": [ + 5850, + 5851 + ] + }, + { + "teal": 6033, + "source": 1524, + "pc": [ + 5852 + ] + }, + { + "teal": 6034, + "source": 1524, + "pc": [ + 5853 + ] + }, + { + "teal": 6035, + "source": 1524, + "pc": [ + 5854, + 5855 + ] + }, + { + "teal": 6039, + "source": 1525, + "pc": [ + 5856, + 5857 + ] + }, + { + "teal": 6040, + "source": 1525, + "pc": [ + 5858, + 5859 + ] + }, + { + "teal": 6041, + "source": 1525, + "pc": [ + 5860, + 5861 + ] + }, + { + "teal": 6042, + "source": 1525, + "pc": [ + 5862 + ] + }, + { + "teal": 6043, + "source": 1525, + "pc": [ + 5863 + ] + }, + { + "teal": 6044, + "source": 1525, + "pc": [ + 5864, + 5865 + ] + }, + { + "teal": 6048, + "source": 1526, + "pc": [ + 5866, + 5867 + ] + }, + { + "teal": 6049, + "source": 1526, + "pc": [ + 5868, + 5869 + ] + }, + { + "teal": 6050, + "source": 1526, + "pc": [ + 5870, + 5871 + ] + }, + { + "teal": 6051, + "source": 1526, + "pc": [ + 5872 + ] + }, + { + "teal": 6052, + "source": 1526, + "pc": [ + 5873 + ] + }, + { + "teal": 6053, + "source": 1526, + "pc": [ + 5874, + 5875 + ] + }, + { + "teal": 6057, + "source": 1527, + "pc": [ + 5876, + 5877 + ] + }, + { + "teal": 6058, + "source": 1527, + "pc": [ + 5878, + 5879 + ] + }, + { + "teal": 6059, + "source": 1527, + "pc": [ + 5880, + 5881 + ] + }, + { + "teal": 6060, + "source": 1527, + "pc": [ + 5882 + ] + }, + { + "teal": 6061, + "source": 1527, + "pc": [ + 5883 + ] + }, + { + "teal": 6062, + "source": 1527, + "pc": [ + 5884, + 5885 + ] + }, + { + "teal": 6066, + "source": 1528, + "pc": [ + 5886, + 5887 + ] + }, + { + "teal": 6067, + "source": 1528, + "pc": [ + 5888, + 5889 + ] + }, + { + "teal": 6068, + "source": 1528, + "pc": [ + 5890, + 5891 + ] + }, + { + "teal": 6069, + "source": 1528, + "pc": [ + 5892 + ] + }, + { + "teal": 6070, + "source": 1528, + "pc": [ + 5893 + ] + }, + { + "teal": 6071, + "source": 1528, + "pc": [ + 5894, + 5895 + ] + }, + { + "teal": 6075, + "source": 1529, + "pc": [ + 5896, + 5897 + ] + }, + { + "teal": 6078, + "source": 1512, + "pc": [ + 5898, + 5899 + ] + }, + { + "teal": 6079, + "source": 1512, + "pc": [ + 5900 + ] + }, + { + "teal": 6083, + "source": 1532, + "pc": [ + 5901, + 5902, + 5903 + ] + }, + { + "teal": 6087, + "source": 1536, + "pc": [ + 5904, + 5905, + 5906 + ] + }, + { + "teal": 6088, + "source": 1536, + "pc": [ + 5907, + 5908 + ] + }, + { + "teal": 6089, + "source": 1536, + "pc": [ + 5909, + 5910, + 5911 + ] + }, + { + "teal": 6090, + "source": 1536, + "pc": [ + 5912 + ] + }, + { + "teal": 6091, + "source": 1536, + "pc": [ + 5913 + ] + }, + { + "teal": 6092, + "source": 1532, + "pc": [ + 5914 + ] + }, + { + "teal": 6095, + "source": 168, + "pc": [ + 5915, + 5916, + 5917, + 5918, + 5919, + 5920 + ] + }, + { + "teal": 6096, + "source": 168, + "pc": [ + 5921, + 5922, + 5923 + ] + }, + { + "teal": 6097, + "source": 168, + "pc": [ + 5924, + 5925, + 5926, + 5927 + ] + }, + { + "teal": 6100, + "source": 168, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 5928 + ] + }, + { + "teal": 6103, + "source": 168, + "pc": [ + 5929, + 5930, + 5931, + 5932, + 5933, + 5934 + ] + }, + { + "teal": 6104, + "source": 168, + "pc": [ + 5935, + 5936, + 5937, + 5938, + 5939, + 5940 + ] + }, + { + "teal": 6105, + "source": 168, + "pc": [ + 5941, + 5942, + 5943, + 5944, + 5945, + 5946 + ] + }, + { + "teal": 6106, + "source": 168, + "pc": [ + 5947, + 5948, + 5949, + 5950, + 5951, + 5952 + ] + }, + { + "teal": 6107, + "source": 168, + "pc": [ + 5953, + 5954, + 5955, + 5956, + 5957, + 5958 + ] + }, + { + "teal": 6108, + "source": 168, + "pc": [ + 5959, + 5960, + 5961, + 5962, + 5963, + 5964 + ] + }, + { + "teal": 6109, + "source": 168, + "pc": [ + 5965, + 5966, + 5967, + 5968, + 5969, + 5970 + ] + }, + { + "teal": 6110, + "source": 168, + "pc": [ + 5971, + 5972, + 5973, + 5974, + 5975, + 5976 + ] + }, + { + "teal": 6111, + "source": 168, + "pc": [ + 5977, + 5978, + 5979, + 5980, + 5981, + 5982 + ] + }, + { + "teal": 6112, + "source": 168, + "pc": [ + 5983, + 5984, + 5985, + 5986, + 5987, + 5988 + ] + }, + { + "teal": 6113, + "source": 168, + "pc": [ + 5989, + 5990, + 5991, + 5992, + 5993, + 5994 + ] + }, + { + "teal": 6114, + "source": 168, + "pc": [ + 5995, + 5996, + 5997, + 5998, + 5999, + 6000 + ] + }, + { + "teal": 6115, + "source": 168, + "pc": [ + 6001, + 6002, + 6003, + 6004, + 6005, + 6006 + ] + }, + { + "teal": 6116, + "source": 168, + "pc": [ + 6007, + 6008, + 6009, + 6010, + 6011, + 6012 + ] + }, + { + "teal": 6117, + "source": 168, + "pc": [ + 6013, + 6014, + 6015, + 6016, + 6017, + 6018 + ] + }, + { + "teal": 6118, + "source": 168, + "pc": [ + 6019, + 6020, + 6021, + 6022, + 6023, + 6024 + ] + }, + { + "teal": 6119, + "source": 168, + "pc": [ + 6025, + 6026, + 6027, + 6028, + 6029, + 6030 + ] + }, + { + "teal": 6120, + "source": 168, + "pc": [ + 6031, + 6032, + 6033, + 6034, + 6035, + 6036 + ] + }, + { + "teal": 6121, + "source": 168, + "pc": [ + 6037, + 6038, + 6039, + 6040, + 6041, + 6042 + ] + }, + { + "teal": 6122, + "source": 168, + "pc": [ + 6043, + 6044, + 6045, + 6046, + 6047, + 6048 + ] + }, + { + "teal": 6123, + "source": 168, + "pc": [ + 6049, + 6050, + 6051, + 6052, + 6053, + 6054 + ] + }, + { + "teal": 6124, + "source": 168, + "pc": [ + 6055, + 6056, + 6057, + 6058, + 6059, + 6060 + ] + }, + { + "teal": 6125, + "source": 168, + "pc": [ + 6061, + 6062, + 6063, + 6064, + 6065, + 6066 + ] + }, + { + "teal": 6126, + "source": 168, + "pc": [ + 6067, + 6068, + 6069, + 6070, + 6071, + 6072 + ] + }, + { + "teal": 6127, + "source": 168, + "pc": [ + 6073, + 6074, + 6075, + 6076, + 6077, + 6078 + ] + }, + { + "teal": 6128, + "source": 168, + "pc": [ + 6079, + 6080, + 6081, + 6082, + 6083, + 6084 + ] + }, + { + "teal": 6129, + "source": 168, + "pc": [ + 6085, + 6086, + 6087, + 6088, + 6089, + 6090 + ] + }, + { + "teal": 6130, + "source": 168, + "pc": [ + 6091, + 6092, + 6093, + 6094, + 6095, + 6096 + ] + }, + { + "teal": 6131, + "source": 168, + "pc": [ + 6097, + 6098, + 6099, + 6100, + 6101, + 6102 + ] + }, + { + "teal": 6132, + "source": 168, + "pc": [ + 6103, + 6104, + 6105, + 6106, + 6107, + 6108 + ] + }, + { + "teal": 6133, + "source": 168, + "pc": [ + 6109, + 6110, + 6111, + 6112, + 6113, + 6114 + ] + }, + { + "teal": 6134, + "source": 168, + "pc": [ + 6115, + 6116, + 6117, + 6118, + 6119, + 6120 + ] + }, + { + "teal": 6135, + "source": 168, + "pc": [ + 6121, + 6122, + 6123, + 6124, + 6125, + 6126 + ] + }, + { + "teal": 6136, + "source": 168, + "pc": [ + 6127, + 6128, + 6129 + ] + }, + { + "teal": 6137, + "source": 168, + "pc": [ + 6130, + 6131, + 6132, + 6133, + 6134, + 6135, + 6136, + 6137, + 6138, + 6139, + 6140, + 6141, + 6142, + 6143, + 6144, + 6145, + 6146, + 6147, + 6148, + 6149, + 6150, + 6151, + 6152, + 6153, + 6154, + 6155, + 6156, + 6157, + 6158, + 6159, + 6160, + 6161, + 6162, + 6163, + 6164, + 6165, + 6166, + 6167, + 6168, + 6169, + 6170, + 6171, + 6172, + 6173, + 6174, + 6175, + 6176, + 6177, + 6178, + 6179, + 6180, + 6181, + 6182, + 6183, + 6184, + 6185, + 6186, + 6187, + 6188, + 6189, + 6190, + 6191, + 6192, + 6193, + 6194, + 6195, + 6196, + 6197 + ] + }, + { + "teal": 6140, + "source": 168, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 6198 + ] + }, + { + "teal": 6143, + "source": 168, + "pc": [ + 6199, + 6200, + 6201, + 6202, + 6203, + 6204 + ] + }, + { + "teal": 6144, + "source": 168, + "pc": [ + 6205, + 6206, + 6207 + ] + }, + { + "teal": 6145, + "source": 168, + "pc": [ + 6208, + 6209, + 6210, + 6211 + ] + }, + { + "teal": 6148, + "source": 168, + "errorMessage": "this contract does not implement the given ABI method for call UpdateApplication", + "pc": [ + 6212 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9uZmRSZWdpc3RyeUFwcElkCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgdXBkYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKdXBkYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjAyCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBZGRyZXNzLmZyb21BZGRyZXNzKCdMWjRWMklSVkxDWEZKSzRSRUpWNFRBR0VLRVlUQTJHTVI2VEMyMzQ0T0IzTDNBRjNNV1haNlpBRklRJykpCgl0eG4gU2VuZGVyCglhZGRyIExaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA0CgkvLyB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmRlbGV0ZSgpCglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfZGVsCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIwNQoJLy8gdGhpcy5zdGFraW5nUG9vbEluaXRpYWxpemVkLnZhbHVlID0gZmFsc2UKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgY3JlYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKY3JlYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA5CgkvLyB0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUgPSBmYWxzZQoJYnl0ZSAweDY5NmU2OTc0IC8vICJpbml0IgoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTAKCS8vIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTEKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTIKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlID0gMAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0OgoJLy8gYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbml0U3Rha2luZ0NvbnRyYWN0KHVpbnQ2NCl2b2lkCgljYWxsc3ViIGluaXRTdGFraW5nQ29udHJhY3QKCWludCAxCglyZXR1cm4KCi8vIGluaXRTdGFraW5nQ29udHJhY3QoYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0KTogdm9pZAppbml0U3Rha2luZ0NvbnRyYWN0OgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIxNwoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5jcmVhdGUoYXBwcm92YWxQcm9ncmFtU2l6ZSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBhcHByb3ZhbFByb2dyYW1TaXplOiB1aW50NjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YSh1aW50NjQsYnl0ZVtdKXZvaWQKKmFiaV9yb3V0ZV9sb2FkU3Rha2luZ0NvbnRyYWN0RGF0YToKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbG9hZFN0YWtpbmdDb250cmFjdERhdGEodWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIGxvYWRTdGFraW5nQ29udHJhY3REYXRhCglpbnQgMQoJcmV0dXJuCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YShvZmZzZXQ6IHVpbnQ2NCwgZGF0YTogYnl0ZXMpOiB2b2lkCmxvYWRTdGFraW5nQ29udHJhY3REYXRhOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMQoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUpCglieXRlIDB4Njk2ZTY5NzQgLy8gImluaXQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCWdldGJpdAoJIQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMgoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5yZXBsYWNlKG9mZnNldCwgZGF0YSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoqYWJpX3JvdXRlX2ZpbmFsaXplU3Rha2luZ0NvbnRyYWN0OgoJLy8gZXhlY3V0ZSBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoJY2FsbHN1YiBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdAoJaW50IDEKCXJldHVybgoKLy8gZmluYWxpemVTdGFraW5nQ29udHJhY3QoKTogdm9pZApmaW5hbGl6ZVN0YWtpbmdDb250cmFjdDoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMjYKCS8vIHRoaXMuc3Rha2luZ1Bvb2xJbml0aWFsaXplZC52YWx1ZSA9IHRydWUKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAxCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9nZXRNYnJBbW91bnRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE1ickFtb3VudHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRNYnJBbW91bnRzKCk6IE1ickFtb3VudHMKLy8KLy8gUmV0dXJucyB0aGUgTUJSIGFtb3VudHMgbmVlZGVkIGZvciB2YXJpb3VzIGFjdGlvbnM6Ci8vIFsKLy8gYWRkVmFsaWRhdG9yTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyB2YWxpZGF0b3IgLSBwYWlkIHRvIHZhbGlkYXRvciBjb250cmFjdAovLyBhZGRQb29sTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyBwb29sIC0gcGFpZCB0byB2YWxpZGF0b3IKLy8gcG9vbEluaXRNYnI6IHVpbnQ2NCAtIG1iciBuZWVkZWQgdG8gaW5pdFN0b3JhZ2UoKSBvZiBwb29sIC0gcGFpZCB0byBwb29sIGl0c2VsZgovLyBhZGRTdGFrZXJNYnI6IHVpbnQ2NCAtIG1iciBzdGFrZXIgbmVlZHMgdG8gYWRkIHRvIGZpcnN0IHN0YWtpbmcgcGF5bWVudCAoc3RheXMgdy8gdmFsaWRhdG9yKQovLyBdCmdldE1ickFtb3VudHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQ2CgkvLyByZXR1cm4gewoJLy8gICAgICAgYWRkVmFsaWRhdG9yTWJyOiB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDEgLyogdiBwcmVmaXggKi8gKyBsZW48VmFsaWRhdG9ySWRUeXBlPigpICsgbGVuPFZhbGlkYXRvckluZm8+KCkpLAoJLy8gICAgICAgYWRkUG9vbE1icjogdGhpcy5taW5CYWxhbmNlRm9yQWNjb3VudCgKCS8vICAgICAgICAgMSwKCS8vICAgICAgICAgLy8gd2UgY291bGQgY2FsY3VsYXRlIHRoaXMgZGlyZWN0bHkgYnkgcmVmZXJlbmNpbmcgdGhlIHNpemUgb2Ygc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0gYnV0IGl0IHdvdWxkCgkvLyAgICAgICAgIC8vIG1lYW4gb3VyIGNhbGxlcnMgd291bGQgaGF2ZSB0byByZWZlcmVuY2UgdGhlIGJveCBBTkQgYnV5IHVwIGkvbyAtIHNvIGp1c3QgZ28gbWF4IG9uIGV4dHJhIHBhZ2VzCgkvLyAgICAgICAgIDMsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIFN0YWtpbmdQb29sLnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICAgICAgU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCS8vICAgICAgICksCgkvLyAgICAgICBwb29sSW5pdE1icjoKCS8vICAgICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoNyAvKiAnc3Rha2VycycgbmFtZSAqLyArIGxlbjxTdGFrZWRJbmZvPigpICogTUFYX1NUQUtFUlNfUEVSX1BPT0wpLAoJLy8gICAgICAgYWRkU3Rha2VyTWJyOgoJLy8gICAgICAgICAvLyBob3cgbXVjaCB0byBjaGFyZ2UgZm9yIGZpcnN0IHRpbWUgYSBzdGFrZXIgYWRkcyBzdGFrZSAtIHNpbmNlIHdlIGFkZCBhIHRyYWNraW5nIGJveCBwZXIgc3Rha2VyCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoMyAvKiAnc3BzJyBwcmVmaXggKi8gKyBsZW48QWRkcmVzcz4oKSArIGxlbjxWYWxpZGF0b3JQb29sS2V5PigpICogTUFYX1BPT0xTX1BFUl9TVEFLRVIpLCAvLyBzaXplIG9mIGtleSArIGFsbCB2YWx1ZXMKCS8vICAgICB9OwoJaW50IDExMDEKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCWl0b2IKCWludCAzCglpbnQgMTEKCWludCAwCglkdXBuIDIKCWludCAzCglpbnQgMQoJY2FsbHN1YiBtaW5CYWxhbmNlRm9yQWNjb3VudAoJaXRvYgoJY29uY2F0CglpbnQgMTAwMDAwCglpbnQgMTI4MDcKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCSsKCWl0b2IKCWNvbmNhdAoJaW50IDE3OQoJY2FsbHN1YiBjb3N0Rm9yQm94U3RvcmFnZQoJaXRvYgoJY29uY2F0CglyZXRzdWIKCi8vIGdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFByb3RvY29sQ29uc3RyYWludHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2V0UHJvdG9jb2xDb25zdHJhaW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFByb3RvY29sQ29uc3RyYWludHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRQcm90b2NvbENvbnN0cmFpbnRzKCk6IENvbnN0cmFpbnRzCi8vCi8vIFJldHVybnMgdGhlIHByb3RvY29sIGNvbnN0cmFpbnRzIHNvIHRoYXQgVUlzIGNhbiBsaW1pdCB3aGF0IHVzZXJzIHNwZWNpZnkgZm9yIHZhbGlkYXRvciBjb25maWd1cmF0aW9uIHBhcmFtZXRlcnMuCmdldFByb3RvY29sQ29uc3RyYWludHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjcyCgkvLyByZXR1cm4gewoJLy8gICAgICAgZXBvY2hQYXlvdXRSb3VuZHNNaW46IE1JTl9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICBlcG9jaFBheW91dFJvdW5kc01heDogTUFYX0VQT0NIX0xFTkdUSCwKCS8vICAgICAgIG1pblBjdFRvVmFsaWRhdG9yV0ZvdXJEZWNpbWFsczogTUlOX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICBtYXhQY3RUb1ZhbGlkYXRvcldGb3VyRGVjaW1hbHM6IE1BWF9QQ1RfVE9fVkFMSURBVE9SLAoJLy8gICAgICAgbWluRW50cnlTdGFrZTogTUlOX0FMR09fU1RBS0VfUEVSX1BPT0wsCgkvLyAgICAgICBtYXhBbGdvUGVyUG9vbDogdGhpcy5tYXhBbGdvQWxsb3dlZFBlclBvb2woKSwKCS8vICAgICAgIG1heEFsZ29QZXJWYWxpZGF0b3I6IHRoaXMubWF4QWxsb3dlZFN0YWtlKCksCgkvLyAgICAgICBhbXRDb25zaWRlcmVkU2F0dXJhdGVkOiB0aGlzLmFsZ29TYXR1cmF0aW9uTGV2ZWwoKSwKCS8vICAgICAgIG1heE5vZGVzOiBNQVhfTk9ERVMsCgkvLyAgICAgICBtYXhQb29sc1Blck5vZGU6IE1BWF9QT09MU19QRVJfTk9ERSwKCS8vICAgICAgIG1heFN0YWtlcnNQZXJQb29sOiBNQVhfU1RBS0VSU19QRVJfUE9PTCwKCS8vICAgICB9OwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMGY0MjQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZjQyNDAwMDAwMDAwMDAwMGY0MjQwCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJaXRvYgoJY29uY2F0CgljYWxsc3ViIG1heEFsbG93ZWRTdGFrZQoJaXRvYgoJY29uY2F0CgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwYzgKCWNvbmNhdAoJcmV0c3ViCgovLyBnZXROdW1WYWxpZGF0b3JzKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXROdW1WYWxpZGF0b3JzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE51bVZhbGlkYXRvcnMoKXVpbnQ2NAoJY2FsbHN1YiBnZXROdW1WYWxpZGF0b3JzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TnVtVmFsaWRhdG9ycygpOiB1aW50NjQKLy8KLy8gUmV0dXJucyB0aGUgY3VycmVudCBudW1iZXIgb2YgdmFsaWRhdG9ycwpnZXROdW1WYWxpZGF0b3JzOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI5MgoJLy8gcmV0dXJuIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZTsKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yQ29uZmlnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JDb25maWcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRWYWxpZGF0b3JDb25maWcodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFZhbGlkYXRvckNvbmZpZwpnZXRWYWxpZGF0b3JDb25maWc6Cglwcm90byAxIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mjk3CgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWc7CglpbnQgMAoJaW50IDI0MgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvclN0YXRlKHVpbnQ2NCkodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JTdGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFZhbGlkYXRvclN0YXRlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBWYWxpZGF0b3JDdXJTdGF0ZQpnZXRWYWxpZGF0b3JTdGF0ZToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMDIKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlOwoJaW50IDI0MiAvLyBoZWFkT2Zmc2V0CglpbnQgMjYKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKKmFiaV9yb3V0ZV9nZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKCWNhbGxzdWIgZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBbQWRkcmVzcywgQWRkcmVzc10KZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMwNwoJLy8gcmV0dXJuIFt0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlcl07CglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgljb25jYXQKCXJldHN1YgoKLy8gZ2V0UG9vbHModWludDY0KSh1aW50NjQsdWludDE2LHVpbnQ2NClbXQoqYWJpX3JvdXRlX2dldFBvb2xzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdCgljYWxsc3ViIGdldFBvb2xzCglkdXAKCWxlbgoJaW50IDE4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0UG9vbHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xJbmZvW10KLy8KLy8gUmV0dXJuIGxpc3Qgb2YgYWxsIHBvb2xzIGZvciB0aGlzIHZhbGlkYXRvci4KLy8gQHBhcmFtIHt1aW50NjR9IHZhbGlkYXRvcklkCi8vIEByZXR1cm4ge1Bvb2xJbmZvW119IC0gYXJyYXkgb2YgcG9vbHMKLy8gTm90IGNhbGxhYmxlIGZyb20gb3RoZXIgY29udHJhY3RzIGJlY2F1c2UgPjFLIHJldHVybiBidXQgY2FuIGJlIGNhbGxlZCB3LyBzaW11bGF0ZSB3aGljaCBidW1wcyBsb2cgcmV0dXJucwpnZXRQb29sczoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzE4CgkvLyByZXREYXRhOiBQb29sSW5mb1tdID0gW10KCWJ5dGUgMHgKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMxOQoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMpCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWludCA0MzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyMAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIxCgkvLyBwb29sU2V0W2ldLnBvb2xBcHBJZCA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvcl8wX2VuZAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzI1CgkvLyByZXREYXRhLnB1c2gocG9vbFNldFtpXSkKCWZyYW1lX2RpZyAwIC8vIHJldERhdGE6IFBvb2xJbmZvW10KCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTgKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoqZm9yXzBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyNwoJLy8gcmV0dXJuIHJldERhdGE7CglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGdldFBvb2xBcHBJZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xBcHBJZCh2YWxpZGF0b3JJZDogdWludDY0LCBwb29sSWQ6IHVpbnQ2NCk6IHVpbnQ2NApnZXRQb29sQXBwSWQ6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzM1CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sSWQgIT09IDAgJiYgcG9vbElkIDw9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMubGVuZ3RoLAoJLy8gICAgICAgJ3Bvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3InCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMjQKCTw9CgkmJgoKKnNraXBfYW5kMDoKCS8vIHBvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMzkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW3Bvb2xJZCAtIDFdLnBvb2xBcHBJZDsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZ2V0UG9vbEluZm8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0LHVpbnQxNix1aW50NjQpCiphYmlfcm91dGVfZ2V0UG9vbEluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xLZXk6ICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMjQKCT09CgoJLy8gYXJndW1lbnQgMCAocG9vbEtleSkgZm9yIGdldFBvb2xJbmZvIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJY2FsbHN1YiBnZXRQb29sSW5mbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xJbmZvKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiBQb29sSW5mbwpnZXRQb29sSW5mbzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNDQKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXTsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldEN1ck1heFN0YWtlUGVyUG9vbCh1aW50NjQpdWludDY0CiphYmlfcm91dGVfZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRDdXJNYXhTdGFrZVBlclBvb2wodWludDY0KXVpbnQ2NAoJY2FsbHN1YiBnZXRDdXJNYXhTdGFrZVBlclBvb2wKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRDdXJNYXhTdGFrZVBlclBvb2wodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IHVpbnQ2NAovLwovLyBDYWxjdWxhdGUgdGhlIG1heGltdW0gc3Rha2UgcGVyIHBvb2wgZm9yIGEgZ2l2ZW4gdmFsaWRhdG9yLgovLyBOb3JtYWxseSB0aGlzIHdvdWxkIGJlIG1heEFsZ29QZXJQb29sLCBidXQgaXQgc2hvdWxkIGFsc28gbmV2ZXIgZ28gYWJvdmUgTWF4QWxsb3dlZFN0YWtlIC8gbnVtUG9vbHMgc28KLy8gYXMgcG9vbHMgYXJlIGFkZGVkIHRoZSBtYXggYWxsb3dlZCBwZXIgcG9vbCBjYW4gcmVkdWNlLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvci4KZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTUKCS8vIG51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIG51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU2CgkvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29scyA9IHRoaXMubWF4QWxsb3dlZFN0YWtlKCkgLyBudW1Qb29scwoJY2FsbHN1YiBtYXhBbGxvd2VkU3Rha2UKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM1NwoJLy8gbWF4UGVyUG9vbDogdWludDY0ID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWF4QWxnb1BlclBvb2wKCWludCAyMTcKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU4CgkvLyBtYXhQZXJQb29sID09PSAwCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMV9lbmQKCgkvLyAqaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTkKCS8vIG1heFBlclBvb2wgPSB0aGlzLm1heEFsZ29BbGxvd2VkUGVyUG9vbCgpCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKKmlmMV9lbmQ6CgkvLyAqaWYyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2MQoJLy8gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMgPCBtYXhQZXJQb29sCglmcmFtZV9kaWcgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTwKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzYyCgkvLyBtYXhQZXJQb29sID0gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMKCWZyYW1lX2RpZyAxIC8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzOiB1aW50NjQKCWZyYW1lX2J1cnkgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2NAoJLy8gcmV0dXJuIG1heFBlclBvb2w7CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sCiphYmlfcm91dGVfZG9lc1N0YWtlck5lZWRUb1BheU1CUjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHN0YWtlcikgZm9yIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZG9lc1N0YWtlck5lZWRUb1BheU1CUihhZGRyZXNzKWJvb2wKCWNhbGxzdWIgZG9lc1N0YWtlck5lZWRUb1BheU1CUgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb2VzU3Rha2VyTmVlZFRvUGF5TUJSKHN0YWtlcjogQWRkcmVzcyk6IGJvb2xlYW4KLy8KLy8gSGVscGVyIGNhbGxlcnMgY2FuIGNhbGwgdy8gc2ltdWxhdGUgdG8gZGV0ZXJtaW5lIGlmICdBZGRTdGFrZXInIE1CUiBzaG91bGQgYmUgaW5jbHVkZWQgdy8gc3Rha2luZyBhbW91bnQKLy8gQHBhcmFtIHN0YWtlcgpkb2VzU3Rha2VyTmVlZFRvUGF5TUJSOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM3MwoJLy8gcmV0dXJuICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHM7CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJIQoJcmV0c3ViCgovLyBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10KKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KGFkZHJlc3MpKHVpbnQ2NCx1aW50NjQsdWludDY0KVtdCgljYWxsc3ViIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudAoJZHVwCglsZW4KCWludCAyNAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudChzdGFrZXI6IEFkZHJlc3MpOiBWYWxpZGF0b3JQb29sS2V5W10KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgcG9vbHMgZm9yIGFuIGFjY291bnQuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgdG8gcmV0cmlldmUgc3Rha2VkIHBvb2xzIGZvci4KLy8gQHJldHVybiB7VmFsaWRhdG9yUG9vbEtleVtdfSAtIFRoZSBhcnJheSBvZiBzdGFrZWQgcG9vbHMgZm9yIHRoZSBhY2NvdW50LgpnZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODMKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4NAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJYiAqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybgoKKmlmM19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg2CgkvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10gPSBbXQoJYnl0ZSAweAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFZhbGlkYXRvclBvb2xLZXlbXQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODcKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZSkKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg4CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzFfZW5kCgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODkKCS8vIHBvb2xTZXRbaV0uaWQgIT09IDAKCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTAKCS8vIHJldERhdGEucHVzaChwb29sU2V0W2ldKQoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCglmcmFtZV9kaWcgMSAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMjQKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10KCippZjRfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSArPSAxCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTMKCS8vIHJldHVybiByZXREYXRhOwoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCgoqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDIKCXJldHN1YgoKLy8gZ2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX2dldFRva2VuUGF5b3V0UmF0aW86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgZ2V0VG9rZW5QYXlvdXRSYXRpbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFRva2VuUGF5b3V0UmF0aW8odmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xUb2tlblBheW91dFJhdGlvCi8vCi8vIFJldHJpZXZlcyB0aGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciBhIGdpdmVuIHZhbGlkYXRvciAtIHJldHVybmluZyB0aGUgcG9vbCByYXRpb3Mgb2Ygd2hvbGUgc28gdGhhdCB0b2tlbgovLyBwYXlvdXRzIGFjcm9zcyBwb29scyBjYW4gYmUgYmFzZWQgb24gYSBzdGFibGUgc25hcGhvc3Qgb2Ygc3Rha2UuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcmV0dXJuIHtQb29sVG9rZW5QYXlvdXRSYXRpb30gLSBUaGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciB0aGUgdmFsaWRhdG9yLgpnZXRUb2tlblBheW91dFJhdGlvOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQwNQoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpbzsKCWludCA3MDAgLy8gaGVhZE9mZnNldAoJaW50IDIwMAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyh1aW50NjQpKCh1aW50NjRbM10pWzhdKQoqYWJpX3JvdXRlX2dldE5vZGVQb29sQXNzaWdubWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkKCWNhbGxzdWIgZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldE5vZGVQb29sQXNzaWdubWVudHModmFsaWRhdG9ySWQ6IHVpbnQ2NCk6IE5vZGVQb29sQXNzaWdubWVudENvbmZpZwpnZXROb2RlUG9vbEFzc2lnbm1lbnRzOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQxMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAidGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgZG9lc24ndCBleGlzdCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyB0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBkb2Vzbid0IGV4aXN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDEyCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5ub2RlUG9vbEFzc2lnbm1lbnRzOwoJaW50IDkwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMTkyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBnZXRORkRSZWdpc3RyeUlEKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRORkRSZWdpc3RyeUlEOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NAoJY2FsbHN1YiBnZXRORkRSZWdpc3RyeUlECglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TkZEUmVnaXN0cnlJRCgpOiB1aW50NjQKZ2V0TkZEUmVnaXN0cnlJRDoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MTYKCS8vIHJldHVybiB0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQ7Cglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCXJldHN1YgoKLy8gYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFZhbGlkYXRvcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMjQyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNvbmZpZykgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBuZmROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAobWJyUGF5bWVudCkgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFZhbGlkYXRvcihwYXksc3RyaW5nLCh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSl1aW50NjQKCWNhbGxzdWIgYWRkVmFsaWRhdG9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkVmFsaWRhdG9yKG1iclBheW1lbnQ6IFBheVR4biwgbmZkTmFtZTogc3RyaW5nLCBjb25maWc6IFZhbGlkYXRvckNvbmZpZyk6IHVpbnQ2NAovLwovLyBBZGRzIGEgbmV3IHZhbGlkYXRvcgovLyBSZXF1aXJlcyBhdCBsZWFzdCAxMCBBTEdPIGFzIHRoZSAnZmVlJyBmb3IgdGhlIHRyYW5zYWN0aW9uIHRvIGhlbHAgZGlzc3VhZGUgc3BhbW1lZCB2YWxpZGF0b3IgYWRkcy4KLy8KLy8gQHBhcmFtIHtQYXlUeG59IG1iclBheW1lbnQgcGF5bWVudCBmcm9tIGNhbGxlciB3aGljaCBjb3ZlcnMgbWJyIGluY3JlYXNlIG9mIG5ldyB2YWxpZGF0b3Igc3RvcmFnZQovLyBAcGFyYW0ge3N0cmluZ30gbmZkTmFtZSAoT3B0aW9uYWwpIE5hbWUgb2YgbmZkICh1c2VkIGFzIGRvdWJsZS1jaGVjayBhZ2FpbnN0IGlkIHNwZWNpZmllZCBpbiBjb25maWcpCi8vIEBwYXJhbSB7VmFsaWRhdG9yQ29uZmlnfSBjb25maWcgVmFsaWRhdG9yQ29uZmlnIHN0cnVjdAovLyBAcmV0dXJucyB7dWludDY0fSB2YWxpZGF0b3IgaWQKYWRkVmFsaWRhdG9yOgoJcHJvdG8gMyAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDI4CgkvLyB0aGlzLnZhbGlkYXRlQ29uZmlnKGNvbmZpZykKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJY2FsbHN1YiB2YWxpZGF0ZUNvbmZpZwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjkKCS8vIGFzc2VydChjb25maWcub3duZXIgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMAoJLy8gYXNzZXJ0KGNvbmZpZy5tYW5hZ2VyICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDQwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDMxCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBjb25maWcub3duZXIsICdzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcicpCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJPT0KCgkvLyBzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMwoJLy8gdmVyaWZ5UGF5VHhuKG1iclBheW1lbnQsIHsgYW1vdW50OiB0aGlzLmdldE1ickFtb3VudHMoKS5hZGRWYWxpZGF0b3JNYnIgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkVmFsaWRhdG9yTWJyIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MzUKCS8vIGFzc2VydChtYnJQYXltZW50LmZlZSA+IDEwICogMTAwMDAwMCwgJ2ZlZSBtdXN0IGJlIDEwIEFMR08gb3IgbW9yZSB0byBwcmV2ZW50IHNwYW1taW5nIG9mIHZhbGlkYXRvcnMnKQoJZnJhbWVfZGlnIC0xIC8vIG1iclBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgRmVlCglpbnQgMTAwMDAwMDAKCT4KCgkvLyBmZWUgbXVzdCBiZSAxMCBBTEdPIG9yIG1vcmUgdG8gcHJldmVudCBzcGFtbWluZyBvZiB2YWxpZGF0b3JzCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM4CgkvLyB2YWxpZGF0b3JJZCA9IHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSArIDEKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM5CgkvLyB0aGlzLm51bVZhbGlkYXRvcnMudmFsdWUgPSB2YWxpZGF0b3JJZAoJYnl0ZSAweDZlNzU2ZDU2IC8vICJudW1WIgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmNyZWF0ZSgpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWludCAxMDkyCglib3hfY3JlYXRlCglwb3AKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQyCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZyA9IGNvbmZpZwoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmlkID0gdmFsaWRhdG9ySWQKCWludCAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDYKCS8vIGNvbmZpZy5uZmRGb3JJbmZvICE9PSAwCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWY1X2VuZAoKCS8vICppZjVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ0OAoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMubmZkUmVnaXN0cnlBcHBJZCksCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKGNvbmZpZy5uZmRGb3JJbmZvKV0sCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXSwKCS8vICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKQoJbG9hZCAyMDAgLy8gVE1QTF9uZmRSZWdpc3RyeUFwcElkCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDUwCgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgbmZkTmFtZSwgaXRvYihjb25maWcubmZkRm9ySW5mbyldCglieXRlIDB4Njk3MzVmNzY2MTZjNjk2NDVmNmU2NjY0NWY2MTcwNzA2OTY0IC8vICJpc192YWxpZF9uZmRfYXBwaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA3MiA4CglidG9pCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTEKCS8vIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDcyIDgKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25zCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTMKCS8vIGFzc2VydChidG9pKHRoaXMuaXR4bi5sYXN0TG9nKSA9PT0gMSwgInByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZCIpCglpdHhuIExhc3RMb2cKCWJ0b2kKCWludCAxCgk9PQoKCS8vIHByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ1NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IChBcHBJRC5mcm9tVWludDY0KGNvbmZpZy5uZmRGb3JJbmZvKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykgYXMgQWRkcmVzcyksCgkvLyAgICAgICAgICdJZiBzcGVjaWZ5aW5nIE5GRCwgYWNjb3VudCBhZGRpbmcgdmFsaWRhdG9yIG11c3QgYmUgb3duZXInCgkvLyAgICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoqaWY1X2VuZDoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDYxCgkvLyBjb25maWcuZW50cnlHYXRpbmdUeXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMgfHwKCS8vICAgICAgIGNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPT09IEdBVElOR19UWVBFX1NFR01FTlRfT0ZfTkZECglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgODAgMQoJYnRvaQoJaW50IDMKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgNAoJPT0KCXx8Cgoqc2tpcF9vcjA6CglieiAqaWY2X2VuZAoKCS8vICppZjZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ2NQoJLy8gYXNzZXJ0KHRoaXMuaXNORkRBcHBJRFZhbGlkKGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSksICdwcm92aWRlZCBORkQgQXBwIGlkIGZvciBnYXRpbmcgbXVzdCBiZSB2YWxpZCBORkQnKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzTkZEQXBwSURWYWxpZAoKCS8vIHByb3ZpZGVkIE5GRCBBcHAgaWQgZm9yIGdhdGluZyBtdXN0IGJlIHZhbGlkIE5GRAoJYXNzZXJ0CgoqaWY2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NjgKCS8vIHJldHVybiB2YWxpZGF0b3JJZDsKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCS8vIG1hbmFnZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobWFuYWdlcikgZm9yIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIG1hbmFnZXI6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIENoYW5nZXMgdGhlIFZhbGlkYXRvciBtYW5hZ2VyIGZvciBhIHNwZWNpZmljIFZhbGlkYXRvciBpZC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byBjaGFuZ2UgdGhlIG1hbmFnZXIgZm9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IG1hbmFnZXIgLSBUaGUgbmV3IG1hbmFnZXIgYWRkcmVzcy4KY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NzkKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDgzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyID0gbWFuYWdlcgoJaW50IDQwCglmcmFtZV9kaWcgLTIgLy8gbWFuYWdlcjogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbzoKCS8vIHN1bnNldHRpbmdUbzogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Vuc2V0dGluZ09uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBzdW5zZXR0aW5nT246IHVpbnQ2NCwgc3Vuc2V0dGluZ1RvOiBWYWxpZGF0b3JJZFR5cGUpOiB2b2lkCi8vCi8vIFVwZGF0ZXMgdGhlIHN1bnNldCBpbmZvcm1hdGlvbiBmb3IgYSBnaXZlbiB2YWxpZGF0b3IuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IgdG8gdXBkYXRlLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ09uIC0gVGhlIG5ldyBzdW5zZXQgdGltZXN0YW1wLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ1RvIC0gVGhlIG5ldyBzdW5zZXQgdG8gdmFsaWRhdG9yIGlkLgpjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ5NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdPbiA9IHN1bnNldHRpbmdPbgoJaW50IDIyNgoJZnJhbWVfZGlnIC0yIC8vIHN1bnNldHRpbmdPbjogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MDAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdUbyA9IHN1bnNldHRpbmdUbwoJaW50IDIzNAoJZnJhbWVfZGlnIC0zIC8vIHN1bnNldHRpbmdUbzogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodWludDY0LHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2hhbmdlVmFsaWRhdG9yTkZEKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yTkZECglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbmZkQXBwSUQ6IHVpbnQ2NCwgbmZkTmFtZTogc3RyaW5nKTogdm9pZAovLwovLyBDaGFuZ2VzIHRoZSBORkQgZm9yIGEgdmFsaWRhdG9yIGluIHRoZSB2YWxpZGF0b3JMaXN0IGNvbnRyYWN0LgovLyBbIE9OTFkgT1dORVIgQ0FOIENIQU5HRSBdCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yIHRvIHVwZGF0ZS4KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIGFwcGxpY2F0aW9uIGlkIG9mIHRoZSBORkQgdG8gYXNzaWduIHRvIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7c3RyaW5nfSBuZmROYW1lIC0gVGhlIG5hbWUgb2YgdGhlIE5GRCAod2hpY2ggbXVzdCBtYXRjaCkKY2hhbmdlVmFsaWRhdG9yTkZEOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxMwoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MTgKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxOQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MjAKCS8vIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTMgLy8gbmZkTmFtZTogc3RyaW5nCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyMQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCldCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSAoQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpLAoJLy8gICAgICAgJ0lmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyOAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IG5mZEFwcElECglpbnQgNzIKCWZyYW1lX2RpZyAtMiAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3M6CgkvLyBjb21taXNzaW9uQWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjb21taXNzaW9uQWRkcmVzcykgZm9yIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCgljYWxsc3ViIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ2hhbmdlIHRoZSBjb21taXNzaW9uIGFkZHJlc3MgdGhhdCB2YWxpZGF0b3IgcmV3YXJkcyBhcmUgc2VudCB0by4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQpjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzczoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MzYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTQwCgkvLyBhc3NlcnQoY29tbWlzc2lvbkFkZHJlc3MgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTIgLy8gY29tbWlzc2lvbkFkZHJlc3M6IEFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NDEKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzID0gY29tbWlzc2lvbkFkZHJlc3MKCWludCAxNzcKCWZyYW1lX2RpZyAtMiAvLyBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCS8vIFJld2FyZFBlclBheW91dDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA2CglidG9pCgoJLy8gR2F0aW5nQXNzZXRNaW5CYWxhbmNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWJ0b2kKCgkvLyBFbnRyeUdhdGluZ0Fzc2V0czogdWludDY0WzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKEVudHJ5R2F0aW5nQXNzZXRzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgdWludDY0WzRdCglhc3NlcnQKCgkvLyBFbnRyeUdhdGluZ0FkZHJlc3M6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoRW50cnlHYXRpbmdBZGRyZXNzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gRW50cnlHYXRpbmdUeXBlOiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDQgKEVudHJ5R2F0aW5nVHlwZSkgZm9yIGNoYW5nZVZhbGlkYXRvclJld2FyZEluZm8gbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4LCBFbnRyeUdhdGluZ0FkZHJlc3M6IEFkZHJlc3MsIEVudHJ5R2F0aW5nQXNzZXRzOiBTdGF0aWNBcnJheTx1aW50NjQsIDQ+LCBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NCwgUmV3YXJkUGVyUGF5b3V0OiB1aW50NjQpOiB2b2lkCi8vCi8vIEFsbG93IHRoZSBhZGRpdGlvbmFsIHJld2FyZHMgKGdhdGluZyBlbnRyeSwgYWRkaXRpb25hbCB0b2tlbiByZXdhcmRzKSBpbmZvcm1hdGlvbiBiZSBjaGFuZ2VkIGF0IHdpbGwuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCXByb3RvIDYgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NTYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTYxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPSBFbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJZnJhbWVfZGlnIC0yIC8vIEVudHJ5R2F0aW5nVHlwZTogdWludDgKCWl0b2IKCWV4dHJhY3QgNyAxCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjIKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQWRkcmVzcyA9IEVudHJ5R2F0aW5nQWRkcmVzcwoJaW50IDgxCglmcmFtZV9kaWcgLTMgLy8gRW50cnlHYXRpbmdBZGRyZXNzOiBBZGRyZXNzCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQXNzZXRzID0gRW50cnlHYXRpbmdBc3NldHMKCWludCAxMTMKCWZyYW1lX2RpZyAtNCAvLyBFbnRyeUdhdGluZ0Fzc2V0czogU3RhdGljQXJyYXk8dWludDY0LCA0PgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY0CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UgPSBHYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWZyYW1lX2RpZyAtNSAvLyBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRQZXJQYXlvdXQgPSBSZXdhcmRQZXJQYXlvdXQKCWludCAxNjEKCWZyYW1lX2RpZyAtNiAvLyBSZXdhcmRQZXJQYXlvdXQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfYWRkUG9vbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDIgKG1iclBheW1lbnQpIGZvciBhZGRQb29sIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGFkZFBvb2wKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhZGRQb29sKG1iclBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbm9kZU51bTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIGEgbmV3IHBvb2wgdG8gYSB2YWxpZGF0b3IncyBwb29sIHNldCwgcmV0dXJuaW5nIHRoZSAna2V5JyB0byByZWZlcmVuY2UgdGhlIHBvb2wgaW4gdGhlIGZ1dHVyZSBmb3Igc3Rha2luZywgZXRjLgovLyBUaGUgY2FsbGVyIG11c3QgcGF5IHRoZSBjb3N0IG9mIHRoZSB2YWxpZGF0b3JzIE1CUiBpbmNyZWFzZSBhcyB3ZWxsIGFzIHRoZSBNQlIgdGhhdCB3aWxsIGJlIG5lZWRlZCBmb3IgdGhlIHBvb2wgaXRzZWxmLgovLwovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gY2FsbCBdCi8vIEBwYXJhbSB7UGF5VHhufSBtYnJQYXltZW50IHBheW1lbnQgZnJvbSBjYWxsZXIgd2hpY2ggY292ZXJzIG1iciBpbmNyZWFzZSBvZiBhZGRpbmcgYSBuZXcgcG9vbAovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgaXMgaWQgb2YgdmFsaWRhdG9yIHRvIHBvb2wgdG8gKG11c3QgYmUgb3duZXIgb3IgbWFuYWdlcikKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0gaXMgbm9kZSBudW1iZXIgdG8gYWRkIHRvCi8vIEByZXR1cm5zIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sIGtleSB0byBjcmVhdGVkIHBvb2wKYWRkUG9vbDoKCXByb3RvIDMgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyIHx8CgkvLyAgICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CglkdXAKCWJueiAqc2tpcF9vcjEKCXR4biBTZW5kZXIKCWludCA0MAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCXx8Cgoqc2tpcF9vcjE6CgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1ODgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IGFtb3VudDogdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciwgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDggOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTAKCS8vIGFzc2VydCh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmV4aXN0cywgInNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQiKQoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU5MgoJLy8gbnVtUG9vbHM6IHVpbnQ2NCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBudW1Qb29sczogdWludDY0CgoJLy8gKmlmN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTMKCS8vIChudW1Qb29scyBhcyB1aW50NjQpID49IE1BWF9QT09MUwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaW50IDI0Cgk+PQoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGFscmVhZHkgYXQgbWF4IHBvb2wgc2l6ZQoJZXJyCgoqaWY3X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTYKCS8vIG51bVBvb2xzICs9IDEKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTkKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFsKCS8vICAgICAgICAgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5leHRyYWN0KDAsIDQwOTYpLAoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoNDA5NiwgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5zaXplIC0gNDA5NiksCgkvLyAgICAgICBdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpLAoJLy8gICAgICAgZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50LAoJLy8gICAgICAgZ2xvYmFsTnVtQnl0ZVNsaWNlOiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZSwKCS8vICAgICAgIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbCgkvLyAgICAgICAgIC8vIGNyZWF0aW5nQ29udHJhY3RJRCwgdmFsaWRhdG9ySWQsIHBvb2xJZCwgbWluRW50cnlTdGFrZQoJLy8gICAgICAgICBtZXRob2QoJ2NyZWF0ZUFwcGxpY2F0aW9uKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkJyksCgkvLyAgICAgICAgIGl0b2IodGhpcy5hcHAuaWQpLAoJLy8gICAgICAgICBpdG9iKHZhbGlkYXRvcklkKSwKCS8vICAgICAgICAgaXRvYihudW1Qb29scyBhcyB1aW50NjQpLAoJLy8gICAgICAgICBpdG9iKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1pbkVudHJ5U3Rha2UpLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjAwCgkvLyBvbkNvbXBsZXRpb246IE9uQ29tcGxldGlvbi5Ob09wCglpbnQgMCAvLyBOb09wCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDEKCS8vIGFwcHJvdmFsUHJvZ3JhbTogWwoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoMCwgNDA5NiksCgkvLyAgICAgICAgIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uZXh0cmFjdCg0MDk2LCB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUgLSA0MDk2KSwKCS8vICAgICAgIF0KCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCAwCglpbnQgNDA5NgoJYm94X2V4dHJhY3QKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCA0MDk2CglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUKCWFzc2VydAoJaW50IDQwOTYKCS0KCWJveF9leHRyYWN0CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbVBhZ2VzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNQoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNgoJLy8gZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMTEKCWl0eG5fZmllbGQgR2xvYmFsTnVtVWludAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDcKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCWludCAzCglpdHhuX2ZpZWxkIEdsb2JhbE51bUJ5dGVTbGljZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDgKCS8vIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzCglpbnQgMwoJaXR4bl9maWVsZCBFeHRyYVByb2dyYW1QYWdlcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDkKCS8vIGFwcGxpY2F0aW9uQXJnczogWwoJLy8gICAgICAgICAvLyBjcmVhdGluZ0NvbnRyYWN0SUQsIHZhbGlkYXRvcklkLCBwb29sSWQsIG1pbkVudHJ5U3Rha2UKCS8vICAgICAgICAgbWV0aG9kKCdjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCcpLAoJLy8gICAgICAgICBpdG9iKHRoaXMuYXBwLmlkKSwKCS8vICAgICAgICAgaXRvYih2YWxpZGF0b3JJZCksCgkvLyAgICAgICAgIGl0b2IobnVtUG9vbHMgYXMgdWludDY0KSwKCS8vICAgICAgICAgaXRvYih0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5taW5FbnRyeVN0YWtlKSwKCS8vICAgICAgIF0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAyMDkKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYxOQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyA9IG51bVBvb2xzIGFzIHVpbnQxNgoJaW50IDI0MgoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYyMgoJLy8gcG9vbEFwcElkID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklELmlkCglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjIzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW251bVBvb2xzIC0gMV0ucG9vbEFwcElkID0gcG9vbEFwcElkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAxIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjQKCS8vIHRoaXMuYWRkUG9vbFRvTm9kZSh2YWxpZGF0b3JJZCwgcG9vbEFwcElkLCBub2RlTnVtKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGFkZFBvb2xUb05vZGUKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjMyCgkvLyByZXR1cm4geyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogbnVtUG9vbHMgYXMgdWludDY0LCBwb29sQXBwSWQ6IHRoaXMuaXR4biEuY3JlYXRlZEFwcGxpY2F0aW9uSUQuaWQgfTsKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglmcmFtZV9kaWcgMCAvLyBudW1Qb29sczogdWludDY0CglpdG9iCgljb25jYXQKCWl0eG4gQ3JlYXRlZEFwcGxpY2F0aW9uSUQKCWl0b2IKCWNvbmNhdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc3Rha2VkQW1vdW50UGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc3Rha2VkQW1vdW50UGF5bWVudCkgZm9yIGFkZFN0YWtlIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBhZGRTdGFrZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgdmFsdWVUb1ZlcmlmeTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIHN0YWtlIHRvIGEgdmFsaWRhdG9yIHBvb2wuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gb25seSBpZiB2YWxpZGF0b3IgaGFzIGdhdGluZyB0byBlbnRlciAtIHRoaXMgaXMgYXNzZXQgaWQgb3IgbmZkIGlkIHRoYXQgY29ycmVzcG9uZHMgdG8gZ2F0aW5nLgovLyBUeG4gc2VuZGVyIGlzIGZhY3RvcmVkIGluIGFzIHdlbGwgaWYgdGhhdCBpcyBwYXJ0IG9mIGdhdGluZy4KLy8gKiBAcmV0dXJucyB7VmFsaWRhdG9yUG9vbEtleX0gLSBUaGUga2V5IG9mIHRoZSB2YWxpZGF0b3IgcG9vbC4KYWRkU3Rha2U6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA1CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0NQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAic3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyBzcGVjaWZpZWQgdmFsaWRhdG9yIGlkIGlzbid0IHZhbGlkCglhc3NlcnQKCgkvLyAqaWY4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uID4gMAoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPgoJYnogKmlmOF9lbmQKCgkvLyAqaWY4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NDkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uIDwgZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAsCgkvLyAgICAgICAgICJjYW4ndCBzdGFrZSB3aXRoIGEgdmFsaWRhdG9yIHRoYXQgaXMgcGFzdCBpdHMgc3Vuc2V0dGluZyB0aW1lIgoJLy8gICAgICAgKQoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglnbG9iYWwgTGF0ZXN0VGltZXN0YW1wCgk8CgoJLy8gY2FuJ3Qgc3Rha2Ugd2l0aCBhIHZhbGlkYXRvciB0aGF0IGlzIHBhc3QgaXRzIHN1bnNldHRpbmcgdGltZQoJYXNzZXJ0CgoqaWY4X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTUKCS8vIHN0YWtlciA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfYnVyeSAwIC8vIHN0YWtlcjogYWRkcmVzcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTkKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHN0YWtlciwKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoic3Rha2VyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSByZWNlaXZlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgUmVjZWl2ZXIKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoicmVjZWl2ZXIiLCJleHBlY3RlZCI6InRoaXMuYXBwLmFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY2NgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS50b3RhbEFsZ29TdGFrZWQgPCB0aGlzLm1heEFsbG93ZWRTdGFrZSgpLAoJLy8gICAgICAgJ3RvdGFsIHN0YWtlZCBmb3IgYWxsIG9mIGEgdmFsaWRhdG9ycyBwb29scyBtYXkgbm90IGV4Y2VlZCBoYXJkIGNhcCcKCS8vICAgICApCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWNhbGxzdWIgbWF4QWxsb3dlZFN0YWtlCgk8CgoJLy8gdG90YWwgc3Rha2VkIGZvciBhbGwgb2YgYSB2YWxpZGF0b3JzIHBvb2xzIG1heSBub3QgZXhjZWVkIGhhcmQgY2FwCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjczCgkvLyB0aGlzLmRvZXNTdGFrZXJNZWV0R2F0aW5nKHZhbGlkYXRvcklkLCB2YWx1ZVRvVmVyaWZ5KQoJZnJhbWVfZGlnIC0zIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZG9lc1N0YWtlck1lZXRHYXRpbmcKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njc1CgkvLyByZWFsQW1vdW50ID0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfYnVyeSAxIC8vIHJlYWxBbW91bnQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzYKCS8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gbWJyQW10TGVmdEJlaGluZDogdWludDY0CgoJLy8gKmlmOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzgKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCSEKCWJ6ICppZjlfZW5kCgoJLy8gKmlmOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgxCgkvLyBtYnJBbXRMZWZ0QmVoaW5kID0gdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkU3Rha2VyTWJyCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWV4dHJhY3QgMjQgOAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODIKCS8vIHJlYWxBbW91bnQgLT0gbWJyQW10TGVmdEJlaGluZAoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYnJBbXRMZWZ0QmVoaW5kOiB1aW50NjQKCS0KCWZyYW1lX2J1cnkgMSAvLyByZWFsQW1vdW50OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgzCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5jcmVhdGUoKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCgljb25jYXQKCWludCAxNDQKCWJveF9jcmVhdGUKCXBvcAoKKmlmOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg3CgkvLyBmaW5kUmV0ID0gdGhpcy5maW5kUG9vbEZvclN0YWtlcih2YWxpZGF0b3JJZCwgc3Rha2VyLCByZWFsQW1vdW50KQoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGZpbmRQb29sRm9yU3Rha2VyCglmcmFtZV9idXJ5IDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODgKCS8vIHBvb2xLZXkgPSBmaW5kUmV0WzBdCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg5CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmluZFJldFsxXQoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxOTIKCWdldGJpdAoJZnJhbWVfYnVyeSA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkwCgkvLyBpc05ld1N0YWtlclRvUHJvdG9jb2wgPSBmaW5kUmV0WzJdCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJZ2V0Yml0CglmcmFtZV9idXJ5IDUgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkxCgkvLyBwb29sS2V5LnBvb2xJZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEwX2VuZAoKCS8vICppZjEwX2NvbnNlcXVlbnQKCS8vIE5vIHBvb2wgYXZhaWxhYmxlIHdpdGggZnJlZSBzdGFrZS4gIFZhbGlkYXRvciBuZWVkcyB0byBhZGQgYW5vdGhlciBwb29sCgllcnIKCippZjEwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTYKCS8vIHRoaXMudXBkYXRlU3Rha2VyUG9vbFNldChzdGFrZXIsIHBvb2xLZXkpCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNhbGxzdWIgdXBkYXRlU3Rha2VyUG9vbFNldAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTkKCS8vIHRoaXMuY2FsbFBvb2xBZGRTdGFrZSgKCS8vICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQsCgkvLyAgICAgICBwb29sS2V5LAoJLy8gICAgICAgbWJyQW10TGVmdEJlaGluZCwKCS8vICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICBpc05ld1N0YWtlclRvUHJvdG9jb2wKCS8vICAgICApCglmcmFtZV9kaWcgNSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCWZyYW1lX2RpZyA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCWZyYW1lX2RpZyAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCAyNAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJY2FsbHN1YiBjYWxsUG9vbEFkZFN0YWtlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjcxNAoJLy8gcmV0dXJuIHBvb2xLZXk7CglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNQoJcmV0c3ViCgovLyBzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpCiphYmlfcm91dGVfc2V0VG9rZW5QYXlvdXRSYXRpbzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgc2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoJY2FsbHN1YiBzZXRUb2tlblBheW91dFJhdGlvCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyBpcyBjYWxsZWQgYnkgU3Rha2luZyBQb29sICMgMSAoT05MWSkgdG8gYXNrIHRoZSB2YWxpZGF0b3IgKHVzKSB0byBjYWxjdWxhdGUgdGhlIHJhdGlvcwovLyBvZiBzdGFrZSBpbiB0aGUgcG9vbHMgZm9yIHN1YnNlcXVlbnQgdG9rZW4gcGF5b3V0cyAoaWU6IDIgcG9vbHMsICcxMDAnIGFsZ28gdG90YWwgc3Rha2VkLCA2MCBpbiBwb29sIDEsIGFuZCA0MAovLyBpbiBwb29sIDIpICBUaGlzIGlzIGRvbmUgc28gd2UgaGF2ZSBhIHN0YWJsZSBzbmFwc2hvdCBvZiBzdGFrZSAtIHRha2VuIG9uY2UgcGVyIGVwb2NoIC0gb25seSB0cmlnZ2VyZWQgYnkKLy8gcG9vbCAxIGRvaW5nIHBheW91dC4gIHBvb2xzIG90aGVyIHRoYW4gMSBkb2luZyBwYXlvdXQgY2FsbCBwb29sIDEgdG8gYXNrIGl0IGRvIGl0IGZpcnN0LgovLyBJdCB3b3VsZCBiZSA2MC80MCUgaW4gdGhlIHBvb2xQY3RPZldob2xlIHZhbHVlcy4gIFRoZSB0b2tlbiByZXdhcmQgcGF5b3V0cyB0aGVuIHVzZSB0aGVzZSB2YWx1ZXMgaW5zdGVhZCBvZgovLyB0aGVpciAnY3VycmVudCcgc3Rha2Ugd2hpY2ggY2hhbmdlcyBhcyBwYXJ0IG9mIHRoZSBwYXlvdXRzIHRoZW1zZWx2ZXMgKGFuZCBwZW9wbGUgY291bGQgYmUgY2hhbmdpbmcgc3Rha2UKLy8gZHVyaW5nIHRoZSBlcG9jaCB1cGRhdGVzIGFjcm9zcyBwb29scykKLy8KLy8gTXVsdGlwbGUgcG9vbHMgd2lsbCBjYWxsIHVzIHZpYSBwb29sIDEgKHBvb2wyLT5wb29sMS0+dmFsaWRhdG9yLCBldGMuKSBzbyBkb24ndCBhc3NlcnQgb24gcG9vbDEgY2FsbGluZyBtdWx0aXBsZQovLyB0aW1lcyBpbiBzYW1lIGVwb2NoLiAgSnVzdCByZXR1cm4uCi8vCi8vIEBwYXJhbSB2YWxpZGF0b3JJZCAtIHZhbGlkYXRvciBpZCAoYW5kIHRodXMgcG9vbCkgY2FsbGluZyB1cy4gIFZlcmlmaWVkIHNvIHRoYXQgc2VuZGVyIE1VU1QgYmUgcG9vbCAxIG9mIHRoaXMgdmFsaWRhdG9yLgovLyBAcmV0dXJucyBQb29sVG9rZW5QYXlvdXRSYXRpbyAtIHRoZSBmaW5pc2hlZCByYXRpbyBkYXRhCnNldFRva2VuUGF5b3V0UmF0aW86Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjczNAoJLy8gcG9vbDFBcHBJRCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbMF0ucG9vbEFwcElkCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzM1CgkvLyBhc3NlcnQocG9vbDFBcHBJRCAhPT0gMCkKCWZyYW1lX2RpZyAwIC8vIHBvb2wxQXBwSUQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzcKCS8vIHRoaXMudHhuLnNlbmRlciAhPT0gQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5hZGRyZXNzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJIT0KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzgKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMSAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NQoJLy8gbGFzdFBheW91dFVwZGF0ZSA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpby51cGRhdGVkRm9yUGF5b3V0CglpbnQgODkyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDYKCS8vIGxhc3RQYXlvdXRVcGRhdGUgIT09IDAKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJaW50IDAKCSE9CglieiAqaWYxMl9lbmQKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyAqaWYxM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDgKCS8vIChBcHBJRC5mcm9tVWludDY0KHBvb2wxQXBwSUQpLmdsb2JhbFN0YXRlKCdsYXN0UGF5b3V0JykgYXMgdWludDY0KSA9PT0gbGFzdFBheW91dFVwZGF0ZQoJZnJhbWVfZGlnIDAgLy8gcG9vbDFBcHBJRDogdWludDY0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5nbG9iYWxTdGF0ZSgnbGFzdFBheW91dCcpCglhc3NlcnQKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1MQoJLy8gZXBvY2hSb3VuZExlbmd0aCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVwb2NoUm91bmRMZW5ndGggYXMgdWludDY0CglpbnQgMTY5CglpbnQgNAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzUyCgkvLyB0aGlzRXBvY2hCZWdpbiA9IGN1clJvdW5kIC0gKGN1clJvdW5kICUgZXBvY2hSb3VuZExlbmd0aCkKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfYnVyeSA0IC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCgkvLyAqaWYxNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTQKCS8vIGxhc3RQYXlvdXRVcGRhdGUgLSAobGFzdFBheW91dFVwZGF0ZSAlIGVwb2NoUm91bmRMZW5ndGgpID09PSB0aGlzRXBvY2hCZWdpbgoJZnJhbWVfZGlnIDIgLy8gbGFzdFBheW91dFVwZGF0ZTogdWludDY0CglmcmFtZV9kaWcgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfZGlnIDQgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJPT0KCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTUKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTRfZW5kOgoKKmlmMTJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnVwZGF0ZWRGb3JQYXlvdXQgPSBjdXJSb3VuZAoJaW50IDg5MgoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYwCgkvLyBjdXJOdW1Qb29scyA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNSAvLyBjdXJOdW1Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MQoJLy8gdG90YWxTdGFrZUZvclZhbGlkYXRvciA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUudG90YWxBbGdvU3Rha2VkCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyB0b3RhbFN0YWtlRm9yVmFsaWRhdG9yOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYyCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MgoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA1IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzY3CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgW3RoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbaV0udG90YWxBbGdvU3Rha2VkLCAxXzAwMF8wMDBdLAoJLy8gICAgICAgICBbdG90YWxTdGFrZUZvclZhbGlkYXRvcl0KCS8vICAgICAgICkKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaW50IDFfMDAwXzAwMAoJbXVsdwoJaW50IDAKCWZyYW1lX2RpZyA2IC8vIHRvdGFsU3Rha2VGb3JWYWxpZGF0b3I6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgOCAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc3MQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnBvb2xQY3RPZldob2xlW2ldID0gb3VyUG9vbFBjdE9mV2hvbGUKCWludCA3MDAKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIDggLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCipmb3JfMl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NjIKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzczCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvOwoJaW50IDcwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMjAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoKKnNldFRva2VuUGF5b3V0UmF0aW8qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gOAoJcmV0c3ViCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKCh1aW50NjQsdWludDY0LHVpbnQ2NCksdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzOgoJLy8gc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglidG9pCgoJLy8gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYWxnb1RvQWRkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIHN0YWtlVXBkYXRlZFZpYVJld2FyZHMoKHVpbnQ2NCx1aW50NjQsdWludDY0KSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzCglpbnQgMQoJcmV0dXJuCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXksIGFsZ29Ub0FkZDogdWludDY0LCByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQsIHZhbGlkYXRvckNvbW1pc3Npb246IHVpbnQ2NCwgc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0KTogdm9pZAovLwovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIGlzIGNhbGxlZCBieSBTdGFraW5nIHBvb2xzIHRvIGluZm9ybSB0aGUgdmFsaWRhdG9yICh1cykgdGhhdCBhIHBhcnRpY3VsYXIgYW1vdW50IG9mIHRvdGFsCi8vIHN0YWtlIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIFRoZSBjYWxsaW5nIEFwcCBpZCBpcyB2YWxpZGF0ZWQgYWdhaW5zdCBvdXIgcG9vbCBsaXN0IGFzIHdlbGwuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFZhbGlkYXRvclBvb2xLZXkgdHlwZQovLyBAcGFyYW0ge3VpbnQ2NH0gYWxnb1RvQWRkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzCi8vIEBwYXJhbSB7dWludDY0fSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzICh0aGF0IHNob3VsZCBiZQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9yQ29tbWlzc2lvbiAtIHRoZSBjb21taXNzaW9uIGFtb3VudCB0aGUgdmFsaWRhdG9yIHdhcyBwYWlkLCBpZiBhbnkKLy8gQHBhcmFtIHt1aW50NjR9IHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbmsgLSBpZiB0aGUgcG9vbCB3YXMgaW4gc2F0dXJhdGVkIHN0YXRlLCB0aGUgYW1vdW50IHNlbnQgYmFjayB0byB0aGUgZmVlIHNpbmsuCi8vIHNlZW4gYXMgJ2FjY291bnRlZCBmb3IvcGVuZGluZyBzcGVudCcpCnN0YWtlVXBkYXRlZFZpYVJld2FyZHM6Cglwcm90byA1IDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk0CgkvLyB0aGlzLnZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CgljYWxsc3ViIHZlcmlmeVBvb2xLZXlDYWxsZXIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgKz0gYWxnb1RvQWRkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc5OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBhbGdvVG9BZGQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFsZ29Ub0FkZDogdWludDY0CgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk5CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjayArPSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkCglpbnQgMjYwCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQKCSsKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MDEKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IGFsZ29Ub0FkZAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODA0CgkvLyB0aGlzLnJldmVyaWZ5TkZET3duZXJzaGlwKHBvb2xLZXkuaWQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWNhbGxzdWIgcmV2ZXJpZnlORkRPd25lcnNoaXAKCXJldHN1YgoKLy8gc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoqYWJpX3JvdXRlX3N0YWtlUmVtb3ZlZDoKCS8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXJSZW1vdmVkKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoc3Rha2VyKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVJlbW92ZWQgbXVzdCBiZSBhICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCWFzc2VydAoKCS8vIGV4ZWN1dGUgc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoJY2FsbHN1YiBzdGFrZVJlbW92ZWQKCWludCAxCglyZXR1cm4KCi8vIHN0YWtlUmVtb3ZlZChwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBzdGFrZXI6IEFkZHJlc3MsIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NCwgcmV3YXJkUmVtb3ZlZDogdWludDY0LCBzdGFrZXJSZW1vdmVkOiBib29sZWFuKTogdm9pZAovLwovLyBzdGFrZVJlbW92ZWQgaXMgY2FsbGVkIGJ5IFN0YWtpbmcgcG9vbHMgdG8gaW5mb3JtIHRoZSB2YWxpZGF0b3IgKHVzKSB0aGF0IGEgcGFydGljdWxhciBhbW91bnQgb2YgdG90YWwgc3Rha2UgaGFzIGJlZW4gcmVtb3ZlZAovLyBmcm9tIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIElmIGFueSBhbW91bnQgb2YgcmV3YXJkUmVtb3ZlZCBpcyBzcGVjaWZpZWQsIHRoZW4gdGhhdCBhbW91bnQgb2YgcmV3YXJkIGlzIHNlbnQgdG8gdGhlIHVzZQovLyBUaGUgY2FsbGluZyBBcHAgaWQgaXMgdmFsaWRhdGVkIGFnYWluc3Qgb3VyIHBvb2wgbGlzdCBhcyB3ZWxsLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvclBvb2xLZXl9IHBvb2xLZXkgY2FsbGluZyB1cyBmcm9tIHdoaWNoIHN0YWtlIHdhcyByZW1vdmVkCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRSZW1vdmVkIC0gYWxnbyBhbW91bnQgcmVtb3ZlZAovLyBAcGFyYW0ge3VpbnQ2NH0gcmV3YXJkUmVtb3ZlZCAtIGlmIGFwcGxpY2FibGUsIGFtb3VudCBvZiB0b2tlbiByZXdhcmQgcmVtb3ZlZCAoYnkgcG9vbCAxIGNhbGxlcikgb3IgVE8gcmVtb3ZlIGFuZCBwYXkgb3V0ICh2aWEgcG9vbCAxIGZyb20gZGlmZmVyZW50IHBvb2wgY2FsbGVyKQovLyBAcGFyYW0ge2Jvb2xlYW59IHN0YWtlclJlbW92ZWQKc3Rha2VSZW1vdmVkOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vICppZjE1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgzNgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE1X2VuZAoKCS8vICppZjE1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzkKCS8vIHRoaXMudmVyaWZ5UG9vbEtleUNhbGxlcihwb29sS2V5KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWNhbGxzdWIgdmVyaWZ5UG9vbEtleUNhbGxlcgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDMKCS8vIGFzc2VydChhbW91bnRSZW1vdmVkID4gMCB8fCByZXdhcmRSZW1vdmVkID4gMCwgJ3Nob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZCcpCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJZHVwCglibnogKnNraXBfb3IyCglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJfHwKCipza2lwX29yMjoKCS8vIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzW3Bvb2xLZXkucG9vbElkIC0gMV0udG90YWxBbGdvU3Rha2VkIC09IGFtb3VudFJlbW92ZWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCAtPSBhbW91bnRSZW1vdmVkCglpbnQgMjUyCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCS0KCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC09IGFtb3VudFJlbW92ZWQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vICppZjE2X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MAoJLy8gcmV3YXJkUmVtb3ZlZCA+IDAKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYxNl9lbHNlCgoJLy8gKmlmMTZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MQoJLy8gcmV3YXJkVG9rZW5JRCA9IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5jb25maWcucmV3YXJkVG9rZW5JZAoJaW50IDE1MwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTIKCS8vIGFzc2VydChyZXdhcmRUb2tlbklEICE9PSAwLCAicmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hIikKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gcmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODUzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrID49IHJld2FyZFJlbW92ZWQsCgkvLyAgICAgICAgICdyZXdhcmQgYmVpbmcgcmVtb3ZlZCBtdXN0IGJlIGNvdmVyZWQgYnkgaG9sZCBiYWNrIGFtb3VudCcKCS8vICAgICAgICkKCWludCAyNjAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCT49CgoJLy8gcmV3YXJkIGJlaW5nIHJlbW92ZWQgbXVzdCBiZSBjb3ZlcmVkIGJ5IGhvbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrIC09IHJld2FyZFJlbW92ZWQKCWludCAyNjAKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmMTdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODY0CgkvLyBwb29sS2V5LnBvb2xJZCAhPT0gMQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJIT0KCWJ6ICppZjE3X2VuZAoKCS8vICppZjE3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjUKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucGF5VG9rZW5SZXdhcmQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpLAoJLy8gICAgICAgICAgIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjYKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzWzBdLnBvb2xBcHBJZCkKCWludCAyNjgKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjcKCS8vIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYxN19lbmQ6CgliICppZjE2X2VuZAoKKmlmMTZfZWxzZToKCippZjE2X2VuZDoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg5MgoJLy8gc3Rha2VyUmVtb3ZlZAoJZnJhbWVfZGlnIC01IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2xlYW4KCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTQKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJLQoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTYKCS8vIHJlbW92ZVJldCA9IHRoaXMucmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQoc3Rha2VyLCA8VmFsaWRhdG9yUG9vbEtleT57CgkvLyAgICAgICAgIGlkOiBwb29sS2V5LmlkLAoJLy8gICAgICAgICBwb29sSWQ6IHBvb2xLZXkucG9vbElkLAoJLy8gICAgICAgICBwb29sQXBwSWQ6IHBvb2xLZXkucG9vbEFwcElkLAoJLy8gICAgICAgfSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJY2FsbHN1YiByZW1vdmVGcm9tU3Rha2VyUG9vbFNldAoJZnJhbWVfYnVyeSAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTAxCgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IgPSByZW1vdmVSZXRbMF0KCWZyYW1lX2RpZyAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZ2V0Yml0CglmcmFtZV9idXJ5IDIgLy8gc3Rha2VyT3V0T2ZUaGlzVmFsaWRhdG9yOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwMgoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbCA9IHJlbW92ZVJldFsxXQoJZnJhbWVfZGlnIDEgLy8gcmVtb3ZlUmV0OiAoYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglnZXRiaXQKCWZyYW1lX2J1cnkgMyAvLyBzdGFrZXJPdXRPZlByb3RvY29sOiBib29sCgoJLy8gKmlmMTlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTA0CgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIHN0YWtlck91dE9mVGhpc1ZhbGlkYXRvcjogYm9vbAoJYnogKmlmMTlfZW5kCgoJLy8gKmlmMTlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwNQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgktCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjE5X2VuZDoKCS8vICppZjIwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOAoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbAoJZnJhbWVfZGlnIDMgLy8gc3Rha2VyT3V0T2ZQcm90b2NvbDogYm9vbAoJYnogKmlmMjBfZW5kCgoJLy8gKmlmMjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOQoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlIC09IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJLQoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCippZjIwX2VuZDoKCippZjE4X2VuZDoKCXJldHN1YgoKLy8gZmluZFBvb2xGb3JTdGFrZXIodWludDY0LGFkZHJlc3MsdWludDY0KSgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9maW5kUG9vbEZvclN0YWtlcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYW1vdW50VG9TdGFrZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlcikgZm9yIGZpbmRQb29sRm9yU3Rha2VyIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJY2FsbHN1YiBmaW5kUG9vbEZvclN0YWtlcgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZpbmRQb29sRm9yU3Rha2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHN0YWtlcjogQWRkcmVzcywgYW1vdW50VG9TdGFrZTogdWludDY0KTogW1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW5dCi8vCi8vIEZpbmRzIHRoZSBwb29sIGZvciBhIHN0YWtlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgdmFsaWRhdG9yIGlkLCBzdGFrZXIgYWRkcmVzcywgYW5kIGFtb3VudCB0byBzdGFrZS4KLy8gRmlyc3QgY2hlY2tzIHRoZSBzdGFrZXJzICdhbHJlYWR5IHN0YWtlZCBsaXN0JyBmb3IgdGhlIHZhbGlkYXRvciBwcmVmZXJyaW5nIHRob3NlIChhZGRpbmcgaWYgcG9zc2libGUpIHRoZW4gYWRkcwovLyB0byBuZXcgcG9vbCBpZiBuZWNlc3NhcnkuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1N0YWtlIC0gVGhlIGFtb3VudCB0byBzdGFrZS4KLy8gQHJldHVybnMge1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW59IC0gVGhlIHBvb2wgZm9yIHRoZSBzdGFrZXIsIHRydWUvZmFsc2Ugb24gd2hldGhlciB0aGUgc3Rha2VyIGlzICduZXcnCi8vIHRvIHRoaXMgVkFMSURBVE9SLCBhbmQgdHJ1ZS9mYWxzZSBpZiBzdGFrZXIgaXMgbmV3IHRvIHRoZSBwcm90b2NvbC4KZmluZFBvb2xGb3JTdGFrZXI6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA3CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzMAoJLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MzEKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzOQoJLy8gbWF4UGVyUG9vbCA9IHRoaXMuZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sCglmcmFtZV9idXJ5IDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoJLy8gKmlmMjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQyCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMiAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglieiAqaWYyMV9lbmQKCgkvLyAqaWYyMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQzCgkvLyBwb29sU2V0ID0gY2xvbmUodGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUpCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlCglhc3NlcnQKCWZyYW1lX2J1cnkgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NAoJLy8gYXNzZXJ0KHZhbGlkYXRvcklkICE9PSAwKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWludCAwCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBwb29sU2V0Lmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfMzoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDUKCS8vIGkgPCBwb29sU2V0Lmxlbmd0aAoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjIyX2VuZDoKCS8vICppZjIzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0OQoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYyM19lbmQKCgkvLyAqaWYyM19jb25zZXF1ZW50CgliICpmb3JfM19jb250aW51ZQoKKmlmMjNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1MgoJLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTUzCgkvLyBwb29sU2V0W2ldLmlkID09PSB2YWxpZGF0b3JJZAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCT09CglieiAqaWYyNF9lbmQKCgkvLyAqaWYyNF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTU1CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1twb29sU2V0W2ldLnBvb2xJZCAtIDFdLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0KCS8vICAgICAgICAgICAgIG1heFBlclBvb2wKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRUb1N0YWtlOiB1aW50NjQKCSsKCWZyYW1lX2RpZyAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoJPD0KCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjAKCS8vIHJldHVybiBbcG9vbFNldFtpXSwgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwgaXNOZXdTdGFrZXJUb1Byb3RvY29sXTsKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjVfZW5kOgoKKmlmMjRfZW5kOgoKKmZvcl8zX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgliICpmb3JfMwoKKmZvcl8zX2VuZDoKCippZjIxX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjcKCS8vIGFzc2VydCgKCS8vICAgICAgIGFtb3VudFRvU3Rha2UgPj0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWluRW50cnlTdGFrZSwKCS8vICAgICAgICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU3Rha2U6IHVpbnQ2NAoJaW50IDIwOQoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk+PQoKCS8vIG11c3Qgc3Rha2UgYXQgbGVhc3QgdGhlIG1pbmltdW0gZm9yIHRoaXMgcG9vbAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3MwoJLy8gcG9vbHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzKQoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglpbnQgNDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA1IC8vIHBvb2xzOiAodWludDY0LHVpbnQxNix1aW50NjQpWzI0XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzQKCS8vIGN1ck51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc1CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl80OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfNF9lbmQKCgkvLyAqaWYyNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzYKCS8vIHBvb2xzW2ldLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0gbWF4UGVyUG9vbAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50VG9TdGFrZTogdWludDY0CgkrCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTw9CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc3CgkvLyByZXR1cm4gWwoJLy8gICAgICAgICAgIHsgaWQ6IHZhbGlkYXRvcklkLCBwb29sSWQ6IGkgKyAxLCBwb29sQXBwSWQ6IHBvb2xzW2ldLnBvb2xBcHBJZCB9LAoJLy8gICAgICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICAgICAgaXNOZXdTdGFrZXJUb1Byb3RvY29sLAoJLy8gICAgICAgICBdOwoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjZfZW5kOgoKKmZvcl80X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgliICpmb3JfNAoKKmZvcl80X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5ODUKCS8vIHJldHVybiBbeyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogMCwgcG9vbEFwcElkOiAwIH0sIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsIGlzTmV3U3Rha2VyVG9Qcm90b2NvbF07CglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwCglpbnQgMAoJZnJhbWVfZGlnIDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoJc2V0Yml0CglpbnQgMQoJZnJhbWVfZGlnIDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCglzZXRiaXQKCWNvbmNhdAoKKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDcKCXJldHN1YgoKLy8gbW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX21vdmVQb29sVG9Ob2RlOgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcG9vbEFwcElkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBtb3ZlUG9vbFRvTm9kZSh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIG1vdmVQb29sVG9Ob2RlCglpbnQgMQoJcmV0dXJuCgovLyBtb3ZlUG9vbFRvTm9kZSh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBwb29sQXBwSWQ6IHVpbnQ2NCwgbm9kZU51bTogdWludDY0KTogdm9pZAovLwovLyBGaW5kIHRoZSBzcGVjaWZpZWQgcG9vbCAoaW4gYW55IG5vZGUgbnVtYmVyKSBhbmQgbW92ZSBpdCB0byB0aGUgc3BlY2lmaWVkIG5vZGUuCi8vIFRoZSBwb29sIGFjY291bnQgaXMgZm9yY2VkIG9mZmxpbmUgaWYgbW92ZWQgc28gcHJpb3Igbm9kZSB3aWxsIHN0aWxsIHJ1biBmb3IgMzIwIHJvdW5kcyBidXQKLy8gbmV3IGtleSBnb2VzIG9ubGluZSBvbiBuZXcgbm9kZSBzb29uIGFmdGVyICgzMjAgcm91bmRzIGFmdGVyIGl0IGdvZXMgb25saW5lKQovLyBOby1vcCBpZiBzdWNjZXNzLCBhc3NlcnRzIGlmIG5vdCBmb3VuZCBvciBjYW4ndCBtb3ZlICAobm8gc3BhY2UgaW4gdGFyZ2V0KQovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSBwb29sQXBwSWQKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0KbW92ZVBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDEKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIgfHwKCS8vICAgICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCWR1cAoJYm56ICpza2lwX29yMwoJdHhuIFNlbmRlcgoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoJfHwKCipza2lwX29yMzoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDcKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDA4CgkvLyBhc3NlcnQobm9kZU51bSA+PSAxICYmIG5vZGVOdW0gPD0gTUFYX05PREVTLCAnbm9kZSBudW1iZXIgb3V0IG9mIGFsbG93YWJsZSByYW5nZScpCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDgKCTw9CgkmJgoKKnNraXBfYW5kMToKCS8vIG5vZGUgbnVtYmVyIG91dCBvZiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBmb3IgKGxldCBzcmNOb2RlSWR4ID0gMDsgc3JjTm9kZUlkeCA8IE1BWF9OT0RFUzsgc3JjTm9kZUlkeCArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCipmb3JfNToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBzcmNOb2RlSWR4IDwgTUFYX05PREVTCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCWludCA4Cgk8CglieiAqZm9yXzVfZW5kCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgTUFYX1BPT0xTX1BFUl9OT0RFOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl82OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGkgPCBNQVhfUE9PTFNfUEVSX05PREUKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDMKCTwKCWJ6ICpmb3JfNl9lbmQKCgkvLyAqaWYyN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEyCgkvLyBub2RlUG9vbEFzc2lnbm1lbnRzLm5vZGVzW3NyY05vZGVJZHhdLnBvb2xBcHBJZHNbaV0gPT09IHBvb2xBcHBJZAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0Cgk9PQoJYnogKmlmMjdfZW5kCgoJLy8gKmlmMjdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTMKCS8vIGFzc2VydChub2RlTnVtIC0gMSAhPT0gc3JjTm9kZUlkeCwgImNhbid0IG1vdmUgdG8gc2FtZSBub2RlIikKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCSE9CgoJLy8gY2FuJ3QgbW92ZSB0byBzYW1lIG5vZGUKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbc3JjTm9kZUlkeF0ucG9vbEFwcElkc1tpXSA9IDAKCWludCA5MDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE4CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLmdvT2ZmbGluZT4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLAoJLy8gICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnb09mZmxpbmUoKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE5CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDIzCgkvLyB0aGlzLmFkZFBvb2xUb05vZGUodmFsaWRhdG9ySWQsIHBvb2xBcHBJZCwgbm9kZU51bSkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgYWRkUG9vbFRvTm9kZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDI0CgkvLyByZXR1cm47CglyZXRzdWIKCippZjI3X2VuZDoKCipmb3JfNl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDExCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl82CgoqZm9yXzZfZW5kOgoKKmZvcl81X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTAKCS8vIHNyY05vZGVJZHggKz0gMQoJZnJhbWVfZGlnIDEgLy8gc3JjTm9kZUlkeDogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJYiAqZm9yXzUKCipmb3JfNV9lbmQ6CgkvLyBjb3VsZG4ndCBmaW5kIHBvb2wgYXBwIGlkIGluIG5vZGVzIHRvIG1vdmUKCWVycgoJcmV0c3ViCgovLyBlbXB0eVRva2VuUmV3YXJkcyh1aW50NjQsYWRkcmVzcyl1aW50NjQKKmFiaV9yb3V0ZV9lbXB0eVRva2VuUmV3YXJkczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciBlbXB0eVRva2VuUmV3YXJkcyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0CgljYWxsc3ViIGVtcHR5VG9rZW5SZXdhcmRzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlUb2tlblJld2FyZHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgcmVjZWl2ZXI6IEFkZHJlc3MpOiB1aW50NjQKLy8KLy8gU2VuZHMgdGhlIHJld2FyZCB0b2tlbnMgaGVsZCBpbiBwb29sIDEgdG8gc3BlY2lmaWVkIHJlY2VpdmVyLgovLyBUaGlzIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgYnkgdGhlIG93bmVyIHdoZW4gdGhleSB3YW50IHRvIGdldCByZXdhcmQgdG9rZW5zICdiYWNrJyB3aGljaCB0aGV5IHNlbnQgdG8KLy8gdGhlIGZpcnN0IHBvb2wgKGxpa2VseSBiZWNhdXNlIHZhbGlkYXRvciBpcyBzdW5zZXR0aW5nLiAgQW55IHRva2VucyBjdXJyZW50bHkgJ3Jlc2VydmVkJyBmb3Igc3Rha2VycyB0byBjbGFpbSB3aWxsCi8vIE5PVCBiZSBzZW50IGFzIHRoZXkgbXVzdCBiZSBoZWxkIGJhY2sgZm9yIHN0YWtlcnMgdG8gbGF0ZXIgY2xhaW0uCi8vIFsgT05MWSBPV05FUiBDQU4gQ0FMTF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7QWRkcmVzc30gcmVjZWl2ZXIgLSB0aGUgYWNjb3VudCB0byBzZW5kIHRoZSB0b2tlbnMgdG8gKG11c3QgYWxyZWFkeSBiZSBvcHRlZC1pbiB0byB0aGUgcmV3YXJkIHRva2VuKQovLyBAcmV0dXJucyB7dWludDY0fSB0aGUgYW1vdW50IG9mIHJld2FyZCB0b2tlbiBzZW50CmVtcHR5VG9rZW5SZXdhcmRzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDQzCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXInCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDcKCS8vIHJld2FyZFRva2VuSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRUb2tlbklkCglpbnQgMTUzCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA0OAoJLy8gcmV3YXJkVG9rZW5IZWxkQmFjayA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJaW50IDI2MAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDkKCS8vIGFzc2VydChyZXdhcmRUb2tlbklkICE9PSAwLCAidGhpcyB2YWxpZGF0b3IgZG9lc24ndCBoYXZlIGEgcmV3YXJkIHRva2VuIGRlZmluZWQiKQoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0CglpbnQgMAoJIT0KCgkvLyB0aGlzIHZhbGlkYXRvciBkb2Vzbid0IGhhdmUgYSByZXdhcmQgdG9rZW4gZGVmaW5lZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTAKCS8vIHBvb2xPbmVBcHBJZCA9IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDUyCgkvLyB0b2tlblJld2FyZEJhbCA9IHBvb2xPbmVBcHBJZC5hZGRyZXNzLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQocmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDIgLy8gcG9vbE9uZUFwcElkOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgktCglmcmFtZV9idXJ5IDMgLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU1CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLnBheVRva2VuUmV3YXJkPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQsCgkvLyAgICAgICBtZXRob2RBcmdzOiBbcmVjZWl2ZXIsIHJld2FyZFRva2VuSWQsIHRva2VuUmV3YXJkQmFsXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU2CgkvLyBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQKCWZyYW1lX2RpZyAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA1NwoJLy8gbWV0aG9kQXJnczogW3JlY2VpdmVyLCByZXdhcmRUb2tlbklkLCB0b2tlblJld2FyZEJhbF0KCWZyYW1lX2RpZyAtMiAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAzIC8vIHRva2VuUmV3YXJkQmFsOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU5CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sT25lQXBwSWQuYWRkcmVzcy5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHJld2FyZFRva2VuSWQpKSA9PT0gcmV3YXJkVG9rZW5IZWxkQmFjaywKCS8vICAgICAgICdiYWxhbmNlIG9mIHJlbWFpbmluZyByZXdhcmQgdG9rZW5zIHNob3VsZCBtYXRjaCB0aGUgaGVsZCBiYWNrIGFtb3VudCcKCS8vICAgICApCglmcmFtZV9kaWcgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCglmcmFtZV9kaWcgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMSAvLyByZXdhcmRUb2tlbkhlbGRCYWNrOiB1aW50NjQKCT09CgoJLy8gYmFsYW5jZSBvZiByZW1haW5pbmcgcmV3YXJkIHRva2VucyBzaG91bGQgbWF0Y2ggdGhlIGhlbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDYzCgkvLyByZXR1cm4gdG9rZW5SZXdhcmRCYWw7CglmcmFtZV9kaWcgMyAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiB2b2lkCi8vCi8vIExvZ3MgdGhlIGFkZGl0aW9uIG9mIGEgbmV3IHZhbGlkYXRvciB0byB0aGUgc3lzdGVtLCBpdHMgaW5pdGlhbCBvd25lciBhbmQgbWFuYWdlcgovLwovLwovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyIHZlcmlmaWVzIHRoZSBwYXNzZWQgaW4ga2V5IChmcm9tIGEgc3Rha2luZyBwb29sIGNhbGxpbmcgdXMgdG8gdXBkYXRlIG1ldHJpY3MpIGlzIHZhbGlkCi8vIGFuZCBtYXRjaGVzIHRoZSBpbmZvcm1hdGlvbiB3ZSBoYXZlIGluIG91ciBzdGF0ZS4gICdGYWtlJyBwb29scyBjb3VsZCBjYWxsIHVzIHRvIHVwZGF0ZSBvdXIgZGF0YSwgYnV0IHRoZXkKLy8gY2FuJ3QgZmFrZSB0aGUgaWRzIGFuZCBtb3N0IGltcG9ydGFudGx5IGFwcGxpY2F0aW9uIGlkKCEpIG9mIHRoZSBjYWxsZXIgdGhhdCBoYXMgdG8gbWF0Y2guCnZlcmlmeVBvb2xLZXlDYWxsZXI6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2MQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS5leGlzdHMsICJ0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gdGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgPD0gTUFYX1BPT0xTLCAncG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMjQKCTw9CgoJLy8gcG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYzCgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sS2V5LnBvb2xJZCA+IDAgJiYgKHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNikgPD0gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzLAoJLy8gICAgICAgJ3Bvb2wgaWQgb3V0c2lkZSBvZiByYW5nZSBvZiBwb29scyBjcmVhdGVkIGZvciB0aGlzIHZhbGlkYXRvcicKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAwCgk+CglkdXAKCWJ6ICpza2lwX2FuZDIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDI0MgoJaW50IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQyOgoJLy8gcG9vbCBpZCBvdXRzaWRlIG9mIHJhbmdlIG9mIHBvb2xzIGNyZWF0ZWQgZm9yIHRoaXMgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2OQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgcG9vbEtleS5wb29sQXBwSWQgPT09IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnBvb2xBcHBJZCwKCS8vICAgICAgICJUaGUgcGFzc2VkIGluIGFwcCBpZCBkb2Vzbid0IG1hdGNoIHRoZSBwYXNzZWQgaW4gaWRzIgoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk9PQoKCS8vIFRoZSBwYXNzZWQgaW4gYXBwIGlkIGRvZXNuJ3QgbWF0Y2ggdGhlIHBhc3NlZCBpbiBpZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTc0CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzYKCS8vIGFzc2VydChwb29sS2V5LmlkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3ZhbGlkYXRvcklkJykgYXMgdWludDY0KSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLmdsb2JhbFN0YXRlKCd2YWxpZGF0b3JJZCcpCglhc3NlcnQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE3NwoJLy8gYXNzZXJ0KHBvb2xLZXkucG9vbElkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3Bvb2xJZCcpIGFzIHVpbnQ2NCkpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5nbG9iYWxTdGF0ZSgncG9vbElkJykKCWFzc2VydAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyByZXZlcmlmeU5GRE93bmVyc2hpcCh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogdm9pZAovLwovLyBUaGlzIG1ldGhvZCB2ZXJpZmllcyB0aGUgb3duZXJzaGlwIG9mIE5GRCAoTmFtZWQgRnVuY3Rpb24gRGF0YSkgYnkgYSB2YWxpZGF0b3IuCi8vIElmIHRoZSBvd25lcnNoaXAgaXMgbm8gbG9uZ2VyIHZhbGlkLCBpdCByZW1vdmVzIHRoZSBORkQgZnJvbSB0aGUgdmFsaWRhdG9yJ3MgY29uZmlndXJhdGlvbi4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3Igd2hvc2UgZGF0YSBzaG91bGQgYmUgcmUtZXZhbHVhdGVkLgpyZXZlcmlmeU5GRE93bmVyc2hpcDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4NwoJLy8gdmFsaWRhdG9yQ29uZmlnID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsaWRhdG9yQ29uZmlnCgoJLy8gKmlmMjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4OAoJLy8gdmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8gIT09IDAKCWludCA3MgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkxCgkvLyBuZmRPd25lciA9IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKSBhcyBBZGRyZXNzCglpbnQgNzIKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9idXJ5IDEgLy8gbmZkT3duZXI6IGFkZHJlc3MKCgkvLyAqaWYyOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkzCgkvLyB2YWxpZGF0b3JDb25maWcub3duZXIgIT09IG5mZE93bmVyICYmIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSBuZmRPd25lcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQzCglpbnQgNDAKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJJiYKCipza2lwX2FuZDM6CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE5NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IDAKCWludCA3MgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYyOV9lbmQ6CgoqaWYyOF9lbmQ6CglyZXRzdWIKCi8vIHZhbGlkYXRlQ29uZmlnKGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnKTogdm9pZAp2YWxpZGF0ZUNvbmZpZzoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjAyCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZW50cnlHYXRpbmdUeXBlID49IEdBVElOR19UWVBFX05PTkUgJiYgY29uZmlnLmVudHJ5R2F0aW5nVHlwZSA8PSBHQVRJTkdfVFlQRV9DT05TVF9NQVgsCgkvLyAgICAgICAnZ2F0aW5nIHR5cGUgbm90IHZhbGlkJwoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgMAoJPj0KCWR1cAoJYnogKnNraXBfYW5kNAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDgwIDEKCWJ0b2kKCWludCA0Cgk8PQoJJiYKCipza2lwX2FuZDQ6CgkvLyBnYXRpbmcgdHlwZSBub3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA2CgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZXBvY2hSb3VuZExlbmd0aCA+PSBNSU5fRVBPQ0hfTEVOR1RIICYmIGNvbmZpZy5lcG9jaFJvdW5kTGVuZ3RoIDw9IE1BWF9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICAnZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kNQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMTAwMDAwMAoJPD0KCSYmCgoqc2tpcF9hbmQ1OgoJLy8gZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjEwCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yID49IE1JTl9QQ1RfVE9fVkFMSURBVE9SICYmIGNvbmZpZy5wZXJjZW50VG9WYWxpZGF0b3IgPD0gTUFYX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICAnY29tbWlzc2lvbiBwZXJjZW50YWdlIG5vdCB2YWxpZCcKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgk+PQoJZHVwCglieiAqc2tpcF9hbmQ2CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAxMDAwMDAwCgk8PQoJJiYKCipza2lwX2FuZDY6CgkvLyBjb21taXNzaW9uIHBlcmNlbnRhZ2Ugbm90IHZhbGlkCglhc3NlcnQKCgkvLyAqaWYzMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjE0CgkvLyBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmMzBfZW5kCgoJLy8gKmlmMzBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMTUKCS8vIGFzc2VydCgKCS8vICAgICAgICAgY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgICAndmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAnCgkvLyAgICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTc3IDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAKCWFzc2VydAoKKmlmMzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMjAKCS8vIGFzc2VydChjb25maWcubWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIwOSA4CglidG9pCglpbnQgMTAwMDAwMAoJPj0KCgkvLyBzdGFraW5nIHBvb2wgbXVzdCBoYXZlIG1pbmltdW0gZW50cnkgb2YgMSBhbGdvCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyMgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgY29uZmlnLnBvb2xzUGVyTm9kZSA+IDAgJiYgY29uZmlnLnBvb2xzUGVyTm9kZSA8PSBNQVhfUE9PTFNfUEVSX05PREUsCgkvLyAgICAgICAnbnVtYmVyIG9mIHBvb2xzIHBlciBub2RlIGV4Y2VlZHMgYWxsb3dlZCBudW1iZXInCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNSAxCglidG9pCglpbnQgMAoJPgoJZHVwCglieiAqc2tpcF9hbmQ3CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMjI1IDEKCWJ0b2kKCWludCAzCgk8PQoJJiYKCipza2lwX2FuZDc6CgkvLyBudW1iZXIgb2YgcG9vbHMgcGVyIG5vZGUgZXhjZWVkcyBhbGxvd2VkIG51bWJlcgoJYXNzZXJ0CgoJLy8gKmlmMzFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyNgoJLy8gY29uZmlnLnN1bnNldHRpbmdPbiAhPT0gMAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNiA4CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjMxX2VuZAoKCS8vICppZjMxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjI3CgkvLyBhc3NlcnQoY29uZmlnLnN1bnNldHRpbmdPbiA+IGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wLCAnc3Vuc2V0dGluZ09uIG11c3QgYmUgbGF0ZXIgdGhhbiBub3cgaWYgc2V0JykKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAyMjYgOAoJYnRvaQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJPgoKCS8vIHN1bnNldHRpbmdPbiBtdXN0IGJlIGxhdGVyIHRoYW4gbm93IGlmIHNldAoJYXNzZXJ0CgoqaWYzMV9lbmQ6CglyZXRzdWIKCi8vIGNhbGxQb29sQWRkU3Rha2Uoc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuLCBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBtYnJBbXRQYWlkOiB1aW50NjQsIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2xlYW4sIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbik6IHZvaWQKLy8KLy8gQWRkcyBhIHN0YWtlcnMgYW1vdW50IG9mIGFsZ28gdG8gYSB2YWxpZGF0b3IgcG9vbCwgdHJhbnNmZXJyaW5nIHRoZSBhbGdvIHdlIHJlY2VpdmVkIGZyb20gdGhlbSAoYWxyZWFkeSB2ZXJpZmllZAovLyBieSBvdXIgY2FsbGVyKSB0byB0aGUgc3Rha2luZyBwb29sIGFjY291bnQsIGFuZCB0aGVuIHRlbGxpbmcgaXQgYWJvdXQgdGhlIGFtb3VudCBiZWluZyBhZGRlZCBmb3IgdGhlIHNwZWNpZmllZAovLyBzdGFrZXIuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sS2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsaWRhdG9yIHBvb2wuCi8vIEBwYXJhbSB7dWludDY0fSBtYnJBbXRQYWlkIC0gQW1vdW50IHRoZSB1c2VyIGlzIGxlYXZpbmcgYmVoaW5kIGluIHRoZSB2YWxpZGF0b3IgdG8gcGF5IGZvciB0aGVpciBzdGFrZXIgTUJSIGNvc3QKLy8gQHBhcmFtIHtib29sZWFufSBpc05ld1N0YWtlclRvVmFsaWRhdG9yIC0gaWYgdGhpcyBpcyBhIG5ldywgZmlyc3QtdGltZSBzdGFrZXIgdG8gdGhlIHZhbGlkYXRvcgovLyBAcGFyYW0ge2Jvb2xlYW59IGlzTmV3U3Rha2VyVG9Qcm90b2NvbCAtIGlmIHRoaXMgaXMgYSBuZXcsIGZpcnN0LXRpbWUgc3Rha2VyIHRvIHRoZSBwcm90b2NvbApjYWxsUG9vbEFkZFN0YWtlOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjQ5CgkvLyBwb29sQXBwSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS5wb29sQXBwSWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFN0YWtpbmdQb29sLnByb3RvdHlwZS5hZGRTdGFrZSwgdWludDY0Pih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgLy8gVEhJUyBJUyBBIFNFTkQgb2YgdGhlIGFtb3VudCByZWNlaXZlZCByaWdodCBiYWNrIG91dCBhbmQgaW50byB0aGUgc3Rha2luZyBwb29sIGNvbnRyYWN0IGFjY291bnQuCgkvLyAgICAgICAgIHsgYW1vdW50OiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQsIHJlY2VpdmVyOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuYWRkcmVzcyB9LAoJLy8gICAgICAgICAvLyA9PT09PT09CgkvLyAgICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQuc2VuZGVyLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyByZWNlaXZlcjogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYWRkU3Rha2UocGF5LGFkZHJlc3MpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpCglmcmFtZV9kaWcgMCAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNTUKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgLy8gPT09PT09PQoJLy8gICAgICAgICAvLyBUSElTIElTIEEgU0VORCBvZiB0aGUgYW1vdW50IHJlY2VpdmVkIHJpZ2h0IGJhY2sgb3V0IGFuZCBpbnRvIHRoZSBzdGFraW5nIHBvb2wgY29udHJhY3QgYWNjb3VudC4KCS8vICAgICAgICAgeyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZCwgcmVjZWl2ZXI6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5hZGRyZXNzIH0sCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgc3Rha2VkQW1vdW50UGF5bWVudC5zZW5kZXIsCgkvLyAgICAgICBdCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglidG9pCgoJLy8gKmlmMzJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2MwoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCA1MDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCA1MDAKCTwKCWJ6ICppZjMyX2VuZAoKCS8vICppZjMyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjY0CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OAoJLy8gcG9vbE51bVN0YWtlcnMgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ251bVN0YWtlcnMnKSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmdsb2JhbFN0YXRlKCdudW1TdGFrZXJzJykKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xOdW1TdGFrZXJzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OQoJLy8gcG9vbEFsZ29TdGFrZWQgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpIGFzIHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpCglhc3NlcnQKCWZyYW1lX2J1cnkgMiAvLyBwb29sQWxnb1N0YWtlZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyA9IHBvb2xOdW1TdGFrZXJzIGFzIHVpbnQxNgoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJZnJhbWVfZGlnIDEgLy8gcG9vbE51bVN0YWtlcnM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjcxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgPSBwb29sQWxnb1N0YWtlZAoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWZyYW1lX2RpZyAyIC8vIHBvb2xBbGdvU3Rha2VkOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vICppZjMzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzQKCS8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IKCWZyYW1lX2RpZyAtNCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sZWFuCglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI3NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyArPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjMzX2VuZDoKCS8vICppZjM0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzcKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbAoJZnJhbWVfZGlnIC01IC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbgoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzgKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSArPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCSsKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoqaWYzNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgKz0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgLSBtYnJBbXRQYWlkCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyB1cGRhdGVTdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IHZvaWQKdXBkYXRlU3Rha2VyUG9vbFNldDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NQoJLy8gYXNzZXJ0KHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLmV4aXN0cykKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NwoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDAgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjg4CgkvLyBmaXJzdEVtcHR5ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzc6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl83X2VuZAoKCS8vICppZjM1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTAKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAwIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmMzVfZW5kCgoJLy8gKmlmMzVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTIKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMzVfZW5kOgoJLy8gKmlmMzZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI5NAoJLy8gZmlyc3RFbXB0eSA9PT0gMCAmJiBwb29sU2V0W2ldLmlkID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQ4CglmcmFtZV9kaWcgMCAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCSYmCgoqc2tpcF9hbmQ4OgoJYnogKmlmMzZfZW5kCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTUKCS8vIGZpcnN0RW1wdHkgPSBpICsgMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKKmlmMzZfZW5kOgoKKmZvcl83X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODkKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzcKCipmb3JfN19lbmQ6CgkvLyAqaWYzN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjk4CgkvLyBmaXJzdEVtcHR5ID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gTm8gZW1wdHkgc2xvdCBhdmFpbGFibGUgaW4gdGhlIHN0YWtlciBwb29sIHNldAoJZXJyCgoqaWYzN19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMwMQoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbZmlyc3RFbXB0eSAtIDFdID0gcG9vbEtleQoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMQoJLQoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIHJlbW92ZUZyb21TdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IFtib29sZWFuLCBib29sZWFuXQovLwovLyBSZW1vdmVzIGEgcG9vbCBrZXkgZnJvbSB0aGUgc3Rha2VyJ3MgYWN0aXZlIHBvb2wgc2V0IC0gZmFpbHMgaWYgbm90IGZvdW5kICghKQovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFRoZSBwb29sIGtleSB0aGV5IHNob3VsZCBiZSBzdG9yZWQgaW4KLy8KLy8gQHJldHVybiBbYm9vbGVhbiwgYm9vbGVhbl0gW2lzIHRoZSBzdGFrZXIgZ29uZSBmcm9tIEFMTCBwb29scyBvZiB0aGUgZ2l2ZW4gVkFMSURBVE9SLCBhbmQgaXMgc3Rha2VyIGdvbmUgZnJvbSBBTEwgcG9vbHNdCnJlbW92ZUZyb21TdGFrZXJQb29sU2V0OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE0CgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTUKCS8vIGluQW55UG9vbENvdW50ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTYKCS8vIGZvdW5kID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMxOAoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfODoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpIDwgdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzhfZW5kCgoJLy8gKmlmMzhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyMAoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgliICpmb3JfOF9jb250aW51ZQoKKmlmMzhfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjMKCS8vIGluQW55UG9vbENvdW50ICs9IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gaW5BbnlQb29sQ291bnQ6IHVpbnQ2NAoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjQKCS8vIHBvb2xTZXRbaV0uaWQgPT09IHBvb2xLZXkuaWQKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCWJ6ICppZjM5X2VuZAoKCS8vICppZjM5X2NvbnNlcXVlbnQKCS8vICppZjQwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjUKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmNDBfZWxzZQoKCS8vICppZjQwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzI2CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyOAoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbaV0gPSB7IGlkOiAwLCBwb29sSWQ6IDAsIHBvb2xBcHBJZDogMCB9CglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgliICppZjQwX2VuZAoKKmlmNDBfZWxzZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzMwCgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCippZjQwX2VuZDoKCippZjM5X2VuZDoKCipmb3JfOF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpICs9IDEKCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCWIgKmZvcl84CgoqZm9yXzhfZW5kOgoJLy8gKmlmNDFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzNAoJLy8gIWZvdW5kCglmcmFtZV9kaWcgMiAvLyBmb3VuZDogYm9vbAoJIQoJYnogKmlmNDFfZW5kCgoJLy8gKmlmNDFfY29uc2VxdWVudAoJLy8gTm8gbWF0Y2hpbmcgc2xvdCBmb3VuZCB3aGVuIHRvbGQgdG8gcmVtb3ZlIGEgcG9vbCBmcm9tIHRoZSBzdGFrZXJzIHNldAoJZXJyCgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzOAoJLy8gcmV0dXJuIFtpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPT09IDAsIGluQW55UG9vbENvdW50ID09PSAwXTsKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CglpbnQgMAoJPT0KCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAwCgk9PQoJc2V0Yml0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgovLyBhZGRQb29sVG9Ob2RlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHBvb2xBcHBJZDogdWludDY0LCBub2RlTnVtOiB1aW50NjQpOiB2b2lkCmFkZFBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDIKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQzCgkvLyBtYXhQb29sc1Blck5vZGVGb3JUaGlzVmFsaWRhdG9yID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcucG9vbHNQZXJOb2RlIGFzIHVpbnQ2NAoJaW50IDIyNQoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDUKCS8vIGFzc2VydChub2RlTnVtID49IDEgJiYgbm9kZU51bSA8PSBNQVhfTk9ERVMsICdub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDEKCT49CglkdXAKCWJ6ICpza2lwX2FuZDkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCA4Cgk8PQoJJiYKCipza2lwX2FuZDk6CgkvLyBub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3I7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzk6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0NwoJLy8gaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0Cgk8CglieiAqZm9yXzlfZW5kCgoJLy8gKmlmNDJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0OAoJLy8gbm9kZVBvb2xBc3NpZ25tZW50cy5ub2Rlc1tub2RlTnVtIC0gMV0ucG9vbEFwcElkc1tpXSA9PT0gMAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjQyX2VuZAoKCS8vICppZjQyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUwCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbbm9kZU51bSAtIDFdLnBvb2xBcHBJZHNbaV0gPSBwb29sQXBwSWQKCWludCA5MDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUxCgkvLyByZXR1cm47CglyZXRzdWIKCippZjQyX2VuZDoKCipmb3JfOV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl85CgoqZm9yXzlfZW5kOgoJLy8gbm8gYXZhaWxhYmxlIHNwYWNlIGluIHNwZWNpZmllZCBub2RlIGZvciB0aGlzIHBvb2wKCWVycgoJcmV0c3ViCgovLyBkb2VzU3Rha2VyTWVldEdhdGluZyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiBhIHN0YWtlciBtZWV0cyB0aGUgZ2F0aW5nIHJlcXVpcmVtZW50cyBzcGVjaWZpZWQgYnkgdGhlIHZhbGlkYXRvci4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gVGhlIHZhbHVlIHRvIHZlcmlmeSBhZ2FpbnN0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzLgovLyBAcmV0dXJucyB7dm9pZH0gb3IgYXNzZXJ0cyBpZiByZXF1aXJlbWVudHMgbm90IG1ldC4KZG9lc1N0YWtlck1lZXRHYXRpbmc6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNjUKCS8vIHR5cGUgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdHlwZTogdWludDgKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzY2CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9OT05FCglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDAKCT09CglieiAqaWY0M19lbmQKCgkvLyAqaWY0M19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2NwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWY0M19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2OQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDEgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzAKCS8vIGNvbmZpZyA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnKQoJaW50IDAKCWludCAyNDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0NF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzc0CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWSB8fAoJLy8gICAgICAgdHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRfSUQgfHwKCS8vICAgICAgIHR5cGUgPT09IEdBVElOR19UWVBFX0NSRUFURURfQllfTkZEX0FERFJFU1NFUwoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3I0CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09Cgl8fAoKKnNraXBfb3I0OgoJZHVwCglibnogKnNraXBfb3I1CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDMKCT09Cgl8fAoKKnNraXBfb3I1OgoJYnogKmlmNDRfZW5kCgoJLy8gKmlmNDRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzgKCS8vIGFzc2VydCh2YWx1ZVRvVmVyaWZ5ICE9PSAwKQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM3OQoJLy8gYmFsUmVxdWlyZWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCgkvLyAqaWY0NV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgwCgkvLyBiYWxSZXF1aXJlZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWY0NV9lbmQKCgkvLyAqaWY0NV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM4MQoJLy8gYmFsUmVxdWlyZWQgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCippZjQ1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHN0YWtlci5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpKSA+PSBiYWxSZXF1aXJlZCwKCS8vICAgICAgICAgJ211c3QgaGF2ZSByZXF1aXJlZCBtaW5pbXVtIGJhbGFuY2Ugb2YgdmFsaWRhdG9yIGRlZmluZWQgdG9rZW4gdG8gYWRkIHN0YWtlJwoJLy8gICAgICAgKQoJZnJhbWVfZGlnIDEgLy8gc3Rha2VyOiBhZGRyZXNzCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJPj0KCgkvLyBtdXN0IGhhdmUgcmVxdWlyZWQgbWluaW11bSBiYWxhbmNlIG9mIHZhbGlkYXRvciBkZWZpbmVkIHRva2VuIHRvIGFkZCBzdGFrZQoJYXNzZXJ0CgoqaWY0NF9lbmQ6CgkvLyAqaWY0Nl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzg4CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWQoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJYnogKmlmNDZfZW5kCgoJLy8gKmlmNDZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzODkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IgPT09IGNvbmZpZy5lbnRyeUdhdGluZ0FkZHJlc3MsCgkvLyAgICAgICAgICdzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBjcmVhdGVkIGJ5IGNyZWF0b3IgdGhhdCB0aGUgdmFsaWRhdG9yIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZScKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDgxIDMyCgk9PQoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IHRoZSB2YWxpZGF0b3IgZGVmaW5lZCBhcyBhIHJlcXVpcmVtZW50IHRvIHN0YWtlCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vICppZjQ3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTQKCS8vIHR5cGUgPT09IEdBVElOR19UWVBFX0FTU0VUX0lECglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09CglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM5NQoJLy8gYXNzZXJ0KHZhbHVlVG9WZXJpZnkgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk2CgkvLyBmb3VuZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSA0IC8vIGZvdW5kOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTcKCS8vIGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0cwoJZnJhbWVfZGlnIDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTEzIDMyCglkdXAKCWZyYW1lX2J1cnkgNSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yT2ZfMDoKCS8vICppZjQ4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTgKCS8vIHZhbHVlVG9WZXJpZnkgPT09IGFzc2V0SWQKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGFzc2V0SWQ6IHVpbnQ2NAoJPT0KCWJ6ICppZjQ4X2VuZAoKCS8vICppZjQ4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk5CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDQgLy8gZm91bmQ6IGJvb2wKCWIgKmZvck9mXzBfZW5kCgoqaWY0OF9lbmQ6CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMzIgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyA1IC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQwMwoJLy8gYXNzZXJ0KGZvdW5kLCAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgaWRlbnRpY2FsIHRvIHRoZSBhc3NldCBpZCBkZWZpbmVkIGFzIGEgcmVxdWlyZW1lbnQgdG8gc3Rha2UnKQoJZnJhbWVfZGlnIDQgLy8gZm91bmQ6IGJvb2wKCgkvLyBzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBpZGVudGljYWwgdG8gdGhlIGFzc2V0IGlkIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZQoJYXNzZXJ0CgoqaWY0N19lbmQ6CgkvLyAqaWY0OV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA1CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgMwoJPT0KCWJ6ICppZjQ5X2VuZAoKCS8vICppZjQ5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA4CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSwgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IpLAoJLy8gICAgICAgICAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgaXMgb25lIG9mIHRoZSBsaW5rZWQgYWRkcmVzc2VzIGluIGFuIG5mZCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IGlzIG9uZSBvZiB0aGUgbGlua2VkIGFkZHJlc3NlcyBpbiBhbiBuZmQKCWFzc2VydAoKKmlmNDlfZW5kOgoJLy8gKmlmNTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQxMwoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfU0VHTUVOVF9PRl9ORkQKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgNAoJPT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE1CgkvLyB1c2VyT2ZmZXJlZE5GREFwcElEID0gdmFsdWVUb1ZlcmlmeQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfYnVyeSA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE2CgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQodXNlck9mZmVyZWRORkRBcHBJRCksICdwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZCcpCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE5CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHJhd0J5dGVzKEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpID09PSByYXdCeXRlcyhzdGFrZXIpIHx8CgkvLyAgICAgICAgICAgdGhpcy5pc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QodXNlck9mZmVyZWRORkRBcHBJRCwgc3Rha2VyKSwKCS8vICAgICAgICAgInByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIiCgkvLyAgICAgICApCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmY3NzZlNjU3MjJlNjEgLy8gImkub3duZXIuYSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHVzZXJPZmZlcmVkTkZEQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9kaWcgMSAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjYKCWZyYW1lX2RpZyAxIC8vIHN0YWtlcjogYWRkcmVzcwoJZnJhbWVfZGlnIDggLy8gdXNlck9mZmVyZWRORkRBcHBJRDogdWludDY0CgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoJfHwKCipza2lwX29yNjoKCS8vIHByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDI2CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIGJ0b2koQXBwSUQuZnJvbVVpbnQ2NCh1c2VyT2ZmZXJlZE5GREFwcElEKS5nbG9iYWxTdGF0ZSgnaS5wYXJlbnRBcHBJRCcpIGFzIGJ5dGVzKSA9PT0KCS8vICAgICAgICAgICBjb25maWcuZW50cnlHYXRpbmdBc3NldHNbMF0sCgkvLyAgICAgICAgICdzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU3MDYxNzI2NTZlNzQ0MTcwNzA0OTQ0IC8vICJpLnBhcmVudEFwcElEIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kucGFyZW50QXBwSUQnKQoJYXNzZXJ0CglidG9pCglmcmFtZV9kaWcgMiAvLyBjb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMTMgOAoJYnRvaQoJPT0KCgkvLyBzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudAoJYXNzZXJ0CgoqaWY1MF9lbmQ6CglyZXRzdWIKCi8vIGlzTkZEQXBwSURWYWxpZChuZmRBcHBJRDogdWludDY0KTogYm9vbGVhbgovLwovLyBDaGVja3MgaWYgdGhlIGdpdmVuIE5GRCBBcHAgaWQgaXMgdmFsaWQuICBVc2luZyBvbmx5IHRoZSBBcHAgaWQgdGhlcmUncyBubyB2YWxpZGF0aW9uIGFnYWluc3QgdGhlIG5hbWUgKGllOiB0aGF0IG5mZCBYIGlzIG5hbWUgWSkKLy8gU28gaXQncyBhc3N1bWVkIGZvciB0aGUgY2FsbGVyLCB0aGUgYXBwIGlkIGFsb25lIGlzIGZpbmUuICBUaGUgbmFtZSBpcyBmZXRjaGVkIGZyb20gdGhlIHNwZWNpZmllZCBhcHAgaWQgYW5kIHRoZSB0d28KLy8gdG9nZXRoZXIgYXJlIHVzZWQgZm9yIHZhbGlkaXR5IGNoZWNrIGNhbGwgdG8gdGhlIG5mZCByZWdpc3RyeS4KLy8KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIE5GRCBBcHAgaWQgdG8gdmVyaWZ5LgovLwovLyBAcmV0dXJucyB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIE5GRCBBcHAgaWQgaXMgdmFsaWQsIG90aGVyd2lzZSBmYWxzZS4KaXNORkRBcHBJRFZhbGlkOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0NQoJLy8gdXNlck9mZmVyZWRORkROYW1lID0gQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kubmFtZScpIGFzIHN0cmluZwoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmU2MTZkNjUgLy8gImkubmFtZSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKS5nbG9iYWxTdGF0ZSgnaS5uYW1lJykKCWFzc2VydAoJZnJhbWVfYnVyeSAwIC8vIHVzZXJPZmZlcmVkTkZETmFtZTogc3RyaW5nCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NDcKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCB1c2VyT2ZmZXJlZE5GRE5hbWUsIGl0b2IobmZkQXBwSUQpXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQobmZkQXBwSUQpXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0OAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDQ5CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgdXNlck9mZmVyZWRORkROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMCAvLyB1c2VyT2ZmZXJlZE5GRE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDUwCgkvLyBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0KCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ1MgoJLy8gcmV0dXJuIGJ0b2kodGhpcy5pdHhuLmxhc3RMb2cpID09PSAxOwoJaXR4biBMYXN0TG9nCglidG9pCglpbnQgMQoJPT0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KG5mZEFwcElEOiB1aW50NjQsIGFkZHJUb0ZpbmQ6IEFkZHJlc3MpOiBib29sZWFuCi8vCi8vIENoZWNrcyBpZiB0aGUgc3BlY2lmaWVkIGFkZHJlc3MgaXMgcHJlc2VudCBpbiBhbiBORkRzIGxpc3Qgb2YgdmVyaWZpZWQgYWRkcmVzc2VzLgovLyBUaGUgTkZEIGlzIGFzc3VtZWQgdG8gaGF2ZSBhbHJlYWR5IGJlZW4gdmFsaWRhdGVkIGFzIG9mZmljaWFsLgovLwovLyBAcGFyYW0ge3VpbnQ2NH0gbmZkQXBwSUQgLSBUaGUgTkZEIGFwcGxpY2F0aW9uIGlkLgovLyBAcGFyYW0ge0FkZHJlc3N9IGFkZHJUb0ZpbmQgLSBUaGUgYWRkcmVzcyB0byBmaW5kIGluIHRoZSB2LmNhQWxnby4wLmFzIHByb3BlcnR5Ci8vIEByZXR1cm4ge2Jvb2xlYW59IC0gYHRydWVgIGlmIHRoZSBhZGRyZXNzIGlzIHByZXNlbnQsIGBmYWxzZWAgb3RoZXJ3aXNlLgppc0FkZHJlc3NJbk5GRENBQWxnb0xpc3Q6Cglwcm90byAyIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3JlYWRfcHJvcGVydHknLCAndi5jYUFsZ28uMC5hcyddLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKQoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY2CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsncmVhZF9wcm9wZXJ0eScsICd2LmNhQWxnby4wLmFzJ10KCWJ5dGUgMHg3MjY1NjE2NDVmNzA3MjZmNzA2NTcyNzQ3OSAvLyAicmVhZF9wcm9wZXJ0eSIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4NzYyZTYzNjE0MTZjNjc2ZjJlMzAyZTYxNzMgLy8gInYuY2FBbGdvLjAuYXMiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OAoJLy8gY2FBbGdvRGF0YSA9IHRoaXMuaXR4bi5sYXN0TG9nCglpdHhuIExhc3RMb2cKCWZyYW1lX2J1cnkgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBjYUFsZ29EYXRhLmxlbmd0aDsgaSArPSAzMikKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoqZm9yXzEwOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjkKCS8vIGkgPCBjYUFsZ29EYXRhLmxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCWxlbgoJPAoJYnogKmZvcl8xMF9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3MAoJLy8gYWRkciA9IGV4dHJhY3QzKGNhQWxnb0RhdGEsIGksIDMyKQoJZnJhbWVfZGlnIDAgLy8gY2FBbGdvRGF0YTogYnl0ZVtdCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCAzMgoJZXh0cmFjdDMKCWZyYW1lX2J1cnkgMiAvLyBhZGRyOiBieXRlW10KCgkvLyAqaWY1MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDcxCgkvLyBhZGRyICE9PSByYXdCeXRlcyhnbG9iYWxzLnplcm9BZGRyZXNzKSAmJiBhZGRyID09PSByYXdCeXRlcyhhZGRyVG9GaW5kKQoJZnJhbWVfZGlnIDIgLy8gYWRkcjogYnl0ZVtdCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglkdXAKCWJ6ICpza2lwX2FuZDEwCglmcmFtZV9kaWcgMiAvLyBhZGRyOiBieXRlW10KCWZyYW1lX2RpZyAtMiAvLyBhZGRyVG9GaW5kOiBBZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDEwOgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NzIKCS8vIHJldHVybiB0cnVlOwoJaW50IDEKCWIgKmlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdCpyZXR1cm4KCippZjUxX2VuZDoKCipmb3JfMTBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gaSArPSAzMgoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMzIKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8xMAoKKmZvcl8xMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3NQoJLy8gcmV0dXJuIGZhbHNlOwoJaW50IDAKCippc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KLy8gTk9URTogdGhpcyBmdW5jdGlvbiBpcyBkZWZpbmVkIHR3aWNlIC0gaGVyZSBhbmQgaW4gc3Rha2luZyBwb29sIGNvbnRyYWN0LiAgQm90aCBtdXN0IGJlIGlkZW50aWNhbC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0ODQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ4NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX1NPRlRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDEwMAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGxvd2VkU3Rha2UoKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgdmFsaWRhdG9yIGJhc2VkIG9uIGEgcGVyY2VudGFnZSBvZiBhbGwgY3VycmVudCBvbmxpbmUgc3Rha2UuCi8vIEFkZGluZyBzdGFrZSBpcyBjb21wbGV0ZWx5IGJsb2NrZWQgYXQgdGhpcyBhbW91bnQuCm1heEFsbG93ZWRTdGFrZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0OTQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ5NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX0hBUkRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDE1MAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGdvQWxsb3dlZFBlclBvb2woKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgcG9vbCBhbmQgc3RpbGwgcmVjZWl2ZSBpbmNlbnRpdmVzIC0gd2UnbGwgdHJlYXQgdGhpcyBhcyB0aGUgJ21heCBwZXIgcG9vbCcKbWF4QWxnb0FsbG93ZWRQZXJQb29sOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDQKCS8vIHJldHVybiA3MF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgNzBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDkKCS8vIHJldHVybiAyXzAwMF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgMl8wMDBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIG1pbkJhbGFuY2VGb3JBY2NvdW50KGNvbnRyYWN0czogdWludDY0LCBleHRyYVBhZ2VzOiB1aW50NjQsIGFzc2V0czogdWludDY0LCBsb2NhbEludHM6IHVpbnQ2NCwgbG9jYWxCeXRlczogdWludDY0LCBnbG9iYWxJbnRzOiB1aW50NjQsIGdsb2JhbEJ5dGVzOiB1aW50NjQpOiB1aW50NjQKbWluQmFsYW5jZUZvckFjY291bnQ6Cglwcm90byA3IDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTIxCgkvLyBtaW5CYWwgPSBBTEdPUkFORF9BQ0NPVU5UX01JTl9CQUxBTkNFCglpbnQgMTAwMDAwCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMgoJLy8gbWluQmFsICs9IGNvbnRyYWN0cyAqIEFQUExJQ0FUSU9OX0JBU0VfRkVFCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGNvbnRyYWN0czogdWludDY0CglpbnQgMTAwMDAwCgkqCgkrCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMwoJLy8gbWluQmFsICs9IGV4dHJhUGFnZXMgKiBBUFBMSUNBVElPTl9CQVNFX0ZFRQoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBleHRyYVBhZ2VzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI0CgkvLyBtaW5CYWwgKz0gYXNzZXRzICogQVNTRVRfSE9MRElOR19GRUUKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYXNzZXRzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI1CgkvLyBtaW5CYWwgKz0gbG9jYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gbG9jYWxJbnRzOiB1aW50NjQKCWludCAyODUwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjYKCS8vIG1pbkJhbCArPSBnbG9iYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTYgLy8gZ2xvYmFsSW50czogdWludDY0CglpbnQgMjg1MDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI3CgkvLyBtaW5CYWwgKz0gbG9jYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNSAvLyBsb2NhbEJ5dGVzOiB1aW50NjQKCWludCA1MDAwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjgKCS8vIG1pbkJhbCArPSBnbG9iYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNyAvLyBnbG9iYWxCeXRlczogdWludDY0CglpbnQgNTAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI5CgkvLyByZXR1cm4gbWluQmFsOwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MzYKCS8vIHJldHVybiBTQ0JPWF9QRVJCT1ggKyB0b3RhbE51bUJ5dGVzICogU0NCT1hfUEVSQllURTsKCWludCAyNTAwCglmcmFtZV9kaWcgLTEgLy8gdG90YWxOdW1CeXRlczogdWludDY0CglpbnQgNDAwCgkqCgkrCglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQiCgltZXRob2QgImxvYWRTdGFraW5nQ29udHJhY3REYXRhKHVpbnQ2NCxieXRlW10pdm9pZCIKCW1ldGhvZCAiZmluYWxpemVTdGFraW5nQ29udHJhY3QoKXZvaWQiCgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkiCgltZXRob2QgImdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0TnVtVmFsaWRhdG9ycygpdWludDY0IgoJbWV0aG9kICJnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJnZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXIodWludDY0KShhZGRyZXNzLGFkZHJlc3MpIgoJbWV0aG9kICJnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdIgoJbWV0aG9kICJnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KSIKCW1ldGhvZCAiZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sIgoJbWV0aG9kICJnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10iCgltZXRob2QgImdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkiCgltZXRob2QgImdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkiCgltZXRob2QgImdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NCIKCW1ldGhvZCAiYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NCIKCW1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImNoYW5nZVZhbGlkYXRvck5GRCh1aW50NjQsdWludDY0LHN0cmluZyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImFkZFBvb2wocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAic2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KSIKCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJbWV0aG9kICJmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKSIKCW1ldGhvZCAibW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0ICphYmlfcm91dGVfbG9hZFN0YWtpbmdDb250cmFjdERhdGEgKmFiaV9yb3V0ZV9maW5hbGl6ZVN0YWtpbmdDb250cmFjdCAqYWJpX3JvdXRlX2dhcyAqYWJpX3JvdXRlX2dldE1ickFtb3VudHMgKmFiaV9yb3V0ZV9nZXRQcm90b2NvbENvbnN0cmFpbnRzICphYmlfcm91dGVfZ2V0TnVtVmFsaWRhdG9ycyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvckNvbmZpZyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvclN0YXRlICphYmlfcm91dGVfZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyICphYmlfcm91dGVfZ2V0UG9vbHMgKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQgKmFiaV9yb3V0ZV9nZXRQb29sSW5mbyAqYWJpX3JvdXRlX2dldEN1ck1heFN0YWtlUGVyUG9vbCAqYWJpX3JvdXRlX2RvZXNTdGFrZXJOZWVkVG9QYXlNQlIgKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQgKmFiaV9yb3V0ZV9nZXRUb2tlblBheW91dFJhdGlvICphYmlfcm91dGVfZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyAqYWJpX3JvdXRlX2dldE5GRFJlZ2lzdHJ5SUQgKmFiaV9yb3V0ZV9hZGRWYWxpZGF0b3IgKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRCAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyAqYWJpX3JvdXRlX2FkZFBvb2wgKmFiaV9yb3V0ZV9hZGRTdGFrZSAqYWJpX3JvdXRlX3NldFRva2VuUGF5b3V0UmF0aW8gKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzICphYmlfcm91dGVfc3Rha2VSZW1vdmVkICphYmlfcm91dGVfZmluZFBvb2xGb3JTdGFrZXIgKmFiaV9yb3V0ZV9tb3ZlUG9vbFRvTm9kZSAqYWJpX3JvdXRlX2VtcHR5VG9rZW5SZXdhcmRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAidXBkYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgVXBkYXRlQXBwbGljYXRpb24KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9uZmRSZWdpc3RyeUFwcElkCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbiAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV91cGRhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgdXBkYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgdXBkYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKdXBkYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjAyCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBZGRyZXNzLmZyb21BZGRyZXNzKCdMWjRWMklSVkxDWEZKSzRSRUpWNFRBR0VLRVlUQTJHTVI2VEMyMzQ0T0IzTDNBRjNNV1haNlpBRklRJykpCgl0eG4gU2VuZGVyCglhZGRyIExaNFYySVJWTENYRkpLNFJFSlY0VEFHRUtFWVRBMkdNUjZUQzIzNDRPQjNMM0FGM01XWFo2WkFGSVEKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA0CgkvLyB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmRlbGV0ZSgpCglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfZGVsCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIwNQoJLy8gdGhpcy5zdGFraW5nUG9vbEluaXRpYWxpemVkLnZhbHVlID0gZmFsc2UKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAwCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCS8vIGV4ZWN1dGUgY3JlYXRlQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgY3JlYXRlQXBwbGljYXRpb24KCWludCAxCglyZXR1cm4KCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCk6IHZvaWQKY3JlYXRlQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA5CgkvLyB0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUgPSBmYWxzZQoJYnl0ZSAweDY5NmU2OTc0IC8vICJpbml0IgoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTAKCS8vIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTEKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSA9IDAKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWludCAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTIKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlID0gMAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJaW50IDAKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQKKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0OgoJLy8gYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbml0U3Rha2luZ0NvbnRyYWN0KHVpbnQ2NCl2b2lkCgljYWxsc3ViIGluaXRTdGFraW5nQ29udHJhY3QKCWludCAxCglyZXR1cm4KCi8vIGluaXRTdGFraW5nQ29udHJhY3QoYXBwcm92YWxQcm9ncmFtU2l6ZTogdWludDY0KTogdm9pZAppbml0U3Rha2luZ0NvbnRyYWN0OgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIxNwoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5jcmVhdGUoYXBwcm92YWxQcm9ncmFtU2l6ZSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBhcHByb3ZhbFByb2dyYW1TaXplOiB1aW50NjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YSh1aW50NjQsYnl0ZVtdKXZvaWQKKmFiaV9yb3V0ZV9sb2FkU3Rha2luZ0NvbnRyYWN0RGF0YToKCS8vIGRhdGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZXh0cmFjdCAyIDAKCgkvLyBvZmZzZXQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbG9hZFN0YWtpbmdDb250cmFjdERhdGEodWludDY0LGJ5dGVbXSl2b2lkCgljYWxsc3ViIGxvYWRTdGFraW5nQ29udHJhY3REYXRhCglpbnQgMQoJcmV0dXJuCgovLyBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YShvZmZzZXQ6IHVpbnQ2NCwgZGF0YTogYnl0ZXMpOiB2b2lkCmxvYWRTdGFraW5nQ29udHJhY3REYXRhOgoJcHJvdG8gMiAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMQoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUpCglieXRlIDB4Njk2ZTY5NzQgLy8gImluaXQiCglhcHBfZ2xvYmFsX2dldAoJaW50IDAKCWdldGJpdAoJIQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIyMgoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5yZXBsYWNlKG9mZnNldCwgZGF0YSkKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoqYWJpX3JvdXRlX2ZpbmFsaXplU3Rha2luZ0NvbnRyYWN0OgoJLy8gZXhlY3V0ZSBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoJY2FsbHN1YiBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdAoJaW50IDEKCXJldHVybgoKLy8gZmluYWxpemVTdGFraW5nQ29udHJhY3QoKTogdm9pZApmaW5hbGl6ZVN0YWtpbmdDb250cmFjdDoKCXByb3RvIDAgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMjYKCS8vIHRoaXMuc3Rha2luZ1Bvb2xJbml0aWFsaXplZC52YWx1ZSA9IHRydWUKCWJ5dGUgMHg2OTZlNjk3NCAvLyAiaW5pdCIKCWludCAxCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZ2FzKCl2b2lkCiphYmlfcm91dGVfZ2FzOgoJLy8gZXhlY3V0ZSBnYXMoKXZvaWQKCWNhbGxzdWIgZ2FzCglpbnQgMQoJcmV0dXJuCgovLyBnYXMoKTogdm9pZAovLwovLyBnYXMgaXMgYSBkdW1teSBuby1vcCBjYWxsIHRoYXQgY2FuIGJlIHVzZWQgdG8gcG9vbC11cCByZXNvdXJjZSByZWZlcmVuY2VzIGFuZCBvcGNvZGUgY29zdApnYXM6Cglwcm90byAwIDAKCXJldHN1YgoKLy8gZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9nZXRNYnJBbW91bnRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE1ickFtb3VudHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRNYnJBbW91bnRzKCk6IE1ickFtb3VudHMKLy8KLy8gUmV0dXJucyB0aGUgTUJSIGFtb3VudHMgbmVlZGVkIGZvciB2YXJpb3VzIGFjdGlvbnM6Ci8vIFsKLy8gYWRkVmFsaWRhdG9yTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyB2YWxpZGF0b3IgLSBwYWlkIHRvIHZhbGlkYXRvciBjb250cmFjdAovLyBhZGRQb29sTWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGFkZCBhIG5ldyBwb29sIC0gcGFpZCB0byB2YWxpZGF0b3IKLy8gcG9vbEluaXRNYnI6IHVpbnQ2NCAtIG1iciBuZWVkZWQgdG8gaW5pdFN0b3JhZ2UoKSBvZiBwb29sIC0gcGFpZCB0byBwb29sIGl0c2VsZgovLyBhZGRTdGFrZXJNYnI6IHVpbnQ2NCAtIG1iciBzdGFrZXIgbmVlZHMgdG8gYWRkIHRvIGZpcnN0IHN0YWtpbmcgcGF5bWVudCAoc3RheXMgdy8gdmFsaWRhdG9yKQovLyBdCmdldE1ickFtb3VudHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQ2CgkvLyByZXR1cm4gewoJLy8gICAgICAgYWRkVmFsaWRhdG9yTWJyOiB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDEgLyogdiBwcmVmaXggKi8gKyBsZW48VmFsaWRhdG9ySWRUeXBlPigpICsgbGVuPFZhbGlkYXRvckluZm8+KCkpLAoJLy8gICAgICAgYWRkUG9vbE1icjogdGhpcy5taW5CYWxhbmNlRm9yQWNjb3VudCgKCS8vICAgICAgICAgMSwKCS8vICAgICAgICAgLy8gd2UgY291bGQgY2FsY3VsYXRlIHRoaXMgZGlyZWN0bHkgYnkgcmVmZXJlbmNpbmcgdGhlIHNpemUgb2Ygc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0gYnV0IGl0IHdvdWxkCgkvLyAgICAgICAgIC8vIG1lYW4gb3VyIGNhbGxlcnMgd291bGQgaGF2ZSB0byByZWZlcmVuY2UgdGhlIGJveCBBTkQgYnV5IHVwIGkvbyAtIHNvIGp1c3QgZ28gbWF4IG9uIGV4dHJhIHBhZ2VzCgkvLyAgICAgICAgIDMsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIDAsCgkvLyAgICAgICAgIFN0YWtpbmdQb29sLnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICAgICAgU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCS8vICAgICAgICksCgkvLyAgICAgICBwb29sSW5pdE1icjoKCS8vICAgICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoNyAvKiAnc3Rha2VycycgbmFtZSAqLyArIGxlbjxTdGFrZWRJbmZvPigpICogTUFYX1NUQUtFUlNfUEVSX1BPT0wpLAoJLy8gICAgICAgYWRkU3Rha2VyTWJyOgoJLy8gICAgICAgICAvLyBob3cgbXVjaCB0byBjaGFyZ2UgZm9yIGZpcnN0IHRpbWUgYSBzdGFrZXIgYWRkcyBzdGFrZSAtIHNpbmNlIHdlIGFkZCBhIHRyYWNraW5nIGJveCBwZXIgc3Rha2VyCgkvLyAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoMyAvKiAnc3BzJyBwcmVmaXggKi8gKyBsZW48QWRkcmVzcz4oKSArIGxlbjxWYWxpZGF0b3JQb29sS2V5PigpICogTUFYX1BPT0xTX1BFUl9TVEFLRVIpLCAvLyBzaXplIG9mIGtleSArIGFsbCB2YWx1ZXMKCS8vICAgICB9OwoJaW50IDExMDEKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCWl0b2IKCWludCAzCglpbnQgMTEKCWludCAwCglkdXBuIDIKCWludCAzCglpbnQgMQoJY2FsbHN1YiBtaW5CYWxhbmNlRm9yQWNjb3VudAoJaXRvYgoJY29uY2F0CglpbnQgMTAwMDAwCglpbnQgMTI4MDcKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCSsKCWl0b2IKCWNvbmNhdAoJaW50IDE3OQoJY2FsbHN1YiBjb3N0Rm9yQm94U3RvcmFnZQoJaXRvYgoJY29uY2F0CglyZXRzdWIKCi8vIGdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2dldFByb3RvY29sQ29uc3RyYWludHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2V0UHJvdG9jb2xDb25zdHJhaW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGdldFByb3RvY29sQ29uc3RyYWludHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRQcm90b2NvbENvbnN0cmFpbnRzKCk6IENvbnN0cmFpbnRzCi8vCi8vIFJldHVybnMgdGhlIHByb3RvY29sIGNvbnN0cmFpbnRzIHNvIHRoYXQgVUlzIGNhbiBsaW1pdCB3aGF0IHVzZXJzIHNwZWNpZnkgZm9yIHZhbGlkYXRvciBjb25maWd1cmF0aW9uIHBhcmFtZXRlcnMuCmdldFByb3RvY29sQ29uc3RyYWludHM6Cglwcm90byAwIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjcyCgkvLyByZXR1cm4gewoJLy8gICAgICAgZXBvY2hQYXlvdXRSb3VuZHNNaW46IE1JTl9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICBlcG9jaFBheW91dFJvdW5kc01heDogTUFYX0VQT0NIX0xFTkdUSCwKCS8vICAgICAgIG1pblBjdFRvVmFsaWRhdG9yV0ZvdXJEZWNpbWFsczogTUlOX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICBtYXhQY3RUb1ZhbGlkYXRvcldGb3VyRGVjaW1hbHM6IE1BWF9QQ1RfVE9fVkFMSURBVE9SLAoJLy8gICAgICAgbWluRW50cnlTdGFrZTogTUlOX0FMR09fU1RBS0VfUEVSX1BPT0wsCgkvLyAgICAgICBtYXhBbGdvUGVyUG9vbDogdGhpcy5tYXhBbGdvQWxsb3dlZFBlclBvb2woKSwKCS8vICAgICAgIG1heEFsZ29QZXJWYWxpZGF0b3I6IHRoaXMubWF4QWxsb3dlZFN0YWtlKCksCgkvLyAgICAgICBhbXRDb25zaWRlcmVkU2F0dXJhdGVkOiB0aGlzLmFsZ29TYXR1cmF0aW9uTGV2ZWwoKSwKCS8vICAgICAgIG1heE5vZGVzOiBNQVhfTk9ERVMsCgkvLyAgICAgICBtYXhQb29sc1Blck5vZGU6IE1BWF9QT09MU19QRVJfTk9ERSwKCS8vICAgICAgIG1heFN0YWtlcnNQZXJQb29sOiBNQVhfU1RBS0VSU19QRVJfUE9PTCwKCS8vICAgICB9OwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMGY0MjQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZjQyNDAwMDAwMDAwMDAwMGY0MjQwCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJaXRvYgoJY29uY2F0CgljYWxsc3ViIG1heEFsbG93ZWRTdGFrZQoJaXRvYgoJY29uY2F0CgljYWxsc3ViIGFsZ29TYXR1cmF0aW9uTGV2ZWwKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwYzgKCWNvbmNhdAoJcmV0c3ViCgovLyBnZXROdW1WYWxpZGF0b3JzKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXROdW1WYWxpZGF0b3JzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE51bVZhbGlkYXRvcnMoKXVpbnQ2NAoJY2FsbHN1YiBnZXROdW1WYWxpZGF0b3JzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TnVtVmFsaWRhdG9ycygpOiB1aW50NjQKLy8KLy8gUmV0dXJucyB0aGUgY3VycmVudCBudW1iZXIgb2YgdmFsaWRhdG9ycwpnZXROdW1WYWxpZGF0b3JzOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI5MgoJLy8gcmV0dXJuIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZTsKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yQ29uZmlnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JDb25maWcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRWYWxpZGF0b3JDb25maWcodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFZhbGlkYXRvckNvbmZpZwpnZXRWYWxpZGF0b3JDb25maWc6Cglwcm90byAxIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mjk3CgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWc7CglpbnQgMAoJaW50IDI0MgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvclN0YXRlKHVpbnQ2NCkodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JTdGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFZhbGlkYXRvclN0YXRlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBWYWxpZGF0b3JDdXJTdGF0ZQpnZXRWYWxpZGF0b3JTdGF0ZToKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMDIKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlOwoJaW50IDI0MiAvLyBoZWFkT2Zmc2V0CglpbnQgMjYKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKKmFiaV9yb3V0ZV9nZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih1aW50NjQpKGFkZHJlc3MsYWRkcmVzcykKCWNhbGxzdWIgZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBbQWRkcmVzcywgQWRkcmVzc10KZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMwNwoJLy8gcmV0dXJuIFt0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlcl07CglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgljb25jYXQKCXJldHN1YgoKLy8gZ2V0UG9vbHModWludDY0KSh1aW50NjQsdWludDE2LHVpbnQ2NClbXQoqYWJpX3JvdXRlX2dldFBvb2xzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdCgljYWxsc3ViIGdldFBvb2xzCglkdXAKCWxlbgoJaW50IDE4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0UG9vbHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xJbmZvW10KLy8KLy8gUmV0dXJuIGxpc3Qgb2YgYWxsIHBvb2xzIGZvciB0aGlzIHZhbGlkYXRvci4KLy8gQHBhcmFtIHt1aW50NjR9IHZhbGlkYXRvcklkCi8vIEByZXR1cm4ge1Bvb2xJbmZvW119IC0gYXJyYXkgb2YgcG9vbHMKLy8gTm90IGNhbGxhYmxlIGZyb20gb3RoZXIgY29udHJhY3RzIGJlY2F1c2UgPjFLIHJldHVybiBidXQgY2FuIGJlIGNhbGxlZCB3LyBzaW11bGF0ZSB3aGljaCBidW1wcyBsb2cgcmV0dXJucwpnZXRQb29sczoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzE4CgkvLyByZXREYXRhOiBQb29sSW5mb1tdID0gW10KCWJ5dGUgMHgKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMxOQoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMpCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWludCA0MzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyMAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJPAoJYnogKmZvcl8wX2VuZAoKCS8vICppZjBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIxCgkvLyBwb29sU2V0W2ldLnBvb2xBcHBJZCA9PT0gMAoJZnJhbWVfZGlnIDEgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvcl8wX2VuZAoKKmlmMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzI1CgkvLyByZXREYXRhLnB1c2gocG9vbFNldFtpXSkKCWZyYW1lX2RpZyAwIC8vIHJldERhdGE6IFBvb2xJbmZvW10KCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTgKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoqZm9yXzBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyNwoJLy8gcmV0dXJuIHJldERhdGE7CglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGdldFBvb2xBcHBJZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xBcHBJZCh2YWxpZGF0b3JJZDogdWludDY0LCBwb29sSWQ6IHVpbnQ2NCk6IHVpbnQ2NApnZXRQb29sQXBwSWQ6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzM1CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sSWQgIT09IDAgJiYgcG9vbElkIDw9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHMubGVuZ3RoLAoJLy8gICAgICAgJ3Bvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3InCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMAoJIT0KCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMjQKCTw9CgkmJgoKKnNraXBfYW5kMDoKCS8vIHBvb2wgaWQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIG51bWJlciBvZiBwb29scyBmb3IgdGhpcyB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMzkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW3Bvb2xJZCAtIDFdLnBvb2xBcHBJZDsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xJZDogdWludDY0CglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZ2V0UG9vbEluZm8oKHVpbnQ2NCx1aW50NjQsdWludDY0KSkodWludDY0LHVpbnQxNix1aW50NjQpCiphYmlfcm91dGVfZ2V0UG9vbEluZm86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHBvb2xLZXk6ICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMjQKCT09CgoJLy8gYXJndW1lbnQgMCAocG9vbEtleSkgZm9yIGdldFBvb2xJbmZvIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIGdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJY2FsbHN1YiBnZXRQb29sSW5mbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFBvb2xJbmZvKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiBQb29sSW5mbwpnZXRQb29sSW5mbzoKCXByb3RvIDEgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNDQKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXTsKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldEN1ck1heFN0YWtlUGVyUG9vbCh1aW50NjQpdWludDY0CiphYmlfcm91dGVfZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRDdXJNYXhTdGFrZVBlclBvb2wodWludDY0KXVpbnQ2NAoJY2FsbHN1YiBnZXRDdXJNYXhTdGFrZVBlclBvb2wKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBnZXRDdXJNYXhTdGFrZVBlclBvb2wodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IHVpbnQ2NAovLwovLyBDYWxjdWxhdGUgdGhlIG1heGltdW0gc3Rha2UgcGVyIHBvb2wgZm9yIGEgZ2l2ZW4gdmFsaWRhdG9yLgovLyBOb3JtYWxseSB0aGlzIHdvdWxkIGJlIG1heEFsZ29QZXJQb29sLCBidXQgaXQgc2hvdWxkIGFsc28gbmV2ZXIgZ28gYWJvdmUgTWF4QWxsb3dlZFN0YWtlIC8gbnVtUG9vbHMgc28KLy8gYXMgcG9vbHMgYXJlIGFkZGVkIHRoZSBtYXggYWxsb3dlZCBwZXIgcG9vbCBjYW4gcmVkdWNlLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvci4KZ2V0Q3VyTWF4U3Rha2VQZXJQb29sOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTUKCS8vIG51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIG51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU2CgkvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29scyA9IHRoaXMubWF4QWxsb3dlZFN0YWtlKCkgLyBudW1Qb29scwoJY2FsbHN1YiBtYXhBbGxvd2VkU3Rha2UKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCS8KCWZyYW1lX2J1cnkgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM1NwoJLy8gbWF4UGVyUG9vbDogdWludDY0ID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWF4QWxnb1BlclBvb2wKCWludCAyMTcKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKCS8vICppZjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzU4CgkvLyBtYXhQZXJQb29sID09PSAwCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMV9lbmQKCgkvLyAqaWYxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNTkKCS8vIG1heFBlclBvb2wgPSB0aGlzLm1heEFsZ29BbGxvd2VkUGVyUG9vbCgpCgljYWxsc3ViIG1heEFsZ29BbGxvd2VkUGVyUG9vbAoJZnJhbWVfYnVyeSAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoKKmlmMV9lbmQ6CgkvLyAqaWYyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2MQoJLy8gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMgPCBtYXhQZXJQb29sCglmcmFtZV9kaWcgMSAvLyBoYXJkTWF4RGl2aWRlZEJldHdlZW5Qb29sczogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTwKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzYyCgkvLyBtYXhQZXJQb29sID0gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMKCWZyYW1lX2RpZyAxIC8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzOiB1aW50NjQKCWZyYW1lX2J1cnkgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCippZjJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM2NAoJLy8gcmV0dXJuIG1heFBlclBvb2w7CglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCi8vIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sCiphYmlfcm91dGVfZG9lc1N0YWtlck5lZWRUb1BheU1CUjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHN0YWtlcikgZm9yIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZG9lc1N0YWtlck5lZWRUb1BheU1CUihhZGRyZXNzKWJvb2wKCWNhbGxzdWIgZG9lc1N0YWtlck5lZWRUb1BheU1CUgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkb2VzU3Rha2VyTmVlZFRvUGF5TUJSKHN0YWtlcjogQWRkcmVzcyk6IGJvb2xlYW4KLy8KLy8gSGVscGVyIGNhbGxlcnMgY2FuIGNhbGwgdy8gc2ltdWxhdGUgdG8gZGV0ZXJtaW5lIGlmICdBZGRTdGFrZXInIE1CUiBzaG91bGQgYmUgaW5jbHVkZWQgdy8gc3Rha2luZyBhbW91bnQKLy8gQHBhcmFtIHN0YWtlcgpkb2VzU3Rha2VyTmVlZFRvUGF5TUJSOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM3MwoJLy8gcmV0dXJuICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHM7CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJIQoJcmV0c3ViCgovLyBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10KKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KGFkZHJlc3MpKHVpbnQ2NCx1aW50NjQsdWludDY0KVtdCgljYWxsc3ViIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudAoJZHVwCglsZW4KCWludCAyNAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudChzdGFrZXI6IEFkZHJlc3MpOiBWYWxpZGF0b3JQb29sS2V5W10KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgcG9vbHMgZm9yIGFuIGFjY291bnQuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgdG8gcmV0cmlldmUgc3Rha2VkIHBvb2xzIGZvci4KLy8gQHJldHVybiB7VmFsaWRhdG9yUG9vbEtleVtdfSAtIFRoZSBhcnJheSBvZiBzdGFrZWQgcG9vbHMgZm9yIHRoZSBhY2NvdW50LgpnZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODMKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4NAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJYiAqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybgoKKmlmM19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg2CgkvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10gPSBbXQoJYnl0ZSAweAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFZhbGlkYXRvclBvb2xLZXlbXQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODcKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZSkKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg4CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSA8IHBvb2xTZXQubGVuZ3RoCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzFfZW5kCgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozODkKCS8vIHBvb2xTZXRbaV0uaWQgIT09IDAKCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTAKCS8vIHJldERhdGEucHVzaChwb29sU2V0W2ldKQoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCglmcmFtZV9kaWcgMSAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMjQKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10KCippZjRfZW5kOgoKKmZvcl8xX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4OAoJLy8gaSArPSAxCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozOTMKCS8vIHJldHVybiByZXREYXRhOwoJZnJhbWVfZGlnIDAgLy8gcmV0RGF0YTogVmFsaWRhdG9yUG9vbEtleVtdCgoqZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDIKCXJldHN1YgoKLy8gZ2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoqYWJpX3JvdXRlX2dldFRva2VuUGF5b3V0UmF0aW86CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkKCWNhbGxzdWIgZ2V0VG9rZW5QYXlvdXRSYXRpbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldFRva2VuUGF5b3V0UmF0aW8odmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xUb2tlblBheW91dFJhdGlvCi8vCi8vIFJldHJpZXZlcyB0aGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciBhIGdpdmVuIHZhbGlkYXRvciAtIHJldHVybmluZyB0aGUgcG9vbCByYXRpb3Mgb2Ygd2hvbGUgc28gdGhhdCB0b2tlbgovLyBwYXlvdXRzIGFjcm9zcyBwb29scyBjYW4gYmUgYmFzZWQgb24gYSBzdGFibGUgc25hcGhvc3Qgb2Ygc3Rha2UuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcmV0dXJuIHtQb29sVG9rZW5QYXlvdXRSYXRpb30gLSBUaGUgdG9rZW4gcGF5b3V0IHJhdGlvIGZvciB0aGUgdmFsaWRhdG9yLgpnZXRUb2tlblBheW91dFJhdGlvOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQwNQoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpbzsKCWludCA3MDAgLy8gaGVhZE9mZnNldAoJaW50IDIwMAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyh1aW50NjQpKCh1aW50NjRbM10pWzhdKQoqYWJpX3JvdXRlX2dldE5vZGVQb29sQXNzaWdubWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkKCWNhbGxzdWIgZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGdldE5vZGVQb29sQXNzaWdubWVudHModmFsaWRhdG9ySWQ6IHVpbnQ2NCk6IE5vZGVQb29sQXNzaWdubWVudENvbmZpZwpnZXROb2RlUG9vbEFzc2lnbm1lbnRzOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQxMAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAidGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgZG9lc24ndCBleGlzdCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyB0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBkb2Vzbid0IGV4aXN0Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDEyCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5ub2RlUG9vbEFzc2lnbm1lbnRzOwoJaW50IDkwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMTkyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBnZXRORkRSZWdpc3RyeUlEKCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRORkRSZWdpc3RyeUlEOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NAoJY2FsbHN1YiBnZXRORkRSZWdpc3RyeUlECglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2V0TkZEUmVnaXN0cnlJRCgpOiB1aW50NjQKZ2V0TkZEUmVnaXN0cnlJRDoKCXByb3RvIDAgMQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MTYKCS8vIHJldHVybiB0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQ7Cglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCXJldHN1YgoKLy8gYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NAoqYWJpX3JvdXRlX2FkZFZhbGlkYXRvcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMjQyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGNvbmZpZykgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBuZmROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAobWJyUGF5bWVudCkgZm9yIGFkZFZhbGlkYXRvciBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFZhbGlkYXRvcihwYXksc3RyaW5nLCh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSl1aW50NjQKCWNhbGxzdWIgYWRkVmFsaWRhdG9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkVmFsaWRhdG9yKG1iclBheW1lbnQ6IFBheVR4biwgbmZkTmFtZTogc3RyaW5nLCBjb25maWc6IFZhbGlkYXRvckNvbmZpZyk6IHVpbnQ2NAovLwovLyBBZGRzIGEgbmV3IHZhbGlkYXRvcgovLyBSZXF1aXJlcyBhdCBsZWFzdCAxMCBBTEdPIGFzIHRoZSAnZmVlJyBmb3IgdGhlIHRyYW5zYWN0aW9uIHRvIGhlbHAgZGlzc3VhZGUgc3BhbW1lZCB2YWxpZGF0b3IgYWRkcy4KLy8KLy8gQHBhcmFtIHtQYXlUeG59IG1iclBheW1lbnQgcGF5bWVudCBmcm9tIGNhbGxlciB3aGljaCBjb3ZlcnMgbWJyIGluY3JlYXNlIG9mIG5ldyB2YWxpZGF0b3Igc3RvcmFnZQovLyBAcGFyYW0ge3N0cmluZ30gbmZkTmFtZSAoT3B0aW9uYWwpIE5hbWUgb2YgbmZkICh1c2VkIGFzIGRvdWJsZS1jaGVjayBhZ2FpbnN0IGlkIHNwZWNpZmllZCBpbiBjb25maWcpCi8vIEBwYXJhbSB7VmFsaWRhdG9yQ29uZmlnfSBjb25maWcgVmFsaWRhdG9yQ29uZmlnIHN0cnVjdAovLyBAcmV0dXJucyB7dWludDY0fSB2YWxpZGF0b3IgaWQKYWRkVmFsaWRhdG9yOgoJcHJvdG8gMyAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDI4CgkvLyB0aGlzLnZhbGlkYXRlQ29uZmlnKGNvbmZpZykKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJY2FsbHN1YiB2YWxpZGF0ZUNvbmZpZwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjkKCS8vIGFzc2VydChjb25maWcub3duZXIgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMAoJLy8gYXNzZXJ0KGNvbmZpZy5tYW5hZ2VyICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDQwIDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDMxCgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBjb25maWcub3duZXIsICdzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcicpCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgOCAzMgoJPT0KCgkvLyBzZW5kZXIgbXVzdCBiZSBvd25lciB0byBhZGQgbmV3IHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMwoJLy8gdmVyaWZ5UGF5VHhuKG1iclBheW1lbnQsIHsgYW1vdW50OiB0aGlzLmdldE1ickFtb3VudHMoKS5hZGRWYWxpZGF0b3JNYnIgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkVmFsaWRhdG9yTWJyIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MzUKCS8vIGFzc2VydChtYnJQYXltZW50LmZlZSA+IDEwICogMTAwMDAwMCwgJ2ZlZSBtdXN0IGJlIDEwIEFMR08gb3IgbW9yZSB0byBwcmV2ZW50IHNwYW1taW5nIG9mIHZhbGlkYXRvcnMnKQoJZnJhbWVfZGlnIC0xIC8vIG1iclBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgRmVlCglpbnQgMTAwMDAwMDAKCT4KCgkvLyBmZWUgbXVzdCBiZSAxMCBBTEdPIG9yIG1vcmUgdG8gcHJldmVudCBzcGFtbWluZyBvZiB2YWxpZGF0b3JzCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM4CgkvLyB2YWxpZGF0b3JJZCA9IHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSArIDEKCWJ5dGUgMHg2ZTc1NmQ1NiAvLyAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM5CgkvLyB0aGlzLm51bVZhbGlkYXRvcnMudmFsdWUgPSB2YWxpZGF0b3JJZAoJYnl0ZSAweDZlNzU2ZDU2IC8vICJudW1WIgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmNyZWF0ZSgpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWludCAxMDkyCglib3hfY3JlYXRlCglwb3AKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDQyCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZyA9IGNvbmZpZwoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmlkID0gdmFsaWRhdG9ySWQKCWludCAwCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmNV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDYKCS8vIGNvbmZpZy5uZmRGb3JJbmZvICE9PSAwCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJaW50IDAKCSE9CglieiAqaWY1X2VuZAoKCS8vICppZjVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ0OAoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMubmZkUmVnaXN0cnlBcHBJZCksCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKGNvbmZpZy5uZmRGb3JJbmZvKV0sCgkvLyAgICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXSwKCS8vICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NDkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKQoJbG9hZCAyMDAgLy8gVE1QTF9uZmRSZWdpc3RyeUFwcElkCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDUwCgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgbmZkTmFtZSwgaXRvYihjb25maWcubmZkRm9ySW5mbyldCglieXRlIDB4Njk3MzVmNzY2MTZjNjk2NDVmNmU2NjY0NWY2MTcwNzA2OTY0IC8vICJpc192YWxpZF9uZmRfYXBwaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA3MiA4CglidG9pCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTEKCS8vIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pXQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDcyIDgKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25zCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTMKCS8vIGFzc2VydChidG9pKHRoaXMuaXR4bi5sYXN0TG9nKSA9PT0gMSwgInByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZCIpCglpdHhuIExhc3RMb2cKCWJ0b2kKCWludCAxCgk9PQoKCS8vIHByb3ZpZGVkIE5GRCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ1NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IChBcHBJRC5mcm9tVWludDY0KGNvbmZpZy5uZmRGb3JJbmZvKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykgYXMgQWRkcmVzcyksCgkvLyAgICAgICAgICdJZiBzcGVjaWZ5aW5nIE5GRCwgYWNjb3VudCBhZGRpbmcgdmFsaWRhdG9yIG11c3QgYmUgb3duZXInCgkvLyAgICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoqaWY1X2VuZDoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDYxCgkvLyBjb25maWcuZW50cnlHYXRpbmdUeXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMgfHwKCS8vICAgICAgIGNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPT09IEdBVElOR19UWVBFX1NFR01FTlRfT0ZfTkZECglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgODAgMQoJYnRvaQoJaW50IDMKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgNAoJPT0KCXx8Cgoqc2tpcF9vcjA6CglieiAqaWY2X2VuZAoKCS8vICppZjZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ2NQoJLy8gYXNzZXJ0KHRoaXMuaXNORkRBcHBJRFZhbGlkKGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSksICdwcm92aWRlZCBORkQgQXBwIGlkIGZvciBnYXRpbmcgbXVzdCBiZSB2YWxpZCBORkQnKQoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzTkZEQXBwSURWYWxpZAoKCS8vIHByb3ZpZGVkIE5GRCBBcHAgaWQgZm9yIGdhdGluZyBtdXN0IGJlIHZhbGlkIE5GRAoJYXNzZXJ0CgoqaWY2X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NjgKCS8vIHJldHVybiB2YWxpZGF0b3JJZDsKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCS8vIG1hbmFnZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobWFuYWdlcikgZm9yIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIG1hbmFnZXI6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIENoYW5nZXMgdGhlIFZhbGlkYXRvciBtYW5hZ2VyIGZvciBhIHNwZWNpZmljIFZhbGlkYXRvciBpZC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byBjaGFuZ2UgdGhlIG1hbmFnZXIgZm9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IG1hbmFnZXIgLSBUaGUgbmV3IG1hbmFnZXIgYWRkcmVzcy4KY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NzkKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDgzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyID0gbWFuYWdlcgoJaW50IDQwCglmcmFtZV9kaWcgLTIgLy8gbWFuYWdlcjogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbzoKCS8vIHN1bnNldHRpbmdUbzogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Vuc2V0dGluZ09uOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBzdW5zZXR0aW5nT246IHVpbnQ2NCwgc3Vuc2V0dGluZ1RvOiBWYWxpZGF0b3JJZFR5cGUpOiB2b2lkCi8vCi8vIFVwZGF0ZXMgdGhlIHN1bnNldCBpbmZvcm1hdGlvbiBmb3IgYSBnaXZlbiB2YWxpZGF0b3IuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IgdG8gdXBkYXRlLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ09uIC0gVGhlIG5ldyBzdW5zZXQgdGltZXN0YW1wLgovLyBAcGFyYW0ge3VpbnQ2NH0gc3Vuc2V0dGluZ1RvIC0gVGhlIG5ldyBzdW5zZXQgdG8gdmFsaWRhdG9yIGlkLgpjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ5NQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdPbiA9IHN1bnNldHRpbmdPbgoJaW50IDIyNgoJZnJhbWVfZGlnIC0yIC8vIHN1bnNldHRpbmdPbjogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MDAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnN1bnNldHRpbmdUbyA9IHN1bnNldHRpbmdUbwoJaW50IDIzNAoJZnJhbWVfZGlnIC0zIC8vIHN1bnNldHRpbmdUbzogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodWludDY0LHVpbnQ2NCxzdHJpbmcpdm9pZAoqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRDoKCS8vIG5mZE5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZXh0cmFjdCAyIDAKCgkvLyBuZmRBcHBJRDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2hhbmdlVmFsaWRhdG9yTkZEKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yTkZECglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JORkQodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbmZkQXBwSUQ6IHVpbnQ2NCwgbmZkTmFtZTogc3RyaW5nKTogdm9pZAovLwovLyBDaGFuZ2VzIHRoZSBORkQgZm9yIGEgdmFsaWRhdG9yIGluIHRoZSB2YWxpZGF0b3JMaXN0IGNvbnRyYWN0LgovLyBbIE9OTFkgT1dORVIgQ0FOIENIQU5HRSBdCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yIHRvIHVwZGF0ZS4KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIGFwcGxpY2F0aW9uIGlkIG9mIHRoZSBORkQgdG8gYXNzaWduIHRvIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7c3RyaW5nfSBuZmROYW1lIC0gVGhlIG5hbWUgb2YgdGhlIE5GRCAod2hpY2ggbXVzdCBtYXRjaCkKY2hhbmdlVmFsaWRhdG9yTkZEOgoJcHJvdG8gMyAwCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxMwoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5vd25lciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyJwoJLy8gICAgICkKCXR4biBTZW5kZXIKCWludCA4CglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MTgKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0sCgkvLyAgICAgICBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxOQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MjAKCS8vIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCBuZmROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgLTMgLy8gbmZkTmFtZTogc3RyaW5nCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0yIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyMQoJLy8gYXBwbGljYXRpb25zOiBbQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCldCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbnMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyNAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy50eG4uc2VuZGVyID09PSAoQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpLAoJLy8gICAgICAgJ0lmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyOAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IG5mZEFwcElECglpbnQgNzIKCWZyYW1lX2RpZyAtMiAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3M6CgkvLyBjb21taXNzaW9uQWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjb21taXNzaW9uQWRkcmVzcykgZm9yIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCgljYWxsc3ViIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ2hhbmdlIHRoZSBjb21taXNzaW9uIGFkZHJlc3MgdGhhdCB2YWxpZGF0b3IgcmV3YXJkcyBhcmUgc2VudCB0by4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQpjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzczoKCXByb3RvIDIgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MzYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTQwCgkvLyBhc3NlcnQoY29tbWlzc2lvbkFkZHJlc3MgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTIgLy8gY29tbWlzc2lvbkFkZHJlc3M6IEFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NDEKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzID0gY29tbWlzc2lvbkFkZHJlc3MKCWludCAxNzcKCWZyYW1lX2RpZyAtMiAvLyBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcwoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCS8vIFJld2FyZFBlclBheW91dDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA2CglidG9pCgoJLy8gR2F0aW5nQXNzZXRNaW5CYWxhbmNlOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWJ0b2kKCgkvLyBFbnRyeUdhdGluZ0Fzc2V0czogdWludDY0WzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDIgKEVudHJ5R2F0aW5nQXNzZXRzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgdWludDY0WzRdCglhc3NlcnQKCgkvLyBFbnRyeUdhdGluZ0FkZHJlc3M6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoRW50cnlHYXRpbmdBZGRyZXNzKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gRW50cnlHYXRpbmdUeXBlOiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDQgKEVudHJ5R2F0aW5nVHlwZSkgZm9yIGNoYW5nZVZhbGlkYXRvclJld2FyZEluZm8gbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbwoJaW50IDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4LCBFbnRyeUdhdGluZ0FkZHJlc3M6IEFkZHJlc3MsIEVudHJ5R2F0aW5nQXNzZXRzOiBTdGF0aWNBcnJheTx1aW50NjQsIDQ+LCBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NCwgUmV3YXJkUGVyUGF5b3V0OiB1aW50NjQpOiB2b2lkCi8vCi8vIEFsbG93IHRoZSBhZGRpdGlvbmFsIHJld2FyZHMgKGdhdGluZyBlbnRyeSwgYWRkaXRpb25hbCB0b2tlbiByZXdhcmRzKSBpbmZvcm1hdGlvbiBiZSBjaGFuZ2VkIGF0IHdpbGwuCi8vIFsgT05MWSBPV05FUiBDQU4gQ0hBTkdFIF0KY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbzoKCXByb3RvIDYgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NTYKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIsCgkvLyAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgdmFsaWRhdG9yIG93bmVyCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTYxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPSBFbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJZnJhbWVfZGlnIC0yIC8vIEVudHJ5R2F0aW5nVHlwZTogdWludDgKCWl0b2IKCWV4dHJhY3QgNyAxCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjIKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQWRkcmVzcyA9IEVudHJ5R2F0aW5nQWRkcmVzcwoJaW50IDgxCglmcmFtZV9kaWcgLTMgLy8gRW50cnlHYXRpbmdBZGRyZXNzOiBBZGRyZXNzCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjMKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nQXNzZXRzID0gRW50cnlHYXRpbmdBc3NldHMKCWludCAxMTMKCWZyYW1lX2RpZyAtNCAvLyBFbnRyeUdhdGluZ0Fzc2V0czogU3RhdGljQXJyYXk8dWludDY0LCA0PgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY0CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UgPSBHYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWZyYW1lX2RpZyAtNSAvLyBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTY1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRQZXJQYXlvdXQgPSBSZXdhcmRQZXJQYXlvdXQKCWludCAxNjEKCWZyYW1lX2RpZyAtNiAvLyBSZXdhcmRQZXJQYXlvdXQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfYWRkUG9vbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDIgKG1iclBheW1lbnQpIGZvciBhZGRQb29sIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGFkZFBvb2wKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhZGRQb29sKG1iclBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbm9kZU51bTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIGEgbmV3IHBvb2wgdG8gYSB2YWxpZGF0b3IncyBwb29sIHNldCwgcmV0dXJuaW5nIHRoZSAna2V5JyB0byByZWZlcmVuY2UgdGhlIHBvb2wgaW4gdGhlIGZ1dHVyZSBmb3Igc3Rha2luZywgZXRjLgovLyBUaGUgY2FsbGVyIG11c3QgcGF5IHRoZSBjb3N0IG9mIHRoZSB2YWxpZGF0b3JzIE1CUiBpbmNyZWFzZSBhcyB3ZWxsIGFzIHRoZSBNQlIgdGhhdCB3aWxsIGJlIG5lZWRlZCBmb3IgdGhlIHBvb2wgaXRzZWxmLgovLwovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gY2FsbCBdCi8vIEBwYXJhbSB7UGF5VHhufSBtYnJQYXltZW50IHBheW1lbnQgZnJvbSBjYWxsZXIgd2hpY2ggY292ZXJzIG1iciBpbmNyZWFzZSBvZiBhZGRpbmcgYSBuZXcgcG9vbAovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgaXMgaWQgb2YgdmFsaWRhdG9yIHRvIHBvb2wgdG8gKG11c3QgYmUgb3duZXIgb3IgbWFuYWdlcikKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0gaXMgbm9kZSBudW1iZXIgdG8gYWRkIHRvCi8vIEByZXR1cm5zIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sIGtleSB0byBjcmVhdGVkIHBvb2wKYWRkUG9vbDoKCXByb3RvIDMgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTgxCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyIHx8CgkvLyAgICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlciwKCS8vICAgICAgICdjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3InCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CglkdXAKCWJueiAqc2tpcF9vcjEKCXR4biBTZW5kZXIKCWludCA0MAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCXx8Cgoqc2tpcF9vcjE6CgkvLyBjYW4gb25seSBiZSBjYWxsZWQgYnkgb3duZXIgb3IgbWFuYWdlciBvZiB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1ODgKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IGFtb3VudDogdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciwgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MgfSkKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCglleHRyYWN0IDggOAoJYnRvaQoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6ImFtb3VudCIsImV4cGVjdGVkIjoidGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBtYnJQYXltZW50OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6Im1iclBheW1lbnQiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTAKCS8vIGFzc2VydCh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLmV4aXN0cywgInNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQiKQoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU5MgoJLy8gbnVtUG9vbHM6IHVpbnQ2NCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBudW1Qb29sczogdWludDY0CgoJLy8gKmlmN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTMKCS8vIChudW1Qb29scyBhcyB1aW50NjQpID49IE1BWF9QT09MUwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaW50IDI0Cgk+PQoJYnogKmlmN19lbmQKCgkvLyAqaWY3X2NvbnNlcXVlbnQKCS8vIGFscmVhZHkgYXQgbWF4IHBvb2wgc2l6ZQoJZXJyCgoqaWY3X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTYKCS8vIG51bVBvb2xzICs9IDEKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1OTkKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFsKCS8vICAgICAgICAgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5leHRyYWN0KDAsIDQwOTYpLAoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoNDA5NiwgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5zaXplIC0gNDA5NiksCgkvLyAgICAgICBdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpLAoJLy8gICAgICAgZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50LAoJLy8gICAgICAgZ2xvYmFsTnVtQnl0ZVNsaWNlOiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZSwKCS8vICAgICAgIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbCgkvLyAgICAgICAgIC8vIGNyZWF0aW5nQ29udHJhY3RJRCwgdmFsaWRhdG9ySWQsIHBvb2xJZCwgbWluRW50cnlTdGFrZQoJLy8gICAgICAgICBtZXRob2QoJ2NyZWF0ZUFwcGxpY2F0aW9uKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkJyksCgkvLyAgICAgICAgIGl0b2IodGhpcy5hcHAuaWQpLAoJLy8gICAgICAgICBpdG9iKHZhbGlkYXRvcklkKSwKCS8vICAgICAgICAgaXRvYihudW1Qb29scyBhcyB1aW50NjQpLAoJLy8gICAgICAgICBpdG9iKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1pbkVudHJ5U3Rha2UpLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjAwCgkvLyBvbkNvbXBsZXRpb246IE9uQ29tcGxldGlvbi5Ob09wCglpbnQgMCAvLyBOb09wCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDEKCS8vIGFwcHJvdmFsUHJvZ3JhbTogWwoJLy8gICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoMCwgNDA5NiksCgkvLyAgICAgICAgIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uZXh0cmFjdCg0MDk2LCB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUgLSA0MDk2KSwKCS8vICAgICAgIF0KCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCAwCglpbnQgNDA5NgoJYm94X2V4dHJhY3QKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDZmNmY2YzU0NjU2ZDcwNmM2MTc0NjU0MTcwNzA3MjZmNzY2MTZjNDI3OTc0NjU3MyAvLyAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWludCA0MDk2CglieXRlIDB4NzA2ZjZmNmM1NDY1NmQ3MDZjNjE3NDY1NDE3MDcwNzI2Zjc2NjE2YzQyNzk3NDY1NzMgLy8gInBvb2xUZW1wbGF0ZUFwcHJvdmFsQnl0ZXMiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUKCWFzc2VydAoJaW50IDQwOTYKCS0KCWJveF9leHRyYWN0CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbVBhZ2VzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNQoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYwNgoJLy8gZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMTEKCWl0eG5fZmllbGQgR2xvYmFsTnVtVWludAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDcKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UKCWludCAzCglpdHhuX2ZpZWxkIEdsb2JhbE51bUJ5dGVTbGljZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDgKCS8vIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzCglpbnQgMwoJaXR4bl9maWVsZCBFeHRyYVByb2dyYW1QYWdlcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDkKCS8vIGFwcGxpY2F0aW9uQXJnczogWwoJLy8gICAgICAgICAvLyBjcmVhdGluZ0NvbnRyYWN0SUQsIHZhbGlkYXRvcklkLCBwb29sSWQsIG1pbkVudHJ5U3Rha2UKCS8vICAgICAgICAgbWV0aG9kKCdjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCcpLAoJLy8gICAgICAgICBpdG9iKHRoaXMuYXBwLmlkKSwKCS8vICAgICAgICAgaXRvYih2YWxpZGF0b3JJZCksCgkvLyAgICAgICAgIGl0b2IobnVtUG9vbHMgYXMgdWludDY0KSwKCS8vICAgICAgICAgaXRvYih0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5taW5FbnRyeVN0YWtlKSwKCS8vICAgICAgIF0KCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludCAyMDkKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYxOQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyA9IG51bVBvb2xzIGFzIHVpbnQxNgoJaW50IDI0MgoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYyMgoJLy8gcG9vbEFwcElkID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklELmlkCglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjIzCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW251bVBvb2xzIC0gMV0ucG9vbEFwcElkID0gcG9vbEFwcElkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAxIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjQKCS8vIHRoaXMuYWRkUG9vbFRvTm9kZSh2YWxpZGF0b3JJZCwgcG9vbEFwcElkLCBub2RlTnVtKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGFkZFBvb2xUb05vZGUKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjMyCgkvLyByZXR1cm4geyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogbnVtUG9vbHMgYXMgdWludDY0LCBwb29sQXBwSWQ6IHRoaXMuaXR4biEuY3JlYXRlZEFwcGxpY2F0aW9uSUQuaWQgfTsKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglmcmFtZV9kaWcgMCAvLyBudW1Qb29sczogdWludDY0CglpdG9iCgljb25jYXQKCWl0eG4gQ3JlYXRlZEFwcGxpY2F0aW9uSUQKCWl0b2IKCWNvbmNhdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc3Rha2VkQW1vdW50UGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50IDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gYXJndW1lbnQgMiAoc3Rha2VkQW1vdW50UGF5bWVudCkgZm9yIGFkZFN0YWtlIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBhZGRTdGFrZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZFN0YWtlKHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgdmFsdWVUb1ZlcmlmeTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIHN0YWtlIHRvIGEgdmFsaWRhdG9yIHBvb2wuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gb25seSBpZiB2YWxpZGF0b3IgaGFzIGdhdGluZyB0byBlbnRlciAtIHRoaXMgaXMgYXNzZXQgaWQgb3IgbmZkIGlkIHRoYXQgY29ycmVzcG9uZHMgdG8gZ2F0aW5nLgovLyBUeG4gc2VuZGVyIGlzIGZhY3RvcmVkIGluIGFzIHdlbGwgaWYgdGhhdCBpcyBwYXJ0IG9mIGdhdGluZy4KLy8gKiBAcmV0dXJucyB7VmFsaWRhdG9yUG9vbEtleX0gLSBUaGUga2V5IG9mIHRoZSB2YWxpZGF0b3IgcG9vbC4KYWRkU3Rha2U6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA1CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0NQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAic3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyBzcGVjaWZpZWQgdmFsaWRhdG9yIGlkIGlzbid0IHZhbGlkCglhc3NlcnQKCgkvLyAqaWY4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uID4gMAoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJPgoJYnogKmlmOF9lbmQKCgkvLyAqaWY4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NDkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uIDwgZ2xvYmFscy5sYXRlc3RUaW1lc3RhbXAsCgkvLyAgICAgICAgICJjYW4ndCBzdGFrZSB3aXRoIGEgdmFsaWRhdG9yIHRoYXQgaXMgcGFzdCBpdHMgc3Vuc2V0dGluZyB0aW1lIgoJLy8gICAgICAgKQoJaW50IDIyNgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglnbG9iYWwgTGF0ZXN0VGltZXN0YW1wCgk8CgoJLy8gY2FuJ3Qgc3Rha2Ugd2l0aCBhIHZhbGlkYXRvciB0aGF0IGlzIHBhc3QgaXRzIHN1bnNldHRpbmcgdGltZQoJYXNzZXJ0CgoqaWY4X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTUKCS8vIHN0YWtlciA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfYnVyeSAwIC8vIHN0YWtlcjogYWRkcmVzcwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NTkKCS8vIHZlcmlmeVBheVR4bihzdGFrZWRBbW91bnRQYXltZW50LCB7CgkvLyAgICAgICBzZW5kZXI6IHN0YWtlciwKCS8vICAgICAgIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgc2VuZGVyCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InN0YWtlZEFtb3VudFBheW1lbnQiLCJmaWVsZCI6InNlbmRlciIsImV4cGVjdGVkIjoic3Rha2VyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSByZWNlaXZlcgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgUmVjZWl2ZXIKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoicmVjZWl2ZXIiLCJleHBlY3RlZCI6InRoaXMuYXBwLmFkZHJlc3MifQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY2NgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS50b3RhbEFsZ29TdGFrZWQgPCB0aGlzLm1heEFsbG93ZWRTdGFrZSgpLAoJLy8gICAgICAgJ3RvdGFsIHN0YWtlZCBmb3IgYWxsIG9mIGEgdmFsaWRhdG9ycyBwb29scyBtYXkgbm90IGV4Y2VlZCBoYXJkIGNhcCcKCS8vICAgICApCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWNhbGxzdWIgbWF4QWxsb3dlZFN0YWtlCgk8CgoJLy8gdG90YWwgc3Rha2VkIGZvciBhbGwgb2YgYSB2YWxpZGF0b3JzIHBvb2xzIG1heSBub3QgZXhjZWVkIGhhcmQgY2FwCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjczCgkvLyB0aGlzLmRvZXNTdGFrZXJNZWV0R2F0aW5nKHZhbGlkYXRvcklkLCB2YWx1ZVRvVmVyaWZ5KQoJZnJhbWVfZGlnIC0zIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZG9lc1N0YWtlck1lZXRHYXRpbmcKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njc1CgkvLyByZWFsQW1vdW50ID0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJZnJhbWVfYnVyeSAxIC8vIHJlYWxBbW91bnQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzYKCS8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NCA9IDAKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gbWJyQW10TGVmdEJlaGluZDogdWludDY0CgoJLy8gKmlmOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzgKCS8vICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAwIC8vIHN0YWtlcjogYWRkcmVzcwoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCSEKCWJ6ICppZjlfZW5kCgoJLy8gKmlmOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgxCgkvLyBtYnJBbXRMZWZ0QmVoaW5kID0gdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkU3Rha2VyTWJyCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWV4dHJhY3QgMjQgOAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODIKCS8vIHJlYWxBbW91bnQgLT0gbWJyQW10TGVmdEJlaGluZAoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMiAvLyBtYnJBbXRMZWZ0QmVoaW5kOiB1aW50NjQKCS0KCWZyYW1lX2J1cnkgMSAvLyByZWFsQW1vdW50OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjgzCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5jcmVhdGUoKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCgljb25jYXQKCWludCAxNDQKCWJveF9jcmVhdGUKCXBvcAoKKmlmOV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg3CgkvLyBmaW5kUmV0ID0gdGhpcy5maW5kUG9vbEZvclN0YWtlcih2YWxpZGF0b3JJZCwgc3Rha2VyLCByZWFsQW1vdW50KQoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGZpbmRQb29sRm9yU3Rha2VyCglmcmFtZV9idXJ5IDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2ODgKCS8vIHBvb2xLZXkgPSBmaW5kUmV0WzBdCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njg5CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmluZFJldFsxXQoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxOTIKCWdldGJpdAoJZnJhbWVfYnVyeSA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkwCgkvLyBpc05ld1N0YWtlclRvUHJvdG9jb2wgPSBmaW5kUmV0WzJdCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJZ2V0Yml0CglmcmFtZV9idXJ5IDUgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjkxCgkvLyBwb29sS2V5LnBvb2xJZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjEwX2VuZAoKCS8vICppZjEwX2NvbnNlcXVlbnQKCS8vIE5vIHBvb2wgYXZhaWxhYmxlIHdpdGggZnJlZSBzdGFrZS4gIFZhbGlkYXRvciBuZWVkcyB0byBhZGQgYW5vdGhlciBwb29sCgllcnIKCippZjEwX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTYKCS8vIHRoaXMudXBkYXRlU3Rha2VyUG9vbFNldChzdGFrZXIsIHBvb2xLZXkpCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNhbGxzdWIgdXBkYXRlU3Rha2VyUG9vbFNldAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2OTkKCS8vIHRoaXMuY2FsbFBvb2xBZGRTdGFrZSgKCS8vICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQsCgkvLyAgICAgICBwb29sS2V5LAoJLy8gICAgICAgbWJyQW10TGVmdEJlaGluZCwKCS8vICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICBpc05ld1N0YWtlclRvUHJvdG9jb2wKCS8vICAgICApCglmcmFtZV9kaWcgNSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCWZyYW1lX2RpZyA0IC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCWZyYW1lX2RpZyAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgMCAyNAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJY2FsbHN1YiBjYWxsUG9vbEFkZFN0YWtlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjcxNAoJLy8gcmV0dXJuIHBvb2xLZXk7CglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNQoJcmV0c3ViCgovLyBzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpCiphYmlfcm91dGVfc2V0VG9rZW5QYXlvdXRSYXRpbzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgc2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoJY2FsbHN1YiBzZXRUb2tlblBheW91dFJhdGlvCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gc2V0VG9rZW5QYXlvdXRSYXRpbyBpcyBjYWxsZWQgYnkgU3Rha2luZyBQb29sICMgMSAoT05MWSkgdG8gYXNrIHRoZSB2YWxpZGF0b3IgKHVzKSB0byBjYWxjdWxhdGUgdGhlIHJhdGlvcwovLyBvZiBzdGFrZSBpbiB0aGUgcG9vbHMgZm9yIHN1YnNlcXVlbnQgdG9rZW4gcGF5b3V0cyAoaWU6IDIgcG9vbHMsICcxMDAnIGFsZ28gdG90YWwgc3Rha2VkLCA2MCBpbiBwb29sIDEsIGFuZCA0MAovLyBpbiBwb29sIDIpICBUaGlzIGlzIGRvbmUgc28gd2UgaGF2ZSBhIHN0YWJsZSBzbmFwc2hvdCBvZiBzdGFrZSAtIHRha2VuIG9uY2UgcGVyIGVwb2NoIC0gb25seSB0cmlnZ2VyZWQgYnkKLy8gcG9vbCAxIGRvaW5nIHBheW91dC4gIHBvb2xzIG90aGVyIHRoYW4gMSBkb2luZyBwYXlvdXQgY2FsbCBwb29sIDEgdG8gYXNrIGl0IGRvIGl0IGZpcnN0LgovLyBJdCB3b3VsZCBiZSA2MC80MCUgaW4gdGhlIHBvb2xQY3RPZldob2xlIHZhbHVlcy4gIFRoZSB0b2tlbiByZXdhcmQgcGF5b3V0cyB0aGVuIHVzZSB0aGVzZSB2YWx1ZXMgaW5zdGVhZCBvZgovLyB0aGVpciAnY3VycmVudCcgc3Rha2Ugd2hpY2ggY2hhbmdlcyBhcyBwYXJ0IG9mIHRoZSBwYXlvdXRzIHRoZW1zZWx2ZXMgKGFuZCBwZW9wbGUgY291bGQgYmUgY2hhbmdpbmcgc3Rha2UKLy8gZHVyaW5nIHRoZSBlcG9jaCB1cGRhdGVzIGFjcm9zcyBwb29scykKLy8KLy8gTXVsdGlwbGUgcG9vbHMgd2lsbCBjYWxsIHVzIHZpYSBwb29sIDEgKHBvb2wyLT5wb29sMS0+dmFsaWRhdG9yLCBldGMuKSBzbyBkb24ndCBhc3NlcnQgb24gcG9vbDEgY2FsbGluZyBtdWx0aXBsZQovLyB0aW1lcyBpbiBzYW1lIGVwb2NoLiAgSnVzdCByZXR1cm4uCi8vCi8vIEBwYXJhbSB2YWxpZGF0b3JJZCAtIHZhbGlkYXRvciBpZCAoYW5kIHRodXMgcG9vbCkgY2FsbGluZyB1cy4gIFZlcmlmaWVkIHNvIHRoYXQgc2VuZGVyIE1VU1QgYmUgcG9vbCAxIG9mIHRoaXMgdmFsaWRhdG9yLgovLyBAcmV0dXJucyBQb29sVG9rZW5QYXlvdXRSYXRpbyAtIHRoZSBmaW5pc2hlZCByYXRpbyBkYXRhCnNldFRva2VuUGF5b3V0UmF0aW86Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjczNAoJLy8gcG9vbDFBcHBJRCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbMF0ucG9vbEFwcElkCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzM1CgkvLyBhc3NlcnQocG9vbDFBcHBJRCAhPT0gMCkKCWZyYW1lX2RpZyAwIC8vIHBvb2wxQXBwSUQ6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyAqaWYxMV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzcKCS8vIHRoaXMudHhuLnNlbmRlciAhPT0gQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5hZGRyZXNzCgl0eG4gU2VuZGVyCglmcmFtZV9kaWcgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJIT0KCWJ6ICppZjExX2VuZAoKCS8vICppZjExX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzgKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTFfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NAoJLy8gY3VyUm91bmQgPSBnbG9iYWxzLnJvdW5kCglnbG9iYWwgUm91bmQKCWZyYW1lX2J1cnkgMSAvLyBjdXJSb3VuZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc0NQoJLy8gbGFzdFBheW91dFVwZGF0ZSA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpby51cGRhdGVkRm9yUGF5b3V0CglpbnQgODkyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDYKCS8vIGxhc3RQYXlvdXRVcGRhdGUgIT09IDAKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJaW50IDAKCSE9CglieiAqaWYxMl9lbmQKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyAqaWYxM19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDgKCS8vIChBcHBJRC5mcm9tVWludDY0KHBvb2wxQXBwSUQpLmdsb2JhbFN0YXRlKCdsYXN0UGF5b3V0JykgYXMgdWludDY0KSA9PT0gbGFzdFBheW91dFVwZGF0ZQoJZnJhbWVfZGlnIDAgLy8gcG9vbDFBcHBJRDogdWludDY0CglieXRlIDB4NmM2MTczNzQ1MDYxNzk2Zjc1NzQgLy8gImxhc3RQYXlvdXQiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sMUFwcElEKS5nbG9iYWxTdGF0ZSgnbGFzdFBheW91dCcpCglhc3NlcnQKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJPT0KCWJ6ICppZjEzX2VuZAoKCS8vICppZjEzX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1MQoJLy8gZXBvY2hSb3VuZExlbmd0aCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVwb2NoUm91bmRMZW5ndGggYXMgdWludDY0CglpbnQgMTY5CglpbnQgNAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzUyCgkvLyB0aGlzRXBvY2hCZWdpbiA9IGN1clJvdW5kIC0gKGN1clJvdW5kICUgZXBvY2hSb3VuZExlbmd0aCkKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAxIC8vIGN1clJvdW5kOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfYnVyeSA0IC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCgkvLyAqaWYxNF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTQKCS8vIGxhc3RQYXlvdXRVcGRhdGUgLSAobGFzdFBheW91dFVwZGF0ZSAlIGVwb2NoUm91bmRMZW5ndGgpID09PSB0aGlzRXBvY2hCZWdpbgoJZnJhbWVfZGlnIDIgLy8gbGFzdFBheW91dFVwZGF0ZTogdWludDY0CglmcmFtZV9kaWcgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGVwb2NoUm91bmRMZW5ndGg6IHVpbnQ2NAoJJQoJLQoJZnJhbWVfZGlnIDQgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoJPT0KCWJ6ICppZjE0X2VuZAoKCS8vICppZjE0X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTUKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW87CglpbnQgNzAwIC8vIGhlYWRPZmZzZXQKCWludCAyMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTRfZW5kOgoKKmlmMTJfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc1OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnVwZGF0ZWRGb3JQYXlvdXQgPSBjdXJSb3VuZAoJaW50IDg5MgoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYwCgkvLyBjdXJOdW1Qb29scyA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUubnVtUG9vbHMgYXMgdWludDY0CglpbnQgMjQyCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNSAvLyBjdXJOdW1Qb29sczogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MQoJLy8gdG90YWxTdGFrZUZvclZhbGlkYXRvciA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUudG90YWxBbGdvU3Rha2VkCglpbnQgMjUyCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyB0b3RhbFN0YWtlRm9yVmFsaWRhdG9yOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYyCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc2MgoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA1IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzY3CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgW3RoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbaV0udG90YWxBbGdvU3Rha2VkLCAxXzAwMF8wMDBdLAoJLy8gICAgICAgICBbdG90YWxTdGFrZUZvclZhbGlkYXRvcl0KCS8vICAgICAgICkKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaW50IDFfMDAwXzAwMAoJbXVsdwoJaW50IDAKCWZyYW1lX2RpZyA2IC8vIHRvdGFsU3Rha2VGb3JWYWxpZGF0b3I6IHVpbnQ2NAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCWZyYW1lX2J1cnkgOCAvLyBvdXJQb29sUGN0T2ZXaG9sZTogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc3MQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnBvb2xQY3RPZldob2xlW2ldID0gb3VyUG9vbFBjdE9mV2hvbGUKCWludCA3MDAKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIDggLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCipmb3JfMl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NjIKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzczCgkvLyByZXR1cm4gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvOwoJaW50IDcwMCAvLyBoZWFkT2Zmc2V0CglpbnQgMjAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoKKnNldFRva2VuUGF5b3V0UmF0aW8qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gOAoJcmV0c3ViCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKCh1aW50NjQsdWludDY0LHVpbnQ2NCksdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzOgoJLy8gc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA1CglidG9pCgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyA0CglidG9pCgoJLy8gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gYWxnb1RvQWRkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIG11c3QgYmUgYSAodWludDY0LHVpbnQ2NCx1aW50NjQpCglhc3NlcnQKCgkvLyBleGVjdXRlIHN0YWtlVXBkYXRlZFZpYVJld2FyZHMoKHVpbnQ2NCx1aW50NjQsdWludDY0KSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzCglpbnQgMQoJcmV0dXJuCgovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXksIGFsZ29Ub0FkZDogdWludDY0LCByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQsIHZhbGlkYXRvckNvbW1pc3Npb246IHVpbnQ2NCwgc2F0dXJhdGVkQnVyblRvRmVlU2luazogdWludDY0KTogdm9pZAovLwovLyBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzIGlzIGNhbGxlZCBieSBTdGFraW5nIHBvb2xzIHRvIGluZm9ybSB0aGUgdmFsaWRhdG9yICh1cykgdGhhdCBhIHBhcnRpY3VsYXIgYW1vdW50IG9mIHRvdGFsCi8vIHN0YWtlIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIFRoZSBjYWxsaW5nIEFwcCBpZCBpcyB2YWxpZGF0ZWQgYWdhaW5zdCBvdXIgcG9vbCBsaXN0IGFzIHdlbGwuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFZhbGlkYXRvclBvb2xLZXkgdHlwZQovLyBAcGFyYW0ge3VpbnQ2NH0gYWxnb1RvQWRkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzCi8vIEBwYXJhbSB7dWludDY0fSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkIC0gYW1vdW50IHRoaXMgdmFsaWRhdG9yJ3MgdG90YWwgc3Rha2UgaW5jcmVhc2VkIHZpYSByZXdhcmRzICh0aGF0IHNob3VsZCBiZQovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9yQ29tbWlzc2lvbiAtIHRoZSBjb21taXNzaW9uIGFtb3VudCB0aGUgdmFsaWRhdG9yIHdhcyBwYWlkLCBpZiBhbnkKLy8gQHBhcmFtIHt1aW50NjR9IHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbmsgLSBpZiB0aGUgcG9vbCB3YXMgaW4gc2F0dXJhdGVkIHN0YXRlLCB0aGUgYW1vdW50IHNlbnQgYmFjayB0byB0aGUgZmVlIHNpbmsuCi8vIHNlZW4gYXMgJ2FjY291bnRlZCBmb3IvcGVuZGluZyBzcGVudCcpCnN0YWtlVXBkYXRlZFZpYVJld2FyZHM6Cglwcm90byA1IDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk0CgkvLyB0aGlzLnZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CgljYWxsc3ViIHZlcmlmeVBvb2xLZXlDYWxsZXIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgKz0gYWxnb1RvQWRkCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc5OAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBhbGdvVG9BZGQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFsZ29Ub0FkZDogdWludDY0CgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzk5CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjayArPSByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkCglpbnQgMjYwCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyByZXdhcmRUb2tlbkFtb3VudFJlc2VydmVkOiB1aW50NjQKCSsKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MDEKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IGFsZ29Ub0FkZAoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJYnl0ZSAweDczNzQ2MTZiNjU2NCAvLyAic3Rha2VkIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODA0CgkvLyB0aGlzLnJldmVyaWZ5TkZET3duZXJzaGlwKHBvb2xLZXkuaWQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWNhbGxzdWIgcmV2ZXJpZnlORkRPd25lcnNoaXAKCXJldHN1YgoKLy8gc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoqYWJpX3JvdXRlX3N0YWtlUmVtb3ZlZDoKCS8vIHN0YWtlclJlbW92ZWQ6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDUKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXJSZW1vdmVkKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWJ0b2kKCgkvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBzdGFrZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMyAoc3Rha2VyKSBmb3Igc3Rha2VSZW1vdmVkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDQgKHBvb2xLZXkpIGZvciBzdGFrZVJlbW92ZWQgbXVzdCBiZSBhICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCWFzc2VydAoKCS8vIGV4ZWN1dGUgc3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZAoJY2FsbHN1YiBzdGFrZVJlbW92ZWQKCWludCAxCglyZXR1cm4KCi8vIHN0YWtlUmVtb3ZlZChwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBzdGFrZXI6IEFkZHJlc3MsIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NCwgcmV3YXJkUmVtb3ZlZDogdWludDY0LCBzdGFrZXJSZW1vdmVkOiBib29sZWFuKTogdm9pZAovLwovLyBzdGFrZVJlbW92ZWQgaXMgY2FsbGVkIGJ5IFN0YWtpbmcgcG9vbHMgdG8gaW5mb3JtIHRoZSB2YWxpZGF0b3IgKHVzKSB0aGF0IGEgcGFydGljdWxhciBhbW91bnQgb2YgdG90YWwgc3Rha2UgaGFzIGJlZW4gcmVtb3ZlZAovLyBmcm9tIHRoZSBzcGVjaWZpZWQgcG9vbC4gIFRoaXMgaXMgdXNlZCB0byB1cGRhdGUgdGhlIHN0YXRzIHdlIGhhdmUgaW4gb3VyIFBvb2xJbmZvIHN0b3JhZ2UuCi8vIElmIGFueSBhbW91bnQgb2YgcmV3YXJkUmVtb3ZlZCBpcyBzcGVjaWZpZWQsIHRoZW4gdGhhdCBhbW91bnQgb2YgcmV3YXJkIGlzIHNlbnQgdG8gdGhlIHVzZQovLyBUaGUgY2FsbGluZyBBcHAgaWQgaXMgdmFsaWRhdGVkIGFnYWluc3Qgb3VyIHBvb2wgbGlzdCBhcyB3ZWxsLgovLwovLyBAcGFyYW0ge1ZhbGlkYXRvclBvb2xLZXl9IHBvb2xLZXkgY2FsbGluZyB1cyBmcm9tIHdoaWNoIHN0YWtlIHdhcyByZW1vdmVkCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRSZW1vdmVkIC0gYWxnbyBhbW91bnQgcmVtb3ZlZAovLyBAcGFyYW0ge3VpbnQ2NH0gcmV3YXJkUmVtb3ZlZCAtIGlmIGFwcGxpY2FibGUsIGFtb3VudCBvZiB0b2tlbiByZXdhcmQgcmVtb3ZlZCAoYnkgcG9vbCAxIGNhbGxlcikgb3IgVE8gcmVtb3ZlIGFuZCBwYXkgb3V0ICh2aWEgcG9vbCAxIGZyb20gZGlmZmVyZW50IHBvb2wgY2FsbGVyKQovLyBAcGFyYW0ge2Jvb2xlYW59IHN0YWtlclJlbW92ZWQKc3Rha2VSZW1vdmVkOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vICppZjE1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgzNgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjE1X2VuZAoKCS8vICppZjE1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjE1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MzkKCS8vIHRoaXMudmVyaWZ5UG9vbEtleUNhbGxlcihwb29sS2V5KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWNhbGxzdWIgdmVyaWZ5UG9vbEtleUNhbGxlcgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDMKCS8vIGFzc2VydChhbW91bnRSZW1vdmVkID4gMCB8fCByZXdhcmRSZW1vdmVkID4gMCwgJ3Nob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZCcpCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJZHVwCglibnogKnNraXBfb3IyCglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0CglpbnQgMAoJPgoJfHwKCipza2lwX29yMjoKCS8vIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzW3Bvb2xLZXkucG9vbElkIC0gMV0udG90YWxBbGdvU3Rha2VkIC09IGFtb3VudFJlbW92ZWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCAtPSBhbW91bnRSZW1vdmVkCglpbnQgMjUyCglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCS0KCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NDgKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlIC09IGFtb3VudFJlbW92ZWQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CgktCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vICppZjE2X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MAoJLy8gcmV3YXJkUmVtb3ZlZCA+IDAKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCWludCAwCgk+CglieiAqaWYxNl9lbHNlCgoJLy8gKmlmMTZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1MQoJLy8gcmV3YXJkVG9rZW5JRCA9IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5jb25maWcucmV3YXJkVG9rZW5JZAoJaW50IDE1MwoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTIKCS8vIGFzc2VydChyZXdhcmRUb2tlbklEICE9PSAwLCAicmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hIikKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoJaW50IDAKCSE9CgoJLy8gcmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODUzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrID49IHJld2FyZFJlbW92ZWQsCgkvLyAgICAgICAgICdyZXdhcmQgYmVpbmcgcmVtb3ZlZCBtdXN0IGJlIGNvdmVyZWQgYnkgaG9sZCBiYWNrIGFtb3VudCcKCS8vICAgICAgICkKCWludCAyNjAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtNCAvLyByZXdhcmRSZW1vdmVkOiB1aW50NjQKCT49CgoJLy8gcmV3YXJkIGJlaW5nIHJlbW92ZWQgbXVzdCBiZSBjb3ZlcmVkIGJ5IGhvbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NTkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrIC09IHJld2FyZFJlbW92ZWQKCWludCAyNjAKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmMTdfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODY0CgkvLyBwb29sS2V5LnBvb2xJZCAhPT0gMQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJIT0KCWJ6ICppZjE3X2VuZAoKCS8vICppZjE3X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjUKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucGF5VG9rZW5SZXdhcmQ+KHsKCS8vICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpLAoJLy8gICAgICAgICAgIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjYKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzWzBdLnBvb2xBcHBJZCkKCWludCAyNjgKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NjcKCS8vIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYxN19lbmQ6CgliICppZjE2X2VuZAoKKmlmMTZfZWxzZToKCippZjE2X2VuZDoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg5MgoJLy8gc3Rha2VyUmVtb3ZlZAoJZnJhbWVfZGlnIC01IC8vIHN0YWtlclJlbW92ZWQ6IGJvb2xlYW4KCWJ6ICppZjE4X2VuZAoKCS8vICppZjE4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTQKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMjY4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDEKCS0KCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnQgOCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJLQoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4OTYKCS8vIHJlbW92ZVJldCA9IHRoaXMucmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQoc3Rha2VyLCA8VmFsaWRhdG9yUG9vbEtleT57CgkvLyAgICAgICAgIGlkOiBwb29sS2V5LmlkLAoJLy8gICAgICAgICBwb29sSWQ6IHBvb2xLZXkucG9vbElkLAoJLy8gICAgICAgICBwb29sQXBwSWQ6IHBvb2xLZXkucG9vbEFwcElkLAoJLy8gICAgICAgfSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJY2FsbHN1YiByZW1vdmVGcm9tU3Rha2VyUG9vbFNldAoJZnJhbWVfYnVyeSAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTAxCgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IgPSByZW1vdmVSZXRbMF0KCWZyYW1lX2RpZyAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZ2V0Yml0CglmcmFtZV9idXJ5IDIgLy8gc3Rha2VyT3V0T2ZUaGlzVmFsaWRhdG9yOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwMgoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbCA9IHJlbW92ZVJldFsxXQoJZnJhbWVfZGlnIDEgLy8gcmVtb3ZlUmV0OiAoYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglnZXRiaXQKCWZyYW1lX2J1cnkgMyAvLyBzdGFrZXJPdXRPZlByb3RvY29sOiBib29sCgoJLy8gKmlmMTlfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTA0CgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIHN0YWtlck91dE9mVGhpc1ZhbGlkYXRvcjogYm9vbAoJYnogKmlmMTlfZW5kCgoJLy8gKmlmMTlfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwNQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyAtPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgktCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjE5X2VuZDoKCS8vICppZjIwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOAoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbAoJZnJhbWVfZGlnIDMgLy8gc3Rha2VyT3V0T2ZQcm90b2NvbDogYm9vbAoJYnogKmlmMjBfZW5kCgoJLy8gKmlmMjBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkwOQoJLy8gdGhpcy5udW1TdGFrZXJzLnZhbHVlIC09IDEKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMQoJLQoJYnl0ZSAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIC8vICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCippZjIwX2VuZDoKCippZjE4X2VuZDoKCXJldHN1YgoKLy8gZmluZFBvb2xGb3JTdGFrZXIodWludDY0LGFkZHJlc3MsdWludDY0KSgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9maW5kUG9vbEZvclN0YWtlcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYW1vdW50VG9TdGFrZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlcikgZm9yIGZpbmRQb29sRm9yU3Rha2VyIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJY2FsbHN1YiBmaW5kUG9vbEZvclN0YWtlcgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZpbmRQb29sRm9yU3Rha2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHN0YWtlcjogQWRkcmVzcywgYW1vdW50VG9TdGFrZTogdWludDY0KTogW1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW5dCi8vCi8vIEZpbmRzIHRoZSBwb29sIGZvciBhIHN0YWtlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgdmFsaWRhdG9yIGlkLCBzdGFrZXIgYWRkcmVzcywgYW5kIGFtb3VudCB0byBzdGFrZS4KLy8gRmlyc3QgY2hlY2tzIHRoZSBzdGFrZXJzICdhbHJlYWR5IHN0YWtlZCBsaXN0JyBmb3IgdGhlIHZhbGlkYXRvciBwcmVmZXJyaW5nIHRob3NlIChhZGRpbmcgaWYgcG9zc2libGUpIHRoZW4gYWRkcwovLyB0byBuZXcgcG9vbCBpZiBuZWNlc3NhcnkuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1N0YWtlIC0gVGhlIGFtb3VudCB0byBzdGFrZS4KLy8gQHJldHVybnMge1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW59IC0gVGhlIHBvb2wgZm9yIHRoZSBzdGFrZXIsIHRydWUvZmFsc2Ugb24gd2hldGhlciB0aGUgc3Rha2VyIGlzICduZXcnCi8vIHRvIHRoaXMgVkFMSURBVE9SLCBhbmQgdHJ1ZS9mYWxzZSBpZiBzdGFrZXIgaXMgbmV3IHRvIHRoZSBwcm90b2NvbC4KZmluZFBvb2xGb3JTdGFrZXI6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA3CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzMAoJLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MzEKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkzOQoJLy8gbWF4UGVyUG9vbCA9IHRoaXMuZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sCglmcmFtZV9idXJ5IDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoJLy8gKmlmMjFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQyCgkvLyB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMiAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglieiAqaWYyMV9lbmQKCgkvLyAqaWYyMV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTQzCgkvLyBwb29sU2V0ID0gY2xvbmUodGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUpCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlCglhc3NlcnQKCWZyYW1lX2J1cnkgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NAoJLy8gYXNzZXJ0KHZhbGlkYXRvcklkICE9PSAwKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWludCAwCgkhPQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBwb29sU2V0Lmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfMzoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDUKCS8vIGkgPCBwb29sU2V0Lmxlbmd0aAoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjIyX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NgoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCAzMDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCAzMDAKCTwKCWJ6ICppZjIyX2VuZAoKCS8vICppZjIyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjIyX2VuZDoKCS8vICppZjIzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0OQoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYyM19lbmQKCgkvLyAqaWYyM19jb25zZXF1ZW50CgliICpmb3JfM19jb250aW51ZQoKKmlmMjNfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1MgoJLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCgoJLy8gKmlmMjRfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTUzCgkvLyBwb29sU2V0W2ldLmlkID09PSB2YWxpZGF0b3JJZAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCT09CglieiAqaWYyNF9lbmQKCgkvLyAqaWYyNF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTU1CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk1NwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1twb29sU2V0W2ldLnBvb2xJZCAtIDFdLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0KCS8vICAgICAgICAgICAgIG1heFBlclBvb2wKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAxMCAvLyBoZWFkT2Zmc2V0CgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRUb1N0YWtlOiB1aW50NjQKCSsKCWZyYW1lX2RpZyAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoJPD0KCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjAKCS8vIHJldHVybiBbcG9vbFNldFtpXSwgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwgaXNOZXdTdGFrZXJUb1Byb3RvY29sXTsKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjVfZW5kOgoKKmlmMjRfZW5kOgoKKmZvcl8zX2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk0NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgliICpmb3JfMwoKKmZvcl8zX2VuZDoKCippZjIxX2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NjcKCS8vIGFzc2VydCgKCS8vICAgICAgIGFtb3VudFRvU3Rha2UgPj0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWluRW50cnlTdGFrZSwKCS8vICAgICAgICdtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU3Rha2U6IHVpbnQ2NAoJaW50IDIwOQoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk+PQoKCS8vIG11c3Qgc3Rha2UgYXQgbGVhc3QgdGhlIG1pbmltdW0gZm9yIHRoaXMgcG9vbAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3MwoJLy8gcG9vbHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzKQoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglpbnQgNDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA1IC8vIHBvb2xzOiAodWludDY0LHVpbnQxNix1aW50NjQpWzI0XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzQKCS8vIGN1ck51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludCAyNDIKCWludCAyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc1CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGN1ck51bVBvb2xzOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIGk6IHVpbnQ2NAoKKmZvcl80OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfNF9lbmQKCgkvLyAqaWYyNl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NzYKCS8vIHBvb2xzW2ldLnRvdGFsQWxnb1N0YWtlZCArIGFtb3VudFRvU3Rha2UgPD0gbWF4UGVyUG9vbAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMTAgLy8gaGVhZE9mZnNldAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50VG9TdGFrZTogdWludDY0CgkrCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCTw9CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTc3CgkvLyByZXR1cm4gWwoJLy8gICAgICAgICAgIHsgaWQ6IHZhbGlkYXRvcklkLCBwb29sSWQ6IGkgKyAxLCBwb29sQXBwSWQ6IHBvb2xzW2ldLnBvb2xBcHBJZCB9LAoJLy8gICAgICAgICAgIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsCgkvLyAgICAgICAgICAgaXNOZXdTdGFrZXJUb1Byb3RvY29sLAoJLy8gICAgICAgICBdOwoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIDUgLy8gcG9vbHM6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCWIgKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybgoKKmlmMjZfZW5kOgoKKmZvcl80X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk3NQoJLy8gaSArPSAxCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgliICpmb3JfNAoKKmZvcl80X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5ODUKCS8vIHJldHVybiBbeyBpZDogdmFsaWRhdG9ySWQsIHBvb2xJZDogMCwgcG9vbEFwcElkOiAwIH0sIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IsIGlzTmV3U3Rha2VyVG9Qcm90b2NvbF07CglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZSAweDAwCglpbnQgMAoJZnJhbWVfZGlnIDAgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoJc2V0Yml0CglpbnQgMQoJZnJhbWVfZGlnIDEgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCglzZXRiaXQKCWNvbmNhdAoKKmZpbmRQb29sRm9yU3Rha2VyKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDcKCXJldHN1YgoKLy8gbW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX21vdmVQb29sVG9Ob2RlOgoJLy8gbm9kZU51bTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gcG9vbEFwcElkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBtb3ZlUG9vbFRvTm9kZSh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIG1vdmVQb29sVG9Ob2RlCglpbnQgMQoJcmV0dXJuCgovLyBtb3ZlUG9vbFRvTm9kZSh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBwb29sQXBwSWQ6IHVpbnQ2NCwgbm9kZU51bTogdWludDY0KTogdm9pZAovLwovLyBGaW5kIHRoZSBzcGVjaWZpZWQgcG9vbCAoaW4gYW55IG5vZGUgbnVtYmVyKSBhbmQgbW92ZSBpdCB0byB0aGUgc3BlY2lmaWVkIG5vZGUuCi8vIFRoZSBwb29sIGFjY291bnQgaXMgZm9yY2VkIG9mZmxpbmUgaWYgbW92ZWQgc28gcHJpb3Igbm9kZSB3aWxsIHN0aWxsIHJ1biBmb3IgMzIwIHJvdW5kcyBidXQKLy8gbmV3IGtleSBnb2VzIG9ubGluZSBvbiBuZXcgbm9kZSBzb29uIGFmdGVyICgzMjAgcm91bmRzIGFmdGVyIGl0IGdvZXMgb25saW5lKQovLyBOby1vcCBpZiBzdWNjZXNzLCBhc3NlcnRzIGlmIG5vdCBmb3VuZCBvciBjYW4ndCBtb3ZlICAobm8gc3BhY2UgaW4gdGFyZ2V0KQovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gQ0hBTkdFIF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSBwb29sQXBwSWQKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0KbW92ZVBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDEKCS8vIGFzc2VydCgKCS8vICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIgfHwKCS8vICAgICAgICAgdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5tYW5hZ2VyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcicKCS8vICAgICApCgl0eG4gU2VuZGVyCglpbnQgOAoJaW50IDMyCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCWR1cAoJYm56ICpza2lwX29yMwoJdHhuIFNlbmRlcgoJaW50IDQwCglpbnQgMzIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoJfHwKCipza2lwX29yMzoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMDcKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDA4CgkvLyBhc3NlcnQobm9kZU51bSA+PSAxICYmIG5vZGVOdW0gPD0gTUFYX05PREVTLCAnbm9kZSBudW1iZXIgb3V0IG9mIGFsbG93YWJsZSByYW5nZScpCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDgKCTw9CgkmJgoKKnNraXBfYW5kMToKCS8vIG5vZGUgbnVtYmVyIG91dCBvZiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBmb3IgKGxldCBzcmNOb2RlSWR4ID0gMDsgc3JjTm9kZUlkeCA8IE1BWF9OT0RFUzsgc3JjTm9kZUlkeCArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCipmb3JfNToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEwCgkvLyBzcmNOb2RlSWR4IDwgTUFYX05PREVTCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCWludCA4Cgk8CglieiAqZm9yXzVfZW5kCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgTUFYX1BPT0xTX1BFUl9OT0RFOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl82OgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTEKCS8vIGkgPCBNQVhfUE9PTFNfUEVSX05PREUKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDMKCTwKCWJ6ICpmb3JfNl9lbmQKCgkvLyAqaWYyN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDEyCgkvLyBub2RlUG9vbEFzc2lnbm1lbnRzLm5vZGVzW3NyY05vZGVJZHhdLnBvb2xBcHBJZHNbaV0gPT09IHBvb2xBcHBJZAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0Cgk9PQoJYnogKmlmMjdfZW5kCgoJLy8gKmlmMjdfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTMKCS8vIGFzc2VydChub2RlTnVtIC0gMSAhPT0gc3JjTm9kZUlkeCwgImNhbid0IG1vdmUgdG8gc2FtZSBub2RlIikKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCSE9CgoJLy8gY2FuJ3QgbW92ZSB0byBzYW1lIG5vZGUKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbc3JjTm9kZUlkeF0ucG9vbEFwcElkc1tpXSA9IDAKCWludCA5MDAKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE4CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLmdvT2ZmbGluZT4oewoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLAoJLy8gICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJnb09mZmxpbmUoKXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDE5CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDIzCgkvLyB0aGlzLmFkZFBvb2xUb05vZGUodmFsaWRhdG9ySWQsIHBvb2xBcHBJZCwgbm9kZU51bSkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgYWRkUG9vbFRvTm9kZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDI0CgkvLyByZXR1cm47CglyZXRzdWIKCippZjI3X2VuZDoKCipmb3JfNl9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDExCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl82CgoqZm9yXzZfZW5kOgoKKmZvcl81X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMTAKCS8vIHNyY05vZGVJZHggKz0gMQoJZnJhbWVfZGlnIDEgLy8gc3JjTm9kZUlkeDogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJYiAqZm9yXzUKCipmb3JfNV9lbmQ6CgkvLyBjb3VsZG4ndCBmaW5kIHBvb2wgYXBwIGlkIGluIG5vZGVzIHRvIG1vdmUKCWVycgoJcmV0c3ViCgovLyBlbXB0eVRva2VuUmV3YXJkcyh1aW50NjQsYWRkcmVzcyl1aW50NjQKKmFiaV9yb3V0ZV9lbXB0eVRva2VuUmV3YXJkczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gcmVjZWl2ZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAocmVjZWl2ZXIpIGZvciBlbXB0eVRva2VuUmV3YXJkcyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0CgljYWxsc3ViIGVtcHR5VG9rZW5SZXdhcmRzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlUb2tlblJld2FyZHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgcmVjZWl2ZXI6IEFkZHJlc3MpOiB1aW50NjQKLy8KLy8gU2VuZHMgdGhlIHJld2FyZCB0b2tlbnMgaGVsZCBpbiBwb29sIDEgdG8gc3BlY2lmaWVkIHJlY2VpdmVyLgovLyBUaGlzIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgYnkgdGhlIG93bmVyIHdoZW4gdGhleSB3YW50IHRvIGdldCByZXdhcmQgdG9rZW5zICdiYWNrJyB3aGljaCB0aGV5IHNlbnQgdG8KLy8gdGhlIGZpcnN0IHBvb2wgKGxpa2VseSBiZWNhdXNlIHZhbGlkYXRvciBpcyBzdW5zZXR0aW5nLiAgQW55IHRva2VucyBjdXJyZW50bHkgJ3Jlc2VydmVkJyBmb3Igc3Rha2VycyB0byBjbGFpbSB3aWxsCi8vIE5PVCBiZSBzZW50IGFzIHRoZXkgbXVzdCBiZSBoZWxkIGJhY2sgZm9yIHN0YWtlcnMgdG8gbGF0ZXIgY2xhaW0uCi8vIFsgT05MWSBPV05FUiBDQU4gQ0FMTF0KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7QWRkcmVzc30gcmVjZWl2ZXIgLSB0aGUgYWNjb3VudCB0byBzZW5kIHRoZSB0b2tlbnMgdG8gKG11c3QgYWxyZWFkeSBiZSBvcHRlZC1pbiB0byB0aGUgcmV3YXJkIHRva2VuKQovLyBAcmV0dXJucyB7dWludDY0fSB0aGUgYW1vdW50IG9mIHJld2FyZCB0b2tlbiBzZW50CmVtcHR5VG9rZW5SZXdhcmRzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDQzCgkvLyBhc3NlcnQoCgkvLyAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyLAoJLy8gICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXInCgkvLyAgICAgKQoJdHhuIFNlbmRlcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCT09CgoJLy8gY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IHZhbGlkYXRvciBvd25lcgoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDcKCS8vIHJld2FyZFRva2VuSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRUb2tlbklkCglpbnQgMTUzCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA0OAoJLy8gcmV3YXJkVG9rZW5IZWxkQmFjayA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjawoJaW50IDI2MAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNDkKCS8vIGFzc2VydChyZXdhcmRUb2tlbklkICE9PSAwLCAidGhpcyB2YWxpZGF0b3IgZG9lc24ndCBoYXZlIGEgcmV3YXJkIHRva2VuIGRlZmluZWQiKQoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0CglpbnQgMAoJIT0KCgkvLyB0aGlzIHZhbGlkYXRvciBkb2Vzbid0IGhhdmUgYSByZXdhcmQgdG9rZW4gZGVmaW5lZAoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTAKCS8vIHBvb2xPbmVBcHBJZCA9IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpCglpbnQgMjY4CglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDUyCgkvLyB0b2tlblJld2FyZEJhbCA9IHBvb2xPbmVBcHBJZC5hZGRyZXNzLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQocmV3YXJkVG9rZW5JZCkpIC0gcmV3YXJkVG9rZW5IZWxkQmFjawoJZnJhbWVfZGlnIDIgLy8gcG9vbE9uZUFwcElkOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0CgktCglmcmFtZV9idXJ5IDMgLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU1CgkvLyBzZW5kTWV0aG9kQ2FsbDx0eXBlb2YgU3Rha2luZ1Bvb2wucHJvdG90eXBlLnBheVRva2VuUmV3YXJkPih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQsCgkvLyAgICAgICBtZXRob2RBcmdzOiBbcmVjZWl2ZXIsIHJld2FyZFRva2VuSWQsIHRva2VuUmV3YXJkQmFsXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU2CgkvLyBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQKCWZyYW1lX2RpZyAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA1NwoJLy8gbWV0aG9kQXJnczogW3JlY2VpdmVyLCByZXdhcmRUb2tlbklkLCB0b2tlblJld2FyZEJhbF0KCWZyYW1lX2RpZyAtMiAvLyByZWNlaXZlcjogQWRkcmVzcwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAzIC8vIHRva2VuUmV3YXJkQmFsOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDU5CgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sT25lQXBwSWQuYWRkcmVzcy5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHJld2FyZFRva2VuSWQpKSA9PT0gcmV3YXJkVG9rZW5IZWxkQmFjaywKCS8vICAgICAgICdiYWxhbmNlIG9mIHJlbWFpbmluZyByZXdhcmQgdG9rZW5zIHNob3VsZCBtYXRjaCB0aGUgaGVsZCBiYWNrIGFtb3VudCcKCS8vICAgICApCglmcmFtZV9kaWcgMiAvLyBwb29sT25lQXBwSWQ6IHVpbnQ2NAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCglmcmFtZV9kaWcgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMSAvLyByZXdhcmRUb2tlbkhlbGRCYWNrOiB1aW50NjQKCT09CgoJLy8gYmFsYW5jZSBvZiByZW1haW5pbmcgcmV3YXJkIHRva2VucyBzaG91bGQgbWF0Y2ggdGhlIGhlbGQgYmFjayBhbW91bnQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDYzCgkvLyByZXR1cm4gdG9rZW5SZXdhcmRCYWw7CglmcmFtZV9kaWcgMyAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkpOiB2b2lkCi8vCi8vIExvZ3MgdGhlIGFkZGl0aW9uIG9mIGEgbmV3IHZhbGlkYXRvciB0byB0aGUgc3lzdGVtLCBpdHMgaW5pdGlhbCBvd25lciBhbmQgbWFuYWdlcgovLwovLwovLyB2ZXJpZnlQb29sS2V5Q2FsbGVyIHZlcmlmaWVzIHRoZSBwYXNzZWQgaW4ga2V5IChmcm9tIGEgc3Rha2luZyBwb29sIGNhbGxpbmcgdXMgdG8gdXBkYXRlIG1ldHJpY3MpIGlzIHZhbGlkCi8vIGFuZCBtYXRjaGVzIHRoZSBpbmZvcm1hdGlvbiB3ZSBoYXZlIGluIG91ciBzdGF0ZS4gICdGYWtlJyBwb29scyBjb3VsZCBjYWxsIHVzIHRvIHVwZGF0ZSBvdXIgZGF0YSwgYnV0IHRoZXkKLy8gY2FuJ3QgZmFrZSB0aGUgaWRzIGFuZCBtb3N0IGltcG9ydGFudGx5IGFwcGxpY2F0aW9uIGlkKCEpIG9mIHRoZSBjYWxsZXIgdGhhdCBoYXMgdG8gbWF0Y2guCnZlcmlmeVBvb2xLZXlDYWxsZXI6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2MQoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS5leGlzdHMsICJ0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gdGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYyCgkvLyBhc3NlcnQocG9vbEtleS5wb29sSWQgPD0gTUFYX1BPT0xTLCAncG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMjQKCTw9CgoJLy8gcG9vbCBpZCBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYzCgkvLyBhc3NlcnQoCgkvLyAgICAgICBwb29sS2V5LnBvb2xJZCA+IDAgJiYgKHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNikgPD0gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzLAoJLy8gICAgICAgJ3Bvb2wgaWQgb3V0c2lkZSBvZiByYW5nZSBvZiBwb29scyBjcmVhdGVkIGZvciB0aGlzIHZhbGlkYXRvcicKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAwCgk+CglkdXAKCWJ6ICpza2lwX2FuZDIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50IDI0MgoJaW50IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJPD0KCSYmCgoqc2tpcF9hbmQyOgoJLy8gcG9vbCBpZCBvdXRzaWRlIG9mIHJhbmdlIG9mIHBvb2xzIGNyZWF0ZWQgZm9yIHRoaXMgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2OQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgcG9vbEtleS5wb29sQXBwSWQgPT09IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnBvb2xBcHBJZCwKCS8vICAgICAgICJUaGUgcGFzc2VkIGluIGFwcCBpZCBkb2Vzbid0IG1hdGNoIHRoZSBwYXNzZWQgaW4gaWRzIgoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk9PQoKCS8vIFRoZSBwYXNzZWQgaW4gYXBwIGlkIGRvZXNuJ3QgbWF0Y2ggdGhlIHBhc3NlZCBpbiBpZHMKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTc0CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyID09PSBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5hZGRyZXNzKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCgk9PQoJYXNzZXJ0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzYKCS8vIGFzc2VydChwb29sS2V5LmlkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3ZhbGlkYXRvcklkJykgYXMgdWludDY0KSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJYnl0ZSAweDc2NjE2YzY5NjQ2MTc0NmY3MjQ5NjQgLy8gInZhbGlkYXRvcklkIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLmdsb2JhbFN0YXRlKCd2YWxpZGF0b3JJZCcpCglhc3NlcnQKCT09Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE3NwoJLy8gYXNzZXJ0KHBvb2xLZXkucG9vbElkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3Bvb2xJZCcpIGFzIHVpbnQ2NCkpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWJ5dGUgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5nbG9iYWxTdGF0ZSgncG9vbElkJykKCWFzc2VydAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyByZXZlcmlmeU5GRE93bmVyc2hpcCh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogdm9pZAovLwovLyBUaGlzIG1ldGhvZCB2ZXJpZmllcyB0aGUgb3duZXJzaGlwIG9mIE5GRCAoTmFtZWQgRnVuY3Rpb24gRGF0YSkgYnkgYSB2YWxpZGF0b3IuCi8vIElmIHRoZSBvd25lcnNoaXAgaXMgbm8gbG9uZ2VyIHZhbGlkLCBpdCByZW1vdmVzIHRoZSBORkQgZnJvbSB0aGUgdmFsaWRhdG9yJ3MgY29uZmlndXJhdGlvbi4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3Igd2hvc2UgZGF0YSBzaG91bGQgYmUgcmUtZXZhbHVhdGVkLgpyZXZlcmlmeU5GRE93bmVyc2hpcDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4NwoJLy8gdmFsaWRhdG9yQ29uZmlnID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsaWRhdG9yQ29uZmlnCgoJLy8gKmlmMjhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE4OAoJLy8gdmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8gIT09IDAKCWludCA3MgoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjI4X2VuZAoKCS8vICppZjI4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkxCgkvLyBuZmRPd25lciA9IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKSBhcyBBZGRyZXNzCglpbnQgNzIKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJYnl0ZSAweDY5MmU2Zjc3NmU2NTcyMmU2MSAvLyAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9idXJ5IDEgLy8gbmZkT3duZXI6IGFkZHJlc3MKCgkvLyAqaWYyOV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTkzCgkvLyB2YWxpZGF0b3JDb25maWcub3duZXIgIT09IG5mZE93bmVyICYmIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSBuZmRPd25lcgoJaW50IDgKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJZHVwCglieiAqc2tpcF9hbmQzCglpbnQgNDAKCWludCAzMgoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2RpZyAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgkhPQoJJiYKCipza2lwX2FuZDM6CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE5NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IDAKCWludCA3MgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYyOV9lbmQ6CgoqaWYyOF9lbmQ6CglyZXRzdWIKCi8vIHZhbGlkYXRlQ29uZmlnKGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnKTogdm9pZAp2YWxpZGF0ZUNvbmZpZzoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjAyCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZW50cnlHYXRpbmdUeXBlID49IEdBVElOR19UWVBFX05PTkUgJiYgY29uZmlnLmVudHJ5R2F0aW5nVHlwZSA8PSBHQVRJTkdfVFlQRV9DT05TVF9NQVgsCgkvLyAgICAgICAnZ2F0aW5nIHR5cGUgbm90IHZhbGlkJwoJLy8gICAgICkKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnQgMAoJPj0KCWR1cAoJYnogKnNraXBfYW5kNAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDgwIDEKCWJ0b2kKCWludCA0Cgk8PQoJJiYKCipza2lwX2FuZDQ6CgkvLyBnYXRpbmcgdHlwZSBub3QgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA2CgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcuZXBvY2hSb3VuZExlbmd0aCA+PSBNSU5fRVBPQ0hfTEVOR1RIICYmIGNvbmZpZy5lcG9jaFJvdW5kTGVuZ3RoIDw9IE1BWF9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICAnZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UnCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kNQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnQgMTAwMDAwMAoJPD0KCSYmCgoqc2tpcF9hbmQ1OgoJLy8gZXBvY2ggbGVuZ3RoIG5vdCBpbiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjEwCgkvLyBhc3NlcnQoCgkvLyAgICAgICBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yID49IE1JTl9QQ1RfVE9fVkFMSURBVE9SICYmIGNvbmZpZy5wZXJjZW50VG9WYWxpZGF0b3IgPD0gTUFYX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICAnY29tbWlzc2lvbiBwZXJjZW50YWdlIG5vdCB2YWxpZCcKCS8vICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgk+PQoJZHVwCglieiAqc2tpcF9hbmQ2CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAxMDAwMDAwCgk8PQoJJiYKCipza2lwX2FuZDY6CgkvLyBjb21taXNzaW9uIHBlcmNlbnRhZ2Ugbm90IHZhbGlkCglhc3NlcnQKCgkvLyAqaWYzMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjE0CgkvLyBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yICE9PSAwCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTczIDQKCWJ0b2kKCWludCAwCgkhPQoJYnogKmlmMzBfZW5kCgoJLy8gKmlmMzBfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMTUKCS8vIGFzc2VydCgKCS8vICAgICAgICAgY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgICAndmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAnCgkvLyAgICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTc3IDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAKCWFzc2VydAoKKmlmMzBfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMjAKCS8vIGFzc2VydChjb25maWcubWluRW50cnlTdGFrZSA+PSBNSU5fQUxHT19TVEFLRV9QRVJfUE9PTCwgJ3N0YWtpbmcgcG9vbCBtdXN0IGhhdmUgbWluaW11bSBlbnRyeSBvZiAxIGFsZ28nKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIwOSA4CglidG9pCglpbnQgMTAwMDAwMAoJPj0KCgkvLyBzdGFraW5nIHBvb2wgbXVzdCBoYXZlIG1pbmltdW0gZW50cnkgb2YgMSBhbGdvCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyMgoJLy8gYXNzZXJ0KAoJLy8gICAgICAgY29uZmlnLnBvb2xzUGVyTm9kZSA+IDAgJiYgY29uZmlnLnBvb2xzUGVyTm9kZSA8PSBNQVhfUE9PTFNfUEVSX05PREUsCgkvLyAgICAgICAnbnVtYmVyIG9mIHBvb2xzIHBlciBub2RlIGV4Y2VlZHMgYWxsb3dlZCBudW1iZXInCgkvLyAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNSAxCglidG9pCglpbnQgMAoJPgoJZHVwCglieiAqc2tpcF9hbmQ3CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMjI1IDEKCWJ0b2kKCWludCAzCgk8PQoJJiYKCipza2lwX2FuZDc6CgkvLyBudW1iZXIgb2YgcG9vbHMgcGVyIG5vZGUgZXhjZWVkcyBhbGxvd2VkIG51bWJlcgoJYXNzZXJ0CgoJLy8gKmlmMzFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIyNgoJLy8gY29uZmlnLnN1bnNldHRpbmdPbiAhPT0gMAoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNiA4CglidG9pCglpbnQgMAoJIT0KCWJ6ICppZjMxX2VuZAoKCS8vICppZjMxX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjI3CgkvLyBhc3NlcnQoY29uZmlnLnN1bnNldHRpbmdPbiA+IGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wLCAnc3Vuc2V0dGluZ09uIG11c3QgYmUgbGF0ZXIgdGhhbiBub3cgaWYgc2V0JykKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAyMjYgOAoJYnRvaQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJPgoKCS8vIHN1bnNldHRpbmdPbiBtdXN0IGJlIGxhdGVyIHRoYW4gbm93IGlmIHNldAoJYXNzZXJ0CgoqaWYzMV9lbmQ6CglyZXRzdWIKCi8vIGNhbGxQb29sQWRkU3Rha2Uoc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuLCBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBtYnJBbXRQYWlkOiB1aW50NjQsIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2xlYW4sIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbik6IHZvaWQKLy8KLy8gQWRkcyBhIHN0YWtlcnMgYW1vdW50IG9mIGFsZ28gdG8gYSB2YWxpZGF0b3IgcG9vbCwgdHJhbnNmZXJyaW5nIHRoZSBhbGdvIHdlIHJlY2VpdmVkIGZyb20gdGhlbSAoYWxyZWFkeSB2ZXJpZmllZAovLyBieSBvdXIgY2FsbGVyKSB0byB0aGUgc3Rha2luZyBwb29sIGFjY291bnQsIGFuZCB0aGVuIHRlbGxpbmcgaXQgYWJvdXQgdGhlIGFtb3VudCBiZWluZyBhZGRlZCBmb3IgdGhlIHNwZWNpZmllZAovLyBzdGFrZXIuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sS2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsaWRhdG9yIHBvb2wuCi8vIEBwYXJhbSB7dWludDY0fSBtYnJBbXRQYWlkIC0gQW1vdW50IHRoZSB1c2VyIGlzIGxlYXZpbmcgYmVoaW5kIGluIHRoZSB2YWxpZGF0b3IgdG8gcGF5IGZvciB0aGVpciBzdGFrZXIgTUJSIGNvc3QKLy8gQHBhcmFtIHtib29sZWFufSBpc05ld1N0YWtlclRvVmFsaWRhdG9yIC0gaWYgdGhpcyBpcyBhIG5ldywgZmlyc3QtdGltZSBzdGFrZXIgdG8gdGhlIHZhbGlkYXRvcgovLyBAcGFyYW0ge2Jvb2xlYW59IGlzTmV3U3Rha2VyVG9Qcm90b2NvbCAtIGlmIHRoaXMgaXMgYSBuZXcsIGZpcnN0LXRpbWUgc3Rha2VyIHRvIHRoZSBwcm90b2NvbApjYWxsUG9vbEFkZFN0YWtlOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjQ5CgkvLyBwb29sQXBwSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS5wb29sQXBwSWQKCWludCAyNjggLy8gaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJLQoJaW50IDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAwCgkrCglpbnQgOAoJYnl0ZSAweDc2IC8vICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MwoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFN0YWtpbmdQb29sLnByb3RvdHlwZS5hZGRTdGFrZSwgdWludDY0Pih7CgkvLyAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCksCgkvLyAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgLy8gVEhJUyBJUyBBIFNFTkQgb2YgdGhlIGFtb3VudCByZWNlaXZlZCByaWdodCBiYWNrIG91dCBhbmQgaW50byB0aGUgc3Rha2luZyBwb29sIGNvbnRyYWN0IGFjY291bnQuCgkvLyAgICAgICAgIHsgYW1vdW50OiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQsIHJlY2VpdmVyOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuYWRkcmVzcyB9LAoJLy8gICAgICAgICAvLyA9PT09PT09CgkvLyAgICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQuc2VuZGVyLAoJLy8gICAgICAgXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCglpdHhuX2ZpZWxkIEFtb3VudAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjU4CgkvLyByZWNlaXZlcjogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmFkZHJlc3MKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYWRkU3Rha2UocGF5LGFkZHJlc3MpdWludDY0IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpCglmcmFtZV9kaWcgMCAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbklECgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNTUKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgLy8gPT09PT09PQoJLy8gICAgICAgICAvLyBUSElTIElTIEEgU0VORCBvZiB0aGUgYW1vdW50IHJlY2VpdmVkIHJpZ2h0IGJhY2sgb3V0IGFuZCBpbnRvIHRoZSBzdGFraW5nIHBvb2wgY29udHJhY3QgYWNjb3VudC4KCS8vICAgICAgICAgeyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZCwgcmVjZWl2ZXI6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5hZGRyZXNzIH0sCgkvLyAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgc3Rha2VkQW1vdW50UGF5bWVudC5zZW5kZXIsCgkvLyAgICAgICBdCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBTZW5kZXIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnQgMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglidG9pCgoJLy8gKmlmMzJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2MwoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCA1MDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCWludCA1MDAKCTwKCWJ6ICppZjMyX2VuZAoKCS8vICppZjMyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjY0CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoqaWYzMl9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OAoJLy8gcG9vbE51bVN0YWtlcnMgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ251bVN0YWtlcnMnKSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmdsb2JhbFN0YXRlKCdudW1TdGFrZXJzJykKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xOdW1TdGFrZXJzOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2OQoJLy8gcG9vbEFsZ29TdGFrZWQgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpIGFzIHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCWJ5dGUgMHg3Mzc0NjE2YjY1NjQgLy8gInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3N0YWtlZCcpCglhc3NlcnQKCWZyYW1lX2J1cnkgMiAvLyBwb29sQWxnb1N0YWtlZDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsU3Rha2VycyA9IHBvb2xOdW1TdGFrZXJzIGFzIHVpbnQxNgoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDggLy8gaGVhZE9mZnNldAoJKwoJZnJhbWVfZGlnIDEgLy8gcG9vbE51bVN0YWtlcnM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjcxCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgPSBwb29sQWxnb1N0YWtlZAoJaW50IDI2OCAvLyBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludCAxCgktCglpbnQgMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDEwIC8vIGhlYWRPZmZzZXQKCSsKCWZyYW1lX2RpZyAyIC8vIHBvb2xBbGdvU3Rha2VkOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vICppZjMzX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzQKCS8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IKCWZyYW1lX2RpZyAtNCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sZWFuCglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI3NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyArPSAxCglpbnQgMjQ0CglkdXAKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludCAxCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCippZjMzX2VuZDoKCS8vICppZjM0X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzcKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbAoJZnJhbWVfZGlnIC01IC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbgoJYnogKmlmMzRfZW5kCgoJLy8gKmlmMzRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzgKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSArPSAxCglieXRlIDB4NmU3NTZkNTM3NDYxNmI2NTcyNzMgLy8gIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50IDEKCSsKCWJ5dGUgMHg2ZTc1NmQ1Mzc0NjE2YjY1NzI3MyAvLyAibnVtU3Rha2VycyIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoqaWYzNF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQKCWludCAyNTIKCWR1cAoJaW50IDgKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4MQoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgKz0gc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgLSBtYnJBbXRQYWlkCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglhcHBfZ2xvYmFsX2dldAoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglieXRlIDB4NzM3NDYxNmI2NTY0IC8vICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyB1cGRhdGVTdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IHZvaWQKdXBkYXRlU3Rha2VyUG9vbFNldDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NQoJLy8gYXNzZXJ0KHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLmV4aXN0cykKCWJ5dGUgMHg3MzcwNzMgLy8gInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4NwoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDAgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjg4CgkvLyBmaXJzdEVtcHR5ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzc6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgNgoJPAoJYnogKmZvcl83X2VuZAoKCS8vICppZjM1X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTAKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAwIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmMzVfZW5kCgoJLy8gKmlmMzVfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTIKCS8vIHJldHVybjsKCXJldHN1YgoKKmlmMzVfZW5kOgoJLy8gKmlmMzZfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI5NAoJLy8gZmlyc3RFbXB0eSA9PT0gMCAmJiBwb29sU2V0W2ldLmlkID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJZHVwCglieiAqc2tpcF9hbmQ4CglmcmFtZV9kaWcgMCAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCSYmCgoqc2tpcF9hbmQ4OgoJYnogKmlmMzZfZW5kCgoJLy8gKmlmMzZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTUKCS8vIGZpcnN0RW1wdHkgPSBpICsgMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKKmlmMzZfZW5kOgoKKmZvcl83X2NvbnRpbnVlOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODkKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzcKCipmb3JfN19lbmQ6CgkvLyAqaWYzN19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjk4CgkvLyBmaXJzdEVtcHR5ID09PSAwCglmcmFtZV9kaWcgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCWludCAwCgk9PQoJYnogKmlmMzdfZW5kCgoJLy8gKmlmMzdfY29uc2VxdWVudAoJLy8gTm8gZW1wdHkgc2xvdCBhdmFpbGFibGUgaW4gdGhlIHN0YWtlciBwb29sIHNldAoJZXJyCgoqaWYzN19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMwMQoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbZmlyc3RFbXB0eSAtIDFdID0gcG9vbEtleQoJZnJhbWVfZGlnIDEgLy8gZmlyc3RFbXB0eTogdWludDY0CglpbnQgMQoJLQoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCglyZXRzdWIKCi8vIHJlbW92ZUZyb21TdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IFtib29sZWFuLCBib29sZWFuXQovLwovLyBSZW1vdmVzIGEgcG9vbCBrZXkgZnJvbSB0aGUgc3Rha2VyJ3MgYWN0aXZlIHBvb2wgc2V0IC0gZmFpbHMgaWYgbm90IGZvdW5kICghKQovLwovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSAtIFRoZSBwb29sIGtleSB0aGV5IHNob3VsZCBiZSBzdG9yZWQgaW4KLy8KLy8gQHJldHVybiBbYm9vbGVhbiwgYm9vbGVhbl0gW2lzIHRoZSBzdGFrZXIgZ29uZSBmcm9tIEFMTCBwb29scyBvZiB0aGUgZ2l2ZW4gVkFMSURBVE9SLCBhbmQgaXMgc3Rha2VyIGdvbmUgZnJvbSBBTEwgcG9vbHNdCnJlbW92ZUZyb21TdGFrZXJQb29sU2V0OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gNAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE0CgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTUKCS8vIGluQW55UG9vbENvdW50ID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMTYKCS8vIGZvdW5kID0gZmFsc2UKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMxOAoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZSAweDczNzA3MyAvLyAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCipmb3JfODoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpIDwgdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCA2Cgk8CglieiAqZm9yXzhfZW5kCgoJLy8gKmlmMzhfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyMAoJLy8gcG9vbFNldFtpXS5pZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50IDAKCSsKCWludCA4CglleHRyYWN0MwoJYnRvaQoJaW50IDAKCT09CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgliICpmb3JfOF9jb250aW51ZQoKKmlmMzhfZW5kOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjMKCS8vIGluQW55UG9vbENvdW50ICs9IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gaW5BbnlQb29sQ291bnQ6IHVpbnQ2NAoKCS8vICppZjM5X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjQKCS8vIHBvb2xTZXRbaV0uaWQgPT09IHBvb2xLZXkuaWQKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAwCgkrCglpbnQgOAoJZXh0cmFjdDMKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCWJ6ICppZjM5X2VuZAoKCS8vICppZjM5X2NvbnNlcXVlbnQKCS8vICppZjQwX2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjUKCS8vIHBvb2xTZXRbaV0gPT09IHBvb2xLZXkKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAyNAoJZXh0cmFjdDMKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5Cgk9PQoJYnogKmlmNDBfZWxzZQoKCS8vICppZjQwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzI2CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDIgLy8gZm91bmQ6IGJvb2wKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMyOAoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbaV0gPSB7IGlkOiAwLCBwb29sSWQ6IDAsIHBvb2xBcHBJZDogMCB9CglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludCAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4NzM3MDczIC8vICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgliICppZjQwX2VuZAoKKmlmNDBfZWxzZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzMwCgkvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgKz0gMQoJZnJhbWVfZGlnIDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50OiB1aW50NjQKCippZjQwX2VuZDoKCippZjM5X2VuZDoKCipmb3JfOF9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzE5CgkvLyBpICs9IDEKCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgNCAvLyBpOiB1aW50NjQKCWIgKmZvcl84CgoqZm9yXzhfZW5kOgoJLy8gKmlmNDFfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzNAoJLy8gIWZvdW5kCglmcmFtZV9kaWcgMiAvLyBmb3VuZDogYm9vbAoJIQoJYnogKmlmNDFfZW5kCgoJLy8gKmlmNDFfY29uc2VxdWVudAoJLy8gTm8gbWF0Y2hpbmcgc2xvdCBmb3VuZCB3aGVuIHRvbGQgdG8gcmVtb3ZlIGEgcG9vbCBmcm9tIHRoZSBzdGFrZXJzIHNldAoJZXJyCgoqaWY0MV9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzOAoJLy8gcmV0dXJuIFtpblNhbWVWYWxpZGF0b3JQb29sQ291bnQgPT09IDAsIGluQW55UG9vbENvdW50ID09PSAwXTsKCWJ5dGUgMHgwMAoJaW50IDAKCWZyYW1lX2RpZyAwIC8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudDogdWludDY0CglpbnQgMAoJPT0KCXNldGJpdAoJaW50IDEKCWZyYW1lX2RpZyAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCWludCAwCgk9PQoJc2V0Yml0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgovLyBhZGRQb29sVG9Ob2RlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHBvb2xBcHBJZDogdWludDY0LCBub2RlTnVtOiB1aW50NjQpOiB2b2lkCmFkZFBvb2xUb05vZGU6Cglwcm90byAzIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDIKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnQgOTAwIC8vIGhlYWRPZmZzZXQKCWludCAxOTIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQzCgkvLyBtYXhQb29sc1Blck5vZGVGb3JUaGlzVmFsaWRhdG9yID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcucG9vbHNQZXJOb2RlIGFzIHVpbnQ2NAoJaW50IDIyNQoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDUKCS8vIGFzc2VydChub2RlTnVtID49IDEgJiYgbm9kZU51bSA8PSBNQVhfTk9ERVMsICdub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UnKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50IDEKCT49CglkdXAKCWJ6ICpza2lwX2FuZDkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCA4Cgk8PQoJJiYKCipza2lwX2FuZDk6CgkvLyBub2RlIG51bWJlciBub3QgaW4gdmFsaWQgcmFuZ2UKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3I7IGkgKz0gMSkKCWludCAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzk6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0NwoJLy8gaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0Cgk8CglieiAqZm9yXzlfZW5kCgoJLy8gKmlmNDJfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0OAoJLy8gbm9kZVBvb2xBc3NpZ25tZW50cy5ub2Rlc1tub2RlTnVtIC0gMV0ucG9vbEFwcElkc1tpXSA9PT0gMAoJZnJhbWVfZGlnIDAgLy8gbm9kZVBvb2xBc3NpZ25tZW50czogKCh1aW50NjRbM10pWzhdKQoJaW50IDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDgKCWV4dHJhY3QzCglidG9pCglpbnQgMAoJPT0KCWJ6ICppZjQyX2VuZAoKCS8vICppZjQyX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUwCgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbbm9kZU51bSAtIDFdLnBvb2xBcHBJZHNbaV0gPSBwb29sQXBwSWQKCWludCA5MDAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludCAxCgktCglpbnQgMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50IDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0CglpdG9iCglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUxCgkvLyByZXR1cm47CglyZXRzdWIKCippZjQyX2VuZDoKCipmb3JfOV9jb250aW51ZToKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ3CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl85CgoqZm9yXzlfZW5kOgoJLy8gbm8gYXZhaWxhYmxlIHNwYWNlIGluIHNwZWNpZmllZCBub2RlIGZvciB0aGlzIHBvb2wKCWVycgoJcmV0c3ViCgovLyBkb2VzU3Rha2VyTWVldEdhdGluZyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiBhIHN0YWtlciBtZWV0cyB0aGUgZ2F0aW5nIHJlcXVpcmVtZW50cyBzcGVjaWZpZWQgYnkgdGhlIHZhbGlkYXRvci4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gVGhlIHZhbHVlIHRvIHZlcmlmeSBhZ2FpbnN0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzLgovLyBAcmV0dXJucyB7dm9pZH0gb3IgYXNzZXJ0cyBpZiByZXF1aXJlbWVudHMgbm90IG1ldC4KZG9lc1N0YWtlck1lZXRHYXRpbmc6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiA4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNjUKCS8vIHR5cGUgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUKCWludCA4MAoJaW50IDEKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdHlwZTogdWludDgKCgkvLyAqaWY0M19jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzY2CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9OT05FCglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDAKCT09CglieiAqaWY0M19lbmQKCgkvLyAqaWY0M19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2NwoJLy8gcmV0dXJuOwoJcmV0c3ViCgoqaWY0M19lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2OQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDEgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzAKCS8vIGNvbmZpZyA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnKQoJaW50IDAKCWludCAyNDIKCWJ5dGUgMHg3NiAvLyAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCgkvLyAqaWY0NF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzc0CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWSB8fAoJLy8gICAgICAgdHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRfSUQgfHwKCS8vICAgICAgIHR5cGUgPT09IEdBVElOR19UWVBFX0NSRUFURURfQllfTkZEX0FERFJFU1NFUwoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJZHVwCglibnogKnNraXBfb3I0CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09Cgl8fAoKKnNraXBfb3I0OgoJZHVwCglibnogKnNraXBfb3I1CglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDMKCT09Cgl8fAoKKnNraXBfb3I1OgoJYnogKmlmNDRfZW5kCgoJLy8gKmlmNDRfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNzgKCS8vIGFzc2VydCh2YWx1ZVRvVmVyaWZ5ICE9PSAwKQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJaW50IDAKCSE9Cglhc3NlcnQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM3OQoJLy8gYmFsUmVxdWlyZWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludCAxNDUKCWludCA4CglieXRlIDB4NzYgLy8gInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCgkvLyAqaWY0NV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgwCgkvLyBiYWxSZXF1aXJlZCA9PT0gMAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJaW50IDAKCT09CglieiAqaWY0NV9lbmQKCgkvLyAqaWY0NV9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM4MQoJLy8gYmFsUmVxdWlyZWQgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCippZjQ1X2VuZDoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzgzCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHN0YWtlci5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpKSA+PSBiYWxSZXF1aXJlZCwKCS8vICAgICAgICAgJ211c3QgaGF2ZSByZXF1aXJlZCBtaW5pbXVtIGJhbGFuY2Ugb2YgdmFsaWRhdG9yIGRlZmluZWQgdG9rZW4gdG8gYWRkIHN0YWtlJwoJLy8gICAgICAgKQoJZnJhbWVfZGlnIDEgLy8gc3Rha2VyOiBhZGRyZXNzCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDMgLy8gYmFsUmVxdWlyZWQ6IHVpbnQ2NAoJPj0KCgkvLyBtdXN0IGhhdmUgcmVxdWlyZWQgbWluaW11bSBiYWxhbmNlIG9mIHZhbGlkYXRvciBkZWZpbmVkIHRva2VuIHRvIGFkZCBzdGFrZQoJYXNzZXJ0CgoqaWY0NF9lbmQ6CgkvLyAqaWY0Nl9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzg4CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVFNfQ1JFQVRFRF9CWQoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludCAxCgk9PQoJYnogKmlmNDZfZW5kCgoJLy8gKmlmNDZfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzODkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IgPT09IGNvbmZpZy5lbnRyeUdhdGluZ0FkZHJlc3MsCgkvLyAgICAgICAgICdzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBjcmVhdGVkIGJ5IGNyZWF0b3IgdGhhdCB0aGUgdmFsaWRhdG9yIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZScKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDgxIDMyCgk9PQoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IHRoZSB2YWxpZGF0b3IgZGVmaW5lZCBhcyBhIHJlcXVpcmVtZW50IHRvIHN0YWtlCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vICppZjQ3X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTQKCS8vIHR5cGUgPT09IEdBVElOR19UWVBFX0FTU0VUX0lECglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50IDIKCT09CglieiAqaWY0N19lbmQKCgkvLyAqaWY0N19jb25zZXF1ZW50CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM5NQoJLy8gYXNzZXJ0KHZhbHVlVG9WZXJpZnkgIT09IDApCglmcmFtZV9kaWcgLTIgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0CglpbnQgMAoJIT0KCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk2CgkvLyBmb3VuZCA9IGZhbHNlCglpbnQgMAoJZnJhbWVfYnVyeSA0IC8vIGZvdW5kOiBib29sCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTcKCS8vIGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0cwoJZnJhbWVfZGlnIDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTEzIDMyCglkdXAKCWZyYW1lX2J1cnkgNSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yT2ZfMDoKCS8vICppZjQ4X2NvbmRpdGlvbgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzOTgKCS8vIHZhbHVlVG9WZXJpZnkgPT09IGFzc2V0SWQKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGFzc2V0SWQ6IHVpbnQ2NAoJPT0KCWJ6ICppZjQ4X2VuZAoKCS8vICppZjQ4X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzk5CgkvLyBmb3VuZCA9IHRydWUKCWludCAxCglmcmFtZV9idXJ5IDQgLy8gZm91bmQ6IGJvb2wKCWIgKmZvck9mXzBfZW5kCgoqaWY0OF9lbmQ6CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA3IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMzIgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyA1IC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQwMwoJLy8gYXNzZXJ0KGZvdW5kLCAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgaWRlbnRpY2FsIHRvIHRoZSBhc3NldCBpZCBkZWZpbmVkIGFzIGEgcmVxdWlyZW1lbnQgdG8gc3Rha2UnKQoJZnJhbWVfZGlnIDQgLy8gZm91bmQ6IGJvb2wKCgkvLyBzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBpZGVudGljYWwgdG8gdGhlIGFzc2V0IGlkIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZQoJYXNzZXJ0CgoqaWY0N19lbmQ6CgkvLyAqaWY0OV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA1CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgMwoJPT0KCWJ6ICppZjQ5X2VuZAoKCS8vICppZjQ5X2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA4CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHRoaXMuaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KGNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0c1swXSwgQXNzZXRJRC5mcm9tVWludDY0KHZhbHVlVG9WZXJpZnkpLmNyZWF0b3IpLAoJLy8gICAgICAgICAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgaXMgb25lIG9mIHRoZSBsaW5rZWQgYWRkcmVzc2VzIGluIGFuIG5mZCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDExMyA4CglidG9pCgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IGlzIG9uZSBvZiB0aGUgbGlua2VkIGFkZHJlc3NlcyBpbiBhbiBuZmQKCWFzc2VydAoKKmlmNDlfZW5kOgoJLy8gKmlmNTBfY29uZGl0aW9uCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQxMwoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfU0VHTUVOVF9PRl9ORkQKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnQgNAoJPT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE1CgkvLyB1c2VyT2ZmZXJlZE5GREFwcElEID0gdmFsdWVUb1ZlcmlmeQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJZnJhbWVfYnVyeSA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE2CgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQodXNlck9mZmVyZWRORkRBcHBJRCksICdwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZCcpCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDE5CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIHJhd0J5dGVzKEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpID09PSByYXdCeXRlcyhzdGFrZXIpIHx8CgkvLyAgICAgICAgICAgdGhpcy5pc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QodXNlck9mZmVyZWRORkRBcHBJRCwgc3Rha2VyKSwKCS8vICAgICAgICAgInByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIiCgkvLyAgICAgICApCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmY3NzZlNjU3MjJlNjEgLy8gImkub3duZXIuYSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHVzZXJPZmZlcmVkTkZEQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0CglmcmFtZV9kaWcgMSAvLyBzdGFrZXI6IGFkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjYKCWZyYW1lX2RpZyAxIC8vIHN0YWtlcjogYWRkcmVzcwoJZnJhbWVfZGlnIDggLy8gdXNlck9mZmVyZWRORkRBcHBJRDogdWludDY0CgljYWxsc3ViIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdAoJfHwKCipza2lwX29yNjoKCS8vIHByb3ZpZGVkIG5mZCBmb3IgZW50cnkgaXNuJ3Qgb3duZWQgb3IgbGlua2VkIHRvIHRoZSBzdGFrZXIKCWFzc2VydAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDI2CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgIGJ0b2koQXBwSUQuZnJvbVVpbnQ2NCh1c2VyT2ZmZXJlZE5GREFwcElEKS5nbG9iYWxTdGF0ZSgnaS5wYXJlbnRBcHBJRCcpIGFzIGJ5dGVzKSA9PT0KCS8vICAgICAgICAgICBjb25maWcuZW50cnlHYXRpbmdBc3NldHNbMF0sCgkvLyAgICAgICAgICdzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudCcKCS8vICAgICAgICkKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJYnl0ZSAweDY5MmU3MDYxNzI2NTZlNzQ0MTcwNzA0OTQ0IC8vICJpLnBhcmVudEFwcElEIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQodXNlck9mZmVyZWRORkRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kucGFyZW50QXBwSUQnKQoJYXNzZXJ0CglidG9pCglmcmFtZV9kaWcgMiAvLyBjb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJZXh0cmFjdCAxMTMgOAoJYnRvaQoJPT0KCgkvLyBzcGVjaWZpZWQgbmZkIG11c3QgYmUgYSBzZWdtZW50IG9mIHRoZSBuZmQgdGhlIHZhbGlkYXRvciBzcGVjaWZpZWQgYXMgYSByZXF1aXJlbWVudAoJYXNzZXJ0CgoqaWY1MF9lbmQ6CglyZXRzdWIKCi8vIGlzTkZEQXBwSURWYWxpZChuZmRBcHBJRDogdWludDY0KTogYm9vbGVhbgovLwovLyBDaGVja3MgaWYgdGhlIGdpdmVuIE5GRCBBcHAgaWQgaXMgdmFsaWQuICBVc2luZyBvbmx5IHRoZSBBcHAgaWQgdGhlcmUncyBubyB2YWxpZGF0aW9uIGFnYWluc3QgdGhlIG5hbWUgKGllOiB0aGF0IG5mZCBYIGlzIG5hbWUgWSkKLy8gU28gaXQncyBhc3N1bWVkIGZvciB0aGUgY2FsbGVyLCB0aGUgYXBwIGlkIGFsb25lIGlzIGZpbmUuICBUaGUgbmFtZSBpcyBmZXRjaGVkIGZyb20gdGhlIHNwZWNpZmllZCBhcHAgaWQgYW5kIHRoZSB0d28KLy8gdG9nZXRoZXIgYXJlIHVzZWQgZm9yIHZhbGlkaXR5IGNoZWNrIGNhbGwgdG8gdGhlIG5mZCByZWdpc3RyeS4KLy8KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIE5GRCBBcHAgaWQgdG8gdmVyaWZ5LgovLwovLyBAcmV0dXJucyB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIE5GRCBBcHAgaWQgaXMgdmFsaWQsIG90aGVyd2lzZSBmYWxzZS4KaXNORkRBcHBJRFZhbGlkOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0NQoJLy8gdXNlck9mZmVyZWRORkROYW1lID0gQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kubmFtZScpIGFzIHN0cmluZwoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWJ5dGUgMHg2OTJlNmU2MTZkNjUgLy8gImkubmFtZSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKS5nbG9iYWxTdGF0ZSgnaS5uYW1lJykKCWFzc2VydAoJZnJhbWVfYnVyeSAwIC8vIHVzZXJPZmZlcmVkTkZETmFtZTogc3RyaW5nCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NDcKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydpc192YWxpZF9uZmRfYXBwaWQnLCB1c2VyT2ZmZXJlZE5GRE5hbWUsIGl0b2IobmZkQXBwSUQpXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uczogW0FwcElELmZyb21VaW50NjQobmZkQXBwSUQpXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ0OAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQpCglsb2FkIDIwMCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDQ5CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsnaXNfdmFsaWRfbmZkX2FwcGlkJywgdXNlck9mZmVyZWRORkROYW1lLCBpdG9iKG5mZEFwcElEKV0KCWJ5dGUgMHg2OTczNWY3NjYxNmM2OTY0NWY2ZTY2NjQ1ZjYxNzA3MDY5NjQgLy8gImlzX3ZhbGlkX25mZF9hcHBpZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMCAvLyB1c2VyT2ZmZXJlZE5GRE5hbWU6IHN0cmluZwoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDUwCgkvLyBhcHBsaWNhdGlvbnM6IFtBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKV0KCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ1MgoJLy8gcmV0dXJuIGJ0b2kodGhpcy5pdHhuLmxhc3RMb2cpID09PSAxOwoJaXR4biBMYXN0TG9nCglidG9pCglpbnQgMQoJPT0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0KG5mZEFwcElEOiB1aW50NjQsIGFkZHJUb0ZpbmQ6IEFkZHJlc3MpOiBib29sZWFuCi8vCi8vIENoZWNrcyBpZiB0aGUgc3BlY2lmaWVkIGFkZHJlc3MgaXMgcHJlc2VudCBpbiBhbiBORkRzIGxpc3Qgb2YgdmVyaWZpZWQgYWRkcmVzc2VzLgovLyBUaGUgTkZEIGlzIGFzc3VtZWQgdG8gaGF2ZSBhbHJlYWR5IGJlZW4gdmFsaWRhdGVkIGFzIG9mZmljaWFsLgovLwovLyBAcGFyYW0ge3VpbnQ2NH0gbmZkQXBwSUQgLSBUaGUgTkZEIGFwcGxpY2F0aW9uIGlkLgovLyBAcGFyYW0ge0FkZHJlc3N9IGFkZHJUb0ZpbmQgLSBUaGUgYWRkcmVzcyB0byBmaW5kIGluIHRoZSB2LmNhQWxnby4wLmFzIHByb3BlcnR5Ci8vIEByZXR1cm4ge2Jvb2xlYW59IC0gYHRydWVgIGlmIHRoZSBhZGRyZXNzIGlzIHByZXNlbnQsIGBmYWxzZWAgb3RoZXJ3aXNlLgppc0FkZHJlc3NJbk5GRENBQWxnb0xpc3Q6Cglwcm90byAyIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLAoJLy8gICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3JlYWRfcHJvcGVydHknLCAndi5jYUFsZ28uMC5hcyddLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY1CgkvLyBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKQoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDY2CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsncmVhZF9wcm9wZXJ0eScsICd2LmNhQWxnby4wLmFzJ10KCWJ5dGUgMHg3MjY1NjE2NDVmNzA3MjZmNzA2NTcyNzQ3OSAvLyAicmVhZF9wcm9wZXJ0eSIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglieXRlIDB4NzYyZTYzNjE0MTZjNjc2ZjJlMzAyZTYxNzMgLy8gInYuY2FBbGdvLjAuYXMiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OAoJLy8gY2FBbGdvRGF0YSA9IHRoaXMuaXR4bi5sYXN0TG9nCglpdHhuIExhc3RMb2cKCWZyYW1lX2J1cnkgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBjYUFsZ29EYXRhLmxlbmd0aDsgaSArPSAzMikKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoqZm9yXzEwOgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NjkKCS8vIGkgPCBjYUFsZ29EYXRhLmxlbmd0aAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCWxlbgoJPAoJYnogKmZvcl8xMF9lbmQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3MAoJLy8gYWRkciA9IGV4dHJhY3QzKGNhQWxnb0RhdGEsIGksIDMyKQoJZnJhbWVfZGlnIDAgLy8gY2FBbGdvRGF0YTogYnl0ZVtdCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludCAzMgoJZXh0cmFjdDMKCWZyYW1lX2J1cnkgMiAvLyBhZGRyOiBieXRlW10KCgkvLyAqaWY1MV9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDcxCgkvLyBhZGRyICE9PSByYXdCeXRlcyhnbG9iYWxzLnplcm9BZGRyZXNzKSAmJiBhZGRyID09PSByYXdCeXRlcyhhZGRyVG9GaW5kKQoJZnJhbWVfZGlnIDIgLy8gYWRkcjogYnl0ZVtdCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CglkdXAKCWJ6ICpza2lwX2FuZDEwCglmcmFtZV9kaWcgMiAvLyBhZGRyOiBieXRlW10KCWZyYW1lX2RpZyAtMiAvLyBhZGRyVG9GaW5kOiBBZGRyZXNzCgk9PQoJJiYKCipza2lwX2FuZDEwOgoJYnogKmlmNTFfZW5kCgoJLy8gKmlmNTFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0NzIKCS8vIHJldHVybiB0cnVlOwoJaW50IDEKCWIgKmlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdCpyZXR1cm4KCippZjUxX2VuZDoKCipmb3JfMTBfY29udGludWU6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ2OQoJLy8gaSArPSAzMgoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglpbnQgMzIKCSsKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCWIgKmZvcl8xMAoKKmZvcl8xMF9lbmQ6CgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ3NQoJLy8gcmV0dXJuIGZhbHNlOwoJaW50IDAKCippc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KLy8gTk9URTogdGhpcyBmdW5jdGlvbiBpcyBkZWZpbmVkIHR3aWNlIC0gaGVyZSBhbmQgaW4gc3Rha2luZyBwb29sIGNvbnRyYWN0LiAgQm90aCBtdXN0IGJlIGlkZW50aWNhbC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0ODQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ4NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX1NPRlRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDEwMAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGxvd2VkU3Rha2UoKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgdmFsaWRhdG9yIGJhc2VkIG9uIGEgcGVyY2VudGFnZSBvZiBhbGwgY3VycmVudCBvbmxpbmUgc3Rha2UuCi8vIEFkZGluZyBzdGFrZSBpcyBjb21wbGV0ZWx5IGJsb2NrZWQgYXQgdGhpcyBhbW91bnQuCm1heEFsbG93ZWRTdGFrZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0OTQKCS8vIG9ubGluZSA9IHRoaXMuZ2V0Q3VycmVudE9ubGluZVN0YWtlKCkKCWNhbGxzdWIgZ2V0Q3VycmVudE9ubGluZVN0YWtlCglmcmFtZV9idXJ5IDAgLy8gb25saW5lOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ5NgoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX0hBUkRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSk7CglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJaW50IDE1MAoJbXVsdwoJaW50IDAKCWludCAxMDAwCglkaXZtb2R3Cglwb3AKCXBvcAoJc3dhcAoJIQoKCS8vIHdpZGVSYXRpbyBmYWlsZWQKCWFzc2VydAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBtYXhBbGdvQWxsb3dlZFBlclBvb2woKTogdWludDY0Ci8vCi8vIFJldHVybnMgdGhlIE1BWElNVU0gYWxsb3dlZCBzdGFrZSBwZXIgcG9vbCBhbmQgc3RpbGwgcmVjZWl2ZSBpbmNlbnRpdmVzIC0gd2UnbGwgdHJlYXQgdGhpcyBhcyB0aGUgJ21heCBwZXIgcG9vbCcKbWF4QWxnb0FsbG93ZWRQZXJQb29sOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDQKCS8vIHJldHVybiA3MF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgNzBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIGdldEN1cnJlbnRPbmxpbmVTdGFrZSgpOiB1aW50NjQKZ2V0Q3VycmVudE9ubGluZVN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MDkKCS8vIHJldHVybiAyXzAwMF8wMDBfMDAwXzAwMF8wMDA7CglpbnQgMl8wMDBfMDAwXzAwMF8wMDBfMDAwCglyZXRzdWIKCi8vIG1pbkJhbGFuY2VGb3JBY2NvdW50KGNvbnRyYWN0czogdWludDY0LCBleHRyYVBhZ2VzOiB1aW50NjQsIGFzc2V0czogdWludDY0LCBsb2NhbEludHM6IHVpbnQ2NCwgbG9jYWxCeXRlczogdWludDY0LCBnbG9iYWxJbnRzOiB1aW50NjQsIGdsb2JhbEJ5dGVzOiB1aW50NjQpOiB1aW50NjQKbWluQmFsYW5jZUZvckFjY291bnQ6Cglwcm90byA3IDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTIxCgkvLyBtaW5CYWwgPSBBTEdPUkFORF9BQ0NPVU5UX01JTl9CQUxBTkNFCglpbnQgMTAwMDAwCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMgoJLy8gbWluQmFsICs9IGNvbnRyYWN0cyAqIEFQUExJQ0FUSU9OX0JBU0VfRkVFCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGNvbnRyYWN0czogdWludDY0CglpbnQgMTAwMDAwCgkqCgkrCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBleGFtcGxlcy9yZXRpL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTUyMwoJLy8gbWluQmFsICs9IGV4dHJhUGFnZXMgKiBBUFBMSUNBVElPTl9CQVNFX0ZFRQoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBleHRyYVBhZ2VzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI0CgkvLyBtaW5CYWwgKz0gYXNzZXRzICogQVNTRVRfSE9MRElOR19GRUUKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTMgLy8gYXNzZXRzOiB1aW50NjQKCWludCAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI1CgkvLyBtaW5CYWwgKz0gbG9jYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTQgLy8gbG9jYWxJbnRzOiB1aW50NjQKCWludCAyODUwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjYKCS8vIG1pbkJhbCArPSBnbG9iYWxJbnRzICogU1NDX1ZBTFVFX1VJTlQKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTYgLy8gZ2xvYmFsSW50czogdWludDY0CglpbnQgMjg1MDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI3CgkvLyBtaW5CYWwgKz0gbG9jYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNSAvLyBsb2NhbEJ5dGVzOiB1aW50NjQKCWludCA1MDAwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MjgKCS8vIG1pbkJhbCArPSBnbG9iYWxCeXRlcyAqIFNTQ19WQUxVRV9CWVRFUwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNyAvLyBnbG9iYWxCeXRlczogdWludDY0CglpbnQgNTAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGV4YW1wbGVzL3JldGkvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNTI5CgkvLyByZXR1cm4gbWluQmFsOwoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY29zdEZvckJveFN0b3JhZ2UodG90YWxOdW1CeXRlczogdWludDY0KTogdWludDY0CmNvc3RGb3JCb3hTdG9yYWdlOgoJcHJvdG8gMSAxCgoJLy8gZXhhbXBsZXMvcmV0aS92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE1MzYKCS8vIHJldHVybiBTQ0JPWF9QRVJCT1ggKyB0b3RhbE51bUJ5dGVzICogU0NCT1hfUEVSQllURTsKCWludCAyNTAwCglmcmFtZV9kaWcgLTEgLy8gdG90YWxOdW1CeXRlczogdWludDY0CglpbnQgNDAwCgkqCgkrCglyZXRzdWIKCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQiCgltZXRob2QgImxvYWRTdGFraW5nQ29udHJhY3REYXRhKHVpbnQ2NCxieXRlW10pdm9pZCIKCW1ldGhvZCAiZmluYWxpemVTdGFraW5nQ29udHJhY3QoKXZvaWQiCgltZXRob2QgImdhcygpdm9pZCIKCW1ldGhvZCAiZ2V0TWJyQW1vdW50cygpKHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkiCgltZXRob2QgImdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0TnVtVmFsaWRhdG9ycygpdWludDY0IgoJbWV0aG9kICJnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJbWV0aG9kICJnZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXIodWludDY0KShhZGRyZXNzLGFkZHJlc3MpIgoJbWV0aG9kICJnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdIgoJbWV0aG9kICJnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KSIKCW1ldGhvZCAiZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sIgoJbWV0aG9kICJnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10iCgltZXRob2QgImdldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkiCgltZXRob2QgImdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkiCgltZXRob2QgImdldE5GRFJlZ2lzdHJ5SUQoKXVpbnQ2NCIKCW1ldGhvZCAiYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NCIKCW1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImNoYW5nZVZhbGlkYXRvck5GRCh1aW50NjQsdWludDY0LHN0cmluZyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgImFkZFBvb2wocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAiYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCW1ldGhvZCAic2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KSIKCW1ldGhvZCAic3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkIgoJbWV0aG9kICJmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKSIKCW1ldGhvZCAibW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiZW1wdHlUb2tlblJld2FyZHModWludDY0LGFkZHJlc3MpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbml0U3Rha2luZ0NvbnRyYWN0ICphYmlfcm91dGVfbG9hZFN0YWtpbmdDb250cmFjdERhdGEgKmFiaV9yb3V0ZV9maW5hbGl6ZVN0YWtpbmdDb250cmFjdCAqYWJpX3JvdXRlX2dhcyAqYWJpX3JvdXRlX2dldE1ickFtb3VudHMgKmFiaV9yb3V0ZV9nZXRQcm90b2NvbENvbnN0cmFpbnRzICphYmlfcm91dGVfZ2V0TnVtVmFsaWRhdG9ycyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvckNvbmZpZyAqYWJpX3JvdXRlX2dldFZhbGlkYXRvclN0YXRlICphYmlfcm91dGVfZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyICphYmlfcm91dGVfZ2V0UG9vbHMgKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQgKmFiaV9yb3V0ZV9nZXRQb29sSW5mbyAqYWJpX3JvdXRlX2dldEN1ck1heFN0YWtlUGVyUG9vbCAqYWJpX3JvdXRlX2RvZXNTdGFrZXJOZWVkVG9QYXlNQlIgKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQgKmFiaV9yb3V0ZV9nZXRUb2tlblBheW91dFJhdGlvICphYmlfcm91dGVfZ2V0Tm9kZVBvb2xBc3NpZ25tZW50cyAqYWJpX3JvdXRlX2dldE5GRFJlZ2lzdHJ5SUQgKmFiaV9yb3V0ZV9hZGRWYWxpZGF0b3IgKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvck5GRCAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyAqYWJpX3JvdXRlX2FkZFBvb2wgKmFiaV9yb3V0ZV9hZGRTdGFrZSAqYWJpX3JvdXRlX3NldFRva2VuUGF5b3V0UmF0aW8gKmFiaV9yb3V0ZV9zdGFrZVVwZGF0ZWRWaWFSZXdhcmRzICphYmlfcm91dGVfc3Rha2VSZW1vdmVkICphYmlfcm91dGVfZmluZFBvb2xGb3JTdGFrZXIgKmFiaV9yb3V0ZV9tb3ZlUG9vbFRvTm9kZSAqYWJpX3JvdXRlX2VtcHR5VG9rZW5SZXdhcmRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqY2FsbF9VcGRhdGVBcHBsaWNhdGlvbjoKCW1ldGhvZCAidXBkYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgVXBkYXRlQXBwbGljYXRpb24KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "templateVariables": { diff --git a/examples/simple/artifacts/Simple.approval.teal b/examples/simple/artifacts/Simple.approval.teal index 5b0205fec..539d6494b 100644 --- a/examples/simple/artifacts/Simple.approval.teal +++ b/examples/simple/artifacts/Simple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/simple/artifacts/Simple.arc32.json b/examples/simple/artifacts/Simple.arc32.json index b49e5e92d..94d1acd36 100644 --- a/examples/simple/artifacts/Simple.arc32.json +++ b/examples/simple/artifacts/Simple.arc32.json @@ -59,7 +59,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBpbmNyZW1lbnRDb3VudGVyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcmVtZW50Q291bnRlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czo3CgkvLyB0aGlzLmNvdW50ZXIudmFsdWUgPSB0aGlzLmNvdW50ZXIudmFsdWUgKyBpCglieXRlIDB4NjM2Zjc1NmU3NDY1NzIgLy8gImNvdW50ZXIiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgkrCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBpbmNyKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfaW5jcjoKCS8vIGk6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgaW5jcih1aW50NjQpdm9pZAoJY2FsbHN1YiBpbmNyCglpbnQgMQoJcmV0dXJuCgovLyBpbmNyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxMQoJLy8gdGhpcy5pbmNyZW1lbnRDb3VudGVyKGkpCglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgljYWxsc3ViIGluY3JlbWVudENvdW50ZXIKCXJldHN1YgoKLy8gZGVjcih1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2RlY3I6CgkvLyBpOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGRlY3IodWludDY0KXZvaWQKCWNhbGxzdWIgZGVjcgoJaW50IDEKCXJldHVybgoKLy8gZGVjcihpOiB1aW50NjQpOiB2b2lkCmRlY3I6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MTUKCS8vIHRoaXMuY291bnRlci52YWx1ZSA9IHRoaXMuY291bnRlci52YWx1ZSAtIGkKCWJ5dGUgMHg2MzZmNzU2ZTc0NjU3MiAvLyAiY291bnRlciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCS0KCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FkZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgYWRkIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBhZGQgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIGFkZAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYWRkIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxOQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKwoJcmV0c3ViCgovLyBzdWIodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9zdWI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHN1YiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3ViIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHN1Yih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBzdWIKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHN1YiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN1YihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpzdWI6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MjMKCS8vIHJldHVybiBhIC0gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYi0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluY3IodWludDY0KXZvaWQiCgltZXRob2QgImRlY3IodWludDY0KXZvaWQiCgltZXRob2QgImFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAic3ViKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbmNyICphYmlfcm91dGVfZGVjciAqYWJpX3JvdXRlX2FkZCAqYWJpX3JvdXRlX3N1YgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBpbmNyZW1lbnRDb3VudGVyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcmVtZW50Q291bnRlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czo3CgkvLyB0aGlzLmNvdW50ZXIudmFsdWUgPSB0aGlzLmNvdW50ZXIudmFsdWUgKyBpCglieXRlIDB4NjM2Zjc1NmU3NDY1NzIgLy8gImNvdW50ZXIiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgkrCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBpbmNyKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfaW5jcjoKCS8vIGk6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgaW5jcih1aW50NjQpdm9pZAoJY2FsbHN1YiBpbmNyCglpbnQgMQoJcmV0dXJuCgovLyBpbmNyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxMQoJLy8gdGhpcy5pbmNyZW1lbnRDb3VudGVyKGkpCglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgljYWxsc3ViIGluY3JlbWVudENvdW50ZXIKCXJldHN1YgoKLy8gZGVjcih1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2RlY3I6CgkvLyBpOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGRlY3IodWludDY0KXZvaWQKCWNhbGxzdWIgZGVjcgoJaW50IDEKCXJldHVybgoKLy8gZGVjcihpOiB1aW50NjQpOiB2b2lkCmRlY3I6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MTUKCS8vIHRoaXMuY291bnRlci52YWx1ZSA9IHRoaXMuY291bnRlci52YWx1ZSAtIGkKCWJ5dGUgMHg2MzZmNzU2ZTc0NjU3MiAvLyAiY291bnRlciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCS0KCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FkZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgYWRkIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBhZGQgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIGFkZAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYWRkIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxOQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKwoJcmV0c3ViCgovLyBzdWIodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9zdWI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHN1YiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3ViIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHN1Yih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBzdWIKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHN1YiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN1YihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpzdWI6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MjMKCS8vIHJldHVybiBhIC0gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYi0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluY3IodWludDY0KXZvaWQiCgltZXRob2QgImRlY3IodWludDY0KXZvaWQiCgltZXRob2QgImFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAic3ViKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbmNyICphYmlfcm91dGVfZGVjciAqYWJpX3JvdXRlX2FkZCAqYWJpX3JvdXRlX3N1YgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MjcKLy8gdGhpcy5pbmNyZW1lbnRDb3VudGVyKDEpCmludCAxCmNhbGxzdWIgaW5jcmVtZW50Q291bnRlcgppbnQgMQpyZXR1cm4KCi8vIGluY3JlbWVudENvdW50ZXIoaTogdWludDY0KTogdm9pZAppbmNyZW1lbnRDb3VudGVyOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvc2ltcGxlL3NpbXBsZS5hbGdvLnRzOjcKCS8vIHRoaXMuY291bnRlci52YWx1ZSA9IHRoaXMuY291bnRlci52YWx1ZSArIGkKCWJ5dGUgMHg2MzZmNzU2ZTc0NjU3MiAvLyAiY291bnRlciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCSsKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWI=" }, "contract": { diff --git a/examples/simple/artifacts/Simple.arc56_draft.json b/examples/simple/artifacts/Simple.arc56_draft.json index a0ce632af..7110bd8db 100644 --- a/examples/simple/artifacts/Simple.arc56_draft.json +++ b/examples/simple/artifacts/Simple.arc56_draft.json @@ -133,1063 +133,1066 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 3, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54 - ] - }, - { - "teal": 13, - "source": 3, - "pc": [ - 55, - 56 - ] - }, - { - "teal": 14, - "source": 3, - "pc": [ - 57 - ] - }, - { - "teal": 15, - "source": 3, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 16, - "source": 3, - "pc": [ - 60 - ] - }, - { - "teal": 17, - "source": 3, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 18, - "source": 3, - "pc": [ - 63 - ] - }, - { - "teal": 19, - "source": 3, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 23, - "source": 3, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 90 - ] - }, - { - "teal": 27, - "source": 6, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 31, - "source": 7, - "pc": [ - 94 - ] - }, - { - "teal": 32, - "source": 7, - "pc": [ - 95 - ] - }, - { - "teal": 33, - "source": 7, - "pc": [ - 96 - ] - }, - { - "teal": 34, - "source": 7, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 35, - "source": 7, - "pc": [ - 99 - ] - }, - { - "teal": 36, - "source": 7, - "pc": [ - 100 - ] - }, - { - "teal": 37, - "source": 6, - "pc": [ - 101 - ] - }, - { - "teal": 42, - "source": 10, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 43, - "source": 10, - "pc": [ - 105 - ] - }, - { - "teal": 46, - "source": 10, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 47, - "source": 10, - "pc": [ - 109 - ] - }, - { - "teal": 48, - "source": 10, - "pc": [ - 110 - ] - }, - { - "teal": 52, - "source": 10, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 56, - "source": 11, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 57, - "source": 11, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 58, - "source": 10, - "pc": [ - 119 - ] - }, - { - "teal": 63, - "source": 14, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 64, - "source": 14, - "pc": [ - 123 - ] - }, - { - "teal": 67, - "source": 14, - "pc": [ - 124, - 125, - 126 - ] - }, - { - "teal": 68, - "source": 14, - "pc": [ - 127 - ] - }, - { - "teal": 69, - "source": 14, - "pc": [ - 128 - ] - }, - { - "teal": 73, - "source": 14, - "pc": [ - 129, - 130, - 131 - ] - }, - { - "teal": 77, - "source": 15, - "pc": [ - 132 - ] - }, - { - "teal": 78, - "source": 15, - "pc": [ - 133 - ] - }, - { - "teal": 79, - "source": 15, - "pc": [ - 134 - ] - }, - { - "teal": 80, - "source": 15, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 81, - "source": 15, - "pc": [ - 137 - ] - }, - { - "teal": 82, - "source": 15, - "pc": [ - 138 - ] - }, - { - "teal": 83, - "source": 14, - "pc": [ - 139 - ] - }, - { - "teal": 88, - "source": 18, - "pc": [ - 140 - ] - }, - { - "teal": 91, - "source": 18, - "pc": [ - 141, - 142, - 143 - ] - }, - { - "teal": 92, - "source": 18, - "pc": [ - 144 - ] - }, - { - "teal": 93, - "source": 18, - "pc": [ - 145 - ] - }, - { - "teal": 94, - "source": 18, - "pc": [ - 146 - ] - }, - { - "teal": 95, - "source": 18, - "pc": [ - 147 - ] - }, - { - "teal": 98, - "source": 18, - "errorMessage": "argument 0 (b) for add must be a uint256", - "pc": [ - 148 - ] - }, - { - "teal": 101, - "source": 18, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 102, - "source": 18, - "pc": [ - 152 - ] - }, - { - "teal": 103, - "source": 18, - "pc": [ - 153 - ] - }, - { - "teal": 104, - "source": 18, - "pc": [ - 154 - ] - }, - { - "teal": 105, - "source": 18, - "pc": [ - 155 - ] - }, - { - "teal": 108, - "source": 18, - "errorMessage": "argument 1 (a) for add must be a uint256", - "pc": [ - 156 - ] - }, - { - "teal": 111, - "source": 18, - "pc": [ - 157, - 158, - 159 - ] - }, - { - "teal": 112, - "source": 18, - "pc": [ - 160 - ] - }, - { - "teal": 113, - "source": 18, - "pc": [ - 161 - ] - }, - { - "teal": 114, - "source": 18, - "pc": [ - 162 - ] - }, - { - "teal": 115, - "source": 18, - "pc": [ - 163 - ] - }, - { - "teal": 118, - "source": 18, - "errorMessage": "add return value overflowed 256 bits", - "pc": [ - 164 - ] - }, - { - "teal": 119, - "source": 18, - "pc": [ - 165 - ] - }, - { - "teal": 120, - "source": 18, - "pc": [ - 166 - ] - }, - { - "teal": 121, - "source": 18, - "pc": [ - 167 - ] - }, - { - "teal": 122, - "source": 18, - "pc": [ - 168 - ] - }, - { - "teal": 123, - "source": 18, - "pc": [ - 169 - ] - }, - { - "teal": 124, - "source": 18, - "pc": [ - 170 - ] - }, - { - "teal": 125, - "source": 18, - "pc": [ - 171 - ] - }, - { - "teal": 126, - "source": 18, - "pc": [ - 172 - ] - }, - { - "teal": 127, - "source": 18, - "pc": [ - 173 - ] - }, - { - "teal": 128, - "source": 18, - "pc": [ - 174 - ] - }, - { - "teal": 129, - "source": 18, - "pc": [ - 175 - ] - }, - { - "teal": 130, - "source": 18, - "pc": [ - 176 - ] - }, - { - "teal": 131, - "source": 18, - "pc": [ - 177 - ] - }, - { - "teal": 135, - "source": 18, - "pc": [ - 178, - 179, - 180 - ] - }, - { - "teal": 139, - "source": 19, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 140, - "source": 19, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 141, - "source": 19, - "pc": [ - 185 - ] - }, - { - "teal": 142, - "source": 18, - "pc": [ - 186 - ] - }, - { - "teal": 147, - "source": 22, - "pc": [ - 187 - ] - }, - { - "teal": 150, - "source": 22, - "pc": [ - 188, - 189, - 190 - ] - }, - { - "teal": 151, - "source": 22, - "pc": [ - 191 - ] - }, - { - "teal": 152, - "source": 22, - "pc": [ - 192 - ] - }, - { - "teal": 153, - "source": 22, - "pc": [ - 193 - ] - }, - { - "teal": 154, - "source": 22, - "pc": [ - 194 - ] - }, - { - "teal": 157, - "source": 22, - "errorMessage": "argument 0 (b) for sub must be a uint256", - "pc": [ - 195 - ] - }, - { - "teal": 160, - "source": 22, - "pc": [ - 196, - 197, - 198 - ] - }, - { - "teal": 161, - "source": 22, - "pc": [ - 199 - ] - }, - { - "teal": 162, - "source": 22, - "pc": [ - 200 - ] - }, - { - "teal": 163, - "source": 22, - "pc": [ - 201 - ] - }, - { - "teal": 164, - "source": 22, - "pc": [ - 202 - ] - }, - { - "teal": 167, - "source": 22, - "errorMessage": "argument 1 (a) for sub must be a uint256", - "pc": [ - 203 - ] - }, - { - "teal": 170, - "source": 22, - "pc": [ - 204, - 205, - 206 - ] - }, - { - "teal": 171, - "source": 22, - "pc": [ - 207 - ] - }, - { - "teal": 172, - "source": 22, - "pc": [ - 208 - ] - }, - { - "teal": 173, - "source": 22, - "pc": [ - 209 - ] - }, - { - "teal": 174, - "source": 22, - "pc": [ - 210 - ] - }, - { - "teal": 177, - "source": 22, - "errorMessage": "sub return value overflowed 256 bits", - "pc": [ - 211 - ] - }, - { - "teal": 178, - "source": 22, - "pc": [ - 212 - ] - }, - { - "teal": 179, - "source": 22, - "pc": [ - 213 - ] - }, - { - "teal": 180, - "source": 22, - "pc": [ - 214 - ] - }, - { - "teal": 181, - "source": 22, - "pc": [ - 215 - ] - }, - { - "teal": 182, - "source": 22, - "pc": [ - 216 - ] - }, - { - "teal": 183, - "source": 22, - "pc": [ - 217 - ] - }, - { - "teal": 184, - "source": 22, - "pc": [ - 218 - ] - }, - { - "teal": 185, - "source": 22, - "pc": [ - 219 - ] - }, - { - "teal": 186, - "source": 22, - "pc": [ - 220 - ] - }, - { - "teal": 187, - "source": 22, - "pc": [ - 221 - ] - }, - { - "teal": 188, - "source": 22, - "pc": [ - 222 - ] - }, - { - "teal": 189, - "source": 22, - "pc": [ - 223 - ] - }, - { - "teal": 190, - "source": 22, - "pc": [ - 224 - ] - }, - { - "teal": 194, - "source": 22, - "pc": [ - 225, - 226, - 227 - ] - }, - { - "teal": 198, - "source": 23, - "pc": [ - 228, - 229 - ] - }, - { - "teal": 199, - "source": 23, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 200, - "source": 23, - "pc": [ - 232 - ] - }, - { - "teal": 201, - "source": 22, - "pc": [ - 233 - ] - }, - { - "teal": 204, - "source": 3, - "pc": [ - 234 - ] - }, - { - "teal": 205, - "source": 3, - "pc": [ - 235 - ] - }, - { - "teal": 208, - "source": 3, - "pc": [ - 236, - 237, - 238, - 239, - 240, - 241 - ] - }, - { - "teal": 209, - "source": 3, - "pc": [ - 242, - 243, - 244 - ] - }, - { - "teal": 210, - "source": 3, - "pc": [ - 245, - 246, - 247, - 248 - ] - }, - { - "teal": 213, - "source": 3, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 249 - ] - }, - { - "teal": 216, - "source": 3, - "pc": [ - 250, - 251, - 252, - 253, - 254, - 255 - ] - }, - { - "teal": 217, - "source": 3, - "pc": [ - 256, - 257, - 258, - 259, - 260, - 261 - ] - }, - { - "teal": 218, - "source": 3, - "pc": [ - 262, - 263, - 264, - 265, - 266, - 267 - ] - }, - { - "teal": 219, - "source": 3, - "pc": [ - 268, - 269, - 270, - 271, - 272, - 273 - ] - }, - { - "teal": 220, - "source": 3, - "pc": [ - 274, - 275, - 276 - ] - }, - { - "teal": 221, - "source": 3, - "pc": [ - 277, - 278, - 279, - 280, - 281, - 282, - 283, - 284, - 285, - 286 - ] - }, - { - "teal": 224, - "source": 3, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 287 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 3, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + }, + { + "teal": 13, + "source": 3, + "pc": [ + 55, + 56 + ] + }, + { + "teal": 14, + "source": 3, + "pc": [ + 57 + ] + }, + { + "teal": 15, + "source": 3, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 16, + "source": 3, + "pc": [ + 60 + ] + }, + { + "teal": 17, + "source": 3, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 18, + "source": 3, + "pc": [ + 63 + ] + }, + { + "teal": 19, + "source": 3, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 23, + "source": 3, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 90 + ] + }, + { + "teal": 27, + "source": 6, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 31, + "source": 7, + "pc": [ + 94 + ] + }, + { + "teal": 32, + "source": 7, + "pc": [ + 95 + ] + }, + { + "teal": 33, + "source": 7, + "pc": [ + 96 + ] + }, + { + "teal": 34, + "source": 7, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 35, + "source": 7, + "pc": [ + 99 + ] + }, + { + "teal": 36, + "source": 7, + "pc": [ + 100 + ] + }, + { + "teal": 37, + "source": 6, + "pc": [ + 101 + ] + }, + { + "teal": 42, + "source": 10, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 43, + "source": 10, + "pc": [ + 105 + ] + }, + { + "teal": 46, + "source": 10, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 47, + "source": 10, + "pc": [ + 109 + ] + }, + { + "teal": 48, + "source": 10, + "pc": [ + 110 + ] + }, + { + "teal": 52, + "source": 10, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 56, + "source": 11, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 57, + "source": 11, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 58, + "source": 10, + "pc": [ + 119 + ] + }, + { + "teal": 63, + "source": 14, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 64, + "source": 14, + "pc": [ + 123 + ] + }, + { + "teal": 67, + "source": 14, + "pc": [ + 124, + 125, + 126 + ] + }, + { + "teal": 68, + "source": 14, + "pc": [ + 127 + ] + }, + { + "teal": 69, + "source": 14, + "pc": [ + 128 + ] + }, + { + "teal": 73, + "source": 14, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 77, + "source": 15, + "pc": [ + 132 + ] + }, + { + "teal": 78, + "source": 15, + "pc": [ + 133 + ] + }, + { + "teal": 79, + "source": 15, + "pc": [ + 134 + ] + }, + { + "teal": 80, + "source": 15, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 81, + "source": 15, + "pc": [ + 137 + ] + }, + { + "teal": 82, + "source": 15, + "pc": [ + 138 + ] + }, + { + "teal": 83, + "source": 14, + "pc": [ + 139 + ] + }, + { + "teal": 88, + "source": 18, + "pc": [ + 140 + ] + }, + { + "teal": 91, + "source": 18, + "pc": [ + 141, + 142, + 143 + ] + }, + { + "teal": 92, + "source": 18, + "pc": [ + 144 + ] + }, + { + "teal": 93, + "source": 18, + "pc": [ + 145 + ] + }, + { + "teal": 94, + "source": 18, + "pc": [ + 146 + ] + }, + { + "teal": 95, + "source": 18, + "pc": [ + 147 + ] + }, + { + "teal": 98, + "source": 18, + "errorMessage": "argument 0 (b) for add must be a uint256", + "pc": [ + 148 + ] + }, + { + "teal": 101, + "source": 18, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 102, + "source": 18, + "pc": [ + 152 + ] + }, + { + "teal": 103, + "source": 18, + "pc": [ + 153 + ] + }, + { + "teal": 104, + "source": 18, + "pc": [ + 154 + ] + }, + { + "teal": 105, + "source": 18, + "pc": [ + 155 + ] + }, + { + "teal": 108, + "source": 18, + "errorMessage": "argument 1 (a) for add must be a uint256", + "pc": [ + 156 + ] + }, + { + "teal": 111, + "source": 18, + "pc": [ + 157, + 158, + 159 + ] + }, + { + "teal": 112, + "source": 18, + "pc": [ + 160 + ] + }, + { + "teal": 113, + "source": 18, + "pc": [ + 161 + ] + }, + { + "teal": 114, + "source": 18, + "pc": [ + 162 + ] + }, + { + "teal": 115, + "source": 18, + "pc": [ + 163 + ] + }, + { + "teal": 118, + "source": 18, + "errorMessage": "add return value overflowed 256 bits", + "pc": [ + 164 + ] + }, + { + "teal": 119, + "source": 18, + "pc": [ + 165 + ] + }, + { + "teal": 120, + "source": 18, + "pc": [ + 166 + ] + }, + { + "teal": 121, + "source": 18, + "pc": [ + 167 + ] + }, + { + "teal": 122, + "source": 18, + "pc": [ + 168 + ] + }, + { + "teal": 123, + "source": 18, + "pc": [ + 169 + ] + }, + { + "teal": 124, + "source": 18, + "pc": [ + 170 + ] + }, + { + "teal": 125, + "source": 18, + "pc": [ + 171 + ] + }, + { + "teal": 126, + "source": 18, + "pc": [ + 172 + ] + }, + { + "teal": 127, + "source": 18, + "pc": [ + 173 + ] + }, + { + "teal": 128, + "source": 18, + "pc": [ + 174 + ] + }, + { + "teal": 129, + "source": 18, + "pc": [ + 175 + ] + }, + { + "teal": 130, + "source": 18, + "pc": [ + 176 + ] + }, + { + "teal": 131, + "source": 18, + "pc": [ + 177 + ] + }, + { + "teal": 135, + "source": 18, + "pc": [ + 178, + 179, + 180 + ] + }, + { + "teal": 139, + "source": 19, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 140, + "source": 19, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 141, + "source": 19, + "pc": [ + 185 + ] + }, + { + "teal": 142, + "source": 18, + "pc": [ + 186 + ] + }, + { + "teal": 147, + "source": 22, + "pc": [ + 187 + ] + }, + { + "teal": 150, + "source": 22, + "pc": [ + 188, + 189, + 190 + ] + }, + { + "teal": 151, + "source": 22, + "pc": [ + 191 + ] + }, + { + "teal": 152, + "source": 22, + "pc": [ + 192 + ] + }, + { + "teal": 153, + "source": 22, + "pc": [ + 193 + ] + }, + { + "teal": 154, + "source": 22, + "pc": [ + 194 + ] + }, + { + "teal": 157, + "source": 22, + "errorMessage": "argument 0 (b) for sub must be a uint256", + "pc": [ + 195 + ] + }, + { + "teal": 160, + "source": 22, + "pc": [ + 196, + 197, + 198 + ] + }, + { + "teal": 161, + "source": 22, + "pc": [ + 199 + ] + }, + { + "teal": 162, + "source": 22, + "pc": [ + 200 + ] + }, + { + "teal": 163, + "source": 22, + "pc": [ + 201 + ] + }, + { + "teal": 164, + "source": 22, + "pc": [ + 202 + ] + }, + { + "teal": 167, + "source": 22, + "errorMessage": "argument 1 (a) for sub must be a uint256", + "pc": [ + 203 + ] + }, + { + "teal": 170, + "source": 22, + "pc": [ + 204, + 205, + 206 + ] + }, + { + "teal": 171, + "source": 22, + "pc": [ + 207 + ] + }, + { + "teal": 172, + "source": 22, + "pc": [ + 208 + ] + }, + { + "teal": 173, + "source": 22, + "pc": [ + 209 + ] + }, + { + "teal": 174, + "source": 22, + "pc": [ + 210 + ] + }, + { + "teal": 177, + "source": 22, + "errorMessage": "sub return value overflowed 256 bits", + "pc": [ + 211 + ] + }, + { + "teal": 178, + "source": 22, + "pc": [ + 212 + ] + }, + { + "teal": 179, + "source": 22, + "pc": [ + 213 + ] + }, + { + "teal": 180, + "source": 22, + "pc": [ + 214 + ] + }, + { + "teal": 181, + "source": 22, + "pc": [ + 215 + ] + }, + { + "teal": 182, + "source": 22, + "pc": [ + 216 + ] + }, + { + "teal": 183, + "source": 22, + "pc": [ + 217 + ] + }, + { + "teal": 184, + "source": 22, + "pc": [ + 218 + ] + }, + { + "teal": 185, + "source": 22, + "pc": [ + 219 + ] + }, + { + "teal": 186, + "source": 22, + "pc": [ + 220 + ] + }, + { + "teal": 187, + "source": 22, + "pc": [ + 221 + ] + }, + { + "teal": 188, + "source": 22, + "pc": [ + 222 + ] + }, + { + "teal": 189, + "source": 22, + "pc": [ + 223 + ] + }, + { + "teal": 190, + "source": 22, + "pc": [ + 224 + ] + }, + { + "teal": 194, + "source": 22, + "pc": [ + 225, + 226, + 227 + ] + }, + { + "teal": 198, + "source": 23, + "pc": [ + 228, + 229 + ] + }, + { + "teal": 199, + "source": 23, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 200, + "source": 23, + "pc": [ + 232 + ] + }, + { + "teal": 201, + "source": 22, + "pc": [ + 233 + ] + }, + { + "teal": 204, + "source": 3, + "pc": [ + 234 + ] + }, + { + "teal": 205, + "source": 3, + "pc": [ + 235 + ] + }, + { + "teal": 208, + "source": 3, + "pc": [ + 236, + 237, + 238, + 239, + 240, + 241 + ] + }, + { + "teal": 209, + "source": 3, + "pc": [ + 242, + 243, + 244 + ] + }, + { + "teal": 210, + "source": 3, + "pc": [ + 245, + 246, + 247, + 248 + ] + }, + { + "teal": 213, + "source": 3, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 249 + ] + }, + { + "teal": 216, + "source": 3, + "pc": [ + 250, + 251, + 252, + 253, + 254, + 255 + ] + }, + { + "teal": 217, + "source": 3, + "pc": [ + 256, + 257, + 258, + 259, + 260, + 261 + ] + }, + { + "teal": 218, + "source": 3, + "pc": [ + 262, + 263, + 264, + 265, + 266, + 267 + ] + }, + { + "teal": 219, + "source": 3, + "pc": [ + 268, + 269, + 270, + 271, + 272, + 273 + ] + }, + { + "teal": 220, + "source": 3, + "pc": [ + 274, + 275, + 276 + ] + }, + { + "teal": 221, + "source": 3, + "pc": [ + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + }, + { + "teal": 224, + "source": 3, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 287 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBpbmNyZW1lbnRDb3VudGVyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcmVtZW50Q291bnRlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czo3CgkvLyB0aGlzLmNvdW50ZXIudmFsdWUgPSB0aGlzLmNvdW50ZXIudmFsdWUgKyBpCglieXRlIDB4NjM2Zjc1NmU3NDY1NzIgLy8gImNvdW50ZXIiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgkrCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBpbmNyKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfaW5jcjoKCS8vIGk6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgaW5jcih1aW50NjQpdm9pZAoJY2FsbHN1YiBpbmNyCglpbnQgMQoJcmV0dXJuCgovLyBpbmNyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxMQoJLy8gdGhpcy5pbmNyZW1lbnRDb3VudGVyKGkpCglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgljYWxsc3ViIGluY3JlbWVudENvdW50ZXIKCXJldHN1YgoKLy8gZGVjcih1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2RlY3I6CgkvLyBpOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGRlY3IodWludDY0KXZvaWQKCWNhbGxzdWIgZGVjcgoJaW50IDEKCXJldHVybgoKLy8gZGVjcihpOiB1aW50NjQpOiB2b2lkCmRlY3I6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MTUKCS8vIHRoaXMuY291bnRlci52YWx1ZSA9IHRoaXMuY291bnRlci52YWx1ZSAtIGkKCWJ5dGUgMHg2MzZmNzU2ZTc0NjU3MiAvLyAiY291bnRlciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCS0KCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FkZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgYWRkIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBhZGQgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIGFkZAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYWRkIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxOQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKwoJcmV0c3ViCgovLyBzdWIodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9zdWI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHN1YiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3ViIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHN1Yih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBzdWIKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHN1YiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN1YihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpzdWI6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MjMKCS8vIHJldHVybiBhIC0gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYi0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluY3IodWludDY0KXZvaWQiCgltZXRob2QgImRlY3IodWludDY0KXZvaWQiCgltZXRob2QgImFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAic3ViKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbmNyICphYmlfcm91dGVfZGVjciAqYWJpX3JvdXRlX2FkZCAqYWJpX3JvdXRlX3N1YgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBpbmNyZW1lbnRDb3VudGVyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcmVtZW50Q291bnRlcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czo3CgkvLyB0aGlzLmNvdW50ZXIudmFsdWUgPSB0aGlzLmNvdW50ZXIudmFsdWUgKyBpCglieXRlIDB4NjM2Zjc1NmU3NDY1NzIgLy8gImNvdW50ZXIiCglkdXAKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgkrCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBpbmNyKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfaW5jcjoKCS8vIGk6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgaW5jcih1aW50NjQpdm9pZAoJY2FsbHN1YiBpbmNyCglpbnQgMQoJcmV0dXJuCgovLyBpbmNyKGk6IHVpbnQ2NCk6IHZvaWQKaW5jcjoKCXByb3RvIDEgMAoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxMQoJLy8gdGhpcy5pbmNyZW1lbnRDb3VudGVyKGkpCglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CgljYWxsc3ViIGluY3JlbWVudENvdW50ZXIKCXJldHN1YgoKLy8gZGVjcih1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2RlY3I6CgkvLyBpOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGRlY3IodWludDY0KXZvaWQKCWNhbGxzdWIgZGVjcgoJaW50IDEKCXJldHVybgoKLy8gZGVjcihpOiB1aW50NjQpOiB2b2lkCmRlY3I6Cglwcm90byAxIDAKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MTUKCS8vIHRoaXMuY291bnRlci52YWx1ZSA9IHRoaXMuY291bnRlci52YWx1ZSAtIGkKCWJ5dGUgMHg2MzZmNzU2ZTc0NjU3MiAvLyAiY291bnRlciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCS0KCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX2FkZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgYWRkIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBhZGQgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIGFkZAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYWRkIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CmFkZDoKCXByb3RvIDIgMQoKCS8vIGV4YW1wbGVzL3NpbXBsZS9zaW1wbGUuYWxnby50czoxOQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKwoJcmV0c3ViCgovLyBzdWIodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9zdWI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHN1YiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3ViIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHN1Yih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBzdWIKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHN1YiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN1YihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpzdWI6Cglwcm90byAyIDEKCgkvLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MjMKCS8vIHJldHVybiBhIC0gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYi0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImluY3IodWludDY0KXZvaWQiCgltZXRob2QgImRlY3IodWludDY0KXZvaWQiCgltZXRob2QgImFkZCh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAic3ViKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9pbmNyICphYmlfcm91dGVfZGVjciAqYWJpX3JvdXRlX2FkZCAqYWJpX3JvdXRlX3N1YgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBleGFtcGxlcy9zaW1wbGUvc2ltcGxlLmFsZ28udHM6MjcKLy8gdGhpcy5pbmNyZW1lbnRDb3VudGVyKDEpCmludCAxCmNhbGxzdWIgaW5jcmVtZW50Q291bnRlcgppbnQgMQpyZXR1cm4KCi8vIGluY3JlbWVudENvdW50ZXIoaTogdWludDY0KTogdm9pZAppbmNyZW1lbnRDb3VudGVyOgoJcHJvdG8gMSAwCgoJLy8gZXhhbXBsZXMvc2ltcGxlL3NpbXBsZS5hbGdvLnRzOjcKCS8vIHRoaXMuY291bnRlci52YWx1ZSA9IHRoaXMuY291bnRlci52YWx1ZSArIGkKCWJ5dGUgMHg2MzZmNzU2ZTc0NjU3MiAvLyAiY291bnRlciIKCWR1cAoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCSsKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWI=" }, "byteCode": { diff --git a/examples/tuple_in_box/tealscript_artifacts/ContactsApp.approval.teal b/examples/tuple_in_box/tealscript_artifacts/ContactsApp.approval.teal index 40bf4a4c7..a1c43e07f 100644 --- a/examples/tuple_in_box/tealscript_artifacts/ContactsApp.approval.teal +++ b/examples/tuple_in_box/tealscript_artifacts/ContactsApp.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc32.json b/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc32.json index 3b0f6bc97..946c7ae46 100644 --- a/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc32.json +++ b/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc32.json @@ -59,7 +59,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRNeUNvbnRhY3Qoc3RyaW5nLHN0cmluZyl2b2lkCiphYmlfcm91dGVfc2V0TXlDb250YWN0OgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldE15Q29udGFjdChzdHJpbmcsc3RyaW5nKXZvaWQKCWNhbGxzdWIgc2V0TXlDb250YWN0CglpbnQgMQoJcmV0dXJuCgovLyBzZXRNeUNvbnRhY3QobmFtZTogc3RyaW5nLCBjb21wYW55OiBzdHJpbmcpOiB2b2lkCnNldE15Q29udGFjdDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjEyCgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTQKCS8vIHRoaXMubXlDb250YWN0LnZhbHVlID0gY29udGFjdAoJYnl0ZSAweDZkNzk0MzZmNmU3NDYxNjM3NCAvLyAibXlDb250YWN0IgoJZnJhbWVfZGlnIDAgLy8gY29udGFjdDogQ29udGFjdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTUKCS8vIHRoaXMuY29udGFjdHModGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGNvbnRhY3QKCXR4biBTZW5kZXIKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMCAvLyBjb250YWN0OiBDb250YWN0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hZGRDb250YWN0OgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgYWRkQ29udGFjdCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWRkQ29udGFjdAoJaW50IDEKCXJldHVybgoKLy8gYWRkQ29udGFjdChuYW1lOiBzdHJpbmcsIGNvbXBhbnk6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKYWRkQ29udGFjdDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjE5CgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjAKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUgPSBjb250YWN0CglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJZHVwCglib3hfZGVsCglwb3AKCWZyYW1lX2RpZyAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCWJveF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdXBkYXRlQ29udGFjdEZpZWxkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWx1ZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIGZpZWxkOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB1cGRhdGVDb250YWN0RmllbGQoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdXBkYXRlQ29udGFjdEZpZWxkCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVDb250YWN0RmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdXBkYXRlQ29udGFjdEZpZWxkOgoJcHJvdG8gMyAwCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNAoJLy8gZmllbGQgPT09ICduYW1lJwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2ZTYxNmQ2NSAvLyAibmFtZSIKCT09CglieiAqaWYwX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjUKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUubmFtZSA9IHZhbHVlCglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNgoJLy8gZmllbGQgPT09ICdjb21wYW55JwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2MzZmNmQ3MDYxNmU3OSAvLyAiY29tcGFueSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjI3CgkvLyB0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLmNvbXBhbnkgPSB2YWx1ZQoJZnJhbWVfZGlnIC0zIC8vIGFkZHJlc3M6IEFkZHJlc3MKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglmcmFtZV9kaWcgLTIgLy8gdmFsdWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gSW52YWxpZCBmaWVsZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gdmVyaWZ5Q29udGFjdE5hbWUoc3RyaW5nLGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeUNvbnRhY3ROYW1lOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdmVyaWZ5Q29udGFjdE5hbWUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHZlcmlmeUNvbnRhY3ROYW1lKHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q29udGFjdE5hbWUKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeUNvbnRhY3ROYW1lKG5hbWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdmVyaWZ5Q29udGFjdE5hbWU6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLm5hbWUgPT09IG5hbWUpCglmcmFtZV9kaWcgLTIgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2V0TXlDb250YWN0KHN0cmluZyxzdHJpbmcpdm9pZCIKCW1ldGhvZCAiYWRkQ29udGFjdChzdHJpbmcsc3RyaW5nLGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDb250YWN0TmFtZShzdHJpbmcsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zZXRNeUNvbnRhY3QgKmFiaV9yb3V0ZV9hZGRDb250YWN0ICphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkICphYmlfcm91dGVfdmVyaWZ5Q29udGFjdE5hbWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRNeUNvbnRhY3Qoc3RyaW5nLHN0cmluZyl2b2lkCiphYmlfcm91dGVfc2V0TXlDb250YWN0OgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldE15Q29udGFjdChzdHJpbmcsc3RyaW5nKXZvaWQKCWNhbGxzdWIgc2V0TXlDb250YWN0CglpbnQgMQoJcmV0dXJuCgovLyBzZXRNeUNvbnRhY3QobmFtZTogc3RyaW5nLCBjb21wYW55OiBzdHJpbmcpOiB2b2lkCnNldE15Q29udGFjdDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjEyCgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTQKCS8vIHRoaXMubXlDb250YWN0LnZhbHVlID0gY29udGFjdAoJYnl0ZSAweDZkNzk0MzZmNmU3NDYxNjM3NCAvLyAibXlDb250YWN0IgoJZnJhbWVfZGlnIDAgLy8gY29udGFjdDogQ29udGFjdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTUKCS8vIHRoaXMuY29udGFjdHModGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGNvbnRhY3QKCXR4biBTZW5kZXIKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMCAvLyBjb250YWN0OiBDb250YWN0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hZGRDb250YWN0OgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgYWRkQ29udGFjdCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWRkQ29udGFjdAoJaW50IDEKCXJldHVybgoKLy8gYWRkQ29udGFjdChuYW1lOiBzdHJpbmcsIGNvbXBhbnk6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKYWRkQ29udGFjdDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjE5CgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjAKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUgPSBjb250YWN0CglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJZHVwCglib3hfZGVsCglwb3AKCWZyYW1lX2RpZyAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCWJveF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdXBkYXRlQ29udGFjdEZpZWxkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWx1ZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIGZpZWxkOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB1cGRhdGVDb250YWN0RmllbGQoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdXBkYXRlQ29udGFjdEZpZWxkCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVDb250YWN0RmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdXBkYXRlQ29udGFjdEZpZWxkOgoJcHJvdG8gMyAwCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNAoJLy8gZmllbGQgPT09ICduYW1lJwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2ZTYxNmQ2NSAvLyAibmFtZSIKCT09CglieiAqaWYwX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjUKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUubmFtZSA9IHZhbHVlCglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNgoJLy8gZmllbGQgPT09ICdjb21wYW55JwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2MzZmNmQ3MDYxNmU3OSAvLyAiY29tcGFueSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjI3CgkvLyB0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLmNvbXBhbnkgPSB2YWx1ZQoJZnJhbWVfZGlnIC0zIC8vIGFkZHJlc3M6IEFkZHJlc3MKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglmcmFtZV9kaWcgLTIgLy8gdmFsdWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gSW52YWxpZCBmaWVsZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gdmVyaWZ5Q29udGFjdE5hbWUoc3RyaW5nLGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeUNvbnRhY3ROYW1lOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdmVyaWZ5Q29udGFjdE5hbWUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHZlcmlmeUNvbnRhY3ROYW1lKHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q29udGFjdE5hbWUKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeUNvbnRhY3ROYW1lKG5hbWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdmVyaWZ5Q29udGFjdE5hbWU6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLm5hbWUgPT09IG5hbWUpCglmcmFtZV9kaWcgLTIgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2V0TXlDb250YWN0KHN0cmluZyxzdHJpbmcpdm9pZCIKCW1ldGhvZCAiYWRkQ29udGFjdChzdHJpbmcsc3RyaW5nLGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDb250YWN0TmFtZShzdHJpbmcsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zZXRNeUNvbnRhY3QgKmFiaV9yb3V0ZV9hZGRDb250YWN0ICphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkICphYmlfcm91dGVfdmVyaWZ5Q29udGFjdE5hbWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc56_draft.json b/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc56_draft.json index 8280be6bd..6fce86bf0 100644 --- a/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc56_draft.json +++ b/examples/tuple_in_box/tealscript_artifacts/ContactsApp.arc56_draft.json @@ -117,10 +117,16 @@ 56 ], "structs": { - "Contact": { - "name": "string", - "company": "string" - } + "Contact": [ + { + "name": "name", + "type": "string" + }, + { + "name": "company", + "type": "string" + } + ] }, "state": { "schema": { @@ -159,2695 +165,2698 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 6, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ] - }, - { - "teal": 13, - "source": 6, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 14, - "source": 6, - "pc": [ - 15 - ] - }, - { - "teal": 15, - "source": 6, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 16, - "source": 6, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 6, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 6, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 6, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 6, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 28, - "source": 11, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 29, - "source": 11, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 32, - "source": 11, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 33, - "source": 11, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 36, - "source": 11, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 37, - "source": 11, - "pc": [ - 64 - ] - }, - { - "teal": 38, - "source": 11, - "pc": [ - 65 - ] - }, - { - "teal": 42, - "source": 11, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 45, - "source": 11, - "pc": [ - 69 - ] - }, - { - "teal": 49, - "source": 12, - "pc": [ - 70 - ] - }, - { - "teal": 50, - "source": 12, - "pc": [ - 71 - ] - }, - { - "teal": 51, - "source": 12, - "pc": [ - 72 - ] - }, - { - "teal": 52, - "source": 12, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 53, - "source": 12, - "pc": [ - 75 - ] - }, - { - "teal": 54, - "source": 12, - "pc": [ - 76 - ] - }, - { - "teal": 55, - "source": 12, - "pc": [ - 77 - ] - }, - { - "teal": 56, - "source": 12, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 57, - "source": 12, - "pc": [ - 81 - ] - }, - { - "teal": 58, - "source": 12, - "pc": [ - 82 - ] - }, - { - "teal": 59, - "source": 12, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 60, - "source": 12, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 61, - "source": 12, - "pc": [ - 88 - ] - }, - { - "teal": 62, - "source": 12, - "pc": [ - 89 - ] - }, - { - "teal": 63, - "source": 12, - "pc": [ - 90 - ] - }, - { - "teal": 64, - "source": 12, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 65, - "source": 12, - "pc": [ - 94 - ] - }, - { - "teal": 66, - "source": 12, - "pc": [ - 95 - ] - }, - { - "teal": 67, - "source": 12, - "pc": [ - 96, - 97, - 98 - ] - }, - { - "teal": 68, - "source": 12, - "pc": [ - 99 - ] - }, - { - "teal": 69, - "source": 12, - "pc": [ - 100 - ] - }, - { - "teal": 70, - "source": 12, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 74, - "source": 14, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 75, - "source": 14, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 76, - "source": 14, - "pc": [ - 116 - ] - }, - { - "teal": 80, - "source": 15, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 81, - "source": 15, - "pc": [ - 119 - ] - }, - { - "teal": 82, - "source": 15, - "pc": [ - 120 - ] - }, - { - "teal": 83, - "source": 15, - "pc": [ - 121 - ] - }, - { - "teal": 84, - "source": 15, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 85, - "source": 15, - "pc": [ - 124 - ] - }, - { - "teal": 86, - "source": 11, - "pc": [ - 125 - ] - }, - { - "teal": 91, - "source": 18, - "pc": [ - 126, - 127, - 128 - ] - }, - { - "teal": 92, - "source": 18, - "pc": [ - 129 - ] - }, - { - "teal": 93, - "source": 18, - "pc": [ - 130 - ] - }, - { - "teal": 94, - "source": 18, - "pc": [ - 131 - ] - }, - { - "teal": 95, - "source": 18, - "pc": [ - 132 - ] - }, - { - "teal": 98, - "source": 18, - "errorMessage": "argument 0 (address) for addContact must be a address", - "pc": [ - 133 - ] - }, - { - "teal": 101, - "source": 18, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 102, - "source": 18, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 105, - "source": 18, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 106, - "source": 18, - "pc": [ - 143, - 144, - 145 - ] - }, - { - "teal": 109, - "source": 18, - "pc": [ - 146, - 147, - 148 - ] - }, - { - "teal": 110, - "source": 18, - "pc": [ - 149 - ] - }, - { - "teal": 111, - "source": 18, - "pc": [ - 150 - ] - }, - { - "teal": 115, - "source": 18, - "pc": [ - 151, - 152, - 153 - ] - }, - { - "teal": 118, - "source": 18, - "pc": [ - 154 - ] - }, - { - "teal": 122, - "source": 19, - "pc": [ - 155 - ] - }, - { - "teal": 123, - "source": 19, - "pc": [ - 156 - ] - }, - { - "teal": 124, - "source": 19, - "pc": [ - 157 - ] - }, - { - "teal": 125, - "source": 19, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 126, - "source": 19, - "pc": [ - 160 - ] - }, - { - "teal": 127, - "source": 19, - "pc": [ - 161 - ] - }, - { - "teal": 128, - "source": 19, - "pc": [ - 162 - ] - }, - { - "teal": 129, - "source": 19, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 130, - "source": 19, - "pc": [ - 166 - ] - }, - { - "teal": 131, - "source": 19, - "pc": [ - 167 - ] - }, - { - "teal": 132, - "source": 19, - "pc": [ - 168, - 169, - 170 - ] - }, - { - "teal": 133, - "source": 19, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 134, - "source": 19, - "pc": [ - 173 - ] - }, - { - "teal": 135, - "source": 19, - "pc": [ - 174 - ] - }, - { - "teal": 136, - "source": 19, - "pc": [ - 175 - ] - }, - { - "teal": 137, - "source": 19, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 138, - "source": 19, - "pc": [ - 179 - ] - }, - { - "teal": 139, - "source": 19, - "pc": [ - 180 - ] - }, - { - "teal": 140, - "source": 19, - "pc": [ - 181, - 182, - 183 - ] - }, - { - "teal": 141, - "source": 19, - "pc": [ - 184 - ] - }, - { - "teal": 142, - "source": 19, - "pc": [ - 185 - ] - }, - { - "teal": 143, - "source": 19, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 147, - "source": 20, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 148, - "source": 20, - "pc": [ - 190 - ] - }, - { - "teal": 149, - "source": 20, - "pc": [ - 191 - ] - }, - { - "teal": 150, - "source": 20, - "pc": [ - 192 - ] - }, - { - "teal": 151, - "source": 20, - "pc": [ - 193, - 194 - ] - }, - { - "teal": 152, - "source": 20, - "pc": [ - 195 - ] - }, - { - "teal": 153, - "source": 18, - "pc": [ - 196 - ] - }, - { - "teal": 158, - "source": 23, - "pc": [ - 197, - 198, - 199 - ] - }, - { - "teal": 159, - "source": 23, - "pc": [ - 200 - ] - }, - { - "teal": 160, - "source": 23, - "pc": [ - 201 - ] - }, - { - "teal": 161, - "source": 23, - "pc": [ - 202 - ] - }, - { - "teal": 162, - "source": 23, - "pc": [ - 203 - ] - }, - { - "teal": 165, - "source": 23, - "errorMessage": "argument 0 (address) for updateContactField must be a address", - "pc": [ - 204 - ] - }, - { - "teal": 168, - "source": 23, - "pc": [ - 205, - 206, - 207 - ] - }, - { - "teal": 169, - "source": 23, - "pc": [ - 208, - 209, - 210 - ] - }, - { - "teal": 172, - "source": 23, - "pc": [ - 211, - 212, - 213 - ] - }, - { - "teal": 173, - "source": 23, - "pc": [ - 214, - 215, - 216 - ] - }, - { - "teal": 176, - "source": 23, - "pc": [ - 217, - 218, - 219 - ] - }, - { - "teal": 177, - "source": 23, - "pc": [ - 220 - ] - }, - { - "teal": 178, - "source": 23, - "pc": [ - 221 - ] - }, - { - "teal": 182, - "source": 23, - "pc": [ - 222, - 223, - 224 - ] - }, - { - "teal": 187, - "source": 24, - "pc": [ - 225, - 226 - ] - }, - { - "teal": 188, - "source": 24, - "pc": [ - 227, - 228, - 229, - 230, - 231, - 232 - ] - }, - { - "teal": 189, - "source": 24, - "pc": [ - 233 - ] - }, - { - "teal": 190, - "source": 24, - "pc": [ - 234, - 235, - 236 - ] - }, - { - "teal": 195, - "source": 25, - "pc": [ - 237, - 238 - ] - }, - { - "teal": 196, - "source": 25, - "pc": [ - 239 - ] - }, - { - "teal": 199, - "source": 25, - "errorMessage": "box value does not exist: this.contacts(address).value", - "pc": [ - 240 - ] - }, - { - "teal": 200, - "source": 25, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 201, - "source": 25, - "pc": [ - 243 - ] - }, - { - "teal": 202, - "source": 25, - "pc": [ - 244 - ] - }, - { - "teal": 203, - "source": 25, - "pc": [ - 245, - 246 - ] - }, - { - "teal": 204, - "source": 25, - "pc": [ - 247, - 248 - ] - }, - { - "teal": 205, - "source": 25, - "pc": [ - 249, - 250 - ] - }, - { - "teal": 206, - "source": 25, - "pc": [ - 251, - 252 - ] - }, - { - "teal": 207, - "source": 25, - "pc": [ - 253 - ] - }, - { - "teal": 208, - "source": 25, - "pc": [ - 254 - ] - }, - { - "teal": 209, - "source": 25, - "pc": [ - 255, - 256 - ] - }, - { - "teal": 210, - "source": 25, - "pc": [ - 257 - ] - }, - { - "teal": 211, - "source": 25, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 212, - "source": 25, - "pc": [ - 260 - ] - }, - { - "teal": 213, - "source": 25, - "pc": [ - 261 - ] - }, - { - "teal": 214, - "source": 25, - "pc": [ - 262 - ] - }, - { - "teal": 215, - "source": 25, - "pc": [ - 263 - ] - }, - { - "teal": 216, - "source": 25, - "pc": [ - 264 - ] - }, - { - "teal": 217, - "source": 25, - "pc": [ - 265 - ] - }, - { - "teal": 218, - "source": 25, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 219, - "source": 25, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 220, - "source": 25, - "pc": [ - 270 - ] - }, - { - "teal": 221, - "source": 25, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 222, - "source": 25, - "pc": [ - 273 - ] - }, - { - "teal": 223, - "source": 25, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 224, - "source": 25, - "pc": [ - 276 - ] - }, - { - "teal": 225, - "source": 25, - "pc": [ - 277 - ] - }, - { - "teal": 226, - "source": 25, - "pc": [ - 278 - ] - }, - { - "teal": 227, - "source": 25, - "pc": [ - 279, - 280, - 281 - ] - }, - { - "teal": 228, - "source": 25, - "pc": [ - 282 - ] - }, - { - "teal": 229, - "source": 25, - "pc": [ - 283 - ] - }, - { - "teal": 230, - "source": 25, - "pc": [ - 284 - ] - }, - { - "teal": 231, - "source": 25, - "pc": [ - 285, - 286 - ] - }, - { - "teal": 232, - "source": 25, - "pc": [ - 287, - 288 - ] - }, - { - "teal": 233, - "source": 25, - "pc": [ - 289, - 290 - ] - }, - { - "teal": 234, - "source": 25, - "pc": [ - 291, - 292 - ] - }, - { - "teal": 235, - "source": 25, - "pc": [ - 293 - ] - }, - { - "teal": 236, - "source": 25, - "pc": [ - 294, - 295 - ] - }, - { - "teal": 237, - "source": 25, - "pc": [ - 296 - ] - }, - { - "teal": 238, - "source": 25, - "pc": [ - 297 - ] - }, - { - "teal": 239, - "source": 25, - "pc": [ - 298 - ] - }, - { - "teal": 240, - "source": 25, - "pc": [ - 299 - ] - }, - { - "teal": 241, - "source": 25, - "pc": [ - 300, - 301 - ] - }, - { - "teal": 242, - "source": 25, - "pc": [ - 302, - 303, - 304 - ] - }, - { - "teal": 243, - "source": 25, - "pc": [ - 305, - 306 - ] - }, - { - "teal": 244, - "source": 25, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 245, - "source": 25, - "pc": [ - 309 - ] - }, - { - "teal": 246, - "source": 25, - "pc": [ - 310 - ] - }, - { - "teal": 247, - "source": 25, - "pc": [ - 311, - 312, - 313 - ] - }, - { - "teal": 248, - "source": 25, - "pc": [ - 314, - 315 - ] - }, - { - "teal": 249, - "source": 25, - "pc": [ - 316, - 317 - ] - }, - { - "teal": 250, - "source": 25, - "pc": [ - 318 - ] - }, - { - "teal": 251, - "source": 25, - "pc": [ - 319 - ] - }, - { - "teal": 252, - "source": 25, - "pc": [ - 320 - ] - }, - { - "teal": 253, - "source": 25, - "pc": [ - 321 - ] - }, - { - "teal": 254, - "source": 25, - "pc": [ - 322 - ] - }, - { - "teal": 255, - "source": 24, - "pc": [ - 323, - 324, - 325 - ] - }, - { - "teal": 260, - "source": 26, - "pc": [ - 326, - 327 - ] - }, - { - "teal": 261, - "source": 26, - "pc": [ - 328, - 329, - 330, - 331, - 332, - 333, - 334, - 335, - 336 - ] - }, - { - "teal": 262, - "source": 26, - "pc": [ - 337 - ] - }, - { - "teal": 263, - "source": 26, - "pc": [ - 338, - 339, - 340 - ] - }, - { - "teal": 268, - "source": 27, - "pc": [ - 341, - 342 - ] - }, - { - "teal": 269, - "source": 27, - "pc": [ - 343 - ] - }, - { - "teal": 272, - "source": 27, - "errorMessage": "box value does not exist: this.contacts(address).value", - "pc": [ - 344 - ] - }, - { - "teal": 273, - "source": 27, - "pc": [ - 345, - 346 - ] - }, - { - "teal": 274, - "source": 27, - "pc": [ - 347 - ] - }, - { - "teal": 275, - "source": 27, - "pc": [ - 348 - ] - }, - { - "teal": 276, - "source": 27, - "pc": [ - 349, - 350 - ] - }, - { - "teal": 277, - "source": 27, - "pc": [ - 351, - 352 - ] - }, - { - "teal": 278, - "source": 27, - "pc": [ - 353, - 354 - ] - }, - { - "teal": 279, - "source": 27, - "pc": [ - 355, - 356 - ] - }, - { - "teal": 280, - "source": 27, - "pc": [ - 357 - ] - }, - { - "teal": 281, - "source": 27, - "pc": [ - 358 - ] - }, - { - "teal": 282, - "source": 27, - "pc": [ - 359, - 360 - ] - }, - { - "teal": 283, - "source": 27, - "pc": [ - 361 - ] - }, - { - "teal": 284, - "source": 27, - "pc": [ - 362, - 363 - ] - }, - { - "teal": 285, - "source": 27, - "pc": [ - 364 - ] - }, - { - "teal": 286, - "source": 27, - "pc": [ - 365 - ] - }, - { - "teal": 287, - "source": 27, - "pc": [ - 366 - ] - }, - { - "teal": 288, - "source": 27, - "pc": [ - 367 - ] - }, - { - "teal": 289, - "source": 27, - "pc": [ - 368 - ] - }, - { - "teal": 290, - "source": 27, - "pc": [ - 369 - ] - }, - { - "teal": 291, - "source": 27, - "pc": [ - 370, - 371 - ] - }, - { - "teal": 292, - "source": 27, - "pc": [ - 372, - 373 - ] - }, - { - "teal": 293, - "source": 27, - "pc": [ - 374 - ] - }, - { - "teal": 294, - "source": 27, - "pc": [ - 375, - 376 - ] - }, - { - "teal": 295, - "source": 27, - "pc": [ - 377 - ] - }, - { - "teal": 296, - "source": 27, - "pc": [ - 378, - 379 - ] - }, - { - "teal": 297, - "source": 27, - "pc": [ - 380 - ] - }, - { - "teal": 298, - "source": 27, - "pc": [ - 381 - ] - }, - { - "teal": 299, - "source": 27, - "pc": [ - 382 - ] - }, - { - "teal": 300, - "source": 27, - "pc": [ - 383, - 384, - 385 - ] - }, - { - "teal": 301, - "source": 27, - "pc": [ - 386 - ] - }, - { - "teal": 302, - "source": 27, - "pc": [ - 387 - ] - }, - { - "teal": 303, - "source": 27, - "pc": [ - 388 - ] - }, - { - "teal": 304, - "source": 27, - "pc": [ - 389, - 390 - ] - }, - { - "teal": 305, - "source": 27, - "pc": [ - 391, - 392 - ] - }, - { - "teal": 306, - "source": 27, - "pc": [ - 393, - 394 - ] - }, - { - "teal": 307, - "source": 27, - "pc": [ - 395, - 396 - ] - }, - { - "teal": 308, - "source": 27, - "pc": [ - 397 - ] - }, - { - "teal": 309, - "source": 27, - "pc": [ - 398, - 399 - ] - }, - { - "teal": 310, - "source": 27, - "pc": [ - 400 - ] - }, - { - "teal": 311, - "source": 27, - "pc": [ - 401 - ] - }, - { - "teal": 312, - "source": 27, - "pc": [ - 402 - ] - }, - { - "teal": 313, - "source": 27, - "pc": [ - 403 - ] - }, - { - "teal": 314, - "source": 27, - "pc": [ - 404, - 405 - ] - }, - { - "teal": 315, - "source": 27, - "pc": [ - 406, - 407, - 408 - ] - }, - { - "teal": 316, - "source": 27, - "pc": [ - 409, - 410 - ] - }, - { - "teal": 317, - "source": 27, - "pc": [ - 411, - 412 - ] - }, - { - "teal": 318, - "source": 27, - "pc": [ - 413 - ] - }, - { - "teal": 319, - "source": 27, - "pc": [ - 414 - ] - }, - { - "teal": 320, - "source": 27, - "pc": [ - 415 - ] - }, - { - "teal": 321, - "source": 27, - "pc": [ - 416 - ] - }, - { - "teal": 322, - "source": 27, - "pc": [ - 417 - ] - }, - { - "teal": 323, - "source": 26, - "pc": [ - 418, - 419, - 420 - ] - }, - { - "teal": 327, - "source": 28, - "errorMessage": "Invalid field", - "pc": [ - 421 - ] - }, - { - "teal": 330, - "source": 23, - "pc": [ - 422 - ] - }, - { - "teal": 335, - "source": 31, - "pc": [ - 423, - 424, - 425 - ] - }, - { - "teal": 336, - "source": 31, - "pc": [ - 426 - ] - }, - { - "teal": 337, - "source": 31, - "pc": [ - 427 - ] - }, - { - "teal": 338, - "source": 31, - "pc": [ - 428 - ] - }, - { - "teal": 339, - "source": 31, - "pc": [ - 429 - ] - }, - { - "teal": 342, - "source": 31, - "errorMessage": "argument 0 (address) for verifyContactName must be a address", - "pc": [ - 430 - ] - }, - { - "teal": 345, - "source": 31, - "pc": [ - 431, - 432, - 433 - ] - }, - { - "teal": 346, - "source": 31, - "pc": [ - 434, - 435, - 436 - ] - }, - { - "teal": 349, - "source": 31, - "pc": [ - 437, - 438, - 439 - ] - }, - { - "teal": 350, - "source": 31, - "pc": [ - 440 - ] - }, - { - "teal": 351, - "source": 31, - "pc": [ - 441 - ] - }, - { - "teal": 355, - "source": 31, - "pc": [ - 442, - 443, - 444 - ] - }, - { - "teal": 359, - "source": 32, - "pc": [ - 445, - 446 - ] - }, - { - "teal": 360, - "source": 32, - "pc": [ - 447 - ] - }, - { - "teal": 363, - "source": 32, - "errorMessage": "box value does not exist: this.contacts(address).value", - "pc": [ - 448 - ] - }, - { - "teal": 364, - "source": 32, - "pc": [ - 449, - 450 - ] - }, - { - "teal": 365, - "source": 32, - "pc": [ - 451 - ] - }, - { - "teal": 366, - "source": 32, - "pc": [ - 452, - 453 - ] - }, - { - "teal": 367, - "source": 32, - "pc": [ - 454, - 455 - ] - }, - { - "teal": 368, - "source": 32, - "pc": [ - 456, - 457 - ] - }, - { - "teal": 369, - "source": 32, - "pc": [ - 458 - ] - }, - { - "teal": 370, - "source": 32, - "pc": [ - 459 - ] - }, - { - "teal": 371, - "source": 32, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 372, - "source": 32, - "pc": [ - 462 - ] - }, - { - "teal": 373, - "source": 32, - "pc": [ - 463 - ] - }, - { - "teal": 374, - "source": 32, - "pc": [ - 464 - ] - }, - { - "teal": 375, - "source": 32, - "pc": [ - 465 - ] - }, - { - "teal": 376, - "source": 32, - "pc": [ - 466 - ] - }, - { - "teal": 377, - "source": 32, - "pc": [ - 467 - ] - }, - { - "teal": 378, - "source": 32, - "pc": [ - 468 - ] - }, - { - "teal": 379, - "source": 32, - "pc": [ - 469, - 470, - 471 - ] - }, - { - "teal": 380, - "source": 32, - "pc": [ - 472, - 473 - ] - }, - { - "teal": 381, - "source": 32, - "pc": [ - 474 - ] - }, - { - "teal": 382, - "source": 32, - "pc": [ - 475 - ] - }, - { - "teal": 383, - "source": 31, - "pc": [ - 476 - ] - }, - { - "teal": 386, - "source": 6, - "pc": [ - 477 - ] - }, - { - "teal": 387, - "source": 6, - "pc": [ - 478 - ] - }, - { - "teal": 390, - "source": 6, - "pc": [ - 479, - 480, - 481, - 482, - 483, - 484 - ] - }, - { - "teal": 391, - "source": 6, - "pc": [ - 485, - 486, - 487 - ] - }, - { - "teal": 392, - "source": 6, - "pc": [ - 488, - 489, - 490, - 491 - ] - }, - { - "teal": 395, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 492 - ] - }, - { - "teal": 398, - "source": 6, - "pc": [ - 493, - 494, - 495, - 496, - 497, - 498 - ] - }, - { - "teal": 399, - "source": 6, - "pc": [ - 499, - 500, - 501, - 502, - 503, - 504 - ] - }, - { - "teal": 400, - "source": 6, - "pc": [ - 505, - 506, - 507, - 508, - 509, - 510 - ] - }, - { - "teal": 401, - "source": 6, - "pc": [ - 511, - 512, - 513, - 514, - 515, - 516 - ] - }, - { - "teal": 402, - "source": 6, - "pc": [ - 517, - 518, - 519 - ] - }, - { - "teal": 403, - "source": 6, - "pc": [ - 520, - 521, - 522, - 523, - 524, - 525, - 526, - 527, - 528, - 529 - ] - }, - { - "teal": 406, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 530 - ] - }, - { - "teal": 409, - "source": 6, - "pc": [ - 531, - 532, - 533 - ] - }, - { - "teal": 410, - "source": 6, - "pc": [ - 534, - 535 - ] - }, - { - "teal": 411, - "source": 6, - "pc": [ - 536, - 537 - ] - }, - { - "teal": 412, - "source": 6, - "pc": [ - 538 - ] - }, - { - "teal": 413, - "source": 6, - "pc": [ - 539, - 540 - ] - }, - { - "teal": 414, - "source": 6, - "pc": [ - 541, - 542 - ] - }, - { - "teal": 415, - "source": 6, - "pc": [ - 543 - ] - }, - { - "teal": 416, - "source": 6, - "pc": [ - 544 - ] - }, - { - "teal": 417, - "source": 6, - "pc": [ - 545, - 546 - ] - }, - { - "teal": 418, - "source": 6, - "pc": [ - 547 - ] - }, - { - "teal": 419, - "source": 6, - "pc": [ - 548 - ] - }, - { - "teal": 420, - "source": 6, - "pc": [ - 549 - ] - }, - { - "teal": 421, - "source": 6, - "pc": [ - 550, - 551, - 552 - ] - }, - { - "teal": 422, - "source": 6, - "pc": [ - 553, - 554 - ] - }, - { - "teal": 423, - "source": 6, - "pc": [ - 555, - 556 - ] - }, - { - "teal": 424, - "source": 6, - "pc": [ - 557 - ] - }, - { - "teal": 425, - "source": 6, - "pc": [ - 558 - ] - }, - { - "teal": 426, - "source": 6, - "pc": [ - 559, - 560 - ] - }, - { - "teal": 427, - "source": 6, - "pc": [ - 561, - 562 - ] - }, - { - "teal": 428, - "source": 6, - "pc": [ - 563, - 564 - ] - }, - { - "teal": 429, - "source": 6, - "pc": [ - 565, - 566 - ] - }, - { - "teal": 430, - "source": 6, - "pc": [ - 567 - ] - }, - { - "teal": 433, - "source": 6, - "pc": [ - 568, - 569, - 570 - ] - }, - { - "teal": 434, - "source": 6, - "pc": [ - 571, - 572 - ] - }, - { - "teal": 435, - "source": 6, - "pc": [ - 573, - 574 - ] - }, - { - "teal": 436, - "source": 6, - "pc": [ - 575, - 576 - ] - }, - { - "teal": 437, - "source": 6, - "pc": [ - 577 - ] - }, - { - "teal": 438, - "source": 6, - "pc": [ - 578, - 579 - ] - }, - { - "teal": 439, - "source": 6, - "pc": [ - 580, - 581, - 582 - ] - }, - { - "teal": 440, - "source": 6, - "pc": [ - 583 - ] - }, - { - "teal": 441, - "source": 6, - "pc": [ - 584, - 585, - 586 - ] - }, - { - "teal": 444, - "source": 6, - "pc": [ - 587 - ] - }, - { - "teal": 445, - "source": 6, - "pc": [ - 588 - ] - }, - { - "teal": 448, - "source": 6, - "pc": [ - 589 - ] - }, - { - "teal": 449, - "source": 6, - "pc": [ - 590, - 591, - 592 - ] - }, - { - "teal": 450, - "source": 6, - "pc": [ - 593, - 594 - ] - }, - { - "teal": 451, - "source": 6, - "pc": [ - 595 - ] - }, - { - "teal": 452, - "source": 6, - "pc": [ - 596, - 597 - ] - }, - { - "teal": 453, - "source": 6, - "pc": [ - 598 - ] - }, - { - "teal": 454, - "source": 6, - "pc": [ - 599 - ] - }, - { - "teal": 455, - "source": 6, - "pc": [ - 600, - 601 - ] - }, - { - "teal": 456, - "source": 6, - "pc": [ - 602 - ] - }, - { - "teal": 459, - "source": 6, - "pc": [ - 603, - 604 - ] - }, - { - "teal": 460, - "source": 6, - "pc": [ - 605 - ] - }, - { - "teal": 461, - "source": 6, - "pc": [ - 606, - 607 - ] - }, - { - "teal": 462, - "source": 6, - "pc": [ - 608 - ] - }, - { - "teal": 463, - "source": 6, - "pc": [ - 609, - 610, - 611 - ] - }, - { - "teal": 464, - "source": 6, - "pc": [ - 612, - 613 - ] - }, - { - "teal": 465, - "source": 6, - "pc": [ - 614 - ] - }, - { - "teal": 466, - "source": 6, - "pc": [ - 615, - 616 - ] - }, - { - "teal": 467, - "source": 6, - "pc": [ - 617 - ] - }, - { - "teal": 468, - "source": 6, - "pc": [ - 618, - 619 - ] - }, - { - "teal": 469, - "source": 6, - "pc": [ - 620, - 621, - 622 - ] - }, - { - "teal": 472, - "source": 6, - "pc": [ - 623, - 624 - ] - }, - { - "teal": 473, - "source": 6, - "pc": [ - 625, - 626 - ] - }, - { - "teal": 474, - "source": 6, - "pc": [ - 627 - ] - }, - { - "teal": 475, - "source": 6, - "pc": [ - 628 - ] - }, - { - "teal": 476, - "source": 6, - "pc": [ - 629, - 630 - ] - }, - { - "teal": 479, - "source": 6, - "pc": [ - 631 - ] - }, - { - "teal": 480, - "source": 6, - "pc": [ - 632, - 633 - ] - }, - { - "teal": 481, - "source": 6, - "pc": [ - 634 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 6, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "teal": 13, + "source": 6, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 14, + "source": 6, + "pc": [ + 15 + ] + }, + { + "teal": 15, + "source": 6, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 16, + "source": 6, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 6, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 6, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 6, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 6, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 28, + "source": 11, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 29, + "source": 11, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 32, + "source": 11, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 33, + "source": 11, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 36, + "source": 11, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 37, + "source": 11, + "pc": [ + 64 + ] + }, + { + "teal": 38, + "source": 11, + "pc": [ + 65 + ] + }, + { + "teal": 42, + "source": 11, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 45, + "source": 11, + "pc": [ + 69 + ] + }, + { + "teal": 49, + "source": 12, + "pc": [ + 70 + ] + }, + { + "teal": 50, + "source": 12, + "pc": [ + 71 + ] + }, + { + "teal": 51, + "source": 12, + "pc": [ + 72 + ] + }, + { + "teal": 52, + "source": 12, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 53, + "source": 12, + "pc": [ + 75 + ] + }, + { + "teal": 54, + "source": 12, + "pc": [ + 76 + ] + }, + { + "teal": 55, + "source": 12, + "pc": [ + 77 + ] + }, + { + "teal": 56, + "source": 12, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 57, + "source": 12, + "pc": [ + 81 + ] + }, + { + "teal": 58, + "source": 12, + "pc": [ + 82 + ] + }, + { + "teal": 59, + "source": 12, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 60, + "source": 12, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 61, + "source": 12, + "pc": [ + 88 + ] + }, + { + "teal": 62, + "source": 12, + "pc": [ + 89 + ] + }, + { + "teal": 63, + "source": 12, + "pc": [ + 90 + ] + }, + { + "teal": 64, + "source": 12, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 65, + "source": 12, + "pc": [ + 94 + ] + }, + { + "teal": 66, + "source": 12, + "pc": [ + 95 + ] + }, + { + "teal": 67, + "source": 12, + "pc": [ + 96, + 97, + 98 + ] + }, + { + "teal": 68, + "source": 12, + "pc": [ + 99 + ] + }, + { + "teal": 69, + "source": 12, + "pc": [ + 100 + ] + }, + { + "teal": 70, + "source": 12, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 74, + "source": 14, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 75, + "source": 14, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 76, + "source": 14, + "pc": [ + 116 + ] + }, + { + "teal": 80, + "source": 15, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 81, + "source": 15, + "pc": [ + 119 + ] + }, + { + "teal": 82, + "source": 15, + "pc": [ + 120 + ] + }, + { + "teal": 83, + "source": 15, + "pc": [ + 121 + ] + }, + { + "teal": 84, + "source": 15, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 85, + "source": 15, + "pc": [ + 124 + ] + }, + { + "teal": 86, + "source": 11, + "pc": [ + 125 + ] + }, + { + "teal": 91, + "source": 18, + "pc": [ + 126, + 127, + 128 + ] + }, + { + "teal": 92, + "source": 18, + "pc": [ + 129 + ] + }, + { + "teal": 93, + "source": 18, + "pc": [ + 130 + ] + }, + { + "teal": 94, + "source": 18, + "pc": [ + 131 + ] + }, + { + "teal": 95, + "source": 18, + "pc": [ + 132 + ] + }, + { + "teal": 98, + "source": 18, + "errorMessage": "argument 0 (address) for addContact must be a address", + "pc": [ + 133 + ] + }, + { + "teal": 101, + "source": 18, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 102, + "source": 18, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 105, + "source": 18, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 106, + "source": 18, + "pc": [ + 143, + 144, + 145 + ] + }, + { + "teal": 109, + "source": 18, + "pc": [ + 146, + 147, + 148 + ] + }, + { + "teal": 110, + "source": 18, + "pc": [ + 149 + ] + }, + { + "teal": 111, + "source": 18, + "pc": [ + 150 + ] + }, + { + "teal": 115, + "source": 18, + "pc": [ + 151, + 152, + 153 + ] + }, + { + "teal": 118, + "source": 18, + "pc": [ + 154 + ] + }, + { + "teal": 122, + "source": 19, + "pc": [ + 155 + ] + }, + { + "teal": 123, + "source": 19, + "pc": [ + 156 + ] + }, + { + "teal": 124, + "source": 19, + "pc": [ + 157 + ] + }, + { + "teal": 125, + "source": 19, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 126, + "source": 19, + "pc": [ + 160 + ] + }, + { + "teal": 127, + "source": 19, + "pc": [ + 161 + ] + }, + { + "teal": 128, + "source": 19, + "pc": [ + 162 + ] + }, + { + "teal": 129, + "source": 19, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 130, + "source": 19, + "pc": [ + 166 + ] + }, + { + "teal": 131, + "source": 19, + "pc": [ + 167 + ] + }, + { + "teal": 132, + "source": 19, + "pc": [ + 168, + 169, + 170 + ] + }, + { + "teal": 133, + "source": 19, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 134, + "source": 19, + "pc": [ + 173 + ] + }, + { + "teal": 135, + "source": 19, + "pc": [ + 174 + ] + }, + { + "teal": 136, + "source": 19, + "pc": [ + 175 + ] + }, + { + "teal": 137, + "source": 19, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 138, + "source": 19, + "pc": [ + 179 + ] + }, + { + "teal": 139, + "source": 19, + "pc": [ + 180 + ] + }, + { + "teal": 140, + "source": 19, + "pc": [ + 181, + 182, + 183 + ] + }, + { + "teal": 141, + "source": 19, + "pc": [ + 184 + ] + }, + { + "teal": 142, + "source": 19, + "pc": [ + 185 + ] + }, + { + "teal": 143, + "source": 19, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 147, + "source": 20, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 148, + "source": 20, + "pc": [ + 190 + ] + }, + { + "teal": 149, + "source": 20, + "pc": [ + 191 + ] + }, + { + "teal": 150, + "source": 20, + "pc": [ + 192 + ] + }, + { + "teal": 151, + "source": 20, + "pc": [ + 193, + 194 + ] + }, + { + "teal": 152, + "source": 20, + "pc": [ + 195 + ] + }, + { + "teal": 153, + "source": 18, + "pc": [ + 196 + ] + }, + { + "teal": 158, + "source": 23, + "pc": [ + 197, + 198, + 199 + ] + }, + { + "teal": 159, + "source": 23, + "pc": [ + 200 + ] + }, + { + "teal": 160, + "source": 23, + "pc": [ + 201 + ] + }, + { + "teal": 161, + "source": 23, + "pc": [ + 202 + ] + }, + { + "teal": 162, + "source": 23, + "pc": [ + 203 + ] + }, + { + "teal": 165, + "source": 23, + "errorMessage": "argument 0 (address) for updateContactField must be a address", + "pc": [ + 204 + ] + }, + { + "teal": 168, + "source": 23, + "pc": [ + 205, + 206, + 207 + ] + }, + { + "teal": 169, + "source": 23, + "pc": [ + 208, + 209, + 210 + ] + }, + { + "teal": 172, + "source": 23, + "pc": [ + 211, + 212, + 213 + ] + }, + { + "teal": 173, + "source": 23, + "pc": [ + 214, + 215, + 216 + ] + }, + { + "teal": 176, + "source": 23, + "pc": [ + 217, + 218, + 219 + ] + }, + { + "teal": 177, + "source": 23, + "pc": [ + 220 + ] + }, + { + "teal": 178, + "source": 23, + "pc": [ + 221 + ] + }, + { + "teal": 182, + "source": 23, + "pc": [ + 222, + 223, + 224 + ] + }, + { + "teal": 187, + "source": 24, + "pc": [ + 225, + 226 + ] + }, + { + "teal": 188, + "source": 24, + "pc": [ + 227, + 228, + 229, + 230, + 231, + 232 + ] + }, + { + "teal": 189, + "source": 24, + "pc": [ + 233 + ] + }, + { + "teal": 190, + "source": 24, + "pc": [ + 234, + 235, + 236 + ] + }, + { + "teal": 195, + "source": 25, + "pc": [ + 237, + 238 + ] + }, + { + "teal": 196, + "source": 25, + "pc": [ + 239 + ] + }, + { + "teal": 199, + "source": 25, + "errorMessage": "box value does not exist: this.contacts(address).value", + "pc": [ + 240 + ] + }, + { + "teal": 200, + "source": 25, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 201, + "source": 25, + "pc": [ + 243 + ] + }, + { + "teal": 202, + "source": 25, + "pc": [ + 244 + ] + }, + { + "teal": 203, + "source": 25, + "pc": [ + 245, + 246 + ] + }, + { + "teal": 204, + "source": 25, + "pc": [ + 247, + 248 + ] + }, + { + "teal": 205, + "source": 25, + "pc": [ + 249, + 250 + ] + }, + { + "teal": 206, + "source": 25, + "pc": [ + 251, + 252 + ] + }, + { + "teal": 207, + "source": 25, + "pc": [ + 253 + ] + }, + { + "teal": 208, + "source": 25, + "pc": [ + 254 + ] + }, + { + "teal": 209, + "source": 25, + "pc": [ + 255, + 256 + ] + }, + { + "teal": 210, + "source": 25, + "pc": [ + 257 + ] + }, + { + "teal": 211, + "source": 25, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 212, + "source": 25, + "pc": [ + 260 + ] + }, + { + "teal": 213, + "source": 25, + "pc": [ + 261 + ] + }, + { + "teal": 214, + "source": 25, + "pc": [ + 262 + ] + }, + { + "teal": 215, + "source": 25, + "pc": [ + 263 + ] + }, + { + "teal": 216, + "source": 25, + "pc": [ + 264 + ] + }, + { + "teal": 217, + "source": 25, + "pc": [ + 265 + ] + }, + { + "teal": 218, + "source": 25, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 219, + "source": 25, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 220, + "source": 25, + "pc": [ + 270 + ] + }, + { + "teal": 221, + "source": 25, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 222, + "source": 25, + "pc": [ + 273 + ] + }, + { + "teal": 223, + "source": 25, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 224, + "source": 25, + "pc": [ + 276 + ] + }, + { + "teal": 225, + "source": 25, + "pc": [ + 277 + ] + }, + { + "teal": 226, + "source": 25, + "pc": [ + 278 + ] + }, + { + "teal": 227, + "source": 25, + "pc": [ + 279, + 280, + 281 + ] + }, + { + "teal": 228, + "source": 25, + "pc": [ + 282 + ] + }, + { + "teal": 229, + "source": 25, + "pc": [ + 283 + ] + }, + { + "teal": 230, + "source": 25, + "pc": [ + 284 + ] + }, + { + "teal": 231, + "source": 25, + "pc": [ + 285, + 286 + ] + }, + { + "teal": 232, + "source": 25, + "pc": [ + 287, + 288 + ] + }, + { + "teal": 233, + "source": 25, + "pc": [ + 289, + 290 + ] + }, + { + "teal": 234, + "source": 25, + "pc": [ + 291, + 292 + ] + }, + { + "teal": 235, + "source": 25, + "pc": [ + 293 + ] + }, + { + "teal": 236, + "source": 25, + "pc": [ + 294, + 295 + ] + }, + { + "teal": 237, + "source": 25, + "pc": [ + 296 + ] + }, + { + "teal": 238, + "source": 25, + "pc": [ + 297 + ] + }, + { + "teal": 239, + "source": 25, + "pc": [ + 298 + ] + }, + { + "teal": 240, + "source": 25, + "pc": [ + 299 + ] + }, + { + "teal": 241, + "source": 25, + "pc": [ + 300, + 301 + ] + }, + { + "teal": 242, + "source": 25, + "pc": [ + 302, + 303, + 304 + ] + }, + { + "teal": 243, + "source": 25, + "pc": [ + 305, + 306 + ] + }, + { + "teal": 244, + "source": 25, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 245, + "source": 25, + "pc": [ + 309 + ] + }, + { + "teal": 246, + "source": 25, + "pc": [ + 310 + ] + }, + { + "teal": 247, + "source": 25, + "pc": [ + 311, + 312, + 313 + ] + }, + { + "teal": 248, + "source": 25, + "pc": [ + 314, + 315 + ] + }, + { + "teal": 249, + "source": 25, + "pc": [ + 316, + 317 + ] + }, + { + "teal": 250, + "source": 25, + "pc": [ + 318 + ] + }, + { + "teal": 251, + "source": 25, + "pc": [ + 319 + ] + }, + { + "teal": 252, + "source": 25, + "pc": [ + 320 + ] + }, + { + "teal": 253, + "source": 25, + "pc": [ + 321 + ] + }, + { + "teal": 254, + "source": 25, + "pc": [ + 322 + ] + }, + { + "teal": 255, + "source": 24, + "pc": [ + 323, + 324, + 325 + ] + }, + { + "teal": 260, + "source": 26, + "pc": [ + 326, + 327 + ] + }, + { + "teal": 261, + "source": 26, + "pc": [ + 328, + 329, + 330, + 331, + 332, + 333, + 334, + 335, + 336 + ] + }, + { + "teal": 262, + "source": 26, + "pc": [ + 337 + ] + }, + { + "teal": 263, + "source": 26, + "pc": [ + 338, + 339, + 340 + ] + }, + { + "teal": 268, + "source": 27, + "pc": [ + 341, + 342 + ] + }, + { + "teal": 269, + "source": 27, + "pc": [ + 343 + ] + }, + { + "teal": 272, + "source": 27, + "errorMessage": "box value does not exist: this.contacts(address).value", + "pc": [ + 344 + ] + }, + { + "teal": 273, + "source": 27, + "pc": [ + 345, + 346 + ] + }, + { + "teal": 274, + "source": 27, + "pc": [ + 347 + ] + }, + { + "teal": 275, + "source": 27, + "pc": [ + 348 + ] + }, + { + "teal": 276, + "source": 27, + "pc": [ + 349, + 350 + ] + }, + { + "teal": 277, + "source": 27, + "pc": [ + 351, + 352 + ] + }, + { + "teal": 278, + "source": 27, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 279, + "source": 27, + "pc": [ + 355, + 356 + ] + }, + { + "teal": 280, + "source": 27, + "pc": [ + 357 + ] + }, + { + "teal": 281, + "source": 27, + "pc": [ + 358 + ] + }, + { + "teal": 282, + "source": 27, + "pc": [ + 359, + 360 + ] + }, + { + "teal": 283, + "source": 27, + "pc": [ + 361 + ] + }, + { + "teal": 284, + "source": 27, + "pc": [ + 362, + 363 + ] + }, + { + "teal": 285, + "source": 27, + "pc": [ + 364 + ] + }, + { + "teal": 286, + "source": 27, + "pc": [ + 365 + ] + }, + { + "teal": 287, + "source": 27, + "pc": [ + 366 + ] + }, + { + "teal": 288, + "source": 27, + "pc": [ + 367 + ] + }, + { + "teal": 289, + "source": 27, + "pc": [ + 368 + ] + }, + { + "teal": 290, + "source": 27, + "pc": [ + 369 + ] + }, + { + "teal": 291, + "source": 27, + "pc": [ + 370, + 371 + ] + }, + { + "teal": 292, + "source": 27, + "pc": [ + 372, + 373 + ] + }, + { + "teal": 293, + "source": 27, + "pc": [ + 374 + ] + }, + { + "teal": 294, + "source": 27, + "pc": [ + 375, + 376 + ] + }, + { + "teal": 295, + "source": 27, + "pc": [ + 377 + ] + }, + { + "teal": 296, + "source": 27, + "pc": [ + 378, + 379 + ] + }, + { + "teal": 297, + "source": 27, + "pc": [ + 380 + ] + }, + { + "teal": 298, + "source": 27, + "pc": [ + 381 + ] + }, + { + "teal": 299, + "source": 27, + "pc": [ + 382 + ] + }, + { + "teal": 300, + "source": 27, + "pc": [ + 383, + 384, + 385 + ] + }, + { + "teal": 301, + "source": 27, + "pc": [ + 386 + ] + }, + { + "teal": 302, + "source": 27, + "pc": [ + 387 + ] + }, + { + "teal": 303, + "source": 27, + "pc": [ + 388 + ] + }, + { + "teal": 304, + "source": 27, + "pc": [ + 389, + 390 + ] + }, + { + "teal": 305, + "source": 27, + "pc": [ + 391, + 392 + ] + }, + { + "teal": 306, + "source": 27, + "pc": [ + 393, + 394 + ] + }, + { + "teal": 307, + "source": 27, + "pc": [ + 395, + 396 + ] + }, + { + "teal": 308, + "source": 27, + "pc": [ + 397 + ] + }, + { + "teal": 309, + "source": 27, + "pc": [ + 398, + 399 + ] + }, + { + "teal": 310, + "source": 27, + "pc": [ + 400 + ] + }, + { + "teal": 311, + "source": 27, + "pc": [ + 401 + ] + }, + { + "teal": 312, + "source": 27, + "pc": [ + 402 + ] + }, + { + "teal": 313, + "source": 27, + "pc": [ + 403 + ] + }, + { + "teal": 314, + "source": 27, + "pc": [ + 404, + 405 + ] + }, + { + "teal": 315, + "source": 27, + "pc": [ + 406, + 407, + 408 + ] + }, + { + "teal": 316, + "source": 27, + "pc": [ + 409, + 410 + ] + }, + { + "teal": 317, + "source": 27, + "pc": [ + 411, + 412 + ] + }, + { + "teal": 318, + "source": 27, + "pc": [ + 413 + ] + }, + { + "teal": 319, + "source": 27, + "pc": [ + 414 + ] + }, + { + "teal": 320, + "source": 27, + "pc": [ + 415 + ] + }, + { + "teal": 321, + "source": 27, + "pc": [ + 416 + ] + }, + { + "teal": 322, + "source": 27, + "pc": [ + 417 + ] + }, + { + "teal": 323, + "source": 26, + "pc": [ + 418, + 419, + 420 + ] + }, + { + "teal": 327, + "source": 28, + "errorMessage": "Invalid field", + "pc": [ + 421 + ] + }, + { + "teal": 330, + "source": 23, + "pc": [ + 422 + ] + }, + { + "teal": 335, + "source": 31, + "pc": [ + 423, + 424, + 425 + ] + }, + { + "teal": 336, + "source": 31, + "pc": [ + 426 + ] + }, + { + "teal": 337, + "source": 31, + "pc": [ + 427 + ] + }, + { + "teal": 338, + "source": 31, + "pc": [ + 428 + ] + }, + { + "teal": 339, + "source": 31, + "pc": [ + 429 + ] + }, + { + "teal": 342, + "source": 31, + "errorMessage": "argument 0 (address) for verifyContactName must be a address", + "pc": [ + 430 + ] + }, + { + "teal": 345, + "source": 31, + "pc": [ + 431, + 432, + 433 + ] + }, + { + "teal": 346, + "source": 31, + "pc": [ + 434, + 435, + 436 + ] + }, + { + "teal": 349, + "source": 31, + "pc": [ + 437, + 438, + 439 + ] + }, + { + "teal": 350, + "source": 31, + "pc": [ + 440 + ] + }, + { + "teal": 351, + "source": 31, + "pc": [ + 441 + ] + }, + { + "teal": 355, + "source": 31, + "pc": [ + 442, + 443, + 444 + ] + }, + { + "teal": 359, + "source": 32, + "pc": [ + 445, + 446 + ] + }, + { + "teal": 360, + "source": 32, + "pc": [ + 447 + ] + }, + { + "teal": 363, + "source": 32, + "errorMessage": "box value does not exist: this.contacts(address).value", + "pc": [ + 448 + ] + }, + { + "teal": 364, + "source": 32, + "pc": [ + 449, + 450 + ] + }, + { + "teal": 365, + "source": 32, + "pc": [ + 451 + ] + }, + { + "teal": 366, + "source": 32, + "pc": [ + 452, + 453 + ] + }, + { + "teal": 367, + "source": 32, + "pc": [ + 454, + 455 + ] + }, + { + "teal": 368, + "source": 32, + "pc": [ + 456, + 457 + ] + }, + { + "teal": 369, + "source": 32, + "pc": [ + 458 + ] + }, + { + "teal": 370, + "source": 32, + "pc": [ + 459 + ] + }, + { + "teal": 371, + "source": 32, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 372, + "source": 32, + "pc": [ + 462 + ] + }, + { + "teal": 373, + "source": 32, + "pc": [ + 463 + ] + }, + { + "teal": 374, + "source": 32, + "pc": [ + 464 + ] + }, + { + "teal": 375, + "source": 32, + "pc": [ + 465 + ] + }, + { + "teal": 376, + "source": 32, + "pc": [ + 466 + ] + }, + { + "teal": 377, + "source": 32, + "pc": [ + 467 + ] + }, + { + "teal": 378, + "source": 32, + "pc": [ + 468 + ] + }, + { + "teal": 379, + "source": 32, + "pc": [ + 469, + 470, + 471 + ] + }, + { + "teal": 380, + "source": 32, + "pc": [ + 472, + 473 + ] + }, + { + "teal": 381, + "source": 32, + "pc": [ + 474 + ] + }, + { + "teal": 382, + "source": 32, + "pc": [ + 475 + ] + }, + { + "teal": 383, + "source": 31, + "pc": [ + 476 + ] + }, + { + "teal": 386, + "source": 6, + "pc": [ + 477 + ] + }, + { + "teal": 387, + "source": 6, + "pc": [ + 478 + ] + }, + { + "teal": 390, + "source": 6, + "pc": [ + 479, + 480, + 481, + 482, + 483, + 484 + ] + }, + { + "teal": 391, + "source": 6, + "pc": [ + 485, + 486, + 487 + ] + }, + { + "teal": 392, + "source": 6, + "pc": [ + 488, + 489, + 490, + 491 + ] + }, + { + "teal": 395, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 492 + ] + }, + { + "teal": 398, + "source": 6, + "pc": [ + 493, + 494, + 495, + 496, + 497, + 498 + ] + }, + { + "teal": 399, + "source": 6, + "pc": [ + 499, + 500, + 501, + 502, + 503, + 504 + ] + }, + { + "teal": 400, + "source": 6, + "pc": [ + 505, + 506, + 507, + 508, + 509, + 510 + ] + }, + { + "teal": 401, + "source": 6, + "pc": [ + 511, + 512, + 513, + 514, + 515, + 516 + ] + }, + { + "teal": 402, + "source": 6, + "pc": [ + 517, + 518, + 519 + ] + }, + { + "teal": 403, + "source": 6, + "pc": [ + 520, + 521, + 522, + 523, + 524, + 525, + 526, + 527, + 528, + 529 + ] + }, + { + "teal": 406, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 530 + ] + }, + { + "teal": 409, + "source": 6, + "pc": [ + 531, + 532, + 533 + ] + }, + { + "teal": 410, + "source": 6, + "pc": [ + 534, + 535 + ] + }, + { + "teal": 411, + "source": 6, + "pc": [ + 536, + 537 + ] + }, + { + "teal": 412, + "source": 6, + "pc": [ + 538 + ] + }, + { + "teal": 413, + "source": 6, + "pc": [ + 539, + 540 + ] + }, + { + "teal": 414, + "source": 6, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 415, + "source": 6, + "pc": [ + 543 + ] + }, + { + "teal": 416, + "source": 6, + "pc": [ + 544 + ] + }, + { + "teal": 417, + "source": 6, + "pc": [ + 545, + 546 + ] + }, + { + "teal": 418, + "source": 6, + "pc": [ + 547 + ] + }, + { + "teal": 419, + "source": 6, + "pc": [ + 548 + ] + }, + { + "teal": 420, + "source": 6, + "pc": [ + 549 + ] + }, + { + "teal": 421, + "source": 6, + "pc": [ + 550, + 551, + 552 + ] + }, + { + "teal": 422, + "source": 6, + "pc": [ + 553, + 554 + ] + }, + { + "teal": 423, + "source": 6, + "pc": [ + 555, + 556 + ] + }, + { + "teal": 424, + "source": 6, + "pc": [ + 557 + ] + }, + { + "teal": 425, + "source": 6, + "pc": [ + 558 + ] + }, + { + "teal": 426, + "source": 6, + "pc": [ + 559, + 560 + ] + }, + { + "teal": 427, + "source": 6, + "pc": [ + 561, + 562 + ] + }, + { + "teal": 428, + "source": 6, + "pc": [ + 563, + 564 + ] + }, + { + "teal": 429, + "source": 6, + "pc": [ + 565, + 566 + ] + }, + { + "teal": 430, + "source": 6, + "pc": [ + 567 + ] + }, + { + "teal": 433, + "source": 6, + "pc": [ + 568, + 569, + 570 + ] + }, + { + "teal": 434, + "source": 6, + "pc": [ + 571, + 572 + ] + }, + { + "teal": 435, + "source": 6, + "pc": [ + 573, + 574 + ] + }, + { + "teal": 436, + "source": 6, + "pc": [ + 575, + 576 + ] + }, + { + "teal": 437, + "source": 6, + "pc": [ + 577 + ] + }, + { + "teal": 438, + "source": 6, + "pc": [ + 578, + 579 + ] + }, + { + "teal": 439, + "source": 6, + "pc": [ + 580, + 581, + 582 + ] + }, + { + "teal": 440, + "source": 6, + "pc": [ + 583 + ] + }, + { + "teal": 441, + "source": 6, + "pc": [ + 584, + 585, + 586 + ] + }, + { + "teal": 444, + "source": 6, + "pc": [ + 587 + ] + }, + { + "teal": 445, + "source": 6, + "pc": [ + 588 + ] + }, + { + "teal": 448, + "source": 6, + "pc": [ + 589 + ] + }, + { + "teal": 449, + "source": 6, + "pc": [ + 590, + 591, + 592 + ] + }, + { + "teal": 450, + "source": 6, + "pc": [ + 593, + 594 + ] + }, + { + "teal": 451, + "source": 6, + "pc": [ + 595 + ] + }, + { + "teal": 452, + "source": 6, + "pc": [ + 596, + 597 + ] + }, + { + "teal": 453, + "source": 6, + "pc": [ + 598 + ] + }, + { + "teal": 454, + "source": 6, + "pc": [ + 599 + ] + }, + { + "teal": 455, + "source": 6, + "pc": [ + 600, + 601 + ] + }, + { + "teal": 456, + "source": 6, + "pc": [ + 602 + ] + }, + { + "teal": 459, + "source": 6, + "pc": [ + 603, + 604 + ] + }, + { + "teal": 460, + "source": 6, + "pc": [ + 605 + ] + }, + { + "teal": 461, + "source": 6, + "pc": [ + 606, + 607 + ] + }, + { + "teal": 462, + "source": 6, + "pc": [ + 608 + ] + }, + { + "teal": 463, + "source": 6, + "pc": [ + 609, + 610, + 611 + ] + }, + { + "teal": 464, + "source": 6, + "pc": [ + 612, + 613 + ] + }, + { + "teal": 465, + "source": 6, + "pc": [ + 614 + ] + }, + { + "teal": 466, + "source": 6, + "pc": [ + 615, + 616 + ] + }, + { + "teal": 467, + "source": 6, + "pc": [ + 617 + ] + }, + { + "teal": 468, + "source": 6, + "pc": [ + 618, + 619 + ] + }, + { + "teal": 469, + "source": 6, + "pc": [ + 620, + 621, + 622 + ] + }, + { + "teal": 472, + "source": 6, + "pc": [ + 623, + 624 + ] + }, + { + "teal": 473, + "source": 6, + "pc": [ + 625, + 626 + ] + }, + { + "teal": 474, + "source": 6, + "pc": [ + 627 + ] + }, + { + "teal": 475, + "source": 6, + "pc": [ + 628 + ] + }, + { + "teal": 476, + "source": 6, + "pc": [ + 629, + 630 + ] + }, + { + "teal": 479, + "source": 6, + "pc": [ + 631 + ] + }, + { + "teal": 480, + "source": 6, + "pc": [ + 632, + 633 + ] + }, + { + "teal": 481, + "source": 6, + "pc": [ + 634 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRNeUNvbnRhY3Qoc3RyaW5nLHN0cmluZyl2b2lkCiphYmlfcm91dGVfc2V0TXlDb250YWN0OgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldE15Q29udGFjdChzdHJpbmcsc3RyaW5nKXZvaWQKCWNhbGxzdWIgc2V0TXlDb250YWN0CglpbnQgMQoJcmV0dXJuCgovLyBzZXRNeUNvbnRhY3QobmFtZTogc3RyaW5nLCBjb21wYW55OiBzdHJpbmcpOiB2b2lkCnNldE15Q29udGFjdDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjEyCgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTQKCS8vIHRoaXMubXlDb250YWN0LnZhbHVlID0gY29udGFjdAoJYnl0ZSAweDZkNzk0MzZmNmU3NDYxNjM3NCAvLyAibXlDb250YWN0IgoJZnJhbWVfZGlnIDAgLy8gY29udGFjdDogQ29udGFjdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTUKCS8vIHRoaXMuY29udGFjdHModGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGNvbnRhY3QKCXR4biBTZW5kZXIKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMCAvLyBjb250YWN0OiBDb250YWN0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hZGRDb250YWN0OgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgYWRkQ29udGFjdCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWRkQ29udGFjdAoJaW50IDEKCXJldHVybgoKLy8gYWRkQ29udGFjdChuYW1lOiBzdHJpbmcsIGNvbXBhbnk6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKYWRkQ29udGFjdDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjE5CgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjAKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUgPSBjb250YWN0CglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJZHVwCglib3hfZGVsCglwb3AKCWZyYW1lX2RpZyAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCWJveF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdXBkYXRlQ29udGFjdEZpZWxkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWx1ZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIGZpZWxkOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB1cGRhdGVDb250YWN0RmllbGQoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdXBkYXRlQ29udGFjdEZpZWxkCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVDb250YWN0RmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdXBkYXRlQ29udGFjdEZpZWxkOgoJcHJvdG8gMyAwCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNAoJLy8gZmllbGQgPT09ICduYW1lJwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2ZTYxNmQ2NSAvLyAibmFtZSIKCT09CglieiAqaWYwX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjUKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUubmFtZSA9IHZhbHVlCglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNgoJLy8gZmllbGQgPT09ICdjb21wYW55JwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2MzZmNmQ3MDYxNmU3OSAvLyAiY29tcGFueSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjI3CgkvLyB0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLmNvbXBhbnkgPSB2YWx1ZQoJZnJhbWVfZGlnIC0zIC8vIGFkZHJlc3M6IEFkZHJlc3MKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglmcmFtZV9kaWcgLTIgLy8gdmFsdWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gSW52YWxpZCBmaWVsZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gdmVyaWZ5Q29udGFjdE5hbWUoc3RyaW5nLGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeUNvbnRhY3ROYW1lOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdmVyaWZ5Q29udGFjdE5hbWUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHZlcmlmeUNvbnRhY3ROYW1lKHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q29udGFjdE5hbWUKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeUNvbnRhY3ROYW1lKG5hbWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdmVyaWZ5Q29udGFjdE5hbWU6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLm5hbWUgPT09IG5hbWUpCglmcmFtZV9kaWcgLTIgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2V0TXlDb250YWN0KHN0cmluZyxzdHJpbmcpdm9pZCIKCW1ldGhvZCAiYWRkQ29udGFjdChzdHJpbmcsc3RyaW5nLGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDb250YWN0TmFtZShzdHJpbmcsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zZXRNeUNvbnRhY3QgKmFiaV9yb3V0ZV9hZGRDb250YWN0ICphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkICphYmlfcm91dGVfdmVyaWZ5Q29udGFjdE5hbWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRNeUNvbnRhY3Qoc3RyaW5nLHN0cmluZyl2b2lkCiphYmlfcm91dGVfc2V0TXlDb250YWN0OgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHNldE15Q29udGFjdChzdHJpbmcsc3RyaW5nKXZvaWQKCWNhbGxzdWIgc2V0TXlDb250YWN0CglpbnQgMQoJcmV0dXJuCgovLyBzZXRNeUNvbnRhY3QobmFtZTogc3RyaW5nLCBjb21wYW55OiBzdHJpbmcpOiB2b2lkCnNldE15Q29udGFjdDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjEyCgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTQKCS8vIHRoaXMubXlDb250YWN0LnZhbHVlID0gY29udGFjdAoJYnl0ZSAweDZkNzk0MzZmNmU3NDYxNjM3NCAvLyAibXlDb250YWN0IgoJZnJhbWVfZGlnIDAgLy8gY29udGFjdDogQ29udGFjdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MTUKCS8vIHRoaXMuY29udGFjdHModGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGNvbnRhY3QKCXR4biBTZW5kZXIKCWR1cAoJYm94X2RlbAoJcG9wCglmcmFtZV9kaWcgMCAvLyBjb250YWN0OiBDb250YWN0Cglib3hfcHV0CglyZXRzdWIKCi8vIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hZGRDb250YWN0OgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgYWRkQ29udGFjdCBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gY29tcGFueTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGFkZENvbnRhY3Qoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYWRkQ29udGFjdAoJaW50IDEKCXJldHVybgoKLy8gYWRkQ29udGFjdChuYW1lOiBzdHJpbmcsIGNvbXBhbnk6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKYWRkQ29udGFjdDoKCXByb3RvIDMgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjE5CgkvLyBjb250YWN0OiBDb250YWN0ID0geyBuYW1lOiBuYW1lLCBjb21wYW55OiBjb21wYW55IH0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglmcmFtZV9kaWcgLTIgLy8gY29tcGFueTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjAKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUgPSBjb250YWN0CglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJZHVwCglib3hfZGVsCglwb3AKCWZyYW1lX2RpZyAwIC8vIGNvbnRhY3Q6IENvbnRhY3QKCWJveF9wdXQKCXJldHN1YgoKLy8gdXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdXBkYXRlQ29udGFjdEZpZWxkIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWx1ZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIGZpZWxkOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSB1cGRhdGVDb250YWN0RmllbGQoc3RyaW5nLHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdXBkYXRlQ29udGFjdEZpZWxkCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVDb250YWN0RmllbGQoZmllbGQ6IHN0cmluZywgdmFsdWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdXBkYXRlQ29udGFjdEZpZWxkOgoJcHJvdG8gMyAwCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNAoJLy8gZmllbGQgPT09ICduYW1lJwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2ZTYxNmQ2NSAvLyAibmFtZSIKCT09CglieiAqaWYwX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MjUKCS8vIHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUubmFtZSA9IHZhbHVlCglmcmFtZV9kaWcgLTMgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZTogc3RyaW5nCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIGV4YW1wbGVzL3R1cGxlX2luX2JveC9hcHAuYWxnby50czoyNgoJLy8gZmllbGQgPT09ICdjb21wYW55JwoJZnJhbWVfZGlnIC0xIC8vIGZpZWxkOiBzdHJpbmcKCWJ5dGUgMHg2MzZmNmQ3MDYxNmU3OSAvLyAiY29tcGFueSIKCT09CglieiAqaWYwX2Vsc2UKCgkvLyAqaWYwX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gZXhhbXBsZXMvdHVwbGVfaW5fYm94L2FwcC5hbGdvLnRzOjI3CgkvLyB0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLmNvbXBhbnkgPSB2YWx1ZQoJZnJhbWVfZGlnIC0zIC8vIGFkZHJlc3M6IEFkZHJlc3MKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuY29udGFjdHMoYWRkcmVzcykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglmcmFtZV9kaWcgLTIgLy8gdmFsdWU6IHN0cmluZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMyAvLyBhZGRyZXNzOiBBZGRyZXNzCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gSW52YWxpZCBmaWVsZAoJZXJyCgoqaWYwX2VuZDoKCXJldHN1YgoKLy8gdmVyaWZ5Q29udGFjdE5hbWUoc3RyaW5nLGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeUNvbnRhY3ROYW1lOgoJLy8gYWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyZXNzKSBmb3IgdmVyaWZ5Q29udGFjdE5hbWUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIG5hbWU6IHN0cmluZwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIHZlcmlmeUNvbnRhY3ROYW1lKHN0cmluZyxhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdmVyaWZ5Q29udGFjdE5hbWUKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeUNvbnRhY3ROYW1lKG5hbWU6IHN0cmluZywgYWRkcmVzczogQWRkcmVzcyk6IHZvaWQKdmVyaWZ5Q29udGFjdE5hbWU6Cglwcm90byAyIDAKCgkvLyBleGFtcGxlcy90dXBsZV9pbl9ib3gvYXBwLmFsZ28udHM6MzIKCS8vIGFzc2VydCh0aGlzLmNvbnRhY3RzKGFkZHJlc3MpLnZhbHVlLm5hbWUgPT09IG5hbWUpCglmcmFtZV9kaWcgLTIgLy8gYWRkcmVzczogQWRkcmVzcwoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5jb250YWN0cyhhZGRyZXNzKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJZnJhbWVfZGlnIC0xIC8vIG5hbWU6IHN0cmluZwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2V0TXlDb250YWN0KHN0cmluZyxzdHJpbmcpdm9pZCIKCW1ldGhvZCAiYWRkQ29udGFjdChzdHJpbmcsc3RyaW5nLGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidXBkYXRlQ29udGFjdEZpZWxkKHN0cmluZyxzdHJpbmcsYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlDb250YWN0TmFtZShzdHJpbmcsYWRkcmVzcyl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zZXRNeUNvbnRhY3QgKmFiaV9yb3V0ZV9hZGRDb250YWN0ICphYmlfcm91dGVfdXBkYXRlQ29udGFjdEZpZWxkICphYmlfcm91dGVfdmVyaWZ5Q29udGFjdE5hbWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/package.json b/package.json index ad022f406..8299a9a2e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@algorandfoundation/tealscript", - "version": "0.102.0", + "version": "0.103.0", "description": "Enables Algorand smart contract development with native TypeScript syntax, tooling, and IDE support", "homepage": "https://github.com/algorandfoundation/TEALScript", "bugs": { @@ -47,6 +47,7 @@ "compile-optin-lsig": "bun ./src/bin/tealscript.ts examples/optin-lsig/lsig.algo.ts examples/optin-lsig/artifacts", "compile-lsig_with_app": "bun ./src/bin/tealscript.ts examples/lsig_with_app/lsig_with_app.algo.ts examples/lsig_with_app/artifacts", "compile-reti": "bun ./src/bin/tealscript.ts examples/reti/*.algo.ts examples/reti/artifacts", + "compile-arc58": "bun ./src/bin/tealscript.ts examples/arc58/arc58.algo.ts examples/arc58/artifacts", "generate-clients": "conc \"bun compile-arc75\" \"bun compile-itxns\" \"bun compile-simple\" \"bun compile-tuple_in_box\" \"bun compile-merkle\"", "run-merkle": "bun examples/merkle/demo.ts", "run-tuple_in_box": "bun ./examples/tuple_in_box/client.ts", diff --git a/src/lib/compiler.ts b/src/lib/compiler.ts index d18e95154..1f98f54f3 100644 --- a/src/lib/compiler.ts +++ b/src/lib/compiler.ts @@ -13,7 +13,7 @@ import path from 'path'; import langspec from '../static/langspec.json'; import { VERSION } from '../version'; import { optimizeTeal } from './optimize'; -import { type ARC56Contract, type StructFields } from '../types/arc56.d'; +import { type ARC56Contract, type StructField } from '../types/arc56.d'; const MULTI_OUTPUT_TYPES = ['split uint128', 'divmodw output', 'vrf return values', 'ecdsa pubkey']; @@ -928,7 +928,11 @@ export default class Compiler { node.getExpression(), 'box_get', valueType, - `box value does not exist: ${node.getText()}` + `box value does not exist: ${node + .getText() + .split('\n') + .map((l) => l.trim()) + .join(' ')}` ); } @@ -1043,7 +1047,11 @@ export default class Compiler { node.getExpression(), 'box_len', StackType.uint64, - `box value does not exist: ${node.getText()}` + `box value does not exist: ${node + .getText() + .split('\n') + .map((l) => l.trim()) + .join(' ')}` ); break; default: @@ -6120,7 +6128,11 @@ export default class Compiler { action! !== 'value' || getFullValue || storageProp.valueType.kind === 'base' || - !(storageProp.type === 'box' && !this.isDynamicType(storageProp.valueType)) + !( + storageProp.type === 'box' && + !this.isDynamicType(storageProp.valueType) && + !typeInfoToABIString(storageProp.valueType).match('bool') + ) ) { this.handleStorageAction({ node: actionNode, @@ -6507,7 +6519,8 @@ export default class Compiler { getStorageName(storageExpression) && this.storageProps[getStorageName(storageExpression)!] && this.storageProps[getStorageName(storageExpression)!].type === 'box' && - !this.isDynamicType(this.storageProps[getStorageName(storageExpression)!].valueType); + !this.isDynamicType(this.storageProps[getStorageName(storageExpression)!].valueType) && + !typeInfoToABIString(this.storageProps[getStorageName(storageExpression)!].valueType).match('bool'); if (!isStaticBox) { this.processFrame(chain[0].getExpression(), chain[0].getExpression().getText(), true); @@ -7650,14 +7663,14 @@ declare type AssetFreezeTxn = Required; arc56Description(): ARC56Contract { const objectToStructFields = (typeInfo: TypeInfo & { kind: 'object' }) => { - const fields: StructFields = {}; + const fields: StructField[] = []; // eslint-disable-next-line no-restricted-syntax for (const [field, type] of Object.entries(typeInfo.properties)) { if (type.kind === 'object') { - fields[field] = objectToStructFields(type); + fields.push({ name: field, type: objectToStructFields(type) }); } else { - fields[field] = typeInfoToABIString(type); + fields.push({ name: field, type: typeInfoToABIString(type) }); } } @@ -7693,7 +7706,8 @@ declare type AssetFreezeTxn = Required; structs: {}, state, bareActions: { create: [], call: [] }, - sourceInfo: this.sourceInfo, + // TODO: clear source mapping + sourceInfo: { approval: this.sourceInfo, clear: [] }, source: { approval: Buffer.from(this.teal.approval.map((t) => t.teal).join('\n')).toString('base64'), clear: Buffer.from(this.teal.clear.map((t) => t.teal).join('\n')).toString('base64'), diff --git a/src/types/arc56.d.ts b/src/types/arc56.d.ts index aaf642658..1743a0052 100644 --- a/src/types/arc56.d.ts +++ b/src/types/arc56.d.ts @@ -1,130 +1,4 @@ -/** An ABI-encoded type */ -type ABIType = string; - -/** The name of a defined struct */ -type StructName = string; - -/** Raw byteslice without the length prefixed that is specified in ARC-4 */ -type AVMBytes = 'bytes'; - -/** Mapping of named structs to the ABI type of their fields */ -interface StructFields { - [fieldName: string]: ABIType | StructFields; -} - -/** Describes a single key in app storage */ -interface StorageKey { - /** Description of what this storage key holds */ - desc?: string; - /** The type of the key */ - keyType: ABIType | AVMBytes | StructName; - /** The type of the value */ - valueType: ABIType | AVMBytes | StructName; - /** The bytes of the key encoded as base64 */ - key: string; -} - -interface StorageMap { - /** Description of what the key-value pairs in this mapping hold */ - desc?: string; - /** The type of the keys in the map */ - keyType: ABIType | AVMBytes | StructName; - /** The type of the values in the map */ - valueType: ABIType | AVMBytes | StructName; - /** The prefix of the map, encoded as a utf-8 string */ - prefix?: string; -} - -interface SourceInfo { - /** The line of pre-compiled TEAL */ - teal?: number; - /** The program counter offset(s) that correspond to this line of TEAL */ - pc?: Array; - /** A human-readable string that describes the error when the program fails at this given line of TEAL */ - errorMessage?: string; -} - -interface Event { - /** The name of the event */ - name: string; - /** Optional, user-friendly description for the event */ - desc?: string; - /** The arguments of the event, in order */ - args: Array<{ - /** The type of the argument */ - type: ABIType; - /** Optional, user-friendly name for the argument */ - name?: string; - /** Optional, user-friendly description for the argument */ - desc?: string; - /** If the type is a struct, the name of the struct */ - struct?: StructName; - }>; -} - -/** Describes a method in the contract. This interface is an extension of the interface described in ARC-4 */ -interface Method { - /** The name of the method */ - name: string; - /** Optional, user-friendly description for the method */ - desc?: string; - /** The arguments of the method, in order */ - args: Array<{ - /** The type of the argument */ - type: ABIType; - /** If the type is a struct, the name of the struct */ - struct?: StructName; - /** Optional, user-friendly name for the argument */ - name?: string; - /** Optional, user-friendly description for the argument */ - desc?: string; - /** The default value that clients should use. MUST be base64 encoded bytes */ - defaultValue?: string; - }>; - /** Information about the method's return value */ - returns: { - /** The type of the return value, or "void" to indicate no return value. */ - type: ABIType; - /** If the type is a struct, the name of the struct */ - struct?: StructName; - /** Optional, user-friendly description for the return value */ - desc?: string; - }; - /** an action is a combination of call/create and an OnComplete */ - actions: { - /** OnCompletes this method allows when appID === 0 */ - create: ('NoOp' | 'OptIn' | 'DeleteApplication')[]; - /** OnCompletes this method allows when appID !== 0 */ - call: ('NoOp' | 'OptIn' | 'CloseOut' | 'ClearState' | 'UpdateApplication' | 'DeleteApplication')[]; - }; - /** If this method does not write anything to the ledger (ARC-22) */ - readonly: boolean; - /** ARC-28 events that MAY be emitted by this method */ - events?: Array; - /** Information that clients can use when calling the method */ - recommendations?: { - /** The number of inner transactions the caller should cover the fees for */ - innerTransactionCount?: number; - /** Recommended box references to include */ - boxes?: { - /** The app ID for the box */ - app?: number; - /** The base64 encoded box key */ - key: string; - /** The number of bytes being read from the box */ - readBytes: number; - /** The number of bytes being written to the box */ - writeBytes: number; - }; - /** Recommended foreign accounts */ - accounts?: string[]; - /** Recommended foreign apps */ - apps?: number[]; - /** Recommended foreign assets */ - assets?: number[]; - }; -} - +/* eslint-disable no-use-before-define */ /** Describes the entire contract. This interface is an extension of the interface described in ARC-4 */ export interface ARC56Contract { /** The ARCs used and/or supported by this contract. All contracts implicity support ARC4 and ARC56 */ @@ -134,22 +8,20 @@ export interface ARC56Contract { /** Optional, user-friendly description for the interface */ desc?: string; /** - * Optional object listing the contract instances across different networks + * Optional object listing the contract instances across different networks. + * The key is the base64 genesis hash of the network, and the value contains + * information about the deployed contract in the network indicated by the + * key. A key containing the human-readable name of the network MAY be + * included, but the corresponding genesis hash key MUST also be define */ networks?: { - /** - * The key is the base64 genesis hash of the network, and the value contains - * information about the deployed contract in the network indicated by the - * key. A key containing the human-readable name of the network MAY be - * included, but the corresponding genesis hash key MUST also be defined - */ [network: string]: { /** The app ID of the deployed contract in this network */ appID: number; }; }; - /** Named structs use by the application */ - structs: { [structName: StructName]: StructFields }; + /** Named structs use by the application. Each struct field appears in the same order as ABI encoding. */ + structs: { [structName: StructName]: StructField[] }; /** All of the methods that the contract implements */ methods: Method[]; state: { @@ -184,8 +56,13 @@ export interface ARC56Contract { /** OnCompletes this method allows when appID !== 0 */ call: ('NoOp' | 'OptIn' | 'CloseOut' | 'ClearState' | 'UpdateApplication' | 'DeleteApplication')[]; }; - /** Information about the TEAL */ - sourceInfo?: SourceInfo[]; + /** Information about the TEAL programs */ + sourceInfo?: { + /** Approval program information */ + approval: SourceInfo[]; + /** Clear program information */ + clear: SourceInfo[]; + }; /** The pre-compiled TEAL that may contain template variables. MUST be omitted if included as part of ARC23 */ source?: { /** The approval program */ @@ -209,7 +86,7 @@ export interface ARC56Contract { major: number; minor: number; patch: number; - commit?: string; + commitHash?: string; }; }; /** ARC-28 events that MAY be emitted by this contract */ @@ -218,7 +95,7 @@ export interface ARC56Contract { templateVariables?: { [name: string]: { /** The type of the template variable */ - type: ABIType | AVMBytes | StructName; + type: ABIType | AVMString | AVMBytes | StructName; /** If given, the the base64 encoded value used for the given app/program */ value?: string; }; @@ -227,7 +104,155 @@ export interface ARC56Contract { scratchVariables?: { [name: string]: { slot: number; - type: ABIType | AVMBytes | StructName; + type: ABIType | AVMString | AVMBytes | StructName; + }; + }; +} + +/** Describes a method in the contract. This interface is an extension of the interface described in ARC-4 */ +export interface Method { + /** The name of the method */ + name: string; + /** Optional, user-friendly description for the method */ + desc?: string; + /** The arguments of the method, in order */ + args: Array<{ + /** The type of the argument. The `struct` field should also be checked to determine if this arg is a struct. */ + type: ABIType; + /** If the type is a struct, the name of the struct */ + struct?: StructName; + /** Optional, user-friendly name for the argument */ + name?: string; + /** Optional, user-friendly description for the argument */ + desc?: string; + /** The default value that clients should use. */ + defaultValue?: { + /** Base64 encoded bytes or uint64 */ + data: string | bigint; + /** How the data is encoded. This is the encoding for the data provided here, not the arg type */ + type: ABIType | AVMBytes | AVMString; + /** Where the default value is coming from + * - box: The data key signifies the box key to read the value from + * - global: The data key signifies the global state key to read the value from + * - local: The data key signifies the local state key to read the value from (for the sender) + * - literal: the value is a literal and should be passed directly as the argument + */ + source: 'box' | 'global' | 'local' | 'literal'; }; + }>; + /** Information about the method's return value */ + returns: { + /** The type of the return value, or "void" to indicate no return value. The `struct` field should also be checked to determine if this return value is a struct. */ + type: ABIType; + /** If the type is a struct, the name of the struct */ + struct?: StructName; + /** Optional, user-friendly description for the return value */ + desc?: string; }; + /** an action is a combination of call/create and an OnComplete */ + actions: { + /** OnCompletes this method allows when appID === 0 */ + create: ('NoOp' | 'OptIn' | 'DeleteApplication')[]; + /** OnCompletes this method allows when appID !== 0 */ + call: ('NoOp' | 'OptIn' | 'CloseOut' | 'ClearState' | 'UpdateApplication' | 'DeleteApplication')[]; + }; + /** If this method does not write anything to the ledger (ARC-22) */ + readonly?: boolean; + /** ARC-28 events that MAY be emitted by this method */ + events?: Array; + /** Information that clients can use when calling the method */ + recommendations?: { + /** The number of inner transactions the caller should cover the fees for */ + innerTransactionCount?: number; + /** Recommended box references to include */ + boxes?: { + /** The app ID for the box */ + app?: number; + /** The base64 encoded box key */ + key: string; + /** The number of bytes being read from the box */ + readBytes: number; + /** The number of bytes being written to the box */ + writeBytes: number; + }; + /** Recommended foreign accounts */ + accounts?: string[]; + /** Recommended foreign apps */ + apps?: number[]; + /** Recommended foreign assets */ + assets?: number[]; + }; +} + +export interface Event { + /** The name of the event */ + name: string; + /** Optional, user-friendly description for the event */ + desc?: string; + /** The arguments of the event, in order */ + args: Array<{ + /** The type of the argument. The `struct` field should also be checked to determine if this arg is a struct. */ + type: ABIType; + /** Optional, user-friendly name for the argument */ + name?: string; + /** Optional, user-friendly description for the argument */ + desc?: string; + /** If the type is a struct, the name of the struct */ + struct?: StructName; + }>; +} + +/** An ABI-encoded type */ +type ABIType = string; + +/** The name of a defined struct */ +type StructName = string; + +/** Raw byteslice without the length prefixed that is specified in ARC-4 */ +type AVMBytes = 'AVMBytes'; + +/** A string without the length prefix that is specified in ARC-4 */ +type AVMString = 'AVMString'; + +/** Information about a single field in a struct */ +export interface StructField { + /** The name of the struct field */ + name: string; + /** The type of the struct field's value */ + type: ABIType | StructName | StructField[]; +} + +/** Describes a single key in app storage */ +export interface StorageKey { + /** Description of what this storage key holds */ + desc?: string; + /** The type of the key */ + keyType: ABIType | AVMString | AVMBytes | StructName; + /** The type of the value */ + valueType: ABIType | AVMString | AVMBytes | StructName; + /** The bytes of the key encoded as base64 */ + key: string; +} + +/** Describes a mapping of key-value pairs in storage */ +export interface StorageMap { + /** Description of what the key-value pairs in this mapping hold */ + desc?: string; + /** The type of the keys in the map */ + keyType: ABIType | AVMString | AVMBytes | StructName; + /** The type of the values in the map */ + valueType: ABIType | AVMString | AVMBytes | StructName; + /** The base64-encoded prefix of the map keys */ + prefix?: string; +} + +export interface SourceInfo { + /** The line of pre-compiled TEAL */ + teal?: number; + /** The program counter offset(s) that correspond to this line of TEAL */ + pc?: Array; + /** A human-readable string that describes the error when the program fails at this given line of TEAL */ + errorMessage?: string; + /** The line of the dissasembled TEAL this line of pre-compiled TEAL corresponds to */ + disassembledTeal?: number; } diff --git a/src/version.ts b/src/version.ts index c942abe37..52e6e4172 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.102.0'; +export const VERSION = '0.103.0'; diff --git a/tests/contracts/artifacts/A.approval.teal b/tests/contracts/artifacts/A.approval.teal index 99ad7909a..ecf1850db 100644 --- a/tests/contracts/artifacts/A.approval.teal +++ b/tests/contracts/artifacts/A.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/A.arc32.json b/tests/contracts/artifacts/A.arc32.json index 7cc5120cd..19e26a288 100644 --- a/tests/contracts/artifacts/A.arc32.json +++ b/tests/contracts/artifacts/A.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2EKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2EKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/A.arc56_draft.json b/tests/contracts/artifacts/A.arc56_draft.json index 984ec228a..8ca7a61fd 100644 --- a/tests/contracts/artifacts/A.arc56_draft.json +++ b/tests/contracts/artifacts/A.arc56_draft.json @@ -66,261 +66,264 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 12, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 12, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 12, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 12, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 12, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 12, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 12, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 12, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 12, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 15, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 15, - "pc": [ - 43 - ] - }, - { - "teal": 30, - "source": 15, - "pc": [ - 44 - ] - }, - { - "teal": 34, - "source": 15, - "pc": [ - 45, - 46, - 47 - ] - }, - { - "teal": 38, - "source": 16, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 39, - "source": 16, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 40, - "source": 16, - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 15, - "pc": [ - 55 - ] - }, - { - "teal": 44, - "source": 12, - "pc": [ - 56 - ] - }, - { - "teal": 45, - "source": 12, - "pc": [ - 57 - ] - }, - { - "teal": 48, - "source": 12, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 49, - "source": 12, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 50, - "source": 12, - "pc": [ - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 53, - "source": 12, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 71 - ] - }, - { - "teal": 56, - "source": 12, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 57, - "source": 12, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 58, - "source": 12, - "pc": [ - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 61, - "source": 12, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 85 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 12, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 12, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 12, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 12, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 12, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 12, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 12, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 12, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 12, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 15, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 15, + "pc": [ + 43 + ] + }, + { + "teal": 30, + "source": 15, + "pc": [ + 44 + ] + }, + { + "teal": 34, + "source": 15, + "pc": [ + 45, + 46, + 47 + ] + }, + { + "teal": 38, + "source": 16, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 39, + "source": 16, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 40, + "source": 16, + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 15, + "pc": [ + 55 + ] + }, + { + "teal": 44, + "source": 12, + "pc": [ + 56 + ] + }, + { + "teal": 45, + "source": 12, + "pc": [ + 57 + ] + }, + { + "teal": 48, + "source": 12, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 49, + "source": 12, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 50, + "source": 12, + "pc": [ + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 53, + "source": 12, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 71 + ] + }, + { + "teal": 56, + "source": 12, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 57, + "source": 12, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 58, + "source": 12, + "pc": [ + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 61, + "source": 12, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 85 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2EKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2EKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestAccesStringInTuple.approval.teal b/tests/contracts/artifacts/ABITestAccesStringInTuple.approval.teal index 3cf1a7b67..a03484c34 100644 --- a/tests/contracts/artifacts/ABITestAccesStringInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestAccesStringInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestAccesStringInTuple.arc32.json b/tests/contracts/artifacts/ABITestAccesStringInTuple.arc32.json index de6754ec9..0ed1aa82d 100644 --- a/tests/contracts/artifacts/ABITestAccesStringInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestAccesStringInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2VzU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc1N0cmluZ0luVHVwbGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNTdHJpbmdJblR1cGxlKCk6IHN0cmluZwphY2Nlc1N0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTAKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTIKCS8vIGFzc2VydChhWzJdID09PSAnSGVsbG8gV29ybGQhJykKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJYnl0ZSAweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSAvLyAiSGVsbG8gV29ybGQhIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTQKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWNjZXNTdHJpbmdJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2VzU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc1N0cmluZ0luVHVwbGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNTdHJpbmdJblR1cGxlKCk6IHN0cmluZwphY2Nlc1N0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTAKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTIKCS8vIGFzc2VydChhWzJdID09PSAnSGVsbG8gV29ybGQhJykKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJYnl0ZSAweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSAvLyAiSGVsbG8gV29ybGQhIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTQKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWNjZXNTdHJpbmdJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestAccesStringInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestAccesStringInTuple.arc56_draft.json index cf386fc63..4e28d79dd 100644 --- a/tests/contracts/artifacts/ABITestAccesStringInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestAccesStringInTuple.arc56_draft.json @@ -60,974 +60,977 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 548, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 548, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 548, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 548, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 16, - "source": 548, - "pc": [ - 14 - ] - }, - { - "teal": 17, - "source": 548, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 548, - "pc": [ - 17 - ] - }, - { - "teal": 19, - "source": 548, - "pc": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ] - }, - { - "teal": 23, - "source": 548, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 44 - ] - }, - { - "teal": 28, - "source": 549, - "pc": [ - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 31, - "source": 549, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 32, - "source": 549, - "pc": [ - 54 - ] - }, - { - "teal": 33, - "source": 549, - "pc": [ - 55 - ] - }, - { - "teal": 34, - "source": 549, - "pc": [ - 56 - ] - }, - { - "teal": 35, - "source": 549, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 36, - "source": 549, - "pc": [ - 60 - ] - }, - { - "teal": 37, - "source": 549, - "pc": [ - 61 - ] - }, - { - "teal": 38, - "source": 549, - "pc": [ - 62 - ] - }, - { - "teal": 39, - "source": 549, - "pc": [ - 63 - ] - }, - { - "teal": 40, - "source": 549, - "pc": [ - 64 - ] - }, - { - "teal": 41, - "source": 549, - "pc": [ - 65 - ] - }, - { - "teal": 45, - "source": 549, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 549, - "pc": [ - 69 - ] - }, - { - "teal": 52, - "source": 550, - "pc": [ - 70 - ] - }, - { - "teal": 53, - "source": 550, - "pc": [ - 71 - ] - }, - { - "teal": 54, - "source": 550, - "pc": [ - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 55, - "source": 550, - "pc": [ - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 56, - "source": 550, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 57, - "source": 550, - "pc": [ - 83, - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 58, - "source": 550, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 59, - "source": 550, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 60, - "source": 550, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 61, - "source": 550, - "pc": [ - 110, - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 62, - "source": 550, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 63, - "source": 550, - "pc": [ - 118 - ] - }, - { - "teal": 64, - "source": 550, - "pc": [ - 119 - ] - }, - { - "teal": 65, - "source": 550, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 69, - "source": 552, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 70, - "source": 552, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 71, - "source": 552, - "pc": [ - 126 - ] - }, - { - "teal": 72, - "source": 552, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 73, - "source": 552, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 74, - "source": 552, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 75, - "source": 552, - "pc": [ - 133 - ] - }, - { - "teal": 76, - "source": 552, - "pc": [ - 134 - ] - }, - { - "teal": 77, - "source": 552, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 78, - "source": 552, - "pc": [ - 137 - ] - }, - { - "teal": 79, - "source": 552, - "pc": [ - 138 - ] - }, - { - "teal": 80, - "source": 552, - "pc": [ - 139 - ] - }, - { - "teal": 81, - "source": 552, - "pc": [ - 140 - ] - }, - { - "teal": 82, - "source": 552, - "pc": [ - 141 - ] - }, - { - "teal": 83, - "source": 552, - "pc": [ - 142 - ] - }, - { - "teal": 84, - "source": 552, - "pc": [ - 143 - ] - }, - { - "teal": 85, - "source": 552, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 86, - "source": 552, - "pc": [ - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160 - ] - }, - { - "teal": 87, - "source": 552, - "pc": [ - 161 - ] - }, - { - "teal": 88, - "source": 552, - "pc": [ - 162 - ] - }, - { - "teal": 92, - "source": 554, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 93, - "source": 554, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 94, - "source": 554, - "pc": [ - 167 - ] - }, - { - "teal": 95, - "source": 554, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 96, - "source": 554, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 97, - "source": 554, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 98, - "source": 554, - "pc": [ - 174 - ] - }, - { - "teal": 99, - "source": 554, - "pc": [ - 175 - ] - }, - { - "teal": 100, - "source": 554, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 101, - "source": 554, - "pc": [ - 178 - ] - }, - { - "teal": 102, - "source": 554, - "pc": [ - 179 - ] - }, - { - "teal": 103, - "source": 554, - "pc": [ - 180 - ] - }, - { - "teal": 104, - "source": 554, - "pc": [ - 181 - ] - }, - { - "teal": 105, - "source": 554, - "pc": [ - 182 - ] - }, - { - "teal": 106, - "source": 554, - "pc": [ - 183 - ] - }, - { - "teal": 107, - "source": 554, - "pc": [ - 184 - ] - }, - { - "teal": 108, - "source": 554, - "pc": [ - 185, - 186, - 187 - ] - }, - { - "teal": 111, - "source": 549, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 112, - "source": 549, - "pc": [ - 190 - ] - }, - { - "teal": 115, - "source": 548, - "pc": [ - 191 - ] - }, - { - "teal": 116, - "source": 548, - "pc": [ - 192 - ] - }, - { - "teal": 119, - "source": 548, - "pc": [ - 193, - 194, - 195, - 196, - 197, - 198 - ] - }, - { - "teal": 120, - "source": 548, - "pc": [ - 199, - 200, - 201 - ] - }, - { - "teal": 121, - "source": 548, - "pc": [ - 202, - 203, - 204, - 205 - ] - }, - { - "teal": 124, - "source": 548, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 206 - ] - }, - { - "teal": 127, - "source": 548, - "pc": [ - 207, - 208, - 209, - 210, - 211, - 212 - ] - }, - { - "teal": 128, - "source": 548, - "pc": [ - 213, - 214, - 215 - ] - }, - { - "teal": 129, - "source": 548, - "pc": [ - 216, - 217, - 218, - 219 - ] - }, - { - "teal": 132, - "source": 548, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 220 - ] - }, - { - "teal": 135, - "source": 548, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 136, - "source": 548, - "pc": [ - 224, - 225 - ] - }, - { - "teal": 137, - "source": 548, - "pc": [ - 226, - 227 - ] - }, - { - "teal": 138, - "source": 548, - "pc": [ - 228 - ] - }, - { - "teal": 139, - "source": 548, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 140, - "source": 548, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 141, - "source": 548, - "pc": [ - 233 - ] - }, - { - "teal": 144, - "source": 548, - "pc": [ - 234, - 235, - 236 - ] - }, - { - "teal": 145, - "source": 548, - "pc": [ - 237, - 238 - ] - }, - { - "teal": 146, - "source": 548, - "pc": [ - 239, - 240 - ] - }, - { - "teal": 147, - "source": 548, - "pc": [ - 241 - ] - }, - { - "teal": 148, - "source": 548, - "pc": [ - 242, - 243 - ] - }, - { - "teal": 149, - "source": 548, - "pc": [ - 244, - 245 - ] - }, - { - "teal": 150, - "source": 548, - "pc": [ - 246 - ] - }, - { - "teal": 151, - "source": 548, - "pc": [ - 247 - ] - }, - { - "teal": 152, - "source": 548, - "pc": [ - 248, - 249 - ] - }, - { - "teal": 153, - "source": 548, - "pc": [ - 250 - ] - }, - { - "teal": 154, - "source": 548, - "pc": [ - 251 - ] - }, - { - "teal": 155, - "source": 548, - "pc": [ - 252 - ] - }, - { - "teal": 156, - "source": 548, - "pc": [ - 253, - 254, - 255 - ] - }, - { - "teal": 157, - "source": 548, - "pc": [ - 256, - 257 - ] - }, - { - "teal": 158, - "source": 548, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 159, - "source": 548, - "pc": [ - 260 - ] - }, - { - "teal": 160, - "source": 548, - "pc": [ - 261 - ] - }, - { - "teal": 161, - "source": 548, - "pc": [ - 262, - 263 - ] - }, - { - "teal": 162, - "source": 548, - "pc": [ - 264, - 265 - ] - }, - { - "teal": 163, - "source": 548, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 164, - "source": 548, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 165, - "source": 548, - "pc": [ - 270 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 548, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 548, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 548, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 548, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 16, + "source": 548, + "pc": [ + 14 + ] + }, + { + "teal": 17, + "source": 548, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 548, + "pc": [ + 17 + ] + }, + { + "teal": 19, + "source": 548, + "pc": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "teal": 23, + "source": 548, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 44 + ] + }, + { + "teal": 28, + "source": 549, + "pc": [ + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 31, + "source": 549, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 32, + "source": 549, + "pc": [ + 54 + ] + }, + { + "teal": 33, + "source": 549, + "pc": [ + 55 + ] + }, + { + "teal": 34, + "source": 549, + "pc": [ + 56 + ] + }, + { + "teal": 35, + "source": 549, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 36, + "source": 549, + "pc": [ + 60 + ] + }, + { + "teal": 37, + "source": 549, + "pc": [ + 61 + ] + }, + { + "teal": 38, + "source": 549, + "pc": [ + 62 + ] + }, + { + "teal": 39, + "source": 549, + "pc": [ + 63 + ] + }, + { + "teal": 40, + "source": 549, + "pc": [ + 64 + ] + }, + { + "teal": 41, + "source": 549, + "pc": [ + 65 + ] + }, + { + "teal": 45, + "source": 549, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 549, + "pc": [ + 69 + ] + }, + { + "teal": 52, + "source": 550, + "pc": [ + 70 + ] + }, + { + "teal": 53, + "source": 550, + "pc": [ + 71 + ] + }, + { + "teal": 54, + "source": 550, + "pc": [ + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 55, + "source": 550, + "pc": [ + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 56, + "source": 550, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 57, + "source": 550, + "pc": [ + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 58, + "source": 550, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 59, + "source": 550, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 60, + "source": 550, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 61, + "source": 550, + "pc": [ + 110, + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 62, + "source": 550, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 63, + "source": 550, + "pc": [ + 118 + ] + }, + { + "teal": 64, + "source": 550, + "pc": [ + 119 + ] + }, + { + "teal": 65, + "source": 550, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 69, + "source": 552, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 70, + "source": 552, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 71, + "source": 552, + "pc": [ + 126 + ] + }, + { + "teal": 72, + "source": 552, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 73, + "source": 552, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 74, + "source": 552, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 75, + "source": 552, + "pc": [ + 133 + ] + }, + { + "teal": 76, + "source": 552, + "pc": [ + 134 + ] + }, + { + "teal": 77, + "source": 552, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 78, + "source": 552, + "pc": [ + 137 + ] + }, + { + "teal": 79, + "source": 552, + "pc": [ + 138 + ] + }, + { + "teal": 80, + "source": 552, + "pc": [ + 139 + ] + }, + { + "teal": 81, + "source": 552, + "pc": [ + 140 + ] + }, + { + "teal": 82, + "source": 552, + "pc": [ + 141 + ] + }, + { + "teal": 83, + "source": 552, + "pc": [ + 142 + ] + }, + { + "teal": 84, + "source": 552, + "pc": [ + 143 + ] + }, + { + "teal": 85, + "source": 552, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 86, + "source": 552, + "pc": [ + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160 + ] + }, + { + "teal": 87, + "source": 552, + "pc": [ + 161 + ] + }, + { + "teal": 88, + "source": 552, + "pc": [ + 162 + ] + }, + { + "teal": 92, + "source": 554, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 93, + "source": 554, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 94, + "source": 554, + "pc": [ + 167 + ] + }, + { + "teal": 95, + "source": 554, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 96, + "source": 554, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 97, + "source": 554, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 98, + "source": 554, + "pc": [ + 174 + ] + }, + { + "teal": 99, + "source": 554, + "pc": [ + 175 + ] + }, + { + "teal": 100, + "source": 554, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 101, + "source": 554, + "pc": [ + 178 + ] + }, + { + "teal": 102, + "source": 554, + "pc": [ + 179 + ] + }, + { + "teal": 103, + "source": 554, + "pc": [ + 180 + ] + }, + { + "teal": 104, + "source": 554, + "pc": [ + 181 + ] + }, + { + "teal": 105, + "source": 554, + "pc": [ + 182 + ] + }, + { + "teal": 106, + "source": 554, + "pc": [ + 183 + ] + }, + { + "teal": 107, + "source": 554, + "pc": [ + 184 + ] + }, + { + "teal": 108, + "source": 554, + "pc": [ + 185, + 186, + 187 + ] + }, + { + "teal": 111, + "source": 549, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 112, + "source": 549, + "pc": [ + 190 + ] + }, + { + "teal": 115, + "source": 548, + "pc": [ + 191 + ] + }, + { + "teal": 116, + "source": 548, + "pc": [ + 192 + ] + }, + { + "teal": 119, + "source": 548, + "pc": [ + 193, + 194, + 195, + 196, + 197, + 198 + ] + }, + { + "teal": 120, + "source": 548, + "pc": [ + 199, + 200, + 201 + ] + }, + { + "teal": 121, + "source": 548, + "pc": [ + 202, + 203, + 204, + 205 + ] + }, + { + "teal": 124, + "source": 548, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 206 + ] + }, + { + "teal": 127, + "source": 548, + "pc": [ + 207, + 208, + 209, + 210, + 211, + 212 + ] + }, + { + "teal": 128, + "source": 548, + "pc": [ + 213, + 214, + 215 + ] + }, + { + "teal": 129, + "source": 548, + "pc": [ + 216, + 217, + 218, + 219 + ] + }, + { + "teal": 132, + "source": 548, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 220 + ] + }, + { + "teal": 135, + "source": 548, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 136, + "source": 548, + "pc": [ + 224, + 225 + ] + }, + { + "teal": 137, + "source": 548, + "pc": [ + 226, + 227 + ] + }, + { + "teal": 138, + "source": 548, + "pc": [ + 228 + ] + }, + { + "teal": 139, + "source": 548, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 140, + "source": 548, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 141, + "source": 548, + "pc": [ + 233 + ] + }, + { + "teal": 144, + "source": 548, + "pc": [ + 234, + 235, + 236 + ] + }, + { + "teal": 145, + "source": 548, + "pc": [ + 237, + 238 + ] + }, + { + "teal": 146, + "source": 548, + "pc": [ + 239, + 240 + ] + }, + { + "teal": 147, + "source": 548, + "pc": [ + 241 + ] + }, + { + "teal": 148, + "source": 548, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 149, + "source": 548, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 150, + "source": 548, + "pc": [ + 246 + ] + }, + { + "teal": 151, + "source": 548, + "pc": [ + 247 + ] + }, + { + "teal": 152, + "source": 548, + "pc": [ + 248, + 249 + ] + }, + { + "teal": 153, + "source": 548, + "pc": [ + 250 + ] + }, + { + "teal": 154, + "source": 548, + "pc": [ + 251 + ] + }, + { + "teal": 155, + "source": 548, + "pc": [ + 252 + ] + }, + { + "teal": 156, + "source": 548, + "pc": [ + 253, + 254, + 255 + ] + }, + { + "teal": 157, + "source": 548, + "pc": [ + 256, + 257 + ] + }, + { + "teal": 158, + "source": 548, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 159, + "source": 548, + "pc": [ + 260 + ] + }, + { + "teal": 160, + "source": 548, + "pc": [ + 261 + ] + }, + { + "teal": 161, + "source": 548, + "pc": [ + 262, + 263 + ] + }, + { + "teal": 162, + "source": 548, + "pc": [ + 264, + 265 + ] + }, + { + "teal": 163, + "source": 548, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 164, + "source": 548, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 165, + "source": 548, + "pc": [ + 270 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2VzU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc1N0cmluZ0luVHVwbGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNTdHJpbmdJblR1cGxlKCk6IHN0cmluZwphY2Nlc1N0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTAKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTIKCS8vIGFzc2VydChhWzJdID09PSAnSGVsbG8gV29ybGQhJykKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJYnl0ZSAweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSAvLyAiSGVsbG8gV29ybGQhIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTQKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWNjZXNTdHJpbmdJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2VzU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc1N0cmluZ0luVHVwbGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNTdHJpbmdJblR1cGxlKCk6IHN0cmluZwphY2Nlc1N0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTAKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTIKCS8vIGFzc2VydChhWzJdID09PSAnSGVsbG8gV29ybGQhJykKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoJYnl0ZSAweDQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMSAvLyAiSGVsbG8gV29ybGQhIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NTQKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc1N0cmluZ0luVHVwbGUoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYWNjZXNTdHJpbmdJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.approval.teal b/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.approval.teal index 5c513b9a3..2770bc2c8 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc32.json b/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc32.json index 4bc34cbba..2ced4898e 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKCWNhbGxzdWIgYWNjZXNzRHluYW1pY0FycmF5RWxlbWVudEluVHVwbGUKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpOiB1aW50PDg+CmFjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc0CgkvLyBhOiBbdWludDE2LCB1aW50PDg+W11dID0gWzExLCBbMjIsIDMzLCA0NF1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzE2MjEyYwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc2CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZXh0cmFjdF91aW50MTYKCWludCAxIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJaW50IDEKCWV4dHJhY3QzCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKCWNhbGxzdWIgYWNjZXNzRHluYW1pY0FycmF5RWxlbWVudEluVHVwbGUKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpOiB1aW50PDg+CmFjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc0CgkvLyBhOiBbdWludDE2LCB1aW50PDg+W11dID0gWzExLCBbMjIsIDMzLCA0NF1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzE2MjEyYwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc2CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZXh0cmFjdF91aW50MTYKCWludCAxIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJaW50IDEKCWV4dHJhY3QzCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc56_draft.json index b7c45c564..bd77fc32f 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestAccessDynamicArrayElementInTuple.arc56_draft.json @@ -60,747 +60,750 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 672, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7 - ] - }, - { - "teal": 13, - "source": 672, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 14, - "source": 672, - "pc": [ - 10 - ] - }, - { - "teal": 15, - "source": 672, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 16, - "source": 672, - "pc": [ - 13 - ] - }, - { - "teal": 17, - "source": 672, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 18, - "source": 672, - "pc": [ - 16 - ] - }, - { - "teal": 19, - "source": 672, - "pc": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ] - }, - { - "teal": 23, - "source": 672, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 43 - ] - }, - { - "teal": 28, - "source": 673, - "pc": [ - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 31, - "source": 673, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 32, - "source": 673, - "pc": [ - 53 - ] - }, - { - "teal": 33, - "source": 673, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 673, - "pc": [ - 55 - ] - }, - { - "teal": 35, - "source": 673, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 36, - "source": 673, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 673, - "errorMessage": "accessDynamicArrayElementInTuple return value overflowed 8 bits", - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 673, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 41, - "source": 673, - "pc": [ - 63 - ] - }, - { - "teal": 42, - "source": 673, - "pc": [ - 64 - ] - }, - { - "teal": 43, - "source": 673, - "pc": [ - 65 - ] - }, - { - "teal": 44, - "source": 673, - "pc": [ - 66 - ] - }, - { - "teal": 48, - "source": 673, - "pc": [ - 67, - 68, - 69 - ] - }, - { - "teal": 51, - "source": 673, - "pc": [ - 70 - ] - }, - { - "teal": 55, - "source": 674, - "pc": [ - 71 - ] - }, - { - "teal": 56, - "source": 674, - "pc": [ - 72 - ] - }, - { - "teal": 57, - "source": 674, - "pc": [ - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 58, - "source": 674, - "pc": [ - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 59, - "source": 674, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 60, - "source": 674, - "pc": [ - 84, - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 61, - "source": 674, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 62, - "source": 674, - "pc": [ - 94 - ] - }, - { - "teal": 63, - "source": 674, - "pc": [ - 95 - ] - }, - { - "teal": 64, - "source": 674, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 68, - "source": 676, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 69, - "source": 676, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 70, - "source": 676, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 71, - "source": 676, - "pc": [ - 104 - ] - }, - { - "teal": 72, - "source": 676, - "pc": [ - 105 - ] - }, - { - "teal": 73, - "source": 676, - "pc": [ - 106 - ] - }, - { - "teal": 74, - "source": 676, - "pc": [ - 107 - ] - }, - { - "teal": 75, - "source": 676, - "pc": [ - 108 - ] - }, - { - "teal": 76, - "source": 676, - "pc": [ - 109 - ] - }, - { - "teal": 77, - "source": 676, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 78, - "source": 676, - "pc": [ - 112 - ] - }, - { - "teal": 79, - "source": 676, - "pc": [ - 113 - ] - }, - { - "teal": 80, - "source": 676, - "pc": [ - 114 - ] - }, - { - "teal": 81, - "source": 676, - "pc": [ - 115 - ] - }, - { - "teal": 84, - "source": 673, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 85, - "source": 673, - "pc": [ - 118 - ] - }, - { - "teal": 88, - "source": 672, - "pc": [ - 119 - ] - }, - { - "teal": 89, - "source": 672, - "pc": [ - 120 - ] - }, - { - "teal": 92, - "source": 672, - "pc": [ - 121, - 122, - 123, - 124, - 125, - 126 - ] - }, - { - "teal": 93, - "source": 672, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 94, - "source": 672, - "pc": [ - 130, - 131, - 132, - 133 - ] - }, - { - "teal": 97, - "source": 672, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 134 - ] - }, - { - "teal": 100, - "source": 672, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140 - ] - }, - { - "teal": 101, - "source": 672, - "pc": [ - 141, - 142, - 143 - ] - }, - { - "teal": 102, - "source": 672, - "pc": [ - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 105, - "source": 672, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 148 - ] - }, - { - "teal": 108, - "source": 672, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 109, - "source": 672, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 110, - "source": 672, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 111, - "source": 672, - "pc": [ - 156 - ] - }, - { - "teal": 112, - "source": 672, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 113, - "source": 672, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 114, - "source": 672, - "pc": [ - 161 - ] - }, - { - "teal": 117, - "source": 672, - "pc": [ - 162, - 163, - 164 - ] - }, - { - "teal": 118, - "source": 672, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 119, - "source": 672, - "pc": [ - 167, - 168 - ] - }, - { - "teal": 120, - "source": 672, - "pc": [ - 169 - ] - }, - { - "teal": 121, - "source": 672, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 122, - "source": 672, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 123, - "source": 672, - "pc": [ - 174 - ] - }, - { - "teal": 124, - "source": 672, - "pc": [ - 175 - ] - }, - { - "teal": 125, - "source": 672, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 126, - "source": 672, - "pc": [ - 178 - ] - }, - { - "teal": 127, - "source": 672, - "pc": [ - 179 - ] - }, - { - "teal": 128, - "source": 672, - "pc": [ - 180 - ] - }, - { - "teal": 129, - "source": 672, - "pc": [ - 181, - 182, - 183 - ] - }, - { - "teal": 130, - "source": 672, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 131, - "source": 672, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 132, - "source": 672, - "pc": [ - 188 - ] - }, - { - "teal": 133, - "source": 672, - "pc": [ - 189 - ] - }, - { - "teal": 134, - "source": 672, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 135, - "source": 672, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 136, - "source": 672, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 137, - "source": 672, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 138, - "source": 672, - "pc": [ - 198 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 672, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "teal": 13, + "source": 672, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 14, + "source": 672, + "pc": [ + 10 + ] + }, + { + "teal": 15, + "source": 672, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 16, + "source": 672, + "pc": [ + 13 + ] + }, + { + "teal": 17, + "source": 672, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 18, + "source": 672, + "pc": [ + 16 + ] + }, + { + "teal": 19, + "source": 672, + "pc": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "teal": 23, + "source": 672, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 43 + ] + }, + { + "teal": 28, + "source": 673, + "pc": [ + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 31, + "source": 673, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 32, + "source": 673, + "pc": [ + 53 + ] + }, + { + "teal": 33, + "source": 673, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 673, + "pc": [ + 55 + ] + }, + { + "teal": 35, + "source": 673, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 36, + "source": 673, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 673, + "errorMessage": "accessDynamicArrayElementInTuple return value overflowed 8 bits", + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 673, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 41, + "source": 673, + "pc": [ + 63 + ] + }, + { + "teal": 42, + "source": 673, + "pc": [ + 64 + ] + }, + { + "teal": 43, + "source": 673, + "pc": [ + 65 + ] + }, + { + "teal": 44, + "source": 673, + "pc": [ + 66 + ] + }, + { + "teal": 48, + "source": 673, + "pc": [ + 67, + 68, + 69 + ] + }, + { + "teal": 51, + "source": 673, + "pc": [ + 70 + ] + }, + { + "teal": 55, + "source": 674, + "pc": [ + 71 + ] + }, + { + "teal": 56, + "source": 674, + "pc": [ + 72 + ] + }, + { + "teal": 57, + "source": 674, + "pc": [ + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 58, + "source": 674, + "pc": [ + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 59, + "source": 674, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 60, + "source": 674, + "pc": [ + 84, + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 61, + "source": 674, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 62, + "source": 674, + "pc": [ + 94 + ] + }, + { + "teal": 63, + "source": 674, + "pc": [ + 95 + ] + }, + { + "teal": 64, + "source": 674, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 68, + "source": 676, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 69, + "source": 676, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 70, + "source": 676, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 71, + "source": 676, + "pc": [ + 104 + ] + }, + { + "teal": 72, + "source": 676, + "pc": [ + 105 + ] + }, + { + "teal": 73, + "source": 676, + "pc": [ + 106 + ] + }, + { + "teal": 74, + "source": 676, + "pc": [ + 107 + ] + }, + { + "teal": 75, + "source": 676, + "pc": [ + 108 + ] + }, + { + "teal": 76, + "source": 676, + "pc": [ + 109 + ] + }, + { + "teal": 77, + "source": 676, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 78, + "source": 676, + "pc": [ + 112 + ] + }, + { + "teal": 79, + "source": 676, + "pc": [ + 113 + ] + }, + { + "teal": 80, + "source": 676, + "pc": [ + 114 + ] + }, + { + "teal": 81, + "source": 676, + "pc": [ + 115 + ] + }, + { + "teal": 84, + "source": 673, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 85, + "source": 673, + "pc": [ + 118 + ] + }, + { + "teal": 88, + "source": 672, + "pc": [ + 119 + ] + }, + { + "teal": 89, + "source": 672, + "pc": [ + 120 + ] + }, + { + "teal": 92, + "source": 672, + "pc": [ + 121, + 122, + 123, + 124, + 125, + 126 + ] + }, + { + "teal": 93, + "source": 672, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 94, + "source": 672, + "pc": [ + 130, + 131, + 132, + 133 + ] + }, + { + "teal": 97, + "source": 672, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 134 + ] + }, + { + "teal": 100, + "source": 672, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140 + ] + }, + { + "teal": 101, + "source": 672, + "pc": [ + 141, + 142, + 143 + ] + }, + { + "teal": 102, + "source": 672, + "pc": [ + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 105, + "source": 672, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 148 + ] + }, + { + "teal": 108, + "source": 672, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 109, + "source": 672, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 110, + "source": 672, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 111, + "source": 672, + "pc": [ + 156 + ] + }, + { + "teal": 112, + "source": 672, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 113, + "source": 672, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 114, + "source": 672, + "pc": [ + 161 + ] + }, + { + "teal": 117, + "source": 672, + "pc": [ + 162, + 163, + 164 + ] + }, + { + "teal": 118, + "source": 672, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 119, + "source": 672, + "pc": [ + 167, + 168 + ] + }, + { + "teal": 120, + "source": 672, + "pc": [ + 169 + ] + }, + { + "teal": 121, + "source": 672, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 122, + "source": 672, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 123, + "source": 672, + "pc": [ + 174 + ] + }, + { + "teal": 124, + "source": 672, + "pc": [ + 175 + ] + }, + { + "teal": 125, + "source": 672, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 126, + "source": 672, + "pc": [ + 178 + ] + }, + { + "teal": 127, + "source": 672, + "pc": [ + 179 + ] + }, + { + "teal": 128, + "source": 672, + "pc": [ + 180 + ] + }, + { + "teal": 129, + "source": 672, + "pc": [ + 181, + 182, + 183 + ] + }, + { + "teal": 130, + "source": 672, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 131, + "source": 672, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 132, + "source": 672, + "pc": [ + 188 + ] + }, + { + "teal": 133, + "source": 672, + "pc": [ + 189 + ] + }, + { + "teal": 134, + "source": 672, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 135, + "source": 672, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 136, + "source": 672, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 137, + "source": 672, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 138, + "source": 672, + "pc": [ + 198 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKCWNhbGxzdWIgYWNjZXNzRHluYW1pY0FycmF5RWxlbWVudEluVHVwbGUKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpOiB1aW50PDg+CmFjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc0CgkvLyBhOiBbdWludDE2LCB1aW50PDg+W11dID0gWzExLCBbMjIsIDMzLCA0NF1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzE2MjEyYwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc2CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZXh0cmFjdF91aW50MTYKCWludCAxIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJaW50IDEKCWV4dHJhY3QzCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgKCWNhbGxzdWIgYWNjZXNzRHluYW1pY0FycmF5RWxlbWVudEluVHVwbGUKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpOiB1aW50PDg+CmFjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc0CgkvLyBhOiBbdWludDE2LCB1aW50PDg+W11dID0gWzExLCBbMjIsIDMzLCA0NF1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzE2MjEyYwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njc2CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZXh0cmFjdF91aW50MTYKCWludCAxIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJaW50IDEKCWV4dHJhY3QzCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlFbGVtZW50SW5UdXBsZSgpdWludDgiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUVsZW1lbnRJblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.approval.teal b/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.approval.teal index 7cef547cb..de0ef1b95 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc32.json b/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc32.json index ee95c15a9..7158a7a8b 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCl1aW50OFtdCgljYWxsc3ViIGFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKTogdWludDw4PltdCmFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2NgoJLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyXSwgM10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2OAoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCl1aW50OFtdCgljYWxsc3ViIGFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKTogdWludDw4PltdCmFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2NgoJLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyXSwgM10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2OAoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc56_draft.json index 8c80a1d61..0b367990e 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestAccessDynamicArrayInMiddleOfTuple.arc56_draft.json @@ -60,780 +60,783 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 664, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7 - ] - }, - { - "teal": 13, - "source": 664, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 14, - "source": 664, - "pc": [ - 10 - ] - }, - { - "teal": 15, - "source": 664, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 16, - "source": 664, - "pc": [ - 13 - ] - }, - { - "teal": 17, - "source": 664, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 18, - "source": 664, - "pc": [ - 16 - ] - }, - { - "teal": 19, - "source": 664, - "pc": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ] - }, - { - "teal": 23, - "source": 664, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 43 - ] - }, - { - "teal": 28, - "source": 665, - "pc": [ - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 31, - "source": 665, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 32, - "source": 665, - "pc": [ - 53 - ] - }, - { - "teal": 33, - "source": 665, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 665, - "pc": [ - 55 - ] - }, - { - "teal": 35, - "source": 665, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 36, - "source": 665, - "pc": [ - 59 - ] - }, - { - "teal": 37, - "source": 665, - "pc": [ - 60 - ] - }, - { - "teal": 38, - "source": 665, - "pc": [ - 61 - ] - }, - { - "teal": 39, - "source": 665, - "pc": [ - 62 - ] - }, - { - "teal": 40, - "source": 665, - "pc": [ - 63 - ] - }, - { - "teal": 41, - "source": 665, - "pc": [ - 64 - ] - }, - { - "teal": 45, - "source": 665, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 48, - "source": 665, - "pc": [ - 68 - ] - }, - { - "teal": 52, - "source": 666, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 666, - "pc": [ - 70 - ] - }, - { - "teal": 54, - "source": 666, - "pc": [ - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 55, - "source": 666, - "pc": [ - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 56, - "source": 666, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 57, - "source": 666, - "pc": [ - 82, - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 58, - "source": 666, - "pc": [ - 87, - 88, - 89 - ] - }, - { - "teal": 59, - "source": 666, - "pc": [ - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 60, - "source": 666, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 61, - "source": 666, - "pc": [ - 97 - ] - }, - { - "teal": 62, - "source": 666, - "pc": [ - 98 - ] - }, - { - "teal": 63, - "source": 666, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 67, - "source": 668, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 68, - "source": 668, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 69, - "source": 668, - "pc": [ - 105 - ] - }, - { - "teal": 70, - "source": 668, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 71, - "source": 668, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 72, - "source": 668, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 73, - "source": 668, - "pc": [ - 112 - ] - }, - { - "teal": 74, - "source": 668, - "pc": [ - 113 - ] - }, - { - "teal": 75, - "source": 668, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 76, - "source": 668, - "pc": [ - 116 - ] - }, - { - "teal": 77, - "source": 668, - "pc": [ - 117 - ] - }, - { - "teal": 78, - "source": 668, - "pc": [ - 118 - ] - }, - { - "teal": 79, - "source": 668, - "pc": [ - 119 - ] - }, - { - "teal": 80, - "source": 668, - "pc": [ - 120 - ] - }, - { - "teal": 81, - "source": 668, - "pc": [ - 121 - ] - }, - { - "teal": 82, - "source": 668, - "pc": [ - 122 - ] - }, - { - "teal": 83, - "source": 668, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 86, - "source": 665, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 87, - "source": 665, - "pc": [ - 128 - ] - }, - { - "teal": 90, - "source": 664, - "pc": [ - 129 - ] - }, - { - "teal": 91, - "source": 664, - "pc": [ - 130 - ] - }, - { - "teal": 94, - "source": 664, - "pc": [ - 131, - 132, - 133, - 134, - 135, - 136 - ] - }, - { - "teal": 95, - "source": 664, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 96, - "source": 664, - "pc": [ - 140, - 141, - 142, - 143 - ] - }, - { - "teal": 99, - "source": 664, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 144 - ] - }, - { - "teal": 102, - "source": 664, - "pc": [ - 145, - 146, - 147, - 148, - 149, - 150 - ] - }, - { - "teal": 103, - "source": 664, - "pc": [ - 151, - 152, - 153 - ] - }, - { - "teal": 104, - "source": 664, - "pc": [ - 154, - 155, - 156, - 157 - ] - }, - { - "teal": 107, - "source": 664, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 158 - ] - }, - { - "teal": 110, - "source": 664, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 111, - "source": 664, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 112, - "source": 664, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 113, - "source": 664, - "pc": [ - 166 - ] - }, - { - "teal": 114, - "source": 664, - "pc": [ - 167, - 168 - ] - }, - { - "teal": 115, - "source": 664, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 116, - "source": 664, - "pc": [ - 171 - ] - }, - { - "teal": 119, - "source": 664, - "pc": [ - 172, - 173, - 174 - ] - }, - { - "teal": 120, - "source": 664, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 121, - "source": 664, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 122, - "source": 664, - "pc": [ - 179 - ] - }, - { - "teal": 123, - "source": 664, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 124, - "source": 664, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 125, - "source": 664, - "pc": [ - 184 - ] - }, - { - "teal": 126, - "source": 664, - "pc": [ - 185 - ] - }, - { - "teal": 127, - "source": 664, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 128, - "source": 664, - "pc": [ - 188 - ] - }, - { - "teal": 129, - "source": 664, - "pc": [ - 189 - ] - }, - { - "teal": 130, - "source": 664, - "pc": [ - 190 - ] - }, - { - "teal": 131, - "source": 664, - "pc": [ - 191, - 192, - 193 - ] - }, - { - "teal": 132, - "source": 664, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 133, - "source": 664, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 134, - "source": 664, - "pc": [ - 198 - ] - }, - { - "teal": 135, - "source": 664, - "pc": [ - 199 - ] - }, - { - "teal": 136, - "source": 664, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 137, - "source": 664, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 138, - "source": 664, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 139, - "source": 664, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 140, - "source": 664, - "pc": [ - 208 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 664, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "teal": 13, + "source": 664, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 14, + "source": 664, + "pc": [ + 10 + ] + }, + { + "teal": 15, + "source": 664, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 16, + "source": 664, + "pc": [ + 13 + ] + }, + { + "teal": 17, + "source": 664, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 18, + "source": 664, + "pc": [ + 16 + ] + }, + { + "teal": 19, + "source": 664, + "pc": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "teal": 23, + "source": 664, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 43 + ] + }, + { + "teal": 28, + "source": 665, + "pc": [ + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 31, + "source": 665, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 32, + "source": 665, + "pc": [ + 53 + ] + }, + { + "teal": 33, + "source": 665, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 665, + "pc": [ + 55 + ] + }, + { + "teal": 35, + "source": 665, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 36, + "source": 665, + "pc": [ + 59 + ] + }, + { + "teal": 37, + "source": 665, + "pc": [ + 60 + ] + }, + { + "teal": 38, + "source": 665, + "pc": [ + 61 + ] + }, + { + "teal": 39, + "source": 665, + "pc": [ + 62 + ] + }, + { + "teal": 40, + "source": 665, + "pc": [ + 63 + ] + }, + { + "teal": 41, + "source": 665, + "pc": [ + 64 + ] + }, + { + "teal": 45, + "source": 665, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 48, + "source": 665, + "pc": [ + 68 + ] + }, + { + "teal": 52, + "source": 666, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 666, + "pc": [ + 70 + ] + }, + { + "teal": 54, + "source": 666, + "pc": [ + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 55, + "source": 666, + "pc": [ + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 56, + "source": 666, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 57, + "source": 666, + "pc": [ + 82, + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 58, + "source": 666, + "pc": [ + 87, + 88, + 89 + ] + }, + { + "teal": 59, + "source": 666, + "pc": [ + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 60, + "source": 666, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 61, + "source": 666, + "pc": [ + 97 + ] + }, + { + "teal": 62, + "source": 666, + "pc": [ + 98 + ] + }, + { + "teal": 63, + "source": 666, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 67, + "source": 668, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 68, + "source": 668, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 69, + "source": 668, + "pc": [ + 105 + ] + }, + { + "teal": 70, + "source": 668, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 71, + "source": 668, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 72, + "source": 668, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 73, + "source": 668, + "pc": [ + 112 + ] + }, + { + "teal": 74, + "source": 668, + "pc": [ + 113 + ] + }, + { + "teal": 75, + "source": 668, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 76, + "source": 668, + "pc": [ + 116 + ] + }, + { + "teal": 77, + "source": 668, + "pc": [ + 117 + ] + }, + { + "teal": 78, + "source": 668, + "pc": [ + 118 + ] + }, + { + "teal": 79, + "source": 668, + "pc": [ + 119 + ] + }, + { + "teal": 80, + "source": 668, + "pc": [ + 120 + ] + }, + { + "teal": 81, + "source": 668, + "pc": [ + 121 + ] + }, + { + "teal": 82, + "source": 668, + "pc": [ + 122 + ] + }, + { + "teal": 83, + "source": 668, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 86, + "source": 665, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 87, + "source": 665, + "pc": [ + 128 + ] + }, + { + "teal": 90, + "source": 664, + "pc": [ + 129 + ] + }, + { + "teal": 91, + "source": 664, + "pc": [ + 130 + ] + }, + { + "teal": 94, + "source": 664, + "pc": [ + 131, + 132, + 133, + 134, + 135, + 136 + ] + }, + { + "teal": 95, + "source": 664, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 96, + "source": 664, + "pc": [ + 140, + 141, + 142, + 143 + ] + }, + { + "teal": 99, + "source": 664, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 144 + ] + }, + { + "teal": 102, + "source": 664, + "pc": [ + 145, + 146, + 147, + 148, + 149, + 150 + ] + }, + { + "teal": 103, + "source": 664, + "pc": [ + 151, + 152, + 153 + ] + }, + { + "teal": 104, + "source": 664, + "pc": [ + 154, + 155, + 156, + 157 + ] + }, + { + "teal": 107, + "source": 664, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 158 + ] + }, + { + "teal": 110, + "source": 664, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 111, + "source": 664, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 112, + "source": 664, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 113, + "source": 664, + "pc": [ + 166 + ] + }, + { + "teal": 114, + "source": 664, + "pc": [ + 167, + 168 + ] + }, + { + "teal": 115, + "source": 664, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 116, + "source": 664, + "pc": [ + 171 + ] + }, + { + "teal": 119, + "source": 664, + "pc": [ + 172, + 173, + 174 + ] + }, + { + "teal": 120, + "source": 664, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 121, + "source": 664, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 122, + "source": 664, + "pc": [ + 179 + ] + }, + { + "teal": 123, + "source": 664, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 124, + "source": 664, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 125, + "source": 664, + "pc": [ + 184 + ] + }, + { + "teal": 126, + "source": 664, + "pc": [ + 185 + ] + }, + { + "teal": 127, + "source": 664, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 128, + "source": 664, + "pc": [ + 188 + ] + }, + { + "teal": 129, + "source": 664, + "pc": [ + 189 + ] + }, + { + "teal": 130, + "source": 664, + "pc": [ + 190 + ] + }, + { + "teal": 131, + "source": 664, + "pc": [ + 191, + 192, + 193 + ] + }, + { + "teal": 132, + "source": 664, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 133, + "source": 664, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 134, + "source": 664, + "pc": [ + 198 + ] + }, + { + "teal": 135, + "source": 664, + "pc": [ + 199 + ] + }, + { + "teal": 136, + "source": 664, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 137, + "source": 664, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 138, + "source": 664, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 139, + "source": 664, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 140, + "source": 664, + "pc": [ + 208 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCl1aW50OFtdCgljYWxsc3ViIGFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKTogdWludDw4PltdCmFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2NgoJLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyXSwgM10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2OAoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9hY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCl1aW50OFtdCgljYWxsc3ViIGFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKTogdWludDw4PltdCmFjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2NgoJLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyXSwgM10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY2OAoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhY2Nlc3NEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKXVpbnQ4W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestAccessDynamicStringArray.approval.teal b/tests/contracts/artifacts/ABITestAccessDynamicStringArray.approval.teal index 580508cb4..b49b960f7 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicStringArray.approval.teal +++ b/tests/contracts/artifacts/ABITestAccessDynamicStringArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc32.json b/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc32.json index 57966fc99..8ee87ae2b 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc32.json +++ b/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KCk6IHN0cmluZwphY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MTAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcxMgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KCk6IHN0cmluZwphY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MTAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcxMgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc56_draft.json b/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc56_draft.json index 278e0e003..57747fc8e 100644 --- a/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestAccessDynamicStringArray.arc56_draft.json @@ -60,774 +60,777 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 708, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7 - ] - }, - { - "teal": 13, - "source": 708, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 14, - "source": 708, - "pc": [ - 10 - ] - }, - { - "teal": 15, - "source": 708, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 16, - "source": 708, - "pc": [ - 13 - ] - }, - { - "teal": 17, - "source": 708, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 18, - "source": 708, - "pc": [ - 16 - ] - }, - { - "teal": 19, - "source": 708, - "pc": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ] - }, - { - "teal": 23, - "source": 708, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 43 - ] - }, - { - "teal": 28, - "source": 709, - "pc": [ - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 31, - "source": 709, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 32, - "source": 709, - "pc": [ - 53 - ] - }, - { - "teal": 33, - "source": 709, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 709, - "pc": [ - 55 - ] - }, - { - "teal": 35, - "source": 709, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 36, - "source": 709, - "pc": [ - 59 - ] - }, - { - "teal": 37, - "source": 709, - "pc": [ - 60 - ] - }, - { - "teal": 38, - "source": 709, - "pc": [ - 61 - ] - }, - { - "teal": 39, - "source": 709, - "pc": [ - 62 - ] - }, - { - "teal": 40, - "source": 709, - "pc": [ - 63 - ] - }, - { - "teal": 41, - "source": 709, - "pc": [ - 64 - ] - }, - { - "teal": 45, - "source": 709, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 48, - "source": 709, - "pc": [ - 68 - ] - }, - { - "teal": 52, - "source": 710, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 710, - "pc": [ - 70 - ] - }, - { - "teal": 54, - "source": 710, - "pc": [ - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 55, - "source": 710, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 56, - "source": 710, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 57, - "source": 710, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 58, - "source": 710, - "pc": [ - 96, - 97, - 98 - ] - }, - { - "teal": 59, - "source": 710, - "pc": [ - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 60, - "source": 710, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 61, - "source": 710, - "pc": [ - 107 - ] - }, - { - "teal": 62, - "source": 710, - "pc": [ - 108 - ] - }, - { - "teal": 63, - "source": 710, - "pc": [ - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 64, - "source": 710, - "pc": [ - 113 - ] - }, - { - "teal": 65, - "source": 710, - "pc": [ - 114 - ] - }, - { - "teal": 66, - "source": 710, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 70, - "source": 712, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 71, - "source": 712, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 72, - "source": 712, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 73, - "source": 712, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 74, - "source": 712, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 75, - "source": 712, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 76, - "source": 712, - "pc": [ - 129 - ] - }, - { - "teal": 77, - "source": 712, - "pc": [ - 130 - ] - }, - { - "teal": 78, - "source": 712, - "pc": [ - 131 - ] - }, - { - "teal": 79, - "source": 712, - "pc": [ - 132 - ] - }, - { - "teal": 80, - "source": 712, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 81, - "source": 712, - "pc": [ - 135 - ] - }, - { - "teal": 82, - "source": 712, - "pc": [ - 136 - ] - }, - { - "teal": 83, - "source": 712, - "pc": [ - 137 - ] - }, - { - "teal": 84, - "source": 712, - "pc": [ - 138 - ] - }, - { - "teal": 85, - "source": 712, - "pc": [ - 139 - ] - }, - { - "teal": 86, - "source": 712, - "pc": [ - 140 - ] - }, - { - "teal": 87, - "source": 712, - "pc": [ - 141 - ] - }, - { - "teal": 88, - "source": 712, - "pc": [ - 142, - 143, - 144 - ] - }, - { - "teal": 91, - "source": 709, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 92, - "source": 709, - "pc": [ - 147 - ] - }, - { - "teal": 95, - "source": 708, - "pc": [ - 148 - ] - }, - { - "teal": 96, - "source": 708, - "pc": [ - 149 - ] - }, - { - "teal": 99, - "source": 708, - "pc": [ - 150, - 151, - 152, - 153, - 154, - 155 - ] - }, - { - "teal": 100, - "source": 708, - "pc": [ - 156, - 157, - 158 - ] - }, - { - "teal": 101, - "source": 708, - "pc": [ - 159, - 160, - 161, - 162 - ] - }, - { - "teal": 104, - "source": 708, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 163 - ] - }, - { - "teal": 107, - "source": 708, - "pc": [ - 164, - 165, - 166, - 167, - 168, - 169 - ] - }, - { - "teal": 108, - "source": 708, - "pc": [ - 170, - 171, - 172 - ] - }, - { - "teal": 109, - "source": 708, - "pc": [ - 173, - 174, - 175, - 176 - ] - }, - { - "teal": 112, - "source": 708, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 177 - ] - }, - { - "teal": 115, - "source": 708, - "pc": [ - 178, - 179, - 180 - ] - }, - { - "teal": 116, - "source": 708, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 117, - "source": 708, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 118, - "source": 708, - "pc": [ - 185 - ] - }, - { - "teal": 119, - "source": 708, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 120, - "source": 708, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 121, - "source": 708, - "pc": [ - 190 - ] - }, - { - "teal": 122, - "source": 708, - "pc": [ - 191 - ] - }, - { - "teal": 123, - "source": 708, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 124, - "source": 708, - "pc": [ - 194 - ] - }, - { - "teal": 125, - "source": 708, - "pc": [ - 195 - ] - }, - { - "teal": 126, - "source": 708, - "pc": [ - 196 - ] - }, - { - "teal": 127, - "source": 708, - "pc": [ - 197, - 198, - 199 - ] - }, - { - "teal": 128, - "source": 708, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 129, - "source": 708, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 130, - "source": 708, - "pc": [ - 204 - ] - }, - { - "teal": 131, - "source": 708, - "pc": [ - 205 - ] - }, - { - "teal": 132, - "source": 708, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 133, - "source": 708, - "pc": [ - 208, - 209 - ] - }, - { - "teal": 134, - "source": 708, - "pc": [ - 210, - 211 - ] - }, - { - "teal": 135, - "source": 708, - "pc": [ - 212, - 213 - ] - }, - { - "teal": 136, - "source": 708, - "pc": [ - 214 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 708, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "teal": 13, + "source": 708, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 14, + "source": 708, + "pc": [ + 10 + ] + }, + { + "teal": 15, + "source": 708, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 16, + "source": 708, + "pc": [ + 13 + ] + }, + { + "teal": 17, + "source": 708, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 18, + "source": 708, + "pc": [ + 16 + ] + }, + { + "teal": 19, + "source": 708, + "pc": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "teal": 23, + "source": 708, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 43 + ] + }, + { + "teal": 28, + "source": 709, + "pc": [ + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 31, + "source": 709, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 32, + "source": 709, + "pc": [ + 53 + ] + }, + { + "teal": 33, + "source": 709, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 709, + "pc": [ + 55 + ] + }, + { + "teal": 35, + "source": 709, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 36, + "source": 709, + "pc": [ + 59 + ] + }, + { + "teal": 37, + "source": 709, + "pc": [ + 60 + ] + }, + { + "teal": 38, + "source": 709, + "pc": [ + 61 + ] + }, + { + "teal": 39, + "source": 709, + "pc": [ + 62 + ] + }, + { + "teal": 40, + "source": 709, + "pc": [ + 63 + ] + }, + { + "teal": 41, + "source": 709, + "pc": [ + 64 + ] + }, + { + "teal": 45, + "source": 709, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 48, + "source": 709, + "pc": [ + 68 + ] + }, + { + "teal": 52, + "source": 710, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 710, + "pc": [ + 70 + ] + }, + { + "teal": 54, + "source": 710, + "pc": [ + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 55, + "source": 710, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 56, + "source": 710, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 57, + "source": 710, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 58, + "source": 710, + "pc": [ + 96, + 97, + 98 + ] + }, + { + "teal": 59, + "source": 710, + "pc": [ + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 60, + "source": 710, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 61, + "source": 710, + "pc": [ + 107 + ] + }, + { + "teal": 62, + "source": 710, + "pc": [ + 108 + ] + }, + { + "teal": 63, + "source": 710, + "pc": [ + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 64, + "source": 710, + "pc": [ + 113 + ] + }, + { + "teal": 65, + "source": 710, + "pc": [ + 114 + ] + }, + { + "teal": 66, + "source": 710, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 70, + "source": 712, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 71, + "source": 712, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 72, + "source": 712, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 73, + "source": 712, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 74, + "source": 712, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 75, + "source": 712, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 76, + "source": 712, + "pc": [ + 129 + ] + }, + { + "teal": 77, + "source": 712, + "pc": [ + 130 + ] + }, + { + "teal": 78, + "source": 712, + "pc": [ + 131 + ] + }, + { + "teal": 79, + "source": 712, + "pc": [ + 132 + ] + }, + { + "teal": 80, + "source": 712, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 81, + "source": 712, + "pc": [ + 135 + ] + }, + { + "teal": 82, + "source": 712, + "pc": [ + 136 + ] + }, + { + "teal": 83, + "source": 712, + "pc": [ + 137 + ] + }, + { + "teal": 84, + "source": 712, + "pc": [ + 138 + ] + }, + { + "teal": 85, + "source": 712, + "pc": [ + 139 + ] + }, + { + "teal": 86, + "source": 712, + "pc": [ + 140 + ] + }, + { + "teal": 87, + "source": 712, + "pc": [ + 141 + ] + }, + { + "teal": 88, + "source": 712, + "pc": [ + 142, + 143, + 144 + ] + }, + { + "teal": 91, + "source": 709, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 92, + "source": 709, + "pc": [ + 147 + ] + }, + { + "teal": 95, + "source": 708, + "pc": [ + 148 + ] + }, + { + "teal": 96, + "source": 708, + "pc": [ + 149 + ] + }, + { + "teal": 99, + "source": 708, + "pc": [ + 150, + 151, + 152, + 153, + 154, + 155 + ] + }, + { + "teal": 100, + "source": 708, + "pc": [ + 156, + 157, + 158 + ] + }, + { + "teal": 101, + "source": 708, + "pc": [ + 159, + 160, + 161, + 162 + ] + }, + { + "teal": 104, + "source": 708, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 163 + ] + }, + { + "teal": 107, + "source": 708, + "pc": [ + 164, + 165, + 166, + 167, + 168, + 169 + ] + }, + { + "teal": 108, + "source": 708, + "pc": [ + 170, + 171, + 172 + ] + }, + { + "teal": 109, + "source": 708, + "pc": [ + 173, + 174, + 175, + 176 + ] + }, + { + "teal": 112, + "source": 708, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 177 + ] + }, + { + "teal": 115, + "source": 708, + "pc": [ + 178, + 179, + 180 + ] + }, + { + "teal": 116, + "source": 708, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 117, + "source": 708, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 118, + "source": 708, + "pc": [ + 185 + ] + }, + { + "teal": 119, + "source": 708, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 120, + "source": 708, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 121, + "source": 708, + "pc": [ + 190 + ] + }, + { + "teal": 122, + "source": 708, + "pc": [ + 191 + ] + }, + { + "teal": 123, + "source": 708, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 124, + "source": 708, + "pc": [ + 194 + ] + }, + { + "teal": 125, + "source": 708, + "pc": [ + 195 + ] + }, + { + "teal": 126, + "source": 708, + "pc": [ + 196 + ] + }, + { + "teal": 127, + "source": 708, + "pc": [ + 197, + 198, + 199 + ] + }, + { + "teal": 128, + "source": 708, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 129, + "source": 708, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 130, + "source": 708, + "pc": [ + 204 + ] + }, + { + "teal": 131, + "source": 708, + "pc": [ + 205 + ] + }, + { + "teal": 132, + "source": 708, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 133, + "source": 708, + "pc": [ + 208, + 209 + ] + }, + { + "teal": 134, + "source": 708, + "pc": [ + 210, + 211 + ] + }, + { + "teal": 135, + "source": 708, + "pc": [ + 212, + 213 + ] + }, + { + "teal": 136, + "source": 708, + "pc": [ + 214 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KCk6IHN0cmluZwphY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MTAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcxMgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkoKXN0cmluZwoJY2FsbHN1YiBhY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KCk6IHN0cmluZwphY2Nlc3NEeW5hbWljU3RyaW5nQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MTAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcxMgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCWV4dHJhY3QzCglleHRyYWN0IDIgMAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYWNjZXNzRHluYW1pY1N0cmluZ0FycmF5KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc0R5bmFtaWNTdHJpbmdBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.approval.teal b/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.approval.teal index d28bd0bd6..dea8aa4e5 100644 --- a/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.approval.teal +++ b/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc32.json b/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc32.json index 839f03a15..079e867a9 100644 --- a/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc32.json +++ b/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZSgpdWludDY0CiphYmlfcm91dGVfYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCk6IHVpbnQ2NAphY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE2CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAxMjAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE3CgkvLyB2YWwgPSB0aGlzLmJLZXkudmFsdWVbaV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE5CgkvLyB2YWwudTY0ID0gMQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJaW50IDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTIxCgkvLyByZXR1cm4gdmFsLnU2NDsKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZSgpdWludDY0CiphYmlfcm91dGVfYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCk6IHVpbnQ2NAphY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE2CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAxMjAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE3CgkvLyB2YWwgPSB0aGlzLmJLZXkudmFsdWVbaV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE5CgkvLyB2YWwudTY0ID0gMQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJaW50IDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTIxCgkvLyByZXR1cm4gdmFsLnU2NDsKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc56_draft.json b/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc56_draft.json index 3147a2d77..dd81ed3e7 100644 --- a/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestAccessStaticArrayInBoxInVariable.arc56_draft.json @@ -66,382 +66,385 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1511, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14 - ] - }, - { - "teal": 13, - "source": 1511, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 14, - "source": 1511, - "pc": [ - 17 - ] - }, - { - "teal": 15, - "source": 1511, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 16, - "source": 1511, - "pc": [ - 20 - ] - }, - { - "teal": 17, - "source": 1511, - "pc": [ - 21, - 22 - ] - }, - { - "teal": 18, - "source": 1511, - "pc": [ - 23 - ] - }, - { - "teal": 19, - "source": 1511, - "pc": [ - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 23, - "source": 1511, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 50 - ] - }, - { - "teal": 28, - "source": 1514, - "pc": [ - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 31, - "source": 1514, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 32, - "source": 1514, - "pc": [ - 60 - ] - }, - { - "teal": 33, - "source": 1514, - "pc": [ - 61 - ] - }, - { - "teal": 34, - "source": 1514, - "pc": [ - 62 - ] - }, - { - "teal": 35, - "source": 1514, - "pc": [ - 63 - ] - }, - { - "teal": 36, - "source": 1514, - "pc": [ - 64 - ] - }, - { - "teal": 40, - "source": 1514, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 44, - "source": 1516, - "pc": [ - 68 - ] - }, - { - "teal": 45, - "source": 1516, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 46, - "source": 1516, - "pc": [ - 71 - ] - }, - { - "teal": 47, - "source": 1516, - "pc": [ - 72 - ] - }, - { - "teal": 53, - "source": 1517, - "pc": [ - 73 - ] - }, - { - "teal": 54, - "source": 1517, - "pc": [ - 74 - ] - }, - { - "teal": 55, - "source": 1517, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 56, - "source": 1517, - "pc": [ - 85 - ] - }, - { - "teal": 60, - "source": 1517, - "pc": [ - 86 - ] - }, - { - "teal": 61, - "source": 1517, - "pc": [ - 87 - ] - }, - { - "teal": 62, - "source": 1517, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 63, - "source": 1517, - "pc": [ - 90 - ] - }, - { - "teal": 64, - "source": 1521, - "pc": [ - 91 - ] - }, - { - "teal": 65, - "source": 1514, - "pc": [ - 92 - ] - }, - { - "teal": 68, - "source": 1511, - "pc": [ - 93 - ] - }, - { - "teal": 69, - "source": 1511, - "pc": [ - 94 - ] - }, - { - "teal": 72, - "source": 1511, - "pc": [ - 95, - 96, - 97, - 98, - 99, - 100 - ] - }, - { - "teal": 73, - "source": 1511, - "pc": [ - 101, - 102, - 103 - ] - }, - { - "teal": 74, - "source": 1511, - "pc": [ - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 77, - "source": 1511, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 108 - ] - }, - { - "teal": 80, - "source": 1511, - "pc": [ - 109, - 110, - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 81, - "source": 1511, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 82, - "source": 1511, - "pc": [ - 118, - 119, - 120, - 121 - ] - }, - { - "teal": 85, - "source": 1511, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 122 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1511, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + }, + { + "teal": 13, + "source": 1511, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 14, + "source": 1511, + "pc": [ + 17 + ] + }, + { + "teal": 15, + "source": 1511, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 16, + "source": 1511, + "pc": [ + 20 + ] + }, + { + "teal": 17, + "source": 1511, + "pc": [ + 21, + 22 + ] + }, + { + "teal": 18, + "source": 1511, + "pc": [ + 23 + ] + }, + { + "teal": 19, + "source": 1511, + "pc": [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 23, + "source": 1511, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 50 + ] + }, + { + "teal": 28, + "source": 1514, + "pc": [ + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 31, + "source": 1514, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 32, + "source": 1514, + "pc": [ + 60 + ] + }, + { + "teal": 33, + "source": 1514, + "pc": [ + 61 + ] + }, + { + "teal": 34, + "source": 1514, + "pc": [ + 62 + ] + }, + { + "teal": 35, + "source": 1514, + "pc": [ + 63 + ] + }, + { + "teal": 36, + "source": 1514, + "pc": [ + 64 + ] + }, + { + "teal": 40, + "source": 1514, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 44, + "source": 1516, + "pc": [ + 68 + ] + }, + { + "teal": 45, + "source": 1516, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 46, + "source": 1516, + "pc": [ + 71 + ] + }, + { + "teal": 47, + "source": 1516, + "pc": [ + 72 + ] + }, + { + "teal": 53, + "source": 1517, + "pc": [ + 73 + ] + }, + { + "teal": 54, + "source": 1517, + "pc": [ + 74 + ] + }, + { + "teal": 55, + "source": 1517, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 56, + "source": 1517, + "pc": [ + 85 + ] + }, + { + "teal": 60, + "source": 1517, + "pc": [ + 86 + ] + }, + { + "teal": 61, + "source": 1517, + "pc": [ + 87 + ] + }, + { + "teal": 62, + "source": 1517, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 63, + "source": 1517, + "pc": [ + 90 + ] + }, + { + "teal": 64, + "source": 1521, + "pc": [ + 91 + ] + }, + { + "teal": 65, + "source": 1514, + "pc": [ + 92 + ] + }, + { + "teal": 68, + "source": 1511, + "pc": [ + 93 + ] + }, + { + "teal": 69, + "source": 1511, + "pc": [ + 94 + ] + }, + { + "teal": 72, + "source": 1511, + "pc": [ + 95, + 96, + 97, + 98, + 99, + 100 + ] + }, + { + "teal": 73, + "source": 1511, + "pc": [ + 101, + 102, + 103 + ] + }, + { + "teal": 74, + "source": 1511, + "pc": [ + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 77, + "source": 1511, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 108 + ] + }, + { + "teal": 80, + "source": 1511, + "pc": [ + 109, + 110, + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 81, + "source": 1511, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 82, + "source": 1511, + "pc": [ + 118, + 119, + 120, + 121 + ] + }, + { + "teal": 85, + "source": 1511, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 122 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZSgpdWludDY0CiphYmlfcm91dGVfYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCk6IHVpbnQ2NAphY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE2CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAxMjAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE3CgkvLyB2YWwgPSB0aGlzLmJLZXkudmFsdWVbaV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE5CgkvLyB2YWwudTY0ID0gMQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJaW50IDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTIxCgkvLyByZXR1cm4gdmFsLnU2NDsKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZSgpdWludDY0CiphYmlfcm91dGVfYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYWNjZXNzU3RhdGljQXJyYXlJbkJveEluVmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCk6IHVpbnQ2NAphY2Nlc3NTdGF0aWNBcnJheUluQm94SW5WYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE2CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAxMjAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE3CgkvLyB2YWwgPSB0aGlzLmJLZXkudmFsdWVbaV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTE5CgkvLyB2YWwudTY0ID0gMQoJYnl0ZSAweDczNzQ2MTZiNjU3MjczIC8vICJzdGFrZXJzIgoJaW50IDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTIxCgkvLyByZXR1cm4gdmFsLnU2NDsKCWJ5dGUgMHg3Mzc0NjE2YjY1NzI3MyAvLyAic3Rha2VycyIKCWludCAwCglpbnQgOAoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY0FycmF5SW5Cb3hJblZhcmlhYmxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestAngularCasting.approval.teal b/tests/contracts/artifacts/ABITestAngularCasting.approval.teal index 063b7b827..3f6ea1f5d 100644 --- a/tests/contracts/artifacts/ABITestAngularCasting.approval.teal +++ b/tests/contracts/artifacts/ABITestAngularCasting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestAngularCasting.arc32.json b/tests/contracts/artifacts/ABITestAngularCasting.arc32.json index b6a868086..39ed24c0f 100644 --- a/tests/contracts/artifacts/ABITestAngularCasting.arc32.json +++ b/tests/contracts/artifacts/ABITestAngularCasting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmd1bGFyQ2FzdGluZygpdWludDI1NgoqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFuZ3VsYXJDYXN0aW5nKCl1aW50MjU2CgljYWxsc3ViIGFuZ3VsYXJDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBhbmd1bGFyQ2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFuZ3VsYXJDYXN0aW5nKCk6IHVpbnQyNTYKYW5ndWxhckNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDMzCgkvLyB4ID0gPHVpbnQyNTY+MTMzNwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1MzkKCWZyYW1lX2J1cnkgMCAvLyB4OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMzUKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIDAgLy8geDogdWludDI1NgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5ndWxhckNhc3RpbmcoKXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmd1bGFyQ2FzdGluZygpdWludDI1NgoqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFuZ3VsYXJDYXN0aW5nKCl1aW50MjU2CgljYWxsc3ViIGFuZ3VsYXJDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBhbmd1bGFyQ2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFuZ3VsYXJDYXN0aW5nKCk6IHVpbnQyNTYKYW5ndWxhckNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDMzCgkvLyB4ID0gPHVpbnQyNTY+MTMzNwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1MzkKCWZyYW1lX2J1cnkgMCAvLyB4OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMzUKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIDAgLy8geDogdWludDI1NgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5ndWxhckNhc3RpbmcoKXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestAngularCasting.arc56_draft.json b/tests/contracts/artifacts/ABITestAngularCasting.arc56_draft.json index cb2227868..14e57a055 100644 --- a/tests/contracts/artifacts/ABITestAngularCasting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestAngularCasting.arc56_draft.json @@ -60,469 +60,472 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1031, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1031, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1031, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1031, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1031, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1031, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1031, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1031, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1031, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1032, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1032, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1032, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1032, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1032, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 35, - "source": 1032, - "pc": [ - 54 - ] - }, - { - "teal": 38, - "source": 1032, - "errorMessage": "angularCasting return value overflowed 256 bits", - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 1032, - "pc": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 40, - "source": 1032, - "pc": [ - 90 - ] - }, - { - "teal": 41, - "source": 1032, - "pc": [ - 91 - ] - }, - { - "teal": 42, - "source": 1032, - "pc": [ - 92 - ] - }, - { - "teal": 43, - "source": 1032, - "pc": [ - 93 - ] - }, - { - "teal": 44, - "source": 1032, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 45, - "source": 1032, - "pc": [ - 96 - ] - }, - { - "teal": 46, - "source": 1032, - "pc": [ - 97 - ] - }, - { - "teal": 47, - "source": 1032, - "pc": [ - 98 - ] - }, - { - "teal": 48, - "source": 1032, - "pc": [ - 99 - ] - }, - { - "teal": 49, - "source": 1032, - "pc": [ - 100 - ] - }, - { - "teal": 50, - "source": 1032, - "pc": [ - 101 - ] - }, - { - "teal": 51, - "source": 1032, - "pc": [ - 102 - ] - }, - { - "teal": 55, - "source": 1032, - "pc": [ - 103, - 104, - 105 - ] - }, - { - "teal": 58, - "source": 1032, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 62, - "source": 1033, - "pc": [ - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141 - ] - }, - { - "teal": 63, - "source": 1033, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 67, - "source": 1035, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 70, - "source": 1032, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 71, - "source": 1032, - "pc": [ - 148 - ] - }, - { - "teal": 74, - "source": 1031, - "pc": [ - 149 - ] - }, - { - "teal": 75, - "source": 1031, - "pc": [ - 150 - ] - }, - { - "teal": 78, - "source": 1031, - "pc": [ - 151, - 152, - 153, - 154, - 155, - 156 - ] - }, - { - "teal": 79, - "source": 1031, - "pc": [ - 157, - 158, - 159 - ] - }, - { - "teal": 80, - "source": 1031, - "pc": [ - 160, - 161, - 162, - 163 - ] - }, - { - "teal": 83, - "source": 1031, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 164 - ] - }, - { - "teal": 86, - "source": 1031, - "pc": [ - 165, - 166, - 167, - 168, - 169, - 170 - ] - }, - { - "teal": 87, - "source": 1031, - "pc": [ - 171, - 172, - 173 - ] - }, - { - "teal": 88, - "source": 1031, - "pc": [ - 174, - 175, - 176, - 177 - ] - }, - { - "teal": 91, - "source": 1031, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 178 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1031, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1031, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1031, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1031, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1031, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1031, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1031, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1031, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1031, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1032, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1032, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1032, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1032, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1032, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 35, + "source": 1032, + "pc": [ + 54 + ] + }, + { + "teal": 38, + "source": 1032, + "errorMessage": "angularCasting return value overflowed 256 bits", + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 1032, + "pc": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 40, + "source": 1032, + "pc": [ + 90 + ] + }, + { + "teal": 41, + "source": 1032, + "pc": [ + 91 + ] + }, + { + "teal": 42, + "source": 1032, + "pc": [ + 92 + ] + }, + { + "teal": 43, + "source": 1032, + "pc": [ + 93 + ] + }, + { + "teal": 44, + "source": 1032, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 45, + "source": 1032, + "pc": [ + 96 + ] + }, + { + "teal": 46, + "source": 1032, + "pc": [ + 97 + ] + }, + { + "teal": 47, + "source": 1032, + "pc": [ + 98 + ] + }, + { + "teal": 48, + "source": 1032, + "pc": [ + 99 + ] + }, + { + "teal": 49, + "source": 1032, + "pc": [ + 100 + ] + }, + { + "teal": 50, + "source": 1032, + "pc": [ + 101 + ] + }, + { + "teal": 51, + "source": 1032, + "pc": [ + 102 + ] + }, + { + "teal": 55, + "source": 1032, + "pc": [ + 103, + 104, + 105 + ] + }, + { + "teal": 58, + "source": 1032, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 62, + "source": 1033, + "pc": [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + }, + { + "teal": 63, + "source": 1033, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 67, + "source": 1035, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 70, + "source": 1032, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 71, + "source": 1032, + "pc": [ + 148 + ] + }, + { + "teal": 74, + "source": 1031, + "pc": [ + 149 + ] + }, + { + "teal": 75, + "source": 1031, + "pc": [ + 150 + ] + }, + { + "teal": 78, + "source": 1031, + "pc": [ + 151, + 152, + 153, + 154, + 155, + 156 + ] + }, + { + "teal": 79, + "source": 1031, + "pc": [ + 157, + 158, + 159 + ] + }, + { + "teal": 80, + "source": 1031, + "pc": [ + 160, + 161, + 162, + 163 + ] + }, + { + "teal": 83, + "source": 1031, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 164 + ] + }, + { + "teal": 86, + "source": 1031, + "pc": [ + 165, + 166, + 167, + 168, + 169, + 170 + ] + }, + { + "teal": 87, + "source": 1031, + "pc": [ + 171, + 172, + 173 + ] + }, + { + "teal": 88, + "source": 1031, + "pc": [ + 174, + 175, + 176, + 177 + ] + }, + { + "teal": 91, + "source": 1031, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 178 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmd1bGFyQ2FzdGluZygpdWludDI1NgoqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFuZ3VsYXJDYXN0aW5nKCl1aW50MjU2CgljYWxsc3ViIGFuZ3VsYXJDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBhbmd1bGFyQ2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFuZ3VsYXJDYXN0aW5nKCk6IHVpbnQyNTYKYW5ndWxhckNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDMzCgkvLyB4ID0gPHVpbnQyNTY+MTMzNwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1MzkKCWZyYW1lX2J1cnkgMCAvLyB4OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMzUKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIDAgLy8geDogdWludDI1NgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5ndWxhckNhc3RpbmcoKXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmd1bGFyQ2FzdGluZygpdWludDI1NgoqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFuZ3VsYXJDYXN0aW5nKCl1aW50MjU2CgljYWxsc3ViIGFuZ3VsYXJDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBhbmd1bGFyQ2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFuZ3VsYXJDYXN0aW5nKCk6IHVpbnQyNTYKYW5ndWxhckNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDMzCgkvLyB4ID0gPHVpbnQyNTY+MTMzNwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1MzkKCWZyYW1lX2J1cnkgMCAvLyB4OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMzUKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIDAgLy8geDogdWludDI1NgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5ndWxhckNhc3RpbmcoKXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FuZ3VsYXJDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayInMethodCall.approval.teal b/tests/contracts/artifacts/ABITestArrayInMethodCall.approval.teal index 060ba1e84..d5e51bfda 100644 --- a/tests/contracts/artifacts/ABITestArrayInMethodCall.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayInMethodCall.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayInMethodCall.arc32.json b/tests/contracts/artifacts/ABITestArrayInMethodCall.arc32.json index 7b5626ae9..aea58f50a 100644 --- a/tests/contracts/artifacts/ABITestArrayInMethodCall.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayInMethodCall.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FycmF5SW5NZXRob2RDYWxsOgoJLy8gZXhlY3V0ZSBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoJY2FsbHN1YiBhcnJheUluTWV0aG9kQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlJbk1ldGhvZENhbGwoKTogdm9pZAphcnJheUluTWV0aG9kQ2FsbDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzkzCgkvLyBzZW5kTWV0aG9kQ2FsbDxbW3VpbnQ2NCwgdWludDY0XSwgQWRkcmVzcywgdWludDY0LCBib29sZWFuXSwgdm9pZD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW1sxLCAyXSwgdGhpcy50eG4uc2VuZGVyLCAzLCBmYWxzZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbygodWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM5NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKQoJaW50IDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzk2CgkvLyBtZXRob2RBcmdzOiBbWzEsIDJdLCB0aGlzLnR4bi5zZW5kZXIsIDMsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuIFNlbmRlcgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5NZXRob2RDYWxsKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUluTWV0aG9kQ2FsbAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FycmF5SW5NZXRob2RDYWxsOgoJLy8gZXhlY3V0ZSBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoJY2FsbHN1YiBhcnJheUluTWV0aG9kQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlJbk1ldGhvZENhbGwoKTogdm9pZAphcnJheUluTWV0aG9kQ2FsbDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzkzCgkvLyBzZW5kTWV0aG9kQ2FsbDxbW3VpbnQ2NCwgdWludDY0XSwgQWRkcmVzcywgdWludDY0LCBib29sZWFuXSwgdm9pZD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW1sxLCAyXSwgdGhpcy50eG4uc2VuZGVyLCAzLCBmYWxzZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbygodWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM5NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKQoJaW50IDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzk2CgkvLyBtZXRob2RBcmdzOiBbWzEsIDJdLCB0aGlzLnR4bi5zZW5kZXIsIDMsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuIFNlbmRlcgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5NZXRob2RDYWxsKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUluTWV0aG9kQ2FsbAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayInMethodCall.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayInMethodCall.arc56_draft.json index ceb3af094..fcc6098f7 100644 --- a/tests/contracts/artifacts/ABITestArrayInMethodCall.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayInMethodCall.arc56_draft.json @@ -60,434 +60,437 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1391, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1391, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1391, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1391, - "pc": [ - 9 - ] - }, - { - "teal": 16, - "source": 1391, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 1391, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 1391, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 1391, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 1391, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 1392, - "pc": [ - 41, - 42, - 43 - ] - }, - { - "teal": 29, - "source": 1392, - "pc": [ - 44 - ] - }, - { - "teal": 30, - "source": 1392, - "pc": [ - 45 - ] - }, - { - "teal": 34, - "source": 1392, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 42, - "source": 1393, - "pc": [ - 49 - ] - }, - { - "teal": 43, - "source": 1393, - "pc": [ - 50 - ] - }, - { - "teal": 44, - "source": 1393, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 45, - "source": 1395, - "pc": [ - 53, - 54, - 55, - 56, - 57, - 58 - ] - }, - { - "teal": 46, - "source": 1395, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 50, - "source": 1394, - "pc": [ - 61 - ] - }, - { - "teal": 51, - "source": 1394, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 55, - "source": 1396, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 56, - "source": 1396, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 57, - "source": 1396, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 58, - "source": 1396, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 59, - "source": 1396, - "pc": [ - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 60, - "source": 1396, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 61, - "source": 1396, - "pc": [ - 100 - ] - }, - { - "teal": 62, - "source": 1396, - "pc": [ - 101, - 102, - 103 - ] - }, - { - "teal": 63, - "source": 1396, - "pc": [ - 104 - ] - }, - { - "teal": 64, - "source": 1396, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 65, - "source": 1396, - "pc": [ - 107 - ] - }, - { - "teal": 66, - "source": 1396, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 69, - "source": 1393, - "pc": [ - 110 - ] - }, - { - "teal": 70, - "source": 1393, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 73, - "source": 1393, - "pc": [ - 113 - ] - }, - { - "teal": 74, - "source": 1392, - "pc": [ - 114 - ] - }, - { - "teal": 77, - "source": 1391, - "pc": [ - 115 - ] - }, - { - "teal": 78, - "source": 1391, - "pc": [ - 116 - ] - }, - { - "teal": 81, - "source": 1391, - "pc": [ - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 82, - "source": 1391, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 83, - "source": 1391, - "pc": [ - 126, - 127, - 128, - 129 - ] - }, - { - "teal": 86, - "source": 1391, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 130 - ] - }, - { - "teal": 89, - "source": 1391, - "pc": [ - 131, - 132, - 133, - 134, - 135, - 136 - ] - }, - { - "teal": 90, - "source": 1391, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 91, - "source": 1391, - "pc": [ - 140, - 141, - 142, - 143 - ] - }, - { - "teal": 94, - "source": 1391, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 144 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1391, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1391, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1391, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1391, + "pc": [ + 9 + ] + }, + { + "teal": 16, + "source": 1391, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 1391, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 1391, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 1391, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 1391, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 1392, + "pc": [ + 41, + 42, + 43 + ] + }, + { + "teal": 29, + "source": 1392, + "pc": [ + 44 + ] + }, + { + "teal": 30, + "source": 1392, + "pc": [ + 45 + ] + }, + { + "teal": 34, + "source": 1392, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 42, + "source": 1393, + "pc": [ + 49 + ] + }, + { + "teal": 43, + "source": 1393, + "pc": [ + 50 + ] + }, + { + "teal": 44, + "source": 1393, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 45, + "source": 1395, + "pc": [ + 53, + 54, + 55, + 56, + 57, + 58 + ] + }, + { + "teal": 46, + "source": 1395, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 50, + "source": 1394, + "pc": [ + 61 + ] + }, + { + "teal": 51, + "source": 1394, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 55, + "source": 1396, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 56, + "source": 1396, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 57, + "source": 1396, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 58, + "source": 1396, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 59, + "source": 1396, + "pc": [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 60, + "source": 1396, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 61, + "source": 1396, + "pc": [ + 100 + ] + }, + { + "teal": 62, + "source": 1396, + "pc": [ + 101, + 102, + 103 + ] + }, + { + "teal": 63, + "source": 1396, + "pc": [ + 104 + ] + }, + { + "teal": 64, + "source": 1396, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 65, + "source": 1396, + "pc": [ + 107 + ] + }, + { + "teal": 66, + "source": 1396, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 69, + "source": 1393, + "pc": [ + 110 + ] + }, + { + "teal": 70, + "source": 1393, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 73, + "source": 1393, + "pc": [ + 113 + ] + }, + { + "teal": 74, + "source": 1392, + "pc": [ + 114 + ] + }, + { + "teal": 77, + "source": 1391, + "pc": [ + 115 + ] + }, + { + "teal": 78, + "source": 1391, + "pc": [ + 116 + ] + }, + { + "teal": 81, + "source": 1391, + "pc": [ + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 82, + "source": 1391, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 83, + "source": 1391, + "pc": [ + 126, + 127, + 128, + 129 + ] + }, + { + "teal": 86, + "source": 1391, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 130 + ] + }, + { + "teal": 89, + "source": 1391, + "pc": [ + 131, + 132, + 133, + 134, + 135, + 136 + ] + }, + { + "teal": 90, + "source": 1391, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 91, + "source": 1391, + "pc": [ + 140, + 141, + 142, + 143 + ] + }, + { + "teal": 94, + "source": 1391, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 144 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FycmF5SW5NZXRob2RDYWxsOgoJLy8gZXhlY3V0ZSBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoJY2FsbHN1YiBhcnJheUluTWV0aG9kQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlJbk1ldGhvZENhbGwoKTogdm9pZAphcnJheUluTWV0aG9kQ2FsbDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzkzCgkvLyBzZW5kTWV0aG9kQ2FsbDxbW3VpbnQ2NCwgdWludDY0XSwgQWRkcmVzcywgdWludDY0LCBib29sZWFuXSwgdm9pZD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW1sxLCAyXSwgdGhpcy50eG4uc2VuZGVyLCAzLCBmYWxzZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbygodWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM5NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKQoJaW50IDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzk2CgkvLyBtZXRob2RBcmdzOiBbWzEsIDJdLCB0aGlzLnR4bi5zZW5kZXIsIDMsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuIFNlbmRlcgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5NZXRob2RDYWxsKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUluTWV0aG9kQ2FsbAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FycmF5SW5NZXRob2RDYWxsOgoJLy8gZXhlY3V0ZSBhcnJheUluTWV0aG9kQ2FsbCgpdm9pZAoJY2FsbHN1YiBhcnJheUluTWV0aG9kQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlJbk1ldGhvZENhbGwoKTogdm9pZAphcnJheUluTWV0aG9kQ2FsbDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzkzCgkvLyBzZW5kTWV0aG9kQ2FsbDxbW3VpbnQ2NCwgdWludDY0XSwgQWRkcmVzcywgdWludDY0LCBib29sZWFuXSwgdm9pZD4oewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW1sxLCAyXSwgdGhpcy50eG4uc2VuZGVyLCAzLCBmYWxzZV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbygodWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsYm9vbCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM5NAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKQoJaW50IDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzk2CgkvLyBtZXRob2RBcmdzOiBbWzEsIDJdLCB0aGlzLnR4bi5zZW5kZXIsIDMsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuIFNlbmRlcgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJaW50IDAKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5NZXRob2RDYWxsKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUluTWV0aG9kQ2FsbAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayInObjectInState.approval.teal b/tests/contracts/artifacts/ABITestArrayInObjectInState.approval.teal index 46423dde5..cd7d66d76 100644 --- a/tests/contracts/artifacts/ABITestArrayInObjectInState.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayInObjectInState.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayInObjectInState.arc32.json b/tests/contracts/artifacts/ABITestArrayInObjectInState.arc32.json index 0b0f87da1..a9fbc5dd3 100644 --- a/tests/contracts/artifacts/ABITestArrayInObjectInState.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayInObjectInState.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluT2JqZWN0SW5TdGF0ZSgpdWludDY0CiphYmlfcm91dGVfYXJyYXlJbk9iamVjdEluU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlJbk9iamVjdEluU3RhdGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluT2JqZWN0SW5TdGF0ZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5SW5PYmplY3RJblN0YXRlKCk6IHVpbnQ2NAphcnJheUluT2JqZWN0SW5TdGF0ZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc4CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHsgYmFyOiBbMSwgMl0gfQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc5CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV0gPSAzCgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCXJlcGxhY2UyIDgKCXR4biBTZW5kZXIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODAKCS8vIHJldHVybiB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV07Cgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5PYmplY3RJblN0YXRlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5PYmplY3RJblN0YXRlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluT2JqZWN0SW5TdGF0ZSgpdWludDY0CiphYmlfcm91dGVfYXJyYXlJbk9iamVjdEluU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlJbk9iamVjdEluU3RhdGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluT2JqZWN0SW5TdGF0ZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5SW5PYmplY3RJblN0YXRlKCk6IHVpbnQ2NAphcnJheUluT2JqZWN0SW5TdGF0ZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc4CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHsgYmFyOiBbMSwgMl0gfQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc5CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV0gPSAzCgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCXJlcGxhY2UyIDgKCXR4biBTZW5kZXIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODAKCS8vIHJldHVybiB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV07Cgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5PYmplY3RJblN0YXRlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5PYmplY3RJblN0YXRlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayInObjectInState.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayInObjectInState.arc56_draft.json index d42846c84..f6940b24a 100644 --- a/tests/contracts/artifacts/ABITestArrayInObjectInState.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayInObjectInState.arc56_draft.json @@ -34,9 +34,12 @@ 56 ], "structs": { - "T2": { - "bar": "uint64[2]" - } + "T2": [ + { + "name": "bar", + "type": "uint64[2]" + } + ] }, "state": { "schema": { @@ -69,400 +72,403 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1074, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1074, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1074, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1074, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1074, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1074, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1074, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1074, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1074, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1077, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1077, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1077, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1077, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1077, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1077, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1077, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1077, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 44, - "source": 1078, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 45, - "source": 1078, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 46, - "source": 1078, - "pc": [ - 77 - ] - }, - { - "teal": 50, - "source": 1079, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 51, - "source": 1079, - "pc": [ - 80 - ] - }, - { - "teal": 52, - "source": 1079, - "pc": [ - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 53, - "source": 1079, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 54, - "source": 1079, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 55, - "source": 1079, - "pc": [ - 95 - ] - }, - { - "teal": 56, - "source": 1079, - "pc": [ - 96 - ] - }, - { - "teal": 60, - "source": 1080, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 61, - "source": 1080, - "pc": [ - 99 - ] - }, - { - "teal": 62, - "source": 1080, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 63, - "source": 1080, - "pc": [ - 103 - ] - }, - { - "teal": 64, - "source": 1077, - "pc": [ - 104 - ] - }, - { - "teal": 67, - "source": 1074, - "pc": [ - 105 - ] - }, - { - "teal": 68, - "source": 1074, - "pc": [ - 106 - ] - }, - { - "teal": 71, - "source": 1074, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 72, - "source": 1074, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 73, - "source": 1074, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 76, - "source": 1074, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 120 - ] - }, - { - "teal": 79, - "source": 1074, - "pc": [ - 121, - 122, - 123, - 124, - 125, - 126 - ] - }, - { - "teal": 80, - "source": 1074, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 81, - "source": 1074, - "pc": [ - 130, - 131, - 132, - 133 - ] - }, - { - "teal": 84, - "source": 1074, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 134 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1074, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1074, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1074, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1074, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1074, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1074, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1074, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1074, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1074, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1077, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1077, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1077, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1077, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1077, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1077, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1077, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1077, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 44, + "source": 1078, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 45, + "source": 1078, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 46, + "source": 1078, + "pc": [ + 77 + ] + }, + { + "teal": 50, + "source": 1079, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 51, + "source": 1079, + "pc": [ + 80 + ] + }, + { + "teal": 52, + "source": 1079, + "pc": [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 53, + "source": 1079, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 54, + "source": 1079, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 55, + "source": 1079, + "pc": [ + 95 + ] + }, + { + "teal": 56, + "source": 1079, + "pc": [ + 96 + ] + }, + { + "teal": 60, + "source": 1080, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 61, + "source": 1080, + "pc": [ + 99 + ] + }, + { + "teal": 62, + "source": 1080, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 63, + "source": 1080, + "pc": [ + 103 + ] + }, + { + "teal": 64, + "source": 1077, + "pc": [ + 104 + ] + }, + { + "teal": 67, + "source": 1074, + "pc": [ + 105 + ] + }, + { + "teal": 68, + "source": 1074, + "pc": [ + 106 + ] + }, + { + "teal": 71, + "source": 1074, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 72, + "source": 1074, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 73, + "source": 1074, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 76, + "source": 1074, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 120 + ] + }, + { + "teal": 79, + "source": 1074, + "pc": [ + 121, + 122, + 123, + 124, + 125, + 126 + ] + }, + { + "teal": 80, + "source": 1074, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 81, + "source": 1074, + "pc": [ + 130, + 131, + 132, + 133 + ] + }, + { + "teal": 84, + "source": 1074, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 134 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluT2JqZWN0SW5TdGF0ZSgpdWludDY0CiphYmlfcm91dGVfYXJyYXlJbk9iamVjdEluU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlJbk9iamVjdEluU3RhdGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluT2JqZWN0SW5TdGF0ZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5SW5PYmplY3RJblN0YXRlKCk6IHVpbnQ2NAphcnJheUluT2JqZWN0SW5TdGF0ZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc4CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHsgYmFyOiBbMSwgMl0gfQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc5CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV0gPSAzCgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCXJlcGxhY2UyIDgKCXR4biBTZW5kZXIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODAKCS8vIHJldHVybiB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV07Cgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5PYmplY3RJblN0YXRlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5PYmplY3RJblN0YXRlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluT2JqZWN0SW5TdGF0ZSgpdWludDY0CiphYmlfcm91dGVfYXJyYXlJbk9iamVjdEluU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlJbk9iamVjdEluU3RhdGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluT2JqZWN0SW5TdGF0ZQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5SW5PYmplY3RJblN0YXRlKCk6IHVpbnQ2NAphcnJheUluT2JqZWN0SW5TdGF0ZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc4CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHsgYmFyOiBbMSwgMl0gfQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDc5CgkvLyB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV0gPSAzCgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDMKCXJlcGxhY2UyIDgKCXR4biBTZW5kZXIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODAKCS8vIHJldHVybiB0aGlzLmdNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZS5iYXJbMV07Cgl0eG4gU2VuZGVyCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5SW5PYmplY3RJblN0YXRlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5PYmplY3RJblN0YXRlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayInTuple.approval.teal b/tests/contracts/artifacts/ABITestArrayInTuple.approval.teal index 40ece9817..e8e21e69a 100644 --- a/tests/contracts/artifacts/ABITestArrayInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayInTuple.arc32.json b/tests/contracts/artifacts/ABITestArrayInTuple.arc32.json index 2b760df35..a0e8d1447 100644 --- a/tests/contracts/artifacts/ABITestArrayInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX2FycmF5SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheUluVHVwbGUoKTogdWludDY0CmFycmF5SW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NQoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdID0gWzExLCAyMiwgWzMzLCA0NF0sIDU1XQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NwoJLy8gcmV0dXJuIGFbMl1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIHVpbnQxNl0KCWV4dHJhY3QgMTggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlJblR1cGxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX2FycmF5SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheUluVHVwbGUoKTogdWludDY0CmFycmF5SW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NQoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdID0gWzExLCAyMiwgWzMzLCA0NF0sIDU1XQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NwoJLy8gcmV0dXJuIGFbMl1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIHVpbnQxNl0KCWV4dHJhY3QgMTggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlJblR1cGxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayInTuple.arc56_draft.json index 8da441985..824ee0c20 100644 --- a/tests/contracts/artifacts/ABITestArrayInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayInTuple.arc56_draft.json @@ -60,353 +60,356 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 263, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 263, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 263, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 263, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 263, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 263, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 263, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 263, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 263, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 264, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 264, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 264, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 264, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 264, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 264, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 264, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 264, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 264, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 265, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 48, - "source": 265, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 52, - "source": 267, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 53, - "source": 267, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 54, - "source": 267, - "pc": [ - 96 - ] - }, - { - "teal": 57, - "source": 264, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 58, - "source": 264, - "pc": [ - 99 - ] - }, - { - "teal": 61, - "source": 263, - "pc": [ - 100 - ] - }, - { - "teal": 62, - "source": 263, - "pc": [ - 101 - ] - }, - { - "teal": 65, - "source": 263, - "pc": [ - 102, - 103, - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 66, - "source": 263, - "pc": [ - 108, - 109, - 110 - ] - }, - { - "teal": 67, - "source": 263, - "pc": [ - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 70, - "source": 263, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 115 - ] - }, - { - "teal": 73, - "source": 263, - "pc": [ - 116, - 117, - 118, - 119, - 120, - 121 - ] - }, - { - "teal": 74, - "source": 263, - "pc": [ - 122, - 123, - 124 - ] - }, - { - "teal": 75, - "source": 263, - "pc": [ - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 78, - "source": 263, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 129 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 263, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 263, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 263, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 263, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 263, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 263, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 263, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 263, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 263, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 264, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 264, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 264, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 264, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 264, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 264, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 264, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 264, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 264, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 265, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 48, + "source": 265, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 52, + "source": 267, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 53, + "source": 267, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 54, + "source": 267, + "pc": [ + 96 + ] + }, + { + "teal": 57, + "source": 264, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 58, + "source": 264, + "pc": [ + 99 + ] + }, + { + "teal": 61, + "source": 263, + "pc": [ + 100 + ] + }, + { + "teal": 62, + "source": 263, + "pc": [ + 101 + ] + }, + { + "teal": 65, + "source": 263, + "pc": [ + 102, + 103, + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 66, + "source": 263, + "pc": [ + 108, + 109, + 110 + ] + }, + { + "teal": 67, + "source": 263, + "pc": [ + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 70, + "source": 263, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 115 + ] + }, + { + "teal": 73, + "source": 263, + "pc": [ + 116, + 117, + 118, + 119, + 120, + 121 + ] + }, + { + "teal": 74, + "source": 263, + "pc": [ + 122, + 123, + 124 + ] + }, + { + "teal": 75, + "source": 263, + "pc": [ + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 78, + "source": 263, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 129 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX2FycmF5SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheUluVHVwbGUoKTogdWludDY0CmFycmF5SW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NQoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdID0gWzExLCAyMiwgWzMzLCA0NF0sIDU1XQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NwoJLy8gcmV0dXJuIGFbMl1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIHVpbnQxNl0KCWV4dHJhY3QgMTggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlJblR1cGxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX2FycmF5SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheUluVHVwbGUoKTogdWludDY0CmFycmF5SW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NQoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdID0gWzExLCAyMiwgWzMzLCA0NF0sIDU1XQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCB1aW50MTZdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI2NwoJLy8gcmV0dXJuIGFbMl1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIHVpbnQxNl0KCWV4dHJhY3QgMTggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlJblR1cGxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayLength.approval.teal b/tests/contracts/artifacts/ABITestArrayLength.approval.teal index 7e45b4e65..776e4509f 100644 --- a/tests/contracts/artifacts/ABITestArrayLength.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayLength.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayLength.arc32.json b/tests/contracts/artifacts/ABITestArrayLength.arc32.json index 77965e044..72539f185 100644 --- a/tests/contracts/artifacts/ABITestArrayLength.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayLength.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfYXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5TGVuZ3RoKCk6IHVpbnQ2NAphcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNQoJLy8gYTogdWludDw4PltdID0gWzExLCAyMiwgMzMsIDQ0LCA1NV0KCWJ5dGUgMHgwYjE2MjEyYzM3CglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNwoJLy8gcmV0dXJuIGEubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglsZW4KCWludCAxCgkvCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheUxlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfYXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5TGVuZ3RoKCk6IHVpbnQ2NAphcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNQoJLy8gYTogdWludDw4PltdID0gWzExLCAyMiwgMzMsIDQ0LCA1NV0KCWJ5dGUgMHgwYjE2MjEyYzM3CglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNwoJLy8gcmV0dXJuIGEubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglsZW4KCWludCAxCgkvCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheUxlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayLength.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayLength.arc56_draft.json index 6bddbd7f7..cd4bb9890 100644 --- a/tests/contracts/artifacts/ABITestArrayLength.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayLength.arc56_draft.json @@ -60,335 +60,338 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 733, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 733, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 733, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 733, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 733, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 733, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 733, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 733, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 733, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 734, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 734, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 734, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 734, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 734, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 734, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 734, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 734, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 734, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 735, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 48, - "source": 735, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 52, - "source": 737, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 53, - "source": 737, - "pc": [ - 70 - ] - }, - { - "teal": 54, - "source": 737, - "pc": [ - 71 - ] - }, - { - "teal": 55, - "source": 737, - "pc": [ - 72 - ] - }, - { - "teal": 58, - "source": 734, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 59, - "source": 734, - "pc": [ - 75 - ] - }, - { - "teal": 62, - "source": 733, - "pc": [ - 76 - ] - }, - { - "teal": 63, - "source": 733, - "pc": [ - 77 - ] - }, - { - "teal": 66, - "source": 733, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 67, - "source": 733, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 68, - "source": 733, - "pc": [ - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 71, - "source": 733, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 91 - ] - }, - { - "teal": 74, - "source": 733, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 75, - "source": 733, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 76, - "source": 733, - "pc": [ - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 79, - "source": 733, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 105 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 733, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 733, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 733, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 733, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 733, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 733, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 733, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 733, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 733, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 734, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 734, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 734, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 734, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 734, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 734, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 734, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 734, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 734, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 735, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 48, + "source": 735, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 52, + "source": 737, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 53, + "source": 737, + "pc": [ + 70 + ] + }, + { + "teal": 54, + "source": 737, + "pc": [ + 71 + ] + }, + { + "teal": 55, + "source": 737, + "pc": [ + 72 + ] + }, + { + "teal": 58, + "source": 734, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 59, + "source": 734, + "pc": [ + 75 + ] + }, + { + "teal": 62, + "source": 733, + "pc": [ + 76 + ] + }, + { + "teal": 63, + "source": 733, + "pc": [ + 77 + ] + }, + { + "teal": 66, + "source": 733, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 67, + "source": 733, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 68, + "source": 733, + "pc": [ + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 71, + "source": 733, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 91 + ] + }, + { + "teal": 74, + "source": 733, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 75, + "source": 733, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 76, + "source": 733, + "pc": [ + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 79, + "source": 733, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 105 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfYXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5TGVuZ3RoKCk6IHVpbnQ2NAphcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNQoJLy8gYTogdWludDw4PltdID0gWzExLCAyMiwgMzMsIDQ0LCA1NV0KCWJ5dGUgMHgwYjE2MjEyYzM3CglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNwoJLy8gcmV0dXJuIGEubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglsZW4KCWludCAxCgkvCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheUxlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfYXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBhcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5TGVuZ3RoKCk6IHVpbnQ2NAphcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNQoJLy8gYTogdWludDw4PltdID0gWzExLCAyMiwgMzMsIDQ0LCA1NV0KCWJ5dGUgMHgwYjE2MjEyYzM3CglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjczNwoJLy8gcmV0dXJuIGEubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglsZW4KCWludCAxCgkvCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheUxlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayPop.approval.teal b/tests/contracts/artifacts/ABITestArrayPop.approval.teal index f75aeec1d..2d546af6e 100644 --- a/tests/contracts/artifacts/ABITestArrayPop.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayPop.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayPop.arc32.json b/tests/contracts/artifacts/ABITestArrayPop.arc32.json index 95bde9adb..6f3b64b83 100644 --- a/tests/contracts/artifacts/ABITestArrayPop.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayPop.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcCgpdWludDE2W10KKmFiaV9yb3V0ZV9hcnJheVBvcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVBvcCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQb3AKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wKCk6IHVpbnQxNltdCmFycmF5UG9wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDM5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0MQoJLy8gYS5wb3AoKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcCgpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcCgpdWludDE2W10KKmFiaV9yb3V0ZV9hcnJheVBvcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVBvcCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQb3AKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wKCk6IHVpbnQxNltdCmFycmF5UG9wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDM5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0MQoJLy8gYS5wb3AoKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcCgpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayPop.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayPop.arc56_draft.json index e145e07e1..a5c3d668a 100644 --- a/tests/contracts/artifacts/ABITestArrayPop.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayPop.arc56_draft.json @@ -60,433 +60,436 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 437, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 437, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 437, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 437, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 437, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 437, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 437, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 437, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 437, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 438, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 438, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 438, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 438, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 438, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 438, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 438, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 438, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 38, - "source": 438, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 438, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 438, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 438, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 438, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 438, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 438, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 50, - "source": 438, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 54, - "source": 439, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 55, - "source": 439, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 59, - "source": 441, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 60, - "source": 441, - "pc": [ - 81 - ] - }, - { - "teal": 61, - "source": 441, - "pc": [ - 82 - ] - }, - { - "teal": 62, - "source": 441, - "pc": [ - 83 - ] - }, - { - "teal": 63, - "source": 441, - "pc": [ - 84 - ] - }, - { - "teal": 64, - "source": 441, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 65, - "source": 441, - "pc": [ - 87 - ] - }, - { - "teal": 66, - "source": 441, - "pc": [ - 88 - ] - }, - { - "teal": 67, - "source": 441, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 71, - "source": 443, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 74, - "source": 438, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 75, - "source": 438, - "pc": [ - 95 - ] - }, - { - "teal": 78, - "source": 437, - "pc": [ - 96 - ] - }, - { - "teal": 79, - "source": 437, - "pc": [ - 97 - ] - }, - { - "teal": 82, - "source": 437, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 83, - "source": 437, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 84, - "source": 437, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 87, - "source": 437, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 111 - ] - }, - { - "teal": 90, - "source": 437, - "pc": [ - 112, - 113, - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 91, - "source": 437, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 92, - "source": 437, - "pc": [ - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 95, - "source": 437, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 125 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 437, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 437, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 437, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 437, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 437, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 437, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 437, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 437, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 437, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 438, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 438, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 438, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 438, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 438, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 438, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 438, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 438, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 38, + "source": 438, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 438, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 438, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 438, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 438, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 438, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 438, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 50, + "source": 438, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 54, + "source": 439, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 55, + "source": 439, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 59, + "source": 441, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 60, + "source": 441, + "pc": [ + 81 + ] + }, + { + "teal": 61, + "source": 441, + "pc": [ + 82 + ] + }, + { + "teal": 62, + "source": 441, + "pc": [ + 83 + ] + }, + { + "teal": 63, + "source": 441, + "pc": [ + 84 + ] + }, + { + "teal": 64, + "source": 441, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 65, + "source": 441, + "pc": [ + 87 + ] + }, + { + "teal": 66, + "source": 441, + "pc": [ + 88 + ] + }, + { + "teal": 67, + "source": 441, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 71, + "source": 443, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 74, + "source": 438, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 75, + "source": 438, + "pc": [ + 95 + ] + }, + { + "teal": 78, + "source": 437, + "pc": [ + 96 + ] + }, + { + "teal": 79, + "source": 437, + "pc": [ + 97 + ] + }, + { + "teal": 82, + "source": 437, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 83, + "source": 437, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 84, + "source": 437, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 87, + "source": 437, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 111 + ] + }, + { + "teal": 90, + "source": 437, + "pc": [ + 112, + 113, + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 91, + "source": 437, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 92, + "source": 437, + "pc": [ + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 95, + "source": 437, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 125 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcCgpdWludDE2W10KKmFiaV9yb3V0ZV9hcnJheVBvcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVBvcCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQb3AKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wKCk6IHVpbnQxNltdCmFycmF5UG9wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDM5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0MQoJLy8gYS5wb3AoKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcCgpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcCgpdWludDE2W10KKmFiaV9yb3V0ZV9hcnJheVBvcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVBvcCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQb3AKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wKCk6IHVpbnQxNltdCmFycmF5UG9wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDM5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0MQoJLy8gYS5wb3AoKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcCgpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayPopValue.approval.teal b/tests/contracts/artifacts/ABITestArrayPopValue.approval.teal index 97d7352d2..0104e775a 100644 --- a/tests/contracts/artifacts/ABITestArrayPopValue.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayPopValue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayPopValue.arc32.json b/tests/contracts/artifacts/ABITestArrayPopValue.arc32.json index 6c6529ab3..f64438860 100644 --- a/tests/contracts/artifacts/ABITestArrayPopValue.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayPopValue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcFZhbHVlKCl1aW50MTYKKmFiaV9yb3V0ZV9hcnJheVBvcFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UG9wVmFsdWUoKXVpbnQxNgoJY2FsbHN1YiBhcnJheVBvcFZhbHVlCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDE2Cgk8PQoKCS8vIGFycmF5UG9wVmFsdWUgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wVmFsdWUoKTogdWludDE2CmFycmF5UG9wVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0OQoJLy8gYTogdWludDE2W10gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NTEKCS8vIHYgPSBhLnBvcCgpIQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglkdXAKCWxlbgoJaW50IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgljb3ZlciAyCglleHRyYWN0MwoJc3dhcAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCglidG9pCglmcmFtZV9idXJ5IDEgLy8gdjogdWludDE2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1MwoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTYKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcFZhbHVlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wVmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcFZhbHVlKCl1aW50MTYKKmFiaV9yb3V0ZV9hcnJheVBvcFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UG9wVmFsdWUoKXVpbnQxNgoJY2FsbHN1YiBhcnJheVBvcFZhbHVlCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDE2Cgk8PQoKCS8vIGFycmF5UG9wVmFsdWUgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wVmFsdWUoKTogdWludDE2CmFycmF5UG9wVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0OQoJLy8gYTogdWludDE2W10gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NTEKCS8vIHYgPSBhLnBvcCgpIQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglkdXAKCWxlbgoJaW50IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgljb3ZlciAyCglleHRyYWN0MwoJc3dhcAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCglidG9pCglmcmFtZV9idXJ5IDEgLy8gdjogdWludDE2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1MwoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTYKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcFZhbHVlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wVmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayPopValue.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayPopValue.arc56_draft.json index 019ec9279..fd7ed7552 100644 --- a/tests/contracts/artifacts/ABITestArrayPopValue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayPopValue.arc56_draft.json @@ -60,509 +60,512 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 447, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 447, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 447, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 447, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 447, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 447, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 447, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 447, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 447, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 448, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 448, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 448, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 448, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 448, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 448, - "pc": [ - 53, - 54 - ] - }, - { - "teal": 36, - "source": 448, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 448, - "errorMessage": "arrayPopValue return value overflowed 16 bits", - "pc": [ - 56 - ] - }, - { - "teal": 40, - "source": 448, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 41, - "source": 448, - "pc": [ - 60 - ] - }, - { - "teal": 42, - "source": 448, - "pc": [ - 61 - ] - }, - { - "teal": 43, - "source": 448, - "pc": [ - 62 - ] - }, - { - "teal": 44, - "source": 448, - "pc": [ - 63 - ] - }, - { - "teal": 48, - "source": 448, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 51, - "source": 448, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 52, - "source": 448, - "pc": [ - 69 - ] - }, - { - "teal": 56, - "source": 449, - "pc": [ - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 57, - "source": 449, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 61, - "source": 451, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 62, - "source": 451, - "pc": [ - 82 - ] - }, - { - "teal": 63, - "source": 451, - "pc": [ - 83 - ] - }, - { - "teal": 64, - "source": 451, - "pc": [ - 84 - ] - }, - { - "teal": 65, - "source": 451, - "pc": [ - 85 - ] - }, - { - "teal": 66, - "source": 451, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 67, - "source": 451, - "pc": [ - 88 - ] - }, - { - "teal": 68, - "source": 451, - "pc": [ - 89 - ] - }, - { - "teal": 69, - "source": 451, - "pc": [ - 90 - ] - }, - { - "teal": 70, - "source": 451, - "pc": [ - 91 - ] - }, - { - "teal": 71, - "source": 451, - "pc": [ - 92 - ] - }, - { - "teal": 72, - "source": 451, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 73, - "source": 451, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 74, - "source": 451, - "pc": [ - 97 - ] - }, - { - "teal": 75, - "source": 451, - "pc": [ - 98 - ] - }, - { - "teal": 76, - "source": 451, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 77, - "source": 451, - "pc": [ - 101 - ] - }, - { - "teal": 78, - "source": 451, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 82, - "source": 453, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 85, - "source": 448, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 88, - "source": 448, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 89, - "source": 448, - "pc": [ - 110 - ] - }, - { - "teal": 92, - "source": 447, - "pc": [ - 111 - ] - }, - { - "teal": 93, - "source": 447, - "pc": [ - 112 - ] - }, - { - "teal": 96, - "source": 447, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 97, - "source": 447, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 98, - "source": 447, - "pc": [ - 122, - 123, - 124, - 125 - ] - }, - { - "teal": 101, - "source": 447, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 126 - ] - }, - { - "teal": 104, - "source": 447, - "pc": [ - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 105, - "source": 447, - "pc": [ - 133, - 134, - 135 - ] - }, - { - "teal": 106, - "source": 447, - "pc": [ - 136, - 137, - 138, - 139 - ] - }, - { - "teal": 109, - "source": 447, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 140 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 447, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 447, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 447, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 447, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 447, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 447, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 447, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 447, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 447, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 448, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 448, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 448, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 448, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 448, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 448, + "pc": [ + 53, + 54 + ] + }, + { + "teal": 36, + "source": 448, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 448, + "errorMessage": "arrayPopValue return value overflowed 16 bits", + "pc": [ + 56 + ] + }, + { + "teal": 40, + "source": 448, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 41, + "source": 448, + "pc": [ + 60 + ] + }, + { + "teal": 42, + "source": 448, + "pc": [ + 61 + ] + }, + { + "teal": 43, + "source": 448, + "pc": [ + 62 + ] + }, + { + "teal": 44, + "source": 448, + "pc": [ + 63 + ] + }, + { + "teal": 48, + "source": 448, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 51, + "source": 448, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 52, + "source": 448, + "pc": [ + 69 + ] + }, + { + "teal": 56, + "source": 449, + "pc": [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 57, + "source": 449, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 61, + "source": 451, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 62, + "source": 451, + "pc": [ + 82 + ] + }, + { + "teal": 63, + "source": 451, + "pc": [ + 83 + ] + }, + { + "teal": 64, + "source": 451, + "pc": [ + 84 + ] + }, + { + "teal": 65, + "source": 451, + "pc": [ + 85 + ] + }, + { + "teal": 66, + "source": 451, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 67, + "source": 451, + "pc": [ + 88 + ] + }, + { + "teal": 68, + "source": 451, + "pc": [ + 89 + ] + }, + { + "teal": 69, + "source": 451, + "pc": [ + 90 + ] + }, + { + "teal": 70, + "source": 451, + "pc": [ + 91 + ] + }, + { + "teal": 71, + "source": 451, + "pc": [ + 92 + ] + }, + { + "teal": 72, + "source": 451, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 73, + "source": 451, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 74, + "source": 451, + "pc": [ + 97 + ] + }, + { + "teal": 75, + "source": 451, + "pc": [ + 98 + ] + }, + { + "teal": 76, + "source": 451, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 77, + "source": 451, + "pc": [ + 101 + ] + }, + { + "teal": 78, + "source": 451, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 82, + "source": 453, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 85, + "source": 448, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 88, + "source": 448, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 89, + "source": 448, + "pc": [ + 110 + ] + }, + { + "teal": 92, + "source": 447, + "pc": [ + 111 + ] + }, + { + "teal": 93, + "source": 447, + "pc": [ + 112 + ] + }, + { + "teal": 96, + "source": 447, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 97, + "source": 447, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 98, + "source": 447, + "pc": [ + 122, + 123, + 124, + 125 + ] + }, + { + "teal": 101, + "source": 447, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 126 + ] + }, + { + "teal": 104, + "source": 447, + "pc": [ + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 105, + "source": 447, + "pc": [ + 133, + 134, + 135 + ] + }, + { + "teal": 106, + "source": 447, + "pc": [ + 136, + 137, + 138, + 139 + ] + }, + { + "teal": 109, + "source": 447, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 140 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcFZhbHVlKCl1aW50MTYKKmFiaV9yb3V0ZV9hcnJheVBvcFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UG9wVmFsdWUoKXVpbnQxNgoJY2FsbHN1YiBhcnJheVBvcFZhbHVlCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDE2Cgk8PQoKCS8vIGFycmF5UG9wVmFsdWUgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wVmFsdWUoKTogdWludDE2CmFycmF5UG9wVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0OQoJLy8gYTogdWludDE2W10gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NTEKCS8vIHYgPSBhLnBvcCgpIQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglkdXAKCWxlbgoJaW50IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgljb3ZlciAyCglleHRyYWN0MwoJc3dhcAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCglidG9pCglmcmFtZV9idXJ5IDEgLy8gdjogdWludDE2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1MwoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTYKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcFZhbHVlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wVmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVBvcFZhbHVlKCl1aW50MTYKKmFiaV9yb3V0ZV9hcnJheVBvcFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UG9wVmFsdWUoKXVpbnQxNgoJY2FsbHN1YiBhcnJheVBvcFZhbHVlCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDE2Cgk8PQoKCS8vIGFycmF5UG9wVmFsdWUgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UG9wVmFsdWUoKTogdWludDE2CmFycmF5UG9wVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ0OQoJLy8gYTogdWludDE2W10gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NTEKCS8vIHYgPSBhLnBvcCgpIQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLQoJaW50IDAKCXN3YXAKCWV4dHJhY3QzCglkdXAKCWxlbgoJaW50IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCgljb3ZlciAyCglleHRyYWN0MwoJc3dhcAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCglidG9pCglmcmFtZV9idXJ5IDEgLy8gdjogdWludDE2CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1MwoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTYKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVBvcFZhbHVlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2FycmF5UG9wVmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayPush.approval.teal b/tests/contracts/artifacts/ABITestArrayPush.approval.teal index 03891591a..5d66148ba 100644 --- a/tests/contracts/artifacts/ABITestArrayPush.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayPush.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayPush.arc32.json b/tests/contracts/artifacts/ABITestArrayPush.arc32.json index e2899154c..916a87a98 100644 --- a/tests/contracts/artifacts/ABITestArrayPush.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayPush.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVB1c2goKXVpbnQxNltdCiphYmlfcm91dGVfYXJyYXlQdXNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UHVzaCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQdXNoCglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheVB1c2goKTogdWludDE2W10KYXJyYXlQdXNoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDI5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyXQoJYnl0ZSAweDAwMDEwMDAyCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDMxCgkvLyBhLnB1c2goMyBhcyB1aW50MTYpCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJYnl0ZSAweDAwMDMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlQdXNoKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlQdXNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVB1c2goKXVpbnQxNltdCiphYmlfcm91dGVfYXJyYXlQdXNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UHVzaCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQdXNoCglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheVB1c2goKTogdWludDE2W10KYXJyYXlQdXNoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDI5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyXQoJYnl0ZSAweDAwMDEwMDAyCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDMxCgkvLyBhLnB1c2goMyBhcyB1aW50MTYpCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJYnl0ZSAweDAwMDMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlQdXNoKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlQdXNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayPush.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayPush.arc56_draft.json index 4cd36fc58..74634b70e 100644 --- a/tests/contracts/artifacts/ABITestArrayPush.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayPush.arc56_draft.json @@ -60,398 +60,401 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 427, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 427, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 427, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 427, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 427, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 427, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 427, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 427, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 427, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 428, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 428, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 428, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 428, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 428, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 428, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 428, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 428, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 38, - "source": 428, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 428, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 428, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 428, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 428, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 428, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 428, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 50, - "source": 428, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 54, - "source": 429, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 55, - "source": 429, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 59, - "source": 431, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 60, - "source": 431, - "pc": [ - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 61, - "source": 431, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 431, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 66, - "source": 433, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 69, - "source": 428, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 70, - "source": 428, - "pc": [ - 90 - ] - }, - { - "teal": 73, - "source": 427, - "pc": [ - 91 - ] - }, - { - "teal": 74, - "source": 427, - "pc": [ - 92 - ] - }, - { - "teal": 77, - "source": 427, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 78, - "source": 427, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 79, - "source": 427, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 82, - "source": 427, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 106 - ] - }, - { - "teal": 85, - "source": 427, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 86, - "source": 427, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 87, - "source": 427, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 90, - "source": 427, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 120 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 427, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 427, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 427, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 427, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 427, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 427, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 427, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 427, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 427, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 428, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 428, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 428, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 428, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 428, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 428, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 428, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 428, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 38, + "source": 428, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 428, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 428, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 428, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 428, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 428, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 428, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 50, + "source": 428, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 54, + "source": 429, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 55, + "source": 429, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 59, + "source": 431, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 60, + "source": 431, + "pc": [ + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 61, + "source": 431, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 431, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 66, + "source": 433, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 69, + "source": 428, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 70, + "source": 428, + "pc": [ + 90 + ] + }, + { + "teal": 73, + "source": 427, + "pc": [ + 91 + ] + }, + { + "teal": 74, + "source": 427, + "pc": [ + 92 + ] + }, + { + "teal": 77, + "source": 427, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 78, + "source": 427, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 79, + "source": 427, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 82, + "source": 427, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 106 + ] + }, + { + "teal": 85, + "source": 427, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 86, + "source": 427, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 87, + "source": 427, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 90, + "source": 427, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 120 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVB1c2goKXVpbnQxNltdCiphYmlfcm91dGVfYXJyYXlQdXNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UHVzaCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQdXNoCglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheVB1c2goKTogdWludDE2W10KYXJyYXlQdXNoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDI5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyXQoJYnl0ZSAweDAwMDEwMDAyCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDMxCgkvLyBhLnB1c2goMyBhcyB1aW50MTYpCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJYnl0ZSAweDAwMDMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlQdXNoKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlQdXNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVB1c2goKXVpbnQxNltdCiphYmlfcm91dGVfYXJyYXlQdXNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UHVzaCgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlQdXNoCglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhcnJheVB1c2goKTogdWludDE2W10KYXJyYXlQdXNoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDI5CgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyXQoJYnl0ZSAweDAwMDEwMDAyCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDMxCgkvLyBhLnB1c2goMyBhcyB1aW50MTYpCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJYnl0ZSAweDAwMDMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYXJyYXlQdXNoKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlQdXNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArrayRef.approval.teal b/tests/contracts/artifacts/ABITestArrayRef.approval.teal index 698253bb6..3c9a0b4dd 100644 --- a/tests/contracts/artifacts/ABITestArrayRef.approval.teal +++ b/tests/contracts/artifacts/ABITestArrayRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArrayRef.arc32.json b/tests/contracts/artifacts/ABITestArrayRef.arc32.json index 48be6e0d6..75be6a857 100644 --- a/tests/contracts/artifacts/ABITestArrayRef.arc32.json +++ b/tests/contracts/artifacts/ABITestArrayRef.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVJlZigpdWludDhbXQoqYWJpX3JvdXRlX2FycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UmVmKCl1aW50OFtdCgljYWxsc3ViIGFycmF5UmVmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UmVmKCk6IHVpbnQ8OD5bXQphcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MAoJLy8gYTogdWludDw4PltdID0gWzEsIDIsIDNdCglieXRlIDB4MDEwMjAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MwoJLy8gYlsxXSA9IDQgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDA0CglyZXBsYWNlMiAxCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1NQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50PDg+W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5UmVmKCl1aW50OFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVJlZigpdWludDhbXQoqYWJpX3JvdXRlX2FycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UmVmKCl1aW50OFtdCgljYWxsc3ViIGFycmF5UmVmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UmVmKCk6IHVpbnQ8OD5bXQphcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MAoJLy8gYTogdWludDw4PltdID0gWzEsIDIsIDNdCglieXRlIDB4MDEwMjAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MwoJLy8gYlsxXSA9IDQgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDA0CglyZXBsYWNlMiAxCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1NQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50PDg+W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5UmVmKCl1aW50OFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArrayRef.arc56_draft.json b/tests/contracts/artifacts/ABITestArrayRef.arc56_draft.json index 82ce05816..66bc87ffa 100644 --- a/tests/contracts/artifacts/ABITestArrayRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArrayRef.arc56_draft.json @@ -60,398 +60,401 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 748, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 748, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 748, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 748, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 748, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 748, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 748, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 748, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 748, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 749, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 749, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 749, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 749, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 749, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 749, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 749, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 749, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 749, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 749, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 749, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 749, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 749, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 48, - "source": 749, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 52, - "source": 750, - "pc": [ - 66, - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 53, - "source": 750, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 57, - "source": 753, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 58, - "source": 753, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 59, - "source": 753, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 60, - "source": 753, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 61, - "source": 753, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 62, - "source": 753, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 66, - "source": 755, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 69, - "source": 749, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 70, - "source": 749, - "pc": [ - 90 - ] - }, - { - "teal": 73, - "source": 748, - "pc": [ - 91 - ] - }, - { - "teal": 74, - "source": 748, - "pc": [ - 92 - ] - }, - { - "teal": 77, - "source": 748, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 78, - "source": 748, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 79, - "source": 748, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 82, - "source": 748, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 106 - ] - }, - { - "teal": 85, - "source": 748, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 86, - "source": 748, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 87, - "source": 748, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 90, - "source": 748, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 120 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 748, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 748, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 748, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 748, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 748, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 748, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 748, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 748, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 748, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 749, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 749, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 749, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 749, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 749, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 749, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 749, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 749, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 749, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 749, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 749, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 749, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 749, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 48, + "source": 749, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 52, + "source": 750, + "pc": [ + 66, + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 53, + "source": 750, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 57, + "source": 753, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 58, + "source": 753, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 59, + "source": 753, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 60, + "source": 753, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 61, + "source": 753, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 62, + "source": 753, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 66, + "source": 755, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 69, + "source": 749, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 70, + "source": 749, + "pc": [ + 90 + ] + }, + { + "teal": 73, + "source": 748, + "pc": [ + 91 + ] + }, + { + "teal": 74, + "source": 748, + "pc": [ + 92 + ] + }, + { + "teal": 77, + "source": 748, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 78, + "source": 748, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 79, + "source": 748, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 82, + "source": 748, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 106 + ] + }, + { + "teal": 85, + "source": 748, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 86, + "source": 748, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 87, + "source": 748, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 90, + "source": 748, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 120 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVJlZigpdWludDhbXQoqYWJpX3JvdXRlX2FycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UmVmKCl1aW50OFtdCgljYWxsc3ViIGFycmF5UmVmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UmVmKCk6IHVpbnQ8OD5bXQphcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MAoJLy8gYTogdWludDw4PltdID0gWzEsIDIsIDNdCglieXRlIDB4MDEwMjAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MwoJLy8gYlsxXSA9IDQgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDA0CglyZXBsYWNlMiAxCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1NQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50PDg+W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5UmVmKCl1aW50OFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVJlZigpdWludDhbXQoqYWJpX3JvdXRlX2FycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGFycmF5UmVmKCl1aW50OFtdCgljYWxsc3ViIGFycmF5UmVmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5UmVmKCk6IHVpbnQ8OD5bXQphcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MAoJLy8gYTogdWludDw4PltdID0gWzEsIDIsIDNdCglieXRlIDB4MDEwMjAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1MwoJLy8gYlsxXSA9IDQgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogdWludDw4PltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDA0CglyZXBsYWNlMiAxCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDw4PltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc1NQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50PDg+W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5UmVmKCl1aW50OFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArraySplice.approval.teal b/tests/contracts/artifacts/ABITestArraySplice.approval.teal index 9298b3a34..151c60261 100644 --- a/tests/contracts/artifacts/ABITestArraySplice.approval.teal +++ b/tests/contracts/artifacts/ABITestArraySplice.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArraySplice.arc32.json b/tests/contracts/artifacts/ABITestArraySplice.arc32.json index 9e532bc2c..eeae3bc19 100644 --- a/tests/contracts/artifacts/ABITestArraySplice.arc32.json +++ b/tests/contracts/artifacts/ABITestArraySplice.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZSgpdWludDY0W10KKmFiaV9yb3V0ZV9hcnJheVNwbGljZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVNwbGljZSgpdWludDY0W10KCWNhbGxzdWIgYXJyYXlTcGxpY2UKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5U3BsaWNlKCk6IHVpbnQ2NFtdCmFycmF5U3BsaWNlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDU5CgkvLyBhOiB1aW50NjRbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ2MQoJLy8gYS5zcGxpY2UoMSwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglpbnQgMQoJaW50IDgKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5U3BsaWNlKCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2UKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZSgpdWludDY0W10KKmFiaV9yb3V0ZV9hcnJheVNwbGljZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVNwbGljZSgpdWludDY0W10KCWNhbGxzdWIgYXJyYXlTcGxpY2UKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5U3BsaWNlKCk6IHVpbnQ2NFtdCmFycmF5U3BsaWNlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDU5CgkvLyBhOiB1aW50NjRbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ2MQoJLy8gYS5zcGxpY2UoMSwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglpbnQgMQoJaW50IDgKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5U3BsaWNlKCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2UKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArraySplice.arc56_draft.json b/tests/contracts/artifacts/ABITestArraySplice.arc56_draft.json index f614ca710..1ed772085 100644 --- a/tests/contracts/artifacts/ABITestArraySplice.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArraySplice.arc56_draft.json @@ -60,550 +60,553 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 457, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 457, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 457, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 457, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 457, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 457, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 457, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 457, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 457, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 458, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 458, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 458, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 458, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 458, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 458, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 458, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 458, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 38, - "source": 458, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 458, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 458, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 458, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 458, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 458, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 458, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 50, - "source": 458, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 54, - "source": 459, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 55, - "source": 459, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 59, - "source": 461, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 60, - "source": 461, - "pc": [ - 99 - ] - }, - { - "teal": 61, - "source": 461, - "pc": [ - 100 - ] - }, - { - "teal": 62, - "source": 461, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 63, - "source": 461, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 64, - "source": 461, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 65, - "source": 461, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 66, - "source": 461, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 67, - "source": 461, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 68, - "source": 461, - "pc": [ - 113 - ] - }, - { - "teal": 69, - "source": 461, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 70, - "source": 461, - "pc": [ - 116 - ] - }, - { - "teal": 71, - "source": 461, - "pc": [ - 117 - ] - }, - { - "teal": 72, - "source": 461, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 73, - "source": 461, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 74, - "source": 461, - "pc": [ - 122 - ] - }, - { - "teal": 75, - "source": 461, - "pc": [ - 123 - ] - }, - { - "teal": 76, - "source": 461, - "pc": [ - 124 - ] - }, - { - "teal": 77, - "source": 461, - "pc": [ - 125 - ] - }, - { - "teal": 78, - "source": 461, - "pc": [ - 126 - ] - }, - { - "teal": 79, - "source": 461, - "pc": [ - 127 - ] - }, - { - "teal": 80, - "source": 461, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 84, - "source": 463, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 87, - "source": 458, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 88, - "source": 458, - "pc": [ - 134 - ] - }, - { - "teal": 91, - "source": 457, - "pc": [ - 135 - ] - }, - { - "teal": 92, - "source": 457, - "pc": [ - 136 - ] - }, - { - "teal": 95, - "source": 457, - "pc": [ - 137, - 138, - 139, - 140, - 141, - 142 - ] - }, - { - "teal": 96, - "source": 457, - "pc": [ - 143, - 144, - 145 - ] - }, - { - "teal": 97, - "source": 457, - "pc": [ - 146, - 147, - 148, - 149 - ] - }, - { - "teal": 100, - "source": 457, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 150 - ] - }, - { - "teal": 103, - "source": 457, - "pc": [ - 151, - 152, - 153, - 154, - 155, - 156 - ] - }, - { - "teal": 104, - "source": 457, - "pc": [ - 157, - 158, - 159 - ] - }, - { - "teal": 105, - "source": 457, - "pc": [ - 160, - 161, - 162, - 163 - ] - }, - { - "teal": 108, - "source": 457, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 164 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 457, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 457, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 457, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 457, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 457, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 457, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 457, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 457, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 457, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 458, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 458, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 458, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 458, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 458, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 458, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 458, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 458, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 38, + "source": 458, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 458, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 458, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 458, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 458, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 458, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 458, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 50, + "source": 458, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 54, + "source": 459, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 55, + "source": 459, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 59, + "source": 461, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 60, + "source": 461, + "pc": [ + 99 + ] + }, + { + "teal": 61, + "source": 461, + "pc": [ + 100 + ] + }, + { + "teal": 62, + "source": 461, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 63, + "source": 461, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 64, + "source": 461, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 65, + "source": 461, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 66, + "source": 461, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 67, + "source": 461, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 68, + "source": 461, + "pc": [ + 113 + ] + }, + { + "teal": 69, + "source": 461, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 70, + "source": 461, + "pc": [ + 116 + ] + }, + { + "teal": 71, + "source": 461, + "pc": [ + 117 + ] + }, + { + "teal": 72, + "source": 461, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 73, + "source": 461, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 74, + "source": 461, + "pc": [ + 122 + ] + }, + { + "teal": 75, + "source": 461, + "pc": [ + 123 + ] + }, + { + "teal": 76, + "source": 461, + "pc": [ + 124 + ] + }, + { + "teal": 77, + "source": 461, + "pc": [ + 125 + ] + }, + { + "teal": 78, + "source": 461, + "pc": [ + 126 + ] + }, + { + "teal": 79, + "source": 461, + "pc": [ + 127 + ] + }, + { + "teal": 80, + "source": 461, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 84, + "source": 463, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 87, + "source": 458, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 88, + "source": 458, + "pc": [ + 134 + ] + }, + { + "teal": 91, + "source": 457, + "pc": [ + 135 + ] + }, + { + "teal": 92, + "source": 457, + "pc": [ + 136 + ] + }, + { + "teal": 95, + "source": 457, + "pc": [ + 137, + 138, + 139, + 140, + 141, + 142 + ] + }, + { + "teal": 96, + "source": 457, + "pc": [ + 143, + 144, + 145 + ] + }, + { + "teal": 97, + "source": 457, + "pc": [ + 146, + 147, + 148, + 149 + ] + }, + { + "teal": 100, + "source": 457, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 150 + ] + }, + { + "teal": 103, + "source": 457, + "pc": [ + 151, + 152, + 153, + 154, + 155, + 156 + ] + }, + { + "teal": 104, + "source": 457, + "pc": [ + 157, + 158, + 159 + ] + }, + { + "teal": 105, + "source": 457, + "pc": [ + 160, + 161, + 162, + 163 + ] + }, + { + "teal": 108, + "source": 457, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 164 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZSgpdWludDY0W10KKmFiaV9yb3V0ZV9hcnJheVNwbGljZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVNwbGljZSgpdWludDY0W10KCWNhbGxzdWIgYXJyYXlTcGxpY2UKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5U3BsaWNlKCk6IHVpbnQ2NFtdCmFycmF5U3BsaWNlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDU5CgkvLyBhOiB1aW50NjRbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ2MQoJLy8gYS5zcGxpY2UoMSwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglpbnQgMQoJaW50IDgKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5U3BsaWNlKCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2UKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZSgpdWludDY0W10KKmFiaV9yb3V0ZV9hcnJheVNwbGljZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhcnJheVNwbGljZSgpdWludDY0W10KCWNhbGxzdWIgYXJyYXlTcGxpY2UKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFycmF5U3BsaWNlKCk6IHVpbnQ2NFtdCmFycmF5U3BsaWNlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDU5CgkvLyBhOiB1aW50NjRbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ2MQoJLy8gYS5zcGxpY2UoMSwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglpbnQgMQoJaW50IDgKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImFycmF5U3BsaWNlKCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2UKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestArraySpliceValue.approval.teal b/tests/contracts/artifacts/ABITestArraySpliceValue.approval.teal index 3f630dce5..5b6fb1e0e 100644 --- a/tests/contracts/artifacts/ABITestArraySpliceValue.approval.teal +++ b/tests/contracts/artifacts/ABITestArraySpliceValue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestArraySpliceValue.arc32.json b/tests/contracts/artifacts/ABITestArraySpliceValue.arc32.json index cc3fa459a..4184a3ec9 100644 --- a/tests/contracts/artifacts/ABITestArraySpliceValue.arc32.json +++ b/tests/contracts/artifacts/ABITestArraySpliceValue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX2FycmF5U3BsaWNlVmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlTcGxpY2VWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlTcGxpY2VWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlTcGxpY2VWYWx1ZSgpOiB1aW50MTZbXQphcnJheVNwbGljZVZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjkKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwXQoJYnl0ZSAweDAwMDEwMDAyMDAwMzAwMDQwMDA1MDAwNjAwMDcwMDA4MDAwOTAwMGEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzEKCS8vIGkgPSBidG9pKGl0b2IoMSkpCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzIKCS8vIGwgPSBidG9pKGl0b2IoNykpCglpbnQgNwoJZnJhbWVfYnVyeSAyIC8vIGw6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzMKCS8vIHYgPSBhLnNwbGljZShpLCBsKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCA3IC8vIGw6IHVpbnQ2NAoJaW50IDIKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCAyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJaW50IDIKCS0KCWV4dHJhY3QzCglzd2FwCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzUKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDMgLy8gdjogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2VWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX2FycmF5U3BsaWNlVmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlTcGxpY2VWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlTcGxpY2VWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlTcGxpY2VWYWx1ZSgpOiB1aW50MTZbXQphcnJheVNwbGljZVZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjkKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwXQoJYnl0ZSAweDAwMDEwMDAyMDAwMzAwMDQwMDA1MDAwNjAwMDcwMDA4MDAwOTAwMGEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzEKCS8vIGkgPSBidG9pKGl0b2IoMSkpCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzIKCS8vIGwgPSBidG9pKGl0b2IoNykpCglpbnQgNwoJZnJhbWVfYnVyeSAyIC8vIGw6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzMKCS8vIHYgPSBhLnNwbGljZShpLCBsKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCA3IC8vIGw6IHVpbnQ2NAoJaW50IDIKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCAyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJaW50IDIKCS0KCWV4dHJhY3QzCglzd2FwCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzUKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDMgLy8gdjogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2VWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestArraySpliceValue.arc56_draft.json b/tests/contracts/artifacts/ABITestArraySpliceValue.arc56_draft.json index b9fd82586..6ec842c92 100644 --- a/tests/contracts/artifacts/ABITestArraySpliceValue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestArraySpliceValue.arc56_draft.json @@ -60,653 +60,656 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 467, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 467, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 467, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 467, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 467, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 467, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 467, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 467, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 467, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 468, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 468, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 468, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 468, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 468, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 468, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 468, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 468, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 38, - "source": 468, - "pc": [ - 59 - ] - }, - { - "teal": 39, - "source": 468, - "pc": [ - 60 - ] - }, - { - "teal": 40, - "source": 468, - "pc": [ - 61 - ] - }, - { - "teal": 41, - "source": 468, - "pc": [ - 62 - ] - }, - { - "teal": 42, - "source": 468, - "pc": [ - 63 - ] - }, - { - "teal": 43, - "source": 468, - "pc": [ - 64 - ] - }, - { - "teal": 47, - "source": 468, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 50, - "source": 468, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 51, - "source": 468, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 55, - "source": 469, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 56, - "source": 469, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 60, - "source": 471, - "pc": [ - 96 - ] - }, - { - "teal": 61, - "source": 471, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 65, - "source": 472, - "pc": [ - 99 - ] - }, - { - "teal": 66, - "source": 472, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 70, - "source": 473, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 71, - "source": 473, - "pc": [ - 104 - ] - }, - { - "teal": 72, - "source": 473, - "pc": [ - 105 - ] - }, - { - "teal": 73, - "source": 473, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 74, - "source": 473, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 75, - "source": 473, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 76, - "source": 473, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 77, - "source": 473, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 78, - "source": 473, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 79, - "source": 473, - "pc": [ - 118 - ] - }, - { - "teal": 80, - "source": 473, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 81, - "source": 473, - "pc": [ - 121 - ] - }, - { - "teal": 82, - "source": 473, - "pc": [ - 122 - ] - }, - { - "teal": 83, - "source": 473, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 84, - "source": 473, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 85, - "source": 473, - "pc": [ - 127 - ] - }, - { - "teal": 86, - "source": 473, - "pc": [ - 128 - ] - }, - { - "teal": 87, - "source": 473, - "pc": [ - 129 - ] - }, - { - "teal": 88, - "source": 473, - "pc": [ - 130 - ] - }, - { - "teal": 89, - "source": 473, - "pc": [ - 131 - ] - }, - { - "teal": 90, - "source": 473, - "pc": [ - 132 - ] - }, - { - "teal": 91, - "source": 473, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 92, - "source": 473, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 93, - "source": 473, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 94, - "source": 473, - "pc": [ - 139 - ] - }, - { - "teal": 95, - "source": 473, - "pc": [ - 140 - ] - }, - { - "teal": 96, - "source": 473, - "pc": [ - 141 - ] - }, - { - "teal": 97, - "source": 473, - "pc": [ - 142 - ] - }, - { - "teal": 98, - "source": 473, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 99, - "source": 473, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 103, - "source": 475, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 106, - "source": 468, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 109, - "source": 468, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 110, - "source": 468, - "pc": [ - 153 - ] - }, - { - "teal": 113, - "source": 467, - "pc": [ - 154 - ] - }, - { - "teal": 114, - "source": 467, - "pc": [ - 155 - ] - }, - { - "teal": 117, - "source": 467, - "pc": [ - 156, - 157, - 158, - 159, - 160, - 161 - ] - }, - { - "teal": 118, - "source": 467, - "pc": [ - 162, - 163, - 164 - ] - }, - { - "teal": 119, - "source": 467, - "pc": [ - 165, - 166, - 167, - 168 - ] - }, - { - "teal": 122, - "source": 467, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 169 - ] - }, - { - "teal": 125, - "source": 467, - "pc": [ - 170, - 171, - 172, - 173, - 174, - 175 - ] - }, - { - "teal": 126, - "source": 467, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 127, - "source": 467, - "pc": [ - 179, - 180, - 181, - 182 - ] - }, - { - "teal": 130, - "source": 467, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 183 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 467, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 467, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 467, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 467, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 467, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 467, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 467, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 467, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 467, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 468, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 468, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 468, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 468, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 468, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 468, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 468, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 468, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 38, + "source": 468, + "pc": [ + 59 + ] + }, + { + "teal": 39, + "source": 468, + "pc": [ + 60 + ] + }, + { + "teal": 40, + "source": 468, + "pc": [ + 61 + ] + }, + { + "teal": 41, + "source": 468, + "pc": [ + 62 + ] + }, + { + "teal": 42, + "source": 468, + "pc": [ + 63 + ] + }, + { + "teal": 43, + "source": 468, + "pc": [ + 64 + ] + }, + { + "teal": 47, + "source": 468, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 50, + "source": 468, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 51, + "source": 468, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 55, + "source": 469, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 56, + "source": 469, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 60, + "source": 471, + "pc": [ + 96 + ] + }, + { + "teal": 61, + "source": 471, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 65, + "source": 472, + "pc": [ + 99 + ] + }, + { + "teal": 66, + "source": 472, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 70, + "source": 473, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 71, + "source": 473, + "pc": [ + 104 + ] + }, + { + "teal": 72, + "source": 473, + "pc": [ + 105 + ] + }, + { + "teal": 73, + "source": 473, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 74, + "source": 473, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 75, + "source": 473, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 76, + "source": 473, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 77, + "source": 473, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 78, + "source": 473, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 79, + "source": 473, + "pc": [ + 118 + ] + }, + { + "teal": 80, + "source": 473, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 81, + "source": 473, + "pc": [ + 121 + ] + }, + { + "teal": 82, + "source": 473, + "pc": [ + 122 + ] + }, + { + "teal": 83, + "source": 473, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 84, + "source": 473, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 85, + "source": 473, + "pc": [ + 127 + ] + }, + { + "teal": 86, + "source": 473, + "pc": [ + 128 + ] + }, + { + "teal": 87, + "source": 473, + "pc": [ + 129 + ] + }, + { + "teal": 88, + "source": 473, + "pc": [ + 130 + ] + }, + { + "teal": 89, + "source": 473, + "pc": [ + 131 + ] + }, + { + "teal": 90, + "source": 473, + "pc": [ + 132 + ] + }, + { + "teal": 91, + "source": 473, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 92, + "source": 473, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 93, + "source": 473, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 94, + "source": 473, + "pc": [ + 139 + ] + }, + { + "teal": 95, + "source": 473, + "pc": [ + 140 + ] + }, + { + "teal": 96, + "source": 473, + "pc": [ + 141 + ] + }, + { + "teal": 97, + "source": 473, + "pc": [ + 142 + ] + }, + { + "teal": 98, + "source": 473, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 99, + "source": 473, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 103, + "source": 475, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 106, + "source": 468, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 109, + "source": 468, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 110, + "source": 468, + "pc": [ + 153 + ] + }, + { + "teal": 113, + "source": 467, + "pc": [ + 154 + ] + }, + { + "teal": 114, + "source": 467, + "pc": [ + 155 + ] + }, + { + "teal": 117, + "source": 467, + "pc": [ + 156, + 157, + 158, + 159, + 160, + 161 + ] + }, + { + "teal": 118, + "source": 467, + "pc": [ + 162, + 163, + 164 + ] + }, + { + "teal": 119, + "source": 467, + "pc": [ + 165, + 166, + 167, + 168 + ] + }, + { + "teal": 122, + "source": 467, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 169 + ] + }, + { + "teal": 125, + "source": 467, + "pc": [ + 170, + 171, + 172, + 173, + 174, + 175 + ] + }, + { + "teal": 126, + "source": 467, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 127, + "source": 467, + "pc": [ + 179, + 180, + 181, + 182 + ] + }, + { + "teal": 130, + "source": 467, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 183 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX2FycmF5U3BsaWNlVmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlTcGxpY2VWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlTcGxpY2VWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlTcGxpY2VWYWx1ZSgpOiB1aW50MTZbXQphcnJheVNwbGljZVZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjkKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwXQoJYnl0ZSAweDAwMDEwMDAyMDAwMzAwMDQwMDA1MDAwNjAwMDcwMDA4MDAwOTAwMGEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzEKCS8vIGkgPSBidG9pKGl0b2IoMSkpCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzIKCS8vIGwgPSBidG9pKGl0b2IoNykpCglpbnQgNwoJZnJhbWVfYnVyeSAyIC8vIGw6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzMKCS8vIHYgPSBhLnNwbGljZShpLCBsKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCA3IC8vIGw6IHVpbnQ2NAoJaW50IDIKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCAyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJaW50IDIKCS0KCWV4dHJhY3QzCglzd2FwCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzUKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDMgLy8gdjogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2VWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX2FycmF5U3BsaWNlVmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYXJyYXlTcGxpY2VWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgYXJyYXlTcGxpY2VWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYXJyYXlTcGxpY2VWYWx1ZSgpOiB1aW50MTZbXQphcnJheVNwbGljZVZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NjkKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwXQoJYnl0ZSAweDAwMDEwMDAyMDAwMzAwMDQwMDA1MDAwNjAwMDcwMDA4MDAwOTAwMGEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzEKCS8vIGkgPSBidG9pKGl0b2IoMSkpCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzIKCS8vIGwgPSBidG9pKGl0b2IoNykpCglpbnQgNwoJZnJhbWVfYnVyeSAyIC8vIGw6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzMKCS8vIHYgPSBhLnNwbGljZShpLCBsKQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCA3IC8vIGw6IHVpbnQ2NAoJaW50IDIKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCAxNgoJc3RvcmUgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWludCAwCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCXN1YnN0cmluZzMKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglkdXAKCWxlbgoJbG9hZCAyNDcgLy8gc3BsaWNlIHN0YXJ0Cglsb2FkIDI0NiAvLyBzcGxpY2UgYnl0ZSBsZW5ndGgKCSsKCWludCAyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJaW50IDIKCS0KCWV4dHJhY3QzCglzd2FwCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NzUKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDMgLy8gdjogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJhcnJheVNwbGljZVZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYXJyYXlTcGxpY2VWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBiggerByteCasting.approval.teal b/tests/contracts/artifacts/ABITestBiggerByteCasting.approval.teal index 26d110590..32ce231cb 100644 --- a/tests/contracts/artifacts/ABITestBiggerByteCasting.approval.teal +++ b/tests/contracts/artifacts/ABITestBiggerByteCasting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBiggerByteCasting.arc32.json b/tests/contracts/artifacts/ABITestBiggerByteCasting.arc32.json index b3c3db8a1..fc256a38a 100644 --- a/tests/contracts/artifacts/ABITestBiggerByteCasting.arc32.json +++ b/tests/contracts/artifacts/ABITestBiggerByteCasting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogYnl0ZVsyXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBiaWdnZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVsyXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KCWNhbGxzdWIgYmlnZ2VyQnl0ZUNhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhhOiBieXRlczwyPik6IGJ5dGVzPDQ+CmJpZ2dlckJ5dGVDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMDcKCS8vIHJldHVybiA8Ynl0ZXM8ND4+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBieXRlczwyPgoJYnl0ZSAweDAwMDAKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYmlnZ2VyQnl0ZUNhc3RpbmcoYnl0ZVsyXSlieXRlWzRdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogYnl0ZVsyXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBiaWdnZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVsyXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KCWNhbGxzdWIgYmlnZ2VyQnl0ZUNhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhhOiBieXRlczwyPik6IGJ5dGVzPDQ+CmJpZ2dlckJ5dGVDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMDcKCS8vIHJldHVybiA8Ynl0ZXM8ND4+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBieXRlczwyPgoJYnl0ZSAweDAwMDAKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYmlnZ2VyQnl0ZUNhc3RpbmcoYnl0ZVsyXSlieXRlWzRdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBiggerByteCasting.arc56_draft.json b/tests/contracts/artifacts/ABITestBiggerByteCasting.arc56_draft.json index 63e49b81c..542ddb563 100644 --- a/tests/contracts/artifacts/ABITestBiggerByteCasting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBiggerByteCasting.arc56_draft.json @@ -65,333 +65,336 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1205, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1205, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1205, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1205, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1205, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1205, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1205, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1205, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1205, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1206, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1206, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1206, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1206, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1206, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 1206, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 1206, - "errorMessage": "argument 0 (a) for biggerByteCasting must be a byte[2]", - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 1206, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 1206, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 1206, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1206, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1206, - "pc": [ - 61 - ] - }, - { - "teal": 49, - "source": 1206, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 53, - "source": 1207, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 54, - "source": 1207, - "pc": [ - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 55, - "source": 1207, - "pc": [ - 71 - ] - }, - { - "teal": 56, - "source": 1206, - "pc": [ - 72 - ] - }, - { - "teal": 59, - "source": 1205, - "pc": [ - 73 - ] - }, - { - "teal": 60, - "source": 1205, - "pc": [ - 74 - ] - }, - { - "teal": 63, - "source": 1205, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 64, - "source": 1205, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 65, - "source": 1205, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 68, - "source": 1205, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 71, - "source": 1205, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 72, - "source": 1205, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 73, - "source": 1205, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 76, - "source": 1205, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1205, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1205, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1205, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1205, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1205, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1205, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1205, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1205, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1205, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1206, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1206, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1206, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1206, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1206, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 1206, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 1206, + "errorMessage": "argument 0 (a) for biggerByteCasting must be a byte[2]", + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 1206, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 1206, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 1206, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1206, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1206, + "pc": [ + 61 + ] + }, + { + "teal": 49, + "source": 1206, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 53, + "source": 1207, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 54, + "source": 1207, + "pc": [ + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 55, + "source": 1207, + "pc": [ + 71 + ] + }, + { + "teal": 56, + "source": 1206, + "pc": [ + 72 + ] + }, + { + "teal": 59, + "source": 1205, + "pc": [ + 73 + ] + }, + { + "teal": 60, + "source": 1205, + "pc": [ + 74 + ] + }, + { + "teal": 63, + "source": 1205, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 64, + "source": 1205, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 65, + "source": 1205, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 68, + "source": 1205, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 71, + "source": 1205, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 72, + "source": 1205, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 73, + "source": 1205, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 76, + "source": 1205, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogYnl0ZVsyXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBiaWdnZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVsyXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KCWNhbGxzdWIgYmlnZ2VyQnl0ZUNhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhhOiBieXRlczwyPik6IGJ5dGVzPDQ+CmJpZ2dlckJ5dGVDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMDcKCS8vIHJldHVybiA8Ynl0ZXM8ND4+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBieXRlczwyPgoJYnl0ZSAweDAwMDAKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYmlnZ2VyQnl0ZUNhc3RpbmcoYnl0ZVsyXSlieXRlWzRdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogYnl0ZVsyXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBiaWdnZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVsyXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaWdnZXJCeXRlQ2FzdGluZyhieXRlWzJdKWJ5dGVbNF0KCWNhbGxzdWIgYmlnZ2VyQnl0ZUNhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaWdnZXJCeXRlQ2FzdGluZyhhOiBieXRlczwyPik6IGJ5dGVzPDQ+CmJpZ2dlckJ5dGVDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMDcKCS8vIHJldHVybiA8Ynl0ZXM8ND4+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBieXRlczwyPgoJYnl0ZSAweDAwMDAKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYmlnZ2VyQnl0ZUNhc3RpbmcoYnl0ZVsyXSlieXRlWzRdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9iaWdnZXJCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBoolFirstInTuple.approval.teal b/tests/contracts/artifacts/ABITestBoolFirstInTuple.approval.teal index 379082d4f..b8c6ea394 100644 --- a/tests/contracts/artifacts/ABITestBoolFirstInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestBoolFirstInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc32.json b/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc32.json index 14a85b082..d78fe18ad 100644 --- a/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2Jvb2xGaXJzdEluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbEZpcnN0SW5UdXBsZSgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgYm9vbEZpcnN0SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xGaXJzdEluVHVwbGUoKTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XQpib29sRmlyc3RJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4MgoJLy8gYTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XSA9IFt0cnVlLCAxLCAyXQoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCB1aW50NjQsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgdWludDY0LCB1aW50NjRdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEZpcnN0SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2Jvb2xGaXJzdEluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbEZpcnN0SW5UdXBsZSgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgYm9vbEZpcnN0SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xGaXJzdEluVHVwbGUoKTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XQpib29sRmlyc3RJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4MgoJLy8gYTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XSA9IFt0cnVlLCAxLCAyXQoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCB1aW50NjQsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgdWludDY0LCB1aW50NjRdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEZpcnN0SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc56_draft.json index 23b61baba..17f789c61 100644 --- a/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBoolFirstInTuple.arc56_draft.json @@ -60,371 +60,374 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1580, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1580, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1580, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1580, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1580, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1580, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1580, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1580, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1580, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1581, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1581, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1581, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1581, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1581, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1581, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1581, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 1581, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 1582, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 47, - "source": 1582, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 48, - "source": 1582, - "pc": [ - 63 - ] - }, - { - "teal": 49, - "source": 1582, - "pc": [ - 64 - ] - }, - { - "teal": 50, - "source": 1582, - "pc": [ - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 51, - "source": 1582, - "pc": [ - 75 - ] - }, - { - "teal": 52, - "source": 1582, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 53, - "source": 1582, - "pc": [ - 86 - ] - }, - { - "teal": 54, - "source": 1582, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 58, - "source": 1584, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 61, - "source": 1581, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 62, - "source": 1581, - "pc": [ - 93 - ] - }, - { - "teal": 65, - "source": 1580, - "pc": [ - 94 - ] - }, - { - "teal": 66, - "source": 1580, - "pc": [ - 95 - ] - }, - { - "teal": 69, - "source": 1580, - "pc": [ - 96, - 97, - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 70, - "source": 1580, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 71, - "source": 1580, - "pc": [ - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 74, - "source": 1580, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 109 - ] - }, - { - "teal": 77, - "source": 1580, - "pc": [ - 110, - 111, - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 78, - "source": 1580, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 79, - "source": 1580, - "pc": [ - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 82, - "source": 1580, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 123 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1580, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1580, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1580, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1580, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1580, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1580, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1580, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1580, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1580, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1581, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1581, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1581, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1581, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1581, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1581, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1581, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 1581, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 1582, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 47, + "source": 1582, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 48, + "source": 1582, + "pc": [ + 63 + ] + }, + { + "teal": 49, + "source": 1582, + "pc": [ + 64 + ] + }, + { + "teal": 50, + "source": 1582, + "pc": [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 51, + "source": 1582, + "pc": [ + 75 + ] + }, + { + "teal": 52, + "source": 1582, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 53, + "source": 1582, + "pc": [ + 86 + ] + }, + { + "teal": 54, + "source": 1582, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 58, + "source": 1584, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 61, + "source": 1581, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 62, + "source": 1581, + "pc": [ + 93 + ] + }, + { + "teal": 65, + "source": 1580, + "pc": [ + 94 + ] + }, + { + "teal": 66, + "source": 1580, + "pc": [ + 95 + ] + }, + { + "teal": 69, + "source": 1580, + "pc": [ + 96, + 97, + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 70, + "source": 1580, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 71, + "source": 1580, + "pc": [ + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 74, + "source": 1580, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 109 + ] + }, + { + "teal": 77, + "source": 1580, + "pc": [ + 110, + 111, + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 78, + "source": 1580, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 79, + "source": 1580, + "pc": [ + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 82, + "source": 1580, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 123 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2Jvb2xGaXJzdEluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbEZpcnN0SW5UdXBsZSgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgYm9vbEZpcnN0SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xGaXJzdEluVHVwbGUoKTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XQpib29sRmlyc3RJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4MgoJLy8gYTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XSA9IFt0cnVlLCAxLCAyXQoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCB1aW50NjQsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgdWludDY0LCB1aW50NjRdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEZpcnN0SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2Jvb2xGaXJzdEluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbEZpcnN0SW5UdXBsZSgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgYm9vbEZpcnN0SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xGaXJzdEluVHVwbGUoKTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XQpib29sRmlyc3RJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4MgoJLy8gYTogW2Jvb2xlYW4sIHVpbnQ2NCwgdWludDY0XSA9IFt0cnVlLCAxLCAyXQoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCB1aW50NjQsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU4NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgdWludDY0LCB1aW50NjRdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sRmlyc3RJblR1cGxlKCkoYm9vbCx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEZpcnN0SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBoolInNestedTuple.approval.teal b/tests/contracts/artifacts/ABITestBoolInNestedTuple.approval.teal index d32737b10..55a49c6e6 100644 --- a/tests/contracts/artifacts/ABITestBoolInNestedTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestBoolInNestedTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc32.json b/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc32.json index 4a42b653b..336de2b03 100644 --- a/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5OZXN0ZWRUdXBsZSgpYm9vbAoqYWJpX3JvdXRlX2Jvb2xJbk5lc3RlZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJvb2xJbk5lc3RlZFR1cGxlKClib29sCgljYWxsc3ViIGJvb2xJbk5lc3RlZFR1cGxlCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk5lc3RlZFR1cGxlKCk6IGJvb2xlYW4KYm9vbEluTmVzdGVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDQyCgkvLyBhOiBbW3VpbnQ2NCwgdWludDY0LCB1aW50NjRdLCBib29sZWFuLCBib29sZWFuXSA9IFtbMCwgMCwgMF0sIHRydWUsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDQKCS8vIGFbMV0gPSBmYWxzZQoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkyCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ0NQoJLy8gYVsyXSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDcKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkzCglnZXRiaXQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk5lc3RlZFR1cGxlKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sSW5OZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5OZXN0ZWRUdXBsZSgpYm9vbAoqYWJpX3JvdXRlX2Jvb2xJbk5lc3RlZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJvb2xJbk5lc3RlZFR1cGxlKClib29sCgljYWxsc3ViIGJvb2xJbk5lc3RlZFR1cGxlCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk5lc3RlZFR1cGxlKCk6IGJvb2xlYW4KYm9vbEluTmVzdGVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDQyCgkvLyBhOiBbW3VpbnQ2NCwgdWludDY0LCB1aW50NjRdLCBib29sZWFuLCBib29sZWFuXSA9IFtbMCwgMCwgMF0sIHRydWUsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDQKCS8vIGFbMV0gPSBmYWxzZQoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkyCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ0NQoJLy8gYVsyXSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDcKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkzCglnZXRiaXQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk5lc3RlZFR1cGxlKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sSW5OZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc56_draft.json index 553a3c284..125eaf6ea 100644 --- a/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBoolInNestedTuple.arc56_draft.json @@ -60,556 +60,559 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1440, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10 - ] - }, - { - "teal": 13, - "source": 1440, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 14, - "source": 1440, - "pc": [ - 13 - ] - }, - { - "teal": 15, - "source": 1440, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 16, - "source": 1440, - "pc": [ - 16 - ] - }, - { - "teal": 17, - "source": 1440, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 18, - "source": 1440, - "pc": [ - 19 - ] - }, - { - "teal": 19, - "source": 1440, - "pc": [ - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 23, - "source": 1440, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 46 - ] - }, - { - "teal": 28, - "source": 1441, - "pc": [ - 47, - 48, - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 31, - "source": 1441, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 32, - "source": 1441, - "pc": [ - 56 - ] - }, - { - "teal": 33, - "source": 1441, - "pc": [ - 57 - ] - }, - { - "teal": 34, - "source": 1441, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 35, - "source": 1441, - "pc": [ - 60 - ] - }, - { - "teal": 36, - "source": 1441, - "pc": [ - 61 - ] - }, - { - "teal": 37, - "source": 1441, - "pc": [ - 62 - ] - }, - { - "teal": 38, - "source": 1441, - "pc": [ - 63 - ] - }, - { - "teal": 39, - "source": 1441, - "pc": [ - 64 - ] - }, - { - "teal": 43, - "source": 1441, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 46, - "source": 1441, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 50, - "source": 1442, - "pc": [ - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 51, - "source": 1442, - "pc": [ - 96 - ] - }, - { - "teal": 52, - "source": 1442, - "pc": [ - 97 - ] - }, - { - "teal": 53, - "source": 1442, - "pc": [ - 98 - ] - }, - { - "teal": 54, - "source": 1442, - "pc": [ - 99 - ] - }, - { - "teal": 55, - "source": 1442, - "pc": [ - 100 - ] - }, - { - "teal": 56, - "source": 1442, - "pc": [ - 101 - ] - }, - { - "teal": 57, - "source": 1442, - "pc": [ - 102 - ] - }, - { - "teal": 58, - "source": 1442, - "pc": [ - 103 - ] - }, - { - "teal": 59, - "source": 1442, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 63, - "source": 1444, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 64, - "source": 1444, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 65, - "source": 1444, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 66, - "source": 1444, - "pc": [ - 112, - 113, - 114 - ] - }, - { - "teal": 67, - "source": 1444, - "pc": [ - 115 - ] - }, - { - "teal": 68, - "source": 1444, - "pc": [ - 116 - ] - }, - { - "teal": 69, - "source": 1444, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 73, - "source": 1445, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 74, - "source": 1445, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 75, - "source": 1445, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 76, - "source": 1445, - "pc": [ - 125 - ] - }, - { - "teal": 77, - "source": 1445, - "pc": [ - 126 - ] - }, - { - "teal": 78, - "source": 1445, - "pc": [ - 127 - ] - }, - { - "teal": 79, - "source": 1445, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 83, - "source": 1447, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 84, - "source": 1447, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 85, - "source": 1447, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 86, - "source": 1447, - "pc": [ - 136 - ] - }, - { - "teal": 87, - "source": 1447, - "pc": [ - 137 - ] - }, - { - "teal": 90, - "source": 1441, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 91, - "source": 1441, - "pc": [ - 140 - ] - }, - { - "teal": 94, - "source": 1440, - "pc": [ - 141 - ] - }, - { - "teal": 95, - "source": 1440, - "pc": [ - 142 - ] - }, - { - "teal": 98, - "source": 1440, - "pc": [ - 143, - 144, - 145, - 146, - 147, - 148 - ] - }, - { - "teal": 99, - "source": 1440, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 100, - "source": 1440, - "pc": [ - 152, - 153, - 154, - 155 - ] - }, - { - "teal": 103, - "source": 1440, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 156 - ] - }, - { - "teal": 106, - "source": 1440, - "pc": [ - 157, - 158, - 159, - 160, - 161, - 162 - ] - }, - { - "teal": 107, - "source": 1440, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 108, - "source": 1440, - "pc": [ - 166, - 167, - 168, - 169 - ] - }, - { - "teal": 111, - "source": 1440, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 170 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1440, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10 + ] + }, + { + "teal": 13, + "source": 1440, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 14, + "source": 1440, + "pc": [ + 13 + ] + }, + { + "teal": 15, + "source": 1440, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 16, + "source": 1440, + "pc": [ + 16 + ] + }, + { + "teal": 17, + "source": 1440, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 18, + "source": 1440, + "pc": [ + 19 + ] + }, + { + "teal": 19, + "source": 1440, + "pc": [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 23, + "source": 1440, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 46 + ] + }, + { + "teal": 28, + "source": 1441, + "pc": [ + 47, + 48, + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 31, + "source": 1441, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 32, + "source": 1441, + "pc": [ + 56 + ] + }, + { + "teal": 33, + "source": 1441, + "pc": [ + 57 + ] + }, + { + "teal": 34, + "source": 1441, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 35, + "source": 1441, + "pc": [ + 60 + ] + }, + { + "teal": 36, + "source": 1441, + "pc": [ + 61 + ] + }, + { + "teal": 37, + "source": 1441, + "pc": [ + 62 + ] + }, + { + "teal": 38, + "source": 1441, + "pc": [ + 63 + ] + }, + { + "teal": 39, + "source": 1441, + "pc": [ + 64 + ] + }, + { + "teal": 43, + "source": 1441, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 46, + "source": 1441, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 50, + "source": 1442, + "pc": [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 51, + "source": 1442, + "pc": [ + 96 + ] + }, + { + "teal": 52, + "source": 1442, + "pc": [ + 97 + ] + }, + { + "teal": 53, + "source": 1442, + "pc": [ + 98 + ] + }, + { + "teal": 54, + "source": 1442, + "pc": [ + 99 + ] + }, + { + "teal": 55, + "source": 1442, + "pc": [ + 100 + ] + }, + { + "teal": 56, + "source": 1442, + "pc": [ + 101 + ] + }, + { + "teal": 57, + "source": 1442, + "pc": [ + 102 + ] + }, + { + "teal": 58, + "source": 1442, + "pc": [ + 103 + ] + }, + { + "teal": 59, + "source": 1442, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 63, + "source": 1444, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 64, + "source": 1444, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 65, + "source": 1444, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 66, + "source": 1444, + "pc": [ + 112, + 113, + 114 + ] + }, + { + "teal": 67, + "source": 1444, + "pc": [ + 115 + ] + }, + { + "teal": 68, + "source": 1444, + "pc": [ + 116 + ] + }, + { + "teal": 69, + "source": 1444, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 73, + "source": 1445, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 74, + "source": 1445, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 75, + "source": 1445, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 76, + "source": 1445, + "pc": [ + 125 + ] + }, + { + "teal": 77, + "source": 1445, + "pc": [ + 126 + ] + }, + { + "teal": 78, + "source": 1445, + "pc": [ + 127 + ] + }, + { + "teal": 79, + "source": 1445, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 83, + "source": 1447, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 84, + "source": 1447, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 85, + "source": 1447, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 86, + "source": 1447, + "pc": [ + 136 + ] + }, + { + "teal": 87, + "source": 1447, + "pc": [ + 137 + ] + }, + { + "teal": 90, + "source": 1441, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 91, + "source": 1441, + "pc": [ + 140 + ] + }, + { + "teal": 94, + "source": 1440, + "pc": [ + 141 + ] + }, + { + "teal": 95, + "source": 1440, + "pc": [ + 142 + ] + }, + { + "teal": 98, + "source": 1440, + "pc": [ + 143, + 144, + 145, + 146, + 147, + 148 + ] + }, + { + "teal": 99, + "source": 1440, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 100, + "source": 1440, + "pc": [ + 152, + 153, + 154, + 155 + ] + }, + { + "teal": 103, + "source": 1440, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 156 + ] + }, + { + "teal": 106, + "source": 1440, + "pc": [ + 157, + 158, + 159, + 160, + 161, + 162 + ] + }, + { + "teal": 107, + "source": 1440, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 108, + "source": 1440, + "pc": [ + 166, + 167, + 168, + 169 + ] + }, + { + "teal": 111, + "source": 1440, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 170 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5OZXN0ZWRUdXBsZSgpYm9vbAoqYWJpX3JvdXRlX2Jvb2xJbk5lc3RlZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJvb2xJbk5lc3RlZFR1cGxlKClib29sCgljYWxsc3ViIGJvb2xJbk5lc3RlZFR1cGxlCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk5lc3RlZFR1cGxlKCk6IGJvb2xlYW4KYm9vbEluTmVzdGVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDQyCgkvLyBhOiBbW3VpbnQ2NCwgdWludDY0LCB1aW50NjRdLCBib29sZWFuLCBib29sZWFuXSA9IFtbMCwgMCwgMF0sIHRydWUsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDQKCS8vIGFbMV0gPSBmYWxzZQoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkyCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ0NQoJLy8gYVsyXSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDcKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkzCglnZXRiaXQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk5lc3RlZFR1cGxlKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sSW5OZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5OZXN0ZWRUdXBsZSgpYm9vbAoqYWJpX3JvdXRlX2Jvb2xJbk5lc3RlZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJvb2xJbk5lc3RlZFR1cGxlKClib29sCgljYWxsc3ViIGJvb2xJbk5lc3RlZFR1cGxlCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk5lc3RlZFR1cGxlKCk6IGJvb2xlYW4KYm9vbEluTmVzdGVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDQyCgkvLyBhOiBbW3VpbnQ2NCwgdWludDY0LCB1aW50NjRdLCBib29sZWFuLCBib29sZWFuXSA9IFtbMCwgMCwgMF0sIHRydWUsIGZhbHNlXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDQKCS8vIGFbMV0gPSBmYWxzZQoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkyCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ0NQoJLy8gYVsyXSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDE5MwoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtbdWludDY0LCB1aW50NjQsIHVpbnQ2NF0sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NDcKCS8vIHJldHVybiBhWzJdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1t1aW50NjQsIHVpbnQ2NCwgdWludDY0XSwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMTkzCglnZXRiaXQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk5lc3RlZFR1cGxlKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sSW5OZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBoolInObj.approval.teal b/tests/contracts/artifacts/ABITestBoolInObj.approval.teal index f6acf6b49..e2f229199 100644 --- a/tests/contracts/artifacts/ABITestBoolInObj.approval.teal +++ b/tests/contracts/artifacts/ABITestBoolInObj.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBoolInObj.arc32.json b/tests/contracts/artifacts/ABITestBoolInObj.arc32.json index 50403e176..6de62c661 100644 --- a/tests/contracts/artifacts/ABITestBoolInObj.arc32.json +++ b/tests/contracts/artifacts/ABITestBoolInObj.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5PYmooKXZvaWQKKmFiaV9yb3V0ZV9ib29sSW5PYmo6CgkvLyBleGVjdXRlIGJvb2xJbk9iaigpdm9pZAoJY2FsbHN1YiBib29sSW5PYmoKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk9iaigpOiB2b2lkCmJvb2xJbk9iajoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMjUKCS8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9ID0geyBmb286IHRydWUsIGJhcjogdHJ1ZSwgYmF6OiB0cnVlIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglkdXAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWZyYW1lX2J1cnkgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjI2CgkvLyB4LmJhciA9IGZhbHNlCglmcmFtZV9kaWcgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8geDogeyBmb286IGJvb2xlYW47IGJhcjogYm9vbGVhbjsgYmF6OiBib29sZWFuIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyNwoJLy8gYXNzZXJ0cyh4LmZvbyA9PT0gdHJ1ZSwgeC5iYXIgPT09IGZhbHNlLCB4LmJheiA9PT0gdHJ1ZSkKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWdldGJpdAoJaW50IDAKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk9iaigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEluT2JqCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5PYmooKXZvaWQKKmFiaV9yb3V0ZV9ib29sSW5PYmo6CgkvLyBleGVjdXRlIGJvb2xJbk9iaigpdm9pZAoJY2FsbHN1YiBib29sSW5PYmoKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk9iaigpOiB2b2lkCmJvb2xJbk9iajoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMjUKCS8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9ID0geyBmb286IHRydWUsIGJhcjogdHJ1ZSwgYmF6OiB0cnVlIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglkdXAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWZyYW1lX2J1cnkgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjI2CgkvLyB4LmJhciA9IGZhbHNlCglmcmFtZV9kaWcgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8geDogeyBmb286IGJvb2xlYW47IGJhcjogYm9vbGVhbjsgYmF6OiBib29sZWFuIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyNwoJLy8gYXNzZXJ0cyh4LmZvbyA9PT0gdHJ1ZSwgeC5iYXIgPT09IGZhbHNlLCB4LmJheiA9PT0gdHJ1ZSkKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWdldGJpdAoJaW50IDAKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk9iaigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEluT2JqCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBoolInObj.arc56_draft.json b/tests/contracts/artifacts/ABITestBoolInObj.arc56_draft.json index cccd8e6fa..adef89009 100644 --- a/tests/contracts/artifacts/ABITestBoolInObj.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBoolInObj.arc56_draft.json @@ -60,559 +60,562 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1223, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1223, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1223, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1223, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1223, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1223, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1223, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1223, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1223, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1224, - "pc": [ - 42, - 43, - 44 - ] - }, - { - "teal": 29, - "source": 1224, - "pc": [ - 45 - ] - }, - { - "teal": 30, - "source": 1224, - "pc": [ - 46 - ] - }, - { - "teal": 34, - "source": 1224, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 37, - "source": 1224, - "pc": [ - 50, - 51 - ] - }, - { - "teal": 41, - "source": 1225, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 42, - "source": 1225, - "pc": [ - 55 - ] - }, - { - "teal": 43, - "source": 1225, - "pc": [ - 56 - ] - }, - { - "teal": 44, - "source": 1225, - "pc": [ - 57 - ] - }, - { - "teal": 45, - "source": 1225, - "pc": [ - 58 - ] - }, - { - "teal": 46, - "source": 1225, - "pc": [ - 59 - ] - }, - { - "teal": 47, - "source": 1225, - "pc": [ - 60 - ] - }, - { - "teal": 48, - "source": 1225, - "pc": [ - 61 - ] - }, - { - "teal": 49, - "source": 1225, - "pc": [ - 62 - ] - }, - { - "teal": 50, - "source": 1225, - "pc": [ - 63 - ] - }, - { - "teal": 51, - "source": 1225, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 55, - "source": 1226, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 56, - "source": 1226, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 57, - "source": 1226, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 58, - "source": 1226, - "pc": [ - 72 - ] - }, - { - "teal": 59, - "source": 1226, - "pc": [ - 73 - ] - }, - { - "teal": 60, - "source": 1226, - "pc": [ - 74 - ] - }, - { - "teal": 61, - "source": 1226, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 65, - "source": 1227, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 66, - "source": 1227, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 67, - "source": 1227, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 68, - "source": 1227, - "pc": [ - 83 - ] - }, - { - "teal": 69, - "source": 1227, - "pc": [ - 84 - ] - }, - { - "teal": 70, - "source": 1227, - "pc": [ - 85 - ] - }, - { - "teal": 71, - "source": 1227, - "pc": [ - 86 - ] - }, - { - "teal": 74, - "source": 1227, - "errorMessage": "asserts failed: asserts(x.foo === true, x.bar === false, x.baz === true)", - "pc": [ - 87 - ] - }, - { - "teal": 75, - "source": 1227, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 76, - "source": 1227, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 77, - "source": 1227, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 78, - "source": 1227, - "pc": [ - 94 - ] - }, - { - "teal": 79, - "source": 1227, - "pc": [ - 95 - ] - }, - { - "teal": 80, - "source": 1227, - "pc": [ - 96 - ] - }, - { - "teal": 81, - "source": 1227, - "pc": [ - 97 - ] - }, - { - "teal": 84, - "source": 1227, - "errorMessage": "asserts failed: asserts(x.foo === true, x.bar === false, x.baz === true)", - "pc": [ - 98 - ] - }, - { - "teal": 85, - "source": 1227, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 86, - "source": 1227, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 87, - "source": 1227, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 88, - "source": 1227, - "pc": [ - 105 - ] - }, - { - "teal": 89, - "source": 1227, - "pc": [ - 106 - ] - }, - { - "teal": 90, - "source": 1227, - "pc": [ - 107 - ] - }, - { - "teal": 91, - "source": 1227, - "pc": [ - 108 - ] - }, - { - "teal": 94, - "source": 1227, - "errorMessage": "asserts failed: asserts(x.foo === true, x.bar === false, x.baz === true)", - "pc": [ - 109 - ] - }, - { - "teal": 95, - "source": 1224, - "pc": [ - 110 - ] - }, - { - "teal": 98, - "source": 1223, - "pc": [ - 111 - ] - }, - { - "teal": 99, - "source": 1223, - "pc": [ - 112 - ] - }, - { - "teal": 102, - "source": 1223, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 103, - "source": 1223, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 104, - "source": 1223, - "pc": [ - 122, - 123, - 124, - 125 - ] - }, - { - "teal": 107, - "source": 1223, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 126 - ] - }, - { - "teal": 110, - "source": 1223, - "pc": [ - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 111, - "source": 1223, - "pc": [ - 133, - 134, - 135 - ] - }, - { - "teal": 112, - "source": 1223, - "pc": [ - 136, - 137, - 138, - 139 - ] - }, - { - "teal": 115, - "source": 1223, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 140 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1223, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1223, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1223, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1223, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1223, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1223, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1223, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1223, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1223, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1224, + "pc": [ + 42, + 43, + 44 + ] + }, + { + "teal": 29, + "source": 1224, + "pc": [ + 45 + ] + }, + { + "teal": 30, + "source": 1224, + "pc": [ + 46 + ] + }, + { + "teal": 34, + "source": 1224, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 37, + "source": 1224, + "pc": [ + 50, + 51 + ] + }, + { + "teal": 41, + "source": 1225, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 42, + "source": 1225, + "pc": [ + 55 + ] + }, + { + "teal": 43, + "source": 1225, + "pc": [ + 56 + ] + }, + { + "teal": 44, + "source": 1225, + "pc": [ + 57 + ] + }, + { + "teal": 45, + "source": 1225, + "pc": [ + 58 + ] + }, + { + "teal": 46, + "source": 1225, + "pc": [ + 59 + ] + }, + { + "teal": 47, + "source": 1225, + "pc": [ + 60 + ] + }, + { + "teal": 48, + "source": 1225, + "pc": [ + 61 + ] + }, + { + "teal": 49, + "source": 1225, + "pc": [ + 62 + ] + }, + { + "teal": 50, + "source": 1225, + "pc": [ + 63 + ] + }, + { + "teal": 51, + "source": 1225, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 55, + "source": 1226, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 56, + "source": 1226, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 57, + "source": 1226, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 58, + "source": 1226, + "pc": [ + 72 + ] + }, + { + "teal": 59, + "source": 1226, + "pc": [ + 73 + ] + }, + { + "teal": 60, + "source": 1226, + "pc": [ + 74 + ] + }, + { + "teal": 61, + "source": 1226, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 65, + "source": 1227, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 66, + "source": 1227, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 67, + "source": 1227, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 68, + "source": 1227, + "pc": [ + 83 + ] + }, + { + "teal": 69, + "source": 1227, + "pc": [ + 84 + ] + }, + { + "teal": 70, + "source": 1227, + "pc": [ + 85 + ] + }, + { + "teal": 71, + "source": 1227, + "pc": [ + 86 + ] + }, + { + "teal": 74, + "source": 1227, + "errorMessage": "asserts failed: asserts(x.foo === true, x.bar === false, x.baz === true)", + "pc": [ + 87 + ] + }, + { + "teal": 75, + "source": 1227, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 76, + "source": 1227, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 77, + "source": 1227, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 78, + "source": 1227, + "pc": [ + 94 + ] + }, + { + "teal": 79, + "source": 1227, + "pc": [ + 95 + ] + }, + { + "teal": 80, + "source": 1227, + "pc": [ + 96 + ] + }, + { + "teal": 81, + "source": 1227, + "pc": [ + 97 + ] + }, + { + "teal": 84, + "source": 1227, + "errorMessage": "asserts failed: asserts(x.foo === true, x.bar === false, x.baz === true)", + "pc": [ + 98 + ] + }, + { + "teal": 85, + "source": 1227, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 86, + "source": 1227, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 87, + "source": 1227, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 88, + "source": 1227, + "pc": [ + 105 + ] + }, + { + "teal": 89, + "source": 1227, + "pc": [ + 106 + ] + }, + { + "teal": 90, + "source": 1227, + "pc": [ + 107 + ] + }, + { + "teal": 91, + "source": 1227, + "pc": [ + 108 + ] + }, + { + "teal": 94, + "source": 1227, + "errorMessage": "asserts failed: asserts(x.foo === true, x.bar === false, x.baz === true)", + "pc": [ + 109 + ] + }, + { + "teal": 95, + "source": 1224, + "pc": [ + 110 + ] + }, + { + "teal": 98, + "source": 1223, + "pc": [ + 111 + ] + }, + { + "teal": 99, + "source": 1223, + "pc": [ + 112 + ] + }, + { + "teal": 102, + "source": 1223, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 103, + "source": 1223, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 104, + "source": 1223, + "pc": [ + 122, + 123, + 124, + 125 + ] + }, + { + "teal": 107, + "source": 1223, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 126 + ] + }, + { + "teal": 110, + "source": 1223, + "pc": [ + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 111, + "source": 1223, + "pc": [ + 133, + 134, + 135 + ] + }, + { + "teal": 112, + "source": 1223, + "pc": [ + 136, + 137, + 138, + 139 + ] + }, + { + "teal": 115, + "source": 1223, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 140 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5PYmooKXZvaWQKKmFiaV9yb3V0ZV9ib29sSW5PYmo6CgkvLyBleGVjdXRlIGJvb2xJbk9iaigpdm9pZAoJY2FsbHN1YiBib29sSW5PYmoKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk9iaigpOiB2b2lkCmJvb2xJbk9iajoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMjUKCS8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9ID0geyBmb286IHRydWUsIGJhcjogdHJ1ZSwgYmF6OiB0cnVlIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglkdXAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWZyYW1lX2J1cnkgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjI2CgkvLyB4LmJhciA9IGZhbHNlCglmcmFtZV9kaWcgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8geDogeyBmb286IGJvb2xlYW47IGJhcjogYm9vbGVhbjsgYmF6OiBib29sZWFuIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyNwoJLy8gYXNzZXJ0cyh4LmZvbyA9PT0gdHJ1ZSwgeC5iYXIgPT09IGZhbHNlLCB4LmJheiA9PT0gdHJ1ZSkKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWdldGJpdAoJaW50IDAKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk9iaigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEluT2JqCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sSW5PYmooKXZvaWQKKmFiaV9yb3V0ZV9ib29sSW5PYmo6CgkvLyBleGVjdXRlIGJvb2xJbk9iaigpdm9pZAoJY2FsbHN1YiBib29sSW5PYmoKCWludCAxCglyZXR1cm4KCi8vIGJvb2xJbk9iaigpOiB2b2lkCmJvb2xJbk9iajoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMjUKCS8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9ID0geyBmb286IHRydWUsIGJhcjogdHJ1ZSwgYmF6OiB0cnVlIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglkdXAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWZyYW1lX2J1cnkgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjI2CgkvLyB4LmJhciA9IGZhbHNlCglmcmFtZV9kaWcgMCAvLyB4OiB7IGZvbzogYm9vbGVhbjsgYmFyOiBib29sZWFuOyBiYXo6IGJvb2xlYW4gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAxCglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8geDogeyBmb286IGJvb2xlYW47IGJhcjogYm9vbGVhbjsgYmF6OiBib29sZWFuIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyNwoJLy8gYXNzZXJ0cyh4LmZvbyA9PT0gdHJ1ZSwgeC5iYXIgPT09IGZhbHNlLCB4LmJheiA9PT0gdHJ1ZSkKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWdldGJpdAoJaW50IDAKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCWZyYW1lX2RpZyAwIC8vIHg6IHsgZm9vOiBib29sZWFuOyBiYXI6IGJvb2xlYW47IGJhejogYm9vbGVhbiB9CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWdldGJpdAoJaW50IDEKCT09CgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoeC5mb28gPT09IHRydWUsIHguYmFyID09PSBmYWxzZSwgeC5iYXogPT09IHRydWUpCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xJbk9iaigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbEluT2JqCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBoolTuple.approval.teal b/tests/contracts/artifacts/ABITestBoolTuple.approval.teal index dce30c934..16fa6419b 100644 --- a/tests/contracts/artifacts/ABITestBoolTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestBoolTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBoolTuple.arc32.json b/tests/contracts/artifacts/ABITestBoolTuple.arc32.json index fff101e33..e7bfad1d2 100644 --- a/tests/contracts/artifacts/ABITestBoolTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestBoolTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODc5CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODc5CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBoolTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestBoolTuple.arc56_draft.json index ac272f6a9..8b5a5eb1a 100644 --- a/tests/contracts/artifacts/ABITestBoolTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBoolTuple.arc56_draft.json @@ -60,500 +60,503 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 877, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 877, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 877, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 877, - "pc": [ - 9 - ] - }, - { - "teal": 16, - "source": 877, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 877, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 877, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 877, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 877, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 878, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 878, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 878, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 878, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 878, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 878, - "pc": [ - 53 - ] - }, - { - "teal": 39, - "source": 878, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 42, - "source": 878, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 56, - "source": 880, - "pc": [ - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 57, - "source": 880, - "pc": [ - 63 - ] - }, - { - "teal": 58, - "source": 880, - "pc": [ - 64 - ] - }, - { - "teal": 59, - "source": 880, - "pc": [ - 65 - ] - }, - { - "teal": 60, - "source": 881, - "pc": [ - 66 - ] - }, - { - "teal": 61, - "source": 881, - "pc": [ - 67 - ] - }, - { - "teal": 62, - "source": 881, - "pc": [ - 68 - ] - }, - { - "teal": 63, - "source": 882, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 64, - "source": 882, - "pc": [ - 71 - ] - }, - { - "teal": 65, - "source": 882, - "pc": [ - 72 - ] - }, - { - "teal": 66, - "source": 883, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 67, - "source": 883, - "pc": [ - 75 - ] - }, - { - "teal": 68, - "source": 883, - "pc": [ - 76 - ] - }, - { - "teal": 69, - "source": 884, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 70, - "source": 884, - "pc": [ - 79 - ] - }, - { - "teal": 71, - "source": 884, - "pc": [ - 80 - ] - }, - { - "teal": 72, - "source": 885, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 73, - "source": 885, - "pc": [ - 83 - ] - }, - { - "teal": 74, - "source": 885, - "pc": [ - 84 - ] - }, - { - "teal": 75, - "source": 886, - "pc": [ - 85 - ] - }, - { - "teal": 76, - "source": 886, - "pc": [ - 86 - ] - }, - { - "teal": 77, - "source": 886, - "pc": [ - 87 - ] - }, - { - "teal": 78, - "source": 887, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 79, - "source": 887, - "pc": [ - 90 - ] - }, - { - "teal": 80, - "source": 887, - "pc": [ - 91 - ] - }, - { - "teal": 81, - "source": 888, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 82, - "source": 888, - "pc": [ - 94 - ] - }, - { - "teal": 83, - "source": 888, - "pc": [ - 95 - ] - }, - { - "teal": 84, - "source": 879, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 88, - "source": 891, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 91, - "source": 878, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 92, - "source": 878, - "pc": [ - 102 - ] - }, - { - "teal": 95, - "source": 877, - "pc": [ - 103 - ] - }, - { - "teal": 96, - "source": 877, - "pc": [ - 104 - ] - }, - { - "teal": 99, - "source": 877, - "pc": [ - 105, - 106, - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 100, - "source": 877, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 101, - "source": 877, - "pc": [ - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 104, - "source": 877, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 118 - ] - }, - { - "teal": 107, - "source": 877, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 108, - "source": 877, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 109, - "source": 877, - "pc": [ - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 112, - "source": 877, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 132 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 877, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 877, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 877, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 877, + "pc": [ + 9 + ] + }, + { + "teal": 16, + "source": 877, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 877, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 877, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 877, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 877, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 878, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 878, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 878, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 878, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 878, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 878, + "pc": [ + 53 + ] + }, + { + "teal": 39, + "source": 878, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 42, + "source": 878, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 56, + "source": 880, + "pc": [ + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 57, + "source": 880, + "pc": [ + 63 + ] + }, + { + "teal": 58, + "source": 880, + "pc": [ + 64 + ] + }, + { + "teal": 59, + "source": 880, + "pc": [ + 65 + ] + }, + { + "teal": 60, + "source": 881, + "pc": [ + 66 + ] + }, + { + "teal": 61, + "source": 881, + "pc": [ + 67 + ] + }, + { + "teal": 62, + "source": 881, + "pc": [ + 68 + ] + }, + { + "teal": 63, + "source": 882, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 64, + "source": 882, + "pc": [ + 71 + ] + }, + { + "teal": 65, + "source": 882, + "pc": [ + 72 + ] + }, + { + "teal": 66, + "source": 883, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 67, + "source": 883, + "pc": [ + 75 + ] + }, + { + "teal": 68, + "source": 883, + "pc": [ + 76 + ] + }, + { + "teal": 69, + "source": 884, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 70, + "source": 884, + "pc": [ + 79 + ] + }, + { + "teal": 71, + "source": 884, + "pc": [ + 80 + ] + }, + { + "teal": 72, + "source": 885, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 73, + "source": 885, + "pc": [ + 83 + ] + }, + { + "teal": 74, + "source": 885, + "pc": [ + 84 + ] + }, + { + "teal": 75, + "source": 886, + "pc": [ + 85 + ] + }, + { + "teal": 76, + "source": 886, + "pc": [ + 86 + ] + }, + { + "teal": 77, + "source": 886, + "pc": [ + 87 + ] + }, + { + "teal": 78, + "source": 887, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 79, + "source": 887, + "pc": [ + 90 + ] + }, + { + "teal": 80, + "source": 887, + "pc": [ + 91 + ] + }, + { + "teal": 81, + "source": 888, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 82, + "source": 888, + "pc": [ + 94 + ] + }, + { + "teal": 83, + "source": 888, + "pc": [ + 95 + ] + }, + { + "teal": 84, + "source": 879, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 88, + "source": 891, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 91, + "source": 878, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 92, + "source": 878, + "pc": [ + 102 + ] + }, + { + "teal": 95, + "source": 877, + "pc": [ + 103 + ] + }, + { + "teal": 96, + "source": 877, + "pc": [ + 104 + ] + }, + { + "teal": 99, + "source": 877, + "pc": [ + 105, + 106, + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 100, + "source": 877, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 101, + "source": 877, + "pc": [ + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 104, + "source": 877, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 118 + ] + }, + { + "teal": 107, + "source": 877, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 108, + "source": 877, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 109, + "source": 877, + "pc": [ + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 112, + "source": 877, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 132 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODc5CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODc5CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBoolTupleAccess.approval.teal b/tests/contracts/artifacts/ABITestBoolTupleAccess.approval.teal index 3e438b9cb..8b32640c7 100644 --- a/tests/contracts/artifacts/ABITestBoolTupleAccess.approval.teal +++ b/tests/contracts/artifacts/ABITestBoolTupleAccess.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBoolTupleAccess.arc32.json b/tests/contracts/artifacts/ABITestBoolTupleAccess.arc32.json index 5e6a7d2b6..db61acf63 100644 --- a/tests/contracts/artifacts/ABITestBoolTupleAccess.arc32.json +++ b/tests/contracts/artifacts/ABITestBoolTupleAccess.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlQWNjZXNzKClib29sCgljYWxsc3ViIGJvb2xUdXBsZUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sVHVwbGVBY2Nlc3MoKTogYm9vbGVhbgpib29sVHVwbGVBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MDUKCS8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXSA9IFsKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDAKCXNldGJpdAoJaW50IDMKCWludCAwCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAwCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MTcKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbFR1cGxlQWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlQWNjZXNzKClib29sCgljYWxsc3ViIGJvb2xUdXBsZUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sVHVwbGVBY2Nlc3MoKTogYm9vbGVhbgpib29sVHVwbGVBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MDUKCS8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXSA9IFsKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDAKCXNldGJpdAoJaW50IDMKCWludCAwCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAwCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MTcKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbFR1cGxlQWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBoolTupleAccess.arc56_draft.json b/tests/contracts/artifacts/ABITestBoolTupleAccess.arc56_draft.json index dac688a97..4e07295eb 100644 --- a/tests/contracts/artifacts/ABITestBoolTupleAccess.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBoolTupleAccess.arc56_draft.json @@ -60,561 +60,564 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 903, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 903, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 903, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 903, - "pc": [ - 10 - ] - }, - { - "teal": 16, - "source": 903, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 903, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 903, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 903, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 903, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 904, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 904, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 904, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 33, - "source": 904, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 904, - "pc": [ - 55, - 56 - ] - }, - { - "teal": 35, - "source": 904, - "pc": [ - 57 - ] - }, - { - "teal": 36, - "source": 904, - "pc": [ - 58 - ] - }, - { - "teal": 37, - "source": 904, - "pc": [ - 59 - ] - }, - { - "teal": 38, - "source": 904, - "pc": [ - 60 - ] - }, - { - "teal": 39, - "source": 904, - "pc": [ - 61 - ] - }, - { - "teal": 43, - "source": 904, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 46, - "source": 904, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 60, - "source": 906, - "pc": [ - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 61, - "source": 906, - "pc": [ - 71 - ] - }, - { - "teal": 62, - "source": 906, - "pc": [ - 72 - ] - }, - { - "teal": 63, - "source": 906, - "pc": [ - 73 - ] - }, - { - "teal": 64, - "source": 907, - "pc": [ - 74 - ] - }, - { - "teal": 65, - "source": 907, - "pc": [ - 75 - ] - }, - { - "teal": 66, - "source": 907, - "pc": [ - 76 - ] - }, - { - "teal": 67, - "source": 908, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 68, - "source": 908, - "pc": [ - 79 - ] - }, - { - "teal": 69, - "source": 908, - "pc": [ - 80 - ] - }, - { - "teal": 70, - "source": 909, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 71, - "source": 909, - "pc": [ - 83 - ] - }, - { - "teal": 72, - "source": 909, - "pc": [ - 84 - ] - }, - { - "teal": 73, - "source": 910, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 74, - "source": 910, - "pc": [ - 87 - ] - }, - { - "teal": 75, - "source": 910, - "pc": [ - 88 - ] - }, - { - "teal": 76, - "source": 911, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 77, - "source": 911, - "pc": [ - 91 - ] - }, - { - "teal": 78, - "source": 911, - "pc": [ - 92 - ] - }, - { - "teal": 79, - "source": 912, - "pc": [ - 93 - ] - }, - { - "teal": 80, - "source": 912, - "pc": [ - 94 - ] - }, - { - "teal": 81, - "source": 912, - "pc": [ - 95 - ] - }, - { - "teal": 82, - "source": 913, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 83, - "source": 913, - "pc": [ - 98 - ] - }, - { - "teal": 84, - "source": 913, - "pc": [ - 99 - ] - }, - { - "teal": 85, - "source": 914, - "pc": [ - 100 - ] - }, - { - "teal": 86, - "source": 914, - "pc": [ - 101 - ] - }, - { - "teal": 87, - "source": 914, - "pc": [ - 102 - ] - }, - { - "teal": 88, - "source": 905, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 92, - "source": 917, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 93, - "source": 917, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 94, - "source": 917, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 95, - "source": 917, - "pc": [ - 111 - ] - }, - { - "teal": 96, - "source": 917, - "pc": [ - 112 - ] - }, - { - "teal": 99, - "source": 904, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 100, - "source": 904, - "pc": [ - 115 - ] - }, - { - "teal": 103, - "source": 903, - "pc": [ - 116 - ] - }, - { - "teal": 104, - "source": 903, - "pc": [ - 117 - ] - }, - { - "teal": 107, - "source": 903, - "pc": [ - 118, - 119, - 120, - 121, - 122, - 123 - ] - }, - { - "teal": 108, - "source": 903, - "pc": [ - 124, - 125, - 126 - ] - }, - { - "teal": 109, - "source": 903, - "pc": [ - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 112, - "source": 903, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 131 - ] - }, - { - "teal": 115, - "source": 903, - "pc": [ - 132, - 133, - 134, - 135, - 136, - 137 - ] - }, - { - "teal": 116, - "source": 903, - "pc": [ - 138, - 139, - 140 - ] - }, - { - "teal": 117, - "source": 903, - "pc": [ - 141, - 142, - 143, - 144 - ] - }, - { - "teal": 120, - "source": 903, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 145 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 903, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 903, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 903, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 903, + "pc": [ + 10 + ] + }, + { + "teal": 16, + "source": 903, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 903, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 903, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 903, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 903, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 904, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 904, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 904, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 33, + "source": 904, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 904, + "pc": [ + 55, + 56 + ] + }, + { + "teal": 35, + "source": 904, + "pc": [ + 57 + ] + }, + { + "teal": 36, + "source": 904, + "pc": [ + 58 + ] + }, + { + "teal": 37, + "source": 904, + "pc": [ + 59 + ] + }, + { + "teal": 38, + "source": 904, + "pc": [ + 60 + ] + }, + { + "teal": 39, + "source": 904, + "pc": [ + 61 + ] + }, + { + "teal": 43, + "source": 904, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 46, + "source": 904, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 60, + "source": 906, + "pc": [ + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 61, + "source": 906, + "pc": [ + 71 + ] + }, + { + "teal": 62, + "source": 906, + "pc": [ + 72 + ] + }, + { + "teal": 63, + "source": 906, + "pc": [ + 73 + ] + }, + { + "teal": 64, + "source": 907, + "pc": [ + 74 + ] + }, + { + "teal": 65, + "source": 907, + "pc": [ + 75 + ] + }, + { + "teal": 66, + "source": 907, + "pc": [ + 76 + ] + }, + { + "teal": 67, + "source": 908, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 68, + "source": 908, + "pc": [ + 79 + ] + }, + { + "teal": 69, + "source": 908, + "pc": [ + 80 + ] + }, + { + "teal": 70, + "source": 909, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 71, + "source": 909, + "pc": [ + 83 + ] + }, + { + "teal": 72, + "source": 909, + "pc": [ + 84 + ] + }, + { + "teal": 73, + "source": 910, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 74, + "source": 910, + "pc": [ + 87 + ] + }, + { + "teal": 75, + "source": 910, + "pc": [ + 88 + ] + }, + { + "teal": 76, + "source": 911, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 77, + "source": 911, + "pc": [ + 91 + ] + }, + { + "teal": 78, + "source": 911, + "pc": [ + 92 + ] + }, + { + "teal": 79, + "source": 912, + "pc": [ + 93 + ] + }, + { + "teal": 80, + "source": 912, + "pc": [ + 94 + ] + }, + { + "teal": 81, + "source": 912, + "pc": [ + 95 + ] + }, + { + "teal": 82, + "source": 913, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 83, + "source": 913, + "pc": [ + 98 + ] + }, + { + "teal": 84, + "source": 913, + "pc": [ + 99 + ] + }, + { + "teal": 85, + "source": 914, + "pc": [ + 100 + ] + }, + { + "teal": 86, + "source": 914, + "pc": [ + 101 + ] + }, + { + "teal": 87, + "source": 914, + "pc": [ + 102 + ] + }, + { + "teal": 88, + "source": 905, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 92, + "source": 917, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 93, + "source": 917, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 94, + "source": 917, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 95, + "source": 917, + "pc": [ + 111 + ] + }, + { + "teal": 96, + "source": 917, + "pc": [ + 112 + ] + }, + { + "teal": 99, + "source": 904, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 100, + "source": 904, + "pc": [ + 115 + ] + }, + { + "teal": 103, + "source": 903, + "pc": [ + 116 + ] + }, + { + "teal": 104, + "source": 903, + "pc": [ + 117 + ] + }, + { + "teal": 107, + "source": 903, + "pc": [ + 118, + 119, + 120, + 121, + 122, + 123 + ] + }, + { + "teal": 108, + "source": 903, + "pc": [ + 124, + 125, + 126 + ] + }, + { + "teal": 109, + "source": 903, + "pc": [ + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 112, + "source": 903, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 131 + ] + }, + { + "teal": 115, + "source": 903, + "pc": [ + 132, + 133, + 134, + 135, + 136, + 137 + ] + }, + { + "teal": 116, + "source": 903, + "pc": [ + 138, + 139, + 140 + ] + }, + { + "teal": 117, + "source": 903, + "pc": [ + 141, + 142, + 143, + 144 + ] + }, + { + "teal": 120, + "source": 903, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 145 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlQWNjZXNzKClib29sCgljYWxsc3ViIGJvb2xUdXBsZUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sVHVwbGVBY2Nlc3MoKTogYm9vbGVhbgpib29sVHVwbGVBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MDUKCS8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXSA9IFsKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDAKCXNldGJpdAoJaW50IDMKCWludCAwCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAwCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MTcKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbFR1cGxlQWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlQWNjZXNzKClib29sCgljYWxsc3ViIGJvb2xUdXBsZUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sVHVwbGVBY2Nlc3MoKTogYm9vbGVhbgpib29sVHVwbGVBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MDUKCS8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXSA9IFsKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDAKCXNldGJpdAoJaW50IDMKCWludCAwCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAwCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MTcKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbFR1cGxlQWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sVHVwbGVBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBoolTupleUpdate.approval.teal b/tests/contracts/artifacts/ABITestBoolTupleUpdate.approval.teal index d10620621..31a5bf7a4 100644 --- a/tests/contracts/artifacts/ABITestBoolTupleUpdate.approval.teal +++ b/tests/contracts/artifacts/ABITestBoolTupleUpdate.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc32.json b/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc32.json index 49f85d64e..6d6ef8be2 100644 --- a/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc32.json +++ b/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGVVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlVXBkYXRlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZVVwZGF0ZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlVXBkYXRlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTY3CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NzkKCS8vIGFbOF0gPSB0cnVlCglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZVVwZGF0ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGVVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlVXBkYXRlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZVVwZGF0ZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlVXBkYXRlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTY3CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NzkKCS8vIGFbOF0gPSB0cnVlCglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZVVwZGF0ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc56_draft.json b/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc56_draft.json index 45979c9e8..0682fe8c3 100644 --- a/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBoolTupleUpdate.arc56_draft.json @@ -60,553 +60,556 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 965, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 965, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 965, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 965, - "pc": [ - 10 - ] - }, - { - "teal": 16, - "source": 965, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 965, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 965, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 965, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 965, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 966, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 966, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 966, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 966, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 966, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 966, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 966, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 966, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 56, - "source": 968, - "pc": [ - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 57, - "source": 968, - "pc": [ - 64 - ] - }, - { - "teal": 58, - "source": 968, - "pc": [ - 65 - ] - }, - { - "teal": 59, - "source": 968, - "pc": [ - 66 - ] - }, - { - "teal": 60, - "source": 969, - "pc": [ - 67 - ] - }, - { - "teal": 61, - "source": 969, - "pc": [ - 68 - ] - }, - { - "teal": 62, - "source": 969, - "pc": [ - 69 - ] - }, - { - "teal": 63, - "source": 970, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 64, - "source": 970, - "pc": [ - 72 - ] - }, - { - "teal": 65, - "source": 970, - "pc": [ - 73 - ] - }, - { - "teal": 66, - "source": 971, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 67, - "source": 971, - "pc": [ - 76 - ] - }, - { - "teal": 68, - "source": 971, - "pc": [ - 77 - ] - }, - { - "teal": 69, - "source": 972, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 70, - "source": 972, - "pc": [ - 80 - ] - }, - { - "teal": 71, - "source": 972, - "pc": [ - 81 - ] - }, - { - "teal": 72, - "source": 973, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 73, - "source": 973, - "pc": [ - 84 - ] - }, - { - "teal": 74, - "source": 973, - "pc": [ - 85 - ] - }, - { - "teal": 75, - "source": 974, - "pc": [ - 86 - ] - }, - { - "teal": 76, - "source": 974, - "pc": [ - 87 - ] - }, - { - "teal": 77, - "source": 974, - "pc": [ - 88 - ] - }, - { - "teal": 78, - "source": 975, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 79, - "source": 975, - "pc": [ - 91 - ] - }, - { - "teal": 80, - "source": 975, - "pc": [ - 92 - ] - }, - { - "teal": 81, - "source": 976, - "pc": [ - 93 - ] - }, - { - "teal": 82, - "source": 976, - "pc": [ - 94 - ] - }, - { - "teal": 83, - "source": 976, - "pc": [ - 95 - ] - }, - { - "teal": 84, - "source": 967, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 88, - "source": 979, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 89, - "source": 979, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 90, - "source": 979, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 91, - "source": 979, - "pc": [ - 104 - ] - }, - { - "teal": 92, - "source": 979, - "pc": [ - 105 - ] - }, - { - "teal": 93, - "source": 979, - "pc": [ - 106 - ] - }, - { - "teal": 94, - "source": 979, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 98, - "source": 980, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 101, - "source": 966, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 102, - "source": 966, - "pc": [ - 113 - ] - }, - { - "teal": 105, - "source": 965, - "pc": [ - 114 - ] - }, - { - "teal": 106, - "source": 965, - "pc": [ - 115 - ] - }, - { - "teal": 109, - "source": 965, - "pc": [ - 116, - 117, - 118, - 119, - 120, - 121 - ] - }, - { - "teal": 110, - "source": 965, - "pc": [ - 122, - 123, - 124 - ] - }, - { - "teal": 111, - "source": 965, - "pc": [ - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 114, - "source": 965, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 129 - ] - }, - { - "teal": 117, - "source": 965, - "pc": [ - 130, - 131, - 132, - 133, - 134, - 135 - ] - }, - { - "teal": 118, - "source": 965, - "pc": [ - 136, - 137, - 138 - ] - }, - { - "teal": 119, - "source": 965, - "pc": [ - 139, - 140, - 141, - 142 - ] - }, - { - "teal": 122, - "source": 965, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 143 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 965, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 965, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 965, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 965, + "pc": [ + 10 + ] + }, + { + "teal": 16, + "source": 965, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 965, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 965, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 965, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 965, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 966, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 966, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 966, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 966, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 966, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 966, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 966, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 966, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 56, + "source": 968, + "pc": [ + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 57, + "source": 968, + "pc": [ + 64 + ] + }, + { + "teal": 58, + "source": 968, + "pc": [ + 65 + ] + }, + { + "teal": 59, + "source": 968, + "pc": [ + 66 + ] + }, + { + "teal": 60, + "source": 969, + "pc": [ + 67 + ] + }, + { + "teal": 61, + "source": 969, + "pc": [ + 68 + ] + }, + { + "teal": 62, + "source": 969, + "pc": [ + 69 + ] + }, + { + "teal": 63, + "source": 970, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 64, + "source": 970, + "pc": [ + 72 + ] + }, + { + "teal": 65, + "source": 970, + "pc": [ + 73 + ] + }, + { + "teal": 66, + "source": 971, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 67, + "source": 971, + "pc": [ + 76 + ] + }, + { + "teal": 68, + "source": 971, + "pc": [ + 77 + ] + }, + { + "teal": 69, + "source": 972, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 70, + "source": 972, + "pc": [ + 80 + ] + }, + { + "teal": 71, + "source": 972, + "pc": [ + 81 + ] + }, + { + "teal": 72, + "source": 973, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 73, + "source": 973, + "pc": [ + 84 + ] + }, + { + "teal": 74, + "source": 973, + "pc": [ + 85 + ] + }, + { + "teal": 75, + "source": 974, + "pc": [ + 86 + ] + }, + { + "teal": 76, + "source": 974, + "pc": [ + 87 + ] + }, + { + "teal": 77, + "source": 974, + "pc": [ + 88 + ] + }, + { + "teal": 78, + "source": 975, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 79, + "source": 975, + "pc": [ + 91 + ] + }, + { + "teal": 80, + "source": 975, + "pc": [ + 92 + ] + }, + { + "teal": 81, + "source": 976, + "pc": [ + 93 + ] + }, + { + "teal": 82, + "source": 976, + "pc": [ + 94 + ] + }, + { + "teal": 83, + "source": 976, + "pc": [ + 95 + ] + }, + { + "teal": 84, + "source": 967, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 88, + "source": 979, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 89, + "source": 979, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 90, + "source": 979, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 91, + "source": 979, + "pc": [ + 104 + ] + }, + { + "teal": 92, + "source": 979, + "pc": [ + 105 + ] + }, + { + "teal": 93, + "source": 979, + "pc": [ + 106 + ] + }, + { + "teal": 94, + "source": 979, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 98, + "source": 980, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 101, + "source": 966, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 102, + "source": 966, + "pc": [ + 113 + ] + }, + { + "teal": 105, + "source": 965, + "pc": [ + 114 + ] + }, + { + "teal": 106, + "source": 965, + "pc": [ + 115 + ] + }, + { + "teal": 109, + "source": 965, + "pc": [ + 116, + 117, + 118, + 119, + 120, + 121 + ] + }, + { + "teal": 110, + "source": 965, + "pc": [ + 122, + 123, + 124 + ] + }, + { + "teal": 111, + "source": 965, + "pc": [ + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 114, + "source": 965, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 129 + ] + }, + { + "teal": 117, + "source": 965, + "pc": [ + 130, + 131, + 132, + 133, + 134, + 135 + ] + }, + { + "teal": 118, + "source": 965, + "pc": [ + 136, + 137, + 138 + ] + }, + { + "teal": 119, + "source": 965, + "pc": [ + 139, + 140, + 141, + 142 + ] + }, + { + "teal": 122, + "source": 965, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 143 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGVVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlVXBkYXRlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZVVwZGF0ZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlVXBkYXRlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTY3CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NzkKCS8vIGFbOF0gPSB0cnVlCglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZVVwZGF0ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9ib29sVHVwbGVVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYm9vbFR1cGxlVXBkYXRlKCkoYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wpCgljYWxsc3ViIGJvb2xUdXBsZVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xUdXBsZVVwZGF0ZSgpOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KYm9vbFR1cGxlVXBkYXRlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTY3CgkvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0gPSBbCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgdHJ1ZSwKCS8vICAgICAgIGZhbHNlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICB0cnVlLAoJLy8gICAgICAgZmFsc2UsCgkvLyAgICAgICBmYWxzZSwKCS8vICAgICBdCglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NzkKCS8vIGFbOF0gPSB0cnVlCglmcmFtZV9kaWcgMCAvLyBhOiBbYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbiwgYm9vbGVhbl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFtib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuLCBib29sZWFuXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW2Jvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW4sIGJvb2xlYW5dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJib29sVHVwbGVVcGRhdGUoKShib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCxib29sLGJvb2wsYm9vbCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Jvb2xUdXBsZVVwZGF0ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBooleanArgAndReturn.approval.teal b/tests/contracts/artifacts/ABITestBooleanArgAndReturn.approval.teal index 0b50e9dbe..bff8d1045 100644 --- a/tests/contracts/artifacts/ABITestBooleanArgAndReturn.approval.teal +++ b/tests/contracts/artifacts/ABITestBooleanArgAndReturn.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc32.json b/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc32.json index 70741baf8..e0cd1c633 100644 --- a/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc32.json +++ b/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoqYWJpX3JvdXRlX2Jvb2xlYW5BcmdBbmRSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYm9vbGVhbkFyZ0FuZFJldHVybiBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoJY2FsbHN1YiBib29sZWFuQXJnQW5kUmV0dXJuCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xlYW5BcmdBbmRSZXR1cm4oYTogYm9vbGVhbik6IGJvb2xlYW4KYm9vbGVhbkFyZ0FuZFJldHVybjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NzMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xlYW5BcmdBbmRSZXR1cm4oYm9vbClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sZWFuQXJnQW5kUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoqYWJpX3JvdXRlX2Jvb2xlYW5BcmdBbmRSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYm9vbGVhbkFyZ0FuZFJldHVybiBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoJY2FsbHN1YiBib29sZWFuQXJnQW5kUmV0dXJuCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xlYW5BcmdBbmRSZXR1cm4oYTogYm9vbGVhbik6IGJvb2xlYW4KYm9vbGVhbkFyZ0FuZFJldHVybjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NzMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xlYW5BcmdBbmRSZXR1cm4oYm9vbClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sZWFuQXJnQW5kUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc56_draft.json b/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc56_draft.json index e453e76aa..55fffb9f2 100644 --- a/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBooleanArgAndReturn.arc56_draft.json @@ -65,361 +65,364 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 871, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 871, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 871, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 871, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 871, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 871, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 871, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 871, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 871, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 872, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 872, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 872, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 872, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 872, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 872, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 872, - "errorMessage": "argument 0 (a) for booleanArgAndReturn must be a bool", - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 872, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 872, - "pc": [ - 56 - ] - }, - { - "teal": 43, - "source": 872, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 44, - "source": 872, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 45, - "source": 872, - "pc": [ - 63 - ] - }, - { - "teal": 46, - "source": 872, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 47, - "source": 872, - "pc": [ - 66 - ] - }, - { - "teal": 48, - "source": 872, - "pc": [ - 67 - ] - }, - { - "teal": 49, - "source": 872, - "pc": [ - 68 - ] - }, - { - "teal": 50, - "source": 872, - "pc": [ - 69 - ] - }, - { - "teal": 51, - "source": 872, - "pc": [ - 70 - ] - }, - { - "teal": 55, - "source": 872, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 59, - "source": 873, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 60, - "source": 872, - "pc": [ - 76 - ] - }, - { - "teal": 63, - "source": 871, - "pc": [ - 77 - ] - }, - { - "teal": 64, - "source": 871, - "pc": [ - 78 - ] - }, - { - "teal": 67, - "source": 871, - "pc": [ - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 68, - "source": 871, - "pc": [ - 85, - 86, - 87 - ] - }, - { - "teal": 69, - "source": 871, - "pc": [ - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 72, - "source": 871, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 92 - ] - }, - { - "teal": 75, - "source": 871, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 76, - "source": 871, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 77, - "source": 871, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 80, - "source": 871, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 106 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 871, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 871, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 871, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 871, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 871, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 871, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 871, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 871, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 871, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 872, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 872, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 872, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 872, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 872, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 872, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 872, + "errorMessage": "argument 0 (a) for booleanArgAndReturn must be a bool", + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 872, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 872, + "pc": [ + 56 + ] + }, + { + "teal": 43, + "source": 872, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 44, + "source": 872, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 45, + "source": 872, + "pc": [ + 63 + ] + }, + { + "teal": 46, + "source": 872, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 47, + "source": 872, + "pc": [ + 66 + ] + }, + { + "teal": 48, + "source": 872, + "pc": [ + 67 + ] + }, + { + "teal": 49, + "source": 872, + "pc": [ + 68 + ] + }, + { + "teal": 50, + "source": 872, + "pc": [ + 69 + ] + }, + { + "teal": 51, + "source": 872, + "pc": [ + 70 + ] + }, + { + "teal": 55, + "source": 872, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 59, + "source": 873, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 60, + "source": 872, + "pc": [ + 76 + ] + }, + { + "teal": 63, + "source": 871, + "pc": [ + 77 + ] + }, + { + "teal": 64, + "source": 871, + "pc": [ + 78 + ] + }, + { + "teal": 67, + "source": 871, + "pc": [ + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 68, + "source": 871, + "pc": [ + 85, + 86, + 87 + ] + }, + { + "teal": 69, + "source": 871, + "pc": [ + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 72, + "source": 871, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 92 + ] + }, + { + "teal": 75, + "source": 871, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 76, + "source": 871, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 77, + "source": 871, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 80, + "source": 871, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 106 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoqYWJpX3JvdXRlX2Jvb2xlYW5BcmdBbmRSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYm9vbGVhbkFyZ0FuZFJldHVybiBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoJY2FsbHN1YiBib29sZWFuQXJnQW5kUmV0dXJuCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xlYW5BcmdBbmRSZXR1cm4oYTogYm9vbGVhbik6IGJvb2xlYW4KYm9vbGVhbkFyZ0FuZFJldHVybjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NzMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xlYW5BcmdBbmRSZXR1cm4oYm9vbClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sZWFuQXJnQW5kUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoqYWJpX3JvdXRlX2Jvb2xlYW5BcmdBbmRSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYm9vbGVhbkFyZ0FuZFJldHVybiBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBib29sZWFuQXJnQW5kUmV0dXJuKGJvb2wpYm9vbAoJY2FsbHN1YiBib29sZWFuQXJnQW5kUmV0dXJuCglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJvb2xlYW5BcmdBbmRSZXR1cm4oYTogYm9vbGVhbik6IGJvb2xlYW4KYm9vbGVhbkFyZ0FuZFJldHVybjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NzMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJvb2xlYW5BcmdBbmRSZXR1cm4oYm9vbClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ib29sZWFuQXJnQW5kUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBooleanLastInObj.approval.teal b/tests/contracts/artifacts/ABITestBooleanLastInObj.approval.teal index 4630e9b20..8c690abef 100644 --- a/tests/contracts/artifacts/ABITestBooleanLastInObj.approval.teal +++ b/tests/contracts/artifacts/ABITestBooleanLastInObj.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBooleanLastInObj.arc32.json b/tests/contracts/artifacts/ABITestBooleanLastInObj.arc32.json index 3ef557e1c..168b06eca 100644 --- a/tests/contracts/artifacts/ABITestBooleanLastInObj.arc32.json +++ b/tests/contracts/artifacts/ABITestBooleanLastInObj.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCiphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iajoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCgljYWxsc3ViIGJvb2xlYW5MYXN0SW5PYmoKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sZWFuTGFzdEluT2JqKCk6IHsgbjogdWludDY0OyBiOiBib29sZWFuIH0KYm9vbGVhbkxhc3RJbk9iajoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjY1CgkvLyByZXR1cm4gewoJLy8gICAgICAgbjogMSwKCS8vICAgICAgIGI6IGZhbHNlLAoJLy8gICAgIH07CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJYnl0ZSAweDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbGVhbkxhc3RJbk9iaigpKHVpbnQ2NCxib29sKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iagoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCiphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iajoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCgljYWxsc3ViIGJvb2xlYW5MYXN0SW5PYmoKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sZWFuTGFzdEluT2JqKCk6IHsgbjogdWludDY0OyBiOiBib29sZWFuIH0KYm9vbGVhbkxhc3RJbk9iajoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjY1CgkvLyByZXR1cm4gewoJLy8gICAgICAgbjogMSwKCS8vICAgICAgIGI6IGZhbHNlLAoJLy8gICAgIH07CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJYnl0ZSAweDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbGVhbkxhc3RJbk9iaigpKHVpbnQ2NCxib29sKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iagoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBooleanLastInObj.arc56_draft.json b/tests/contracts/artifacts/ABITestBooleanLastInObj.arc56_draft.json index b75d7f506..1fd1d9791 100644 --- a/tests/contracts/artifacts/ABITestBooleanLastInObj.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBooleanLastInObj.arc56_draft.json @@ -35,10 +35,16 @@ 56 ], "structs": { - "{ n: uint64; b: boolean; }": { - "n": "uint64", - "b": "bool" - } + "{ n: uint64; b: boolean; }": [ + { + "name": "n", + "type": "uint64" + }, + { + "name": "b", + "type": "bool" + } + ] }, "state": { "schema": { @@ -66,316 +72,319 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1263, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1263, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1263, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1263, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1263, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1263, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1263, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1263, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1263, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1264, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1264, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1264, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1264, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1264, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1264, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1264, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 46, - "source": 1266, - "pc": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 47, - "source": 1267, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 1267, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 49, - "source": 1267, - "pc": [ - 71 - ] - }, - { - "teal": 50, - "source": 1267, - "pc": [ - 72 - ] - }, - { - "teal": 51, - "source": 1265, - "pc": [ - 73 - ] - }, - { - "teal": 52, - "source": 1264, - "pc": [ - 74 - ] - }, - { - "teal": 55, - "source": 1263, - "pc": [ - 75 - ] - }, - { - "teal": 56, - "source": 1263, - "pc": [ - 76 - ] - }, - { - "teal": 59, - "source": 1263, - "pc": [ - 77, - 78, - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 60, - "source": 1263, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 61, - "source": 1263, - "pc": [ - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 64, - "source": 1263, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 90 - ] - }, - { - "teal": 67, - "source": 1263, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 68, - "source": 1263, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 69, - "source": 1263, - "pc": [ - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 72, - "source": 1263, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 104 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1263, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1263, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1263, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1263, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1263, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1263, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1263, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1263, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1263, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1264, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1264, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1264, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1264, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1264, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1264, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1264, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 46, + "source": 1266, + "pc": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 47, + "source": 1267, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 1267, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 49, + "source": 1267, + "pc": [ + 71 + ] + }, + { + "teal": 50, + "source": 1267, + "pc": [ + 72 + ] + }, + { + "teal": 51, + "source": 1265, + "pc": [ + 73 + ] + }, + { + "teal": 52, + "source": 1264, + "pc": [ + 74 + ] + }, + { + "teal": 55, + "source": 1263, + "pc": [ + 75 + ] + }, + { + "teal": 56, + "source": 1263, + "pc": [ + 76 + ] + }, + { + "teal": 59, + "source": 1263, + "pc": [ + 77, + 78, + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 60, + "source": 1263, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 61, + "source": 1263, + "pc": [ + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 64, + "source": 1263, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 90 + ] + }, + { + "teal": 67, + "source": 1263, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 68, + "source": 1263, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 69, + "source": 1263, + "pc": [ + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 72, + "source": 1263, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 104 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCiphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iajoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCgljYWxsc3ViIGJvb2xlYW5MYXN0SW5PYmoKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sZWFuTGFzdEluT2JqKCk6IHsgbjogdWludDY0OyBiOiBib29sZWFuIH0KYm9vbGVhbkxhc3RJbk9iajoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjY1CgkvLyByZXR1cm4gewoJLy8gICAgICAgbjogMSwKCS8vICAgICAgIGI6IGZhbHNlLAoJLy8gICAgIH07CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJYnl0ZSAweDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbGVhbkxhc3RJbk9iaigpKHVpbnQ2NCxib29sKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iagoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCiphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iajoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib29sZWFuTGFzdEluT2JqKCkodWludDY0LGJvb2wpCgljYWxsc3ViIGJvb2xlYW5MYXN0SW5PYmoKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib29sZWFuTGFzdEluT2JqKCk6IHsgbjogdWludDY0OyBiOiBib29sZWFuIH0KYm9vbGVhbkxhc3RJbk9iajoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjY1CgkvLyByZXR1cm4gewoJLy8gICAgICAgbjogMSwKCS8vICAgICAgIGI6IGZhbHNlLAoJLy8gICAgIH07CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJYnl0ZSAweDAwCglpbnQgMAoJZHVwCglzZXRiaXQKCWNvbmNhdAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYm9vbGVhbkxhc3RJbk9iaigpKHVpbnQ2NCxib29sKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYm9vbGVhbkxhc3RJbk9iagoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBytesCasting.approval.teal b/tests/contracts/artifacts/ABITestBytesCasting.approval.teal index be6d79e31..af318c7ca 100644 --- a/tests/contracts/artifacts/ABITestBytesCasting.approval.teal +++ b/tests/contracts/artifacts/ABITestBytesCasting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBytesCasting.arc32.json b/tests/contracts/artifacts/ABITestBytesCasting.arc32.json index 0ef5c3c76..f8f322105 100644 --- a/tests/contracts/artifacts/ABITestBytesCasting.arc32.json +++ b/tests/contracts/artifacts/ABITestBytesCasting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc0Nhc3RpbmcoYnl0ZVtdKWJ5dGVbMl0KKmFiaV9yb3V0ZV9ieXRlc0Nhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXQoJY2FsbHN1YiBieXRlc0Nhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc0Nhc3RpbmcoYTogYnl0ZXMpOiBieXRlczwyPgpieXRlc0Nhc3Rpbmc6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIwMQoJLy8gcmV0dXJuIDxieXRlczwyPj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJ5dGVzCglieXRlIDB4MDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYnl0ZXNDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc0Nhc3RpbmcoYnl0ZVtdKWJ5dGVbMl0KKmFiaV9yb3V0ZV9ieXRlc0Nhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXQoJY2FsbHN1YiBieXRlc0Nhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc0Nhc3RpbmcoYTogYnl0ZXMpOiBieXRlczwyPgpieXRlc0Nhc3Rpbmc6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIwMQoJLy8gcmV0dXJuIDxieXRlczwyPj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJ5dGVzCglieXRlIDB4MDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYnl0ZXNDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBytesCasting.arc56_draft.json b/tests/contracts/artifacts/ABITestBytesCasting.arc56_draft.json index 3c7a8dd6e..f827d996f 100644 --- a/tests/contracts/artifacts/ABITestBytesCasting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBytesCasting.arc56_draft.json @@ -65,352 +65,355 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1199, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1199, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1199, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1199, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1199, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1199, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1199, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1199, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1199, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1200, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1200, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1200, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 35, - "source": 1200, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 1200, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 1200, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 1200, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 1200, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 1200, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 47, - "source": 1201, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 48, - "source": 1201, - "pc": [ - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 49, - "source": 1201, - "pc": [ - 68 - ] - }, - { - "teal": 50, - "source": 1201, - "pc": [ - 69 - ] - }, - { - "teal": 51, - "source": 1201, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 52, - "source": 1201, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 53, - "source": 1201, - "pc": [ - 75 - ] - }, - { - "teal": 54, - "source": 1201, - "pc": [ - 76 - ] - }, - { - "teal": 55, - "source": 1201, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 56, - "source": 1200, - "pc": [ - 80 - ] - }, - { - "teal": 59, - "source": 1199, - "pc": [ - 81 - ] - }, - { - "teal": 60, - "source": 1199, - "pc": [ - 82 - ] - }, - { - "teal": 63, - "source": 1199, - "pc": [ - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 64, - "source": 1199, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 65, - "source": 1199, - "pc": [ - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 68, - "source": 1199, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 96 - ] - }, - { - "teal": 71, - "source": 1199, - "pc": [ - 97, - 98, - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 72, - "source": 1199, - "pc": [ - 103, - 104, - 105 - ] - }, - { - "teal": 73, - "source": 1199, - "pc": [ - 106, - 107, - 108, - 109 - ] - }, - { - "teal": 76, - "source": 1199, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 110 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1199, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1199, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1199, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1199, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1199, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1199, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1199, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1199, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1199, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1200, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1200, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1200, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 35, + "source": 1200, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 1200, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 1200, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 1200, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 1200, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 1200, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 47, + "source": 1201, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 48, + "source": 1201, + "pc": [ + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 49, + "source": 1201, + "pc": [ + 68 + ] + }, + { + "teal": 50, + "source": 1201, + "pc": [ + 69 + ] + }, + { + "teal": 51, + "source": 1201, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 52, + "source": 1201, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 53, + "source": 1201, + "pc": [ + 75 + ] + }, + { + "teal": 54, + "source": 1201, + "pc": [ + 76 + ] + }, + { + "teal": 55, + "source": 1201, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 56, + "source": 1200, + "pc": [ + 80 + ] + }, + { + "teal": 59, + "source": 1199, + "pc": [ + 81 + ] + }, + { + "teal": 60, + "source": 1199, + "pc": [ + 82 + ] + }, + { + "teal": 63, + "source": 1199, + "pc": [ + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 64, + "source": 1199, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 65, + "source": 1199, + "pc": [ + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 68, + "source": 1199, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 96 + ] + }, + { + "teal": 71, + "source": 1199, + "pc": [ + 97, + 98, + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 72, + "source": 1199, + "pc": [ + 103, + 104, + 105 + ] + }, + { + "teal": 73, + "source": 1199, + "pc": [ + 106, + 107, + 108, + 109 + ] + }, + { + "teal": 76, + "source": 1199, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 110 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc0Nhc3RpbmcoYnl0ZVtdKWJ5dGVbMl0KKmFiaV9yb3V0ZV9ieXRlc0Nhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXQoJY2FsbHN1YiBieXRlc0Nhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc0Nhc3RpbmcoYTogYnl0ZXMpOiBieXRlczwyPgpieXRlc0Nhc3Rpbmc6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIwMQoJLy8gcmV0dXJuIDxieXRlczwyPj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJ5dGVzCglieXRlIDB4MDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYnl0ZXNDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc0Nhc3RpbmcoYnl0ZVtdKWJ5dGVbMl0KKmFiaV9yb3V0ZV9ieXRlc0Nhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IGJ5dGVbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXQoJY2FsbHN1YiBieXRlc0Nhc3RpbmcKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc0Nhc3RpbmcoYTogYnl0ZXMpOiBieXRlczwyPgpieXRlc0Nhc3Rpbmc6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIwMQoJLy8gcmV0dXJuIDxieXRlczwyPj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IGJ5dGVzCglieXRlIDB4MDAwMAoJY29uY2F0CglkdXAKCWV4dHJhY3QgMiAwCglieXRlIDB4CgliPT0KCWFzc2VydAoJZXh0cmFjdCAwIDIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImJ5dGVzQ2FzdGluZyhieXRlW10pYnl0ZVsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYnl0ZXNDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestBytesReturn.approval.teal b/tests/contracts/artifacts/ABITestBytesReturn.approval.teal index 567c354bc..448f08592 100644 --- a/tests/contracts/artifacts/ABITestBytesReturn.approval.teal +++ b/tests/contracts/artifacts/ABITestBytesReturn.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestBytesReturn.arc32.json b/tests/contracts/artifacts/ABITestBytesReturn.arc32.json index 5b71ed0ab..b69ff2566 100644 --- a/tests/contracts/artifacts/ABITestBytesReturn.arc32.json +++ b/tests/contracts/artifacts/ABITestBytesReturn.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc1JldHVybigpYnl0ZVtdCiphYmlfcm91dGVfYnl0ZXNSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnl0ZXNSZXR1cm4oKWJ5dGVbXQoJY2FsbHN1YiBieXRlc1JldHVybgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc1JldHVybigpOiBieXRlcwpieXRlc1JldHVybjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTI2CgkvLyByZXR1cm4gJ2Zvbyc7CglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJieXRlc1JldHVybigpYnl0ZVtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ieXRlc1JldHVybgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc1JldHVybigpYnl0ZVtdCiphYmlfcm91dGVfYnl0ZXNSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnl0ZXNSZXR1cm4oKWJ5dGVbXQoJY2FsbHN1YiBieXRlc1JldHVybgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc1JldHVybigpOiBieXRlcwpieXRlc1JldHVybjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTI2CgkvLyByZXR1cm4gJ2Zvbyc7CglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJieXRlc1JldHVybigpYnl0ZVtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ieXRlc1JldHVybgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestBytesReturn.arc56_draft.json b/tests/contracts/artifacts/ABITestBytesReturn.arc56_draft.json index edcf303af..72ba5076c 100644 --- a/tests/contracts/artifacts/ABITestBytesReturn.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestBytesReturn.arc56_draft.json @@ -60,317 +60,320 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1124, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1124, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1124, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1124, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1124, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1124, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1124, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1124, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1124, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1125, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1125, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1125, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1125, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1125, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1125, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 1125, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 1125, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 1125, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 1125, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 1125, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 1125, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1125, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 49, - "source": 1126, - "pc": [ - 64, - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 50, - "source": 1125, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 1124, - "pc": [ - 70 - ] - }, - { - "teal": 54, - "source": 1124, - "pc": [ - 71 - ] - }, - { - "teal": 57, - "source": 1124, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 58, - "source": 1124, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 59, - "source": 1124, - "pc": [ - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 62, - "source": 1124, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 85 - ] - }, - { - "teal": 65, - "source": 1124, - "pc": [ - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 66, - "source": 1124, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 67, - "source": 1124, - "pc": [ - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 70, - "source": 1124, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 99 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1124, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1124, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1124, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1124, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1124, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1124, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1124, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1124, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1124, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1125, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1125, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1125, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1125, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1125, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1125, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 1125, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 1125, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 1125, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 1125, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 1125, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 1125, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1125, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 49, + "source": 1126, + "pc": [ + 64, + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 50, + "source": 1125, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 1124, + "pc": [ + 70 + ] + }, + { + "teal": 54, + "source": 1124, + "pc": [ + 71 + ] + }, + { + "teal": 57, + "source": 1124, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 58, + "source": 1124, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 59, + "source": 1124, + "pc": [ + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 62, + "source": 1124, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 85 + ] + }, + { + "teal": 65, + "source": 1124, + "pc": [ + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 66, + "source": 1124, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 67, + "source": 1124, + "pc": [ + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 70, + "source": 1124, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 99 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc1JldHVybigpYnl0ZVtdCiphYmlfcm91dGVfYnl0ZXNSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnl0ZXNSZXR1cm4oKWJ5dGVbXQoJY2FsbHN1YiBieXRlc1JldHVybgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc1JldHVybigpOiBieXRlcwpieXRlc1JldHVybjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTI2CgkvLyByZXR1cm4gJ2Zvbyc7CglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJieXRlc1JldHVybigpYnl0ZVtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ieXRlc1JldHVybgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBieXRlc1JldHVybigpYnl0ZVtdCiphYmlfcm91dGVfYnl0ZXNSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnl0ZXNSZXR1cm4oKWJ5dGVbXQoJY2FsbHN1YiBieXRlc1JldHVybgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBieXRlc1JldHVybigpOiBieXRlcwpieXRlc1JldHVybjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTI2CgkvLyByZXR1cm4gJ2Zvbyc7CglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJieXRlc1JldHVybigpYnl0ZVtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ieXRlc1JldHVybgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestCastBytesFunction.approval.teal b/tests/contracts/artifacts/ABITestCastBytesFunction.approval.teal index 9369c50db..e59110557 100644 --- a/tests/contracts/artifacts/ABITestCastBytesFunction.approval.teal +++ b/tests/contracts/artifacts/ABITestCastBytesFunction.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestCastBytesFunction.arc32.json b/tests/contracts/artifacts/ABITestCastBytesFunction.arc32.json index 1485e5fda..6e16b8f83 100644 --- a/tests/contracts/artifacts/ABITestCastBytesFunction.arc32.json +++ b/tests/contracts/artifacts/ABITestCastBytesFunction.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KCWNhbGxzdWIgY2FzdEJ5dGVzRnVuY3Rpb24KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPgpjYXN0Qnl0ZXNGdW5jdGlvbjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDQ3CgkvLyByZXR1cm4gY2FzdEJ5dGVzPFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+PihoZXgoJzB4MDEwMjAzJykpOwoJYnl0ZSAweDAxMDIwMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2FzdEJ5dGVzRnVuY3Rpb24oKXVpbnQ4WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KCWNhbGxzdWIgY2FzdEJ5dGVzRnVuY3Rpb24KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPgpjYXN0Qnl0ZXNGdW5jdGlvbjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDQ3CgkvLyByZXR1cm4gY2FzdEJ5dGVzPFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+PihoZXgoJzB4MDEwMjAzJykpOwoJYnl0ZSAweDAxMDIwMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2FzdEJ5dGVzRnVuY3Rpb24oKXVpbnQ4WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestCastBytesFunction.arc56_draft.json b/tests/contracts/artifacts/ABITestCastBytesFunction.arc56_draft.json index a3f1a4cc5..7b5430190 100644 --- a/tests/contracts/artifacts/ABITestCastBytesFunction.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestCastBytesFunction.arc56_draft.json @@ -60,273 +60,276 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1045, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1045, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1045, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1045, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1045, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1045, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1045, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1045, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1045, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1046, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1046, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1046, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1046, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1046, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1046, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1046, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 43, - "source": 1047, - "pc": [ - 56, - 57, - 58, - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1046, - "pc": [ - 61 - ] - }, - { - "teal": 47, - "source": 1045, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 1045, - "pc": [ - 63 - ] - }, - { - "teal": 51, - "source": 1045, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 52, - "source": 1045, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 53, - "source": 1045, - "pc": [ - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 56, - "source": 1045, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 77 - ] - }, - { - "teal": 59, - "source": 1045, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 60, - "source": 1045, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 61, - "source": 1045, - "pc": [ - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 64, - "source": 1045, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 91 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1045, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1045, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1045, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1045, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1045, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1045, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1045, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1045, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1045, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1046, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1046, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1046, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1046, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1046, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1046, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1046, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 43, + "source": 1047, + "pc": [ + 56, + 57, + 58, + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1046, + "pc": [ + 61 + ] + }, + { + "teal": 47, + "source": 1045, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 1045, + "pc": [ + 63 + ] + }, + { + "teal": 51, + "source": 1045, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 52, + "source": 1045, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 53, + "source": 1045, + "pc": [ + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 56, + "source": 1045, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 77 + ] + }, + { + "teal": 59, + "source": 1045, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 60, + "source": 1045, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 61, + "source": 1045, + "pc": [ + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 64, + "source": 1045, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 91 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KCWNhbGxzdWIgY2FzdEJ5dGVzRnVuY3Rpb24KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPgpjYXN0Qnl0ZXNGdW5jdGlvbjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDQ3CgkvLyByZXR1cm4gY2FzdEJ5dGVzPFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+PihoZXgoJzB4MDEwMjAzJykpOwoJYnl0ZSAweDAxMDIwMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2FzdEJ5dGVzRnVuY3Rpb24oKXVpbnQ4WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBjYXN0Qnl0ZXNGdW5jdGlvbigpdWludDhbM10KCWNhbGxzdWIgY2FzdEJ5dGVzRnVuY3Rpb24KCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYXN0Qnl0ZXNGdW5jdGlvbigpOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPgpjYXN0Qnl0ZXNGdW5jdGlvbjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDQ3CgkvLyByZXR1cm4gY2FzdEJ5dGVzPFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+PihoZXgoJzB4MDEwMjAzJykpOwoJYnl0ZSAweDAxMDIwMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2FzdEJ5dGVzRnVuY3Rpb24oKXVpbnQ4WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jYXN0Qnl0ZXNGdW5jdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.approval.teal b/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.approval.teal index 8297e007b..32233d028 100644 --- a/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc32.json b/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc32.json index 312efa24d..9746a497f 100644 --- a/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZToKCS8vIGFzYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCgljYWxsc3ViIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUKCWludCAxCglyZXR1cm4KCi8vIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUoYXNhOiBBc3NldElEKTogdm9pZApjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlOgoJcHJvdG8gMSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3MwoJLy8gbzogVDcgPSB7IGZvbzogdGhpcy5hcHAuYWRkcmVzcyB9CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIG86IFQ3CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNzUKCS8vIGFzc2VydCghby5mb28uaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIDAgLy8gbzogVDcKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIGFzYTogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglzd2FwCglwb3AKCSEKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZSh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZToKCS8vIGFzYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCgljYWxsc3ViIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUKCWludCAxCglyZXR1cm4KCi8vIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUoYXNhOiBBc3NldElEKTogdm9pZApjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlOgoJcHJvdG8gMSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3MwoJLy8gbzogVDcgPSB7IGZvbzogdGhpcy5hcHAuYWRkcmVzcyB9CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIG86IFQ3CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNzUKCS8vIGFzc2VydCghby5mb28uaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIDAgLy8gbzogVDcKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIGFzYTogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglzd2FwCglwb3AKCSEKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZSh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc56_draft.json index bfd4e64f0..88d067376 100644 --- a/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestChainedPropertyAfterTuple.arc56_draft.json @@ -65,337 +65,340 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1171, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1171, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1171, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1171, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1171, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1171, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1171, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1171, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1171, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1172, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 1172, - "pc": [ - 43 - ] - }, - { - "teal": 32, - "source": 1172, - "pc": [ - 44, - 45, - 46 - ] - }, - { - "teal": 33, - "source": 1172, - "pc": [ - 47 - ] - }, - { - "teal": 34, - "source": 1172, - "pc": [ - 48 - ] - }, - { - "teal": 38, - "source": 1172, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 41, - "source": 1172, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 45, - "source": 1173, - "pc": [ - 54, - 55 - ] - }, - { - "teal": 46, - "source": 1173, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 50, - "source": 1175, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 51, - "source": 1175, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 52, - "source": 1175, - "pc": [ - 63, - 64 - ] - }, - { - "teal": 53, - "source": 1175, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 54, - "source": 1175, - "pc": [ - 67 - ] - }, - { - "teal": 55, - "source": 1175, - "pc": [ - 68 - ] - }, - { - "teal": 56, - "source": 1175, - "pc": [ - 69 - ] - }, - { - "teal": 57, - "source": 1175, - "pc": [ - 70 - ] - }, - { - "teal": 58, - "source": 1172, - "pc": [ - 71 - ] - }, - { - "teal": 61, - "source": 1171, - "pc": [ - 72 - ] - }, - { - "teal": 62, - "source": 1171, - "pc": [ - 73 - ] - }, - { - "teal": 65, - "source": 1171, - "pc": [ - 74, - 75, - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 66, - "source": 1171, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 67, - "source": 1171, - "pc": [ - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 70, - "source": 1171, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 87 - ] - }, - { - "teal": 73, - "source": 1171, - "pc": [ - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 74, - "source": 1171, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 75, - "source": 1171, - "pc": [ - 97, - 98, - 99, - 100 - ] - }, - { - "teal": 78, - "source": 1171, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 101 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1171, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1171, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1171, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1171, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1171, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1171, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1171, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1171, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1171, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1172, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 1172, + "pc": [ + 43 + ] + }, + { + "teal": 32, + "source": 1172, + "pc": [ + 44, + 45, + 46 + ] + }, + { + "teal": 33, + "source": 1172, + "pc": [ + 47 + ] + }, + { + "teal": 34, + "source": 1172, + "pc": [ + 48 + ] + }, + { + "teal": 38, + "source": 1172, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 41, + "source": 1172, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 45, + "source": 1173, + "pc": [ + 54, + 55 + ] + }, + { + "teal": 46, + "source": 1173, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 50, + "source": 1175, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 51, + "source": 1175, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 52, + "source": 1175, + "pc": [ + 63, + 64 + ] + }, + { + "teal": 53, + "source": 1175, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 54, + "source": 1175, + "pc": [ + 67 + ] + }, + { + "teal": 55, + "source": 1175, + "pc": [ + 68 + ] + }, + { + "teal": 56, + "source": 1175, + "pc": [ + 69 + ] + }, + { + "teal": 57, + "source": 1175, + "pc": [ + 70 + ] + }, + { + "teal": 58, + "source": 1172, + "pc": [ + 71 + ] + }, + { + "teal": 61, + "source": 1171, + "pc": [ + 72 + ] + }, + { + "teal": 62, + "source": 1171, + "pc": [ + 73 + ] + }, + { + "teal": 65, + "source": 1171, + "pc": [ + 74, + 75, + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 66, + "source": 1171, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 67, + "source": 1171, + "pc": [ + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 70, + "source": 1171, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 87 + ] + }, + { + "teal": 73, + "source": 1171, + "pc": [ + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 74, + "source": 1171, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 75, + "source": 1171, + "pc": [ + 97, + 98, + 99, + 100 + ] + }, + { + "teal": 78, + "source": 1171, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 101 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZToKCS8vIGFzYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCgljYWxsc3ViIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUKCWludCAxCglyZXR1cm4KCi8vIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUoYXNhOiBBc3NldElEKTogdm9pZApjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlOgoJcHJvdG8gMSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3MwoJLy8gbzogVDcgPSB7IGZvbzogdGhpcy5hcHAuYWRkcmVzcyB9CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIG86IFQ3CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNzUKCS8vIGFzc2VydCghby5mb28uaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIDAgLy8gbzogVDcKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIGFzYTogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglzd2FwCglwb3AKCSEKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZSh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZToKCS8vIGFzYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlKHVpbnQ2NCl2b2lkCgljYWxsc3ViIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUKCWludCAxCglyZXR1cm4KCi8vIGNoYWluZWRQcm9wZXJ0eUFmdGVyVHVwbGUoYXNhOiBBc3NldElEKTogdm9pZApjaGFpbmVkUHJvcGVydHlBZnRlclR1cGxlOgoJcHJvdG8gMSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3MwoJLy8gbzogVDcgPSB7IGZvbzogdGhpcy5hcHAuYWRkcmVzcyB9CglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIG86IFQ3CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNzUKCS8vIGFzc2VydCghby5mb28uaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIDAgLy8gbzogVDcKCWV4dHJhY3QgMCAzMgoJZnJhbWVfZGlnIC0xIC8vIGFzYTogQXNzZXRJRAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglzd2FwCglwb3AKCSEKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZSh1aW50NjQpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2hhaW5lZFByb3BlcnR5QWZ0ZXJUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestCustomTypes.approval.teal b/tests/contracts/artifacts/ABITestCustomTypes.approval.teal index d2784cd9b..46f8c6914 100644 --- a/tests/contracts/artifacts/ABITestCustomTypes.approval.teal +++ b/tests/contracts/artifacts/ABITestCustomTypes.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestCustomTypes.arc32.json b/tests/contracts/artifacts/ABITestCustomTypes.arc32.json index 7ceaff27c..df226a7d5 100644 --- a/tests/contracts/artifacts/ABITestCustomTypes.arc32.json +++ b/tests/contracts/artifacts/ABITestCustomTypes.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjdXN0b21UeXBlcygpc3RyaW5nCiphYmlfcm91dGVfY3VzdG9tVHlwZXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY3VzdG9tVHlwZXMoKXN0cmluZwoJY2FsbHN1YiBjdXN0b21UeXBlcwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjdXN0b21UeXBlcygpOiBzdHJpbmcKY3VzdG9tVHlwZXM6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MzIKCS8vIGFhOiBDdXN0b21UeXBlID0gewoJLy8gICAgICAgZm9vOiAxLAoJLy8gICAgICAgYmFyOiAnSGk/JywKCS8vICAgICB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzQ4NjkzZgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGFhOiBDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjYzNwoJLy8gYWEuYmFyID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGFhOiBDdXN0b21UeXBlCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDBjNDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxCglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYWE6IEN1c3RvbVR5cGUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjM5CgkvLyByZXR1cm4gYWEuYmFyOwoJZnJhbWVfZGlnIDAgLy8gYWE6IEN1c3RvbVR5cGUKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJjdXN0b21UeXBlcygpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jdXN0b21UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjdXN0b21UeXBlcygpc3RyaW5nCiphYmlfcm91dGVfY3VzdG9tVHlwZXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY3VzdG9tVHlwZXMoKXN0cmluZwoJY2FsbHN1YiBjdXN0b21UeXBlcwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjdXN0b21UeXBlcygpOiBzdHJpbmcKY3VzdG9tVHlwZXM6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MzIKCS8vIGFhOiBDdXN0b21UeXBlID0gewoJLy8gICAgICAgZm9vOiAxLAoJLy8gICAgICAgYmFyOiAnSGk/JywKCS8vICAgICB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzQ4NjkzZgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGFhOiBDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjYzNwoJLy8gYWEuYmFyID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGFhOiBDdXN0b21UeXBlCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDBjNDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxCglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYWE6IEN1c3RvbVR5cGUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjM5CgkvLyByZXR1cm4gYWEuYmFyOwoJZnJhbWVfZGlnIDAgLy8gYWE6IEN1c3RvbVR5cGUKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJjdXN0b21UeXBlcygpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jdXN0b21UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestCustomTypes.arc56_draft.json b/tests/contracts/artifacts/ABITestCustomTypes.arc56_draft.json index 00b416a1f..578bf54ae 100644 --- a/tests/contracts/artifacts/ABITestCustomTypes.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestCustomTypes.arc56_draft.json @@ -60,1226 +60,1229 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 630, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 630, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 630, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 630, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 16, - "source": 630, - "pc": [ - 14 - ] - }, - { - "teal": 17, - "source": 630, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 630, - "pc": [ - 17 - ] - }, - { - "teal": 19, - "source": 630, - "pc": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ] - }, - { - "teal": 23, - "source": 630, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 44 - ] - }, - { - "teal": 28, - "source": 631, - "pc": [ - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 31, - "source": 631, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 32, - "source": 631, - "pc": [ - 54 - ] - }, - { - "teal": 33, - "source": 631, - "pc": [ - 55 - ] - }, - { - "teal": 34, - "source": 631, - "pc": [ - 56 - ] - }, - { - "teal": 35, - "source": 631, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 36, - "source": 631, - "pc": [ - 60 - ] - }, - { - "teal": 37, - "source": 631, - "pc": [ - 61 - ] - }, - { - "teal": 38, - "source": 631, - "pc": [ - 62 - ] - }, - { - "teal": 39, - "source": 631, - "pc": [ - 63 - ] - }, - { - "teal": 40, - "source": 631, - "pc": [ - 64 - ] - }, - { - "teal": 41, - "source": 631, - "pc": [ - 65 - ] - }, - { - "teal": 45, - "source": 631, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 631, - "pc": [ - 69 - ] - }, - { - "teal": 55, - "source": 632, - "pc": [ - 70 - ] - }, - { - "teal": 56, - "source": 632, - "pc": [ - 71 - ] - }, - { - "teal": 57, - "source": 632, - "pc": [ - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 58, - "source": 633, - "pc": [ - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 59, - "source": 633, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 60, - "source": 634, - "pc": [ - 83, - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 61, - "source": 634, - "pc": [ - 90, - 91, - 92 - ] - }, - { - "teal": 62, - "source": 632, - "pc": [ - 93 - ] - }, - { - "teal": 63, - "source": 632, - "pc": [ - 94 - ] - }, - { - "teal": 64, - "source": 632, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 68, - "source": 637, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 69, - "source": 637, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 70, - "source": 637, - "pc": [ - 101 - ] - }, - { - "teal": 71, - "source": 637, - "pc": [ - 102 - ] - }, - { - "teal": 72, - "source": 637, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 73, - "source": 637, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 74, - "source": 637, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 75, - "source": 637, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 76, - "source": 637, - "pc": [ - 111 - ] - }, - { - "teal": 77, - "source": 637, - "pc": [ - 112 - ] - }, - { - "teal": 78, - "source": 637, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 79, - "source": 637, - "pc": [ - 115 - ] - }, - { - "teal": 80, - "source": 637, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 81, - "source": 637, - "pc": [ - 118 - ] - }, - { - "teal": 82, - "source": 637, - "pc": [ - 119 - ] - }, - { - "teal": 83, - "source": 637, - "pc": [ - 120 - ] - }, - { - "teal": 84, - "source": 637, - "pc": [ - 121 - ] - }, - { - "teal": 85, - "source": 637, - "pc": [ - 122 - ] - }, - { - "teal": 86, - "source": 637, - "pc": [ - 123 - ] - }, - { - "teal": 87, - "source": 637, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 88, - "source": 637, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 89, - "source": 637, - "pc": [ - 128 - ] - }, - { - "teal": 90, - "source": 637, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 91, - "source": 637, - "pc": [ - 131 - ] - }, - { - "teal": 92, - "source": 637, - "pc": [ - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 93, - "source": 637, - "pc": [ - 148 - ] - }, - { - "teal": 94, - "source": 637, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 95, - "source": 637, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 96, - "source": 637, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 97, - "source": 637, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 98, - "source": 637, - "pc": [ - 157 - ] - }, - { - "teal": 99, - "source": 637, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 100, - "source": 637, - "pc": [ - 160 - ] - }, - { - "teal": 101, - "source": 637, - "pc": [ - 161 - ] - }, - { - "teal": 102, - "source": 637, - "pc": [ - 162 - ] - }, - { - "teal": 103, - "source": 637, - "pc": [ - 163 - ] - }, - { - "teal": 104, - "source": 637, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 105, - "source": 637, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 106, - "source": 637, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 107, - "source": 637, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 111, - "source": 639, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 112, - "source": 639, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 113, - "source": 639, - "pc": [ - 177 - ] - }, - { - "teal": 114, - "source": 639, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 115, - "source": 639, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 116, - "source": 639, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 117, - "source": 639, - "pc": [ - 184 - ] - }, - { - "teal": 118, - "source": 639, - "pc": [ - 185 - ] - }, - { - "teal": 119, - "source": 639, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 120, - "source": 639, - "pc": [ - 188 - ] - }, - { - "teal": 121, - "source": 639, - "pc": [ - 189 - ] - }, - { - "teal": 122, - "source": 639, - "pc": [ - 190 - ] - }, - { - "teal": 123, - "source": 639, - "pc": [ - 191 - ] - }, - { - "teal": 124, - "source": 639, - "pc": [ - 192 - ] - }, - { - "teal": 125, - "source": 639, - "pc": [ - 193 - ] - }, - { - "teal": 126, - "source": 639, - "pc": [ - 194 - ] - }, - { - "teal": 127, - "source": 639, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 130, - "source": 631, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 131, - "source": 631, - "pc": [ - 200 - ] - }, - { - "teal": 134, - "source": 630, - "pc": [ - 201 - ] - }, - { - "teal": 135, - "source": 630, - "pc": [ - 202 - ] - }, - { - "teal": 138, - "source": 630, - "pc": [ - 203, - 204, - 205, - 206, - 207, - 208 - ] - }, - { - "teal": 139, - "source": 630, - "pc": [ - 209, - 210, - 211 - ] - }, - { - "teal": 140, - "source": 630, - "pc": [ - 212, - 213, - 214, - 215 - ] - }, - { - "teal": 143, - "source": 630, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 216 - ] - }, - { - "teal": 146, - "source": 630, - "pc": [ - 217, - 218, - 219, - 220, - 221, - 222 - ] - }, - { - "teal": 147, - "source": 630, - "pc": [ - 223, - 224, - 225 - ] - }, - { - "teal": 148, - "source": 630, - "pc": [ - 226, - 227, - 228, - 229 - ] - }, - { - "teal": 151, - "source": 630, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 230 - ] - }, - { - "teal": 154, - "source": 630, - "pc": [ - 231, - 232, - 233 - ] - }, - { - "teal": 155, - "source": 630, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 156, - "source": 630, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 157, - "source": 630, - "pc": [ - 238 - ] - }, - { - "teal": 158, - "source": 630, - "pc": [ - 239, - 240 - ] - }, - { - "teal": 159, - "source": 630, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 160, - "source": 630, - "pc": [ - 243 - ] - }, - { - "teal": 163, - "source": 630, - "pc": [ - 244, - 245, - 246 - ] - }, - { - "teal": 164, - "source": 630, - "pc": [ - 247, - 248 - ] - }, - { - "teal": 165, - "source": 630, - "pc": [ - 249, - 250 - ] - }, - { - "teal": 166, - "source": 630, - "pc": [ - 251 - ] - }, - { - "teal": 167, - "source": 630, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 168, - "source": 630, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 169, - "source": 630, - "pc": [ - 256 - ] - }, - { - "teal": 170, - "source": 630, - "pc": [ - 257 - ] - }, - { - "teal": 171, - "source": 630, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 172, - "source": 630, - "pc": [ - 260 - ] - }, - { - "teal": 173, - "source": 630, - "pc": [ - 261 - ] - }, - { - "teal": 174, - "source": 630, - "pc": [ - 262 - ] - }, - { - "teal": 175, - "source": 630, - "pc": [ - 263, - 264, - 265 - ] - }, - { - "teal": 176, - "source": 630, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 177, - "source": 630, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 178, - "source": 630, - "pc": [ - 270 - ] - }, - { - "teal": 179, - "source": 630, - "pc": [ - 271 - ] - }, - { - "teal": 180, - "source": 630, - "pc": [ - 272, - 273 - ] - }, - { - "teal": 181, - "source": 630, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 182, - "source": 630, - "pc": [ - 276, - 277 - ] - }, - { - "teal": 183, - "source": 630, - "pc": [ - 278, - 279 - ] - }, - { - "teal": 184, - "source": 630, - "pc": [ - 280 - ] - }, - { - "teal": 187, - "source": 630, - "pc": [ - 281, - 282 - ] - }, - { - "teal": 188, - "source": 630, - "pc": [ - 283 - ] - }, - { - "teal": 189, - "source": 630, - "pc": [ - 284, - 285 - ] - }, - { - "teal": 190, - "source": 630, - "pc": [ - 286 - ] - }, - { - "teal": 191, - "source": 630, - "pc": [ - 287, - 288, - 289 - ] - }, - { - "teal": 192, - "source": 630, - "pc": [ - 290, - 291 - ] - }, - { - "teal": 193, - "source": 630, - "pc": [ - 292 - ] - }, - { - "teal": 194, - "source": 630, - "pc": [ - 293, - 294 - ] - }, - { - "teal": 195, - "source": 630, - "pc": [ - 295 - ] - }, - { - "teal": 196, - "source": 630, - "pc": [ - 296, - 297 - ] - }, - { - "teal": 197, - "source": 630, - "pc": [ - 298, - 299, - 300 - ] - }, - { - "teal": 200, - "source": 630, - "pc": [ - 301, - 302 - ] - }, - { - "teal": 201, - "source": 630, - "pc": [ - 303, - 304 - ] - }, - { - "teal": 202, - "source": 630, - "pc": [ - 305 - ] - }, - { - "teal": 203, - "source": 630, - "pc": [ - 306 - ] - }, - { - "teal": 204, - "source": 630, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 207, - "source": 630, - "pc": [ - 309 - ] - }, - { - "teal": 208, - "source": 630, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 209, - "source": 630, - "pc": [ - 312 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 630, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 630, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 630, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 630, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 16, + "source": 630, + "pc": [ + 14 + ] + }, + { + "teal": 17, + "source": 630, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 630, + "pc": [ + 17 + ] + }, + { + "teal": 19, + "source": 630, + "pc": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "teal": 23, + "source": 630, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 44 + ] + }, + { + "teal": 28, + "source": 631, + "pc": [ + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 31, + "source": 631, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 32, + "source": 631, + "pc": [ + 54 + ] + }, + { + "teal": 33, + "source": 631, + "pc": [ + 55 + ] + }, + { + "teal": 34, + "source": 631, + "pc": [ + 56 + ] + }, + { + "teal": 35, + "source": 631, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 36, + "source": 631, + "pc": [ + 60 + ] + }, + { + "teal": 37, + "source": 631, + "pc": [ + 61 + ] + }, + { + "teal": 38, + "source": 631, + "pc": [ + 62 + ] + }, + { + "teal": 39, + "source": 631, + "pc": [ + 63 + ] + }, + { + "teal": 40, + "source": 631, + "pc": [ + 64 + ] + }, + { + "teal": 41, + "source": 631, + "pc": [ + 65 + ] + }, + { + "teal": 45, + "source": 631, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 631, + "pc": [ + 69 + ] + }, + { + "teal": 55, + "source": 632, + "pc": [ + 70 + ] + }, + { + "teal": 56, + "source": 632, + "pc": [ + 71 + ] + }, + { + "teal": 57, + "source": 632, + "pc": [ + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 58, + "source": 633, + "pc": [ + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 59, + "source": 633, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 60, + "source": 634, + "pc": [ + 83, + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 61, + "source": 634, + "pc": [ + 90, + 91, + 92 + ] + }, + { + "teal": 62, + "source": 632, + "pc": [ + 93 + ] + }, + { + "teal": 63, + "source": 632, + "pc": [ + 94 + ] + }, + { + "teal": 64, + "source": 632, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 68, + "source": 637, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 69, + "source": 637, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 70, + "source": 637, + "pc": [ + 101 + ] + }, + { + "teal": 71, + "source": 637, + "pc": [ + 102 + ] + }, + { + "teal": 72, + "source": 637, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 73, + "source": 637, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 74, + "source": 637, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 75, + "source": 637, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 76, + "source": 637, + "pc": [ + 111 + ] + }, + { + "teal": 77, + "source": 637, + "pc": [ + 112 + ] + }, + { + "teal": 78, + "source": 637, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 79, + "source": 637, + "pc": [ + 115 + ] + }, + { + "teal": 80, + "source": 637, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 81, + "source": 637, + "pc": [ + 118 + ] + }, + { + "teal": 82, + "source": 637, + "pc": [ + 119 + ] + }, + { + "teal": 83, + "source": 637, + "pc": [ + 120 + ] + }, + { + "teal": 84, + "source": 637, + "pc": [ + 121 + ] + }, + { + "teal": 85, + "source": 637, + "pc": [ + 122 + ] + }, + { + "teal": 86, + "source": 637, + "pc": [ + 123 + ] + }, + { + "teal": 87, + "source": 637, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 88, + "source": 637, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 89, + "source": 637, + "pc": [ + 128 + ] + }, + { + "teal": 90, + "source": 637, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 91, + "source": 637, + "pc": [ + 131 + ] + }, + { + "teal": 92, + "source": 637, + "pc": [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 93, + "source": 637, + "pc": [ + 148 + ] + }, + { + "teal": 94, + "source": 637, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 95, + "source": 637, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 96, + "source": 637, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 97, + "source": 637, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 98, + "source": 637, + "pc": [ + 157 + ] + }, + { + "teal": 99, + "source": 637, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 100, + "source": 637, + "pc": [ + 160 + ] + }, + { + "teal": 101, + "source": 637, + "pc": [ + 161 + ] + }, + { + "teal": 102, + "source": 637, + "pc": [ + 162 + ] + }, + { + "teal": 103, + "source": 637, + "pc": [ + 163 + ] + }, + { + "teal": 104, + "source": 637, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 105, + "source": 637, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 106, + "source": 637, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 107, + "source": 637, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 111, + "source": 639, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 112, + "source": 639, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 113, + "source": 639, + "pc": [ + 177 + ] + }, + { + "teal": 114, + "source": 639, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 115, + "source": 639, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 116, + "source": 639, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 117, + "source": 639, + "pc": [ + 184 + ] + }, + { + "teal": 118, + "source": 639, + "pc": [ + 185 + ] + }, + { + "teal": 119, + "source": 639, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 120, + "source": 639, + "pc": [ + 188 + ] + }, + { + "teal": 121, + "source": 639, + "pc": [ + 189 + ] + }, + { + "teal": 122, + "source": 639, + "pc": [ + 190 + ] + }, + { + "teal": 123, + "source": 639, + "pc": [ + 191 + ] + }, + { + "teal": 124, + "source": 639, + "pc": [ + 192 + ] + }, + { + "teal": 125, + "source": 639, + "pc": [ + 193 + ] + }, + { + "teal": 126, + "source": 639, + "pc": [ + 194 + ] + }, + { + "teal": 127, + "source": 639, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 130, + "source": 631, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 131, + "source": 631, + "pc": [ + 200 + ] + }, + { + "teal": 134, + "source": 630, + "pc": [ + 201 + ] + }, + { + "teal": 135, + "source": 630, + "pc": [ + 202 + ] + }, + { + "teal": 138, + "source": 630, + "pc": [ + 203, + 204, + 205, + 206, + 207, + 208 + ] + }, + { + "teal": 139, + "source": 630, + "pc": [ + 209, + 210, + 211 + ] + }, + { + "teal": 140, + "source": 630, + "pc": [ + 212, + 213, + 214, + 215 + ] + }, + { + "teal": 143, + "source": 630, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 216 + ] + }, + { + "teal": 146, + "source": 630, + "pc": [ + 217, + 218, + 219, + 220, + 221, + 222 + ] + }, + { + "teal": 147, + "source": 630, + "pc": [ + 223, + 224, + 225 + ] + }, + { + "teal": 148, + "source": 630, + "pc": [ + 226, + 227, + 228, + 229 + ] + }, + { + "teal": 151, + "source": 630, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 230 + ] + }, + { + "teal": 154, + "source": 630, + "pc": [ + 231, + 232, + 233 + ] + }, + { + "teal": 155, + "source": 630, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 156, + "source": 630, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 157, + "source": 630, + "pc": [ + 238 + ] + }, + { + "teal": 158, + "source": 630, + "pc": [ + 239, + 240 + ] + }, + { + "teal": 159, + "source": 630, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 160, + "source": 630, + "pc": [ + 243 + ] + }, + { + "teal": 163, + "source": 630, + "pc": [ + 244, + 245, + 246 + ] + }, + { + "teal": 164, + "source": 630, + "pc": [ + 247, + 248 + ] + }, + { + "teal": 165, + "source": 630, + "pc": [ + 249, + 250 + ] + }, + { + "teal": 166, + "source": 630, + "pc": [ + 251 + ] + }, + { + "teal": 167, + "source": 630, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 168, + "source": 630, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 169, + "source": 630, + "pc": [ + 256 + ] + }, + { + "teal": 170, + "source": 630, + "pc": [ + 257 + ] + }, + { + "teal": 171, + "source": 630, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 172, + "source": 630, + "pc": [ + 260 + ] + }, + { + "teal": 173, + "source": 630, + "pc": [ + 261 + ] + }, + { + "teal": 174, + "source": 630, + "pc": [ + 262 + ] + }, + { + "teal": 175, + "source": 630, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 176, + "source": 630, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 177, + "source": 630, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 178, + "source": 630, + "pc": [ + 270 + ] + }, + { + "teal": 179, + "source": 630, + "pc": [ + 271 + ] + }, + { + "teal": 180, + "source": 630, + "pc": [ + 272, + 273 + ] + }, + { + "teal": 181, + "source": 630, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 182, + "source": 630, + "pc": [ + 276, + 277 + ] + }, + { + "teal": 183, + "source": 630, + "pc": [ + 278, + 279 + ] + }, + { + "teal": 184, + "source": 630, + "pc": [ + 280 + ] + }, + { + "teal": 187, + "source": 630, + "pc": [ + 281, + 282 + ] + }, + { + "teal": 188, + "source": 630, + "pc": [ + 283 + ] + }, + { + "teal": 189, + "source": 630, + "pc": [ + 284, + 285 + ] + }, + { + "teal": 190, + "source": 630, + "pc": [ + 286 + ] + }, + { + "teal": 191, + "source": 630, + "pc": [ + 287, + 288, + 289 + ] + }, + { + "teal": 192, + "source": 630, + "pc": [ + 290, + 291 + ] + }, + { + "teal": 193, + "source": 630, + "pc": [ + 292 + ] + }, + { + "teal": 194, + "source": 630, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 195, + "source": 630, + "pc": [ + 295 + ] + }, + { + "teal": 196, + "source": 630, + "pc": [ + 296, + 297 + ] + }, + { + "teal": 197, + "source": 630, + "pc": [ + 298, + 299, + 300 + ] + }, + { + "teal": 200, + "source": 630, + "pc": [ + 301, + 302 + ] + }, + { + "teal": 201, + "source": 630, + "pc": [ + 303, + 304 + ] + }, + { + "teal": 202, + "source": 630, + "pc": [ + 305 + ] + }, + { + "teal": 203, + "source": 630, + "pc": [ + 306 + ] + }, + { + "teal": 204, + "source": 630, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 207, + "source": 630, + "pc": [ + 309 + ] + }, + { + "teal": 208, + "source": 630, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 209, + "source": 630, + "pc": [ + 312 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjdXN0b21UeXBlcygpc3RyaW5nCiphYmlfcm91dGVfY3VzdG9tVHlwZXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY3VzdG9tVHlwZXMoKXN0cmluZwoJY2FsbHN1YiBjdXN0b21UeXBlcwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjdXN0b21UeXBlcygpOiBzdHJpbmcKY3VzdG9tVHlwZXM6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MzIKCS8vIGFhOiBDdXN0b21UeXBlID0gewoJLy8gICAgICAgZm9vOiAxLAoJLy8gICAgICAgYmFyOiAnSGk/JywKCS8vICAgICB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzQ4NjkzZgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGFhOiBDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjYzNwoJLy8gYWEuYmFyID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGFhOiBDdXN0b21UeXBlCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDBjNDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxCglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYWE6IEN1c3RvbVR5cGUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjM5CgkvLyByZXR1cm4gYWEuYmFyOwoJZnJhbWVfZGlnIDAgLy8gYWE6IEN1c3RvbVR5cGUKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJjdXN0b21UeXBlcygpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jdXN0b21UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjdXN0b21UeXBlcygpc3RyaW5nCiphYmlfcm91dGVfY3VzdG9tVHlwZXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY3VzdG9tVHlwZXMoKXN0cmluZwoJY2FsbHN1YiBjdXN0b21UeXBlcwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjdXN0b21UeXBlcygpOiBzdHJpbmcKY3VzdG9tVHlwZXM6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MzIKCS8vIGFhOiBDdXN0b21UeXBlID0gewoJLy8gICAgICAgZm9vOiAxLAoJLy8gICAgICAgYmFyOiAnSGk/JywKCS8vICAgICB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzQ4NjkzZgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGFhOiBDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjYzNwoJLy8gYWEuYmFyID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGFhOiBDdXN0b21UeXBlCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDIKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDBjNDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxCglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYWE6IEN1c3RvbVR5cGUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjM5CgkvLyByZXR1cm4gYWEuYmFyOwoJZnJhbWVfZGlnIDAgLy8gYWE6IEN1c3RvbVR5cGUKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJjdXN0b21UeXBlcygpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jdXN0b21UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDisgusting.approval.teal b/tests/contracts/artifacts/ABITestDisgusting.approval.teal index b7144e8f2..c44ca7f0a 100644 --- a/tests/contracts/artifacts/ABITestDisgusting.approval.teal +++ b/tests/contracts/artifacts/ABITestDisgusting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDisgusting.arc32.json b/tests/contracts/artifacts/ABITestDisgusting.arc32.json index c2687931a..481ee88fe 100644 --- a/tests/contracts/artifacts/ABITestDisgusting.arc32.json +++ b/tests/contracts/artifacts/ABITestDisgusting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkaXNndXN0aW5nKCl1aW50NjQKKmFiaV9yb3V0ZV9kaXNndXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGRpc2d1c3RpbmcoKXVpbnQ2NAoJY2FsbHN1YiBkaXNndXN0aW5nCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGlzZ3VzdGluZygpOiB1aW50NjQKZGlzZ3VzdGluZzoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMwNAoJLy8gYTogU3RhdGljQXJyYXk8CgkvLyAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sCgkvLyAgICAgICAyCgkvLyAgICAgPiA9IFsKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExLCAyMl0sCgkvLyAgICAgICAgIDMzLAoJLy8gICAgICAgICBbNDQsIDU1XSwKCS8vICAgICAgICAgWwoJLy8gICAgICAgICAgIFs2NiwgNzddLAoJLy8gICAgICAgICAgIFs4OCwgOTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExMSwgMjIyXSwKCS8vICAgICAgICAgMzMzLAoJLy8gICAgICAgICBbNDQ0LCA1NTVdLAoJLy8gICAgICAgICBbCgkvLyAgICAgICAgICAgWzY2NiwgNzc3XSwKCS8vICAgICAgICAgICBbODg4LCA5OTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMTYwMDAwMDAwMDAwMDAwMDIxMDAyYzAwMDAwMDAwMDAwMDAwMzcwMDAwMDAwMDAwMDAwMDQyMDAwMDAwMDAwMDAwMDA0ZDAwMDAwMDAwMDAwMDAwNTgwMDAwMDAwMDAwMDAwMDYzMDA2ZjAwZGUwMDAwMDAwMDAwMDAwMTRkMDFiYzAwMDAwMDAwMDAwMDAyMmIwMDAwMDAwMDAwMDAwMjlhMDAwMDAwMDAwMDAwMDMwOTAwMDAwMDAwMDAwMDAzNzgwMDAwMDAwMDAwMDAwM2U3CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8ICAgICAgIFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCB1aW50NjQsIFt1aW50MTYsIHVpbnQ2NF0sIFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIDI+XSwgICAgICAgMiAgICAgPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozMjgKCS8vIGFbMV1bM11bMV0gPSBbODg4OCwgOTk5OV0KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PCAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sICAgICAgIDIgICAgID4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAyMmI4MDAwMDAwMDAwMDAwMjcwZgoJcmVwbGFjZTIgOTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMyOQoJLy8gcmV0dXJuIGFbMV1bM11bMV1bMF07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CglleHRyYWN0IDkyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImRpc2d1c3RpbmcoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGlzZ3VzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkaXNndXN0aW5nKCl1aW50NjQKKmFiaV9yb3V0ZV9kaXNndXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGRpc2d1c3RpbmcoKXVpbnQ2NAoJY2FsbHN1YiBkaXNndXN0aW5nCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGlzZ3VzdGluZygpOiB1aW50NjQKZGlzZ3VzdGluZzoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMwNAoJLy8gYTogU3RhdGljQXJyYXk8CgkvLyAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sCgkvLyAgICAgICAyCgkvLyAgICAgPiA9IFsKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExLCAyMl0sCgkvLyAgICAgICAgIDMzLAoJLy8gICAgICAgICBbNDQsIDU1XSwKCS8vICAgICAgICAgWwoJLy8gICAgICAgICAgIFs2NiwgNzddLAoJLy8gICAgICAgICAgIFs4OCwgOTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExMSwgMjIyXSwKCS8vICAgICAgICAgMzMzLAoJLy8gICAgICAgICBbNDQ0LCA1NTVdLAoJLy8gICAgICAgICBbCgkvLyAgICAgICAgICAgWzY2NiwgNzc3XSwKCS8vICAgICAgICAgICBbODg4LCA5OTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMTYwMDAwMDAwMDAwMDAwMDIxMDAyYzAwMDAwMDAwMDAwMDAwMzcwMDAwMDAwMDAwMDAwMDQyMDAwMDAwMDAwMDAwMDA0ZDAwMDAwMDAwMDAwMDAwNTgwMDAwMDAwMDAwMDAwMDYzMDA2ZjAwZGUwMDAwMDAwMDAwMDAwMTRkMDFiYzAwMDAwMDAwMDAwMDAyMmIwMDAwMDAwMDAwMDAwMjlhMDAwMDAwMDAwMDAwMDMwOTAwMDAwMDAwMDAwMDAzNzgwMDAwMDAwMDAwMDAwM2U3CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8ICAgICAgIFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCB1aW50NjQsIFt1aW50MTYsIHVpbnQ2NF0sIFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIDI+XSwgICAgICAgMiAgICAgPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozMjgKCS8vIGFbMV1bM11bMV0gPSBbODg4OCwgOTk5OV0KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PCAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sICAgICAgIDIgICAgID4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAyMmI4MDAwMDAwMDAwMDAwMjcwZgoJcmVwbGFjZTIgOTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMyOQoJLy8gcmV0dXJuIGFbMV1bM11bMV1bMF07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CglleHRyYWN0IDkyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImRpc2d1c3RpbmcoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGlzZ3VzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDisgusting.arc56_draft.json b/tests/contracts/artifacts/ABITestDisgusting.arc56_draft.json index 68a13d0e9..3ab8926c5 100644 --- a/tests/contracts/artifacts/ABITestDisgusting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDisgusting.arc56_draft.json @@ -60,481 +60,484 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 302, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 302, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 302, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 302, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 302, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 302, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 302, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 302, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 302, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 303, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 303, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 303, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 303, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 303, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 303, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 303, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 303, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 303, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 69, - "source": 307, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168 - ] - }, - { - "teal": 70, - "source": 304, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 74, - "source": 328, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 75, - "source": 328, - "pc": [ - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190 - ] - }, - { - "teal": 76, - "source": 328, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 77, - "source": 328, - "pc": [ - 193, - 194 - ] - }, - { - "teal": 81, - "source": 329, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 82, - "source": 329, - "pc": [ - 197, - 198, - 199 - ] - }, - { - "teal": 83, - "source": 329, - "pc": [ - 200 - ] - }, - { - "teal": 86, - "source": 303, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 87, - "source": 303, - "pc": [ - 203 - ] - }, - { - "teal": 90, - "source": 302, - "pc": [ - 204 - ] - }, - { - "teal": 91, - "source": 302, - "pc": [ - 205 - ] - }, - { - "teal": 94, - "source": 302, - "pc": [ - 206, - 207, - 208, - 209, - 210, - 211 - ] - }, - { - "teal": 95, - "source": 302, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 96, - "source": 302, - "pc": [ - 215, - 216, - 217, - 218 - ] - }, - { - "teal": 99, - "source": 302, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 219 - ] - }, - { - "teal": 102, - "source": 302, - "pc": [ - 220, - 221, - 222, - 223, - 224, - 225 - ] - }, - { - "teal": 103, - "source": 302, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 104, - "source": 302, - "pc": [ - 229, - 230, - 231, - 232 - ] - }, - { - "teal": 107, - "source": 302, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 233 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 302, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 302, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 302, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 302, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 302, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 302, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 302, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 302, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 302, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 303, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 303, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 303, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 303, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 303, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 303, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 303, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 303, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 303, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 69, + "source": 307, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168 + ] + }, + { + "teal": 70, + "source": 304, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 74, + "source": 328, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 75, + "source": 328, + "pc": [ + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190 + ] + }, + { + "teal": 76, + "source": 328, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 77, + "source": 328, + "pc": [ + 193, + 194 + ] + }, + { + "teal": 81, + "source": 329, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 82, + "source": 329, + "pc": [ + 197, + 198, + 199 + ] + }, + { + "teal": 83, + "source": 329, + "pc": [ + 200 + ] + }, + { + "teal": 86, + "source": 303, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 87, + "source": 303, + "pc": [ + 203 + ] + }, + { + "teal": 90, + "source": 302, + "pc": [ + 204 + ] + }, + { + "teal": 91, + "source": 302, + "pc": [ + 205 + ] + }, + { + "teal": 94, + "source": 302, + "pc": [ + 206, + 207, + 208, + 209, + 210, + 211 + ] + }, + { + "teal": 95, + "source": 302, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 96, + "source": 302, + "pc": [ + 215, + 216, + 217, + 218 + ] + }, + { + "teal": 99, + "source": 302, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 219 + ] + }, + { + "teal": 102, + "source": 302, + "pc": [ + 220, + 221, + 222, + 223, + 224, + 225 + ] + }, + { + "teal": 103, + "source": 302, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 104, + "source": 302, + "pc": [ + 229, + 230, + 231, + 232 + ] + }, + { + "teal": 107, + "source": 302, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 233 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkaXNndXN0aW5nKCl1aW50NjQKKmFiaV9yb3V0ZV9kaXNndXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGRpc2d1c3RpbmcoKXVpbnQ2NAoJY2FsbHN1YiBkaXNndXN0aW5nCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGlzZ3VzdGluZygpOiB1aW50NjQKZGlzZ3VzdGluZzoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMwNAoJLy8gYTogU3RhdGljQXJyYXk8CgkvLyAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sCgkvLyAgICAgICAyCgkvLyAgICAgPiA9IFsKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExLCAyMl0sCgkvLyAgICAgICAgIDMzLAoJLy8gICAgICAgICBbNDQsIDU1XSwKCS8vICAgICAgICAgWwoJLy8gICAgICAgICAgIFs2NiwgNzddLAoJLy8gICAgICAgICAgIFs4OCwgOTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExMSwgMjIyXSwKCS8vICAgICAgICAgMzMzLAoJLy8gICAgICAgICBbNDQ0LCA1NTVdLAoJLy8gICAgICAgICBbCgkvLyAgICAgICAgICAgWzY2NiwgNzc3XSwKCS8vICAgICAgICAgICBbODg4LCA5OTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMTYwMDAwMDAwMDAwMDAwMDIxMDAyYzAwMDAwMDAwMDAwMDAwMzcwMDAwMDAwMDAwMDAwMDQyMDAwMDAwMDAwMDAwMDA0ZDAwMDAwMDAwMDAwMDAwNTgwMDAwMDAwMDAwMDAwMDYzMDA2ZjAwZGUwMDAwMDAwMDAwMDAwMTRkMDFiYzAwMDAwMDAwMDAwMDAyMmIwMDAwMDAwMDAwMDAwMjlhMDAwMDAwMDAwMDAwMDMwOTAwMDAwMDAwMDAwMDAzNzgwMDAwMDAwMDAwMDAwM2U3CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8ICAgICAgIFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCB1aW50NjQsIFt1aW50MTYsIHVpbnQ2NF0sIFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIDI+XSwgICAgICAgMiAgICAgPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozMjgKCS8vIGFbMV1bM11bMV0gPSBbODg4OCwgOTk5OV0KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PCAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sICAgICAgIDIgICAgID4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAyMmI4MDAwMDAwMDAwMDAwMjcwZgoJcmVwbGFjZTIgOTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMyOQoJLy8gcmV0dXJuIGFbMV1bM11bMV1bMF07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CglleHRyYWN0IDkyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImRpc2d1c3RpbmcoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGlzZ3VzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkaXNndXN0aW5nKCl1aW50NjQKKmFiaV9yb3V0ZV9kaXNndXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGRpc2d1c3RpbmcoKXVpbnQ2NAoJY2FsbHN1YiBkaXNndXN0aW5nCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGlzZ3VzdGluZygpOiB1aW50NjQKZGlzZ3VzdGluZzoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMwNAoJLy8gYTogU3RhdGljQXJyYXk8CgkvLyAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sCgkvLyAgICAgICAyCgkvLyAgICAgPiA9IFsKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExLCAyMl0sCgkvLyAgICAgICAgIDMzLAoJLy8gICAgICAgICBbNDQsIDU1XSwKCS8vICAgICAgICAgWwoJLy8gICAgICAgICAgIFs2NiwgNzddLAoJLy8gICAgICAgICAgIFs4OCwgOTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICAgIFsKCS8vICAgICAgICAgWzExMSwgMjIyXSwKCS8vICAgICAgICAgMzMzLAoJLy8gICAgICAgICBbNDQ0LCA1NTVdLAoJLy8gICAgICAgICBbCgkvLyAgICAgICAgICAgWzY2NiwgNzc3XSwKCS8vICAgICAgICAgICBbODg4LCA5OTldLAoJLy8gICAgICAgICBdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMTYwMDAwMDAwMDAwMDAwMDIxMDAyYzAwMDAwMDAwMDAwMDAwMzcwMDAwMDAwMDAwMDAwMDQyMDAwMDAwMDAwMDAwMDA0ZDAwMDAwMDAwMDAwMDAwNTgwMDAwMDAwMDAwMDAwMDYzMDA2ZjAwZGUwMDAwMDAwMDAwMDAwMTRkMDFiYzAwMDAwMDAwMDAwMDAyMmIwMDAwMDAwMDAwMDAwMjlhMDAwMDAwMDAwMDAwMDMwOTAwMDAwMDAwMDAwMDAzNzgwMDAwMDAwMDAwMDAwM2U3CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8ICAgICAgIFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCB1aW50NjQsIFt1aW50MTYsIHVpbnQ2NF0sIFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIDI+XSwgICAgICAgMiAgICAgPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozMjgKCS8vIGFbMV1bM11bMV0gPSBbODg4OCwgOTk5OV0KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PCAgICAgICBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgdWludDY0LCBbdWludDE2LCB1aW50NjRdLCBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDI+LCAyPl0sICAgICAgIDIgICAgID4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAyMmI4MDAwMDAwMDAwMDAwMjcwZgoJcmVwbGFjZTIgOTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjMyOQoJLy8gcmV0dXJuIGFbMV1bM11bMV1bMF07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTwgICAgICAgW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIHVpbnQ2NCwgW3VpbnQxNiwgdWludDY0XSwgU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAyPiwgMj5dLCAgICAgICAyICAgICA+CglleHRyYWN0IDkyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImRpc2d1c3RpbmcoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZGlzZ3VzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.approval.teal b/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.approval.teal index 0402ce32c..06b78cdd4 100644 --- a/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc32.json b/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc32.json index f6096bec5..9cd147ee1 100644 --- a/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NPZkR5bmFtaWNFbGVtZW50SW5TdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogc3RyaW5nWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5KGE6IFN0YXRpY0FycmF5PHN0cmluZywgMz4pOiBzdHJpbmcKZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5OgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUxCgkvLyBpID0gYnRvaShpdG9iKDEpKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUyCgkvLyByZXR1cm4gYVtpXTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAgLy8gaW5pdGlhbCBvZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIKCSogLy8gYWNjICogMgoJKwoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NPZkR5bmFtaWNFbGVtZW50SW5TdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogc3RyaW5nWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5KGE6IFN0YXRpY0FycmF5PHN0cmluZywgMz4pOiBzdHJpbmcKZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5OgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUxCgkvLyBpID0gYnRvaShpdG9iKDEpKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUyCgkvLyByZXR1cm4gYVtpXTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAgLy8gaW5pdGlhbCBvZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIKCSogLy8gYWNjICogMgoJKwoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc56_draft.json index adc325b2e..826919b90 100644 --- a/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicAccessOfDynamicElementInStaticArray.arc56_draft.json @@ -65,504 +65,507 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 649, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 649, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 649, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 649, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 649, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 649, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 649, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 649, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 649, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 650, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 650, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 34, - "source": 650, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 650, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 650, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 650, - "pc": [ - 55 - ] - }, - { - "teal": 38, - "source": 650, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 39, - "source": 650, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 650, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 650, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 650, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 650, - "pc": [ - 63 - ] - }, - { - "teal": 44, - "source": 650, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 650, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 51, - "source": 650, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 55, - "source": 651, - "pc": [ - 70 - ] - }, - { - "teal": 56, - "source": 651, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 60, - "source": 652, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 61, - "source": 652, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 62, - "source": 652, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 63, - "source": 652, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 64, - "source": 652, - "pc": [ - 81 - ] - }, - { - "teal": 65, - "source": 652, - "pc": [ - 82 - ] - }, - { - "teal": 66, - "source": 652, - "pc": [ - 83 - ] - }, - { - "teal": 67, - "source": 652, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 68, - "source": 652, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 69, - "source": 652, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 70, - "source": 652, - "pc": [ - 90 - ] - }, - { - "teal": 71, - "source": 652, - "pc": [ - 91 - ] - }, - { - "teal": 72, - "source": 652, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 73, - "source": 652, - "pc": [ - 94 - ] - }, - { - "teal": 74, - "source": 652, - "pc": [ - 95 - ] - }, - { - "teal": 75, - "source": 652, - "pc": [ - 96 - ] - }, - { - "teal": 76, - "source": 652, - "pc": [ - 97 - ] - }, - { - "teal": 77, - "source": 652, - "pc": [ - 98 - ] - }, - { - "teal": 78, - "source": 652, - "pc": [ - 99 - ] - }, - { - "teal": 79, - "source": 652, - "pc": [ - 100 - ] - }, - { - "teal": 80, - "source": 652, - "pc": [ - 101, - 102, - 103 - ] - }, - { - "teal": 83, - "source": 650, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 84, - "source": 650, - "pc": [ - 106 - ] - }, - { - "teal": 87, - "source": 649, - "pc": [ - 107 - ] - }, - { - "teal": 88, - "source": 649, - "pc": [ - 108 - ] - }, - { - "teal": 91, - "source": 649, - "pc": [ - 109, - 110, - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 92, - "source": 649, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 93, - "source": 649, - "pc": [ - 118, - 119, - 120, - 121 - ] - }, - { - "teal": 96, - "source": 649, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 122 - ] - }, - { - "teal": 99, - "source": 649, - "pc": [ - 123, - 124, - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 100, - "source": 649, - "pc": [ - 129, - 130, - 131 - ] - }, - { - "teal": 101, - "source": 649, - "pc": [ - 132, - 133, - 134, - 135 - ] - }, - { - "teal": 104, - "source": 649, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 136 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 649, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 649, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 649, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 649, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 649, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 649, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 649, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 649, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 649, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 650, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 650, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 34, + "source": 650, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 650, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 650, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 650, + "pc": [ + 55 + ] + }, + { + "teal": 38, + "source": 650, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 39, + "source": 650, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 650, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 650, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 650, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 650, + "pc": [ + 63 + ] + }, + { + "teal": 44, + "source": 650, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 650, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 51, + "source": 650, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 55, + "source": 651, + "pc": [ + 70 + ] + }, + { + "teal": 56, + "source": 651, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 60, + "source": 652, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 61, + "source": 652, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 62, + "source": 652, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 63, + "source": 652, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 64, + "source": 652, + "pc": [ + 81 + ] + }, + { + "teal": 65, + "source": 652, + "pc": [ + 82 + ] + }, + { + "teal": 66, + "source": 652, + "pc": [ + 83 + ] + }, + { + "teal": 67, + "source": 652, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 68, + "source": 652, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 69, + "source": 652, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 70, + "source": 652, + "pc": [ + 90 + ] + }, + { + "teal": 71, + "source": 652, + "pc": [ + 91 + ] + }, + { + "teal": 72, + "source": 652, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 73, + "source": 652, + "pc": [ + 94 + ] + }, + { + "teal": 74, + "source": 652, + "pc": [ + 95 + ] + }, + { + "teal": 75, + "source": 652, + "pc": [ + 96 + ] + }, + { + "teal": 76, + "source": 652, + "pc": [ + 97 + ] + }, + { + "teal": 77, + "source": 652, + "pc": [ + 98 + ] + }, + { + "teal": 78, + "source": 652, + "pc": [ + 99 + ] + }, + { + "teal": 79, + "source": 652, + "pc": [ + 100 + ] + }, + { + "teal": 80, + "source": 652, + "pc": [ + 101, + 102, + 103 + ] + }, + { + "teal": 83, + "source": 650, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 84, + "source": 650, + "pc": [ + 106 + ] + }, + { + "teal": 87, + "source": 649, + "pc": [ + 107 + ] + }, + { + "teal": 88, + "source": 649, + "pc": [ + 108 + ] + }, + { + "teal": 91, + "source": 649, + "pc": [ + 109, + 110, + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 92, + "source": 649, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 93, + "source": 649, + "pc": [ + 118, + 119, + 120, + 121 + ] + }, + { + "teal": 96, + "source": 649, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 122 + ] + }, + { + "teal": 99, + "source": 649, + "pc": [ + 123, + 124, + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 100, + "source": 649, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 101, + "source": 649, + "pc": [ + 132, + 133, + 134, + 135 + ] + }, + { + "teal": 104, + "source": 649, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 136 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NPZkR5bmFtaWNFbGVtZW50SW5TdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogc3RyaW5nWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5KGE6IFN0YXRpY0FycmF5PHN0cmluZywgMz4pOiBzdHJpbmcKZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5OgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUxCgkvLyBpID0gYnRvaShpdG9iKDEpKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUyCgkvLyByZXR1cm4gYVtpXTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAgLy8gaW5pdGlhbCBvZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIKCSogLy8gYWNjICogMgoJKwoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NPZkR5bmFtaWNFbGVtZW50SW5TdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogc3RyaW5nWzNdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5KGE6IFN0YXRpY0FycmF5PHN0cmluZywgMz4pOiBzdHJpbmcKZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5OgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUxCgkvLyBpID0gYnRvaShpdG9iKDEpKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjUyCgkvLyByZXR1cm4gYVtpXTsKCWZyYW1lX2RpZyAtMSAvLyBhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAgLy8gaW5pdGlhbCBvZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDIKCSogLy8gYWNjICogMgoJKwoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQWNjZXNzT2ZEeW5hbWljRWxlbWVudEluU3RhdGljQXJyYXkoc3RyaW5nWzNdKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FjY2Vzc09mRHluYW1pY0VsZW1lbnRJblN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicArray.approval.teal b/tests/contracts/artifacts/ABITestDynamicArray.approval.teal index 2f2893bef..0a1f2d3a9 100644 --- a/tests/contracts/artifacts/ABITestDynamicArray.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicArray.arc32.json b/tests/contracts/artifacts/ABITestDynamicArray.arc32.json index 8b1f657e5..77aab0abd 100644 --- a/tests/contracts/artifacts/ABITestDynamicArray.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXkoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXkoKTogdWludDY0CmR5bmFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0OAoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNTAKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXkoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXkoKTogdWludDY0CmR5bmFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0OAoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNTAKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicArray.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicArray.arc56_draft.json index ba2cf81b0..90bfa2d3f 100644 --- a/tests/contracts/artifacts/ABITestDynamicArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicArray.arc56_draft.json @@ -60,365 +60,368 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 346, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 346, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 346, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 346, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 346, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 346, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 346, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 346, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 346, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 347, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 347, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 347, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 347, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 347, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 347, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 347, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 347, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 347, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 348, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 48, - "source": 348, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 52, - "source": 350, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 53, - "source": 350, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 54, - "source": 350, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 55, - "source": 350, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 56, - "source": 350, - "pc": [ - 96 - ] - }, - { - "teal": 59, - "source": 347, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 60, - "source": 347, - "pc": [ - 99 - ] - }, - { - "teal": 63, - "source": 346, - "pc": [ - 100 - ] - }, - { - "teal": 64, - "source": 346, - "pc": [ - 101 - ] - }, - { - "teal": 67, - "source": 346, - "pc": [ - 102, - 103, - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 68, - "source": 346, - "pc": [ - 108, - 109, - 110 - ] - }, - { - "teal": 69, - "source": 346, - "pc": [ - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 72, - "source": 346, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 115 - ] - }, - { - "teal": 75, - "source": 346, - "pc": [ - 116, - 117, - 118, - 119, - 120, - 121 - ] - }, - { - "teal": 76, - "source": 346, - "pc": [ - 122, - 123, - 124 - ] - }, - { - "teal": 77, - "source": 346, - "pc": [ - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 80, - "source": 346, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 129 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 346, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 346, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 346, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 346, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 346, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 346, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 346, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 346, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 346, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 347, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 347, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 347, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 347, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 347, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 347, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 347, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 347, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 347, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 348, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 48, + "source": 348, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 52, + "source": 350, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 53, + "source": 350, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 54, + "source": 350, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 55, + "source": 350, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 56, + "source": 350, + "pc": [ + 96 + ] + }, + { + "teal": 59, + "source": 347, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 60, + "source": 347, + "pc": [ + 99 + ] + }, + { + "teal": 63, + "source": 346, + "pc": [ + 100 + ] + }, + { + "teal": 64, + "source": 346, + "pc": [ + 101 + ] + }, + { + "teal": 67, + "source": 346, + "pc": [ + 102, + 103, + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 68, + "source": 346, + "pc": [ + 108, + 109, + 110 + ] + }, + { + "teal": 69, + "source": 346, + "pc": [ + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 72, + "source": 346, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 115 + ] + }, + { + "teal": 75, + "source": 346, + "pc": [ + 116, + 117, + 118, + 119, + 120, + 121 + ] + }, + { + "teal": 76, + "source": 346, + "pc": [ + 122, + 123, + 124 + ] + }, + { + "teal": 77, + "source": 346, + "pc": [ + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 80, + "source": 346, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 129 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXkoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXkoKTogdWludDY0CmR5bmFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0OAoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNTAKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXkoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXkoKTogdWludDY0CmR5bmFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0OAoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNTAKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayArg.approval.teal b/tests/contracts/artifacts/ABITestDynamicArrayArg.approval.teal index 6509cbcd6..a4e029825 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayArg.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicArrayArg.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicArrayArg.arc32.json b/tests/contracts/artifacts/ABITestDynamicArrayArg.arc32.json index 2317c7d1a..332063195 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayArg.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayArg.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlBcmcodWludDY0W10pdWludDY0CiphYmlfcm91dGVfZHluYW1pY0FycmF5QXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiB1aW50NjRbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQKCWNhbGxzdWIgZHluYW1pY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5QXJnKGE6IHVpbnQ2NFtdKTogdWludDY0CmR5bmFtaWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNjMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUFyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlBcmcodWludDY0W10pdWludDY0CiphYmlfcm91dGVfZHluYW1pY0FycmF5QXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiB1aW50NjRbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQKCWNhbGxzdWIgZHluYW1pY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5QXJnKGE6IHVpbnQ2NFtdKTogdWludDY0CmR5bmFtaWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNjMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUFyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayArg.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicArrayArg.arc56_draft.json index 4850b1130..46e9f924d 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayArg.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayArg.arc56_draft.json @@ -65,327 +65,330 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 361, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 361, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 361, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 361, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 361, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 361, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 361, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 361, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 361, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 362, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 362, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 362, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 35, - "source": 362, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 362, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 362, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 362, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 362, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 362, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 362, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 48, - "source": 363, - "pc": [ - 63, - 64 - ] - }, - { - "teal": 49, - "source": 363, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 50, - "source": 363, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 51, - "source": 363, - "pc": [ - 69, - 70, - 71 - ] - }, - { - "teal": 52, - "source": 363, - "pc": [ - 72 - ] - }, - { - "teal": 53, - "source": 362, - "pc": [ - 73 - ] - }, - { - "teal": 56, - "source": 361, - "pc": [ - 74 - ] - }, - { - "teal": 57, - "source": 361, - "pc": [ - 75 - ] - }, - { - "teal": 60, - "source": 361, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 61, - "source": 361, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 62, - "source": 361, - "pc": [ - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 65, - "source": 361, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 89 - ] - }, - { - "teal": 68, - "source": 361, - "pc": [ - 90, - 91, - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 69, - "source": 361, - "pc": [ - 96, - 97, - 98 - ] - }, - { - "teal": 70, - "source": 361, - "pc": [ - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 73, - "source": 361, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 103 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 361, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 361, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 361, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 361, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 361, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 361, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 361, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 361, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 361, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 362, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 362, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 362, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 35, + "source": 362, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 362, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 362, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 362, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 362, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 362, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 362, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 48, + "source": 363, + "pc": [ + 63, + 64 + ] + }, + { + "teal": 49, + "source": 363, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 50, + "source": 363, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 51, + "source": 363, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 52, + "source": 363, + "pc": [ + 72 + ] + }, + { + "teal": 53, + "source": 362, + "pc": [ + 73 + ] + }, + { + "teal": 56, + "source": 361, + "pc": [ + 74 + ] + }, + { + "teal": 57, + "source": 361, + "pc": [ + 75 + ] + }, + { + "teal": 60, + "source": 361, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 61, + "source": 361, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 62, + "source": 361, + "pc": [ + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 65, + "source": 361, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 89 + ] + }, + { + "teal": 68, + "source": 361, + "pc": [ + 90, + 91, + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 69, + "source": 361, + "pc": [ + 96, + 97, + 98 + ] + }, + { + "teal": 70, + "source": 361, + "pc": [ + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 73, + "source": 361, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 103 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlBcmcodWludDY0W10pdWludDY0CiphYmlfcm91dGVfZHluYW1pY0FycmF5QXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiB1aW50NjRbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQKCWNhbGxzdWIgZHluYW1pY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5QXJnKGE6IHVpbnQ2NFtdKTogdWludDY0CmR5bmFtaWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNjMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUFyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlBcmcodWludDY0W10pdWludDY0CiphYmlfcm91dGVfZHluYW1pY0FycmF5QXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiB1aW50NjRbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZXh0cmFjdCAyIDAKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQKCWNhbGxzdWIgZHluYW1pY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5QXJnKGE6IHVpbnQ2NFtdKTogdWludDY0CmR5bmFtaWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNjMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNBcnJheUFyZyh1aW50NjRbXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUFyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayElements.approval.teal b/tests/contracts/artifacts/ABITestDynamicArrayElements.approval.teal index cbe91ed6c..506c5ccf8 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayElements.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicArrayElements.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicArrayElements.arc32.json b/tests/contracts/artifacts/ABITestDynamicArrayElements.arc32.json index ad19cd4cf..ed4bea7b4 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayElements.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayElements.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KCWNhbGxzdWIgZHluYW1pY0FycmF5RWxlbWVudHMKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNBcnJheUVsZW1lbnRzKCk6IHVpbnQxNltdCmR5bmFtaWNBcnJheUVsZW1lbnRzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODEKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDgyCgkvLyBuZXdBOiB1aW50MTZbXSA9IFthWzBdLCBhWzFdLCBhWzJdXQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDAgMgoJYnRvaQoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAyIDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA0IDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBuZXdBOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODQKCS8vIHJldHVybiBuZXdBOwoJZnJhbWVfZGlnIDEgLy8gbmV3QTogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KCWNhbGxzdWIgZHluYW1pY0FycmF5RWxlbWVudHMKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNBcnJheUVsZW1lbnRzKCk6IHVpbnQxNltdCmR5bmFtaWNBcnJheUVsZW1lbnRzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODEKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDgyCgkvLyBuZXdBOiB1aW50MTZbXSA9IFthWzBdLCBhWzFdLCBhWzJdXQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDAgMgoJYnRvaQoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAyIDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA0IDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBuZXdBOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODQKCS8vIHJldHVybiBuZXdBOwoJZnJhbWVfZGlnIDEgLy8gbmV3QTogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayElements.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicArrayElements.arc56_draft.json index 34bf41a3e..33bfae485 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayElements.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayElements.arc56_draft.json @@ -60,572 +60,575 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 479, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 479, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 479, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 479, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 479, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 479, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 479, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 479, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 479, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 480, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 480, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 480, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 480, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 480, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 480, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 480, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 480, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 38, - "source": 480, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 480, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 480, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 480, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 480, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 480, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 480, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 50, - "source": 480, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 51, - "source": 480, - "pc": [ - 69 - ] - }, - { - "teal": 55, - "source": 481, - "pc": [ - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 56, - "source": 481, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 60, - "source": 482, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 61, - "source": 482, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 62, - "source": 482, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 63, - "source": 482, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 64, - "source": 482, - "pc": [ - 89 - ] - }, - { - "teal": 65, - "source": 482, - "pc": [ - 90 - ] - }, - { - "teal": 66, - "source": 482, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 67, - "source": 482, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 68, - "source": 482, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 69, - "source": 482, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 70, - "source": 482, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 71, - "source": 482, - "pc": [ - 103 - ] - }, - { - "teal": 72, - "source": 482, - "pc": [ - 104 - ] - }, - { - "teal": 73, - "source": 482, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 74, - "source": 482, - "pc": [ - 108 - ] - }, - { - "teal": 75, - "source": 482, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 76, - "source": 482, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 77, - "source": 482, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 78, - "source": 482, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 79, - "source": 482, - "pc": [ - 118 - ] - }, - { - "teal": 80, - "source": 482, - "pc": [ - 119 - ] - }, - { - "teal": 81, - "source": 482, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 82, - "source": 482, - "pc": [ - 123 - ] - }, - { - "teal": 83, - "source": 482, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 87, - "source": 484, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 90, - "source": 480, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 93, - "source": 480, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 94, - "source": 480, - "pc": [ - 132 - ] - }, - { - "teal": 97, - "source": 479, - "pc": [ - 133 - ] - }, - { - "teal": 98, - "source": 479, - "pc": [ - 134 - ] - }, - { - "teal": 101, - "source": 479, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140 - ] - }, - { - "teal": 102, - "source": 479, - "pc": [ - 141, - 142, - 143 - ] - }, - { - "teal": 103, - "source": 479, - "pc": [ - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 106, - "source": 479, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 148 - ] - }, - { - "teal": 109, - "source": 479, - "pc": [ - 149, - 150, - 151, - 152, - 153, - 154 - ] - }, - { - "teal": 110, - "source": 479, - "pc": [ - 155, - 156, - 157 - ] - }, - { - "teal": 111, - "source": 479, - "pc": [ - 158, - 159, - 160, - 161 - ] - }, - { - "teal": 114, - "source": 479, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 162 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 479, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 479, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 479, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 479, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 479, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 479, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 479, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 479, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 479, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 480, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 480, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 480, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 480, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 480, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 480, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 480, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 480, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 38, + "source": 480, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 480, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 480, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 480, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 480, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 480, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 480, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 50, + "source": 480, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 51, + "source": 480, + "pc": [ + 69 + ] + }, + { + "teal": 55, + "source": 481, + "pc": [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 56, + "source": 481, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 60, + "source": 482, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 61, + "source": 482, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 62, + "source": 482, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 63, + "source": 482, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 64, + "source": 482, + "pc": [ + 89 + ] + }, + { + "teal": 65, + "source": 482, + "pc": [ + 90 + ] + }, + { + "teal": 66, + "source": 482, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 67, + "source": 482, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 68, + "source": 482, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 69, + "source": 482, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 70, + "source": 482, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 71, + "source": 482, + "pc": [ + 103 + ] + }, + { + "teal": 72, + "source": 482, + "pc": [ + 104 + ] + }, + { + "teal": 73, + "source": 482, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 74, + "source": 482, + "pc": [ + 108 + ] + }, + { + "teal": 75, + "source": 482, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 76, + "source": 482, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 77, + "source": 482, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 78, + "source": 482, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 79, + "source": 482, + "pc": [ + 118 + ] + }, + { + "teal": 80, + "source": 482, + "pc": [ + 119 + ] + }, + { + "teal": 81, + "source": 482, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 82, + "source": 482, + "pc": [ + 123 + ] + }, + { + "teal": 83, + "source": 482, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 87, + "source": 484, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 90, + "source": 480, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 93, + "source": 480, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 94, + "source": 480, + "pc": [ + 132 + ] + }, + { + "teal": 97, + "source": 479, + "pc": [ + 133 + ] + }, + { + "teal": 98, + "source": 479, + "pc": [ + 134 + ] + }, + { + "teal": 101, + "source": 479, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140 + ] + }, + { + "teal": 102, + "source": 479, + "pc": [ + 141, + 142, + 143 + ] + }, + { + "teal": 103, + "source": 479, + "pc": [ + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 106, + "source": 479, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 148 + ] + }, + { + "teal": 109, + "source": 479, + "pc": [ + 149, + 150, + 151, + 152, + 153, + 154 + ] + }, + { + "teal": 110, + "source": 479, + "pc": [ + 155, + 156, + 157 + ] + }, + { + "teal": 111, + "source": 479, + "pc": [ + 158, + 159, + 160, + 161 + ] + }, + { + "teal": 114, + "source": 479, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 162 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KCWNhbGxzdWIgZHluYW1pY0FycmF5RWxlbWVudHMKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNBcnJheUVsZW1lbnRzKCk6IHVpbnQxNltdCmR5bmFtaWNBcnJheUVsZW1lbnRzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODEKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDgyCgkvLyBuZXdBOiB1aW50MTZbXSA9IFthWzBdLCBhWzFdLCBhWzJdXQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDAgMgoJYnRvaQoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAyIDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA0IDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBuZXdBOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODQKCS8vIHJldHVybiBuZXdBOwoJZnJhbWVfZGlnIDEgLy8gbmV3QTogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10KCWNhbGxzdWIgZHluYW1pY0FycmF5RWxlbWVudHMKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNBcnJheUVsZW1lbnRzKCk6IHVpbnQxNltdCmR5bmFtaWNBcnJheUVsZW1lbnRzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODEKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDgyCgkvLyBuZXdBOiB1aW50MTZbXSA9IFthWzBdLCBhWzFdLCBhWzJdXQoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDAgMgoJYnRvaQoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAyIDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCA0IDIKCWJ0b2kKCWl0b2IKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyBuZXdBOiB1aW50MTZbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0ODQKCS8vIHJldHVybiBuZXdBOwoJZnJhbWVfZGlnIDEgLy8gbmV3QTogdWludDE2W10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlFbGVtZW50cygpdWludDE2W10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.approval.teal b/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.approval.teal index e56061091..351eaf7ee 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc32.json b/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc32.json index 879f7a654..6bfd3eb5d 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQpkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NTgKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NjAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQpkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NTgKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NjAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc56_draft.json index 407106368..45262cb25 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayInMiddleOfTuple.arc56_draft.json @@ -60,616 +60,619 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 656, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 656, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 656, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 656, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 656, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 656, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 656, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 656, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 656, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 657, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 657, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 657, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 657, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 657, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 657, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 657, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 42, - "source": 657, - "pc": [ - 59 - ] - }, - { - "teal": 46, - "source": 658, - "pc": [ - 60 - ] - }, - { - "teal": 47, - "source": 658, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 658, - "pc": [ - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 49, - "source": 658, - "pc": [ - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 50, - "source": 658, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 51, - "source": 658, - "pc": [ - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 52, - "source": 658, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 53, - "source": 658, - "pc": [ - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 54, - "source": 658, - "pc": [ - 85, - 86, - 87 - ] - }, - { - "teal": 55, - "source": 658, - "pc": [ - 88 - ] - }, - { - "teal": 56, - "source": 658, - "pc": [ - 89 - ] - }, - { - "teal": 57, - "source": 658, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 61, - "source": 660, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 64, - "source": 657, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 65, - "source": 657, - "pc": [ - 96 - ] - }, - { - "teal": 68, - "source": 656, - "pc": [ - 97 - ] - }, - { - "teal": 69, - "source": 656, - "pc": [ - 98 - ] - }, - { - "teal": 72, - "source": 656, - "pc": [ - 99, - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 73, - "source": 656, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 74, - "source": 656, - "pc": [ - 108, - 109, - 110, - 111 - ] - }, - { - "teal": 77, - "source": 656, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 112 - ] - }, - { - "teal": 80, - "source": 656, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 81, - "source": 656, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 82, - "source": 656, - "pc": [ - 122, - 123, - 124, - 125 - ] - }, - { - "teal": 85, - "source": 656, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 126 - ] - }, - { - "teal": 88, - "source": 656, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 89, - "source": 656, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 90, - "source": 656, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 91, - "source": 656, - "pc": [ - 134 - ] - }, - { - "teal": 92, - "source": 656, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 93, - "source": 656, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 94, - "source": 656, - "pc": [ - 139 - ] - }, - { - "teal": 97, - "source": 656, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 98, - "source": 656, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 99, - "source": 656, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 100, - "source": 656, - "pc": [ - 147 - ] - }, - { - "teal": 101, - "source": 656, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 102, - "source": 656, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 103, - "source": 656, - "pc": [ - 152 - ] - }, - { - "teal": 104, - "source": 656, - "pc": [ - 153 - ] - }, - { - "teal": 105, - "source": 656, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 106, - "source": 656, - "pc": [ - 156 - ] - }, - { - "teal": 107, - "source": 656, - "pc": [ - 157 - ] - }, - { - "teal": 108, - "source": 656, - "pc": [ - 158 - ] - }, - { - "teal": 109, - "source": 656, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 110, - "source": 656, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 111, - "source": 656, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 112, - "source": 656, - "pc": [ - 166 - ] - }, - { - "teal": 113, - "source": 656, - "pc": [ - 167 - ] - }, - { - "teal": 114, - "source": 656, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 115, - "source": 656, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 116, - "source": 656, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 117, - "source": 656, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 118, - "source": 656, - "pc": [ - 176 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 656, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 656, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 656, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 656, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 656, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 656, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 656, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 656, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 656, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 657, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 657, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 657, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 657, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 657, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 657, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 657, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 42, + "source": 657, + "pc": [ + 59 + ] + }, + { + "teal": 46, + "source": 658, + "pc": [ + 60 + ] + }, + { + "teal": 47, + "source": 658, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 658, + "pc": [ + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 49, + "source": 658, + "pc": [ + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 50, + "source": 658, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 51, + "source": 658, + "pc": [ + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 52, + "source": 658, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 53, + "source": 658, + "pc": [ + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 54, + "source": 658, + "pc": [ + 85, + 86, + 87 + ] + }, + { + "teal": 55, + "source": 658, + "pc": [ + 88 + ] + }, + { + "teal": 56, + "source": 658, + "pc": [ + 89 + ] + }, + { + "teal": 57, + "source": 658, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 61, + "source": 660, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 64, + "source": 657, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 65, + "source": 657, + "pc": [ + 96 + ] + }, + { + "teal": 68, + "source": 656, + "pc": [ + 97 + ] + }, + { + "teal": 69, + "source": 656, + "pc": [ + 98 + ] + }, + { + "teal": 72, + "source": 656, + "pc": [ + 99, + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 73, + "source": 656, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 74, + "source": 656, + "pc": [ + 108, + 109, + 110, + 111 + ] + }, + { + "teal": 77, + "source": 656, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 112 + ] + }, + { + "teal": 80, + "source": 656, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 81, + "source": 656, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 82, + "source": 656, + "pc": [ + 122, + 123, + 124, + 125 + ] + }, + { + "teal": 85, + "source": 656, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 126 + ] + }, + { + "teal": 88, + "source": 656, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 89, + "source": 656, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 90, + "source": 656, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 91, + "source": 656, + "pc": [ + 134 + ] + }, + { + "teal": 92, + "source": 656, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 93, + "source": 656, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 94, + "source": 656, + "pc": [ + 139 + ] + }, + { + "teal": 97, + "source": 656, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 98, + "source": 656, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 99, + "source": 656, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 100, + "source": 656, + "pc": [ + 147 + ] + }, + { + "teal": 101, + "source": 656, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 102, + "source": 656, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 103, + "source": 656, + "pc": [ + 152 + ] + }, + { + "teal": 104, + "source": 656, + "pc": [ + 153 + ] + }, + { + "teal": 105, + "source": 656, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 106, + "source": 656, + "pc": [ + 156 + ] + }, + { + "teal": 107, + "source": 656, + "pc": [ + 157 + ] + }, + { + "teal": 108, + "source": 656, + "pc": [ + 158 + ] + }, + { + "teal": 109, + "source": 656, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 110, + "source": 656, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 111, + "source": 656, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 112, + "source": 656, + "pc": [ + 166 + ] + }, + { + "teal": 113, + "source": 656, + "pc": [ + 167 + ] + }, + { + "teal": 114, + "source": 656, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 115, + "source": 656, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 116, + "source": 656, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 117, + "source": 656, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 118, + "source": 656, + "pc": [ + 176 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQpkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NTgKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NjAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQpkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NTgKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NjAKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayIteration.approval.teal b/tests/contracts/artifacts/ABITestDynamicArrayIteration.approval.teal index 60e797e67..38811d382 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayIteration.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicArrayIteration.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc32.json b/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc32.json index ceb224ddc..47526455e 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUl0ZXJhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQXJyYXlJdGVyYXRpb24KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SXRlcmF0aW9uKCk6IHN0cmluZwpkeW5hbWljQXJyYXlJdGVyYXRpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbyAnLCAnV29ybGQnLCAnISddCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDA2NDg2NTZjNmM2ZjIwCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDEKCS8vIG1lc3NhZ2UgPSAnJwoJYnl0ZSAweCAvLyAiIgoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjAzCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGEubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgPCBhLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDQKCS8vIG1lc3NhZ2UgKz0gYVtpXQoJZnJhbWVfZGlnIDEgLy8gbWVzc2FnZTogYnl0ZVtdCglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwIC8vIGluaXRpYWwgb2Zmc2V0CglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyCgkqIC8vIGFjYyAqIDIKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYwNwoJLy8gcmV0dXJuIG1lc3NhZ2U7CglmcmFtZV9kaWcgMSAvLyBtZXNzYWdlOiBieXRlW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5SXRlcmF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUl0ZXJhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQXJyYXlJdGVyYXRpb24KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SXRlcmF0aW9uKCk6IHN0cmluZwpkeW5hbWljQXJyYXlJdGVyYXRpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbyAnLCAnV29ybGQnLCAnISddCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDA2NDg2NTZjNmM2ZjIwCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDEKCS8vIG1lc3NhZ2UgPSAnJwoJYnl0ZSAweCAvLyAiIgoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjAzCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGEubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgPCBhLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDQKCS8vIG1lc3NhZ2UgKz0gYVtpXQoJZnJhbWVfZGlnIDEgLy8gbWVzc2FnZTogYnl0ZVtdCglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwIC8vIGluaXRpYWwgb2Zmc2V0CglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyCgkqIC8vIGFjYyAqIDIKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYwNwoJLy8gcmV0dXJuIG1lc3NhZ2U7CglmcmFtZV9kaWcgMSAvLyBtZXNzYWdlOiBieXRlW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5SXRlcmF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc56_draft.json index 2f13d956a..19b2d5c4e 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayIteration.arc56_draft.json @@ -60,980 +60,983 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1598, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 1598, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 1598, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 1598, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 16, - "source": 1598, - "pc": [ - 14 - ] - }, - { - "teal": 17, - "source": 1598, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 1598, - "pc": [ - 17 - ] - }, - { - "teal": 19, - "source": 1598, - "pc": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ] - }, - { - "teal": 23, - "source": 1598, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 44 - ] - }, - { - "teal": 28, - "source": 1599, - "pc": [ - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 31, - "source": 1599, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 32, - "source": 1599, - "pc": [ - 54 - ] - }, - { - "teal": 33, - "source": 1599, - "pc": [ - 55 - ] - }, - { - "teal": 34, - "source": 1599, - "pc": [ - 56 - ] - }, - { - "teal": 35, - "source": 1599, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 36, - "source": 1599, - "pc": [ - 60 - ] - }, - { - "teal": 37, - "source": 1599, - "pc": [ - 61 - ] - }, - { - "teal": 38, - "source": 1599, - "pc": [ - 62 - ] - }, - { - "teal": 39, - "source": 1599, - "pc": [ - 63 - ] - }, - { - "teal": 40, - "source": 1599, - "pc": [ - 64 - ] - }, - { - "teal": 41, - "source": 1599, - "pc": [ - 65 - ] - }, - { - "teal": 45, - "source": 1599, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 1599, - "pc": [ - 69 - ] - }, - { - "teal": 49, - "source": 1599, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 53, - "source": 1600, - "pc": [ - 72 - ] - }, - { - "teal": 54, - "source": 1600, - "pc": [ - 73 - ] - }, - { - "teal": 55, - "source": 1600, - "pc": [ - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 56, - "source": 1600, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 57, - "source": 1600, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 58, - "source": 1600, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 59, - "source": 1600, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 60, - "source": 1600, - "pc": [ - 103, - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 61, - "source": 1600, - "pc": [ - 108, - 109, - 110 - ] - }, - { - "teal": 62, - "source": 1600, - "pc": [ - 111 - ] - }, - { - "teal": 63, - "source": 1600, - "pc": [ - 112 - ] - }, - { - "teal": 64, - "source": 1600, - "pc": [ - 113, - 114, - 115, - 116 - ] - }, - { - "teal": 65, - "source": 1600, - "pc": [ - 117 - ] - }, - { - "teal": 66, - "source": 1600, - "pc": [ - 118 - ] - }, - { - "teal": 67, - "source": 1600, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 71, - "source": 1601, - "pc": [ - 121 - ] - }, - { - "teal": 72, - "source": 1601, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 76, - "source": 1603, - "pc": [ - 124 - ] - }, - { - "teal": 77, - "source": 1603, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 82, - "source": 1603, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 83, - "source": 1603, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 84, - "source": 1603, - "pc": [ - 131 - ] - }, - { - "teal": 85, - "source": 1603, - "pc": [ - 132 - ] - }, - { - "teal": 86, - "source": 1603, - "pc": [ - 133 - ] - }, - { - "teal": 87, - "source": 1603, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 91, - "source": 1604, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 92, - "source": 1604, - "pc": [ - 139, - 140 - ] - }, - { - "teal": 93, - "source": 1604, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 94, - "source": 1604, - "pc": [ - 143 - ] - }, - { - "teal": 95, - "source": 1604, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 96, - "source": 1604, - "pc": [ - 146 - ] - }, - { - "teal": 97, - "source": 1604, - "pc": [ - 147 - ] - }, - { - "teal": 98, - "source": 1604, - "pc": [ - 148 - ] - }, - { - "teal": 99, - "source": 1604, - "pc": [ - 149 - ] - }, - { - "teal": 100, - "source": 1604, - "pc": [ - 150 - ] - }, - { - "teal": 101, - "source": 1604, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 102, - "source": 1604, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 103, - "source": 1604, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 104, - "source": 1604, - "pc": [ - 157 - ] - }, - { - "teal": 105, - "source": 1604, - "pc": [ - 158 - ] - }, - { - "teal": 106, - "source": 1604, - "pc": [ - 159 - ] - }, - { - "teal": 107, - "source": 1604, - "pc": [ - 160 - ] - }, - { - "teal": 108, - "source": 1604, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 109, - "source": 1604, - "pc": [ - 163 - ] - }, - { - "teal": 110, - "source": 1604, - "pc": [ - 164 - ] - }, - { - "teal": 111, - "source": 1604, - "pc": [ - 165 - ] - }, - { - "teal": 112, - "source": 1604, - "pc": [ - 166 - ] - }, - { - "teal": 113, - "source": 1604, - "pc": [ - 167 - ] - }, - { - "teal": 114, - "source": 1604, - "pc": [ - 168 - ] - }, - { - "teal": 115, - "source": 1604, - "pc": [ - 169 - ] - }, - { - "teal": 116, - "source": 1604, - "pc": [ - 170, - 171, - 172 - ] - }, - { - "teal": 117, - "source": 1604, - "pc": [ - 173 - ] - }, - { - "teal": 118, - "source": 1604, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 123, - "source": 1603, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 124, - "source": 1603, - "pc": [ - 178 - ] - }, - { - "teal": 125, - "source": 1603, - "pc": [ - 179 - ] - }, - { - "teal": 126, - "source": 1603, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 127, - "source": 1603, - "pc": [ - 182, - 183, - 184 - ] - }, - { - "teal": 132, - "source": 1607, - "pc": [ - 185, - 186 - ] - }, - { - "teal": 135, - "source": 1599, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 138, - "source": 1599, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 139, - "source": 1599, - "pc": [ - 191 - ] - }, - { - "teal": 142, - "source": 1598, - "pc": [ - 192 - ] - }, - { - "teal": 143, - "source": 1598, - "pc": [ - 193 - ] - }, - { - "teal": 146, - "source": 1598, - "pc": [ - 194, - 195, - 196, - 197, - 198, - 199 - ] - }, - { - "teal": 147, - "source": 1598, - "pc": [ - 200, - 201, - 202 - ] - }, - { - "teal": 148, - "source": 1598, - "pc": [ - 203, - 204, - 205, - 206 - ] - }, - { - "teal": 151, - "source": 1598, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 207 - ] - }, - { - "teal": 154, - "source": 1598, - "pc": [ - 208, - 209, - 210, - 211, - 212, - 213 - ] - }, - { - "teal": 155, - "source": 1598, - "pc": [ - 214, - 215, - 216 - ] - }, - { - "teal": 156, - "source": 1598, - "pc": [ - 217, - 218, - 219, - 220 - ] - }, - { - "teal": 159, - "source": 1598, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 221 - ] - }, - { - "teal": 162, - "source": 1598, - "pc": [ - 222, - 223, - 224 - ] - }, - { - "teal": 163, - "source": 1598, - "pc": [ - 225, - 226 - ] - }, - { - "teal": 164, - "source": 1598, - "pc": [ - 227, - 228 - ] - }, - { - "teal": 165, - "source": 1598, - "pc": [ - 229 - ] - }, - { - "teal": 166, - "source": 1598, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 167, - "source": 1598, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 168, - "source": 1598, - "pc": [ - 234 - ] - }, - { - "teal": 169, - "source": 1598, - "pc": [ - 235 - ] - }, - { - "teal": 170, - "source": 1598, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 171, - "source": 1598, - "pc": [ - 238 - ] - }, - { - "teal": 172, - "source": 1598, - "pc": [ - 239 - ] - }, - { - "teal": 173, - "source": 1598, - "pc": [ - 240 - ] - }, - { - "teal": 174, - "source": 1598, - "pc": [ - 241, - 242, - 243 - ] - }, - { - "teal": 175, - "source": 1598, - "pc": [ - 244, - 245 - ] - }, - { - "teal": 176, - "source": 1598, - "pc": [ - 246, - 247 - ] - }, - { - "teal": 177, - "source": 1598, - "pc": [ - 248 - ] - }, - { - "teal": 178, - "source": 1598, - "pc": [ - 249 - ] - }, - { - "teal": 179, - "source": 1598, - "pc": [ - 250, - 251 - ] - }, - { - "teal": 180, - "source": 1598, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 181, - "source": 1598, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 182, - "source": 1598, - "pc": [ - 256, - 257 - ] - }, - { - "teal": 183, - "source": 1598, - "pc": [ - 258 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1598, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 1598, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 1598, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 1598, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 16, + "source": 1598, + "pc": [ + 14 + ] + }, + { + "teal": 17, + "source": 1598, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 1598, + "pc": [ + 17 + ] + }, + { + "teal": 19, + "source": 1598, + "pc": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "teal": 23, + "source": 1598, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 44 + ] + }, + { + "teal": 28, + "source": 1599, + "pc": [ + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 31, + "source": 1599, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 32, + "source": 1599, + "pc": [ + 54 + ] + }, + { + "teal": 33, + "source": 1599, + "pc": [ + 55 + ] + }, + { + "teal": 34, + "source": 1599, + "pc": [ + 56 + ] + }, + { + "teal": 35, + "source": 1599, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 36, + "source": 1599, + "pc": [ + 60 + ] + }, + { + "teal": 37, + "source": 1599, + "pc": [ + 61 + ] + }, + { + "teal": 38, + "source": 1599, + "pc": [ + 62 + ] + }, + { + "teal": 39, + "source": 1599, + "pc": [ + 63 + ] + }, + { + "teal": 40, + "source": 1599, + "pc": [ + 64 + ] + }, + { + "teal": 41, + "source": 1599, + "pc": [ + 65 + ] + }, + { + "teal": 45, + "source": 1599, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 1599, + "pc": [ + 69 + ] + }, + { + "teal": 49, + "source": 1599, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 53, + "source": 1600, + "pc": [ + 72 + ] + }, + { + "teal": 54, + "source": 1600, + "pc": [ + 73 + ] + }, + { + "teal": 55, + "source": 1600, + "pc": [ + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 56, + "source": 1600, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 57, + "source": 1600, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 58, + "source": 1600, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 59, + "source": 1600, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 60, + "source": 1600, + "pc": [ + 103, + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 61, + "source": 1600, + "pc": [ + 108, + 109, + 110 + ] + }, + { + "teal": 62, + "source": 1600, + "pc": [ + 111 + ] + }, + { + "teal": 63, + "source": 1600, + "pc": [ + 112 + ] + }, + { + "teal": 64, + "source": 1600, + "pc": [ + 113, + 114, + 115, + 116 + ] + }, + { + "teal": 65, + "source": 1600, + "pc": [ + 117 + ] + }, + { + "teal": 66, + "source": 1600, + "pc": [ + 118 + ] + }, + { + "teal": 67, + "source": 1600, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 71, + "source": 1601, + "pc": [ + 121 + ] + }, + { + "teal": 72, + "source": 1601, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 76, + "source": 1603, + "pc": [ + 124 + ] + }, + { + "teal": 77, + "source": 1603, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 82, + "source": 1603, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 83, + "source": 1603, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 84, + "source": 1603, + "pc": [ + 131 + ] + }, + { + "teal": 85, + "source": 1603, + "pc": [ + 132 + ] + }, + { + "teal": 86, + "source": 1603, + "pc": [ + 133 + ] + }, + { + "teal": 87, + "source": 1603, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 91, + "source": 1604, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 92, + "source": 1604, + "pc": [ + 139, + 140 + ] + }, + { + "teal": 93, + "source": 1604, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 94, + "source": 1604, + "pc": [ + 143 + ] + }, + { + "teal": 95, + "source": 1604, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 96, + "source": 1604, + "pc": [ + 146 + ] + }, + { + "teal": 97, + "source": 1604, + "pc": [ + 147 + ] + }, + { + "teal": 98, + "source": 1604, + "pc": [ + 148 + ] + }, + { + "teal": 99, + "source": 1604, + "pc": [ + 149 + ] + }, + { + "teal": 100, + "source": 1604, + "pc": [ + 150 + ] + }, + { + "teal": 101, + "source": 1604, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 102, + "source": 1604, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 103, + "source": 1604, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 104, + "source": 1604, + "pc": [ + 157 + ] + }, + { + "teal": 105, + "source": 1604, + "pc": [ + 158 + ] + }, + { + "teal": 106, + "source": 1604, + "pc": [ + 159 + ] + }, + { + "teal": 107, + "source": 1604, + "pc": [ + 160 + ] + }, + { + "teal": 108, + "source": 1604, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 109, + "source": 1604, + "pc": [ + 163 + ] + }, + { + "teal": 110, + "source": 1604, + "pc": [ + 164 + ] + }, + { + "teal": 111, + "source": 1604, + "pc": [ + 165 + ] + }, + { + "teal": 112, + "source": 1604, + "pc": [ + 166 + ] + }, + { + "teal": 113, + "source": 1604, + "pc": [ + 167 + ] + }, + { + "teal": 114, + "source": 1604, + "pc": [ + 168 + ] + }, + { + "teal": 115, + "source": 1604, + "pc": [ + 169 + ] + }, + { + "teal": 116, + "source": 1604, + "pc": [ + 170, + 171, + 172 + ] + }, + { + "teal": 117, + "source": 1604, + "pc": [ + 173 + ] + }, + { + "teal": 118, + "source": 1604, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 123, + "source": 1603, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 124, + "source": 1603, + "pc": [ + 178 + ] + }, + { + "teal": 125, + "source": 1603, + "pc": [ + 179 + ] + }, + { + "teal": 126, + "source": 1603, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 127, + "source": 1603, + "pc": [ + 182, + 183, + 184 + ] + }, + { + "teal": 132, + "source": 1607, + "pc": [ + 185, + 186 + ] + }, + { + "teal": 135, + "source": 1599, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 138, + "source": 1599, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 139, + "source": 1599, + "pc": [ + 191 + ] + }, + { + "teal": 142, + "source": 1598, + "pc": [ + 192 + ] + }, + { + "teal": 143, + "source": 1598, + "pc": [ + 193 + ] + }, + { + "teal": 146, + "source": 1598, + "pc": [ + 194, + 195, + 196, + 197, + 198, + 199 + ] + }, + { + "teal": 147, + "source": 1598, + "pc": [ + 200, + 201, + 202 + ] + }, + { + "teal": 148, + "source": 1598, + "pc": [ + 203, + 204, + 205, + 206 + ] + }, + { + "teal": 151, + "source": 1598, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 207 + ] + }, + { + "teal": 154, + "source": 1598, + "pc": [ + 208, + 209, + 210, + 211, + 212, + 213 + ] + }, + { + "teal": 155, + "source": 1598, + "pc": [ + 214, + 215, + 216 + ] + }, + { + "teal": 156, + "source": 1598, + "pc": [ + 217, + 218, + 219, + 220 + ] + }, + { + "teal": 159, + "source": 1598, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 221 + ] + }, + { + "teal": 162, + "source": 1598, + "pc": [ + 222, + 223, + 224 + ] + }, + { + "teal": 163, + "source": 1598, + "pc": [ + 225, + 226 + ] + }, + { + "teal": 164, + "source": 1598, + "pc": [ + 227, + 228 + ] + }, + { + "teal": 165, + "source": 1598, + "pc": [ + 229 + ] + }, + { + "teal": 166, + "source": 1598, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 167, + "source": 1598, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 168, + "source": 1598, + "pc": [ + 234 + ] + }, + { + "teal": 169, + "source": 1598, + "pc": [ + 235 + ] + }, + { + "teal": 170, + "source": 1598, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 171, + "source": 1598, + "pc": [ + 238 + ] + }, + { + "teal": 172, + "source": 1598, + "pc": [ + 239 + ] + }, + { + "teal": 173, + "source": 1598, + "pc": [ + 240 + ] + }, + { + "teal": 174, + "source": 1598, + "pc": [ + 241, + 242, + 243 + ] + }, + { + "teal": 175, + "source": 1598, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 176, + "source": 1598, + "pc": [ + 246, + 247 + ] + }, + { + "teal": 177, + "source": 1598, + "pc": [ + 248 + ] + }, + { + "teal": 178, + "source": 1598, + "pc": [ + 249 + ] + }, + { + "teal": 179, + "source": 1598, + "pc": [ + 250, + 251 + ] + }, + { + "teal": 180, + "source": 1598, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 181, + "source": 1598, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 182, + "source": 1598, + "pc": [ + 256, + 257 + ] + }, + { + "teal": 183, + "source": 1598, + "pc": [ + 258 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUl0ZXJhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQXJyYXlJdGVyYXRpb24KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SXRlcmF0aW9uKCk6IHN0cmluZwpkeW5hbWljQXJyYXlJdGVyYXRpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbyAnLCAnV29ybGQnLCAnISddCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDA2NDg2NTZjNmM2ZjIwCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDEKCS8vIG1lc3NhZ2UgPSAnJwoJYnl0ZSAweCAvLyAiIgoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjAzCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGEubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgPCBhLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDQKCS8vIG1lc3NhZ2UgKz0gYVtpXQoJZnJhbWVfZGlnIDEgLy8gbWVzc2FnZTogYnl0ZVtdCglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwIC8vIGluaXRpYWwgb2Zmc2V0CglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyCgkqIC8vIGFjYyAqIDIKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYwNwoJLy8gcmV0dXJuIG1lc3NhZ2U7CglmcmFtZV9kaWcgMSAvLyBtZXNzYWdlOiBieXRlW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5SXRlcmF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUl0ZXJhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZwoJY2FsbHN1YiBkeW5hbWljQXJyYXlJdGVyYXRpb24KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0FycmF5SXRlcmF0aW9uKCk6IHN0cmluZwpkeW5hbWljQXJyYXlJdGVyYXRpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDAKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbyAnLCAnV29ybGQnLCAnISddCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDA2NDg2NTZjNmM2ZjIwCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDEKCS8vIG1lc3NhZ2UgPSAnJwoJYnl0ZSAweCAvLyAiIgoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjAzCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGEubGVuZ3RoOyBpICs9IDEpCglpbnQgMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgPCBhLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDQKCS8vIG1lc3NhZ2UgKz0gYVtpXQoJZnJhbWVfZGlnIDEgLy8gbWVzc2FnZTogYnl0ZVtdCglmcmFtZV9kaWcgMCAvLyBhOiBzdHJpbmdbXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwIC8vIGluaXRpYWwgb2Zmc2V0CglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludCAyCgkqIC8vIGFjYyAqIDIKCSsKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MDMKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYwNwoJLy8gcmV0dXJuIG1lc3NhZ2U7CglmcmFtZV9kaWcgMSAvLyBtZXNzYWdlOiBieXRlW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlJdGVyYXRpb24oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5SXRlcmF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayLength.approval.teal b/tests/contracts/artifacts/ABITestDynamicArrayLength.approval.teal index 046ba8c40..832fa14bd 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayLength.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicArrayLength.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicArrayLength.arc32.json b/tests/contracts/artifacts/ABITestDynamicArrayLength.arc32.json index 7506efe23..89e36c3cc 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayLength.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayLength.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKTogdWludDY0CmR5bmFtaWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU5MAoJLy8gbzogeyBhOiB1aW50NjQ7IGI6IHVpbnQ2NFtdIH0gPSB7IGE6IDEsIGI6IFsxLCAyLCAzXSB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDBhIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIG86IHsgYTogdWludDY0OyBiOiB1aW50NjRbXSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTIKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTQKCS8vIHJldHVybiBhLmxlbmd0aCArIG8uYi5sZW5ndGg7CglmcmFtZV9kaWcgMSAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2CglmcmFtZV9kaWcgMCAvLyBvOiB7IGE6IHVpbnQ2NDsgYjogdWludDY0W10gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA4Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCA4IC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWxlbgoJaW50IDgKCS8KCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKTogdWludDY0CmR5bmFtaWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU5MAoJLy8gbzogeyBhOiB1aW50NjQ7IGI6IHVpbnQ2NFtdIH0gPSB7IGE6IDEsIGI6IFsxLCAyLCAzXSB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDBhIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIG86IHsgYTogdWludDY0OyBiOiB1aW50NjRbXSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTIKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTQKCS8vIHJldHVybiBhLmxlbmd0aCArIG8uYi5sZW5ndGg7CglmcmFtZV9kaWcgMSAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2CglmcmFtZV9kaWcgMCAvLyBvOiB7IGE6IHVpbnQ2NDsgYjogdWludDY0W10gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA4Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCA4IC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWxlbgoJaW50IDgKCS8KCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicArrayLength.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicArrayLength.arc56_draft.json index 6de491244..87c6324f3 100644 --- a/tests/contracts/artifacts/ABITestDynamicArrayLength.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicArrayLength.arc56_draft.json @@ -60,958 +60,961 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1588, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7 - ] - }, - { - "teal": 13, - "source": 1588, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 14, - "source": 1588, - "pc": [ - 10 - ] - }, - { - "teal": 15, - "source": 1588, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 16, - "source": 1588, - "pc": [ - 13 - ] - }, - { - "teal": 17, - "source": 1588, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 18, - "source": 1588, - "pc": [ - 16 - ] - }, - { - "teal": 19, - "source": 1588, - "pc": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ] - }, - { - "teal": 23, - "source": 1588, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 43 - ] - }, - { - "teal": 28, - "source": 1589, - "pc": [ - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 31, - "source": 1589, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 32, - "source": 1589, - "pc": [ - 53 - ] - }, - { - "teal": 33, - "source": 1589, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 1589, - "pc": [ - 55 - ] - }, - { - "teal": 35, - "source": 1589, - "pc": [ - 56 - ] - }, - { - "teal": 36, - "source": 1589, - "pc": [ - 57 - ] - }, - { - "teal": 40, - "source": 1589, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 43, - "source": 1589, - "pc": [ - 61 - ] - }, - { - "teal": 44, - "source": 1589, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 1590, - "pc": [ - 63 - ] - }, - { - "teal": 49, - "source": 1590, - "pc": [ - 64 - ] - }, - { - "teal": 50, - "source": 1590, - "pc": [ - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 51, - "source": 1590, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 52, - "source": 1590, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 53, - "source": 1590, - "pc": [ - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109 - ] - }, - { - "teal": 54, - "source": 1590, - "pc": [ - 110, - 111, - 112 - ] - }, - { - "teal": 55, - "source": 1590, - "pc": [ - 113 - ] - }, - { - "teal": 56, - "source": 1590, - "pc": [ - 114 - ] - }, - { - "teal": 57, - "source": 1590, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 61, - "source": 1592, - "pc": [ - 117 - ] - }, - { - "teal": 62, - "source": 1592, - "pc": [ - 118 - ] - }, - { - "teal": 63, - "source": 1592, - "pc": [ - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 64, - "source": 1592, - "pc": [ - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 65, - "source": 1592, - "pc": [ - 132, - 133, - 134 - ] - }, - { - "teal": 66, - "source": 1592, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143 - ] - }, - { - "teal": 67, - "source": 1592, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 68, - "source": 1592, - "pc": [ - 147, - 148, - 149, - 150, - 151 - ] - }, - { - "teal": 69, - "source": 1592, - "pc": [ - 152, - 153, - 154 - ] - }, - { - "teal": 70, - "source": 1592, - "pc": [ - 155 - ] - }, - { - "teal": 71, - "source": 1592, - "pc": [ - 156 - ] - }, - { - "teal": 72, - "source": 1592, - "pc": [ - 157, - 158, - 159, - 160 - ] - }, - { - "teal": 73, - "source": 1592, - "pc": [ - 161 - ] - }, - { - "teal": 74, - "source": 1592, - "pc": [ - 162 - ] - }, - { - "teal": 75, - "source": 1592, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 79, - "source": 1594, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 80, - "source": 1594, - "pc": [ - 167, - 168 - ] - }, - { - "teal": 81, - "source": 1594, - "pc": [ - 169 - ] - }, - { - "teal": 82, - "source": 1594, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 83, - "source": 1594, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 84, - "source": 1594, - "pc": [ - 174 - ] - }, - { - "teal": 85, - "source": 1594, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 86, - "source": 1594, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 87, - "source": 1594, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 88, - "source": 1594, - "pc": [ - 181 - ] - }, - { - "teal": 89, - "source": 1594, - "pc": [ - 182 - ] - }, - { - "teal": 90, - "source": 1594, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 91, - "source": 1594, - "pc": [ - 185 - ] - }, - { - "teal": 92, - "source": 1594, - "pc": [ - 186 - ] - }, - { - "teal": 93, - "source": 1594, - "pc": [ - 187 - ] - }, - { - "teal": 94, - "source": 1594, - "pc": [ - 188 - ] - }, - { - "teal": 95, - "source": 1594, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 96, - "source": 1594, - "pc": [ - 191 - ] - }, - { - "teal": 97, - "source": 1594, - "pc": [ - 192 - ] - }, - { - "teal": 98, - "source": 1594, - "pc": [ - 193, - 194, - 195 - ] - }, - { - "teal": 99, - "source": 1594, - "pc": [ - 196 - ] - }, - { - "teal": 100, - "source": 1594, - "pc": [ - 197 - ] - }, - { - "teal": 101, - "source": 1594, - "pc": [ - 198 - ] - }, - { - "teal": 102, - "source": 1594, - "pc": [ - 199 - ] - }, - { - "teal": 105, - "source": 1589, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 108, - "source": 1589, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 109, - "source": 1589, - "pc": [ - 204 - ] - }, - { - "teal": 112, - "source": 1588, - "pc": [ - 205 - ] - }, - { - "teal": 113, - "source": 1588, - "pc": [ - 206 - ] - }, - { - "teal": 116, - "source": 1588, - "pc": [ - 207, - 208, - 209, - 210, - 211, - 212 - ] - }, - { - "teal": 117, - "source": 1588, - "pc": [ - 213, - 214, - 215 - ] - }, - { - "teal": 118, - "source": 1588, - "pc": [ - 216, - 217, - 218, - 219 - ] - }, - { - "teal": 121, - "source": 1588, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 220 - ] - }, - { - "teal": 124, - "source": 1588, - "pc": [ - 221, - 222, - 223, - 224, - 225, - 226 - ] - }, - { - "teal": 125, - "source": 1588, - "pc": [ - 227, - 228, - 229 - ] - }, - { - "teal": 126, - "source": 1588, - "pc": [ - 230, - 231, - 232, - 233 - ] - }, - { - "teal": 129, - "source": 1588, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 234 - ] - }, - { - "teal": 132, - "source": 1588, - "pc": [ - 235, - 236, - 237 - ] - }, - { - "teal": 133, - "source": 1588, - "pc": [ - 238, - 239 - ] - }, - { - "teal": 134, - "source": 1588, - "pc": [ - 240, - 241 - ] - }, - { - "teal": 135, - "source": 1588, - "pc": [ - 242 - ] - }, - { - "teal": 136, - "source": 1588, - "pc": [ - 243, - 244 - ] - }, - { - "teal": 137, - "source": 1588, - "pc": [ - 245, - 246 - ] - }, - { - "teal": 138, - "source": 1588, - "pc": [ - 247 - ] - }, - { - "teal": 141, - "source": 1588, - "pc": [ - 248, - 249, - 250 - ] - }, - { - "teal": 142, - "source": 1588, - "pc": [ - 251, - 252 - ] - }, - { - "teal": 143, - "source": 1588, - "pc": [ - 253, - 254 - ] - }, - { - "teal": 144, - "source": 1588, - "pc": [ - 255 - ] - }, - { - "teal": 145, - "source": 1588, - "pc": [ - 256, - 257 - ] - }, - { - "teal": 146, - "source": 1588, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 147, - "source": 1588, - "pc": [ - 260 - ] - }, - { - "teal": 148, - "source": 1588, - "pc": [ - 261 - ] - }, - { - "teal": 149, - "source": 1588, - "pc": [ - 262, - 263 - ] - }, - { - "teal": 150, - "source": 1588, - "pc": [ - 264 - ] - }, - { - "teal": 151, - "source": 1588, - "pc": [ - 265 - ] - }, - { - "teal": 152, - "source": 1588, - "pc": [ - 266 - ] - }, - { - "teal": 153, - "source": 1588, - "pc": [ - 267, - 268, - 269 - ] - }, - { - "teal": 154, - "source": 1588, - "pc": [ - 270, - 271 - ] - }, - { - "teal": 155, - "source": 1588, - "pc": [ - 272, - 273 - ] - }, - { - "teal": 156, - "source": 1588, - "pc": [ - 274 - ] - }, - { - "teal": 157, - "source": 1588, - "pc": [ - 275 - ] - }, - { - "teal": 158, - "source": 1588, - "pc": [ - 276, - 277 - ] - }, - { - "teal": 159, - "source": 1588, - "pc": [ - 278, - 279 - ] - }, - { - "teal": 160, - "source": 1588, - "pc": [ - 280, - 281 - ] - }, - { - "teal": 161, - "source": 1588, - "pc": [ - 282, - 283 - ] - }, - { - "teal": 162, - "source": 1588, - "pc": [ - 284 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1588, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "teal": 13, + "source": 1588, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 14, + "source": 1588, + "pc": [ + 10 + ] + }, + { + "teal": 15, + "source": 1588, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 16, + "source": 1588, + "pc": [ + 13 + ] + }, + { + "teal": 17, + "source": 1588, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 18, + "source": 1588, + "pc": [ + 16 + ] + }, + { + "teal": 19, + "source": 1588, + "pc": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "teal": 23, + "source": 1588, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 43 + ] + }, + { + "teal": 28, + "source": 1589, + "pc": [ + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 31, + "source": 1589, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 32, + "source": 1589, + "pc": [ + 53 + ] + }, + { + "teal": 33, + "source": 1589, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 1589, + "pc": [ + 55 + ] + }, + { + "teal": 35, + "source": 1589, + "pc": [ + 56 + ] + }, + { + "teal": 36, + "source": 1589, + "pc": [ + 57 + ] + }, + { + "teal": 40, + "source": 1589, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 43, + "source": 1589, + "pc": [ + 61 + ] + }, + { + "teal": 44, + "source": 1589, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 1590, + "pc": [ + 63 + ] + }, + { + "teal": 49, + "source": 1590, + "pc": [ + 64 + ] + }, + { + "teal": 50, + "source": 1590, + "pc": [ + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 51, + "source": 1590, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 52, + "source": 1590, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 53, + "source": 1590, + "pc": [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109 + ] + }, + { + "teal": 54, + "source": 1590, + "pc": [ + 110, + 111, + 112 + ] + }, + { + "teal": 55, + "source": 1590, + "pc": [ + 113 + ] + }, + { + "teal": 56, + "source": 1590, + "pc": [ + 114 + ] + }, + { + "teal": 57, + "source": 1590, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 61, + "source": 1592, + "pc": [ + 117 + ] + }, + { + "teal": 62, + "source": 1592, + "pc": [ + 118 + ] + }, + { + "teal": 63, + "source": 1592, + "pc": [ + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 64, + "source": 1592, + "pc": [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 65, + "source": 1592, + "pc": [ + 132, + 133, + 134 + ] + }, + { + "teal": 66, + "source": 1592, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + }, + { + "teal": 67, + "source": 1592, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 68, + "source": 1592, + "pc": [ + 147, + 148, + 149, + 150, + 151 + ] + }, + { + "teal": 69, + "source": 1592, + "pc": [ + 152, + 153, + 154 + ] + }, + { + "teal": 70, + "source": 1592, + "pc": [ + 155 + ] + }, + { + "teal": 71, + "source": 1592, + "pc": [ + 156 + ] + }, + { + "teal": 72, + "source": 1592, + "pc": [ + 157, + 158, + 159, + 160 + ] + }, + { + "teal": 73, + "source": 1592, + "pc": [ + 161 + ] + }, + { + "teal": 74, + "source": 1592, + "pc": [ + 162 + ] + }, + { + "teal": 75, + "source": 1592, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 79, + "source": 1594, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 80, + "source": 1594, + "pc": [ + 167, + 168 + ] + }, + { + "teal": 81, + "source": 1594, + "pc": [ + 169 + ] + }, + { + "teal": 82, + "source": 1594, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 83, + "source": 1594, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 84, + "source": 1594, + "pc": [ + 174 + ] + }, + { + "teal": 85, + "source": 1594, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 86, + "source": 1594, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 87, + "source": 1594, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 88, + "source": 1594, + "pc": [ + 181 + ] + }, + { + "teal": 89, + "source": 1594, + "pc": [ + 182 + ] + }, + { + "teal": 90, + "source": 1594, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 91, + "source": 1594, + "pc": [ + 185 + ] + }, + { + "teal": 92, + "source": 1594, + "pc": [ + 186 + ] + }, + { + "teal": 93, + "source": 1594, + "pc": [ + 187 + ] + }, + { + "teal": 94, + "source": 1594, + "pc": [ + 188 + ] + }, + { + "teal": 95, + "source": 1594, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 96, + "source": 1594, + "pc": [ + 191 + ] + }, + { + "teal": 97, + "source": 1594, + "pc": [ + 192 + ] + }, + { + "teal": 98, + "source": 1594, + "pc": [ + 193, + 194, + 195 + ] + }, + { + "teal": 99, + "source": 1594, + "pc": [ + 196 + ] + }, + { + "teal": 100, + "source": 1594, + "pc": [ + 197 + ] + }, + { + "teal": 101, + "source": 1594, + "pc": [ + 198 + ] + }, + { + "teal": 102, + "source": 1594, + "pc": [ + 199 + ] + }, + { + "teal": 105, + "source": 1589, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 108, + "source": 1589, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 109, + "source": 1589, + "pc": [ + 204 + ] + }, + { + "teal": 112, + "source": 1588, + "pc": [ + 205 + ] + }, + { + "teal": 113, + "source": 1588, + "pc": [ + 206 + ] + }, + { + "teal": 116, + "source": 1588, + "pc": [ + 207, + 208, + 209, + 210, + 211, + 212 + ] + }, + { + "teal": 117, + "source": 1588, + "pc": [ + 213, + 214, + 215 + ] + }, + { + "teal": 118, + "source": 1588, + "pc": [ + 216, + 217, + 218, + 219 + ] + }, + { + "teal": 121, + "source": 1588, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 220 + ] + }, + { + "teal": 124, + "source": 1588, + "pc": [ + 221, + 222, + 223, + 224, + 225, + 226 + ] + }, + { + "teal": 125, + "source": 1588, + "pc": [ + 227, + 228, + 229 + ] + }, + { + "teal": 126, + "source": 1588, + "pc": [ + 230, + 231, + 232, + 233 + ] + }, + { + "teal": 129, + "source": 1588, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 234 + ] + }, + { + "teal": 132, + "source": 1588, + "pc": [ + 235, + 236, + 237 + ] + }, + { + "teal": 133, + "source": 1588, + "pc": [ + 238, + 239 + ] + }, + { + "teal": 134, + "source": 1588, + "pc": [ + 240, + 241 + ] + }, + { + "teal": 135, + "source": 1588, + "pc": [ + 242 + ] + }, + { + "teal": 136, + "source": 1588, + "pc": [ + 243, + 244 + ] + }, + { + "teal": 137, + "source": 1588, + "pc": [ + 245, + 246 + ] + }, + { + "teal": 138, + "source": 1588, + "pc": [ + 247 + ] + }, + { + "teal": 141, + "source": 1588, + "pc": [ + 248, + 249, + 250 + ] + }, + { + "teal": 142, + "source": 1588, + "pc": [ + 251, + 252 + ] + }, + { + "teal": 143, + "source": 1588, + "pc": [ + 253, + 254 + ] + }, + { + "teal": 144, + "source": 1588, + "pc": [ + 255 + ] + }, + { + "teal": 145, + "source": 1588, + "pc": [ + 256, + 257 + ] + }, + { + "teal": 146, + "source": 1588, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 147, + "source": 1588, + "pc": [ + 260 + ] + }, + { + "teal": 148, + "source": 1588, + "pc": [ + 261 + ] + }, + { + "teal": 149, + "source": 1588, + "pc": [ + 262, + 263 + ] + }, + { + "teal": 150, + "source": 1588, + "pc": [ + 264 + ] + }, + { + "teal": 151, + "source": 1588, + "pc": [ + 265 + ] + }, + { + "teal": 152, + "source": 1588, + "pc": [ + 266 + ] + }, + { + "teal": 153, + "source": 1588, + "pc": [ + 267, + 268, + 269 + ] + }, + { + "teal": 154, + "source": 1588, + "pc": [ + 270, + 271 + ] + }, + { + "teal": 155, + "source": 1588, + "pc": [ + 272, + 273 + ] + }, + { + "teal": 156, + "source": 1588, + "pc": [ + 274 + ] + }, + { + "teal": 157, + "source": 1588, + "pc": [ + 275 + ] + }, + { + "teal": 158, + "source": 1588, + "pc": [ + 276, + 277 + ] + }, + { + "teal": 159, + "source": 1588, + "pc": [ + 278, + 279 + ] + }, + { + "teal": 160, + "source": 1588, + "pc": [ + 280, + 281 + ] + }, + { + "teal": 161, + "source": 1588, + "pc": [ + 282, + 283 + ] + }, + { + "teal": 162, + "source": 1588, + "pc": [ + 284 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKTogdWludDY0CmR5bmFtaWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU5MAoJLy8gbzogeyBhOiB1aW50NjQ7IGI6IHVpbnQ2NFtdIH0gPSB7IGE6IDEsIGI6IFsxLCAyLCAzXSB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDBhIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIG86IHsgYTogdWludDY0OyBiOiB1aW50NjRbXSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTIKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTQKCS8vIHJldHVybiBhLmxlbmd0aCArIG8uYi5sZW5ndGg7CglmcmFtZV9kaWcgMSAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2CglmcmFtZV9kaWcgMCAvLyBvOiB7IGE6IHVpbnQ2NDsgYjogdWludDY0W10gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA4Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCA4IC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWxlbgoJaW50IDgKCS8KCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2R5bmFtaWNBcnJheUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljQXJyYXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQXJyYXlMZW5ndGgoKTogdWludDY0CmR5bmFtaWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU5MAoJLy8gbzogeyBhOiB1aW50NjQ7IGI6IHVpbnQ2NFtdIH0gPSB7IGE6IDEsIGI6IFsxLCAyLCAzXSB9CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDBhIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIG86IHsgYTogdWludDY0OyBiOiB1aW50NjRbXSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTIKCS8vIGE6IHN0cmluZ1tdID0gWydIZWxsbycsICdXb3JsZCcsICchJ10KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDU0ODY1NmM2YzZmCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDU1NzZmNzI2YzY0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYnl0ZSAweDAwMDMKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAxIC8vIGE6IHN0cmluZ1tdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1OTQKCS8vIHJldHVybiBhLmxlbmd0aCArIG8uYi5sZW5ndGg7CglmcmFtZV9kaWcgMSAvLyBhOiBzdHJpbmdbXQoJaW50IDAKCWV4dHJhY3RfdWludDE2CglmcmFtZV9kaWcgMCAvLyBvOiB7IGE6IHVpbnQ2NDsgYjogdWludDY0W10gfQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA4Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCA4IC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCWxlbgoJaW50IDgKCS8KCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArray.approval.teal b/tests/contracts/artifacts/ABITestDynamicBoolArray.approval.teal index 7aa614b66..2bcfff55f 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArray.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicBoolArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArray.arc32.json b/tests/contracts/artifacts/ABITestDynamicBoolArray.arc32.json index df2335807..cc063cf55 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArray.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicBoolArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5KClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMQoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBib29sZWFuW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5KClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMQoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBib29sZWFuW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArray.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicBoolArray.arc56_draft.json index fd7c3dbdc..bac3108db 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicBoolArray.arc56_draft.json @@ -60,517 +60,520 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 929, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 929, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 929, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 929, - "pc": [ - 9 - ] - }, - { - "teal": 16, - "source": 929, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 929, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 929, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 929, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 929, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 930, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 930, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 930, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 930, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 930, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 930, - "pc": [ - 53 - ] - }, - { - "teal": 39, - "source": 930, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 42, - "source": 930, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 46, - "source": 931, - "pc": [ - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 47, - "source": 931, - "pc": [ - 63, - 64, - 65, - 66 - ] - }, - { - "teal": 48, - "source": 931, - "pc": [ - 67 - ] - }, - { - "teal": 49, - "source": 931, - "pc": [ - 68 - ] - }, - { - "teal": 50, - "source": 931, - "pc": [ - 69 - ] - }, - { - "teal": 51, - "source": 931, - "pc": [ - 70 - ] - }, - { - "teal": 52, - "source": 931, - "pc": [ - 71 - ] - }, - { - "teal": 53, - "source": 931, - "pc": [ - 72 - ] - }, - { - "teal": 54, - "source": 931, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 55, - "source": 931, - "pc": [ - 75 - ] - }, - { - "teal": 56, - "source": 931, - "pc": [ - 76 - ] - }, - { - "teal": 57, - "source": 931, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 58, - "source": 931, - "pc": [ - 79 - ] - }, - { - "teal": 59, - "source": 931, - "pc": [ - 80 - ] - }, - { - "teal": 60, - "source": 931, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 61, - "source": 931, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 931, - "pc": [ - 84 - ] - }, - { - "teal": 63, - "source": 931, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 64, - "source": 931, - "pc": [ - 87 - ] - }, - { - "teal": 65, - "source": 931, - "pc": [ - 88 - ] - }, - { - "teal": 66, - "source": 931, - "pc": [ - 89 - ] - }, - { - "teal": 67, - "source": 931, - "pc": [ - 90 - ] - }, - { - "teal": 68, - "source": 931, - "pc": [ - 91 - ] - }, - { - "teal": 69, - "source": 931, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 70, - "source": 931, - "pc": [ - 94 - ] - }, - { - "teal": 71, - "source": 931, - "pc": [ - 95 - ] - }, - { - "teal": 72, - "source": 931, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 73, - "source": 931, - "pc": [ - 98 - ] - }, - { - "teal": 74, - "source": 931, - "pc": [ - 99 - ] - }, - { - "teal": 75, - "source": 931, - "pc": [ - 100 - ] - }, - { - "teal": 76, - "source": 931, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 80, - "source": 933, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 83, - "source": 930, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 84, - "source": 930, - "pc": [ - 107 - ] - }, - { - "teal": 87, - "source": 929, - "pc": [ - 108 - ] - }, - { - "teal": 88, - "source": 929, - "pc": [ - 109 - ] - }, - { - "teal": 91, - "source": 929, - "pc": [ - 110, - 111, - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 92, - "source": 929, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 93, - "source": 929, - "pc": [ - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 96, - "source": 929, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 123 - ] - }, - { - "teal": 99, - "source": 929, - "pc": [ - 124, - 125, - 126, - 127, - 128, - 129 - ] - }, - { - "teal": 100, - "source": 929, - "pc": [ - 130, - 131, - 132 - ] - }, - { - "teal": 101, - "source": 929, - "pc": [ - 133, - 134, - 135, - 136 - ] - }, - { - "teal": 104, - "source": 929, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 137 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 929, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 929, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 929, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 929, + "pc": [ + 9 + ] + }, + { + "teal": 16, + "source": 929, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 929, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 929, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 929, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 929, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 930, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 930, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 930, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 930, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 930, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 930, + "pc": [ + 53 + ] + }, + { + "teal": 39, + "source": 930, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 42, + "source": 930, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 46, + "source": 931, + "pc": [ + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 47, + "source": 931, + "pc": [ + 63, + 64, + 65, + 66 + ] + }, + { + "teal": 48, + "source": 931, + "pc": [ + 67 + ] + }, + { + "teal": 49, + "source": 931, + "pc": [ + 68 + ] + }, + { + "teal": 50, + "source": 931, + "pc": [ + 69 + ] + }, + { + "teal": 51, + "source": 931, + "pc": [ + 70 + ] + }, + { + "teal": 52, + "source": 931, + "pc": [ + 71 + ] + }, + { + "teal": 53, + "source": 931, + "pc": [ + 72 + ] + }, + { + "teal": 54, + "source": 931, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 55, + "source": 931, + "pc": [ + 75 + ] + }, + { + "teal": 56, + "source": 931, + "pc": [ + 76 + ] + }, + { + "teal": 57, + "source": 931, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 58, + "source": 931, + "pc": [ + 79 + ] + }, + { + "teal": 59, + "source": 931, + "pc": [ + 80 + ] + }, + { + "teal": 60, + "source": 931, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 61, + "source": 931, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 931, + "pc": [ + 84 + ] + }, + { + "teal": 63, + "source": 931, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 64, + "source": 931, + "pc": [ + 87 + ] + }, + { + "teal": 65, + "source": 931, + "pc": [ + 88 + ] + }, + { + "teal": 66, + "source": 931, + "pc": [ + 89 + ] + }, + { + "teal": 67, + "source": 931, + "pc": [ + 90 + ] + }, + { + "teal": 68, + "source": 931, + "pc": [ + 91 + ] + }, + { + "teal": 69, + "source": 931, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 70, + "source": 931, + "pc": [ + 94 + ] + }, + { + "teal": 71, + "source": 931, + "pc": [ + 95 + ] + }, + { + "teal": 72, + "source": 931, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 73, + "source": 931, + "pc": [ + 98 + ] + }, + { + "teal": 74, + "source": 931, + "pc": [ + 99 + ] + }, + { + "teal": 75, + "source": 931, + "pc": [ + 100 + ] + }, + { + "teal": 76, + "source": 931, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 80, + "source": 933, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 83, + "source": 930, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 84, + "source": 930, + "pc": [ + 107 + ] + }, + { + "teal": 87, + "source": 929, + "pc": [ + 108 + ] + }, + { + "teal": 88, + "source": 929, + "pc": [ + 109 + ] + }, + { + "teal": 91, + "source": 929, + "pc": [ + 110, + 111, + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 92, + "source": 929, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 93, + "source": 929, + "pc": [ + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 96, + "source": 929, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 123 + ] + }, + { + "teal": 99, + "source": 929, + "pc": [ + 124, + 125, + 126, + 127, + 128, + 129 + ] + }, + { + "teal": 100, + "source": 929, + "pc": [ + 130, + 131, + 132 + ] + }, + { + "teal": 101, + "source": 929, + "pc": [ + 133, + 134, + 135, + 136 + ] + }, + { + "teal": 104, + "source": 929, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 137 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5KClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMQoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBib29sZWFuW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5KClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMQoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkzMwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBib29sZWFuW10KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImR5bmFtaWNCb29sQXJyYXkoKWJvb2xbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.approval.teal b/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.approval.teal index 40a440f96..ddbc30780 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc32.json b/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc32.json index e21f953e2..3879851eb 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCiphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIGR5bmFtaWNCb29sQXJyYXlBY2Nlc3MKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpOiBib29sZWFuCmR5bmFtaWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MzkKCS8vIGE6IGJvb2xlYW5bXSA9IFt0cnVlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2VdCglieXRlIDB4MDAwOQoJYnl0ZSAweDAwMDAKCWludCAwCglpbnQgMQoJc2V0Yml0CglpbnQgMQoJaW50IDAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWludCAzCglpbnQgMQoJc2V0Yml0CglpbnQgNAoJaW50IDAKCXNldGJpdAoJaW50IDUKCWludCAwCglzZXRiaXQKCWludCA2CglpbnQgMQoJc2V0Yml0CglpbnQgNwoJaW50IDAKCXNldGJpdAoJaW50IDgKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDEKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCiphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIGR5bmFtaWNCb29sQXJyYXlBY2Nlc3MKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpOiBib29sZWFuCmR5bmFtaWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MzkKCS8vIGE6IGJvb2xlYW5bXSA9IFt0cnVlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2VdCglieXRlIDB4MDAwOQoJYnl0ZSAweDAwMDAKCWludCAwCglpbnQgMQoJc2V0Yml0CglpbnQgMQoJaW50IDAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWludCAzCglpbnQgMQoJc2V0Yml0CglpbnQgNAoJaW50IDAKCXNldGJpdAoJaW50IDUKCWludCAwCglzZXRiaXQKCWludCA2CglpbnQgMQoJc2V0Yml0CglpbnQgNwoJaW50IDAKCXNldGJpdAoJaW50IDgKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDEKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc56_draft.json index 92a1a022e..78a907a19 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicBoolArrayAccess.arc56_draft.json @@ -60,578 +60,581 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 937, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 937, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 937, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 937, - "pc": [ - 10 - ] - }, - { - "teal": 16, - "source": 937, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 937, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 937, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 937, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 937, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 938, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 938, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 938, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 33, - "source": 938, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 938, - "pc": [ - 55, - 56 - ] - }, - { - "teal": 35, - "source": 938, - "pc": [ - 57 - ] - }, - { - "teal": 36, - "source": 938, - "pc": [ - 58 - ] - }, - { - "teal": 37, - "source": 938, - "pc": [ - 59 - ] - }, - { - "teal": 38, - "source": 938, - "pc": [ - 60 - ] - }, - { - "teal": 39, - "source": 938, - "pc": [ - 61 - ] - }, - { - "teal": 43, - "source": 938, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 46, - "source": 938, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 50, - "source": 939, - "pc": [ - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 51, - "source": 939, - "pc": [ - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 52, - "source": 939, - "pc": [ - 75 - ] - }, - { - "teal": 53, - "source": 939, - "pc": [ - 76 - ] - }, - { - "teal": 54, - "source": 939, - "pc": [ - 77 - ] - }, - { - "teal": 55, - "source": 939, - "pc": [ - 78 - ] - }, - { - "teal": 56, - "source": 939, - "pc": [ - 79 - ] - }, - { - "teal": 57, - "source": 939, - "pc": [ - 80 - ] - }, - { - "teal": 58, - "source": 939, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 59, - "source": 939, - "pc": [ - 83 - ] - }, - { - "teal": 60, - "source": 939, - "pc": [ - 84 - ] - }, - { - "teal": 61, - "source": 939, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 62, - "source": 939, - "pc": [ - 87 - ] - }, - { - "teal": 63, - "source": 939, - "pc": [ - 88 - ] - }, - { - "teal": 64, - "source": 939, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 65, - "source": 939, - "pc": [ - 91 - ] - }, - { - "teal": 66, - "source": 939, - "pc": [ - 92 - ] - }, - { - "teal": 67, - "source": 939, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 68, - "source": 939, - "pc": [ - 95 - ] - }, - { - "teal": 69, - "source": 939, - "pc": [ - 96 - ] - }, - { - "teal": 70, - "source": 939, - "pc": [ - 97 - ] - }, - { - "teal": 71, - "source": 939, - "pc": [ - 98 - ] - }, - { - "teal": 72, - "source": 939, - "pc": [ - 99 - ] - }, - { - "teal": 73, - "source": 939, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 74, - "source": 939, - "pc": [ - 102 - ] - }, - { - "teal": 75, - "source": 939, - "pc": [ - 103 - ] - }, - { - "teal": 76, - "source": 939, - "pc": [ - 104 - ] - }, - { - "teal": 77, - "source": 939, - "pc": [ - 105 - ] - }, - { - "teal": 78, - "source": 939, - "pc": [ - 106 - ] - }, - { - "teal": 79, - "source": 939, - "pc": [ - 107 - ] - }, - { - "teal": 80, - "source": 939, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 84, - "source": 941, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 85, - "source": 941, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 86, - "source": 941, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 87, - "source": 941, - "pc": [ - 116 - ] - }, - { - "teal": 88, - "source": 941, - "pc": [ - 117 - ] - }, - { - "teal": 91, - "source": 938, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 92, - "source": 938, - "pc": [ - 120 - ] - }, - { - "teal": 95, - "source": 937, - "pc": [ - 121 - ] - }, - { - "teal": 96, - "source": 937, - "pc": [ - 122 - ] - }, - { - "teal": 99, - "source": 937, - "pc": [ - 123, - 124, - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 100, - "source": 937, - "pc": [ - 129, - 130, - 131 - ] - }, - { - "teal": 101, - "source": 937, - "pc": [ - 132, - 133, - 134, - 135 - ] - }, - { - "teal": 104, - "source": 937, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 136 - ] - }, - { - "teal": 107, - "source": 937, - "pc": [ - 137, - 138, - 139, - 140, - 141, - 142 - ] - }, - { - "teal": 108, - "source": 937, - "pc": [ - 143, - 144, - 145 - ] - }, - { - "teal": 109, - "source": 937, - "pc": [ - 146, - 147, - 148, - 149 - ] - }, - { - "teal": 112, - "source": 937, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 150 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 937, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 937, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 937, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 937, + "pc": [ + 10 + ] + }, + { + "teal": 16, + "source": 937, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 937, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 937, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 937, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 937, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 938, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 938, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 938, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 33, + "source": 938, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 938, + "pc": [ + 55, + 56 + ] + }, + { + "teal": 35, + "source": 938, + "pc": [ + 57 + ] + }, + { + "teal": 36, + "source": 938, + "pc": [ + 58 + ] + }, + { + "teal": 37, + "source": 938, + "pc": [ + 59 + ] + }, + { + "teal": 38, + "source": 938, + "pc": [ + 60 + ] + }, + { + "teal": 39, + "source": 938, + "pc": [ + 61 + ] + }, + { + "teal": 43, + "source": 938, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 46, + "source": 938, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 50, + "source": 939, + "pc": [ + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 51, + "source": 939, + "pc": [ + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 52, + "source": 939, + "pc": [ + 75 + ] + }, + { + "teal": 53, + "source": 939, + "pc": [ + 76 + ] + }, + { + "teal": 54, + "source": 939, + "pc": [ + 77 + ] + }, + { + "teal": 55, + "source": 939, + "pc": [ + 78 + ] + }, + { + "teal": 56, + "source": 939, + "pc": [ + 79 + ] + }, + { + "teal": 57, + "source": 939, + "pc": [ + 80 + ] + }, + { + "teal": 58, + "source": 939, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 59, + "source": 939, + "pc": [ + 83 + ] + }, + { + "teal": 60, + "source": 939, + "pc": [ + 84 + ] + }, + { + "teal": 61, + "source": 939, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 62, + "source": 939, + "pc": [ + 87 + ] + }, + { + "teal": 63, + "source": 939, + "pc": [ + 88 + ] + }, + { + "teal": 64, + "source": 939, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 65, + "source": 939, + "pc": [ + 91 + ] + }, + { + "teal": 66, + "source": 939, + "pc": [ + 92 + ] + }, + { + "teal": 67, + "source": 939, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 68, + "source": 939, + "pc": [ + 95 + ] + }, + { + "teal": 69, + "source": 939, + "pc": [ + 96 + ] + }, + { + "teal": 70, + "source": 939, + "pc": [ + 97 + ] + }, + { + "teal": 71, + "source": 939, + "pc": [ + 98 + ] + }, + { + "teal": 72, + "source": 939, + "pc": [ + 99 + ] + }, + { + "teal": 73, + "source": 939, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 74, + "source": 939, + "pc": [ + 102 + ] + }, + { + "teal": 75, + "source": 939, + "pc": [ + 103 + ] + }, + { + "teal": 76, + "source": 939, + "pc": [ + 104 + ] + }, + { + "teal": 77, + "source": 939, + "pc": [ + 105 + ] + }, + { + "teal": 78, + "source": 939, + "pc": [ + 106 + ] + }, + { + "teal": 79, + "source": 939, + "pc": [ + 107 + ] + }, + { + "teal": 80, + "source": 939, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 84, + "source": 941, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 85, + "source": 941, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 86, + "source": 941, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 87, + "source": 941, + "pc": [ + 116 + ] + }, + { + "teal": 88, + "source": 941, + "pc": [ + 117 + ] + }, + { + "teal": 91, + "source": 938, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 92, + "source": 938, + "pc": [ + 120 + ] + }, + { + "teal": 95, + "source": 937, + "pc": [ + 121 + ] + }, + { + "teal": 96, + "source": 937, + "pc": [ + 122 + ] + }, + { + "teal": 99, + "source": 937, + "pc": [ + 123, + 124, + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 100, + "source": 937, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 101, + "source": 937, + "pc": [ + 132, + 133, + 134, + 135 + ] + }, + { + "teal": 104, + "source": 937, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 136 + ] + }, + { + "teal": 107, + "source": 937, + "pc": [ + 137, + 138, + 139, + 140, + 141, + 142 + ] + }, + { + "teal": 108, + "source": 937, + "pc": [ + 143, + 144, + 145 + ] + }, + { + "teal": 109, + "source": 937, + "pc": [ + 146, + 147, + 148, + 149 + ] + }, + { + "teal": 112, + "source": 937, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 150 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCiphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIGR5bmFtaWNCb29sQXJyYXlBY2Nlc3MKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpOiBib29sZWFuCmR5bmFtaWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MzkKCS8vIGE6IGJvb2xlYW5bXSA9IFt0cnVlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2VdCglieXRlIDB4MDAwOQoJYnl0ZSAweDAwMDAKCWludCAwCglpbnQgMQoJc2V0Yml0CglpbnQgMQoJaW50IDAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWludCAzCglpbnQgMQoJc2V0Yml0CglpbnQgNAoJaW50IDAKCXNldGJpdAoJaW50IDUKCWludCAwCglzZXRiaXQKCWludCA2CglpbnQgMQoJc2V0Yml0CglpbnQgNwoJaW50IDAKCXNldGJpdAoJaW50IDgKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDEKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCiphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkeW5hbWljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIGR5bmFtaWNCb29sQXJyYXlBY2Nlc3MKCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpOiBib29sZWFuCmR5bmFtaWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MzkKCS8vIGE6IGJvb2xlYW5bXSA9IFt0cnVlLCBmYWxzZSwgdHJ1ZSwgdHJ1ZSwgZmFsc2UsIGZhbHNlLCB0cnVlLCBmYWxzZSwgZmFsc2VdCglieXRlIDB4MDAwOQoJYnl0ZSAweDAwMDAKCWludCAwCglpbnQgMQoJc2V0Yml0CglpbnQgMQoJaW50IDAKCXNldGJpdAoJaW50IDIKCWludCAxCglzZXRiaXQKCWludCAzCglpbnQgMQoJc2V0Yml0CglpbnQgNAoJaW50IDAKCXNldGJpdAoJaW50IDUKCWludCAwCglzZXRiaXQKCWludCA2CglpbnQgMQoJc2V0Yml0CglpbnQgNwoJaW50IDAKCXNldGJpdAoJaW50IDgKCWludCAwCglzZXRiaXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDEKCS8vIHJldHVybiBhWzhdOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZHluYW1pY0Jvb2xBcnJheUFjY2VzcygpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZHluYW1pY0Jvb2xBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.approval.teal b/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.approval.teal index 89d78a462..5c2c96b61 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc32.json b/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc32.json index f7b986f10..ef4def8ad 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5VXBkYXRlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5VXBkYXRlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheVVwZGF0ZSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheVVwZGF0ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1NwoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1OQoJLy8gYVs4XSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IGJvb2xlYW5bXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyNAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5VXBkYXRlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5VXBkYXRlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheVVwZGF0ZSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheVVwZGF0ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1NwoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1OQoJLy8gYVs4XSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IGJvb2xlYW5bXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyNAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc56_draft.json index 11ec0afef..dd592f689 100644 --- a/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicBoolArrayUpdate.arc56_draft.json @@ -60,571 +60,574 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 955, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 955, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 955, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 955, - "pc": [ - 9 - ] - }, - { - "teal": 16, - "source": 955, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 955, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 955, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 955, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 955, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 956, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 956, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 956, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 956, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 956, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 956, - "pc": [ - 53 - ] - }, - { - "teal": 39, - "source": 956, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 42, - "source": 956, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 46, - "source": 957, - "pc": [ - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 47, - "source": 957, - "pc": [ - 63, - 64, - 65, - 66 - ] - }, - { - "teal": 48, - "source": 957, - "pc": [ - 67 - ] - }, - { - "teal": 49, - "source": 957, - "pc": [ - 68 - ] - }, - { - "teal": 50, - "source": 957, - "pc": [ - 69 - ] - }, - { - "teal": 51, - "source": 957, - "pc": [ - 70 - ] - }, - { - "teal": 52, - "source": 957, - "pc": [ - 71 - ] - }, - { - "teal": 53, - "source": 957, - "pc": [ - 72 - ] - }, - { - "teal": 54, - "source": 957, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 55, - "source": 957, - "pc": [ - 75 - ] - }, - { - "teal": 56, - "source": 957, - "pc": [ - 76 - ] - }, - { - "teal": 57, - "source": 957, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 58, - "source": 957, - "pc": [ - 79 - ] - }, - { - "teal": 59, - "source": 957, - "pc": [ - 80 - ] - }, - { - "teal": 60, - "source": 957, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 61, - "source": 957, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 957, - "pc": [ - 84 - ] - }, - { - "teal": 63, - "source": 957, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 64, - "source": 957, - "pc": [ - 87 - ] - }, - { - "teal": 65, - "source": 957, - "pc": [ - 88 - ] - }, - { - "teal": 66, - "source": 957, - "pc": [ - 89 - ] - }, - { - "teal": 67, - "source": 957, - "pc": [ - 90 - ] - }, - { - "teal": 68, - "source": 957, - "pc": [ - 91 - ] - }, - { - "teal": 69, - "source": 957, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 70, - "source": 957, - "pc": [ - 94 - ] - }, - { - "teal": 71, - "source": 957, - "pc": [ - 95 - ] - }, - { - "teal": 72, - "source": 957, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 73, - "source": 957, - "pc": [ - 98 - ] - }, - { - "teal": 74, - "source": 957, - "pc": [ - 99 - ] - }, - { - "teal": 75, - "source": 957, - "pc": [ - 100 - ] - }, - { - "teal": 76, - "source": 957, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 80, - "source": 959, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 81, - "source": 959, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 82, - "source": 959, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 83, - "source": 959, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 84, - "source": 959, - "pc": [ - 111 - ] - }, - { - "teal": 85, - "source": 959, - "pc": [ - 112 - ] - }, - { - "teal": 86, - "source": 959, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 90, - "source": 961, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 93, - "source": 956, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 94, - "source": 956, - "pc": [ - 119 - ] - }, - { - "teal": 97, - "source": 955, - "pc": [ - 120 - ] - }, - { - "teal": 98, - "source": 955, - "pc": [ - 121 - ] - }, - { - "teal": 101, - "source": 955, - "pc": [ - 122, - 123, - 124, - 125, - 126, - 127 - ] - }, - { - "teal": 102, - "source": 955, - "pc": [ - 128, - 129, - 130 - ] - }, - { - "teal": 103, - "source": 955, - "pc": [ - 131, - 132, - 133, - 134 - ] - }, - { - "teal": 106, - "source": 955, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 135 - ] - }, - { - "teal": 109, - "source": 955, - "pc": [ - 136, - 137, - 138, - 139, - 140, - 141 - ] - }, - { - "teal": 110, - "source": 955, - "pc": [ - 142, - 143, - 144 - ] - }, - { - "teal": 111, - "source": 955, - "pc": [ - 145, - 146, - 147, - 148 - ] - }, - { - "teal": 114, - "source": 955, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 149 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 955, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 955, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 955, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 955, + "pc": [ + 9 + ] + }, + { + "teal": 16, + "source": 955, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 955, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 955, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 955, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 955, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 956, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 956, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 956, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 956, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 956, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 956, + "pc": [ + 53 + ] + }, + { + "teal": 39, + "source": 956, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 42, + "source": 956, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 46, + "source": 957, + "pc": [ + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 47, + "source": 957, + "pc": [ + 63, + 64, + 65, + 66 + ] + }, + { + "teal": 48, + "source": 957, + "pc": [ + 67 + ] + }, + { + "teal": 49, + "source": 957, + "pc": [ + 68 + ] + }, + { + "teal": 50, + "source": 957, + "pc": [ + 69 + ] + }, + { + "teal": 51, + "source": 957, + "pc": [ + 70 + ] + }, + { + "teal": 52, + "source": 957, + "pc": [ + 71 + ] + }, + { + "teal": 53, + "source": 957, + "pc": [ + 72 + ] + }, + { + "teal": 54, + "source": 957, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 55, + "source": 957, + "pc": [ + 75 + ] + }, + { + "teal": 56, + "source": 957, + "pc": [ + 76 + ] + }, + { + "teal": 57, + "source": 957, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 58, + "source": 957, + "pc": [ + 79 + ] + }, + { + "teal": 59, + "source": 957, + "pc": [ + 80 + ] + }, + { + "teal": 60, + "source": 957, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 61, + "source": 957, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 957, + "pc": [ + 84 + ] + }, + { + "teal": 63, + "source": 957, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 64, + "source": 957, + "pc": [ + 87 + ] + }, + { + "teal": 65, + "source": 957, + "pc": [ + 88 + ] + }, + { + "teal": 66, + "source": 957, + "pc": [ + 89 + ] + }, + { + "teal": 67, + "source": 957, + "pc": [ + 90 + ] + }, + { + "teal": 68, + "source": 957, + "pc": [ + 91 + ] + }, + { + "teal": 69, + "source": 957, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 70, + "source": 957, + "pc": [ + 94 + ] + }, + { + "teal": 71, + "source": 957, + "pc": [ + 95 + ] + }, + { + "teal": 72, + "source": 957, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 73, + "source": 957, + "pc": [ + 98 + ] + }, + { + "teal": 74, + "source": 957, + "pc": [ + 99 + ] + }, + { + "teal": 75, + "source": 957, + "pc": [ + 100 + ] + }, + { + "teal": 76, + "source": 957, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 80, + "source": 959, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 81, + "source": 959, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 82, + "source": 959, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 83, + "source": 959, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 84, + "source": 959, + "pc": [ + 111 + ] + }, + { + "teal": 85, + "source": 959, + "pc": [ + 112 + ] + }, + { + "teal": 86, + "source": 959, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 90, + "source": 961, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 93, + "source": 956, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 94, + "source": 956, + "pc": [ + 119 + ] + }, + { + "teal": 97, + "source": 955, + "pc": [ + 120 + ] + }, + { + "teal": 98, + "source": 955, + "pc": [ + 121 + ] + }, + { + "teal": 101, + "source": 955, + "pc": [ + 122, + 123, + 124, + 125, + 126, + 127 + ] + }, + { + "teal": 102, + "source": 955, + "pc": [ + 128, + 129, + 130 + ] + }, + { + "teal": 103, + "source": 955, + "pc": [ + 131, + 132, + 133, + 134 + ] + }, + { + "teal": 106, + "source": 955, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 135 + ] + }, + { + "teal": 109, + "source": 955, + "pc": [ + 136, + 137, + 138, + 139, + 140, + 141 + ] + }, + { + "teal": 110, + "source": 955, + "pc": [ + 142, + 143, + 144 + ] + }, + { + "teal": 111, + "source": 955, + "pc": [ + 145, + 146, + 147, + 148 + ] + }, + { + "teal": 114, + "source": 955, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 149 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5VXBkYXRlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5VXBkYXRlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheVVwZGF0ZSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheVVwZGF0ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1NwoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1OQoJLy8gYVs4XSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IGJvb2xlYW5bXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyNAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10KKmFiaV9yb3V0ZV9keW5hbWljQm9vbEFycmF5VXBkYXRlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGR5bmFtaWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbXQoJY2FsbHN1YiBkeW5hbWljQm9vbEFycmF5VXBkYXRlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZHluYW1pY0Jvb2xBcnJheVVwZGF0ZSgpOiBib29sZWFuW10KZHluYW1pY0Jvb2xBcnJheVVwZGF0ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1NwoJLy8gYTogYm9vbGVhbltdID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDA5CglieXRlIDB4MDAwMAoJaW50IDAKCWludCAxCglzZXRiaXQKCWludCAxCglpbnQgMAoJc2V0Yml0CglpbnQgMgoJaW50IDEKCXNldGJpdAoJaW50IDMKCWludCAxCglzZXRiaXQKCWludCA0CglpbnQgMAoJc2V0Yml0CglpbnQgNQoJaW50IDAKCXNldGJpdAoJaW50IDYKCWludCAxCglzZXRiaXQKCWludCA3CglpbnQgMAoJc2V0Yml0CglpbnQgOAoJaW50IDAKCXNldGJpdAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gYTogYm9vbGVhbltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1OQoJLy8gYVs4XSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIGE6IGJvb2xlYW5bXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyNAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IGJvb2xlYW5bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogYm9vbGVhbltdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljQm9vbEFycmF5VXBkYXRlKClib29sW10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2R5bmFtaWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestDynamicTupleArray.approval.teal b/tests/contracts/artifacts/ABITestDynamicTupleArray.approval.teal index f2bd08541..3c4f82508 100644 --- a/tests/contracts/artifacts/ABITestDynamicTupleArray.approval.teal +++ b/tests/contracts/artifacts/ABITestDynamicTupleArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestDynamicTupleArray.arc32.json b/tests/contracts/artifacts/ABITestDynamicTupleArray.arc32.json index 3695c6ba1..6c8d3f5f9 100644 --- a/tests/contracts/artifacts/ABITestDynamicTupleArray.arc32.json +++ b/tests/contracts/artifacts/ABITestDynamicTupleArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljVHVwbGVBcnJheSgpdWludDY0CiphYmlfcm91dGVfZHluYW1pY1R1cGxlQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZHluYW1pY1R1cGxlQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljVHVwbGVBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNUdXBsZUFycmF5KCk6IHVpbnQ2NApkeW5hbWljVHVwbGVBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM3OQoJLy8gYTogW3VpbnQxNiwgdWludDY0XVtdID0gWwoJLy8gICAgICAgWzExLCAyMl0sCgkvLyAgICAgICBbMzMsIDQ0XSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMDAwMDAwMDAwMDAwMTYwMDIxMDAwMDAwMDAwMDAwMDAyYwoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ2NF1bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozODQKCS8vIHJldHVybiBhWzFdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDY0XVtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAxMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljVHVwbGVBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljVHVwbGVBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljVHVwbGVBcnJheSgpdWludDY0CiphYmlfcm91dGVfZHluYW1pY1R1cGxlQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZHluYW1pY1R1cGxlQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljVHVwbGVBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNUdXBsZUFycmF5KCk6IHVpbnQ2NApkeW5hbWljVHVwbGVBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM3OQoJLy8gYTogW3VpbnQxNiwgdWludDY0XVtdID0gWwoJLy8gICAgICAgWzExLCAyMl0sCgkvLyAgICAgICBbMzMsIDQ0XSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMDAwMDAwMDAwMDAwMTYwMDIxMDAwMDAwMDAwMDAwMDAyYwoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ2NF1bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozODQKCS8vIHJldHVybiBhWzFdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDY0XVtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAxMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljVHVwbGVBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljVHVwbGVBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestDynamicTupleArray.arc56_draft.json b/tests/contracts/artifacts/ABITestDynamicTupleArray.arc56_draft.json index c4bcd0165..e7489cd78 100644 --- a/tests/contracts/artifacts/ABITestDynamicTupleArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestDynamicTupleArray.arc56_draft.json @@ -60,361 +60,364 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 377, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 377, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 377, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 377, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 377, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 377, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 377, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 377, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 377, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 378, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 378, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 378, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 378, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 378, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 378, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 378, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 378, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 378, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 50, - "source": 379, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 51, - "source": 379, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 55, - "source": 384, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 56, - "source": 384, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 57, - "source": 384, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 58, - "source": 384, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 59, - "source": 384, - "pc": [ - 92 - ] - }, - { - "teal": 62, - "source": 378, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 63, - "source": 378, - "pc": [ - 95 - ] - }, - { - "teal": 66, - "source": 377, - "pc": [ - 96 - ] - }, - { - "teal": 67, - "source": 377, - "pc": [ - 97 - ] - }, - { - "teal": 70, - "source": 377, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 71, - "source": 377, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 72, - "source": 377, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 75, - "source": 377, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 111 - ] - }, - { - "teal": 78, - "source": 377, - "pc": [ - 112, - 113, - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 79, - "source": 377, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 80, - "source": 377, - "pc": [ - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 83, - "source": 377, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 125 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 377, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 377, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 377, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 377, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 377, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 377, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 377, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 377, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 377, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 378, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 378, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 378, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 378, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 378, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 378, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 378, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 378, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 378, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 50, + "source": 379, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 51, + "source": 379, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 55, + "source": 384, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 56, + "source": 384, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 57, + "source": 384, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 58, + "source": 384, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 59, + "source": 384, + "pc": [ + 92 + ] + }, + { + "teal": 62, + "source": 378, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 63, + "source": 378, + "pc": [ + 95 + ] + }, + { + "teal": 66, + "source": 377, + "pc": [ + 96 + ] + }, + { + "teal": 67, + "source": 377, + "pc": [ + 97 + ] + }, + { + "teal": 70, + "source": 377, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 71, + "source": 377, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 72, + "source": 377, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 75, + "source": 377, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 111 + ] + }, + { + "teal": 78, + "source": 377, + "pc": [ + 112, + 113, + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 79, + "source": 377, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 80, + "source": 377, + "pc": [ + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 83, + "source": 377, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 125 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljVHVwbGVBcnJheSgpdWludDY0CiphYmlfcm91dGVfZHluYW1pY1R1cGxlQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZHluYW1pY1R1cGxlQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljVHVwbGVBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNUdXBsZUFycmF5KCk6IHVpbnQ2NApkeW5hbWljVHVwbGVBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM3OQoJLy8gYTogW3VpbnQxNiwgdWludDY0XVtdID0gWwoJLy8gICAgICAgWzExLCAyMl0sCgkvLyAgICAgICBbMzMsIDQ0XSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMDAwMDAwMDAwMDAwMTYwMDIxMDAwMDAwMDAwMDAwMDAyYwoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ2NF1bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozODQKCS8vIHJldHVybiBhWzFdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDY0XVtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAxMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljVHVwbGVBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljVHVwbGVBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkeW5hbWljVHVwbGVBcnJheSgpdWludDY0CiphYmlfcm91dGVfZHluYW1pY1R1cGxlQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZHluYW1pY1R1cGxlQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBkeW5hbWljVHVwbGVBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNUdXBsZUFycmF5KCk6IHVpbnQ2NApkeW5hbWljVHVwbGVBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM3OQoJLy8gYTogW3VpbnQxNiwgdWludDY0XVtdID0gWwoJLy8gICAgICAgWzExLCAyMl0sCgkvLyAgICAgICBbMzMsIDQ0XSwKCS8vICAgICBdCglieXRlIDB4MDAwYjAwMDAwMDAwMDAwMDAwMTYwMDIxMDAwMDAwMDAwMDAwMDAyYwoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ2NF1bXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozODQKCS8vIHJldHVybiBhWzFdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDY0XVtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAxMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJkeW5hbWljVHVwbGVBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9keW5hbWljVHVwbGVBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestEmptyDynamicArray.approval.teal b/tests/contracts/artifacts/ABITestEmptyDynamicArray.approval.teal index ec5a10d40..d190c5c4f 100644 --- a/tests/contracts/artifacts/ABITestEmptyDynamicArray.approval.teal +++ b/tests/contracts/artifacts/ABITestEmptyDynamicArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc32.json b/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc32.json index 78fdefb40..5bf509e04 100644 --- a/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc32.json +++ b/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgZW1wdHlEeW5hbWljQXJyYXkKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVtcHR5RHluYW1pY0FycmF5KCk6IHVpbnQ2NFtdCmVtcHR5RHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2OAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZW1wdHlEeW5hbWljQXJyYXkoKXVpbnQ2NFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgZW1wdHlEeW5hbWljQXJyYXkKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVtcHR5RHluYW1pY0FycmF5KCk6IHVpbnQ2NFtdCmVtcHR5RHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2OAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZW1wdHlEeW5hbWljQXJyYXkoKXVpbnQ2NFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc56_draft.json b/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc56_draft.json index 418ae5708..30ef72981 100644 --- a/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestEmptyDynamicArray.arc56_draft.json @@ -60,329 +60,332 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 866, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 866, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 866, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 866, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 866, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 866, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 866, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 866, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 866, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 867, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 867, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 867, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 867, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 867, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 867, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 867, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 867, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 38, - "source": 867, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 867, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 867, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 867, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 867, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 867, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 867, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 51, - "source": 868, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 52, - "source": 867, - "pc": [ - 69 - ] - }, - { - "teal": 55, - "source": 866, - "pc": [ - 70 - ] - }, - { - "teal": 56, - "source": 866, - "pc": [ - 71 - ] - }, - { - "teal": 59, - "source": 866, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 60, - "source": 866, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 61, - "source": 866, - "pc": [ - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 64, - "source": 866, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 85 - ] - }, - { - "teal": 67, - "source": 866, - "pc": [ - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 68, - "source": 866, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 69, - "source": 866, - "pc": [ - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 72, - "source": 866, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 99 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 866, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 866, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 866, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 866, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 866, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 866, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 866, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 866, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 866, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 867, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 867, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 867, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 867, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 867, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 867, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 867, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 867, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 38, + "source": 867, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 867, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 867, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 867, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 867, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 867, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 867, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 51, + "source": 868, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 52, + "source": 867, + "pc": [ + 69 + ] + }, + { + "teal": 55, + "source": 866, + "pc": [ + 70 + ] + }, + { + "teal": 56, + "source": 866, + "pc": [ + 71 + ] + }, + { + "teal": 59, + "source": 866, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 60, + "source": 866, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 61, + "source": 866, + "pc": [ + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 64, + "source": 866, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 85 + ] + }, + { + "teal": 67, + "source": 866, + "pc": [ + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 68, + "source": 866, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 69, + "source": 866, + "pc": [ + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 72, + "source": 866, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 99 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgZW1wdHlEeW5hbWljQXJyYXkKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVtcHR5RHluYW1pY0FycmF5KCk6IHVpbnQ2NFtdCmVtcHR5RHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2OAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZW1wdHlEeW5hbWljQXJyYXkoKXVpbnQ2NFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBlbXB0eUR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgZW1wdHlEeW5hbWljQXJyYXkKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVtcHR5RHluYW1pY0FycmF5KCk6IHVpbnQ2NFtdCmVtcHR5RHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2OAoJLy8gcmV0dXJuIFtdOwoJYnl0ZSAweAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZW1wdHlEeW5hbWljQXJyYXkoKXVpbnQ2NFtdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9lbXB0eUR5bmFtaWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestEmptyStaticArray.approval.teal b/tests/contracts/artifacts/ABITestEmptyStaticArray.approval.teal index 99d47fae2..40a23d02d 100644 --- a/tests/contracts/artifacts/ABITestEmptyStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestEmptyStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestEmptyStaticArray.arc32.json b/tests/contracts/artifacts/ABITestEmptyStaticArray.arc32.json index 135793005..ab0546e32 100644 --- a/tests/contracts/artifacts/ABITestEmptyStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestEmptyStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eVN0YXRpY0FycmF5KCl1aW50MTZbM10KKmFiaV9yb3V0ZV9lbXB0eVN0YXRpY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBlbXB0eVN0YXRpY0FycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlTdGF0aWNBcnJheSgpOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CmVtcHR5U3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NDIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbXQoJYnl0ZSAweDAwMDAwMDAwMDAwMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODQ0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZW1wdHlTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eVN0YXRpY0FycmF5KCl1aW50MTZbM10KKmFiaV9yb3V0ZV9lbXB0eVN0YXRpY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBlbXB0eVN0YXRpY0FycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlTdGF0aWNBcnJheSgpOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CmVtcHR5U3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NDIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbXQoJYnl0ZSAweDAwMDAwMDAwMDAwMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODQ0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZW1wdHlTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestEmptyStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestEmptyStaticArray.arc56_draft.json index 2f418fb6f..e6f2d948d 100644 --- a/tests/contracts/artifacts/ABITestEmptyStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestEmptyStaticArray.arc56_draft.json @@ -60,308 +60,311 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 840, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 840, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 840, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 840, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 840, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 840, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 840, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 840, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 840, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 841, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 841, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 841, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 841, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 841, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 841, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 841, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 841, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 842, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 47, - "source": 842, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 51, - "source": 844, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 54, - "source": 841, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 55, - "source": 841, - "pc": [ - 72 - ] - }, - { - "teal": 58, - "source": 840, - "pc": [ - 73 - ] - }, - { - "teal": 59, - "source": 840, - "pc": [ - 74 - ] - }, - { - "teal": 62, - "source": 840, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 63, - "source": 840, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 64, - "source": 840, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 67, - "source": 840, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 70, - "source": 840, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 71, - "source": 840, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 72, - "source": 840, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 75, - "source": 840, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 840, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 840, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 840, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 840, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 840, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 840, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 840, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 840, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 840, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 841, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 841, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 841, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 841, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 841, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 841, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 841, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 841, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 842, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 47, + "source": 842, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 51, + "source": 844, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 54, + "source": 841, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 55, + "source": 841, + "pc": [ + 72 + ] + }, + { + "teal": 58, + "source": 840, + "pc": [ + 73 + ] + }, + { + "teal": 59, + "source": 840, + "pc": [ + 74 + ] + }, + { + "teal": 62, + "source": 840, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 63, + "source": 840, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 64, + "source": 840, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 67, + "source": 840, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 70, + "source": 840, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 71, + "source": 840, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 72, + "source": 840, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 75, + "source": 840, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eVN0YXRpY0FycmF5KCl1aW50MTZbM10KKmFiaV9yb3V0ZV9lbXB0eVN0YXRpY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBlbXB0eVN0YXRpY0FycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlTdGF0aWNBcnJheSgpOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CmVtcHR5U3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NDIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbXQoJYnl0ZSAweDAwMDAwMDAwMDAwMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODQ0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZW1wdHlTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBlbXB0eVN0YXRpY0FycmF5KCl1aW50MTZbM10KKmFiaV9yb3V0ZV9lbXB0eVN0YXRpY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBlbXB0eVN0YXRpY0FycmF5Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZW1wdHlTdGF0aWNBcnJheSgpOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CmVtcHR5U3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NDIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbXQoJYnl0ZSAweDAwMDAwMDAwMDAwMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODQ0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImVtcHR5U3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZW1wdHlTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestExtractUint.approval.teal b/tests/contracts/artifacts/ABITestExtractUint.approval.teal index b672f8e3d..e5b0da27b 100644 --- a/tests/contracts/artifacts/ABITestExtractUint.approval.teal +++ b/tests/contracts/artifacts/ABITestExtractUint.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestExtractUint.arc32.json b/tests/contracts/artifacts/ABITestExtractUint.arc32.json index e8ac16b1f..58987acb2 100644 --- a/tests/contracts/artifacts/ABITestExtractUint.arc32.json +++ b/tests/contracts/artifacts/ABITestExtractUint.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRyYWN0VWludCh1aW50NjQpdWludDgKKmFiaV9yb3V0ZV9leHRyYWN0VWludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGV4dHJhY3RVaW50KHVpbnQ2NCl1aW50OAoJY2FsbHN1YiBleHRyYWN0VWludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGV4dHJhY3RVaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDcgMQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGV4dHJhY3RVaW50KGFyZzogdWludDY0KTogdWludDw4PgpleHRyYWN0VWludDoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTkKCS8vIHggPSA8dWludDw4Pj5hcmcKCWZyYW1lX2RpZyAtMSAvLyBhcmc6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTIwCgkvLyByZXR1cm4geDsKCWZyYW1lX2RpZyAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0cmFjdFVpbnQodWludDY0KXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRyYWN0VWludAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRyYWN0VWludCh1aW50NjQpdWludDgKKmFiaV9yb3V0ZV9leHRyYWN0VWludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGV4dHJhY3RVaW50KHVpbnQ2NCl1aW50OAoJY2FsbHN1YiBleHRyYWN0VWludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGV4dHJhY3RVaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDcgMQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGV4dHJhY3RVaW50KGFyZzogdWludDY0KTogdWludDw4PgpleHRyYWN0VWludDoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTkKCS8vIHggPSA8dWludDw4Pj5hcmcKCWZyYW1lX2RpZyAtMSAvLyBhcmc6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTIwCgkvLyByZXR1cm4geDsKCWZyYW1lX2RpZyAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0cmFjdFVpbnQodWludDY0KXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRyYWN0VWludAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestExtractUint.arc56_draft.json b/tests/contracts/artifacts/ABITestExtractUint.arc56_draft.json index 4eec1872c..1a1eb432b 100644 --- a/tests/contracts/artifacts/ABITestExtractUint.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestExtractUint.arc56_draft.json @@ -65,371 +65,374 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1117, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1117, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1117, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1117, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1117, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1117, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1117, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1117, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1117, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1118, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1118, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1118, - "pc": [ - 49 - ] - }, - { - "teal": 35, - "source": 1118, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 36, - "source": 1118, - "pc": [ - 53 - ] - }, - { - "teal": 37, - "source": 1118, - "pc": [ - 54 - ] - }, - { - "teal": 38, - "source": 1118, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 1118, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 40, - "source": 1118, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 1118, - "errorMessage": "extractUint return value overflowed 8 bits", - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1118, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 45, - "source": 1118, - "pc": [ - 63 - ] - }, - { - "teal": 46, - "source": 1118, - "pc": [ - 64 - ] - }, - { - "teal": 47, - "source": 1118, - "pc": [ - 65 - ] - }, - { - "teal": 48, - "source": 1118, - "pc": [ - 66 - ] - }, - { - "teal": 52, - "source": 1118, - "pc": [ - 67, - 68, - 69 - ] - }, - { - "teal": 55, - "source": 1118, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 59, - "source": 1119, - "pc": [ - 72, - 73 - ] - }, - { - "teal": 60, - "source": 1119, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 64, - "source": 1120, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 67, - "source": 1118, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 68, - "source": 1118, - "pc": [ - 80 - ] - }, - { - "teal": 71, - "source": 1117, - "pc": [ - 81 - ] - }, - { - "teal": 72, - "source": 1117, - "pc": [ - 82 - ] - }, - { - "teal": 75, - "source": 1117, - "pc": [ - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 76, - "source": 1117, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 77, - "source": 1117, - "pc": [ - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 80, - "source": 1117, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 96 - ] - }, - { - "teal": 83, - "source": 1117, - "pc": [ - 97, - 98, - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 84, - "source": 1117, - "pc": [ - 103, - 104, - 105 - ] - }, - { - "teal": 85, - "source": 1117, - "pc": [ - 106, - 107, - 108, - 109 - ] - }, - { - "teal": 88, - "source": 1117, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 110 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1117, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1117, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1117, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1117, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1117, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1117, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1117, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1117, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1117, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1118, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1118, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1118, + "pc": [ + 49 + ] + }, + { + "teal": 35, + "source": 1118, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 36, + "source": 1118, + "pc": [ + 53 + ] + }, + { + "teal": 37, + "source": 1118, + "pc": [ + 54 + ] + }, + { + "teal": 38, + "source": 1118, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 1118, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 40, + "source": 1118, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 1118, + "errorMessage": "extractUint return value overflowed 8 bits", + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1118, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 45, + "source": 1118, + "pc": [ + 63 + ] + }, + { + "teal": 46, + "source": 1118, + "pc": [ + 64 + ] + }, + { + "teal": 47, + "source": 1118, + "pc": [ + 65 + ] + }, + { + "teal": 48, + "source": 1118, + "pc": [ + 66 + ] + }, + { + "teal": 52, + "source": 1118, + "pc": [ + 67, + 68, + 69 + ] + }, + { + "teal": 55, + "source": 1118, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 59, + "source": 1119, + "pc": [ + 72, + 73 + ] + }, + { + "teal": 60, + "source": 1119, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 64, + "source": 1120, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 67, + "source": 1118, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 68, + "source": 1118, + "pc": [ + 80 + ] + }, + { + "teal": 71, + "source": 1117, + "pc": [ + 81 + ] + }, + { + "teal": 72, + "source": 1117, + "pc": [ + 82 + ] + }, + { + "teal": 75, + "source": 1117, + "pc": [ + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 76, + "source": 1117, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 77, + "source": 1117, + "pc": [ + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 80, + "source": 1117, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 96 + ] + }, + { + "teal": 83, + "source": 1117, + "pc": [ + 97, + 98, + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 84, + "source": 1117, + "pc": [ + 103, + 104, + 105 + ] + }, + { + "teal": 85, + "source": 1117, + "pc": [ + 106, + 107, + 108, + 109 + ] + }, + { + "teal": 88, + "source": 1117, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 110 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRyYWN0VWludCh1aW50NjQpdWludDgKKmFiaV9yb3V0ZV9leHRyYWN0VWludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGV4dHJhY3RVaW50KHVpbnQ2NCl1aW50OAoJY2FsbHN1YiBleHRyYWN0VWludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGV4dHJhY3RVaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDcgMQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGV4dHJhY3RVaW50KGFyZzogdWludDY0KTogdWludDw4PgpleHRyYWN0VWludDoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTkKCS8vIHggPSA8dWludDw4Pj5hcmcKCWZyYW1lX2RpZyAtMSAvLyBhcmc6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTIwCgkvLyByZXR1cm4geDsKCWZyYW1lX2RpZyAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0cmFjdFVpbnQodWludDY0KXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRyYWN0VWludAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRyYWN0VWludCh1aW50NjQpdWludDgKKmFiaV9yb3V0ZV9leHRyYWN0VWludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGV4dHJhY3RVaW50KHVpbnQ2NCl1aW50OAoJY2FsbHN1YiBleHRyYWN0VWludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGV4dHJhY3RVaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDcgMQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGV4dHJhY3RVaW50KGFyZzogdWludDY0KTogdWludDw4PgpleHRyYWN0VWludDoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTkKCS8vIHggPSA8dWludDw4Pj5hcmcKCWZyYW1lX2RpZyAtMSAvLyBhcmc6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTIwCgkvLyByZXR1cm4geDsKCWZyYW1lX2RpZyAwIC8vIHg6IHVuc2FmZSB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0cmFjdFVpbnQodWludDY0KXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRyYWN0VWludAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestForEachReturn.approval.teal b/tests/contracts/artifacts/ABITestForEachReturn.approval.teal index 660228016..304f0f99a 100644 --- a/tests/contracts/artifacts/ABITestForEachReturn.approval.teal +++ b/tests/contracts/artifacts/ABITestForEachReturn.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestForEachReturn.arc32.json b/tests/contracts/artifacts/ABITestForEachReturn.arc32.json index 1f0ac123b..b4e93dbff 100644 --- a/tests/contracts/artifacts/ABITestForEachReturn.arc32.json +++ b/tests/contracts/artifacts/ABITestForEachReturn.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JFYWNoUmV0dXJuKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JFYWNoUmV0dXJuOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvckVhY2hSZXR1cm4oKXVpbnQ2NAoJY2FsbHN1YiBmb3JFYWNoUmV0dXJuCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yRWFjaFJldHVybigpOiB1aW50NjQKZm9yRWFjaFJldHVybjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MgoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MwoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc1CgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNzYKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc2CgkvLyByZXR1cm47CgliICpmb3JFYWNoXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc3CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc5CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JFYWNoUmV0dXJuKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvckVhY2hSZXR1cm4KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JFYWNoUmV0dXJuKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JFYWNoUmV0dXJuOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvckVhY2hSZXR1cm4oKXVpbnQ2NAoJY2FsbHN1YiBmb3JFYWNoUmV0dXJuCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yRWFjaFJldHVybigpOiB1aW50NjQKZm9yRWFjaFJldHVybjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MgoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MwoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc1CgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNzYKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc2CgkvLyByZXR1cm47CgliICpmb3JFYWNoXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc3CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc5CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JFYWNoUmV0dXJuKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvckVhY2hSZXR1cm4KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestForEachReturn.arc56_draft.json b/tests/contracts/artifacts/ABITestForEachReturn.arc56_draft.json index be80d7331..a3173def3 100644 --- a/tests/contracts/artifacts/ABITestForEachReturn.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestForEachReturn.arc56_draft.json @@ -60,615 +60,618 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1370, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1370, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1370, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1370, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1370, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1370, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1370, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1370, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1370, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1371, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 1371, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 1371, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 1371, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 1371, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1371, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1371, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1371, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1371, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1371, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 48, - "source": 1372, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 49, - "source": 1372, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 53, - "source": 1373, - "pc": [ - 91 - ] - }, - { - "teal": 54, - "source": 1373, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 58, - "source": 1375, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 59, - "source": 1375, - "pc": [ - 96 - ] - }, - { - "teal": 60, - "source": 1375, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 61, - "source": 1375, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 62, - "source": 1375, - "pc": [ - 102 - ] - }, - { - "teal": 63, - "source": 1375, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 64, - "source": 1375, - "pc": [ - 105 - ] - }, - { - "teal": 65, - "source": 1375, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 71, - "source": 1376, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 72, - "source": 1376, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 73, - "source": 1376, - "pc": [ - 112 - ] - }, - { - "teal": 74, - "source": 1376, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 79, - "source": 1376, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 84, - "source": 1377, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 85, - "source": 1377, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 86, - "source": 1377, - "pc": [ - 123 - ] - }, - { - "teal": 87, - "source": 1377, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 90, - "source": 1375, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 91, - "source": 1375, - "pc": [ - 128 - ] - }, - { - "teal": 92, - "source": 1375, - "pc": [ - 129 - ] - }, - { - "teal": 93, - "source": 1375, - "pc": [ - 130 - ] - }, - { - "teal": 94, - "source": 1375, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 95, - "source": 1375, - "pc": [ - 133 - ] - }, - { - "teal": 96, - "source": 1375, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 97, - "source": 1375, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 98, - "source": 1375, - "pc": [ - 139, - 140 - ] - }, - { - "teal": 99, - "source": 1375, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 100, - "source": 1375, - "pc": [ - 143 - ] - }, - { - "teal": 101, - "source": 1375, - "pc": [ - 144 - ] - }, - { - "teal": 102, - "source": 1375, - "pc": [ - 145 - ] - }, - { - "teal": 103, - "source": 1375, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 104, - "source": 1375, - "pc": [ - 148, - 149, - 150 - ] - }, - { - "teal": 109, - "source": 1379, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 112, - "source": 1371, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 115, - "source": 1371, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 116, - "source": 1371, - "pc": [ - 157 - ] - }, - { - "teal": 119, - "source": 1370, - "pc": [ - 158 - ] - }, - { - "teal": 120, - "source": 1370, - "pc": [ - 159 - ] - }, - { - "teal": 123, - "source": 1370, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 124, - "source": 1370, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 125, - "source": 1370, - "pc": [ - 169, - 170, - 171, - 172 - ] - }, - { - "teal": 128, - "source": 1370, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 173 - ] - }, - { - "teal": 131, - "source": 1370, - "pc": [ - 174, - 175, - 176, - 177, - 178, - 179 - ] - }, - { - "teal": 132, - "source": 1370, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 133, - "source": 1370, - "pc": [ - 183, - 184, - 185, - 186 - ] - }, - { - "teal": 136, - "source": 1370, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 187 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1370, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1370, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1370, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1370, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1370, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1370, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1370, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1370, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1370, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1371, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 1371, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 1371, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 1371, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 1371, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1371, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1371, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1371, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1371, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1371, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 48, + "source": 1372, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 49, + "source": 1372, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 53, + "source": 1373, + "pc": [ + 91 + ] + }, + { + "teal": 54, + "source": 1373, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 58, + "source": 1375, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 59, + "source": 1375, + "pc": [ + 96 + ] + }, + { + "teal": 60, + "source": 1375, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 61, + "source": 1375, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 62, + "source": 1375, + "pc": [ + 102 + ] + }, + { + "teal": 63, + "source": 1375, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 64, + "source": 1375, + "pc": [ + 105 + ] + }, + { + "teal": 65, + "source": 1375, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 71, + "source": 1376, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 72, + "source": 1376, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 73, + "source": 1376, + "pc": [ + 112 + ] + }, + { + "teal": 74, + "source": 1376, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 79, + "source": 1376, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 84, + "source": 1377, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 85, + "source": 1377, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 86, + "source": 1377, + "pc": [ + 123 + ] + }, + { + "teal": 87, + "source": 1377, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 90, + "source": 1375, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 91, + "source": 1375, + "pc": [ + 128 + ] + }, + { + "teal": 92, + "source": 1375, + "pc": [ + 129 + ] + }, + { + "teal": 93, + "source": 1375, + "pc": [ + 130 + ] + }, + { + "teal": 94, + "source": 1375, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 95, + "source": 1375, + "pc": [ + 133 + ] + }, + { + "teal": 96, + "source": 1375, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 97, + "source": 1375, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 98, + "source": 1375, + "pc": [ + 139, + 140 + ] + }, + { + "teal": 99, + "source": 1375, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 100, + "source": 1375, + "pc": [ + 143 + ] + }, + { + "teal": 101, + "source": 1375, + "pc": [ + 144 + ] + }, + { + "teal": 102, + "source": 1375, + "pc": [ + 145 + ] + }, + { + "teal": 103, + "source": 1375, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 104, + "source": 1375, + "pc": [ + 148, + 149, + 150 + ] + }, + { + "teal": 109, + "source": 1379, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 112, + "source": 1371, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 115, + "source": 1371, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 116, + "source": 1371, + "pc": [ + 157 + ] + }, + { + "teal": 119, + "source": 1370, + "pc": [ + 158 + ] + }, + { + "teal": 120, + "source": 1370, + "pc": [ + 159 + ] + }, + { + "teal": 123, + "source": 1370, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 124, + "source": 1370, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 125, + "source": 1370, + "pc": [ + 169, + 170, + 171, + 172 + ] + }, + { + "teal": 128, + "source": 1370, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 173 + ] + }, + { + "teal": 131, + "source": 1370, + "pc": [ + 174, + 175, + 176, + 177, + 178, + 179 + ] + }, + { + "teal": 132, + "source": 1370, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 133, + "source": 1370, + "pc": [ + 183, + 184, + 185, + 186 + ] + }, + { + "teal": 136, + "source": 1370, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 187 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JFYWNoUmV0dXJuKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JFYWNoUmV0dXJuOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvckVhY2hSZXR1cm4oKXVpbnQ2NAoJY2FsbHN1YiBmb3JFYWNoUmV0dXJuCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yRWFjaFJldHVybigpOiB1aW50NjQKZm9yRWFjaFJldHVybjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MgoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MwoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc1CgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNzYKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc2CgkvLyByZXR1cm47CgliICpmb3JFYWNoXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc3CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc5CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JFYWNoUmV0dXJuKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvckVhY2hSZXR1cm4KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JFYWNoUmV0dXJuKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JFYWNoUmV0dXJuOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvckVhY2hSZXR1cm4oKXVpbnQ2NAoJY2FsbHN1YiBmb3JFYWNoUmV0dXJuCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yRWFjaFJldHVybigpOiB1aW50NjQKZm9yRWFjaFJldHVybjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MgoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM3MwoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc1CgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNzYKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc2CgkvLyByZXR1cm47CgliICpmb3JFYWNoXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc3CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzc5CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JFYWNoUmV0dXJuKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvckVhY2hSZXR1cm4KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestForOfBreak.approval.teal b/tests/contracts/artifacts/ABITestForOfBreak.approval.teal index 198b96727..27f334778 100644 --- a/tests/contracts/artifacts/ABITestForOfBreak.approval.teal +++ b/tests/contracts/artifacts/ABITestForOfBreak.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestForOfBreak.arc32.json b/tests/contracts/artifacts/ABITestForOfBreak.arc32.json index 9948c8a57..b810b184f 100644 --- a/tests/contracts/artifacts/ABITestForOfBreak.arc32.json +++ b/tests/contracts/artifacts/ABITestForOfBreak.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkJyZWFrKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkJyZWFrOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQnJlYWsoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkJyZWFrCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZCcmVhaygpOiB1aW50NjQKZm9yT2ZCcmVhazoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MDQKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTA1CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDMgLy8gdjogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTUwNwoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9yT2ZCcmVhaygpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9mb3JPZkJyZWFrCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkJyZWFrKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkJyZWFrOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQnJlYWsoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkJyZWFrCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZCcmVhaygpOiB1aW50NjQKZm9yT2ZCcmVhazoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MDQKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTA1CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDMgLy8gdjogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTUwNwoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9yT2ZCcmVhaygpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9mb3JPZkJyZWFrCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestForOfBreak.arc56_draft.json b/tests/contracts/artifacts/ABITestForOfBreak.arc56_draft.json index 91d6b8317..1518072c6 100644 --- a/tests/contracts/artifacts/ABITestForOfBreak.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestForOfBreak.arc56_draft.json @@ -60,615 +60,618 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1496, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1496, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1496, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1496, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1496, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1496, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1496, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1496, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1496, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1497, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 1497, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 1497, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 1497, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 1497, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1497, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1497, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1497, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1497, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1497, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 48, - "source": 1498, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 49, - "source": 1498, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 53, - "source": 1499, - "pc": [ - 91 - ] - }, - { - "teal": 54, - "source": 1499, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 55, - "source": 1502, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 56, - "source": 1502, - "pc": [ - 96 - ] - }, - { - "teal": 57, - "source": 1502, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 58, - "source": 1502, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 59, - "source": 1502, - "pc": [ - 102 - ] - }, - { - "teal": 60, - "source": 1502, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 61, - "source": 1502, - "pc": [ - 105 - ] - }, - { - "teal": 62, - "source": 1502, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 68, - "source": 1504, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 69, - "source": 1504, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 70, - "source": 1504, - "pc": [ - 112 - ] - }, - { - "teal": 71, - "source": 1504, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 74, - "source": 1504, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 79, - "source": 1505, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 80, - "source": 1505, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 81, - "source": 1505, - "pc": [ - 123 - ] - }, - { - "teal": 82, - "source": 1505, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 86, - "source": 1502, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 87, - "source": 1502, - "pc": [ - 128 - ] - }, - { - "teal": 88, - "source": 1502, - "pc": [ - 129 - ] - }, - { - "teal": 89, - "source": 1502, - "pc": [ - 130 - ] - }, - { - "teal": 90, - "source": 1502, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 91, - "source": 1502, - "pc": [ - 133 - ] - }, - { - "teal": 92, - "source": 1502, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 93, - "source": 1502, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 94, - "source": 1502, - "pc": [ - 139, - 140 - ] - }, - { - "teal": 95, - "source": 1502, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 96, - "source": 1502, - "pc": [ - 143 - ] - }, - { - "teal": 97, - "source": 1502, - "pc": [ - 144 - ] - }, - { - "teal": 98, - "source": 1502, - "pc": [ - 145 - ] - }, - { - "teal": 99, - "source": 1502, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 100, - "source": 1502, - "pc": [ - 148, - 149, - 150 - ] - }, - { - "teal": 105, - "source": 1507, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 108, - "source": 1497, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 111, - "source": 1497, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 112, - "source": 1497, - "pc": [ - 157 - ] - }, - { - "teal": 115, - "source": 1496, - "pc": [ - 158 - ] - }, - { - "teal": 116, - "source": 1496, - "pc": [ - 159 - ] - }, - { - "teal": 119, - "source": 1496, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 120, - "source": 1496, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 121, - "source": 1496, - "pc": [ - 169, - 170, - 171, - 172 - ] - }, - { - "teal": 124, - "source": 1496, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 173 - ] - }, - { - "teal": 127, - "source": 1496, - "pc": [ - 174, - 175, - 176, - 177, - 178, - 179 - ] - }, - { - "teal": 128, - "source": 1496, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 129, - "source": 1496, - "pc": [ - 183, - 184, - 185, - 186 - ] - }, - { - "teal": 132, - "source": 1496, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 187 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1496, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1496, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1496, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1496, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1496, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1496, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1496, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1496, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1496, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1497, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 1497, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 1497, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 1497, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 1497, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1497, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1497, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1497, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1497, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1497, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 48, + "source": 1498, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 49, + "source": 1498, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 53, + "source": 1499, + "pc": [ + 91 + ] + }, + { + "teal": 54, + "source": 1499, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 55, + "source": 1502, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 56, + "source": 1502, + "pc": [ + 96 + ] + }, + { + "teal": 57, + "source": 1502, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 58, + "source": 1502, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 59, + "source": 1502, + "pc": [ + 102 + ] + }, + { + "teal": 60, + "source": 1502, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 61, + "source": 1502, + "pc": [ + 105 + ] + }, + { + "teal": 62, + "source": 1502, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 68, + "source": 1504, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 69, + "source": 1504, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 70, + "source": 1504, + "pc": [ + 112 + ] + }, + { + "teal": 71, + "source": 1504, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 74, + "source": 1504, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 79, + "source": 1505, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 80, + "source": 1505, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 81, + "source": 1505, + "pc": [ + 123 + ] + }, + { + "teal": 82, + "source": 1505, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 86, + "source": 1502, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 87, + "source": 1502, + "pc": [ + 128 + ] + }, + { + "teal": 88, + "source": 1502, + "pc": [ + 129 + ] + }, + { + "teal": 89, + "source": 1502, + "pc": [ + 130 + ] + }, + { + "teal": 90, + "source": 1502, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 91, + "source": 1502, + "pc": [ + 133 + ] + }, + { + "teal": 92, + "source": 1502, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 93, + "source": 1502, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 94, + "source": 1502, + "pc": [ + 139, + 140 + ] + }, + { + "teal": 95, + "source": 1502, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 96, + "source": 1502, + "pc": [ + 143 + ] + }, + { + "teal": 97, + "source": 1502, + "pc": [ + 144 + ] + }, + { + "teal": 98, + "source": 1502, + "pc": [ + 145 + ] + }, + { + "teal": 99, + "source": 1502, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 100, + "source": 1502, + "pc": [ + 148, + 149, + 150 + ] + }, + { + "teal": 105, + "source": 1507, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 108, + "source": 1497, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 111, + "source": 1497, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 112, + "source": 1497, + "pc": [ + 157 + ] + }, + { + "teal": 115, + "source": 1496, + "pc": [ + 158 + ] + }, + { + "teal": 116, + "source": 1496, + "pc": [ + 159 + ] + }, + { + "teal": 119, + "source": 1496, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 120, + "source": 1496, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 121, + "source": 1496, + "pc": [ + 169, + 170, + 171, + 172 + ] + }, + { + "teal": 124, + "source": 1496, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 173 + ] + }, + { + "teal": 127, + "source": 1496, + "pc": [ + 174, + 175, + 176, + 177, + 178, + 179 + ] + }, + { + "teal": 128, + "source": 1496, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 129, + "source": 1496, + "pc": [ + 183, + 184, + 185, + 186 + ] + }, + { + "teal": 132, + "source": 1496, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 187 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkJyZWFrKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkJyZWFrOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQnJlYWsoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkJyZWFrCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZCcmVhaygpOiB1aW50NjQKZm9yT2ZCcmVhazoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MDQKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTA1CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDMgLy8gdjogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTUwNwoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9yT2ZCcmVhaygpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9mb3JPZkJyZWFrCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkJyZWFrKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkJyZWFrOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQnJlYWsoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkJyZWFrCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZCcmVhaygpOiB1aW50NjQKZm9yT2ZCcmVhazoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ5OQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MDQKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfZW5kCgoqaWYwX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTA1CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDMgLy8gdjogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTUwNwoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9yT2ZCcmVhaygpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9mb3JPZkJyZWFrCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestForOfContinue.approval.teal b/tests/contracts/artifacts/ABITestForOfContinue.approval.teal index ff8a66c4e..014f0df37 100644 --- a/tests/contracts/artifacts/ABITestForOfContinue.approval.teal +++ b/tests/contracts/artifacts/ABITestForOfContinue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestForOfContinue.arc32.json b/tests/contracts/artifacts/ABITestForOfContinue.arc32.json index 7356128ce..644ea6f5e 100644 --- a/tests/contracts/artifacts/ABITestForOfContinue.arc32.json +++ b/tests/contracts/artifacts/ABITestForOfContinue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkNvbnRpbnVlKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkNvbnRpbnVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQ29udGludWUoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkNvbnRpbnVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZDb250aW51ZSgpOiB1aW50NjQKZm9yT2ZDb250aW51ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0ODkKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfY29udGludWUKCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OTAKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCipmb3JPZl8wX2NvbnRpbnVlOgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDkyCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JPZkNvbnRpbnVlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Zvck9mQ29udGludWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkNvbnRpbnVlKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkNvbnRpbnVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQ29udGludWUoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkNvbnRpbnVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZDb250aW51ZSgpOiB1aW50NjQKZm9yT2ZDb250aW51ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0ODkKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfY29udGludWUKCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OTAKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCipmb3JPZl8wX2NvbnRpbnVlOgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDkyCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JPZkNvbnRpbnVlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Zvck9mQ29udGludWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestForOfContinue.arc56_draft.json b/tests/contracts/artifacts/ABITestForOfContinue.arc56_draft.json index 2fff9c5eb..4d6841b32 100644 --- a/tests/contracts/artifacts/ABITestForOfContinue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestForOfContinue.arc56_draft.json @@ -60,615 +60,618 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1481, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1481, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1481, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1481, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1481, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1481, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1481, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1481, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1481, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1482, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 1482, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 1482, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 1482, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 1482, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1482, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1482, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1482, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1482, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1482, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 48, - "source": 1483, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 49, - "source": 1483, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 53, - "source": 1484, - "pc": [ - 91 - ] - }, - { - "teal": 54, - "source": 1484, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 55, - "source": 1487, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 56, - "source": 1487, - "pc": [ - 96 - ] - }, - { - "teal": 57, - "source": 1487, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 58, - "source": 1487, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 59, - "source": 1487, - "pc": [ - 102 - ] - }, - { - "teal": 60, - "source": 1487, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 61, - "source": 1487, - "pc": [ - 105 - ] - }, - { - "teal": 62, - "source": 1487, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 68, - "source": 1489, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 69, - "source": 1489, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 70, - "source": 1489, - "pc": [ - 112 - ] - }, - { - "teal": 71, - "source": 1489, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 74, - "source": 1489, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 79, - "source": 1490, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 80, - "source": 1490, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 81, - "source": 1490, - "pc": [ - 123 - ] - }, - { - "teal": 82, - "source": 1490, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 86, - "source": 1487, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 87, - "source": 1487, - "pc": [ - 128 - ] - }, - { - "teal": 88, - "source": 1487, - "pc": [ - 129 - ] - }, - { - "teal": 89, - "source": 1487, - "pc": [ - 130 - ] - }, - { - "teal": 90, - "source": 1487, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 91, - "source": 1487, - "pc": [ - 133 - ] - }, - { - "teal": 92, - "source": 1487, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 93, - "source": 1487, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 94, - "source": 1487, - "pc": [ - 139, - 140 - ] - }, - { - "teal": 95, - "source": 1487, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 96, - "source": 1487, - "pc": [ - 143 - ] - }, - { - "teal": 97, - "source": 1487, - "pc": [ - 144 - ] - }, - { - "teal": 98, - "source": 1487, - "pc": [ - 145 - ] - }, - { - "teal": 99, - "source": 1487, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 100, - "source": 1487, - "pc": [ - 148, - 149, - 150 - ] - }, - { - "teal": 105, - "source": 1492, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 108, - "source": 1482, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 111, - "source": 1482, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 112, - "source": 1482, - "pc": [ - 157 - ] - }, - { - "teal": 115, - "source": 1481, - "pc": [ - 158 - ] - }, - { - "teal": 116, - "source": 1481, - "pc": [ - 159 - ] - }, - { - "teal": 119, - "source": 1481, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 120, - "source": 1481, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 121, - "source": 1481, - "pc": [ - 169, - 170, - 171, - 172 - ] - }, - { - "teal": 124, - "source": 1481, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 173 - ] - }, - { - "teal": 127, - "source": 1481, - "pc": [ - 174, - 175, - 176, - 177, - 178, - 179 - ] - }, - { - "teal": 128, - "source": 1481, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 129, - "source": 1481, - "pc": [ - 183, - 184, - 185, - 186 - ] - }, - { - "teal": 132, - "source": 1481, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 187 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1481, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1481, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1481, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1481, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1481, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1481, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1481, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1481, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1481, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1482, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 1482, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 1482, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 1482, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 1482, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1482, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1482, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1482, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1482, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1482, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 48, + "source": 1483, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 49, + "source": 1483, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 53, + "source": 1484, + "pc": [ + 91 + ] + }, + { + "teal": 54, + "source": 1484, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 55, + "source": 1487, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 56, + "source": 1487, + "pc": [ + 96 + ] + }, + { + "teal": 57, + "source": 1487, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 58, + "source": 1487, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 59, + "source": 1487, + "pc": [ + 102 + ] + }, + { + "teal": 60, + "source": 1487, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 61, + "source": 1487, + "pc": [ + 105 + ] + }, + { + "teal": 62, + "source": 1487, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 68, + "source": 1489, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 69, + "source": 1489, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 70, + "source": 1489, + "pc": [ + 112 + ] + }, + { + "teal": 71, + "source": 1489, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 74, + "source": 1489, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 79, + "source": 1490, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 80, + "source": 1490, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 81, + "source": 1490, + "pc": [ + 123 + ] + }, + { + "teal": 82, + "source": 1490, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 86, + "source": 1487, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 87, + "source": 1487, + "pc": [ + 128 + ] + }, + { + "teal": 88, + "source": 1487, + "pc": [ + 129 + ] + }, + { + "teal": 89, + "source": 1487, + "pc": [ + 130 + ] + }, + { + "teal": 90, + "source": 1487, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 91, + "source": 1487, + "pc": [ + 133 + ] + }, + { + "teal": 92, + "source": 1487, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 93, + "source": 1487, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 94, + "source": 1487, + "pc": [ + 139, + 140 + ] + }, + { + "teal": 95, + "source": 1487, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 96, + "source": 1487, + "pc": [ + 143 + ] + }, + { + "teal": 97, + "source": 1487, + "pc": [ + 144 + ] + }, + { + "teal": 98, + "source": 1487, + "pc": [ + 145 + ] + }, + { + "teal": 99, + "source": 1487, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 100, + "source": 1487, + "pc": [ + 148, + 149, + 150 + ] + }, + { + "teal": 105, + "source": 1492, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 108, + "source": 1482, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 111, + "source": 1482, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 112, + "source": 1482, + "pc": [ + 157 + ] + }, + { + "teal": 115, + "source": 1481, + "pc": [ + 158 + ] + }, + { + "teal": 116, + "source": 1481, + "pc": [ + 159 + ] + }, + { + "teal": 119, + "source": 1481, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 120, + "source": 1481, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 121, + "source": 1481, + "pc": [ + 169, + 170, + 171, + 172 + ] + }, + { + "teal": 124, + "source": 1481, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 173 + ] + }, + { + "teal": 127, + "source": 1481, + "pc": [ + 174, + 175, + 176, + 177, + 178, + 179 + ] + }, + { + "teal": 128, + "source": 1481, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 129, + "source": 1481, + "pc": [ + 183, + 184, + 185, + 186 + ] + }, + { + "teal": 132, + "source": 1481, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 187 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkNvbnRpbnVlKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkNvbnRpbnVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQ29udGludWUoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkNvbnRpbnVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZDb250aW51ZSgpOiB1aW50NjQKZm9yT2ZDb250aW51ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0ODkKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfY29udGludWUKCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OTAKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCipmb3JPZl8wX2NvbnRpbnVlOgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDkyCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JPZkNvbnRpbnVlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Zvck9mQ29udGludWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBmb3JPZkNvbnRpbnVlKCl1aW50NjQKKmFiaV9yb3V0ZV9mb3JPZkNvbnRpbnVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGZvck9mQ29udGludWUoKXVpbnQ2NAoJY2FsbHN1YiBmb3JPZkNvbnRpbnVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZm9yT2ZDb250aW51ZSgpOiB1aW50NjQKZm9yT2ZDb250aW51ZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ4NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0ODkKCS8vIHN1bSA+IDIKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglpbnQgMgoJPgoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKmZvck9mXzBfY29udGludWUKCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OTAKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCipmb3JPZl8wX2NvbnRpbnVlOgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDkyCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJmb3JPZkNvbnRpbnVlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2Zvck9mQ29udGludWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestGlobalMethodInChain.approval.teal b/tests/contracts/artifacts/ABITestGlobalMethodInChain.approval.teal index d21bce2dd..5b66a53d6 100644 --- a/tests/contracts/artifacts/ABITestGlobalMethodInChain.approval.teal +++ b/tests/contracts/artifacts/ABITestGlobalMethodInChain.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc32.json b/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc32.json index 64de86a43..c342950e8 100644 --- a/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc32.json +++ b/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OAoqYWJpX3JvdXRlX2dsb2JhbE1ldGhvZEluQ2hhaW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWV0aG9kSW5DaGFpbigpdWludDgKCWNhbGxzdWIgZ2xvYmFsTWV0aG9kSW5DaGFpbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGdsb2JhbE1ldGhvZEluQ2hhaW4gcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWV0aG9kSW5DaGFpbigpOiB1aW50PDg+Cmdsb2JhbE1ldGhvZEluQ2hhaW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA2MQoJLy8gcmV0dXJuIGNhc3RCeXRlczxUMT4oaGV4KCcweDAwJykpLmJhcjsKCWludCAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZ2xvYmFsTWV0aG9kSW5DaGFpbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OAoqYWJpX3JvdXRlX2dsb2JhbE1ldGhvZEluQ2hhaW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWV0aG9kSW5DaGFpbigpdWludDgKCWNhbGxzdWIgZ2xvYmFsTWV0aG9kSW5DaGFpbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGdsb2JhbE1ldGhvZEluQ2hhaW4gcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWV0aG9kSW5DaGFpbigpOiB1aW50PDg+Cmdsb2JhbE1ldGhvZEluQ2hhaW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA2MQoJLy8gcmV0dXJuIGNhc3RCeXRlczxUMT4oaGV4KCcweDAwJykpLmJhcjsKCWludCAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZ2xvYmFsTWV0aG9kSW5DaGFpbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc56_draft.json b/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc56_draft.json index e08677005..e5df4f801 100644 --- a/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestGlobalMethodInChain.arc56_draft.json @@ -60,323 +60,326 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1059, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1059, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1059, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1059, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1059, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1059, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1059, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1059, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1059, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1060, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1060, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1060, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1060, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1060, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1060, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 36, - "source": 1060, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 1060, - "errorMessage": "globalMethodInChain return value overflowed 8 bits", - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1060, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 41, - "source": 1060, - "pc": [ - 59 - ] - }, - { - "teal": 42, - "source": 1060, - "pc": [ - 60 - ] - }, - { - "teal": 43, - "source": 1060, - "pc": [ - 61 - ] - }, - { - "teal": 44, - "source": 1060, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 1060, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 52, - "source": 1061, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 53, - "source": 1060, - "pc": [ - 68 - ] - }, - { - "teal": 56, - "source": 1059, - "pc": [ - 69 - ] - }, - { - "teal": 57, - "source": 1059, - "pc": [ - 70 - ] - }, - { - "teal": 60, - "source": 1059, - "pc": [ - 71, - 72, - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 61, - "source": 1059, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 62, - "source": 1059, - "pc": [ - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 65, - "source": 1059, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 84 - ] - }, - { - "teal": 68, - "source": 1059, - "pc": [ - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 69, - "source": 1059, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 70, - "source": 1059, - "pc": [ - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 73, - "source": 1059, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 98 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1059, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1059, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1059, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1059, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1059, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1059, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1059, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1059, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1059, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1060, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1060, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1060, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1060, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1060, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1060, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 36, + "source": 1060, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 1060, + "errorMessage": "globalMethodInChain return value overflowed 8 bits", + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1060, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 41, + "source": 1060, + "pc": [ + 59 + ] + }, + { + "teal": 42, + "source": 1060, + "pc": [ + 60 + ] + }, + { + "teal": 43, + "source": 1060, + "pc": [ + 61 + ] + }, + { + "teal": 44, + "source": 1060, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 1060, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 52, + "source": 1061, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 53, + "source": 1060, + "pc": [ + 68 + ] + }, + { + "teal": 56, + "source": 1059, + "pc": [ + 69 + ] + }, + { + "teal": 57, + "source": 1059, + "pc": [ + 70 + ] + }, + { + "teal": 60, + "source": 1059, + "pc": [ + 71, + 72, + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 61, + "source": 1059, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 62, + "source": 1059, + "pc": [ + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 65, + "source": 1059, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 84 + ] + }, + { + "teal": 68, + "source": 1059, + "pc": [ + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 69, + "source": 1059, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 70, + "source": 1059, + "pc": [ + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 73, + "source": 1059, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 98 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OAoqYWJpX3JvdXRlX2dsb2JhbE1ldGhvZEluQ2hhaW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWV0aG9kSW5DaGFpbigpdWludDgKCWNhbGxzdWIgZ2xvYmFsTWV0aG9kSW5DaGFpbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGdsb2JhbE1ldGhvZEluQ2hhaW4gcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWV0aG9kSW5DaGFpbigpOiB1aW50PDg+Cmdsb2JhbE1ldGhvZEluQ2hhaW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA2MQoJLy8gcmV0dXJuIGNhc3RCeXRlczxUMT4oaGV4KCcweDAwJykpLmJhcjsKCWludCAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZ2xvYmFsTWV0aG9kSW5DaGFpbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OAoqYWJpX3JvdXRlX2dsb2JhbE1ldGhvZEluQ2hhaW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWV0aG9kSW5DaGFpbigpdWludDgKCWNhbGxzdWIgZ2xvYmFsTWV0aG9kSW5DaGFpbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIGdsb2JhbE1ldGhvZEluQ2hhaW4gcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWV0aG9kSW5DaGFpbigpOiB1aW50PDg+Cmdsb2JhbE1ldGhvZEluQ2hhaW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA2MQoJLy8gcmV0dXJuIGNhc3RCeXRlczxUMT4oaGV4KCcweDAwJykpLmJhcjsKCWludCAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJnbG9iYWxNZXRob2RJbkNoYWluKCl1aW50OCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZ2xvYmFsTWV0aG9kSW5DaGFpbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.approval.teal b/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.approval.teal index 0acb3ba4c..6aa2ba890 100644 --- a/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc32.json b/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc32.json index 6cbca834a..0103cb006 100644 --- a/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0CiphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGxhcmdlTmVzdGVkU3RhdGljRm9yRWFjaEluQm94KCk6IHVpbnQ2NApsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM1OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzU5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM2MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzYyCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWludCA0MTYwCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiCglmcmFtZV9idXJ5IDEgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJc3dhcAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCSsKCWZyYW1lX2J1cnkgMyAvLyB0aGUgb2Zmc2V0IG9mIHRoZSBsYXN0IGVsZW1lbnQKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA2NAoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgNCAvLyB2OiB1aW50NTEyCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNjMKCS8vIHN1bSArPSAxCglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzY2CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9sYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0CiphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGxhcmdlTmVzdGVkU3RhdGljRm9yRWFjaEluQm94KCk6IHVpbnQ2NApsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM1OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzU5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM2MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzYyCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWludCA0MTYwCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiCglmcmFtZV9idXJ5IDEgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJc3dhcAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCSsKCWZyYW1lX2J1cnkgMyAvLyB0aGUgb2Zmc2V0IG9mIHRoZSBsYXN0IGVsZW1lbnQKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA2NAoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgNCAvLyB2OiB1aW50NTEyCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNjMKCS8vIHN1bSArPSAxCglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzY2CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9sYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc56_draft.json index f05001563..9a9e7a29e 100644 --- a/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestLargeNestedStaticForEachInBox.arc56_draft.json @@ -66,700 +66,703 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1354, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13 - ] - }, - { - "teal": 13, - "source": 1354, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 14, - "source": 1354, - "pc": [ - 16 - ] - }, - { - "teal": 15, - "source": 1354, - "pc": [ - 17 - ] - }, - { - "teal": 16, - "source": 1354, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 1354, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 1354, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 1354, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 1354, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 28, - "source": 1357, - "pc": [ - 49, - 50, - 51, - 52, - 53, - 54 - ] - }, - { - "teal": 31, - "source": 1357, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 32, - "source": 1357, - "pc": [ - 58 - ] - }, - { - "teal": 33, - "source": 1357, - "pc": [ - 59 - ] - }, - { - "teal": 34, - "source": 1357, - "pc": [ - 60 - ] - }, - { - "teal": 35, - "source": 1357, - "pc": [ - 61 - ] - }, - { - "teal": 36, - "source": 1357, - "pc": [ - 62 - ] - }, - { - "teal": 40, - "source": 1357, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 43, - "source": 1357, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 44, - "source": 1357, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 48, - "source": 1358, - "pc": [ - 70 - ] - }, - { - "teal": 49, - "source": 1358, - "pc": [ - 71 - ] - }, - { - "teal": 50, - "source": 1358, - "pc": [ - 72, - 73 - ] - }, - { - "teal": 51, - "source": 1358, - "pc": [ - 74 - ] - }, - { - "teal": 52, - "source": 1358, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 53, - "source": 1358, - "pc": [ - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 54, - "source": 1358, - "pc": [ - 82 - ] - }, - { - "teal": 55, - "source": 1358, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 56, - "source": 1358, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 57, - "source": 1358, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 58, - "source": 1358, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 59, - "source": 1358, - "pc": [ - 91 - ] - }, - { - "teal": 63, - "source": 1359, - "pc": [ - 92 - ] - }, - { - "teal": 64, - "source": 1359, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 65, - "source": 1359, - "pc": [ - 96 - ] - }, - { - "teal": 66, - "source": 1359, - "pc": [ - 97 - ] - }, - { - "teal": 70, - "source": 1360, - "pc": [ - 98 - ] - }, - { - "teal": 71, - "source": 1360, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 75, - "source": 1362, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 76, - "source": 1362, - "pc": [ - 103, - 104, - 105 - ] - }, - { - "teal": 77, - "source": 1362, - "pc": [ - 106 - ] - }, - { - "teal": 78, - "source": 1362, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 79, - "source": 1362, - "pc": [ - 109 - ] - }, - { - "teal": 80, - "source": 1362, - "pc": [ - 110 - ] - }, - { - "teal": 81, - "source": 1362, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 82, - "source": 1362, - "pc": [ - 113 - ] - }, - { - "teal": 83, - "source": 1362, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 84, - "source": 1362, - "pc": [ - 116 - ] - }, - { - "teal": 85, - "source": 1362, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 86, - "source": 1362, - "pc": [ - 119 - ] - }, - { - "teal": 87, - "source": 1362, - "pc": [ - 120 - ] - }, - { - "teal": 88, - "source": 1362, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 93, - "source": 1363, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 94, - "source": 1363, - "pc": [ - 125 - ] - }, - { - "teal": 95, - "source": 1363, - "pc": [ - 126 - ] - }, - { - "teal": 96, - "source": 1363, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 99, - "source": 1362, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 100, - "source": 1362, - "pc": [ - 131 - ] - }, - { - "teal": 101, - "source": 1362, - "pc": [ - 132 - ] - }, - { - "teal": 102, - "source": 1362, - "pc": [ - 133 - ] - }, - { - "teal": 103, - "source": 1362, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 104, - "source": 1362, - "pc": [ - 136 - ] - }, - { - "teal": 105, - "source": 1362, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 106, - "source": 1362, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 107, - "source": 1362, - "pc": [ - 142 - ] - }, - { - "teal": 108, - "source": 1362, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 109, - "source": 1362, - "pc": [ - 145 - ] - }, - { - "teal": 110, - "source": 1362, - "pc": [ - 146 - ] - }, - { - "teal": 111, - "source": 1362, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 112, - "source": 1362, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 117, - "source": 1366, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 120, - "source": 1357, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 123, - "source": 1357, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 124, - "source": 1357, - "pc": [ - 158 - ] - }, - { - "teal": 127, - "source": 1354, - "pc": [ - 159 - ] - }, - { - "teal": 128, - "source": 1354, - "pc": [ - 160 - ] - }, - { - "teal": 131, - "source": 1354, - "pc": [ - 161, - 162, - 163, - 164, - 165, - 166 - ] - }, - { - "teal": 132, - "source": 1354, - "pc": [ - 167, - 168, - 169 - ] - }, - { - "teal": 133, - "source": 1354, - "pc": [ - 170, - 171, - 172, - 173 - ] - }, - { - "teal": 136, - "source": 1354, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 174 - ] - }, - { - "teal": 139, - "source": 1354, - "pc": [ - 175, - 176, - 177, - 178, - 179, - 180 - ] - }, - { - "teal": 140, - "source": 1354, - "pc": [ - 181, - 182, - 183 - ] - }, - { - "teal": 141, - "source": 1354, - "pc": [ - 184, - 185, - 186, - 187 - ] - }, - { - "teal": 144, - "source": 1354, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 188 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1354, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + }, + { + "teal": 13, + "source": 1354, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 14, + "source": 1354, + "pc": [ + 16 + ] + }, + { + "teal": 15, + "source": 1354, + "pc": [ + 17 + ] + }, + { + "teal": 16, + "source": 1354, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 1354, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 1354, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 1354, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 1354, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 28, + "source": 1357, + "pc": [ + 49, + 50, + 51, + 52, + 53, + 54 + ] + }, + { + "teal": 31, + "source": 1357, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 32, + "source": 1357, + "pc": [ + 58 + ] + }, + { + "teal": 33, + "source": 1357, + "pc": [ + 59 + ] + }, + { + "teal": 34, + "source": 1357, + "pc": [ + 60 + ] + }, + { + "teal": 35, + "source": 1357, + "pc": [ + 61 + ] + }, + { + "teal": 36, + "source": 1357, + "pc": [ + 62 + ] + }, + { + "teal": 40, + "source": 1357, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 43, + "source": 1357, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 44, + "source": 1357, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 48, + "source": 1358, + "pc": [ + 70 + ] + }, + { + "teal": 49, + "source": 1358, + "pc": [ + 71 + ] + }, + { + "teal": 50, + "source": 1358, + "pc": [ + 72, + 73 + ] + }, + { + "teal": 51, + "source": 1358, + "pc": [ + 74 + ] + }, + { + "teal": 52, + "source": 1358, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 53, + "source": 1358, + "pc": [ + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 54, + "source": 1358, + "pc": [ + 82 + ] + }, + { + "teal": 55, + "source": 1358, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 56, + "source": 1358, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 57, + "source": 1358, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 58, + "source": 1358, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 59, + "source": 1358, + "pc": [ + 91 + ] + }, + { + "teal": 63, + "source": 1359, + "pc": [ + 92 + ] + }, + { + "teal": 64, + "source": 1359, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 65, + "source": 1359, + "pc": [ + 96 + ] + }, + { + "teal": 66, + "source": 1359, + "pc": [ + 97 + ] + }, + { + "teal": 70, + "source": 1360, + "pc": [ + 98 + ] + }, + { + "teal": 71, + "source": 1360, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 75, + "source": 1362, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 76, + "source": 1362, + "pc": [ + 103, + 104, + 105 + ] + }, + { + "teal": 77, + "source": 1362, + "pc": [ + 106 + ] + }, + { + "teal": 78, + "source": 1362, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 79, + "source": 1362, + "pc": [ + 109 + ] + }, + { + "teal": 80, + "source": 1362, + "pc": [ + 110 + ] + }, + { + "teal": 81, + "source": 1362, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 82, + "source": 1362, + "pc": [ + 113 + ] + }, + { + "teal": 83, + "source": 1362, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 84, + "source": 1362, + "pc": [ + 116 + ] + }, + { + "teal": 85, + "source": 1362, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 86, + "source": 1362, + "pc": [ + 119 + ] + }, + { + "teal": 87, + "source": 1362, + "pc": [ + 120 + ] + }, + { + "teal": 88, + "source": 1362, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 93, + "source": 1363, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 94, + "source": 1363, + "pc": [ + 125 + ] + }, + { + "teal": 95, + "source": 1363, + "pc": [ + 126 + ] + }, + { + "teal": 96, + "source": 1363, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 99, + "source": 1362, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 100, + "source": 1362, + "pc": [ + 131 + ] + }, + { + "teal": 101, + "source": 1362, + "pc": [ + 132 + ] + }, + { + "teal": 102, + "source": 1362, + "pc": [ + 133 + ] + }, + { + "teal": 103, + "source": 1362, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 104, + "source": 1362, + "pc": [ + 136 + ] + }, + { + "teal": 105, + "source": 1362, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 106, + "source": 1362, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 107, + "source": 1362, + "pc": [ + 142 + ] + }, + { + "teal": 108, + "source": 1362, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 109, + "source": 1362, + "pc": [ + 145 + ] + }, + { + "teal": 110, + "source": 1362, + "pc": [ + 146 + ] + }, + { + "teal": 111, + "source": 1362, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 112, + "source": 1362, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 117, + "source": 1366, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 120, + "source": 1357, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 123, + "source": 1357, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 124, + "source": 1357, + "pc": [ + 158 + ] + }, + { + "teal": 127, + "source": 1354, + "pc": [ + 159 + ] + }, + { + "teal": 128, + "source": 1354, + "pc": [ + 160 + ] + }, + { + "teal": 131, + "source": 1354, + "pc": [ + 161, + 162, + 163, + 164, + 165, + 166 + ] + }, + { + "teal": 132, + "source": 1354, + "pc": [ + 167, + 168, + 169 + ] + }, + { + "teal": 133, + "source": 1354, + "pc": [ + 170, + 171, + 172, + 173 + ] + }, + { + "teal": 136, + "source": 1354, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 174 + ] + }, + { + "teal": 139, + "source": 1354, + "pc": [ + 175, + 176, + 177, + 178, + 179, + 180 + ] + }, + { + "teal": 140, + "source": 1354, + "pc": [ + 181, + 182, + 183 + ] + }, + { + "teal": 141, + "source": 1354, + "pc": [ + 184, + 185, + 186, + 187 + ] + }, + { + "teal": 144, + "source": 1354, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 188 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0CiphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGxhcmdlTmVzdGVkU3RhdGljRm9yRWFjaEluQm94KCk6IHVpbnQ2NApsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM1OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzU5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM2MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzYyCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWludCA0MTYwCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiCglmcmFtZV9idXJ5IDEgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJc3dhcAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCSsKCWZyYW1lX2J1cnkgMyAvLyB0aGUgb2Zmc2V0IG9mIHRoZSBsYXN0IGVsZW1lbnQKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA2NAoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgNCAvLyB2OiB1aW50NTEyCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNjMKCS8vIHN1bSArPSAxCglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzY2CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9sYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0CiphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbGFyZ2VOZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGxhcmdlTmVzdGVkU3RhdGljRm9yRWFjaEluQm94KCk6IHVpbnQ2NApsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM1OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzU5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM2MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzYyCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJaW50IDMyIC8vIGhlYWRPZmZzZXQKCWludCA0MTYwCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiCglmcmFtZV9idXJ5IDEgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJc3dhcAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCSsKCWZyYW1lX2J1cnkgMyAvLyB0aGUgb2Zmc2V0IG9mIHRoZSBsYXN0IGVsZW1lbnQKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIgLy8ga2V5IGZvciB0aGUgYm94IHRoYXQgY29udGFpbnMgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDIgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA2NAoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgNCAvLyB2OiB1aW50NTEyCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNjMKCS8vIHN1bSArPSAxCglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzY2CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9sYXJnZU5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.approval.teal b/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.approval.teal index 460ddfeae..822ae2231 100644 --- a/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc32.json b/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc32.json index 43e75b9c8..be256cb4a 100644 --- a/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX2xhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKTogdWludDY0CmxhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ2OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDY5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDczCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0KCWludCAzMiAvLyBoZWFkT2Zmc2V0CglpbnQgNDE2MAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJZnJhbWVfYnVyeSAxIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCXN3YXAKCWR1cAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgkrCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50CglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3NAoJLy8gc3VtICs9IDEKCWZyYW1lX2RpZyAwIC8vIHN1bTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IiAvLyBrZXkgZm9yIHRoZSBib3ggdGhhdCBjb250YWlucyB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDY0Cglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIHY6IHVpbnQ1MTIKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDc3CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JPZkluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX2xhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKTogdWludDY0CmxhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ2OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDY5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDczCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0KCWludCAzMiAvLyBoZWFkT2Zmc2V0CglpbnQgNDE2MAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJZnJhbWVfYnVyeSAxIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCXN3YXAKCWR1cAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgkrCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50CglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3NAoJLy8gc3VtICs9IDEKCWZyYW1lX2RpZyAwIC8vIHN1bTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IiAvLyBrZXkgZm9yIHRoZSBib3ggdGhhdCBjb250YWlucyB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDY0Cglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIHY6IHVpbnQ1MTIKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDc3CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JPZkluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc56_draft.json index ae351325a..f13c9aba7 100644 --- a/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestLargeNestedStaticForOfInBox.arc56_draft.json @@ -66,700 +66,703 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1464, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13 - ] - }, - { - "teal": 13, - "source": 1464, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 14, - "source": 1464, - "pc": [ - 16 - ] - }, - { - "teal": 15, - "source": 1464, - "pc": [ - 17 - ] - }, - { - "teal": 16, - "source": 1464, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 1464, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 1464, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 1464, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 1464, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 28, - "source": 1467, - "pc": [ - 49, - 50, - 51, - 52, - 53, - 54 - ] - }, - { - "teal": 31, - "source": 1467, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 32, - "source": 1467, - "pc": [ - 58 - ] - }, - { - "teal": 33, - "source": 1467, - "pc": [ - 59 - ] - }, - { - "teal": 34, - "source": 1467, - "pc": [ - 60 - ] - }, - { - "teal": 35, - "source": 1467, - "pc": [ - 61 - ] - }, - { - "teal": 36, - "source": 1467, - "pc": [ - 62 - ] - }, - { - "teal": 40, - "source": 1467, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 43, - "source": 1467, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 44, - "source": 1467, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 48, - "source": 1468, - "pc": [ - 70 - ] - }, - { - "teal": 49, - "source": 1468, - "pc": [ - 71 - ] - }, - { - "teal": 50, - "source": 1468, - "pc": [ - 72, - 73 - ] - }, - { - "teal": 51, - "source": 1468, - "pc": [ - 74 - ] - }, - { - "teal": 52, - "source": 1468, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 53, - "source": 1468, - "pc": [ - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 54, - "source": 1468, - "pc": [ - 82 - ] - }, - { - "teal": 55, - "source": 1468, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 56, - "source": 1468, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 57, - "source": 1468, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 58, - "source": 1468, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 59, - "source": 1468, - "pc": [ - 91 - ] - }, - { - "teal": 63, - "source": 1469, - "pc": [ - 92 - ] - }, - { - "teal": 64, - "source": 1469, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 65, - "source": 1469, - "pc": [ - 96 - ] - }, - { - "teal": 66, - "source": 1469, - "pc": [ - 97 - ] - }, - { - "teal": 70, - "source": 1470, - "pc": [ - 98 - ] - }, - { - "teal": 71, - "source": 1470, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 75, - "source": 1473, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 76, - "source": 1473, - "pc": [ - 103, - 104, - 105 - ] - }, - { - "teal": 77, - "source": 1473, - "pc": [ - 106 - ] - }, - { - "teal": 78, - "source": 1473, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 79, - "source": 1473, - "pc": [ - 109 - ] - }, - { - "teal": 80, - "source": 1473, - "pc": [ - 110 - ] - }, - { - "teal": 81, - "source": 1473, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 82, - "source": 1473, - "pc": [ - 113 - ] - }, - { - "teal": 83, - "source": 1473, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 84, - "source": 1473, - "pc": [ - 116 - ] - }, - { - "teal": 85, - "source": 1473, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 86, - "source": 1473, - "pc": [ - 119 - ] - }, - { - "teal": 87, - "source": 1473, - "pc": [ - 120 - ] - }, - { - "teal": 88, - "source": 1473, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 93, - "source": 1474, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 94, - "source": 1474, - "pc": [ - 125 - ] - }, - { - "teal": 95, - "source": 1474, - "pc": [ - 126 - ] - }, - { - "teal": 96, - "source": 1474, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 100, - "source": 1473, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 101, - "source": 1473, - "pc": [ - 131 - ] - }, - { - "teal": 102, - "source": 1473, - "pc": [ - 132 - ] - }, - { - "teal": 103, - "source": 1473, - "pc": [ - 133 - ] - }, - { - "teal": 104, - "source": 1473, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 105, - "source": 1473, - "pc": [ - 136 - ] - }, - { - "teal": 106, - "source": 1473, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 107, - "source": 1473, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 108, - "source": 1473, - "pc": [ - 142 - ] - }, - { - "teal": 109, - "source": 1473, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 110, - "source": 1473, - "pc": [ - 145 - ] - }, - { - "teal": 111, - "source": 1473, - "pc": [ - 146 - ] - }, - { - "teal": 112, - "source": 1473, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 113, - "source": 1473, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 118, - "source": 1477, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 121, - "source": 1467, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 124, - "source": 1467, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 125, - "source": 1467, - "pc": [ - 158 - ] - }, - { - "teal": 128, - "source": 1464, - "pc": [ - 159 - ] - }, - { - "teal": 129, - "source": 1464, - "pc": [ - 160 - ] - }, - { - "teal": 132, - "source": 1464, - "pc": [ - 161, - 162, - 163, - 164, - 165, - 166 - ] - }, - { - "teal": 133, - "source": 1464, - "pc": [ - 167, - 168, - 169 - ] - }, - { - "teal": 134, - "source": 1464, - "pc": [ - 170, - 171, - 172, - 173 - ] - }, - { - "teal": 137, - "source": 1464, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 174 - ] - }, - { - "teal": 140, - "source": 1464, - "pc": [ - 175, - 176, - 177, - 178, - 179, - 180 - ] - }, - { - "teal": 141, - "source": 1464, - "pc": [ - 181, - 182, - 183 - ] - }, - { - "teal": 142, - "source": 1464, - "pc": [ - 184, - 185, - 186, - 187 - ] - }, - { - "teal": 145, - "source": 1464, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 188 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1464, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + }, + { + "teal": 13, + "source": 1464, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 14, + "source": 1464, + "pc": [ + 16 + ] + }, + { + "teal": 15, + "source": 1464, + "pc": [ + 17 + ] + }, + { + "teal": 16, + "source": 1464, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 1464, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 1464, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 1464, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 1464, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 28, + "source": 1467, + "pc": [ + 49, + 50, + 51, + 52, + 53, + 54 + ] + }, + { + "teal": 31, + "source": 1467, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 32, + "source": 1467, + "pc": [ + 58 + ] + }, + { + "teal": 33, + "source": 1467, + "pc": [ + 59 + ] + }, + { + "teal": 34, + "source": 1467, + "pc": [ + 60 + ] + }, + { + "teal": 35, + "source": 1467, + "pc": [ + 61 + ] + }, + { + "teal": 36, + "source": 1467, + "pc": [ + 62 + ] + }, + { + "teal": 40, + "source": 1467, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 43, + "source": 1467, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 44, + "source": 1467, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 48, + "source": 1468, + "pc": [ + 70 + ] + }, + { + "teal": 49, + "source": 1468, + "pc": [ + 71 + ] + }, + { + "teal": 50, + "source": 1468, + "pc": [ + 72, + 73 + ] + }, + { + "teal": 51, + "source": 1468, + "pc": [ + 74 + ] + }, + { + "teal": 52, + "source": 1468, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 53, + "source": 1468, + "pc": [ + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 54, + "source": 1468, + "pc": [ + 82 + ] + }, + { + "teal": 55, + "source": 1468, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 56, + "source": 1468, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 57, + "source": 1468, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 58, + "source": 1468, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 59, + "source": 1468, + "pc": [ + 91 + ] + }, + { + "teal": 63, + "source": 1469, + "pc": [ + 92 + ] + }, + { + "teal": 64, + "source": 1469, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 65, + "source": 1469, + "pc": [ + 96 + ] + }, + { + "teal": 66, + "source": 1469, + "pc": [ + 97 + ] + }, + { + "teal": 70, + "source": 1470, + "pc": [ + 98 + ] + }, + { + "teal": 71, + "source": 1470, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 75, + "source": 1473, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 76, + "source": 1473, + "pc": [ + 103, + 104, + 105 + ] + }, + { + "teal": 77, + "source": 1473, + "pc": [ + 106 + ] + }, + { + "teal": 78, + "source": 1473, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 79, + "source": 1473, + "pc": [ + 109 + ] + }, + { + "teal": 80, + "source": 1473, + "pc": [ + 110 + ] + }, + { + "teal": 81, + "source": 1473, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 82, + "source": 1473, + "pc": [ + 113 + ] + }, + { + "teal": 83, + "source": 1473, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 84, + "source": 1473, + "pc": [ + 116 + ] + }, + { + "teal": 85, + "source": 1473, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 86, + "source": 1473, + "pc": [ + 119 + ] + }, + { + "teal": 87, + "source": 1473, + "pc": [ + 120 + ] + }, + { + "teal": 88, + "source": 1473, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 93, + "source": 1474, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 94, + "source": 1474, + "pc": [ + 125 + ] + }, + { + "teal": 95, + "source": 1474, + "pc": [ + 126 + ] + }, + { + "teal": 96, + "source": 1474, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 100, + "source": 1473, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 101, + "source": 1473, + "pc": [ + 131 + ] + }, + { + "teal": 102, + "source": 1473, + "pc": [ + 132 + ] + }, + { + "teal": 103, + "source": 1473, + "pc": [ + 133 + ] + }, + { + "teal": 104, + "source": 1473, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 105, + "source": 1473, + "pc": [ + 136 + ] + }, + { + "teal": 106, + "source": 1473, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 107, + "source": 1473, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 108, + "source": 1473, + "pc": [ + 142 + ] + }, + { + "teal": 109, + "source": 1473, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 110, + "source": 1473, + "pc": [ + 145 + ] + }, + { + "teal": 111, + "source": 1473, + "pc": [ + 146 + ] + }, + { + "teal": 112, + "source": 1473, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 113, + "source": 1473, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 118, + "source": 1477, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 121, + "source": 1467, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 124, + "source": 1467, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 125, + "source": 1467, + "pc": [ + 158 + ] + }, + { + "teal": 128, + "source": 1464, + "pc": [ + 159 + ] + }, + { + "teal": 129, + "source": 1464, + "pc": [ + 160 + ] + }, + { + "teal": 132, + "source": 1464, + "pc": [ + 161, + 162, + 163, + 164, + 165, + 166 + ] + }, + { + "teal": 133, + "source": 1464, + "pc": [ + 167, + 168, + 169 + ] + }, + { + "teal": 134, + "source": 1464, + "pc": [ + 170, + 171, + 172, + 173 + ] + }, + { + "teal": 137, + "source": 1464, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 174 + ] + }, + { + "teal": 140, + "source": 1464, + "pc": [ + 175, + 176, + 177, + 178, + 179, + 180 + ] + }, + { + "teal": 141, + "source": 1464, + "pc": [ + 181, + 182, + 183 + ] + }, + { + "teal": 142, + "source": 1464, + "pc": [ + 184, + 185, + 186, + 187 + ] + }, + { + "teal": 145, + "source": 1464, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 188 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX2xhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKTogdWludDY0CmxhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ2OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDY5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDczCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0KCWludCAzMiAvLyBoZWFkT2Zmc2V0CglpbnQgNDE2MAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJZnJhbWVfYnVyeSAxIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCXN3YXAKCWR1cAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgkrCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50CglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3NAoJLy8gc3VtICs9IDEKCWZyYW1lX2RpZyAwIC8vIHN1bTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IiAvLyBrZXkgZm9yIHRoZSBib3ggdGhhdCBjb250YWlucyB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDY0Cglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIHY6IHVpbnQ1MTIKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDc3CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JPZkluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX2xhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKTogdWludDY0CmxhcmdlTmVzdGVkU3RhdGljRm9yT2ZJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ2OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDY5CgkvLyB0aGlzLmJLZXkuY3JlYXRlKCkKCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWludCA0MTkyCglib3hfY3JlYXRlCglwb3AKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3MAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDczCgkvLyB0aGlzLmJLZXkudmFsdWVbMV0KCWludCAzMiAvLyBoZWFkT2Zmc2V0CglpbnQgNDE2MAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJZnJhbWVfYnVyeSAxIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCXN3YXAKCWR1cAoJZnJhbWVfYnVyeSAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgkrCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50CglieXRlIDB4NjI0YjY1NzkgLy8gImJLZXkiIC8vIGtleSBmb3IgdGhlIGJveCB0aGF0IGNvbnRhaW5zIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCWJveF9leHRyYWN0CglmcmFtZV9idXJ5IDQgLy8gdjogdWludDUxMgoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ3NAoJLy8gc3VtICs9IDEKCWZyYW1lX2RpZyAwIC8vIHN1bTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHN1bTogdWludDY0CgoqZm9yT2ZfMF9jb250aW51ZToKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyAyIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgNjQKCSsKCWR1cAoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCBvZiB0aGUgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yT2ZfMF9lbmQKCWZyYW1lX2J1cnkgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IiAvLyBrZXkgZm9yIHRoZSBib3ggdGhhdCBjb250YWlucyB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgMiAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDY0Cglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA0IC8vIHY6IHVpbnQ1MTIKCWIgKmZvck9mXzAKCipmb3JPZl8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDc3CgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDAgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJsYXJnZU5lc3RlZFN0YXRpY0Zvck9mSW5Cb3goKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbGFyZ2VOZXN0ZWRTdGF0aWNGb3JPZkluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestMaxUfixed.approval.teal b/tests/contracts/artifacts/ABITestMaxUfixed.approval.teal index b08520c20..957ef77c1 100644 --- a/tests/contracts/artifacts/ABITestMaxUfixed.approval.teal +++ b/tests/contracts/artifacts/ABITestMaxUfixed.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestMaxUfixed.arc32.json b/tests/contracts/artifacts/ABITestMaxUfixed.arc32.json index e30cb2293..6d290c32b 100644 --- a/tests/contracts/artifacts/ABITestMaxUfixed.arc32.json +++ b/tests/contracts/artifacts/ABITestMaxUfixed.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhVZml4ZWQoKXVmaXhlZDY0eDIKKmFiaV9yb3V0ZV9tYXhVZml4ZWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbWF4VWZpeGVkKCl1Zml4ZWQ2NHgyCgljYWxsc3ViIG1heFVmaXhlZAoJaXRvYgoJZXh0cmFjdCAwIDgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtYXhVZml4ZWQoKTogdWZpeGVkPDY0LCAyPgptYXhVZml4ZWQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQyCgkvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4gPSAxMi4zNAoJaW50IDEyMzQKCWZyYW1lX2J1cnkgMCAvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE0NAoJLy8gcmV0dXJuIHU2NG1heDsKCWZyYW1lX2RpZyAwIC8vIHU2NG1heDogdWZpeGVkPDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4VWZpeGVkKCl1Zml4ZWQ2NHgyIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tYXhVZml4ZWQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhVZml4ZWQoKXVmaXhlZDY0eDIKKmFiaV9yb3V0ZV9tYXhVZml4ZWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbWF4VWZpeGVkKCl1Zml4ZWQ2NHgyCgljYWxsc3ViIG1heFVmaXhlZAoJaXRvYgoJZXh0cmFjdCAwIDgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtYXhVZml4ZWQoKTogdWZpeGVkPDY0LCAyPgptYXhVZml4ZWQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQyCgkvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4gPSAxMi4zNAoJaW50IDEyMzQKCWZyYW1lX2J1cnkgMCAvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE0NAoJLy8gcmV0dXJuIHU2NG1heDsKCWZyYW1lX2RpZyAwIC8vIHU2NG1heDogdWZpeGVkPDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4VWZpeGVkKCl1Zml4ZWQ2NHgyIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tYXhVZml4ZWQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestMaxUfixed.arc56_draft.json b/tests/contracts/artifacts/ABITestMaxUfixed.arc56_draft.json index 2f4c58f4b..0895da66e 100644 --- a/tests/contracts/artifacts/ABITestMaxUfixed.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestMaxUfixed.arc56_draft.json @@ -60,319 +60,322 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1140, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1140, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1140, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1140, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1140, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1140, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1140, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1140, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1140, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1141, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1141, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1141, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1141, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 34, - "source": 1141, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1141, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1141, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 1141, - "pc": [ - 56 - ] - }, - { - "teal": 41, - "source": 1141, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 44, - "source": 1141, - "pc": [ - 60, - 61 - ] - }, - { - "teal": 48, - "source": 1142, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 49, - "source": 1142, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 53, - "source": 1144, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 56, - "source": 1141, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 57, - "source": 1141, - "pc": [ - 71 - ] - }, - { - "teal": 60, - "source": 1140, - "pc": [ - 72 - ] - }, - { - "teal": 61, - "source": 1140, - "pc": [ - 73 - ] - }, - { - "teal": 64, - "source": 1140, - "pc": [ - 74, - 75, - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 65, - "source": 1140, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 66, - "source": 1140, - "pc": [ - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 69, - "source": 1140, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 87 - ] - }, - { - "teal": 72, - "source": 1140, - "pc": [ - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 73, - "source": 1140, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 74, - "source": 1140, - "pc": [ - 97, - 98, - 99, - 100 - ] - }, - { - "teal": 77, - "source": 1140, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 101 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1140, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1140, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1140, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1140, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1140, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1140, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1140, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1140, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1140, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1141, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1141, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1141, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1141, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 34, + "source": 1141, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1141, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1141, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 1141, + "pc": [ + 56 + ] + }, + { + "teal": 41, + "source": 1141, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 44, + "source": 1141, + "pc": [ + 60, + 61 + ] + }, + { + "teal": 48, + "source": 1142, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 49, + "source": 1142, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 53, + "source": 1144, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 56, + "source": 1141, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 57, + "source": 1141, + "pc": [ + 71 + ] + }, + { + "teal": 60, + "source": 1140, + "pc": [ + 72 + ] + }, + { + "teal": 61, + "source": 1140, + "pc": [ + 73 + ] + }, + { + "teal": 64, + "source": 1140, + "pc": [ + 74, + 75, + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 65, + "source": 1140, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 66, + "source": 1140, + "pc": [ + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 69, + "source": 1140, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 87 + ] + }, + { + "teal": 72, + "source": 1140, + "pc": [ + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 73, + "source": 1140, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 74, + "source": 1140, + "pc": [ + 97, + 98, + 99, + 100 + ] + }, + { + "teal": 77, + "source": 1140, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 101 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhVZml4ZWQoKXVmaXhlZDY0eDIKKmFiaV9yb3V0ZV9tYXhVZml4ZWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbWF4VWZpeGVkKCl1Zml4ZWQ2NHgyCgljYWxsc3ViIG1heFVmaXhlZAoJaXRvYgoJZXh0cmFjdCAwIDgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtYXhVZml4ZWQoKTogdWZpeGVkPDY0LCAyPgptYXhVZml4ZWQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQyCgkvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4gPSAxMi4zNAoJaW50IDEyMzQKCWZyYW1lX2J1cnkgMCAvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE0NAoJLy8gcmV0dXJuIHU2NG1heDsKCWZyYW1lX2RpZyAwIC8vIHU2NG1heDogdWZpeGVkPDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4VWZpeGVkKCl1Zml4ZWQ2NHgyIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tYXhVZml4ZWQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhVZml4ZWQoKXVmaXhlZDY0eDIKKmFiaV9yb3V0ZV9tYXhVZml4ZWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbWF4VWZpeGVkKCl1Zml4ZWQ2NHgyCgljYWxsc3ViIG1heFVmaXhlZAoJaXRvYgoJZXh0cmFjdCAwIDgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtYXhVZml4ZWQoKTogdWZpeGVkPDY0LCAyPgptYXhVZml4ZWQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQyCgkvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4gPSAxMi4zNAoJaW50IDEyMzQKCWZyYW1lX2J1cnkgMCAvLyB1NjRtYXg6IHVmaXhlZDw2NCwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE0NAoJLy8gcmV0dXJuIHU2NG1heDsKCWZyYW1lX2RpZyAwIC8vIHU2NG1heDogdWZpeGVkPDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4VWZpeGVkKCl1Zml4ZWQ2NHgyIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tYXhVZml4ZWQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestMixedStaticArrayElements.approval.teal b/tests/contracts/artifacts/ABITestMixedStaticArrayElements.approval.teal index 5a2d2fe54..4b9e30080 100644 --- a/tests/contracts/artifacts/ABITestMixedStaticArrayElements.approval.teal +++ b/tests/contracts/artifacts/ABITestMixedStaticArrayElements.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc32.json b/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc32.json index c85a1897c..f107864ba 100644 --- a/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc32.json +++ b/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoqYWJpX3JvdXRlX21peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKTogdWludDY0Cm1peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQKCS8vIG4xID0gYnRvaShpdG9iKDMpKQoJaW50IDMKCWZyYW1lX2J1cnkgMCAvLyBuMTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1CgkvLyBuMiA9IGJ0b2koaXRvYig0KSkKCWludCA0CglmcmFtZV9idXJ5IDEgLy8gbjI6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NgoJLy8gbjMgPSBidG9pKGl0b2IoNSkpCglpbnQgNQoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDcKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4gPSBbMCwgMSwgMiwgbjEsIG4yLCBuMywgNiwgNywgOF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDUKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDYKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDcKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJZnJhbWVfYnVyeSAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkKCS8vIHJldHVybiBhWzFdICsgYVs0XSArIGFbN107CglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDggOAoJYnRvaQoJZnJhbWVfZGlnIDMgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCA5PgoJZXh0cmFjdCAzMiA4CglidG9pCgkrCglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDU2IDgKCWJ0b2kKCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWl4ZWRTdGF0aWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoqYWJpX3JvdXRlX21peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKTogdWludDY0Cm1peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQKCS8vIG4xID0gYnRvaShpdG9iKDMpKQoJaW50IDMKCWZyYW1lX2J1cnkgMCAvLyBuMTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1CgkvLyBuMiA9IGJ0b2koaXRvYig0KSkKCWludCA0CglmcmFtZV9idXJ5IDEgLy8gbjI6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NgoJLy8gbjMgPSBidG9pKGl0b2IoNSkpCglpbnQgNQoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDcKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4gPSBbMCwgMSwgMiwgbjEsIG4yLCBuMywgNiwgNywgOF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDUKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDYKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDcKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJZnJhbWVfYnVyeSAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkKCS8vIHJldHVybiBhWzFdICsgYVs0XSArIGFbN107CglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDggOAoJYnRvaQoJZnJhbWVfZGlnIDMgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCA5PgoJZXh0cmFjdCAzMiA4CglidG9pCgkrCglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDU2IDgKCWJ0b2kKCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWl4ZWRTdGF0aWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc56_draft.json b/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc56_draft.json index f7f89e7e9..e84089ba1 100644 --- a/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestMixedStaticArrayElements.arc56_draft.json @@ -60,612 +60,615 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 42, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 42, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 42, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 42, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 42, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 42, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 42, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 42, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 42, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 43, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 43, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 43, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 43, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 43, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 43, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 43, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 43, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 43, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 44, - "source": 43, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 48, - "source": 44, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 49, - "source": 44, - "pc": [ - 63, - 64 - ] - }, - { - "teal": 53, - "source": 45, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 54, - "source": 45, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 58, - "source": 46, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 59, - "source": 46, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 63, - "source": 47, - "pc": [ - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 64, - "source": 47, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 65, - "source": 47, - "pc": [ - 101 - ] - }, - { - "teal": 66, - "source": 47, - "pc": [ - 102 - ] - }, - { - "teal": 67, - "source": 47, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 68, - "source": 47, - "pc": [ - 113 - ] - }, - { - "teal": 69, - "source": 47, - "pc": [ - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123 - ] - }, - { - "teal": 70, - "source": 47, - "pc": [ - 124 - ] - }, - { - "teal": 71, - "source": 47, - "pc": [ - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134 - ] - }, - { - "teal": 72, - "source": 47, - "pc": [ - 135 - ] - }, - { - "teal": 73, - "source": 47, - "pc": [ - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 74, - "source": 47, - "pc": [ - 146 - ] - }, - { - "teal": 75, - "source": 47, - "pc": [ - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156 - ] - }, - { - "teal": 76, - "source": 47, - "pc": [ - 157 - ] - }, - { - "teal": 77, - "source": 47, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 81, - "source": 49, - "pc": [ - 160, - 161 - ] - }, - { - "teal": 82, - "source": 49, - "pc": [ - 162, - 163, - 164 - ] - }, - { - "teal": 83, - "source": 49, - "pc": [ - 165 - ] - }, - { - "teal": 84, - "source": 49, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 85, - "source": 49, - "pc": [ - 168, - 169, - 170 - ] - }, - { - "teal": 86, - "source": 49, - "pc": [ - 171 - ] - }, - { - "teal": 87, - "source": 49, - "pc": [ - 172 - ] - }, - { - "teal": 88, - "source": 49, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 89, - "source": 49, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 90, - "source": 49, - "pc": [ - 178 - ] - }, - { - "teal": 91, - "source": 49, - "pc": [ - 179 - ] - }, - { - "teal": 94, - "source": 43, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 97, - "source": 43, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 98, - "source": 43, - "pc": [ - 184 - ] - }, - { - "teal": 101, - "source": 42, - "pc": [ - 185 - ] - }, - { - "teal": 102, - "source": 42, - "pc": [ - 186 - ] - }, - { - "teal": 105, - "source": 42, - "pc": [ - 187, - 188, - 189, - 190, - 191, - 192 - ] - }, - { - "teal": 106, - "source": 42, - "pc": [ - 193, - 194, - 195 - ] - }, - { - "teal": 107, - "source": 42, - "pc": [ - 196, - 197, - 198, - 199 - ] - }, - { - "teal": 110, - "source": 42, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 200 - ] - }, - { - "teal": 113, - "source": 42, - "pc": [ - 201, - 202, - 203, - 204, - 205, - 206 - ] - }, - { - "teal": 114, - "source": 42, - "pc": [ - 207, - 208, - 209 - ] - }, - { - "teal": 115, - "source": 42, - "pc": [ - 210, - 211, - 212, - 213 - ] - }, - { - "teal": 118, - "source": 42, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 214 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 42, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 42, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 42, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 42, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 42, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 42, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 42, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 42, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 42, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 43, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 43, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 43, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 43, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 43, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 43, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 43, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 43, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 43, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 44, + "source": 43, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 48, + "source": 44, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 49, + "source": 44, + "pc": [ + 63, + 64 + ] + }, + { + "teal": 53, + "source": 45, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 54, + "source": 45, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 58, + "source": 46, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 59, + "source": 46, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 63, + "source": 47, + "pc": [ + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 64, + "source": 47, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 65, + "source": 47, + "pc": [ + 101 + ] + }, + { + "teal": 66, + "source": 47, + "pc": [ + 102 + ] + }, + { + "teal": 67, + "source": 47, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 68, + "source": 47, + "pc": [ + 113 + ] + }, + { + "teal": 69, + "source": 47, + "pc": [ + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + }, + { + "teal": 70, + "source": 47, + "pc": [ + 124 + ] + }, + { + "teal": 71, + "source": 47, + "pc": [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134 + ] + }, + { + "teal": 72, + "source": 47, + "pc": [ + 135 + ] + }, + { + "teal": 73, + "source": 47, + "pc": [ + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 74, + "source": 47, + "pc": [ + 146 + ] + }, + { + "teal": 75, + "source": 47, + "pc": [ + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156 + ] + }, + { + "teal": 76, + "source": 47, + "pc": [ + 157 + ] + }, + { + "teal": 77, + "source": 47, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 81, + "source": 49, + "pc": [ + 160, + 161 + ] + }, + { + "teal": 82, + "source": 49, + "pc": [ + 162, + 163, + 164 + ] + }, + { + "teal": 83, + "source": 49, + "pc": [ + 165 + ] + }, + { + "teal": 84, + "source": 49, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 85, + "source": 49, + "pc": [ + 168, + 169, + 170 + ] + }, + { + "teal": 86, + "source": 49, + "pc": [ + 171 + ] + }, + { + "teal": 87, + "source": 49, + "pc": [ + 172 + ] + }, + { + "teal": 88, + "source": 49, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 89, + "source": 49, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 90, + "source": 49, + "pc": [ + 178 + ] + }, + { + "teal": 91, + "source": 49, + "pc": [ + 179 + ] + }, + { + "teal": 94, + "source": 43, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 97, + "source": 43, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 98, + "source": 43, + "pc": [ + 184 + ] + }, + { + "teal": 101, + "source": 42, + "pc": [ + 185 + ] + }, + { + "teal": 102, + "source": 42, + "pc": [ + 186 + ] + }, + { + "teal": 105, + "source": 42, + "pc": [ + 187, + 188, + 189, + 190, + 191, + 192 + ] + }, + { + "teal": 106, + "source": 42, + "pc": [ + 193, + 194, + 195 + ] + }, + { + "teal": 107, + "source": 42, + "pc": [ + 196, + 197, + 198, + 199 + ] + }, + { + "teal": 110, + "source": 42, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 200 + ] + }, + { + "teal": 113, + "source": 42, + "pc": [ + 201, + 202, + 203, + 204, + 205, + 206 + ] + }, + { + "teal": 114, + "source": 42, + "pc": [ + 207, + 208, + 209 + ] + }, + { + "teal": 115, + "source": 42, + "pc": [ + 210, + 211, + 212, + 213 + ] + }, + { + "teal": 118, + "source": 42, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 214 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoqYWJpX3JvdXRlX21peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKTogdWludDY0Cm1peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQKCS8vIG4xID0gYnRvaShpdG9iKDMpKQoJaW50IDMKCWZyYW1lX2J1cnkgMCAvLyBuMTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1CgkvLyBuMiA9IGJ0b2koaXRvYig0KSkKCWludCA0CglmcmFtZV9idXJ5IDEgLy8gbjI6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NgoJLy8gbjMgPSBidG9pKGl0b2IoNSkpCglpbnQgNQoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDcKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4gPSBbMCwgMSwgMiwgbjEsIG4yLCBuMywgNiwgNywgOF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDUKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDYKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDcKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJZnJhbWVfYnVyeSAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkKCS8vIHJldHVybiBhWzFdICsgYVs0XSArIGFbN107CglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDggOAoJYnRvaQoJZnJhbWVfZGlnIDMgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCA5PgoJZXh0cmFjdCAzMiA4CglidG9pCgkrCglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDU2IDgKCWJ0b2kKCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWl4ZWRTdGF0aWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoqYWJpX3JvdXRlX21peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKTogdWludDY0Cm1peGVkU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDQKCS8vIG4xID0gYnRvaShpdG9iKDMpKQoJaW50IDMKCWZyYW1lX2J1cnkgMCAvLyBuMTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ1CgkvLyBuMiA9IGJ0b2koaXRvYig0KSkKCWludCA0CglmcmFtZV9idXJ5IDEgLy8gbjI6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0NgoJLy8gbjMgPSBidG9pKGl0b2IoNSkpCglpbnQgNQoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDcKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4gPSBbMCwgMSwgMiwgbjEsIG4yLCBuMywgNiwgNywgOF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDUKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDYKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDcKCWNvbmNhdAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDgKCWNvbmNhdAoJZnJhbWVfYnVyeSAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkKCS8vIHJldHVybiBhWzFdICsgYVs0XSArIGFbN107CglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDggOAoJYnRvaQoJZnJhbWVfZGlnIDMgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCA5PgoJZXh0cmFjdCAzMiA4CglidG9pCgkrCglmcmFtZV9kaWcgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDk+CglleHRyYWN0IDU2IDgKCWJ0b2kKCSsKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJtaXhlZFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbWl4ZWRTdGF0aWNBcnJheUVsZW1lbnRzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestMultiBytesTuple.approval.teal b/tests/contracts/artifacts/ABITestMultiBytesTuple.approval.teal index 63ea3aa47..feaf3936c 100644 --- a/tests/contracts/artifacts/ABITestMultiBytesTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestMultiBytesTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestMultiBytesTuple.arc32.json b/tests/contracts/artifacts/ABITestMultiBytesTuple.arc32.json index b1dcba21d..24abcb179 100644 --- a/tests/contracts/artifacts/ABITestMultiBytesTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestMultiBytesTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoqYWJpX3JvdXRlX211bHRpQnl0ZXNUdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoJY2FsbHN1YiBtdWx0aUJ5dGVzVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUJ5dGVzVHVwbGUoKTogW2J5dGVzLCBieXRlc10KbXVsdGlCeXRlc1R1cGxlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMTkKCS8vIHJldHVybiBbaGV4KCcweDAxJyksIGhleCgnMHgwMicpXTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpQnl0ZXNUdXBsZSgpKGJ5dGVbXSxieXRlW10pIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aUJ5dGVzVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoqYWJpX3JvdXRlX211bHRpQnl0ZXNUdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoJY2FsbHN1YiBtdWx0aUJ5dGVzVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUJ5dGVzVHVwbGUoKTogW2J5dGVzLCBieXRlc10KbXVsdGlCeXRlc1R1cGxlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMTkKCS8vIHJldHVybiBbaGV4KCcweDAxJyksIGhleCgnMHgwMicpXTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpQnl0ZXNUdXBsZSgpKGJ5dGVbXSxieXRlW10pIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aUJ5dGVzVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestMultiBytesTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestMultiBytesTuple.arc56_draft.json index 4a4b53c5d..c83af338c 100644 --- a/tests/contracts/artifacts/ABITestMultiBytesTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestMultiBytesTuple.arc56_draft.json @@ -60,512 +60,515 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1217, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 1217, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 1217, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 1217, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 1217, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 1217, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 1217, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 1217, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 1217, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 1218, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 1218, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 1218, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 1218, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 1218, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 1218, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 1218, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1219, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1219, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1219, - "pc": [ - 61, - 62, - 63, - 64 - ] - }, - { - "teal": 46, - "source": 1219, - "pc": [ - 65, - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 47, - "source": 1219, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 48, - "source": 1219, - "pc": [ - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 49, - "source": 1219, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 50, - "source": 1219, - "pc": [ - 81 - ] - }, - { - "teal": 51, - "source": 1219, - "pc": [ - 82 - ] - }, - { - "teal": 52, - "source": 1218, - "pc": [ - 83 - ] - }, - { - "teal": 55, - "source": 1217, - "pc": [ - 84 - ] - }, - { - "teal": 56, - "source": 1217, - "pc": [ - 85 - ] - }, - { - "teal": 59, - "source": 1217, - "pc": [ - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 60, - "source": 1217, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 61, - "source": 1217, - "pc": [ - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 64, - "source": 1217, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 99 - ] - }, - { - "teal": 67, - "source": 1217, - "pc": [ - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 68, - "source": 1217, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 69, - "source": 1217, - "pc": [ - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 72, - "source": 1217, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 113 - ] - }, - { - "teal": 75, - "source": 1217, - "pc": [ - 114, - 115, - 116 - ] - }, - { - "teal": 76, - "source": 1217, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 77, - "source": 1217, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 78, - "source": 1217, - "pc": [ - 121 - ] - }, - { - "teal": 79, - "source": 1217, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 80, - "source": 1217, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 81, - "source": 1217, - "pc": [ - 126 - ] - }, - { - "teal": 82, - "source": 1217, - "pc": [ - 127 - ] - }, - { - "teal": 83, - "source": 1217, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 84, - "source": 1217, - "pc": [ - 130 - ] - }, - { - "teal": 85, - "source": 1217, - "pc": [ - 131 - ] - }, - { - "teal": 86, - "source": 1217, - "pc": [ - 132 - ] - }, - { - "teal": 87, - "source": 1217, - "pc": [ - 133, - 134, - 135 - ] - }, - { - "teal": 88, - "source": 1217, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 89, - "source": 1217, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 90, - "source": 1217, - "pc": [ - 140 - ] - }, - { - "teal": 91, - "source": 1217, - "pc": [ - 141 - ] - }, - { - "teal": 92, - "source": 1217, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 93, - "source": 1217, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 94, - "source": 1217, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 95, - "source": 1217, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 96, - "source": 1217, - "pc": [ - 150 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1217, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 1217, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 1217, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 1217, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 1217, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 1217, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 1217, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 1217, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 1217, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 1218, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 1218, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 1218, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 1218, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 1218, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 1218, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 1218, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1219, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1219, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1219, + "pc": [ + 61, + 62, + 63, + 64 + ] + }, + { + "teal": 46, + "source": 1219, + "pc": [ + 65, + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 47, + "source": 1219, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 48, + "source": 1219, + "pc": [ + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 49, + "source": 1219, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 50, + "source": 1219, + "pc": [ + 81 + ] + }, + { + "teal": 51, + "source": 1219, + "pc": [ + 82 + ] + }, + { + "teal": 52, + "source": 1218, + "pc": [ + 83 + ] + }, + { + "teal": 55, + "source": 1217, + "pc": [ + 84 + ] + }, + { + "teal": 56, + "source": 1217, + "pc": [ + 85 + ] + }, + { + "teal": 59, + "source": 1217, + "pc": [ + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 60, + "source": 1217, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 61, + "source": 1217, + "pc": [ + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 64, + "source": 1217, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 99 + ] + }, + { + "teal": 67, + "source": 1217, + "pc": [ + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 68, + "source": 1217, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 69, + "source": 1217, + "pc": [ + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 72, + "source": 1217, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 113 + ] + }, + { + "teal": 75, + "source": 1217, + "pc": [ + 114, + 115, + 116 + ] + }, + { + "teal": 76, + "source": 1217, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 77, + "source": 1217, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 78, + "source": 1217, + "pc": [ + 121 + ] + }, + { + "teal": 79, + "source": 1217, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 80, + "source": 1217, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 81, + "source": 1217, + "pc": [ + 126 + ] + }, + { + "teal": 82, + "source": 1217, + "pc": [ + 127 + ] + }, + { + "teal": 83, + "source": 1217, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 84, + "source": 1217, + "pc": [ + 130 + ] + }, + { + "teal": 85, + "source": 1217, + "pc": [ + 131 + ] + }, + { + "teal": 86, + "source": 1217, + "pc": [ + 132 + ] + }, + { + "teal": 87, + "source": 1217, + "pc": [ + 133, + 134, + 135 + ] + }, + { + "teal": 88, + "source": 1217, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 89, + "source": 1217, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 90, + "source": 1217, + "pc": [ + 140 + ] + }, + { + "teal": 91, + "source": 1217, + "pc": [ + 141 + ] + }, + { + "teal": 92, + "source": 1217, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 93, + "source": 1217, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 94, + "source": 1217, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 95, + "source": 1217, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 96, + "source": 1217, + "pc": [ + 150 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoqYWJpX3JvdXRlX211bHRpQnl0ZXNUdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoJY2FsbHN1YiBtdWx0aUJ5dGVzVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUJ5dGVzVHVwbGUoKTogW2J5dGVzLCBieXRlc10KbXVsdGlCeXRlc1R1cGxlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMTkKCS8vIHJldHVybiBbaGV4KCcweDAxJyksIGhleCgnMHgwMicpXTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpQnl0ZXNUdXBsZSgpKGJ5dGVbXSxieXRlW10pIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aUJ5dGVzVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoqYWJpX3JvdXRlX211bHRpQnl0ZXNUdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBtdWx0aUJ5dGVzVHVwbGUoKShieXRlW10sYnl0ZVtdKQoJY2FsbHN1YiBtdWx0aUJ5dGVzVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUJ5dGVzVHVwbGUoKTogW2J5dGVzLCBieXRlc10KbXVsdGlCeXRlc1R1cGxlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMTkKCS8vIHJldHVybiBbaGV4KCcweDAxJyksIGhleCgnMHgwMicpXTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDQgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpQnl0ZXNUdXBsZSgpKGJ5dGVbXSxieXRlW10pIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aUJ5dGVzVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestMultiNestedArrayRef.approval.teal b/tests/contracts/artifacts/ABITestMultiNestedArrayRef.approval.teal index 5a3d25b7b..5de2488db 100644 --- a/tests/contracts/artifacts/ABITestMultiNestedArrayRef.approval.teal +++ b/tests/contracts/artifacts/ABITestMultiNestedArrayRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc32.json b/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc32.json index ca653a089..471ea728d 100644 --- a/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc32.json +++ b/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aU5lc3RlZEFycmF5UmVmKCl1aW50OFsyXVsyXVsyXQoqYWJpX3JvdXRlX211bHRpTmVzdGVkQXJyYXlSZWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbXVsdGlOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl1bMl0KCWNhbGxzdWIgbXVsdGlOZXN0ZWRBcnJheVJlZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG11bHRpTmVzdGVkQXJyYXlSZWYoKTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+LCAyPgptdWx0aU5lc3RlZEFycmF5UmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzkzCgkvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgICBbCgkvLyAgICAgICAgIFs1LCA2XSwKCS8vICAgICAgICAgWzcsIDhdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQwNTA2MDcwOAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA0CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgwNQoJLy8gYyA9IGJbMV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MDcKCS8vIGNbMV0gPSA5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCWJ5dGUgMHgwOQoJcmVwbGFjZTIgNwoJZnJhbWVfYnVyeSAwIC8vIGM6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aU5lc3RlZEFycmF5UmVmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aU5lc3RlZEFycmF5UmVmKCl1aW50OFsyXVsyXVsyXQoqYWJpX3JvdXRlX211bHRpTmVzdGVkQXJyYXlSZWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbXVsdGlOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl1bMl0KCWNhbGxzdWIgbXVsdGlOZXN0ZWRBcnJheVJlZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG11bHRpTmVzdGVkQXJyYXlSZWYoKTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+LCAyPgptdWx0aU5lc3RlZEFycmF5UmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzkzCgkvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgICBbCgkvLyAgICAgICAgIFs1LCA2XSwKCS8vICAgICAgICAgWzcsIDhdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQwNTA2MDcwOAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA0CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgwNQoJLy8gYyA9IGJbMV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MDcKCS8vIGNbMV0gPSA5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCWJ5dGUgMHgwOQoJcmVwbGFjZTIgNwoJZnJhbWVfYnVyeSAwIC8vIGM6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aU5lc3RlZEFycmF5UmVmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc56_draft.json b/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc56_draft.json index 7706e563d..06d2d6ac4 100644 --- a/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestMultiNestedArrayRef.arc56_draft.json @@ -60,343 +60,346 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 791, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 791, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 791, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 791, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 791, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 791, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 791, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 791, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 791, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 792, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 792, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 792, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 792, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 792, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 792, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 792, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 792, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 55, - "source": 793, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 56, - "source": 793, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 64, - "source": 807, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 65, - "source": 807, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 66, - "source": 807, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 67, - "source": 807, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 71, - "source": 809, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 74, - "source": 792, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 75, - "source": 792, - "pc": [ - 83 - ] - }, - { - "teal": 78, - "source": 791, - "pc": [ - 84 - ] - }, - { - "teal": 79, - "source": 791, - "pc": [ - 85 - ] - }, - { - "teal": 82, - "source": 791, - "pc": [ - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 83, - "source": 791, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 84, - "source": 791, - "pc": [ - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 87, - "source": 791, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 99 - ] - }, - { - "teal": 90, - "source": 791, - "pc": [ - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 91, - "source": 791, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 92, - "source": 791, - "pc": [ - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 95, - "source": 791, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 113 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 791, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 791, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 791, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 791, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 791, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 791, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 791, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 791, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 791, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 792, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 792, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 792, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 792, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 792, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 792, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 792, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 792, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 55, + "source": 793, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 56, + "source": 793, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 64, + "source": 807, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 65, + "source": 807, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 66, + "source": 807, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 67, + "source": 807, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 71, + "source": 809, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 74, + "source": 792, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 75, + "source": 792, + "pc": [ + 83 + ] + }, + { + "teal": 78, + "source": 791, + "pc": [ + 84 + ] + }, + { + "teal": 79, + "source": 791, + "pc": [ + 85 + ] + }, + { + "teal": 82, + "source": 791, + "pc": [ + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 83, + "source": 791, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 84, + "source": 791, + "pc": [ + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 87, + "source": 791, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 99 + ] + }, + { + "teal": 90, + "source": 791, + "pc": [ + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 91, + "source": 791, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 92, + "source": 791, + "pc": [ + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 95, + "source": 791, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 113 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aU5lc3RlZEFycmF5UmVmKCl1aW50OFsyXVsyXVsyXQoqYWJpX3JvdXRlX211bHRpTmVzdGVkQXJyYXlSZWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbXVsdGlOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl1bMl0KCWNhbGxzdWIgbXVsdGlOZXN0ZWRBcnJheVJlZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG11bHRpTmVzdGVkQXJyYXlSZWYoKTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+LCAyPgptdWx0aU5lc3RlZEFycmF5UmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzkzCgkvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgICBbCgkvLyAgICAgICAgIFs1LCA2XSwKCS8vICAgICAgICAgWzcsIDhdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQwNTA2MDcwOAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA0CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgwNQoJLy8gYyA9IGJbMV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MDcKCS8vIGNbMV0gPSA5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCWJ5dGUgMHgwOQoJcmVwbGFjZTIgNwoJZnJhbWVfYnVyeSAwIC8vIGM6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aU5lc3RlZEFycmF5UmVmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtdWx0aU5lc3RlZEFycmF5UmVmKCl1aW50OFsyXVsyXVsyXQoqYWJpX3JvdXRlX211bHRpTmVzdGVkQXJyYXlSZWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbXVsdGlOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl1bMl0KCWNhbGxzdWIgbXVsdGlOZXN0ZWRBcnJheVJlZgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG11bHRpTmVzdGVkQXJyYXlSZWYoKTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+LCAyPgptdWx0aU5lc3RlZEFycmF5UmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzkzCgkvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgICBbCgkvLyAgICAgICAgIFs1LCA2XSwKCS8vICAgICAgICAgWzcsIDhdLAoJLy8gICAgICAgXSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQwNTA2MDcwOAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA0CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgwNQoJLy8gYyA9IGJbMV0KCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MDcKCS8vIGNbMV0gPSA5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCWJ5dGUgMHgwOQoJcmVwbGFjZTIgNwoJZnJhbWVfYnVyeSAwIC8vIGM6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODA5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm11bHRpTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9tdWx0aU5lc3RlZEFycmF5UmVmCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNamedTuple.approval.teal b/tests/contracts/artifacts/ABITestNamedTuple.approval.teal index a09600637..bb12d2577 100644 --- a/tests/contracts/artifacts/ABITestNamedTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestNamedTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNamedTuple.arc32.json b/tests/contracts/artifacts/ABITestNamedTuple.arc32.json index 13d5998b5..5dbb2dd5f 100644 --- a/tests/contracts/artifacts/ABITestNamedTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestNamedTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV9uYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBuYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5hbWVkVHVwbGUoKTogc3RyaW5nCm5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MDIKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjEwCgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV9uYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBuYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5hbWVkVHVwbGUoKTogc3RyaW5nCm5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MDIKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjEwCgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNamedTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestNamedTuple.arc56_draft.json index fa8313422..78d5dd608 100644 --- a/tests/contracts/artifacts/ABITestNamedTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNamedTuple.arc56_draft.json @@ -60,772 +60,775 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 600, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7 - ] - }, - { - "teal": 13, - "source": 600, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 14, - "source": 600, - "pc": [ - 10 - ] - }, - { - "teal": 15, - "source": 600, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 16, - "source": 600, - "pc": [ - 13 - ] - }, - { - "teal": 17, - "source": 600, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 18, - "source": 600, - "pc": [ - 16 - ] - }, - { - "teal": 19, - "source": 600, - "pc": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ] - }, - { - "teal": 23, - "source": 600, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 43 - ] - }, - { - "teal": 28, - "source": 601, - "pc": [ - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 31, - "source": 601, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 32, - "source": 601, - "pc": [ - 53 - ] - }, - { - "teal": 33, - "source": 601, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 601, - "pc": [ - 55 - ] - }, - { - "teal": 35, - "source": 601, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 36, - "source": 601, - "pc": [ - 59 - ] - }, - { - "teal": 37, - "source": 601, - "pc": [ - 60 - ] - }, - { - "teal": 38, - "source": 601, - "pc": [ - 61 - ] - }, - { - "teal": 39, - "source": 601, - "pc": [ - 62 - ] - }, - { - "teal": 40, - "source": 601, - "pc": [ - 63 - ] - }, - { - "teal": 41, - "source": 601, - "pc": [ - 64 - ] - }, - { - "teal": 45, - "source": 601, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 48, - "source": 601, - "pc": [ - 68 - ] - }, - { - "teal": 58, - "source": 605, - "pc": [ - 69 - ] - }, - { - "teal": 59, - "source": 605, - "pc": [ - 70 - ] - }, - { - "teal": 60, - "source": 605, - "pc": [ - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 61, - "source": 606, - "pc": [ - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 62, - "source": 606, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 63, - "source": 607, - "pc": [ - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 64, - "source": 607, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 65, - "source": 605, - "pc": [ - 101 - ] - }, - { - "teal": 66, - "source": 605, - "pc": [ - 102 - ] - }, - { - "teal": 67, - "source": 602, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 71, - "source": 610, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 72, - "source": 610, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 73, - "source": 610, - "pc": [ - 109 - ] - }, - { - "teal": 74, - "source": 610, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 75, - "source": 610, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 76, - "source": 610, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 77, - "source": 610, - "pc": [ - 116 - ] - }, - { - "teal": 78, - "source": 610, - "pc": [ - 117 - ] - }, - { - "teal": 79, - "source": 610, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 80, - "source": 610, - "pc": [ - 120 - ] - }, - { - "teal": 81, - "source": 610, - "pc": [ - 121 - ] - }, - { - "teal": 82, - "source": 610, - "pc": [ - 122 - ] - }, - { - "teal": 83, - "source": 610, - "pc": [ - 123 - ] - }, - { - "teal": 84, - "source": 610, - "pc": [ - 124 - ] - }, - { - "teal": 85, - "source": 610, - "pc": [ - 125 - ] - }, - { - "teal": 86, - "source": 610, - "pc": [ - 126 - ] - }, - { - "teal": 87, - "source": 610, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 90, - "source": 601, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 91, - "source": 601, - "pc": [ - 132 - ] - }, - { - "teal": 94, - "source": 600, - "pc": [ - 133 - ] - }, - { - "teal": 95, - "source": 600, - "pc": [ - 134 - ] - }, - { - "teal": 98, - "source": 600, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140 - ] - }, - { - "teal": 99, - "source": 600, - "pc": [ - 141, - 142, - 143 - ] - }, - { - "teal": 100, - "source": 600, - "pc": [ - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 103, - "source": 600, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 148 - ] - }, - { - "teal": 106, - "source": 600, - "pc": [ - 149, - 150, - 151, - 152, - 153, - 154 - ] - }, - { - "teal": 107, - "source": 600, - "pc": [ - 155, - 156, - 157 - ] - }, - { - "teal": 108, - "source": 600, - "pc": [ - 158, - 159, - 160, - 161 - ] - }, - { - "teal": 111, - "source": 600, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 162 - ] - }, - { - "teal": 114, - "source": 600, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 115, - "source": 600, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 116, - "source": 600, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 117, - "source": 600, - "pc": [ - 170 - ] - }, - { - "teal": 118, - "source": 600, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 119, - "source": 600, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 120, - "source": 600, - "pc": [ - 175 - ] - }, - { - "teal": 123, - "source": 600, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 124, - "source": 600, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 125, - "source": 600, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 126, - "source": 600, - "pc": [ - 183 - ] - }, - { - "teal": 127, - "source": 600, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 128, - "source": 600, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 129, - "source": 600, - "pc": [ - 188 - ] - }, - { - "teal": 130, - "source": 600, - "pc": [ - 189 - ] - }, - { - "teal": 131, - "source": 600, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 132, - "source": 600, - "pc": [ - 192 - ] - }, - { - "teal": 133, - "source": 600, - "pc": [ - 193 - ] - }, - { - "teal": 134, - "source": 600, - "pc": [ - 194 - ] - }, - { - "teal": 135, - "source": 600, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 136, - "source": 600, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 137, - "source": 600, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 138, - "source": 600, - "pc": [ - 202 - ] - }, - { - "teal": 139, - "source": 600, - "pc": [ - 203 - ] - }, - { - "teal": 140, - "source": 600, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 141, - "source": 600, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 142, - "source": 600, - "pc": [ - 208, - 209 - ] - }, - { - "teal": 143, - "source": 600, - "pc": [ - 210, - 211 - ] - }, - { - "teal": 144, - "source": 600, - "pc": [ - 212 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 600, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + }, + { + "teal": 13, + "source": 600, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 14, + "source": 600, + "pc": [ + 10 + ] + }, + { + "teal": 15, + "source": 600, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 16, + "source": 600, + "pc": [ + 13 + ] + }, + { + "teal": 17, + "source": 600, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 18, + "source": 600, + "pc": [ + 16 + ] + }, + { + "teal": 19, + "source": 600, + "pc": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "teal": 23, + "source": 600, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 43 + ] + }, + { + "teal": 28, + "source": 601, + "pc": [ + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 31, + "source": 601, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 32, + "source": 601, + "pc": [ + 53 + ] + }, + { + "teal": 33, + "source": 601, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 601, + "pc": [ + 55 + ] + }, + { + "teal": 35, + "source": 601, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 36, + "source": 601, + "pc": [ + 59 + ] + }, + { + "teal": 37, + "source": 601, + "pc": [ + 60 + ] + }, + { + "teal": 38, + "source": 601, + "pc": [ + 61 + ] + }, + { + "teal": 39, + "source": 601, + "pc": [ + 62 + ] + }, + { + "teal": 40, + "source": 601, + "pc": [ + 63 + ] + }, + { + "teal": 41, + "source": 601, + "pc": [ + 64 + ] + }, + { + "teal": 45, + "source": 601, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 48, + "source": 601, + "pc": [ + 68 + ] + }, + { + "teal": 58, + "source": 605, + "pc": [ + 69 + ] + }, + { + "teal": 59, + "source": 605, + "pc": [ + 70 + ] + }, + { + "teal": 60, + "source": 605, + "pc": [ + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 61, + "source": 606, + "pc": [ + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 62, + "source": 606, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 63, + "source": 607, + "pc": [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 64, + "source": 607, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 65, + "source": 605, + "pc": [ + 101 + ] + }, + { + "teal": 66, + "source": 605, + "pc": [ + 102 + ] + }, + { + "teal": 67, + "source": 602, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 71, + "source": 610, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 72, + "source": 610, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 73, + "source": 610, + "pc": [ + 109 + ] + }, + { + "teal": 74, + "source": 610, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 75, + "source": 610, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 76, + "source": 610, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 77, + "source": 610, + "pc": [ + 116 + ] + }, + { + "teal": 78, + "source": 610, + "pc": [ + 117 + ] + }, + { + "teal": 79, + "source": 610, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 80, + "source": 610, + "pc": [ + 120 + ] + }, + { + "teal": 81, + "source": 610, + "pc": [ + 121 + ] + }, + { + "teal": 82, + "source": 610, + "pc": [ + 122 + ] + }, + { + "teal": 83, + "source": 610, + "pc": [ + 123 + ] + }, + { + "teal": 84, + "source": 610, + "pc": [ + 124 + ] + }, + { + "teal": 85, + "source": 610, + "pc": [ + 125 + ] + }, + { + "teal": 86, + "source": 610, + "pc": [ + 126 + ] + }, + { + "teal": 87, + "source": 610, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 90, + "source": 601, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 91, + "source": 601, + "pc": [ + 132 + ] + }, + { + "teal": 94, + "source": 600, + "pc": [ + 133 + ] + }, + { + "teal": 95, + "source": 600, + "pc": [ + 134 + ] + }, + { + "teal": 98, + "source": 600, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140 + ] + }, + { + "teal": 99, + "source": 600, + "pc": [ + 141, + 142, + 143 + ] + }, + { + "teal": 100, + "source": 600, + "pc": [ + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 103, + "source": 600, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 148 + ] + }, + { + "teal": 106, + "source": 600, + "pc": [ + 149, + 150, + 151, + 152, + 153, + 154 + ] + }, + { + "teal": 107, + "source": 600, + "pc": [ + 155, + 156, + 157 + ] + }, + { + "teal": 108, + "source": 600, + "pc": [ + 158, + 159, + 160, + 161 + ] + }, + { + "teal": 111, + "source": 600, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 162 + ] + }, + { + "teal": 114, + "source": 600, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 115, + "source": 600, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 116, + "source": 600, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 117, + "source": 600, + "pc": [ + 170 + ] + }, + { + "teal": 118, + "source": 600, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 119, + "source": 600, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 120, + "source": 600, + "pc": [ + 175 + ] + }, + { + "teal": 123, + "source": 600, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 124, + "source": 600, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 125, + "source": 600, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 126, + "source": 600, + "pc": [ + 183 + ] + }, + { + "teal": 127, + "source": 600, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 128, + "source": 600, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 129, + "source": 600, + "pc": [ + 188 + ] + }, + { + "teal": 130, + "source": 600, + "pc": [ + 189 + ] + }, + { + "teal": 131, + "source": 600, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 132, + "source": 600, + "pc": [ + 192 + ] + }, + { + "teal": 133, + "source": 600, + "pc": [ + 193 + ] + }, + { + "teal": 134, + "source": 600, + "pc": [ + 194 + ] + }, + { + "teal": 135, + "source": 600, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 136, + "source": 600, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 137, + "source": 600, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 138, + "source": 600, + "pc": [ + 202 + ] + }, + { + "teal": 139, + "source": 600, + "pc": [ + 203 + ] + }, + { + "teal": 140, + "source": 600, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 141, + "source": 600, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 142, + "source": 600, + "pc": [ + 208, + 209 + ] + }, + { + "teal": 143, + "source": 600, + "pc": [ + 210, + 211 + ] + }, + { + "teal": 144, + "source": 600, + "pc": [ + 212 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV9uYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBuYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5hbWVkVHVwbGUoKTogc3RyaW5nCm5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MDIKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjEwCgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV9uYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiBuYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5hbWVkVHVwbGUoKTogc3RyaW5nCm5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MDIKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjEwCgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.approval.teal b/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.approval.teal index b62378d42..66d50580b 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc32.json b/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc32.json index 09d1b1e0c..bf98d8da8 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0KCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpOiB1aW50NjQKbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MjYKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDI4CgkvLyByZXR1cm4gYS5mb28ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiB9CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0KCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpOiB1aW50NjQKbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MjYKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDI4CgkvLyByZXR1cm4gYS5mb28ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiB9CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc56_draft.json index 28edfd73a..86cef0458 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedArrayLengthInObject.arc56_draft.json @@ -60,322 +60,325 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1424, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1424, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1424, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1424, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1424, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1424, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1424, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1424, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1424, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1425, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1425, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1425, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1425, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1425, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1425, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1425, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1425, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 1425, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 1426, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 48, - "source": 1426, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 52, - "source": 1428, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 53, - "source": 1428, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 56, - "source": 1425, - "pc": [ - 72, - 73 - ] - }, - { - "teal": 57, - "source": 1425, - "pc": [ - 74 - ] - }, - { - "teal": 60, - "source": 1424, - "pc": [ - 75 - ] - }, - { - "teal": 61, - "source": 1424, - "pc": [ - 76 - ] - }, - { - "teal": 64, - "source": 1424, - "pc": [ - 77, - 78, - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 65, - "source": 1424, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 66, - "source": 1424, - "pc": [ - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 69, - "source": 1424, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 90 - ] - }, - { - "teal": 72, - "source": 1424, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 73, - "source": 1424, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 74, - "source": 1424, - "pc": [ - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 77, - "source": 1424, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 104 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1424, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1424, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1424, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1424, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1424, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1424, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1424, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1424, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1424, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1425, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1425, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1425, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1425, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1425, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1425, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1425, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1425, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 1425, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 1426, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 48, + "source": 1426, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 52, + "source": 1428, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 53, + "source": 1428, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 56, + "source": 1425, + "pc": [ + 72, + 73 + ] + }, + { + "teal": 57, + "source": 1425, + "pc": [ + 74 + ] + }, + { + "teal": 60, + "source": 1424, + "pc": [ + 75 + ] + }, + { + "teal": 61, + "source": 1424, + "pc": [ + 76 + ] + }, + { + "teal": 64, + "source": 1424, + "pc": [ + 77, + 78, + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 65, + "source": 1424, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 66, + "source": 1424, + "pc": [ + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 69, + "source": 1424, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 90 + ] + }, + { + "teal": 72, + "source": 1424, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 73, + "source": 1424, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 74, + "source": 1424, + "pc": [ + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 77, + "source": 1424, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 104 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0KCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpOiB1aW50NjQKbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MjYKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDI4CgkvLyByZXR1cm4gYS5mb28ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiB9CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0KCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpOiB1aW50NjQKbmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MjYKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDI4CgkvLyByZXR1cm4gYS5mb28ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiB9CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.approval.teal b/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.approval.teal index 4c383c42a..0151cdf1b 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc32.json b/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc32.json index eae3a5cd8..7e8943214 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKTogdWludDY0Cm5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MzQKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDM3CgkvLyByZXR1cm4gYi5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdFZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKTogdWludDY0Cm5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MzQKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDM3CgkvLyByZXR1cm4gYi5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdFZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc56_draft.json index 507e75935..b58e9353f 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedArrayLengthInObjectVariable.arc56_draft.json @@ -60,314 +60,317 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1432, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1432, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1432, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1432, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1432, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1432, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1432, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1432, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1432, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1433, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1433, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1433, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1433, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1433, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1433, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1433, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1433, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 1433, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 1434, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 48, - "source": 1434, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 52, - "source": 1437, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 55, - "source": 1433, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 56, - "source": 1433, - "pc": [ - 72 - ] - }, - { - "teal": 59, - "source": 1432, - "pc": [ - 73 - ] - }, - { - "teal": 60, - "source": 1432, - "pc": [ - 74 - ] - }, - { - "teal": 63, - "source": 1432, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 64, - "source": 1432, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 65, - "source": 1432, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 68, - "source": 1432, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 71, - "source": 1432, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 72, - "source": 1432, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 73, - "source": 1432, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 76, - "source": 1432, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1432, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1432, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1432, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1432, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1432, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1432, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1432, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1432, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1432, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1433, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1433, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1433, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1433, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1433, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1433, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1433, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1433, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 1433, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 1434, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 48, + "source": 1434, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 52, + "source": 1437, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 55, + "source": 1433, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 56, + "source": 1433, + "pc": [ + 72 + ] + }, + { + "teal": 59, + "source": 1432, + "pc": [ + 73 + ] + }, + { + "teal": 60, + "source": 1432, + "pc": [ + 74 + ] + }, + { + "teal": 63, + "source": 1432, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 64, + "source": 1432, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 65, + "source": 1432, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 68, + "source": 1432, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 71, + "source": 1432, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 72, + "source": 1432, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 73, + "source": 1432, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 76, + "source": 1432, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKTogdWludDY0Cm5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MzQKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDM3CgkvLyByZXR1cm4gYi5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdFZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheUxlbmd0aEluT2JqZWN0VmFyaWFibGUoKTogdWludDY0Cm5lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MzQKCS8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfSA9IHsgZm9vOiBbMTEsIDIyLCAzMywgNDQsIDU1XSB9CglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IHsgZm9vOiBTdGF0aWNBcnJheTx1aW50OCwgNT4gfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDM3CgkvLyByZXR1cm4gYi5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlMZW5ndGhJbk9iamVjdFZhcmlhYmxlKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZEFycmF5TGVuZ3RoSW5PYmplY3RWYXJpYWJsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedArrayRef.approval.teal b/tests/contracts/artifacts/ABITestNestedArrayRef.approval.teal index 603f2f3cf..f80c6ce09 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayRef.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedArrayRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedArrayRef.arc32.json b/tests/contracts/artifacts/ABITestNestedArrayRef.arc32.json index 07e28f8cd..fb2c9488b 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayRef.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedArrayRef.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbmVzdGVkQXJyYXlSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheVJlZigpOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KbmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3NjEKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiA9IFsKCS8vICAgICAgIFsxLCAyXSwKCS8vICAgICAgIFszLCA0XSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY1CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc2NwoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBiOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbmVzdGVkQXJyYXlSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheVJlZigpOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KbmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3NjEKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiA9IFsKCS8vICAgICAgIFsxLCAyXSwKCS8vICAgICAgIFszLCA0XSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY1CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc2NwoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBiOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedArrayRef.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedArrayRef.arc56_draft.json index da4790051..512e9e2ba 100644 --- a/tests/contracts/artifacts/ABITestNestedArrayRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedArrayRef.arc56_draft.json @@ -60,339 +60,342 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 759, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 759, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 759, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 759, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 759, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 759, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 759, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 759, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 759, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 760, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 760, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 760, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 760, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 760, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 760, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 760, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 760, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 49, - "source": 761, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 50, - "source": 761, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 56, - "source": 767, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 57, - "source": 767, - "pc": [ - 68, - 69, - 70 - ] - }, - { - "teal": 58, - "source": 767, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 59, - "source": 767, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 63, - "source": 769, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 66, - "source": 760, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 67, - "source": 760, - "pc": [ - 79 - ] - }, - { - "teal": 70, - "source": 759, - "pc": [ - 80 - ] - }, - { - "teal": 71, - "source": 759, - "pc": [ - 81 - ] - }, - { - "teal": 74, - "source": 759, - "pc": [ - 82, - 83, - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 75, - "source": 759, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 76, - "source": 759, - "pc": [ - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 79, - "source": 759, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 95 - ] - }, - { - "teal": 82, - "source": 759, - "pc": [ - 96, - 97, - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 83, - "source": 759, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 84, - "source": 759, - "pc": [ - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 87, - "source": 759, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 109 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 759, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 759, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 759, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 759, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 759, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 759, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 759, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 759, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 759, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 760, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 760, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 760, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 760, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 760, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 760, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 760, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 760, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 49, + "source": 761, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 50, + "source": 761, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 56, + "source": 767, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 57, + "source": 767, + "pc": [ + 68, + 69, + 70 + ] + }, + { + "teal": 58, + "source": 767, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 59, + "source": 767, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 63, + "source": 769, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 66, + "source": 760, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 67, + "source": 760, + "pc": [ + 79 + ] + }, + { + "teal": 70, + "source": 759, + "pc": [ + 80 + ] + }, + { + "teal": 71, + "source": 759, + "pc": [ + 81 + ] + }, + { + "teal": 74, + "source": 759, + "pc": [ + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 75, + "source": 759, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 76, + "source": 759, + "pc": [ + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 79, + "source": 759, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 95 + ] + }, + { + "teal": 82, + "source": 759, + "pc": [ + 96, + 97, + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 83, + "source": 759, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 84, + "source": 759, + "pc": [ + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 87, + "source": 759, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 109 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbmVzdGVkQXJyYXlSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheVJlZigpOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KbmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3NjEKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiA9IFsKCS8vICAgICAgIFsxLCAyXSwKCS8vICAgICAgIFszLCA0XSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY1CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc2NwoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBiOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbmVzdGVkQXJyYXlSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRBcnJheVJlZigpOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KbmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3NjEKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPiA9IFsKCS8vICAgICAgIFsxLCAyXSwKCS8vICAgICAgIFszLCA0XSwKCS8vICAgICBdCglieXRlIDB4MDEwMjAzMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY1CgkvLyBiID0gYVsxXQoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc2NwoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBiOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzY5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRBcnJheVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedObject.approval.teal b/tests/contracts/artifacts/ABITestNestedObject.approval.teal index c31844d01..c25a9a9d2 100644 --- a/tests/contracts/artifacts/ABITestNestedObject.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedObject.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedObject.arc32.json b/tests/contracts/artifacts/ABITestNestedObject.arc32.json index e6de42367..349bcbdd1 100644 --- a/tests/contracts/artifacts/ABITestNestedObject.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedObject.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZE9iamVjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRPYmplY3QoKTogdWludDY0Cm5lc3RlZE9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODYKCS8vIGE6IHsgYjogeyBjOiB7IGQ6IHVpbnQ2NCB9IH0gfSA9IHsgYjogeyBjOiB7IGQ6IDEgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODcKCS8vIGEuYi5jLmQgPSAyCglmcmFtZV9kaWcgMCAvLyBhOiB7IGI6IHsgYzogeyBkOiB1aW50NjQgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODgKCS8vIHJldHVybiBhLmIuYy5kOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CglleHRyYWN0IDAgOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkT2JqZWN0KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZE9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZE9iamVjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRPYmplY3QoKTogdWludDY0Cm5lc3RlZE9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODYKCS8vIGE6IHsgYjogeyBjOiB7IGQ6IHVpbnQ2NCB9IH0gfSA9IHsgYjogeyBjOiB7IGQ6IDEgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODcKCS8vIGEuYi5jLmQgPSAyCglmcmFtZV9kaWcgMCAvLyBhOiB7IGI6IHsgYzogeyBkOiB1aW50NjQgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODgKCS8vIHJldHVybiBhLmIuYy5kOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CglleHRyYWN0IDAgOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkT2JqZWN0KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZE9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedObject.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedObject.arc56_draft.json index fad376016..16e80477c 100644 --- a/tests/contracts/artifacts/ABITestNestedObject.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedObject.arc56_draft.json @@ -60,373 +60,376 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1084, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1084, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1084, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1084, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1084, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1084, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1084, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1084, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1084, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1085, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1085, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1085, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1085, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1085, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1085, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1085, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1085, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 1085, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 1086, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 1086, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 52, - "source": 1087, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 53, - "source": 1087, - "pc": [ - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 54, - "source": 1087, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 55, - "source": 1087, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 59, - "source": 1088, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 60, - "source": 1088, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 61, - "source": 1088, - "pc": [ - 92 - ] - }, - { - "teal": 64, - "source": 1085, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 65, - "source": 1085, - "pc": [ - 95 - ] - }, - { - "teal": 68, - "source": 1084, - "pc": [ - 96 - ] - }, - { - "teal": 69, - "source": 1084, - "pc": [ - 97 - ] - }, - { - "teal": 72, - "source": 1084, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 73, - "source": 1084, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 74, - "source": 1084, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 77, - "source": 1084, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 111 - ] - }, - { - "teal": 80, - "source": 1084, - "pc": [ - 112, - 113, - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 81, - "source": 1084, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 82, - "source": 1084, - "pc": [ - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 85, - "source": 1084, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 125 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1084, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1084, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1084, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1084, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1084, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1084, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1084, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1084, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1084, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1085, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1085, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1085, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1085, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1085, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1085, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1085, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1085, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 1085, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 1086, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 1086, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 52, + "source": 1087, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 53, + "source": 1087, + "pc": [ + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 54, + "source": 1087, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 55, + "source": 1087, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 59, + "source": 1088, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 60, + "source": 1088, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 61, + "source": 1088, + "pc": [ + 92 + ] + }, + { + "teal": 64, + "source": 1085, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 65, + "source": 1085, + "pc": [ + 95 + ] + }, + { + "teal": 68, + "source": 1084, + "pc": [ + 96 + ] + }, + { + "teal": 69, + "source": 1084, + "pc": [ + 97 + ] + }, + { + "teal": 72, + "source": 1084, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 73, + "source": 1084, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 74, + "source": 1084, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 77, + "source": 1084, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 111 + ] + }, + { + "teal": 80, + "source": 1084, + "pc": [ + 112, + 113, + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 81, + "source": 1084, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 82, + "source": 1084, + "pc": [ + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 85, + "source": 1084, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 125 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZE9iamVjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRPYmplY3QoKTogdWludDY0Cm5lc3RlZE9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODYKCS8vIGE6IHsgYjogeyBjOiB7IGQ6IHVpbnQ2NCB9IH0gfSA9IHsgYjogeyBjOiB7IGQ6IDEgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODcKCS8vIGEuYi5jLmQgPSAyCglmcmFtZV9kaWcgMCAvLyBhOiB7IGI6IHsgYzogeyBkOiB1aW50NjQgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODgKCS8vIHJldHVybiBhLmIuYy5kOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CglleHRyYWN0IDAgOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkT2JqZWN0KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZE9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZE9iamVjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRPYmplY3QoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRPYmplY3QoKTogdWludDY0Cm5lc3RlZE9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODYKCS8vIGE6IHsgYjogeyBjOiB7IGQ6IHVpbnQ2NCB9IH0gfSA9IHsgYjogeyBjOiB7IGQ6IDEgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODcKCS8vIGEuYi5jLmQgPSAyCglmcmFtZV9kaWcgMCAvLyBhOiB7IGI6IHsgYzogeyBkOiB1aW50NjQgfSB9IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwODgKCS8vIHJldHVybiBhLmIuYy5kOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBiOiB7IGM6IHsgZDogdWludDY0IH0gfSB9CglleHRyYWN0IDAgOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibmVzdGVkT2JqZWN0KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZE9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedObjectType.approval.teal b/tests/contracts/artifacts/ABITestNestedObjectType.approval.teal index dc041dfda..d77ae620c 100644 --- a/tests/contracts/artifacts/ABITestNestedObjectType.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedObjectType.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedObjectType.arc32.json b/tests/contracts/artifacts/ABITestNestedObjectType.arc32.json index 9c142c363..c68ca9fa2 100644 --- a/tests/contracts/artifacts/ABITestNestedObjectType.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedObjectType.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3RUeXBlKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRPYmplY3RUeXBlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3RUeXBlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkT2JqZWN0VHlwZSgpOiB1aW50NjQKbmVzdGVkT2JqZWN0VHlwZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwOTYKCS8vIGE6IFQ0ID0geyBiOiB7IGM6IHsgZDogMSB9IH0gfQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWZyYW1lX2J1cnkgMCAvLyBhOiBUNAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDk3CgkvLyBhLmIuYy5kID0gMgoJZnJhbWVfZGlnIDAgLy8gYTogVDQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogVDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA5OAoJLy8gcmV0dXJuIGEuYi5jLmQ7CglmcmFtZV9kaWcgMCAvLyBhOiBUNAoJZXh0cmFjdCAwIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkT2JqZWN0VHlwZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3RUeXBlKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRPYmplY3RUeXBlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3RUeXBlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkT2JqZWN0VHlwZSgpOiB1aW50NjQKbmVzdGVkT2JqZWN0VHlwZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwOTYKCS8vIGE6IFQ0ID0geyBiOiB7IGM6IHsgZDogMSB9IH0gfQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWZyYW1lX2J1cnkgMCAvLyBhOiBUNAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDk3CgkvLyBhLmIuYy5kID0gMgoJZnJhbWVfZGlnIDAgLy8gYTogVDQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogVDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA5OAoJLy8gcmV0dXJuIGEuYi5jLmQ7CglmcmFtZV9kaWcgMCAvLyBhOiBUNAoJZXh0cmFjdCAwIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkT2JqZWN0VHlwZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedObjectType.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedObjectType.arc56_draft.json index 3ca5e30ff..54176579c 100644 --- a/tests/contracts/artifacts/ABITestNestedObjectType.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedObjectType.arc56_draft.json @@ -60,373 +60,376 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1094, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1094, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1094, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1094, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1094, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1094, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1094, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1094, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1094, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1095, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1095, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1095, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1095, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1095, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1095, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1095, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1095, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 1095, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 1096, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 1096, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 52, - "source": 1097, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 53, - "source": 1097, - "pc": [ - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 54, - "source": 1097, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 55, - "source": 1097, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 59, - "source": 1098, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 60, - "source": 1098, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 61, - "source": 1098, - "pc": [ - 92 - ] - }, - { - "teal": 64, - "source": 1095, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 65, - "source": 1095, - "pc": [ - 95 - ] - }, - { - "teal": 68, - "source": 1094, - "pc": [ - 96 - ] - }, - { - "teal": 69, - "source": 1094, - "pc": [ - 97 - ] - }, - { - "teal": 72, - "source": 1094, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 73, - "source": 1094, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 74, - "source": 1094, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 77, - "source": 1094, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 111 - ] - }, - { - "teal": 80, - "source": 1094, - "pc": [ - 112, - 113, - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 81, - "source": 1094, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 82, - "source": 1094, - "pc": [ - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 85, - "source": 1094, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 125 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1094, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1094, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1094, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1094, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1094, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1094, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1094, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1094, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1094, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1095, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1095, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1095, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1095, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1095, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1095, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1095, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1095, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 1095, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 1096, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 1096, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 52, + "source": 1097, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 53, + "source": 1097, + "pc": [ + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 54, + "source": 1097, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 55, + "source": 1097, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 59, + "source": 1098, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 60, + "source": 1098, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 61, + "source": 1098, + "pc": [ + 92 + ] + }, + { + "teal": 64, + "source": 1095, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 65, + "source": 1095, + "pc": [ + 95 + ] + }, + { + "teal": 68, + "source": 1094, + "pc": [ + 96 + ] + }, + { + "teal": 69, + "source": 1094, + "pc": [ + 97 + ] + }, + { + "teal": 72, + "source": 1094, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 73, + "source": 1094, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 74, + "source": 1094, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 77, + "source": 1094, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 111 + ] + }, + { + "teal": 80, + "source": 1094, + "pc": [ + 112, + 113, + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 81, + "source": 1094, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 82, + "source": 1094, + "pc": [ + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 85, + "source": 1094, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 125 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3RUeXBlKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRPYmplY3RUeXBlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3RUeXBlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkT2JqZWN0VHlwZSgpOiB1aW50NjQKbmVzdGVkT2JqZWN0VHlwZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwOTYKCS8vIGE6IFQ0ID0geyBiOiB7IGM6IHsgZDogMSB9IH0gfQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWZyYW1lX2J1cnkgMCAvLyBhOiBUNAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDk3CgkvLyBhLmIuYy5kID0gMgoJZnJhbWVfZGlnIDAgLy8gYTogVDQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogVDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA5OAoJLy8gcmV0dXJuIGEuYi5jLmQ7CglmcmFtZV9kaWcgMCAvLyBhOiBUNAoJZXh0cmFjdCAwIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkT2JqZWN0VHlwZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRPYmplY3RUeXBlKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRPYmplY3RUeXBlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRPYmplY3RUeXBlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkT2JqZWN0VHlwZSgpOiB1aW50NjQKbmVzdGVkT2JqZWN0VHlwZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwOTYKCS8vIGE6IFQ0ID0geyBiOiB7IGM6IHsgZDogMSB9IH0gfQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCWZyYW1lX2J1cnkgMCAvLyBhOiBUNAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDk3CgkvLyBhLmIuYy5kID0gMgoJZnJhbWVfZGlnIDAgLy8gYTogVDQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogVDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA5OAoJLy8gcmV0dXJuIGEuYi5jLmQ7CglmcmFtZV9kaWcgMCAvLyBhOiBUNAoJZXh0cmFjdCAwIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZE9iamVjdFR5cGUoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkT2JqZWN0VHlwZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticArray.approval.teal b/tests/contracts/artifacts/ABITestNestedStaticArray.approval.teal index 643c3c542..c5c1f3d54 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedStaticArray.arc32.json b/tests/contracts/artifacts/ABITestNestedStaticArray.arc32.json index 30b6ea4e3..264d31665 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE5OAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIwNAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE5OAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIwNAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedStaticArray.arc56_draft.json index 343593d83..423707926 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedStaticArray.arc56_draft.json @@ -60,397 +60,400 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 196, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 196, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 196, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 196, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 196, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 196, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 196, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 196, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 196, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 197, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 197, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 197, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 197, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 197, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 197, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 197, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 197, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 197, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 51, - "source": 198, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 52, - "source": 198, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 56, - "source": 204, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 57, - "source": 204, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 58, - "source": 204, - "pc": [ - 140 - ] - }, - { - "teal": 61, - "source": 197, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 62, - "source": 197, - "pc": [ - 143 - ] - }, - { - "teal": 65, - "source": 196, - "pc": [ - 144 - ] - }, - { - "teal": 66, - "source": 196, - "pc": [ - 145 - ] - }, - { - "teal": 69, - "source": 196, - "pc": [ - 146, - 147, - 148, - 149, - 150, - 151 - ] - }, - { - "teal": 70, - "source": 196, - "pc": [ - 152, - 153, - 154 - ] - }, - { - "teal": 71, - "source": 196, - "pc": [ - 155, - 156, - 157, - 158 - ] - }, - { - "teal": 74, - "source": 196, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 159 - ] - }, - { - "teal": 77, - "source": 196, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 78, - "source": 196, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 79, - "source": 196, - "pc": [ - 169, - 170, - 171, - 172 - ] - }, - { - "teal": 82, - "source": 196, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 173 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 196, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 196, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 196, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 196, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 196, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 196, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 196, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 196, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 196, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 197, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 197, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 197, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 197, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 197, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 197, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 197, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 197, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 197, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 51, + "source": 198, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 52, + "source": 198, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 56, + "source": 204, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 57, + "source": 204, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 58, + "source": 204, + "pc": [ + 140 + ] + }, + { + "teal": 61, + "source": 197, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 62, + "source": 197, + "pc": [ + 143 + ] + }, + { + "teal": 65, + "source": 196, + "pc": [ + 144 + ] + }, + { + "teal": 66, + "source": 196, + "pc": [ + 145 + ] + }, + { + "teal": 69, + "source": 196, + "pc": [ + 146, + 147, + 148, + 149, + 150, + 151 + ] + }, + { + "teal": 70, + "source": 196, + "pc": [ + 152, + 153, + 154 + ] + }, + { + "teal": 71, + "source": 196, + "pc": [ + 155, + 156, + 157, + 158 + ] + }, + { + "teal": 74, + "source": 196, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 159 + ] + }, + { + "teal": 77, + "source": 196, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 78, + "source": 196, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 79, + "source": 196, + "pc": [ + 169, + 170, + 171, + 172 + ] + }, + { + "teal": 82, + "source": 196, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 173 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE5OAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIwNAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE5OAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIwNAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticArrayLength.approval.teal b/tests/contracts/artifacts/ABITestNestedStaticArrayLength.approval.teal index d6c84dc09..d5593280a 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticArrayLength.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedStaticArrayLength.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc32.json b/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc32.json index 0fde656c3..483545a08 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MTQKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzMywgNDQsIDU1XSwKCS8vICAgICAgIFs2NiwgNzcsIDg4LCA5OSwgMTAwXSwKCS8vICAgICAgIFsxMDEsIDEwMiwgMTAzLCAxMDQsIDEwNV0sCgkvLyAgICAgXQoJYnl0ZSAweDBiMTYyMTJjMzc0MjRkNTg2MzY0NjU2NjY3Njg2OQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQyMAoJLy8gcmV0dXJuIGFbMF0ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDgsIDU+LCAzPgoJaW50IDUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MTQKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzMywgNDQsIDU1XSwKCS8vICAgICAgIFs2NiwgNzcsIDg4LCA5OSwgMTAwXSwKCS8vICAgICAgIFsxMDEsIDEwMiwgMTAzLCAxMDQsIDEwNV0sCgkvLyAgICAgXQoJYnl0ZSAweDBiMTYyMTJjMzc0MjRkNTg2MzY0NjU2NjY3Njg2OQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQyMAoJLy8gcmV0dXJuIGFbMF0ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDgsIDU+LCAzPgoJaW50IDUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc56_draft.json index 4eb809a97..24189a1b7 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedStaticArrayLength.arc56_draft.json @@ -60,332 +60,335 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1412, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1412, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1412, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1412, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1412, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1412, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1412, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1412, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1412, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1413, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1413, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1413, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1413, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1413, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1413, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1413, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1413, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 1413, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 51, - "source": 1414, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 52, - "source": 1414, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 56, - "source": 1420, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 57, - "source": 1420, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 60, - "source": 1413, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 61, - "source": 1413, - "pc": [ - 84 - ] - }, - { - "teal": 64, - "source": 1412, - "pc": [ - 85 - ] - }, - { - "teal": 65, - "source": 1412, - "pc": [ - 86 - ] - }, - { - "teal": 68, - "source": 1412, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 69, - "source": 1412, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 70, - "source": 1412, - "pc": [ - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 73, - "source": 1412, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 100 - ] - }, - { - "teal": 76, - "source": 1412, - "pc": [ - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 77, - "source": 1412, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 78, - "source": 1412, - "pc": [ - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 81, - "source": 1412, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 114 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1412, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1412, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1412, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1412, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1412, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1412, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1412, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1412, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1412, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1413, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1413, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1413, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1413, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1413, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1413, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1413, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1413, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 1413, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 51, + "source": 1414, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 52, + "source": 1414, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 56, + "source": 1420, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 57, + "source": 1420, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 60, + "source": 1413, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 61, + "source": 1413, + "pc": [ + 84 + ] + }, + { + "teal": 64, + "source": 1412, + "pc": [ + 85 + ] + }, + { + "teal": 65, + "source": 1412, + "pc": [ + 86 + ] + }, + { + "teal": 68, + "source": 1412, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 69, + "source": 1412, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 70, + "source": 1412, + "pc": [ + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 73, + "source": 1412, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 100 + ] + }, + { + "teal": 76, + "source": 1412, + "pc": [ + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 77, + "source": 1412, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 78, + "source": 1412, + "pc": [ + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 81, + "source": 1412, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 114 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MTQKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzMywgNDQsIDU1XSwKCS8vICAgICAgIFs2NiwgNzcsIDg4LCA5OSwgMTAwXSwKCS8vICAgICAgIFsxMDEsIDEwMiwgMTAzLCAxMDQsIDEwNV0sCgkvLyAgICAgXQoJYnl0ZSAweDBiMTYyMTJjMzc0MjRkNTg2MzY0NjU2NjY3Njg2OQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQyMAoJLy8gcmV0dXJuIGFbMF0ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDgsIDU+LCAzPgoJaW50IDUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfbmVzdGVkU3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApuZXN0ZWRTdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MTQKCS8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzMywgNDQsIDU1XSwKCS8vICAgICAgIFs2NiwgNzcsIDg4LCA5OSwgMTAwXSwKCS8vICAgICAgIFsxMDEsIDEwMiwgMTAzLCAxMDQsIDEwNV0sCgkvLyAgICAgXQoJYnl0ZSAweDBiMTYyMTJjMzc0MjRkNTg2MzY0NjU2NjY3Njg2OQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ4LCA1PiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQyMAoJLy8gcmV0dXJuIGFbMF0ubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDgsIDU+LCAzPgoJaW50IDUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0FycmF5TGVuZ3RoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0FycmF5TGVuZ3RoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticForEach.approval.teal b/tests/contracts/artifacts/ABITestNestedStaticForEach.approval.teal index 7dbf41a16..0f8f66da2 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticForEach.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedStaticForEach.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedStaticForEach.arc32.json b/tests/contracts/artifacts/ABITestNestedStaticForEach.arc32.json index d110dc6a7..384e6db45 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticForEach.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedStaticForEach.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkU3RhdGljRm9yRWFjaCgpOiB1aW50NjQKbmVzdGVkU3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMSwgMiwgM10sCgkvLyAgICAgICBbNCwgNSwgNl0sCgkvLyAgICAgICBbNywgOCwgOV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDA1MDAwMDAwMDAwMDAwMDAwNjAwMDAwMDAwMDAwMDAwMDcwMDAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMDAwOQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzMjUKCS8vIHN1bSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyNwoJLy8gYVsxXS5mb3JFYWNoCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAyNCAyNAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvckVhY2hfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzI4CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzMxCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkU3RhdGljRm9yRWFjaCgpOiB1aW50NjQKbmVzdGVkU3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMSwgMiwgM10sCgkvLyAgICAgICBbNCwgNSwgNl0sCgkvLyAgICAgICBbNywgOCwgOV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDA1MDAwMDAwMDAwMDAwMDAwNjAwMDAwMDAwMDAwMDAwMDcwMDAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMDAwOQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzMjUKCS8vIHN1bSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyNwoJLy8gYVsxXS5mb3JFYWNoCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAyNCAyNAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvckVhY2hfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzI4CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzMxCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticForEach.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedStaticForEach.arc56_draft.json index 09679adf9..c004d26bd 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticForEach.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedStaticForEach.arc56_draft.json @@ -60,631 +60,634 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1318, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1318, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1318, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1318, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1318, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1318, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1318, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1318, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1318, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1319, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 1319, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 1319, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 1319, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 1319, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1319, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1319, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1319, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1319, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1319, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 52, - "source": 1320, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136 - ] - }, - { - "teal": 53, - "source": 1320, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 57, - "source": 1325, - "pc": [ - 139 - ] - }, - { - "teal": 58, - "source": 1325, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 62, - "source": 1327, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 63, - "source": 1327, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 64, - "source": 1327, - "pc": [ - 147 - ] - }, - { - "teal": 65, - "source": 1327, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 66, - "source": 1327, - "pc": [ - 150, - 151, - 152 - ] - }, - { - "teal": 67, - "source": 1327, - "pc": [ - 153 - ] - }, - { - "teal": 68, - "source": 1327, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 69, - "source": 1327, - "pc": [ - 156 - ] - }, - { - "teal": 70, - "source": 1327, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 75, - "source": 1328, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 76, - "source": 1328, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 77, - "source": 1328, - "pc": [ - 163 - ] - }, - { - "teal": 78, - "source": 1328, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 81, - "source": 1327, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 82, - "source": 1327, - "pc": [ - 168 - ] - }, - { - "teal": 83, - "source": 1327, - "pc": [ - 169 - ] - }, - { - "teal": 84, - "source": 1327, - "pc": [ - 170 - ] - }, - { - "teal": 85, - "source": 1327, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 86, - "source": 1327, - "pc": [ - 173 - ] - }, - { - "teal": 87, - "source": 1327, - "pc": [ - 174, - 175, - 176 - ] - }, - { - "teal": 88, - "source": 1327, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 89, - "source": 1327, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 90, - "source": 1327, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 91, - "source": 1327, - "pc": [ - 183 - ] - }, - { - "teal": 92, - "source": 1327, - "pc": [ - 184 - ] - }, - { - "teal": 93, - "source": 1327, - "pc": [ - 185 - ] - }, - { - "teal": 94, - "source": 1327, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 95, - "source": 1327, - "pc": [ - 188, - 189, - 190 - ] - }, - { - "teal": 100, - "source": 1331, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 103, - "source": 1319, - "pc": [ - 193, - 194 - ] - }, - { - "teal": 106, - "source": 1319, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 107, - "source": 1319, - "pc": [ - 197 - ] - }, - { - "teal": 110, - "source": 1318, - "pc": [ - 198 - ] - }, - { - "teal": 111, - "source": 1318, - "pc": [ - 199 - ] - }, - { - "teal": 114, - "source": 1318, - "pc": [ - 200, - 201, - 202, - 203, - 204, - 205 - ] - }, - { - "teal": 115, - "source": 1318, - "pc": [ - 206, - 207, - 208 - ] - }, - { - "teal": 116, - "source": 1318, - "pc": [ - 209, - 210, - 211, - 212 - ] - }, - { - "teal": 119, - "source": 1318, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 213 - ] - }, - { - "teal": 122, - "source": 1318, - "pc": [ - 214, - 215, - 216, - 217, - 218, - 219 - ] - }, - { - "teal": 123, - "source": 1318, - "pc": [ - 220, - 221, - 222 - ] - }, - { - "teal": 124, - "source": 1318, - "pc": [ - 223, - 224, - 225, - 226 - ] - }, - { - "teal": 127, - "source": 1318, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 227 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1318, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1318, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1318, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1318, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1318, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1318, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1318, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1318, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1318, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1319, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 1319, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 1319, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 1319, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 1319, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1319, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1319, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1319, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1319, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1319, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 52, + "source": 1320, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + }, + { + "teal": 53, + "source": 1320, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 57, + "source": 1325, + "pc": [ + 139 + ] + }, + { + "teal": 58, + "source": 1325, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 62, + "source": 1327, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 63, + "source": 1327, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 64, + "source": 1327, + "pc": [ + 147 + ] + }, + { + "teal": 65, + "source": 1327, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 66, + "source": 1327, + "pc": [ + 150, + 151, + 152 + ] + }, + { + "teal": 67, + "source": 1327, + "pc": [ + 153 + ] + }, + { + "teal": 68, + "source": 1327, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 69, + "source": 1327, + "pc": [ + 156 + ] + }, + { + "teal": 70, + "source": 1327, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 75, + "source": 1328, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 76, + "source": 1328, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 77, + "source": 1328, + "pc": [ + 163 + ] + }, + { + "teal": 78, + "source": 1328, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 81, + "source": 1327, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 82, + "source": 1327, + "pc": [ + 168 + ] + }, + { + "teal": 83, + "source": 1327, + "pc": [ + 169 + ] + }, + { + "teal": 84, + "source": 1327, + "pc": [ + 170 + ] + }, + { + "teal": 85, + "source": 1327, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 86, + "source": 1327, + "pc": [ + 173 + ] + }, + { + "teal": 87, + "source": 1327, + "pc": [ + 174, + 175, + 176 + ] + }, + { + "teal": 88, + "source": 1327, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 89, + "source": 1327, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 90, + "source": 1327, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 91, + "source": 1327, + "pc": [ + 183 + ] + }, + { + "teal": 92, + "source": 1327, + "pc": [ + 184 + ] + }, + { + "teal": 93, + "source": 1327, + "pc": [ + 185 + ] + }, + { + "teal": 94, + "source": 1327, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 95, + "source": 1327, + "pc": [ + 188, + 189, + 190 + ] + }, + { + "teal": 100, + "source": 1331, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 103, + "source": 1319, + "pc": [ + 193, + 194 + ] + }, + { + "teal": 106, + "source": 1319, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 107, + "source": 1319, + "pc": [ + 197 + ] + }, + { + "teal": 110, + "source": 1318, + "pc": [ + 198 + ] + }, + { + "teal": 111, + "source": 1318, + "pc": [ + 199 + ] + }, + { + "teal": 114, + "source": 1318, + "pc": [ + 200, + 201, + 202, + 203, + 204, + 205 + ] + }, + { + "teal": 115, + "source": 1318, + "pc": [ + 206, + 207, + 208 + ] + }, + { + "teal": 116, + "source": 1318, + "pc": [ + 209, + 210, + 211, + 212 + ] + }, + { + "teal": 119, + "source": 1318, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 213 + ] + }, + { + "teal": 122, + "source": 1318, + "pc": [ + 214, + 215, + 216, + 217, + 218, + 219 + ] + }, + { + "teal": 123, + "source": 1318, + "pc": [ + 220, + 221, + 222 + ] + }, + { + "teal": 124, + "source": 1318, + "pc": [ + 223, + 224, + 225, + 226 + ] + }, + { + "teal": 127, + "source": 1318, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 227 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkU3RhdGljRm9yRWFjaCgpOiB1aW50NjQKbmVzdGVkU3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMSwgMiwgM10sCgkvLyAgICAgICBbNCwgNSwgNl0sCgkvLyAgICAgICBbNywgOCwgOV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDA1MDAwMDAwMDAwMDAwMDAwNjAwMDAwMDAwMDAwMDAwMDcwMDAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMDAwOQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzMjUKCS8vIHN1bSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyNwoJLy8gYVsxXS5mb3JFYWNoCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAyNCAyNAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvckVhY2hfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzI4CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzMxCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkU3RhdGljRm9yRWFjaCgpOiB1aW50NjQKbmVzdGVkU3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMSwgMiwgM10sCgkvLyAgICAgICBbNCwgNSwgNl0sCgkvLyAgICAgICBbNywgOCwgOV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQwMDAwMDAwMDAwMDAwMDA1MDAwMDAwMDAwMDAwMDAwNjAwMDAwMDAwMDAwMDAwMDcwMDAwMDAwMDAwMDAwMDA4MDAwMDAwMDAwMDAwMDAwOQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzMjUKCS8vIHN1bSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDEgLy8gc3VtOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMyNwoJLy8gYVsxXS5mb3JFYWNoCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAyNCAyNAoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvckVhY2hfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzI4CgkvLyBzdW0gKz0gdgoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIHY6IHVpbnQ2NAoJKwoJZnJhbWVfYnVyeSAxIC8vIHN1bTogdWludDY0CgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CgkrCglkdXAKCWludCAyNCAvLyBvZmZzZXQgb2YgbGFzdCBlbGVtZW50Cgk8CglieiAqZm9yRWFjaF8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yRWFjaF8wCgoqZm9yRWFjaF8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzMxCgkvLyByZXR1cm4gc3VtOwoJZnJhbWVfZGlnIDEgLy8gc3VtOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRTdGF0aWNGb3JFYWNoKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.approval.teal b/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.approval.teal index 690c48e4c..6793d37e2 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc32.json b/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc32.json index f13452e6f..0c0ae2b77 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKTogdWludDY0Cm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMzOQoJLy8gdGhpcy5iS2V5LnZhbHVlID0gWwoJLy8gICAgICAgWzEsIDIsIDNdLAoJLy8gICAgICAgWzQsIDUsIDZdLAoJLy8gICAgICAgWzcsIDgsIDldLAoJLy8gICAgIF0KCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwNTAwMDAwMDAwMDAwMDAwMDYwMDAwMDAwMDAwMDAwMDA3MDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDAwMDkKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM0NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzQ2CgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJaW50IDI0CglkdXAKCWJveF9leHRyYWN0CglkdXAKCWZyYW1lX2J1cnkgMSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNDcKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDIgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8gc3VtOiB1aW50NjQKCgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgMyAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JFYWNoXzBfZW5kCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAxIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CgliICpmb3JFYWNoXzAKCipmb3JFYWNoXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNTAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDMKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKTogdWludDY0Cm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMzOQoJLy8gdGhpcy5iS2V5LnZhbHVlID0gWwoJLy8gICAgICAgWzEsIDIsIDNdLAoJLy8gICAgICAgWzQsIDUsIDZdLAoJLy8gICAgICAgWzcsIDgsIDldLAoJLy8gICAgIF0KCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwNTAwMDAwMDAwMDAwMDAwMDYwMDAwMDAwMDAwMDAwMDA3MDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDAwMDkKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM0NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzQ2CgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJaW50IDI0CglkdXAKCWJveF9leHRyYWN0CglkdXAKCWZyYW1lX2J1cnkgMSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNDcKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDIgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8gc3VtOiB1aW50NjQKCgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgMyAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JFYWNoXzBfZW5kCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAxIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CgliICpmb3JFYWNoXzAKCipmb3JFYWNoXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNTAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDMKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc56_draft.json index 0e4402dcf..a53f8606e 100644 --- a/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedStaticForEachInBox.arc56_draft.json @@ -66,655 +66,658 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1335, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13 - ] - }, - { - "teal": 13, - "source": 1335, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 14, - "source": 1335, - "pc": [ - 16 - ] - }, - { - "teal": 15, - "source": 1335, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 16, - "source": 1335, - "pc": [ - 19 - ] - }, - { - "teal": 17, - "source": 1335, - "pc": [ - 20, - 21 - ] - }, - { - "teal": 18, - "source": 1335, - "pc": [ - 22 - ] - }, - { - "teal": 19, - "source": 1335, - "pc": [ - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 23, - "source": 1335, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 49 - ] - }, - { - "teal": 28, - "source": 1338, - "pc": [ - 50, - 51, - 52, - 53, - 54, - 55 - ] - }, - { - "teal": 31, - "source": 1338, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 32, - "source": 1338, - "pc": [ - 59 - ] - }, - { - "teal": 33, - "source": 1338, - "pc": [ - 60 - ] - }, - { - "teal": 34, - "source": 1338, - "pc": [ - 61 - ] - }, - { - "teal": 35, - "source": 1338, - "pc": [ - 62 - ] - }, - { - "teal": 36, - "source": 1338, - "pc": [ - 63 - ] - }, - { - "teal": 40, - "source": 1338, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 43, - "source": 1338, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 44, - "source": 1338, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 52, - "source": 1339, - "pc": [ - 71 - ] - }, - { - "teal": 53, - "source": 1339, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 54, - "source": 1339, - "pc": [ - 146 - ] - }, - { - "teal": 58, - "source": 1344, - "pc": [ - 147 - ] - }, - { - "teal": 59, - "source": 1344, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 63, - "source": 1346, - "pc": [ - 150 - ] - }, - { - "teal": 64, - "source": 1346, - "pc": [ - 151 - ] - }, - { - "teal": 65, - "source": 1346, - "pc": [ - 152 - ] - }, - { - "teal": 66, - "source": 1346, - "pc": [ - 153 - ] - }, - { - "teal": 67, - "source": 1346, - "pc": [ - 154 - ] - }, - { - "teal": 68, - "source": 1346, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 69, - "source": 1346, - "pc": [ - 157, - 158, - 159 - ] - }, - { - "teal": 70, - "source": 1346, - "pc": [ - 160 - ] - }, - { - "teal": 71, - "source": 1346, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 72, - "source": 1346, - "pc": [ - 163 - ] - }, - { - "teal": 73, - "source": 1346, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 78, - "source": 1347, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 79, - "source": 1347, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 80, - "source": 1347, - "pc": [ - 170 - ] - }, - { - "teal": 81, - "source": 1347, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 84, - "source": 1346, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 85, - "source": 1346, - "pc": [ - 175 - ] - }, - { - "teal": 86, - "source": 1346, - "pc": [ - 176 - ] - }, - { - "teal": 87, - "source": 1346, - "pc": [ - 177 - ] - }, - { - "teal": 88, - "source": 1346, - "pc": [ - 178 - ] - }, - { - "teal": 89, - "source": 1346, - "pc": [ - 179 - ] - }, - { - "teal": 90, - "source": 1346, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 91, - "source": 1346, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 92, - "source": 1346, - "pc": [ - 185, - 186 - ] - }, - { - "teal": 93, - "source": 1346, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 94, - "source": 1346, - "pc": [ - 189 - ] - }, - { - "teal": 95, - "source": 1346, - "pc": [ - 190 - ] - }, - { - "teal": 96, - "source": 1346, - "pc": [ - 191 - ] - }, - { - "teal": 97, - "source": 1346, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 98, - "source": 1346, - "pc": [ - 194, - 195, - 196 - ] - }, - { - "teal": 103, - "source": 1350, - "pc": [ - 197, - 198 - ] - }, - { - "teal": 106, - "source": 1338, - "pc": [ - 199, - 200 - ] - }, - { - "teal": 109, - "source": 1338, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 110, - "source": 1338, - "pc": [ - 203 - ] - }, - { - "teal": 113, - "source": 1335, - "pc": [ - 204 - ] - }, - { - "teal": 114, - "source": 1335, - "pc": [ - 205 - ] - }, - { - "teal": 117, - "source": 1335, - "pc": [ - 206, - 207, - 208, - 209, - 210, - 211 - ] - }, - { - "teal": 118, - "source": 1335, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 119, - "source": 1335, - "pc": [ - 215, - 216, - 217, - 218 - ] - }, - { - "teal": 122, - "source": 1335, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 219 - ] - }, - { - "teal": 125, - "source": 1335, - "pc": [ - 220, - 221, - 222, - 223, - 224, - 225 - ] - }, - { - "teal": 126, - "source": 1335, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 127, - "source": 1335, - "pc": [ - 229, - 230, - 231, - 232 - ] - }, - { - "teal": 130, - "source": 1335, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 233 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1335, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + }, + { + "teal": 13, + "source": 1335, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 14, + "source": 1335, + "pc": [ + 16 + ] + }, + { + "teal": 15, + "source": 1335, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 16, + "source": 1335, + "pc": [ + 19 + ] + }, + { + "teal": 17, + "source": 1335, + "pc": [ + 20, + 21 + ] + }, + { + "teal": 18, + "source": 1335, + "pc": [ + 22 + ] + }, + { + "teal": 19, + "source": 1335, + "pc": [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 23, + "source": 1335, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 49 + ] + }, + { + "teal": 28, + "source": 1338, + "pc": [ + 50, + 51, + 52, + 53, + 54, + 55 + ] + }, + { + "teal": 31, + "source": 1338, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 32, + "source": 1338, + "pc": [ + 59 + ] + }, + { + "teal": 33, + "source": 1338, + "pc": [ + 60 + ] + }, + { + "teal": 34, + "source": 1338, + "pc": [ + 61 + ] + }, + { + "teal": 35, + "source": 1338, + "pc": [ + 62 + ] + }, + { + "teal": 36, + "source": 1338, + "pc": [ + 63 + ] + }, + { + "teal": 40, + "source": 1338, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 43, + "source": 1338, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 44, + "source": 1338, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 52, + "source": 1339, + "pc": [ + 71 + ] + }, + { + "teal": 53, + "source": 1339, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 54, + "source": 1339, + "pc": [ + 146 + ] + }, + { + "teal": 58, + "source": 1344, + "pc": [ + 147 + ] + }, + { + "teal": 59, + "source": 1344, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 63, + "source": 1346, + "pc": [ + 150 + ] + }, + { + "teal": 64, + "source": 1346, + "pc": [ + 151 + ] + }, + { + "teal": 65, + "source": 1346, + "pc": [ + 152 + ] + }, + { + "teal": 66, + "source": 1346, + "pc": [ + 153 + ] + }, + { + "teal": 67, + "source": 1346, + "pc": [ + 154 + ] + }, + { + "teal": 68, + "source": 1346, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 69, + "source": 1346, + "pc": [ + 157, + 158, + 159 + ] + }, + { + "teal": 70, + "source": 1346, + "pc": [ + 160 + ] + }, + { + "teal": 71, + "source": 1346, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 72, + "source": 1346, + "pc": [ + 163 + ] + }, + { + "teal": 73, + "source": 1346, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 78, + "source": 1347, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 79, + "source": 1347, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 80, + "source": 1347, + "pc": [ + 170 + ] + }, + { + "teal": 81, + "source": 1347, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 84, + "source": 1346, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 85, + "source": 1346, + "pc": [ + 175 + ] + }, + { + "teal": 86, + "source": 1346, + "pc": [ + 176 + ] + }, + { + "teal": 87, + "source": 1346, + "pc": [ + 177 + ] + }, + { + "teal": 88, + "source": 1346, + "pc": [ + 178 + ] + }, + { + "teal": 89, + "source": 1346, + "pc": [ + 179 + ] + }, + { + "teal": 90, + "source": 1346, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 91, + "source": 1346, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 92, + "source": 1346, + "pc": [ + 185, + 186 + ] + }, + { + "teal": 93, + "source": 1346, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 94, + "source": 1346, + "pc": [ + 189 + ] + }, + { + "teal": 95, + "source": 1346, + "pc": [ + 190 + ] + }, + { + "teal": 96, + "source": 1346, + "pc": [ + 191 + ] + }, + { + "teal": 97, + "source": 1346, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 98, + "source": 1346, + "pc": [ + 194, + 195, + 196 + ] + }, + { + "teal": 103, + "source": 1350, + "pc": [ + 197, + 198 + ] + }, + { + "teal": 106, + "source": 1338, + "pc": [ + 199, + 200 + ] + }, + { + "teal": 109, + "source": 1338, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 110, + "source": 1338, + "pc": [ + 203 + ] + }, + { + "teal": 113, + "source": 1335, + "pc": [ + 204 + ] + }, + { + "teal": 114, + "source": 1335, + "pc": [ + 205 + ] + }, + { + "teal": 117, + "source": 1335, + "pc": [ + 206, + 207, + 208, + 209, + 210, + 211 + ] + }, + { + "teal": 118, + "source": 1335, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 119, + "source": 1335, + "pc": [ + 215, + 216, + 217, + 218 + ] + }, + { + "teal": 122, + "source": 1335, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 219 + ] + }, + { + "teal": 125, + "source": 1335, + "pc": [ + 220, + 221, + 222, + 223, + 224, + 225 + ] + }, + { + "teal": 126, + "source": 1335, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 127, + "source": 1335, + "pc": [ + 229, + 230, + 231, + 232 + ] + }, + { + "teal": 130, + "source": 1335, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 233 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKTogdWludDY0Cm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMzOQoJLy8gdGhpcy5iS2V5LnZhbHVlID0gWwoJLy8gICAgICAgWzEsIDIsIDNdLAoJLy8gICAgICAgWzQsIDUsIDZdLAoJLy8gICAgICAgWzcsIDgsIDldLAoJLy8gICAgIF0KCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwNTAwMDAwMDAwMDAwMDAwMDYwMDAwMDAwMDAwMDAwMDA3MDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDAwMDkKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM0NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzQ2CgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJaW50IDI0CglkdXAKCWJveF9leHRyYWN0CglkdXAKCWZyYW1lX2J1cnkgMSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNDcKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDIgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8gc3VtOiB1aW50NjQKCgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgMyAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JFYWNoXzBfZW5kCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAxIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CgliICpmb3JFYWNoXzAKCipmb3JFYWNoXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNTAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDMKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoqYWJpX3JvdXRlX25lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3goKTogdWludDY0Cm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMzOQoJLy8gdGhpcy5iS2V5LnZhbHVlID0gWwoJLy8gICAgICAgWzEsIDIsIDNdLAoJLy8gICAgICAgWzQsIDUsIDZdLAoJLy8gICAgICAgWzcsIDgsIDldLAoJLy8gICAgIF0KCWJ5dGUgMHg2MjRiNjU3OSAvLyAiYktleSIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMwMDAwMDAwMDAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwNTAwMDAwMDAwMDAwMDAwMDYwMDAwMDAwMDAwMDAwMDA3MDAwMDAwMDAwMDAwMDAwODAwMDAwMDAwMDAwMDAwMDkKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTM0NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzQ2CgkvLyB0aGlzLmJLZXkudmFsdWVbMV0uZm9yRWFjaAoJYnl0ZSAweDYyNGI2NTc5IC8vICJiS2V5IgoJaW50IDI0CglkdXAKCWJveF9leHRyYWN0CglkdXAKCWZyYW1lX2J1cnkgMSAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWV4dHJhY3QgMCA4CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CglpbnQgMAoJZnJhbWVfYnVyeSAzIC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCgoqZm9yRWFjaF8wOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNDcKCS8vIHN1bSArPSB2CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDIgLy8gdjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8gc3VtOiB1aW50NjQKCgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgMyAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JFYWNoXzBfZW5kCglmcmFtZV9idXJ5IDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyAxIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDMgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludCA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDIgLy8gdjogdWludDY0CgliICpmb3JFYWNoXzAKCipmb3JFYWNoXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzNTAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMCAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDMKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0YXRpY0ZvckVhY2hJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRTdGF0aWNGb3JFYWNoSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedStructInBoxMap.approval.teal b/tests/contracts/artifacts/ABITestNestedStructInBoxMap.approval.teal index aa364d330..aac2f3816 100644 --- a/tests/contracts/artifacts/ABITestNestedStructInBoxMap.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedStructInBoxMap.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc32.json b/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc32.json index e72bb64fa..ce60c87da 100644 --- a/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdHJ1Y3RJbkJveE1hcCgpKCh1aW50OCkpCiphYmlfcm91dGVfbmVzdGVkU3RydWN0SW5Cb3hNYXA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RydWN0SW5Cb3hNYXAoKSgodWludDgpKQoJY2FsbHN1YiBuZXN0ZWRTdHJ1Y3RJbkJveE1hcAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0cnVjdEluQm94TWFwKCk6IFQ4Cm5lc3RlZFN0cnVjdEluQm94TWFwOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODAKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHsgYmFyOiAxIH0gfQoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYnl0ZSAweDAxCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODEKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmZvby5iYXIgPSAzCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgMAoJYnl0ZSAweDAzCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjgyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5mb28uYmFyID0gPHVpbnQ4PjIKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCAwCglieXRlIDB4MDIKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODMKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0cnVjdEluQm94TWFwKCkoKHVpbnQ4KSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0cnVjdEluQm94TWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdHJ1Y3RJbkJveE1hcCgpKCh1aW50OCkpCiphYmlfcm91dGVfbmVzdGVkU3RydWN0SW5Cb3hNYXA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RydWN0SW5Cb3hNYXAoKSgodWludDgpKQoJY2FsbHN1YiBuZXN0ZWRTdHJ1Y3RJbkJveE1hcAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0cnVjdEluQm94TWFwKCk6IFQ4Cm5lc3RlZFN0cnVjdEluQm94TWFwOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODAKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHsgYmFyOiAxIH0gfQoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYnl0ZSAweDAxCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODEKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmZvby5iYXIgPSAzCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgMAoJYnl0ZSAweDAzCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjgyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5mb28uYmFyID0gPHVpbnQ4PjIKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCAwCglieXRlIDB4MDIKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODMKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0cnVjdEluQm94TWFwKCkoKHVpbnQ4KSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0cnVjdEluQm94TWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc56_draft.json index d132d3f99..f8b7a9416 100644 --- a/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedStructInBoxMap.arc56_draft.json @@ -35,11 +35,17 @@ 56 ], "structs": { - "T8": { - "foo": { - "bar": "uint8" + "T8": [ + { + "name": "foo", + "type": [ + { + "name": "bar", + "type": "uint8" + } + ] } - } + ] }, "state": { "schema": { @@ -72,375 +78,378 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1276, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11 - ] - }, - { - "teal": 13, - "source": 1276, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 14, - "source": 1276, - "pc": [ - 14 - ] - }, - { - "teal": 15, - "source": 1276, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 16, - "source": 1276, - "pc": [ - 17 - ] - }, - { - "teal": 17, - "source": 1276, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 18, - "source": 1276, - "pc": [ - 20 - ] - }, - { - "teal": 19, - "source": 1276, - "pc": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 23, - "source": 1276, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 47 - ] - }, - { - "teal": 28, - "source": 1279, - "pc": [ - 48, - 49, - 50, - 51, - 52, - 53 - ] - }, - { - "teal": 31, - "source": 1279, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 32, - "source": 1279, - "pc": [ - 57 - ] - }, - { - "teal": 33, - "source": 1279, - "pc": [ - 58 - ] - }, - { - "teal": 34, - "source": 1279, - "pc": [ - 59 - ] - }, - { - "teal": 35, - "source": 1279, - "pc": [ - 60 - ] - }, - { - "teal": 39, - "source": 1279, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 43, - "source": 1280, - "pc": [ - 64 - ] - }, - { - "teal": 44, - "source": 1280, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 45, - "source": 1280, - "pc": [ - 68 - ] - }, - { - "teal": 49, - "source": 1281, - "pc": [ - 69 - ] - }, - { - "teal": 50, - "source": 1281, - "pc": [ - 70 - ] - }, - { - "teal": 51, - "source": 1281, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 52, - "source": 1281, - "pc": [ - 74 - ] - }, - { - "teal": 56, - "source": 1282, - "pc": [ - 75 - ] - }, - { - "teal": 57, - "source": 1282, - "pc": [ - 76 - ] - }, - { - "teal": 58, - "source": 1282, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 59, - "source": 1282, - "pc": [ - 80 - ] - }, - { - "teal": 63, - "source": 1283, - "pc": [ - 81 - ] - }, - { - "teal": 64, - "source": 1283, - "pc": [ - 82 - ] - }, - { - "teal": 67, - "source": 1283, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 83 - ] - }, - { - "teal": 68, - "source": 1279, - "pc": [ - 84 - ] - }, - { - "teal": 71, - "source": 1276, - "pc": [ - 85 - ] - }, - { - "teal": 72, - "source": 1276, - "pc": [ - 86 - ] - }, - { - "teal": 75, - "source": 1276, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 76, - "source": 1276, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 77, - "source": 1276, - "pc": [ - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 80, - "source": 1276, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 100 - ] - }, - { - "teal": 83, - "source": 1276, - "pc": [ - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 84, - "source": 1276, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 85, - "source": 1276, - "pc": [ - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 88, - "source": 1276, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 114 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1276, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + }, + { + "teal": 13, + "source": 1276, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 14, + "source": 1276, + "pc": [ + 14 + ] + }, + { + "teal": 15, + "source": 1276, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 16, + "source": 1276, + "pc": [ + 17 + ] + }, + { + "teal": 17, + "source": 1276, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 18, + "source": 1276, + "pc": [ + 20 + ] + }, + { + "teal": 19, + "source": 1276, + "pc": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 23, + "source": 1276, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 47 + ] + }, + { + "teal": 28, + "source": 1279, + "pc": [ + 48, + 49, + 50, + 51, + 52, + 53 + ] + }, + { + "teal": 31, + "source": 1279, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 32, + "source": 1279, + "pc": [ + 57 + ] + }, + { + "teal": 33, + "source": 1279, + "pc": [ + 58 + ] + }, + { + "teal": 34, + "source": 1279, + "pc": [ + 59 + ] + }, + { + "teal": 35, + "source": 1279, + "pc": [ + 60 + ] + }, + { + "teal": 39, + "source": 1279, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 43, + "source": 1280, + "pc": [ + 64 + ] + }, + { + "teal": 44, + "source": 1280, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 45, + "source": 1280, + "pc": [ + 68 + ] + }, + { + "teal": 49, + "source": 1281, + "pc": [ + 69 + ] + }, + { + "teal": 50, + "source": 1281, + "pc": [ + 70 + ] + }, + { + "teal": 51, + "source": 1281, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 52, + "source": 1281, + "pc": [ + 74 + ] + }, + { + "teal": 56, + "source": 1282, + "pc": [ + 75 + ] + }, + { + "teal": 57, + "source": 1282, + "pc": [ + 76 + ] + }, + { + "teal": 58, + "source": 1282, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 59, + "source": 1282, + "pc": [ + 80 + ] + }, + { + "teal": 63, + "source": 1283, + "pc": [ + 81 + ] + }, + { + "teal": 64, + "source": 1283, + "pc": [ + 82 + ] + }, + { + "teal": 67, + "source": 1283, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 83 + ] + }, + { + "teal": 68, + "source": 1279, + "pc": [ + 84 + ] + }, + { + "teal": 71, + "source": 1276, + "pc": [ + 85 + ] + }, + { + "teal": 72, + "source": 1276, + "pc": [ + 86 + ] + }, + { + "teal": 75, + "source": 1276, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 76, + "source": 1276, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 77, + "source": 1276, + "pc": [ + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 80, + "source": 1276, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 100 + ] + }, + { + "teal": 83, + "source": 1276, + "pc": [ + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 84, + "source": 1276, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 85, + "source": 1276, + "pc": [ + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 88, + "source": 1276, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 114 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdHJ1Y3RJbkJveE1hcCgpKCh1aW50OCkpCiphYmlfcm91dGVfbmVzdGVkU3RydWN0SW5Cb3hNYXA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RydWN0SW5Cb3hNYXAoKSgodWludDgpKQoJY2FsbHN1YiBuZXN0ZWRTdHJ1Y3RJbkJveE1hcAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0cnVjdEluQm94TWFwKCk6IFQ4Cm5lc3RlZFN0cnVjdEluQm94TWFwOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODAKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHsgYmFyOiAxIH0gfQoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYnl0ZSAweDAxCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODEKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmZvby5iYXIgPSAzCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgMAoJYnl0ZSAweDAzCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjgyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5mb28uYmFyID0gPHVpbnQ4PjIKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCAwCglieXRlIDB4MDIKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODMKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0cnVjdEluQm94TWFwKCkoKHVpbnQ4KSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0cnVjdEluQm94TWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRTdHJ1Y3RJbkJveE1hcCgpKCh1aW50OCkpCiphYmlfcm91dGVfbmVzdGVkU3RydWN0SW5Cb3hNYXA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkU3RydWN0SW5Cb3hNYXAoKSgodWludDgpKQoJY2FsbHN1YiBuZXN0ZWRTdHJ1Y3RJbkJveE1hcAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFN0cnVjdEluQm94TWFwKCk6IFQ4Cm5lc3RlZFN0cnVjdEluQm94TWFwOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODAKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHsgYmFyOiAxIH0gfQoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYnl0ZSAweDAxCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODEKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmZvby5iYXIgPSAzCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgMAoJYnl0ZSAweDAzCglib3hfcmVwbGFjZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjgyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5mb28uYmFyID0gPHVpbnQ4PjIKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCAwCglieXRlIDB4MDIKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyODMKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFN0cnVjdEluQm94TWFwKCkoKHVpbnQ4KSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25lc3RlZFN0cnVjdEluQm94TWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedTuple.approval.teal b/tests/contracts/artifacts/ABITestNestedTuple.approval.teal index 2ee743636..834c0e48a 100644 --- a/tests/contracts/artifacts/ABITestNestedTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedTuple.arc32.json b/tests/contracts/artifacts/ABITestNestedTuple.arc32.json index 5c7f8b2ce..8f985ef7d 100644 --- a/tests/contracts/artifacts/ABITestNestedTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpCiphYmlfcm91dGVfbmVzdGVkVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkVHVwbGUoKSh1aW50MTYsKHVpbnQ4LHN0cmluZyksKHVpbnQxNixzdHJpbmcpKQoJY2FsbHN1YiBuZXN0ZWRUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFR1cGxlKCk6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQpuZXN0ZWRUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY5MgoJLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dID0gWzExLCBbMjIsICdmb28nXSwgWzMzLCAnYmFyJ11dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDAzIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgxNgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM2NjZmNmYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDIxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzYyNjE3MgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2OTQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpCiphYmlfcm91dGVfbmVzdGVkVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkVHVwbGUoKSh1aW50MTYsKHVpbnQ4LHN0cmluZyksKHVpbnQxNixzdHJpbmcpKQoJY2FsbHN1YiBuZXN0ZWRUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFR1cGxlKCk6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQpuZXN0ZWRUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY5MgoJLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dID0gWzExLCBbMjIsICdmb28nXSwgWzMzLCAnYmFyJ11dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDAzIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgxNgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM2NjZmNmYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDIxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzYyNjE3MgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2OTQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedTuple.arc56_draft.json index c909f86ec..d1c94b040 100644 --- a/tests/contracts/artifacts/ABITestNestedTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedTuple.arc56_draft.json @@ -60,752 +60,755 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 690, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 690, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 690, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 690, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 690, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 690, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 690, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 690, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 690, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 691, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 691, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 691, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 691, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 691, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 691, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 691, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 42, - "source": 691, - "pc": [ - 59 - ] - }, - { - "teal": 46, - "source": 692, - "pc": [ - 60 - ] - }, - { - "teal": 47, - "source": 692, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 692, - "pc": [ - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 49, - "source": 692, - "pc": [ - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 50, - "source": 692, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 51, - "source": 692, - "pc": [ - 73 - ] - }, - { - "teal": 52, - "source": 692, - "pc": [ - 74 - ] - }, - { - "teal": 53, - "source": 692, - "pc": [ - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 54, - "source": 692, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 55, - "source": 692, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 56, - "source": 692, - "pc": [ - 85, - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 57, - "source": 692, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 58, - "source": 692, - "pc": [ - 95 - ] - }, - { - "teal": 59, - "source": 692, - "pc": [ - 96 - ] - }, - { - "teal": 60, - "source": 692, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 61, - "source": 692, - "pc": [ - 100 - ] - }, - { - "teal": 62, - "source": 692, - "pc": [ - 101 - ] - }, - { - "teal": 63, - "source": 692, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 64, - "source": 692, - "pc": [ - 106, - 107, - 108, - 109 - ] - }, - { - "teal": 65, - "source": 692, - "pc": [ - 110, - 111, - 112 - ] - }, - { - "teal": 66, - "source": 692, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 67, - "source": 692, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 68, - "source": 692, - "pc": [ - 123 - ] - }, - { - "teal": 69, - "source": 692, - "pc": [ - 124 - ] - }, - { - "teal": 70, - "source": 692, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 71, - "source": 692, - "pc": [ - 128 - ] - }, - { - "teal": 72, - "source": 692, - "pc": [ - 129 - ] - }, - { - "teal": 73, - "source": 692, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 77, - "source": 694, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 80, - "source": 691, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 81, - "source": 691, - "pc": [ - 136 - ] - }, - { - "teal": 84, - "source": 690, - "pc": [ - 137 - ] - }, - { - "teal": 85, - "source": 690, - "pc": [ - 138 - ] - }, - { - "teal": 88, - "source": 690, - "pc": [ - 139, - 140, - 141, - 142, - 143, - 144 - ] - }, - { - "teal": 89, - "source": 690, - "pc": [ - 145, - 146, - 147 - ] - }, - { - "teal": 90, - "source": 690, - "pc": [ - 148, - 149, - 150, - 151 - ] - }, - { - "teal": 93, - "source": 690, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 152 - ] - }, - { - "teal": 96, - "source": 690, - "pc": [ - 153, - 154, - 155, - 156, - 157, - 158 - ] - }, - { - "teal": 97, - "source": 690, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 98, - "source": 690, - "pc": [ - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 101, - "source": 690, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 166 - ] - }, - { - "teal": 104, - "source": 690, - "pc": [ - 167, - 168, - 169 - ] - }, - { - "teal": 105, - "source": 690, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 106, - "source": 690, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 107, - "source": 690, - "pc": [ - 174 - ] - }, - { - "teal": 108, - "source": 690, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 109, - "source": 690, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 110, - "source": 690, - "pc": [ - 179 - ] - }, - { - "teal": 113, - "source": 690, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 114, - "source": 690, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 115, - "source": 690, - "pc": [ - 185, - 186 - ] - }, - { - "teal": 116, - "source": 690, - "pc": [ - 187 - ] - }, - { - "teal": 117, - "source": 690, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 118, - "source": 690, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 119, - "source": 690, - "pc": [ - 192 - ] - }, - { - "teal": 120, - "source": 690, - "pc": [ - 193 - ] - }, - { - "teal": 121, - "source": 690, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 122, - "source": 690, - "pc": [ - 196 - ] - }, - { - "teal": 123, - "source": 690, - "pc": [ - 197 - ] - }, - { - "teal": 124, - "source": 690, - "pc": [ - 198 - ] - }, - { - "teal": 125, - "source": 690, - "pc": [ - 199, - 200, - 201 - ] - }, - { - "teal": 126, - "source": 690, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 127, - "source": 690, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 128, - "source": 690, - "pc": [ - 206 - ] - }, - { - "teal": 129, - "source": 690, - "pc": [ - 207 - ] - }, - { - "teal": 130, - "source": 690, - "pc": [ - 208, - 209 - ] - }, - { - "teal": 131, - "source": 690, - "pc": [ - 210, - 211 - ] - }, - { - "teal": 132, - "source": 690, - "pc": [ - 212, - 213 - ] - }, - { - "teal": 133, - "source": 690, - "pc": [ - 214, - 215 - ] - }, - { - "teal": 134, - "source": 690, - "pc": [ - 216 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 690, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 690, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 690, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 690, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 690, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 690, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 690, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 690, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 690, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 691, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 691, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 691, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 691, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 691, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 691, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 691, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 42, + "source": 691, + "pc": [ + 59 + ] + }, + { + "teal": 46, + "source": 692, + "pc": [ + 60 + ] + }, + { + "teal": 47, + "source": 692, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 692, + "pc": [ + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 49, + "source": 692, + "pc": [ + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 50, + "source": 692, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 51, + "source": 692, + "pc": [ + 73 + ] + }, + { + "teal": 52, + "source": 692, + "pc": [ + 74 + ] + }, + { + "teal": 53, + "source": 692, + "pc": [ + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 54, + "source": 692, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 55, + "source": 692, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 56, + "source": 692, + "pc": [ + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 57, + "source": 692, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 58, + "source": 692, + "pc": [ + 95 + ] + }, + { + "teal": 59, + "source": 692, + "pc": [ + 96 + ] + }, + { + "teal": 60, + "source": 692, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 61, + "source": 692, + "pc": [ + 100 + ] + }, + { + "teal": 62, + "source": 692, + "pc": [ + 101 + ] + }, + { + "teal": 63, + "source": 692, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 64, + "source": 692, + "pc": [ + 106, + 107, + 108, + 109 + ] + }, + { + "teal": 65, + "source": 692, + "pc": [ + 110, + 111, + 112 + ] + }, + { + "teal": 66, + "source": 692, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 67, + "source": 692, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 68, + "source": 692, + "pc": [ + 123 + ] + }, + { + "teal": 69, + "source": 692, + "pc": [ + 124 + ] + }, + { + "teal": 70, + "source": 692, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 71, + "source": 692, + "pc": [ + 128 + ] + }, + { + "teal": 72, + "source": 692, + "pc": [ + 129 + ] + }, + { + "teal": 73, + "source": 692, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 77, + "source": 694, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 80, + "source": 691, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 81, + "source": 691, + "pc": [ + 136 + ] + }, + { + "teal": 84, + "source": 690, + "pc": [ + 137 + ] + }, + { + "teal": 85, + "source": 690, + "pc": [ + 138 + ] + }, + { + "teal": 88, + "source": 690, + "pc": [ + 139, + 140, + 141, + 142, + 143, + 144 + ] + }, + { + "teal": 89, + "source": 690, + "pc": [ + 145, + 146, + 147 + ] + }, + { + "teal": 90, + "source": 690, + "pc": [ + 148, + 149, + 150, + 151 + ] + }, + { + "teal": 93, + "source": 690, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 152 + ] + }, + { + "teal": 96, + "source": 690, + "pc": [ + 153, + 154, + 155, + 156, + 157, + 158 + ] + }, + { + "teal": 97, + "source": 690, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 98, + "source": 690, + "pc": [ + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 101, + "source": 690, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 166 + ] + }, + { + "teal": 104, + "source": 690, + "pc": [ + 167, + 168, + 169 + ] + }, + { + "teal": 105, + "source": 690, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 106, + "source": 690, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 107, + "source": 690, + "pc": [ + 174 + ] + }, + { + "teal": 108, + "source": 690, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 109, + "source": 690, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 110, + "source": 690, + "pc": [ + 179 + ] + }, + { + "teal": 113, + "source": 690, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 114, + "source": 690, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 115, + "source": 690, + "pc": [ + 185, + 186 + ] + }, + { + "teal": 116, + "source": 690, + "pc": [ + 187 + ] + }, + { + "teal": 117, + "source": 690, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 118, + "source": 690, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 119, + "source": 690, + "pc": [ + 192 + ] + }, + { + "teal": 120, + "source": 690, + "pc": [ + 193 + ] + }, + { + "teal": 121, + "source": 690, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 122, + "source": 690, + "pc": [ + 196 + ] + }, + { + "teal": 123, + "source": 690, + "pc": [ + 197 + ] + }, + { + "teal": 124, + "source": 690, + "pc": [ + 198 + ] + }, + { + "teal": 125, + "source": 690, + "pc": [ + 199, + 200, + 201 + ] + }, + { + "teal": 126, + "source": 690, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 127, + "source": 690, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 128, + "source": 690, + "pc": [ + 206 + ] + }, + { + "teal": 129, + "source": 690, + "pc": [ + 207 + ] + }, + { + "teal": 130, + "source": 690, + "pc": [ + 208, + 209 + ] + }, + { + "teal": 131, + "source": 690, + "pc": [ + 210, + 211 + ] + }, + { + "teal": 132, + "source": 690, + "pc": [ + 212, + 213 + ] + }, + { + "teal": 133, + "source": 690, + "pc": [ + 214, + 215 + ] + }, + { + "teal": 134, + "source": 690, + "pc": [ + 216 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpCiphYmlfcm91dGVfbmVzdGVkVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkVHVwbGUoKSh1aW50MTYsKHVpbnQ4LHN0cmluZyksKHVpbnQxNixzdHJpbmcpKQoJY2FsbHN1YiBuZXN0ZWRUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFR1cGxlKCk6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQpuZXN0ZWRUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY5MgoJLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dID0gWzExLCBbMjIsICdmb28nXSwgWzMzLCAnYmFyJ11dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDAzIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgxNgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM2NjZmNmYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDIxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzYyNjE3MgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2OTQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpCiphYmlfcm91dGVfbmVzdGVkVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbmVzdGVkVHVwbGUoKSh1aW50MTYsKHVpbnQ4LHN0cmluZyksKHVpbnQxNixzdHJpbmcpKQoJY2FsbHN1YiBuZXN0ZWRUdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5lc3RlZFR1cGxlKCk6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQpuZXN0ZWRUdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY5MgoJLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dID0gWzExLCBbMjIsICdmb28nXSwgWzMzLCAnYmFyJ11dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDBiCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDAzIC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgxNgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM2NjZmNmYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA0IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDIxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMzYyNjE3MgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIFt1aW50PDg+LCBzdHJpbmddLCBbdWludDE2LCBzdHJpbmddXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2OTQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgW3VpbnQ8OD4sIHN0cmluZ10sIFt1aW50MTYsIHN0cmluZ11dCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJuZXN0ZWRUdXBsZSgpKHVpbnQxNiwodWludDgsc3RyaW5nKSwodWludDE2LHN0cmluZykpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9uZXN0ZWRUdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNestedTypesInSignature.approval.teal b/tests/contracts/artifacts/ABITestNestedTypesInSignature.approval.teal index e5ba9da21..e490ab0d8 100644 --- a/tests/contracts/artifacts/ABITestNestedTypesInSignature.approval.teal +++ b/tests/contracts/artifacts/ABITestNestedTypesInSignature.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc32.json b/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc32.json index d78d38e3b..37b54f18e 100644 --- a/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc32.json +++ b/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlKCkoKHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCkKKmFiaV9yb3V0ZV9uZXN0ZWRUeXBlc0luU2lnbmF0dXJlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KQoJY2FsbHN1YiBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkVHlwZXNJblNpZ25hdHVyZSgpOiBbVDUsIHVpbnQ2NF0KbmVzdGVkVHlwZXNJblNpZ25hdHVyZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTM2CgkvLyByZXR1cm4gW2J6ZXJvPFQ1PigpLCAwXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkVHlwZXNJblNpZ25hdHVyZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlKCkoKHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCkKKmFiaV9yb3V0ZV9uZXN0ZWRUeXBlc0luU2lnbmF0dXJlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KQoJY2FsbHN1YiBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkVHlwZXNJblNpZ25hdHVyZSgpOiBbVDUsIHVpbnQ2NF0KbmVzdGVkVHlwZXNJblNpZ25hdHVyZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTM2CgkvLyByZXR1cm4gW2J6ZXJvPFQ1PigpLCAwXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkVHlwZXNJblNpZ25hdHVyZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc56_draft.json b/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc56_draft.json index 726ba6119..4e0a150bc 100644 --- a/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNestedTypesInSignature.arc56_draft.json @@ -60,294 +60,297 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1134, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1134, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1134, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1134, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1134, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1134, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1134, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1134, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1134, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1135, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1135, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1135, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1135, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1135, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1135, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1135, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 43, - "source": 1136, - "pc": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 44, - "source": 1135, - "pc": [ - 82 - ] - }, - { - "teal": 47, - "source": 1134, - "pc": [ - 83 - ] - }, - { - "teal": 48, - "source": 1134, - "pc": [ - 84 - ] - }, - { - "teal": 51, - "source": 1134, - "pc": [ - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 52, - "source": 1134, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 53, - "source": 1134, - "pc": [ - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 56, - "source": 1134, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 98 - ] - }, - { - "teal": 59, - "source": 1134, - "pc": [ - 99, - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 60, - "source": 1134, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 61, - "source": 1134, - "pc": [ - 108, - 109, - 110, - 111 - ] - }, - { - "teal": 64, - "source": 1134, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 112 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1134, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1134, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1134, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1134, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1134, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1134, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1134, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1134, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1134, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1135, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1135, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1135, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1135, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1135, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1135, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1135, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 43, + "source": 1136, + "pc": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 44, + "source": 1135, + "pc": [ + 82 + ] + }, + { + "teal": 47, + "source": 1134, + "pc": [ + 83 + ] + }, + { + "teal": 48, + "source": 1134, + "pc": [ + 84 + ] + }, + { + "teal": 51, + "source": 1134, + "pc": [ + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 52, + "source": 1134, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 53, + "source": 1134, + "pc": [ + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 56, + "source": 1134, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 98 + ] + }, + { + "teal": 59, + "source": 1134, + "pc": [ + 99, + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 60, + "source": 1134, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 61, + "source": 1134, + "pc": [ + 108, + 109, + 110, + 111 + ] + }, + { + "teal": 64, + "source": 1134, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 112 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlKCkoKHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCkKKmFiaV9yb3V0ZV9uZXN0ZWRUeXBlc0luU2lnbmF0dXJlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KQoJY2FsbHN1YiBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkVHlwZXNJblNpZ25hdHVyZSgpOiBbVDUsIHVpbnQ2NF0KbmVzdGVkVHlwZXNJblNpZ25hdHVyZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTM2CgkvLyByZXR1cm4gW2J6ZXJvPFQ1PigpLCAwXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkVHlwZXNJblNpZ25hdHVyZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlKCkoKHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCkKKmFiaV9yb3V0ZV9uZXN0ZWRUeXBlc0luU2lnbmF0dXJlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KQoJY2FsbHN1YiBuZXN0ZWRUeXBlc0luU2lnbmF0dXJlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkVHlwZXNJblNpZ25hdHVyZSgpOiBbVDUsIHVpbnQ2NF0KbmVzdGVkVHlwZXNJblNpZ25hdHVyZToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTM2CgkvLyByZXR1cm4gW2J6ZXJvPFQ1PigpLCAwXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm5lc3RlZFR5cGVzSW5TaWduYXR1cmUoKSgodWludDY0LHVpbnQ2NCksdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbmVzdGVkVHlwZXNJblNpZ25hdHVyZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNonE2E.approval.teal b/tests/contracts/artifacts/ABITestNonE2E.approval.teal index a24df1445..3189ec1d3 100644 --- a/tests/contracts/artifacts/ABITestNonE2E.approval.teal +++ b/tests/contracts/artifacts/ABITestNonE2E.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNonE2E.arc32.json b/tests/contracts/artifacts/ABITestNonE2E.arc32.json index 09a23474f..c88d772d9 100644 --- a/tests/contracts/artifacts/ABITestNonE2E.arc32.json +++ b/tests/contracts/artifacts/ABITestNonE2E.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIHR5cGVXaXRoQ29tbWVudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlV2l0aENvbW1lbnRzKCk6IFQ2CnR5cGVXaXRoQ29tbWVudHM6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE2MAoJLy8gcmV0dXJuIHsKCS8vICAgICAgIGZvbzogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgICBiYXI6IDEsCgkvLyAgICAgICBiYXo6IDIsCgkvLyAgICAgfTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMTIgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHlwZVdpdGhDb21tZW50cygpKHN0cmluZyx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50cwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIHR5cGVXaXRoQ29tbWVudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlV2l0aENvbW1lbnRzKCk6IFQ2CnR5cGVXaXRoQ29tbWVudHM6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE2MAoJLy8gcmV0dXJuIHsKCS8vICAgICAgIGZvbzogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgICBiYXI6IDEsCgkvLyAgICAgICBiYXo6IDIsCgkvLyAgICAgfTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMTIgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHlwZVdpdGhDb21tZW50cygpKHN0cmluZyx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50cwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNonE2E.arc56_draft.json b/tests/contracts/artifacts/ABITestNonE2E.arc56_draft.json index 5ce4ebea8..4b988a1d9 100644 --- a/tests/contracts/artifacts/ABITestNonE2E.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNonE2E.arc56_draft.json @@ -35,11 +35,20 @@ 56 ], "structs": { - "T6": { - "foo": "string", - "bar": "uint64", - "baz": "uint64" - } + "T6": [ + { + "name": "foo", + "type": "string" + }, + { + "name": "bar", + "type": "uint64" + }, + { + "name": "baz", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -67,608 +76,611 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1158, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 1158, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 1158, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 1158, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 1158, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 1158, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 1158, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 1158, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 1158, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 1159, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 1159, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 1159, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 1159, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 1159, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 1159, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 1159, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 47, - "source": 1160, - "pc": [ - 59 - ] - }, - { - "teal": 48, - "source": 1160, - "pc": [ - 60 - ] - }, - { - "teal": 49, - "source": 1160, - "pc": [ - 61, - 62, - 63, - 64 - ] - }, - { - "teal": 50, - "source": 1161, - "pc": [ - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 51, - "source": 1161, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 52, - "source": 1162, - "pc": [ - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 53, - "source": 1162, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 54, - "source": 1163, - "pc": [ - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 55, - "source": 1163, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 56, - "source": 1160, - "pc": [ - 110 - ] - }, - { - "teal": 57, - "source": 1160, - "pc": [ - 111 - ] - }, - { - "teal": 58, - "source": 1159, - "pc": [ - 112 - ] - }, - { - "teal": 61, - "source": 1158, - "pc": [ - 113 - ] - }, - { - "teal": 62, - "source": 1158, - "pc": [ - 114 - ] - }, - { - "teal": 65, - "source": 1158, - "pc": [ - 115, - 116, - 117, - 118, - 119, - 120 - ] - }, - { - "teal": 66, - "source": 1158, - "pc": [ - 121, - 122, - 123 - ] - }, - { - "teal": 67, - "source": 1158, - "pc": [ - 124, - 125, - 126, - 127 - ] - }, - { - "teal": 70, - "source": 1158, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 128 - ] - }, - { - "teal": 73, - "source": 1158, - "pc": [ - 129, - 130, - 131, - 132, - 133, - 134 - ] - }, - { - "teal": 74, - "source": 1158, - "pc": [ - 135, - 136, - 137 - ] - }, - { - "teal": 75, - "source": 1158, - "pc": [ - 138, - 139, - 140, - 141 - ] - }, - { - "teal": 78, - "source": 1158, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 142 - ] - }, - { - "teal": 81, - "source": 1158, - "pc": [ - 143, - 144, - 145 - ] - }, - { - "teal": 82, - "source": 1158, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 83, - "source": 1158, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 84, - "source": 1158, - "pc": [ - 150 - ] - }, - { - "teal": 85, - "source": 1158, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 86, - "source": 1158, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 87, - "source": 1158, - "pc": [ - 155 - ] - }, - { - "teal": 90, - "source": 1158, - "pc": [ - 156, - 157, - 158 - ] - }, - { - "teal": 91, - "source": 1158, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 92, - "source": 1158, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 93, - "source": 1158, - "pc": [ - 163 - ] - }, - { - "teal": 94, - "source": 1158, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 95, - "source": 1158, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 96, - "source": 1158, - "pc": [ - 168 - ] - }, - { - "teal": 97, - "source": 1158, - "pc": [ - 169 - ] - }, - { - "teal": 98, - "source": 1158, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 99, - "source": 1158, - "pc": [ - 172 - ] - }, - { - "teal": 100, - "source": 1158, - "pc": [ - 173 - ] - }, - { - "teal": 101, - "source": 1158, - "pc": [ - 174 - ] - }, - { - "teal": 102, - "source": 1158, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 103, - "source": 1158, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 104, - "source": 1158, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 105, - "source": 1158, - "pc": [ - 182 - ] - }, - { - "teal": 106, - "source": 1158, - "pc": [ - 183 - ] - }, - { - "teal": 107, - "source": 1158, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 108, - "source": 1158, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 109, - "source": 1158, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 110, - "source": 1158, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 111, - "source": 1158, - "pc": [ - 192 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1158, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 1158, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 1158, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 1158, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 1158, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 1158, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 1158, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 1158, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 1158, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 1159, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 1159, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 1159, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 1159, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 1159, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 1159, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 1159, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 47, + "source": 1160, + "pc": [ + 59 + ] + }, + { + "teal": 48, + "source": 1160, + "pc": [ + 60 + ] + }, + { + "teal": 49, + "source": 1160, + "pc": [ + 61, + 62, + 63, + 64 + ] + }, + { + "teal": 50, + "source": 1161, + "pc": [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 51, + "source": 1161, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 52, + "source": 1162, + "pc": [ + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 53, + "source": 1162, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 54, + "source": 1163, + "pc": [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 55, + "source": 1163, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 56, + "source": 1160, + "pc": [ + 110 + ] + }, + { + "teal": 57, + "source": 1160, + "pc": [ + 111 + ] + }, + { + "teal": 58, + "source": 1159, + "pc": [ + 112 + ] + }, + { + "teal": 61, + "source": 1158, + "pc": [ + 113 + ] + }, + { + "teal": 62, + "source": 1158, + "pc": [ + 114 + ] + }, + { + "teal": 65, + "source": 1158, + "pc": [ + 115, + 116, + 117, + 118, + 119, + 120 + ] + }, + { + "teal": 66, + "source": 1158, + "pc": [ + 121, + 122, + 123 + ] + }, + { + "teal": 67, + "source": 1158, + "pc": [ + 124, + 125, + 126, + 127 + ] + }, + { + "teal": 70, + "source": 1158, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 128 + ] + }, + { + "teal": 73, + "source": 1158, + "pc": [ + 129, + 130, + 131, + 132, + 133, + 134 + ] + }, + { + "teal": 74, + "source": 1158, + "pc": [ + 135, + 136, + 137 + ] + }, + { + "teal": 75, + "source": 1158, + "pc": [ + 138, + 139, + 140, + 141 + ] + }, + { + "teal": 78, + "source": 1158, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 142 + ] + }, + { + "teal": 81, + "source": 1158, + "pc": [ + 143, + 144, + 145 + ] + }, + { + "teal": 82, + "source": 1158, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 83, + "source": 1158, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 84, + "source": 1158, + "pc": [ + 150 + ] + }, + { + "teal": 85, + "source": 1158, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 86, + "source": 1158, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 87, + "source": 1158, + "pc": [ + 155 + ] + }, + { + "teal": 90, + "source": 1158, + "pc": [ + 156, + 157, + 158 + ] + }, + { + "teal": 91, + "source": 1158, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 92, + "source": 1158, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 93, + "source": 1158, + "pc": [ + 163 + ] + }, + { + "teal": 94, + "source": 1158, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 95, + "source": 1158, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 96, + "source": 1158, + "pc": [ + 168 + ] + }, + { + "teal": 97, + "source": 1158, + "pc": [ + 169 + ] + }, + { + "teal": 98, + "source": 1158, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 99, + "source": 1158, + "pc": [ + 172 + ] + }, + { + "teal": 100, + "source": 1158, + "pc": [ + 173 + ] + }, + { + "teal": 101, + "source": 1158, + "pc": [ + 174 + ] + }, + { + "teal": 102, + "source": 1158, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 103, + "source": 1158, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 104, + "source": 1158, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 105, + "source": 1158, + "pc": [ + 182 + ] + }, + { + "teal": 106, + "source": 1158, + "pc": [ + 183 + ] + }, + { + "teal": 107, + "source": 1158, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 108, + "source": 1158, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 109, + "source": 1158, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 110, + "source": 1158, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 111, + "source": 1158, + "pc": [ + 192 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIHR5cGVXaXRoQ29tbWVudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlV2l0aENvbW1lbnRzKCk6IFQ2CnR5cGVXaXRoQ29tbWVudHM6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE2MAoJLy8gcmV0dXJuIHsKCS8vICAgICAgIGZvbzogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgICBiYXI6IDEsCgkvLyAgICAgICBiYXo6IDIsCgkvLyAgICAgfTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMTIgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHlwZVdpdGhDb21tZW50cygpKHN0cmluZyx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50cwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0eXBlV2l0aENvbW1lbnRzKCkoc3RyaW5nLHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIHR5cGVXaXRoQ29tbWVudHMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlV2l0aENvbW1lbnRzKCk6IFQ2CnR5cGVXaXRoQ29tbWVudHM6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE2MAoJLy8gcmV0dXJuIHsKCS8vICAgICAgIGZvbzogJ0hlbGxvIFdvcmxkIScsCgkvLyAgICAgICBiYXI6IDEsCgkvLyAgICAgICBiYXo6IDIsCgkvLyAgICAgfTsKCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMTIgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHlwZVdpdGhDb21tZW50cygpKHN0cmluZyx1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZVdpdGhDb21tZW50cwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.approval.teal b/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.approval.teal index b3b967883..6513cf07e 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc32.json b/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc32.json index 578259ddc..08bdbf905 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKKmFiaV9yb3V0ZV9ub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUoKSh1aW50OCx1aW50MTYsdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoJY2FsbHN1YiBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbER5bmFtaWNFbGVtZW50SW5UdXBsZSgpOiBbdWludDw4PiwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCm5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMAoJLy8gZTogdWludDE2W10gPSBbNSwgNl0KCWJ5dGUgMHgwMDA1MDAwNgoJZnJhbWVfYnVyeSAwIC8vIGU6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMQoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIGUsIFs3LCA4XV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDkgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMzA0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIDAgLy8gZTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDcwOAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDIzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKKmFiaV9yb3V0ZV9ub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUoKSh1aW50OCx1aW50MTYsdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoJY2FsbHN1YiBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbER5bmFtaWNFbGVtZW50SW5UdXBsZSgpOiBbdWludDw4PiwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCm5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMAoJLy8gZTogdWludDE2W10gPSBbNSwgNl0KCWJ5dGUgMHgwMDA1MDAwNgoJZnJhbWVfYnVyeSAwIC8vIGU6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMQoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIGUsIFs3LCA4XV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDkgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMzA0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIDAgLy8gZTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDcwOAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDIzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc56_draft.json index 5a1bd38bd..6b89467a0 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNonLiteralDynamicElementInTuple.arc56_draft.json @@ -60,748 +60,751 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 418, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 418, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 418, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 418, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 418, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 418, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 418, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 418, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 418, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 419, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 419, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 419, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 419, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 419, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 419, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 419, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 42, - "source": 419, - "pc": [ - 59 - ] - }, - { - "teal": 43, - "source": 419, - "pc": [ - 60 - ] - }, - { - "teal": 47, - "source": 420, - "pc": [ - 61, - 62, - 63, - 64, - 65, - 66 - ] - }, - { - "teal": 48, - "source": 420, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 52, - "source": 421, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 421, - "pc": [ - 70 - ] - }, - { - "teal": 54, - "source": 421, - "pc": [ - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 55, - "source": 421, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 56, - "source": 421, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 57, - "source": 421, - "pc": [ - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 58, - "source": 421, - "pc": [ - 85, - 86, - 87 - ] - }, - { - "teal": 59, - "source": 421, - "pc": [ - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 60, - "source": 421, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 61, - "source": 421, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 62, - "source": 421, - "pc": [ - 99 - ] - }, - { - "teal": 63, - "source": 421, - "pc": [ - 100 - ] - }, - { - "teal": 64, - "source": 421, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 65, - "source": 421, - "pc": [ - 103 - ] - }, - { - "teal": 66, - "source": 421, - "pc": [ - 104 - ] - }, - { - "teal": 67, - "source": 421, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 68, - "source": 421, - "pc": [ - 108 - ] - }, - { - "teal": 69, - "source": 421, - "pc": [ - 109 - ] - }, - { - "teal": 70, - "source": 421, - "pc": [ - 110, - 111, - 112 - ] - }, - { - "teal": 71, - "source": 421, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 72, - "source": 421, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 73, - "source": 421, - "pc": [ - 122 - ] - }, - { - "teal": 74, - "source": 421, - "pc": [ - 123 - ] - }, - { - "teal": 75, - "source": 421, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 79, - "source": 423, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 82, - "source": 419, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 85, - "source": 419, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 86, - "source": 419, - "pc": [ - 132 - ] - }, - { - "teal": 89, - "source": 418, - "pc": [ - 133 - ] - }, - { - "teal": 90, - "source": 418, - "pc": [ - 134 - ] - }, - { - "teal": 93, - "source": 418, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140 - ] - }, - { - "teal": 94, - "source": 418, - "pc": [ - 141, - 142, - 143 - ] - }, - { - "teal": 95, - "source": 418, - "pc": [ - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 98, - "source": 418, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 148 - ] - }, - { - "teal": 101, - "source": 418, - "pc": [ - 149, - 150, - 151, - 152, - 153, - 154 - ] - }, - { - "teal": 102, - "source": 418, - "pc": [ - 155, - 156, - 157 - ] - }, - { - "teal": 103, - "source": 418, - "pc": [ - 158, - 159, - 160, - 161 - ] - }, - { - "teal": 106, - "source": 418, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 162 - ] - }, - { - "teal": 109, - "source": 418, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 110, - "source": 418, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 111, - "source": 418, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 112, - "source": 418, - "pc": [ - 170 - ] - }, - { - "teal": 113, - "source": 418, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 114, - "source": 418, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 115, - "source": 418, - "pc": [ - 175 - ] - }, - { - "teal": 118, - "source": 418, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 119, - "source": 418, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 120, - "source": 418, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 121, - "source": 418, - "pc": [ - 183 - ] - }, - { - "teal": 122, - "source": 418, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 123, - "source": 418, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 124, - "source": 418, - "pc": [ - 188 - ] - }, - { - "teal": 125, - "source": 418, - "pc": [ - 189 - ] - }, - { - "teal": 126, - "source": 418, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 127, - "source": 418, - "pc": [ - 192 - ] - }, - { - "teal": 128, - "source": 418, - "pc": [ - 193 - ] - }, - { - "teal": 129, - "source": 418, - "pc": [ - 194 - ] - }, - { - "teal": 130, - "source": 418, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 131, - "source": 418, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 132, - "source": 418, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 133, - "source": 418, - "pc": [ - 202 - ] - }, - { - "teal": 134, - "source": 418, - "pc": [ - 203 - ] - }, - { - "teal": 135, - "source": 418, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 136, - "source": 418, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 137, - "source": 418, - "pc": [ - 208, - 209 - ] - }, - { - "teal": 138, - "source": 418, - "pc": [ - 210, - 211 - ] - }, - { - "teal": 139, - "source": 418, - "pc": [ - 212 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 418, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 418, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 418, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 418, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 418, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 418, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 418, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 418, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 418, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 419, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 419, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 419, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 419, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 419, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 419, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 419, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 42, + "source": 419, + "pc": [ + 59 + ] + }, + { + "teal": 43, + "source": 419, + "pc": [ + 60 + ] + }, + { + "teal": 47, + "source": 420, + "pc": [ + 61, + 62, + 63, + 64, + 65, + 66 + ] + }, + { + "teal": 48, + "source": 420, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 52, + "source": 421, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 421, + "pc": [ + 70 + ] + }, + { + "teal": 54, + "source": 421, + "pc": [ + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 55, + "source": 421, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 56, + "source": 421, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 57, + "source": 421, + "pc": [ + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 58, + "source": 421, + "pc": [ + 85, + 86, + 87 + ] + }, + { + "teal": 59, + "source": 421, + "pc": [ + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 60, + "source": 421, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 61, + "source": 421, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 62, + "source": 421, + "pc": [ + 99 + ] + }, + { + "teal": 63, + "source": 421, + "pc": [ + 100 + ] + }, + { + "teal": 64, + "source": 421, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 65, + "source": 421, + "pc": [ + 103 + ] + }, + { + "teal": 66, + "source": 421, + "pc": [ + 104 + ] + }, + { + "teal": 67, + "source": 421, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 68, + "source": 421, + "pc": [ + 108 + ] + }, + { + "teal": 69, + "source": 421, + "pc": [ + 109 + ] + }, + { + "teal": 70, + "source": 421, + "pc": [ + 110, + 111, + 112 + ] + }, + { + "teal": 71, + "source": 421, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 72, + "source": 421, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 73, + "source": 421, + "pc": [ + 122 + ] + }, + { + "teal": 74, + "source": 421, + "pc": [ + 123 + ] + }, + { + "teal": 75, + "source": 421, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 79, + "source": 423, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 82, + "source": 419, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 85, + "source": 419, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 86, + "source": 419, + "pc": [ + 132 + ] + }, + { + "teal": 89, + "source": 418, + "pc": [ + 133 + ] + }, + { + "teal": 90, + "source": 418, + "pc": [ + 134 + ] + }, + { + "teal": 93, + "source": 418, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140 + ] + }, + { + "teal": 94, + "source": 418, + "pc": [ + 141, + 142, + 143 + ] + }, + { + "teal": 95, + "source": 418, + "pc": [ + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 98, + "source": 418, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 148 + ] + }, + { + "teal": 101, + "source": 418, + "pc": [ + 149, + 150, + 151, + 152, + 153, + 154 + ] + }, + { + "teal": 102, + "source": 418, + "pc": [ + 155, + 156, + 157 + ] + }, + { + "teal": 103, + "source": 418, + "pc": [ + 158, + 159, + 160, + 161 + ] + }, + { + "teal": 106, + "source": 418, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 162 + ] + }, + { + "teal": 109, + "source": 418, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 110, + "source": 418, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 111, + "source": 418, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 112, + "source": 418, + "pc": [ + 170 + ] + }, + { + "teal": 113, + "source": 418, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 114, + "source": 418, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 115, + "source": 418, + "pc": [ + 175 + ] + }, + { + "teal": 118, + "source": 418, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 119, + "source": 418, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 120, + "source": 418, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 121, + "source": 418, + "pc": [ + 183 + ] + }, + { + "teal": 122, + "source": 418, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 123, + "source": 418, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 124, + "source": 418, + "pc": [ + 188 + ] + }, + { + "teal": 125, + "source": 418, + "pc": [ + 189 + ] + }, + { + "teal": 126, + "source": 418, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 127, + "source": 418, + "pc": [ + 192 + ] + }, + { + "teal": 128, + "source": 418, + "pc": [ + 193 + ] + }, + { + "teal": 129, + "source": 418, + "pc": [ + 194 + ] + }, + { + "teal": 130, + "source": 418, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 131, + "source": 418, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 132, + "source": 418, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 133, + "source": 418, + "pc": [ + 202 + ] + }, + { + "teal": 134, + "source": 418, + "pc": [ + 203 + ] + }, + { + "teal": 135, + "source": 418, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 136, + "source": 418, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 137, + "source": 418, + "pc": [ + 208, + 209 + ] + }, + { + "teal": 138, + "source": 418, + "pc": [ + 210, + 211 + ] + }, + { + "teal": 139, + "source": 418, + "pc": [ + 212 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKKmFiaV9yb3V0ZV9ub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUoKSh1aW50OCx1aW50MTYsdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoJY2FsbHN1YiBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbER5bmFtaWNFbGVtZW50SW5UdXBsZSgpOiBbdWludDw4PiwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCm5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMAoJLy8gZTogdWludDE2W10gPSBbNSwgNl0KCWJ5dGUgMHgwMDA1MDAwNgoJZnJhbWVfYnVyeSAwIC8vIGU6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMQoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIGUsIFs3LCA4XV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDkgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMzA0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIDAgLy8gZTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDcwOAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDIzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKKmFiaV9yb3V0ZV9ub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUoKSh1aW50OCx1aW50MTYsdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoJY2FsbHN1YiBub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbER5bmFtaWNFbGVtZW50SW5UdXBsZSgpOiBbdWludDw4PiwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCm5vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMAoJLy8gZTogdWludDE2W10gPSBbNSwgNl0KCWJ5dGUgMHgwMDA1MDAwNgoJZnJhbWVfYnVyeSAwIC8vIGU6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQyMQoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIGUsIFs3LCA4XV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDkgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMgoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMzA0CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJZnJhbWVfZGlnIDAgLy8gZTogdWludDE2W10KCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDcwOAoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDIzCgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAxIC8vIGE6IFt1aW50PDg+LCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDgsdWludDE2LHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxEeW5hbWljRWxlbWVudEluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.approval.teal b/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.approval.teal index 8113ef80f..da18520ca 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.approval.teal +++ b/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc32.json b/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc32.json index 9e9314326..353c90373 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc32.json +++ b/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdCiphYmlfcm91dGVfbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmKCk6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgpub25MaXRlcmFsTmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc3NQoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWzEsIDJdLAoJLy8gICAgICAgWzMsIDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMTAyMDMwNAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3ODAKCS8vIGkgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9iCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4MwoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NQoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglmcmFtZV9kaWcgMiAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2IKCWludCAyCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAxCgkrCglieXRlIDB4MDUKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYjogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdCiphYmlfcm91dGVfbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmKCk6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgpub25MaXRlcmFsTmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc3NQoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWzEsIDJdLAoJLy8gICAgICAgWzMsIDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMTAyMDMwNAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3ODAKCS8vIGkgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9iCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4MwoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NQoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglmcmFtZV9kaWcgMiAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2IKCWludCAyCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAxCgkrCglieXRlIDB4MDUKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYjogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc56_draft.json b/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc56_draft.json index 7e9ceb36a..4ce533a1d 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNonLiteralNestedArrayRef.arc56_draft.json @@ -60,439 +60,442 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 773, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 773, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 773, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 773, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 773, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 773, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 773, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 773, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 773, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 774, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 774, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 774, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 774, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 774, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 774, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 774, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 774, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 43, - "source": 774, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 50, - "source": 775, - "pc": [ - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 51, - "source": 775, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 55, - "source": 780, - "pc": [ - 68 - ] - }, - { - "teal": 56, - "source": 780, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 57, - "source": 781, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 58, - "source": 781, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 62, - "source": 783, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 63, - "source": 783, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 67, - "source": 785, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 68, - "source": 785, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 69, - "source": 785, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 70, - "source": 785, - "pc": [ - 86 - ] - }, - { - "teal": 71, - "source": 785, - "pc": [ - 87 - ] - }, - { - "teal": 72, - "source": 785, - "pc": [ - 88 - ] - }, - { - "teal": 73, - "source": 785, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 74, - "source": 785, - "pc": [ - 92 - ] - }, - { - "teal": 75, - "source": 785, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 79, - "source": 787, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 82, - "source": 774, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 85, - "source": 774, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 86, - "source": 774, - "pc": [ - 101 - ] - }, - { - "teal": 89, - "source": 773, - "pc": [ - 102 - ] - }, - { - "teal": 90, - "source": 773, - "pc": [ - 103 - ] - }, - { - "teal": 93, - "source": 773, - "pc": [ - 104, - 105, - 106, - 107, - 108, - 109 - ] - }, - { - "teal": 94, - "source": 773, - "pc": [ - 110, - 111, - 112 - ] - }, - { - "teal": 95, - "source": 773, - "pc": [ - 113, - 114, - 115, - 116 - ] - }, - { - "teal": 98, - "source": 773, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 117 - ] - }, - { - "teal": 101, - "source": 773, - "pc": [ - 118, - 119, - 120, - 121, - 122, - 123 - ] - }, - { - "teal": 102, - "source": 773, - "pc": [ - 124, - 125, - 126 - ] - }, - { - "teal": 103, - "source": 773, - "pc": [ - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 106, - "source": 773, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 131 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 773, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 773, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 773, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 773, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 773, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 773, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 773, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 773, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 773, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 774, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 774, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 774, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 774, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 774, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 774, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 774, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 774, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 43, + "source": 774, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 50, + "source": 775, + "pc": [ + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 51, + "source": 775, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 55, + "source": 780, + "pc": [ + 68 + ] + }, + { + "teal": 56, + "source": 780, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 57, + "source": 781, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 58, + "source": 781, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 62, + "source": 783, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 63, + "source": 783, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 67, + "source": 785, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 68, + "source": 785, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 69, + "source": 785, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 70, + "source": 785, + "pc": [ + 86 + ] + }, + { + "teal": 71, + "source": 785, + "pc": [ + 87 + ] + }, + { + "teal": 72, + "source": 785, + "pc": [ + 88 + ] + }, + { + "teal": 73, + "source": 785, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 74, + "source": 785, + "pc": [ + 92 + ] + }, + { + "teal": 75, + "source": 785, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 79, + "source": 787, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 82, + "source": 774, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 85, + "source": 774, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 86, + "source": 774, + "pc": [ + 101 + ] + }, + { + "teal": 89, + "source": 773, + "pc": [ + 102 + ] + }, + { + "teal": 90, + "source": 773, + "pc": [ + 103 + ] + }, + { + "teal": 93, + "source": 773, + "pc": [ + 104, + 105, + 106, + 107, + 108, + 109 + ] + }, + { + "teal": 94, + "source": 773, + "pc": [ + 110, + 111, + 112 + ] + }, + { + "teal": 95, + "source": 773, + "pc": [ + 113, + 114, + 115, + 116 + ] + }, + { + "teal": 98, + "source": 773, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 117 + ] + }, + { + "teal": 101, + "source": 773, + "pc": [ + 118, + 119, + 120, + 121, + 122, + 123 + ] + }, + { + "teal": 102, + "source": 773, + "pc": [ + 124, + 125, + 126 + ] + }, + { + "teal": 103, + "source": 773, + "pc": [ + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 106, + "source": 773, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 131 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdCiphYmlfcm91dGVfbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmKCk6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgpub25MaXRlcmFsTmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc3NQoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWzEsIDJdLAoJLy8gICAgICAgWzMsIDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMTAyMDMwNAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3ODAKCS8vIGkgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9iCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4MwoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NQoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglmcmFtZV9kaWcgMiAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2IKCWludCAyCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAxCgkrCglieXRlIDB4MDUKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYjogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdCiphYmlfcm91dGVfbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG5vbkxpdGVyYWxOZXN0ZWRBcnJheVJlZigpdWludDhbMl1bMl0KCWNhbGxzdWIgbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbm9uTGl0ZXJhbE5lc3RlZEFycmF5UmVmKCk6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgpub25MaXRlcmFsTmVzdGVkQXJyYXlSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwbiAyCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc3NQoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWzEsIDJdLAoJLy8gICAgICAgWzMsIDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMTAyMDMwNAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ8OD4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3ODAKCS8vIGkgPSAxCglpbnQgMQoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gaTogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gYWNjZXNzb3I6IGFjY2Vzc29yLy8wLy9iCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4MwoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDEgLy8gaTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NQoJLy8gYlsxXSA9IDUgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CglmcmFtZV9kaWcgMiAvLyBzYXZlZCBhY2Nlc3NvcjogYWNjZXNzb3IvLzAvL2IKCWludCAyCgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludCAxCgkrCglieXRlIDB4MDUKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYjogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDw4PiwgMj4sIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc4NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50PDg+LCAyPiwgMj4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYoKXVpbnQ4WzJdWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9ub25MaXRlcmFsTmVzdGVkQXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.approval.teal b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.approval.teal index 6edb9d818..59ec42b7b 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.approval.teal +++ b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc32.json b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc32.json index d2b74e8b6..4222b96d9 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc32.json +++ b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKTogdWludDY0Cm5vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2CgkvLyBuID0gYnRvaShpdG9iKDIpKQoJaW50IDIKCWZyYW1lX2J1cnkgMSAvLyBuOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTgKCS8vIHJldHVybiBhW25dOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCAxNiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5QWNjZXNzKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKTogdWludDY0Cm5vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2CgkvLyBuID0gYnRvaShpdG9iKDIpKQoJaW50IDIKCWZyYW1lX2J1cnkgMSAvLyBuOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTgKCS8vIHJldHVybiBhW25dOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCAxNiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5QWNjZXNzKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc56_draft.json b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc56_draft.json index fb0db2393..0c93b930e 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayAccess.arc56_draft.json @@ -60,380 +60,383 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 53, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 53, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 53, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 53, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 53, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 53, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 53, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 53, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 53, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 54, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 54, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 54, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 54, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 54, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 54, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 54, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 54, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 54, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 44, - "source": 54, - "pc": [ - 59 - ] - }, - { - "teal": 48, - "source": 55, - "pc": [ - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 49, - "source": 55, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 53, - "source": 56, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 54, - "source": 56, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 58, - "source": 58, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 59, - "source": 58, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 60, - "source": 58, - "pc": [ - 97 - ] - }, - { - "teal": 63, - "source": 54, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 66, - "source": 54, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 67, - "source": 54, - "pc": [ - 102 - ] - }, - { - "teal": 70, - "source": 53, - "pc": [ - 103 - ] - }, - { - "teal": 71, - "source": 53, - "pc": [ - 104 - ] - }, - { - "teal": 74, - "source": 53, - "pc": [ - 105, - 106, - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 75, - "source": 53, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 76, - "source": 53, - "pc": [ - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 79, - "source": 53, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 118 - ] - }, - { - "teal": 82, - "source": 53, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 83, - "source": 53, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 84, - "source": 53, - "pc": [ - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 87, - "source": 53, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 132 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 53, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 53, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 53, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 53, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 53, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 53, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 53, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 53, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 53, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 54, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 54, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 54, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 54, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 54, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 54, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 54, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 54, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 54, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 44, + "source": 54, + "pc": [ + 59 + ] + }, + { + "teal": 48, + "source": 55, + "pc": [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 49, + "source": 55, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 53, + "source": 56, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 54, + "source": 56, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 58, + "source": 58, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 59, + "source": 58, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 60, + "source": 58, + "pc": [ + 97 + ] + }, + { + "teal": 63, + "source": 54, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 66, + "source": 54, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 67, + "source": 54, + "pc": [ + 102 + ] + }, + { + "teal": 70, + "source": 53, + "pc": [ + 103 + ] + }, + { + "teal": 71, + "source": 53, + "pc": [ + 104 + ] + }, + { + "teal": 74, + "source": 53, + "pc": [ + 105, + 106, + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 75, + "source": 53, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 76, + "source": 53, + "pc": [ + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 79, + "source": 53, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 118 + ] + }, + { + "teal": 82, + "source": 53, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 83, + "source": 53, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 84, + "source": 53, + "pc": [ + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 87, + "source": 53, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 132 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKTogdWludDY0Cm5vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2CgkvLyBuID0gYnRvaShpdG9iKDIpKQoJaW50IDIKCWZyYW1lX2J1cnkgMSAvLyBuOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTgKCS8vIHJldHVybiBhW25dOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCAxNiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5QWNjZXNzKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlBY2Nlc3MoKTogdWludDY0Cm5vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzczoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2CgkvLyBuID0gYnRvaShpdG9iKDIpKQoJaW50IDIKCWZyYW1lX2J1cnkgMSAvLyBuOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTgKCS8vIHJldHVybiBhW25dOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCAxNiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5QWNjZXNzKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX25vbkxpdGVyYWxTdGF0aWNBcnJheUFjY2VzcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.approval.teal b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.approval.teal index f9654e61a..031bd3b89 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.approval.teal +++ b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc32.json b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc32.json index 720248462..2a3a920d5 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc32.json +++ b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cygpdWludDY0CiphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5vbkxpdGVyYWxTdGF0aWNBcnJheUVsZW1lbnRzKCk6IHVpbnQ2NApub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzMKCS8vIG4xID0gYnRvaShpdG9iKDExKSkKCWludCAxMQoJZnJhbWVfYnVyeSAwIC8vIG4xOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzQKCS8vIG4yID0gYnRvaShpdG9iKDIyKSkKCWludCAyMgoJZnJhbWVfYnVyeSAxIC8vIG4yOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzUKCS8vIG4zID0gYnRvaShpdG9iKDMzKSkKCWludCAzMwoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbbjEsIG4yLCBuM10KCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDE2Cgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDIxCgljb25jYXQKCWZyYW1lX2J1cnkgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cygpdWludDY0CiphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5vbkxpdGVyYWxTdGF0aWNBcnJheUVsZW1lbnRzKCk6IHVpbnQ2NApub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzMKCS8vIG4xID0gYnRvaShpdG9iKDExKSkKCWludCAxMQoJZnJhbWVfYnVyeSAwIC8vIG4xOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzQKCS8vIG4yID0gYnRvaShpdG9iKDIyKSkKCWludCAyMgoJZnJhbWVfYnVyeSAxIC8vIG4yOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzUKCS8vIG4zID0gYnRvaShpdG9iKDMzKSkKCWludCAzMwoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbbjEsIG4yLCBuM10KCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDE2Cgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDIxCgljb25jYXQKCWZyYW1lX2J1cnkgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc56_draft.json b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc56_draft.json index 23fe6c4fe..499099990 100644 --- a/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestNonLiteralStaticArrayElements.arc56_draft.json @@ -60,442 +60,445 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 31, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 31, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 31, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 31, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 31, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 31, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 31, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 31, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 31, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 32, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 32, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 32, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 32, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 32, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 32, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 32, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 32, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 32, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 44, - "source": 32, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 48, - "source": 33, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 49, - "source": 33, - "pc": [ - 63, - 64 - ] - }, - { - "teal": 53, - "source": 34, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 54, - "source": 34, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 58, - "source": 35, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 59, - "source": 35, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 63, - "source": 36, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 64, - "source": 36, - "pc": [ - 75 - ] - }, - { - "teal": 65, - "source": 36, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 66, - "source": 36, - "pc": [ - 86 - ] - }, - { - "teal": 67, - "source": 36, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 68, - "source": 36, - "pc": [ - 97 - ] - }, - { - "teal": 69, - "source": 36, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 73, - "source": 38, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 74, - "source": 38, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 75, - "source": 38, - "pc": [ - 105 - ] - }, - { - "teal": 78, - "source": 32, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 81, - "source": 32, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 82, - "source": 32, - "pc": [ - 110 - ] - }, - { - "teal": 85, - "source": 31, - "pc": [ - 111 - ] - }, - { - "teal": 86, - "source": 31, - "pc": [ - 112 - ] - }, - { - "teal": 89, - "source": 31, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 90, - "source": 31, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 91, - "source": 31, - "pc": [ - 122, - 123, - 124, - 125 - ] - }, - { - "teal": 94, - "source": 31, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 126 - ] - }, - { - "teal": 97, - "source": 31, - "pc": [ - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 98, - "source": 31, - "pc": [ - 133, - 134, - 135 - ] - }, - { - "teal": 99, - "source": 31, - "pc": [ - 136, - 137, - 138, - 139 - ] - }, - { - "teal": 102, - "source": 31, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 140 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 31, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 31, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 31, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 31, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 31, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 31, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 31, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 31, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 31, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 32, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 32, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 32, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 32, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 32, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 32, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 32, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 32, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 32, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 44, + "source": 32, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 48, + "source": 33, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 49, + "source": 33, + "pc": [ + 63, + 64 + ] + }, + { + "teal": 53, + "source": 34, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 54, + "source": 34, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 58, + "source": 35, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 59, + "source": 35, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 63, + "source": 36, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 64, + "source": 36, + "pc": [ + 75 + ] + }, + { + "teal": 65, + "source": 36, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 66, + "source": 36, + "pc": [ + 86 + ] + }, + { + "teal": 67, + "source": 36, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 68, + "source": 36, + "pc": [ + 97 + ] + }, + { + "teal": 69, + "source": 36, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 73, + "source": 38, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 74, + "source": 38, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 75, + "source": 38, + "pc": [ + 105 + ] + }, + { + "teal": 78, + "source": 32, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 81, + "source": 32, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 82, + "source": 32, + "pc": [ + 110 + ] + }, + { + "teal": 85, + "source": 31, + "pc": [ + 111 + ] + }, + { + "teal": 86, + "source": 31, + "pc": [ + 112 + ] + }, + { + "teal": 89, + "source": 31, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 90, + "source": 31, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 91, + "source": 31, + "pc": [ + 122, + 123, + 124, + 125 + ] + }, + { + "teal": 94, + "source": 31, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 126 + ] + }, + { + "teal": 97, + "source": 31, + "pc": [ + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 98, + "source": 31, + "pc": [ + 133, + 134, + 135 + ] + }, + { + "teal": 99, + "source": 31, + "pc": [ + 136, + 137, + 138, + 139 + ] + }, + { + "teal": 102, + "source": 31, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 140 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cygpdWludDY0CiphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5vbkxpdGVyYWxTdGF0aWNBcnJheUVsZW1lbnRzKCk6IHVpbnQ2NApub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzMKCS8vIG4xID0gYnRvaShpdG9iKDExKSkKCWludCAxMQoJZnJhbWVfYnVyeSAwIC8vIG4xOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzQKCS8vIG4yID0gYnRvaShpdG9iKDIyKSkKCWludCAyMgoJZnJhbWVfYnVyeSAxIC8vIG4yOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzUKCS8vIG4zID0gYnRvaShpdG9iKDMzKSkKCWludCAzMwoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbbjEsIG4yLCBuM10KCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDE2Cgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDIxCgljb25jYXQKCWZyYW1lX2J1cnkgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cygpdWludDY0CiphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NAoJY2FsbHN1YiBub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG5vbkxpdGVyYWxTdGF0aWNBcnJheUVsZW1lbnRzKCk6IHVpbnQ2NApub25MaXRlcmFsU3RhdGljQXJyYXlFbGVtZW50czoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzMKCS8vIG4xID0gYnRvaShpdG9iKDExKSkKCWludCAxMQoJZnJhbWVfYnVyeSAwIC8vIG4xOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzQKCS8vIG4yID0gYnRvaShpdG9iKDIyKSkKCWludCAyMgoJZnJhbWVfYnVyeSAxIC8vIG4yOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzUKCS8vIG4zID0gYnRvaShpdG9iKDMzKSkKCWludCAzMwoJZnJhbWVfYnVyeSAyIC8vIG4zOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbbjEsIG4yLCBuM10KCWZyYW1lX2RpZyAwIC8vIG4xOiB1aW50NjQKCWl0b2IKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDE2Cgljb25jYXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDIxCgljb25jYXQKCWZyYW1lX2J1cnkgMyAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAzIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbm9uTGl0ZXJhbFN0YXRpY0FycmF5RWxlbWVudHMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestObjectArrayRef.approval.teal b/tests/contracts/artifacts/ABITestObjectArrayRef.approval.teal index 3ea0b991d..9d7c238ae 100644 --- a/tests/contracts/artifacts/ABITestObjectArrayRef.approval.teal +++ b/tests/contracts/artifacts/ABITestObjectArrayRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestObjectArrayRef.arc32.json b/tests/contracts/artifacts/ABITestObjectArrayRef.arc32.json index 1acf2fba3..9eb7977aa 100644 --- a/tests/contracts/artifacts/ABITestObjectArrayRef.arc32.json +++ b/tests/contracts/artifacts/ABITestObjectArrayRef.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKQoqYWJpX3JvdXRlX29iamVjdEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdEFycmF5UmVmKCkodWludDhbMl1bMl0pCgljYWxsc3ViIG9iamVjdEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0QXJyYXlSZWYoKTogT2JqZWN0UmVmVHlwZQpvYmplY3RBcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgxNwoJLy8gYTogT2JqZWN0UmVmVHlwZSA9IHsKCS8vICAgICAgIGZvbzogWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgfQoJYnl0ZSAweDAxMDIwMzA0CglmcmFtZV9idXJ5IDAgLy8gYTogT2JqZWN0UmVmVHlwZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MjQKCS8vIGMgPSBiWzFdCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODI2CgkvLyBjWzFdID0gNSBhcyB1aW50PDg+CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBjOiBPYmplY3RSZWZUeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgyOAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0QXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKQoqYWJpX3JvdXRlX29iamVjdEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdEFycmF5UmVmKCkodWludDhbMl1bMl0pCgljYWxsc3ViIG9iamVjdEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0QXJyYXlSZWYoKTogT2JqZWN0UmVmVHlwZQpvYmplY3RBcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgxNwoJLy8gYTogT2JqZWN0UmVmVHlwZSA9IHsKCS8vICAgICAgIGZvbzogWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgfQoJYnl0ZSAweDAxMDIwMzA0CglmcmFtZV9idXJ5IDAgLy8gYTogT2JqZWN0UmVmVHlwZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MjQKCS8vIGMgPSBiWzFdCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODI2CgkvLyBjWzFdID0gNSBhcyB1aW50PDg+CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBjOiBPYmplY3RSZWZUeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgyOAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0QXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestObjectArrayRef.arc56_draft.json b/tests/contracts/artifacts/ABITestObjectArrayRef.arc56_draft.json index 0679ed3ea..820dd6b3d 100644 --- a/tests/contracts/artifacts/ABITestObjectArrayRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestObjectArrayRef.arc56_draft.json @@ -35,9 +35,12 @@ 56 ], "structs": { - "ObjectRefType": { - "foo": "uint8[2][2]" - } + "ObjectRefType": [ + { + "name": "foo", + "type": "uint8[2][2]" + } + ] }, "state": { "schema": { @@ -65,339 +68,342 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 815, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 815, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 815, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 815, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 815, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 815, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 815, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 815, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 815, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 816, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 816, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 816, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 816, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 816, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 816, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 816, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 816, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 51, - "source": 818, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 52, - "source": 817, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 58, - "source": 826, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 59, - "source": 826, - "pc": [ - 68, - 69, - 70 - ] - }, - { - "teal": 60, - "source": 826, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 61, - "source": 826, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 65, - "source": 828, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 68, - "source": 816, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 69, - "source": 816, - "pc": [ - 79 - ] - }, - { - "teal": 72, - "source": 815, - "pc": [ - 80 - ] - }, - { - "teal": 73, - "source": 815, - "pc": [ - 81 - ] - }, - { - "teal": 76, - "source": 815, - "pc": [ - 82, - 83, - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 77, - "source": 815, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 78, - "source": 815, - "pc": [ - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 81, - "source": 815, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 95 - ] - }, - { - "teal": 84, - "source": 815, - "pc": [ - 96, - 97, - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 85, - "source": 815, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 86, - "source": 815, - "pc": [ - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 89, - "source": 815, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 109 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 815, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 815, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 815, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 815, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 815, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 815, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 815, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 815, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 815, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 816, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 816, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 816, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 816, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 816, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 816, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 816, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 816, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 51, + "source": 818, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 52, + "source": 817, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 58, + "source": 826, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 59, + "source": 826, + "pc": [ + 68, + 69, + 70 + ] + }, + { + "teal": 60, + "source": 826, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 61, + "source": 826, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 65, + "source": 828, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 68, + "source": 816, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 69, + "source": 816, + "pc": [ + 79 + ] + }, + { + "teal": 72, + "source": 815, + "pc": [ + 80 + ] + }, + { + "teal": 73, + "source": 815, + "pc": [ + 81 + ] + }, + { + "teal": 76, + "source": 815, + "pc": [ + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 77, + "source": 815, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 78, + "source": 815, + "pc": [ + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 81, + "source": 815, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 95 + ] + }, + { + "teal": 84, + "source": 815, + "pc": [ + 96, + 97, + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 85, + "source": 815, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 86, + "source": 815, + "pc": [ + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 89, + "source": 815, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 109 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKQoqYWJpX3JvdXRlX29iamVjdEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdEFycmF5UmVmKCkodWludDhbMl1bMl0pCgljYWxsc3ViIG9iamVjdEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0QXJyYXlSZWYoKTogT2JqZWN0UmVmVHlwZQpvYmplY3RBcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgxNwoJLy8gYTogT2JqZWN0UmVmVHlwZSA9IHsKCS8vICAgICAgIGZvbzogWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgfQoJYnl0ZSAweDAxMDIwMzA0CglmcmFtZV9idXJ5IDAgLy8gYTogT2JqZWN0UmVmVHlwZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MjQKCS8vIGMgPSBiWzFdCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODI2CgkvLyBjWzFdID0gNSBhcyB1aW50PDg+CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBjOiBPYmplY3RSZWZUeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgyOAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0QXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKQoqYWJpX3JvdXRlX29iamVjdEFycmF5UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdEFycmF5UmVmKCkodWludDhbMl1bMl0pCgljYWxsc3ViIG9iamVjdEFycmF5UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0QXJyYXlSZWYoKTogT2JqZWN0UmVmVHlwZQpvYmplY3RBcnJheVJlZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgxNwoJLy8gYTogT2JqZWN0UmVmVHlwZSA9IHsKCS8vICAgICAgIGZvbzogWwoJLy8gICAgICAgICBbMSwgMl0sCgkvLyAgICAgICAgIFszLCA0XSwKCS8vICAgICAgIF0sCgkvLyAgICAgfQoJYnl0ZSAweDAxMDIwMzA0CglmcmFtZV9idXJ5IDAgLy8gYTogT2JqZWN0UmVmVHlwZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MjQKCS8vIGMgPSBiWzFdCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODI2CgkvLyBjWzFdID0gNSBhcyB1aW50PDg+CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCglieXRlIDB4MDUKCXJlcGxhY2UyIDMKCWZyYW1lX2J1cnkgMCAvLyBjOiBPYmplY3RSZWZUeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjgyOAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBPYmplY3RSZWZUeXBlCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RBcnJheVJlZigpKHVpbnQ4WzJdWzJdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0QXJyYXlSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestObjectInArgs.approval.teal b/tests/contracts/artifacts/ABITestObjectInArgs.approval.teal index bc9772628..0b1b71a10 100644 --- a/tests/contracts/artifacts/ABITestObjectInArgs.approval.teal +++ b/tests/contracts/artifacts/ABITestObjectInArgs.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestObjectInArgs.arc32.json b/tests/contracts/artifacts/ABITestObjectInArgs.arc32.json index 62792ed1e..82d00352a 100644 --- a/tests/contracts/artifacts/ABITestObjectInArgs.arc32.json +++ b/tests/contracts/artifacts/ABITestObjectInArgs.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcml2YXRlTWV0aG9kKGE6IEFkZHJlc3MsIG9iajogT2JqZWN0SW5BcmdzVHlwZSk6IHVpbnQ2NApwcml2YXRlTWV0aG9kOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MDQKCS8vIHJldHVybiBvYmouYmFyICsgb2JqLmZvbzsKCWZyYW1lX2RpZyAtMiAvLyBvYmo6IE9iamVjdEluQXJnc1R5cGUKCWV4dHJhY3QgOCA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gb2JqOiBPYmplY3RJbkFyZ3NUeXBlCglleHRyYWN0IDAgOAoJYnRvaQoJKwoJcmV0c3ViCgovLyBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoqYWJpX3JvdXRlX29iamVjdEluQXJnczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoJY2FsbHN1YiBvYmplY3RJbkFyZ3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBvYmplY3RJbkFyZ3MoKTogdWludDY0Cm9iamVjdEluQXJnczoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDA4CgkvLyByZXR1cm4gdGhpcy5wcml2YXRlTWV0aG9kKHRoaXMudHhuLnNlbmRlciwgeyBmb286IDEsIGJhcjogMiB9KTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMgoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwcml2YXRlTWV0aG9kCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RJbkFyZ3MoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0SW5BcmdzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcml2YXRlTWV0aG9kKGE6IEFkZHJlc3MsIG9iajogT2JqZWN0SW5BcmdzVHlwZSk6IHVpbnQ2NApwcml2YXRlTWV0aG9kOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MDQKCS8vIHJldHVybiBvYmouYmFyICsgb2JqLmZvbzsKCWZyYW1lX2RpZyAtMiAvLyBvYmo6IE9iamVjdEluQXJnc1R5cGUKCWV4dHJhY3QgOCA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gb2JqOiBPYmplY3RJbkFyZ3NUeXBlCglleHRyYWN0IDAgOAoJYnRvaQoJKwoJcmV0c3ViCgovLyBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoqYWJpX3JvdXRlX29iamVjdEluQXJnczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoJY2FsbHN1YiBvYmplY3RJbkFyZ3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBvYmplY3RJbkFyZ3MoKTogdWludDY0Cm9iamVjdEluQXJnczoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDA4CgkvLyByZXR1cm4gdGhpcy5wcml2YXRlTWV0aG9kKHRoaXMudHhuLnNlbmRlciwgeyBmb286IDEsIGJhcjogMiB9KTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMgoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwcml2YXRlTWV0aG9kCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RJbkFyZ3MoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0SW5BcmdzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestObjectInArgs.arc56_draft.json b/tests/contracts/artifacts/ABITestObjectInArgs.arc56_draft.json index c7190cb32..23214b859 100644 --- a/tests/contracts/artifacts/ABITestObjectInArgs.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestObjectInArgs.arc56_draft.json @@ -60,381 +60,384 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1402, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1402, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1402, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1402, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1402, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1402, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1402, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1402, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1402, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 27, - "source": 1403, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 31, - "source": 1404, - "pc": [ - 43, - 44 - ] - }, - { - "teal": 32, - "source": 1404, - "pc": [ - 45, - 46, - 47 - ] - }, - { - "teal": 33, - "source": 1404, - "pc": [ - 48 - ] - }, - { - "teal": 34, - "source": 1404, - "pc": [ - 49, - 50 - ] - }, - { - "teal": 35, - "source": 1404, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 36, - "source": 1404, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 1404, - "pc": [ - 55 - ] - }, - { - "teal": 38, - "source": 1403, - "pc": [ - 56 - ] - }, - { - "teal": 43, - "source": 1407, - "pc": [ - 57, - 58, - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 46, - "source": 1407, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 47, - "source": 1407, - "pc": [ - 66 - ] - }, - { - "teal": 48, - "source": 1407, - "pc": [ - 67 - ] - }, - { - "teal": 49, - "source": 1407, - "pc": [ - 68 - ] - }, - { - "teal": 50, - "source": 1407, - "pc": [ - 69 - ] - }, - { - "teal": 51, - "source": 1407, - "pc": [ - 70 - ] - }, - { - "teal": 55, - "source": 1407, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 59, - "source": 1408, - "pc": [ - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 60, - "source": 1408, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 61, - "source": 1408, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 62, - "source": 1407, - "pc": [ - 97 - ] - }, - { - "teal": 65, - "source": 1402, - "pc": [ - 98 - ] - }, - { - "teal": 66, - "source": 1402, - "pc": [ - 99 - ] - }, - { - "teal": 69, - "source": 1402, - "pc": [ - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 70, - "source": 1402, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 71, - "source": 1402, - "pc": [ - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 74, - "source": 1402, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 113 - ] - }, - { - "teal": 77, - "source": 1402, - "pc": [ - 114, - 115, - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 78, - "source": 1402, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 79, - "source": 1402, - "pc": [ - 123, - 124, - 125, - 126 - ] - }, - { - "teal": 82, - "source": 1402, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 127 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1402, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1402, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1402, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1402, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1402, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1402, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1402, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1402, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1402, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 27, + "source": 1403, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 31, + "source": 1404, + "pc": [ + 43, + 44 + ] + }, + { + "teal": 32, + "source": 1404, + "pc": [ + 45, + 46, + 47 + ] + }, + { + "teal": 33, + "source": 1404, + "pc": [ + 48 + ] + }, + { + "teal": 34, + "source": 1404, + "pc": [ + 49, + 50 + ] + }, + { + "teal": 35, + "source": 1404, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 36, + "source": 1404, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 1404, + "pc": [ + 55 + ] + }, + { + "teal": 38, + "source": 1403, + "pc": [ + 56 + ] + }, + { + "teal": 43, + "source": 1407, + "pc": [ + 57, + 58, + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 46, + "source": 1407, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 47, + "source": 1407, + "pc": [ + 66 + ] + }, + { + "teal": 48, + "source": 1407, + "pc": [ + 67 + ] + }, + { + "teal": 49, + "source": 1407, + "pc": [ + 68 + ] + }, + { + "teal": 50, + "source": 1407, + "pc": [ + 69 + ] + }, + { + "teal": 51, + "source": 1407, + "pc": [ + 70 + ] + }, + { + "teal": 55, + "source": 1407, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 59, + "source": 1408, + "pc": [ + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 60, + "source": 1408, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 61, + "source": 1408, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 62, + "source": 1407, + "pc": [ + 97 + ] + }, + { + "teal": 65, + "source": 1402, + "pc": [ + 98 + ] + }, + { + "teal": 66, + "source": 1402, + "pc": [ + 99 + ] + }, + { + "teal": 69, + "source": 1402, + "pc": [ + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 70, + "source": 1402, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 71, + "source": 1402, + "pc": [ + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 74, + "source": 1402, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 113 + ] + }, + { + "teal": 77, + "source": 1402, + "pc": [ + 114, + 115, + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 78, + "source": 1402, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 79, + "source": 1402, + "pc": [ + 123, + 124, + 125, + 126 + ] + }, + { + "teal": 82, + "source": 1402, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 127 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcml2YXRlTWV0aG9kKGE6IEFkZHJlc3MsIG9iajogT2JqZWN0SW5BcmdzVHlwZSk6IHVpbnQ2NApwcml2YXRlTWV0aG9kOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MDQKCS8vIHJldHVybiBvYmouYmFyICsgb2JqLmZvbzsKCWZyYW1lX2RpZyAtMiAvLyBvYmo6IE9iamVjdEluQXJnc1R5cGUKCWV4dHJhY3QgOCA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gb2JqOiBPYmplY3RJbkFyZ3NUeXBlCglleHRyYWN0IDAgOAoJYnRvaQoJKwoJcmV0c3ViCgovLyBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoqYWJpX3JvdXRlX29iamVjdEluQXJnczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoJY2FsbHN1YiBvYmplY3RJbkFyZ3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBvYmplY3RJbkFyZ3MoKTogdWludDY0Cm9iamVjdEluQXJnczoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDA4CgkvLyByZXR1cm4gdGhpcy5wcml2YXRlTWV0aG9kKHRoaXMudHhuLnNlbmRlciwgeyBmb286IDEsIGJhcjogMiB9KTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMgoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwcml2YXRlTWV0aG9kCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RJbkFyZ3MoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0SW5BcmdzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcml2YXRlTWV0aG9kKGE6IEFkZHJlc3MsIG9iajogT2JqZWN0SW5BcmdzVHlwZSk6IHVpbnQ2NApwcml2YXRlTWV0aG9kOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0MDQKCS8vIHJldHVybiBvYmouYmFyICsgb2JqLmZvbzsKCWZyYW1lX2RpZyAtMiAvLyBvYmo6IE9iamVjdEluQXJnc1R5cGUKCWV4dHJhY3QgOCA4CglidG9pCglmcmFtZV9kaWcgLTIgLy8gb2JqOiBPYmplY3RJbkFyZ3NUeXBlCglleHRyYWN0IDAgOAoJYnRvaQoJKwoJcmV0c3ViCgovLyBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoqYWJpX3JvdXRlX29iamVjdEluQXJnczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBvYmplY3RJbkFyZ3MoKXVpbnQ2NAoJY2FsbHN1YiBvYmplY3RJbkFyZ3MKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBvYmplY3RJbkFyZ3MoKTogdWludDY0Cm9iamVjdEluQXJnczoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDA4CgkvLyByZXR1cm4gdGhpcy5wcml2YXRlTWV0aG9kKHRoaXMudHhuLnNlbmRlciwgeyBmb286IDEsIGJhcjogMiB9KTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMgoJdHhuIFNlbmRlcgoJY2FsbHN1YiBwcml2YXRlTWV0aG9kCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvYmplY3RJbkFyZ3MoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb2JqZWN0SW5BcmdzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestObjectRef.approval.teal b/tests/contracts/artifacts/ABITestObjectRef.approval.teal index 5a92e3db1..34a8f1149 100644 --- a/tests/contracts/artifacts/ABITestObjectRef.approval.teal +++ b/tests/contracts/artifacts/ABITestObjectRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestObjectRef.arc32.json b/tests/contracts/artifacts/ABITestObjectRef.arc32.json index e0aebc22e..b7aa27050 100644 --- a/tests/contracts/artifacts/ABITestObjectRef.arc32.json +++ b/tests/contracts/artifacts/ABITestObjectRef.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RSZWYoKSh1aW50NjQpCiphYmlfcm91dGVfb2JqZWN0UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdFJlZigpKHVpbnQ2NCkKCWNhbGxzdWIgb2JqZWN0UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0UmVmKCk6IHsgZm9vOiB1aW50NjQgfQpvYmplY3RSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODYKCS8vIG86IHsgZm9vOiB1aW50NjQgfSA9IHsgZm9vOiAxIH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gbzogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MAoJLy8gci5mb28gPSAyCglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gcjogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MgoJLy8gcmV0dXJuIG87CglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm9iamVjdFJlZigpKHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29iamVjdFJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RSZWYoKSh1aW50NjQpCiphYmlfcm91dGVfb2JqZWN0UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdFJlZigpKHVpbnQ2NCkKCWNhbGxzdWIgb2JqZWN0UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0UmVmKCk6IHsgZm9vOiB1aW50NjQgfQpvYmplY3RSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODYKCS8vIG86IHsgZm9vOiB1aW50NjQgfSA9IHsgZm9vOiAxIH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gbzogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MAoJLy8gci5mb28gPSAyCglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gcjogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MgoJLy8gcmV0dXJuIG87CglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm9iamVjdFJlZigpKHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29iamVjdFJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestObjectRef.arc56_draft.json b/tests/contracts/artifacts/ABITestObjectRef.arc56_draft.json index 6210bf87d..af85379ed 100644 --- a/tests/contracts/artifacts/ABITestObjectRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestObjectRef.arc56_draft.json @@ -35,9 +35,12 @@ 56 ], "structs": { - "{ foo: uint64; }": { - "foo": "uint64" - } + "{ foo: uint64; }": [ + { + "name": "foo", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -65,350 +68,353 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 984, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 984, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 984, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 984, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 984, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 984, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 984, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 984, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 984, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 985, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 985, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 985, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 985, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 985, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 985, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 985, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 985, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 986, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 47, - "source": 986, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 51, - "source": 990, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 52, - "source": 990, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 53, - "source": 990, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 54, - "source": 990, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 58, - "source": 992, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 61, - "source": 985, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 62, - "source": 985, - "pc": [ - 90 - ] - }, - { - "teal": 65, - "source": 984, - "pc": [ - 91 - ] - }, - { - "teal": 66, - "source": 984, - "pc": [ - 92 - ] - }, - { - "teal": 69, - "source": 984, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 70, - "source": 984, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 71, - "source": 984, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 74, - "source": 984, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 106 - ] - }, - { - "teal": 77, - "source": 984, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 78, - "source": 984, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 79, - "source": 984, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 82, - "source": 984, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 120 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 984, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 984, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 984, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 984, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 984, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 984, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 984, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 984, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 984, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 985, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 985, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 985, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 985, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 985, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 985, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 985, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 985, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 986, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 47, + "source": 986, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 51, + "source": 990, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 52, + "source": 990, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 53, + "source": 990, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 54, + "source": 990, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 58, + "source": 992, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 61, + "source": 985, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 62, + "source": 985, + "pc": [ + 90 + ] + }, + { + "teal": 65, + "source": 984, + "pc": [ + 91 + ] + }, + { + "teal": 66, + "source": 984, + "pc": [ + 92 + ] + }, + { + "teal": 69, + "source": 984, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 70, + "source": 984, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 71, + "source": 984, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 74, + "source": 984, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 106 + ] + }, + { + "teal": 77, + "source": 984, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 78, + "source": 984, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 79, + "source": 984, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 82, + "source": 984, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 120 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RSZWYoKSh1aW50NjQpCiphYmlfcm91dGVfb2JqZWN0UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdFJlZigpKHVpbnQ2NCkKCWNhbGxzdWIgb2JqZWN0UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0UmVmKCk6IHsgZm9vOiB1aW50NjQgfQpvYmplY3RSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODYKCS8vIG86IHsgZm9vOiB1aW50NjQgfSA9IHsgZm9vOiAxIH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gbzogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MAoJLy8gci5mb28gPSAyCglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gcjogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MgoJLy8gcmV0dXJuIG87CglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm9iamVjdFJlZigpKHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29iamVjdFJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvYmplY3RSZWYoKSh1aW50NjQpCiphYmlfcm91dGVfb2JqZWN0UmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG9iamVjdFJlZigpKHVpbnQ2NCkKCWNhbGxzdWIgb2JqZWN0UmVmCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gb2JqZWN0UmVmKCk6IHsgZm9vOiB1aW50NjQgfQpvYmplY3RSZWY6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5ODYKCS8vIG86IHsgZm9vOiB1aW50NjQgfSA9IHsgZm9vOiAxIH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglmcmFtZV9idXJ5IDAgLy8gbzogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MAoJLy8gci5mb28gPSAyCglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gcjogeyBmb286IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk5MgoJLy8gcmV0dXJuIG87CglmcmFtZV9kaWcgMCAvLyBvOiB7IGZvbzogdWludDY0IH0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgIm9iamVjdFJlZigpKHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29iamVjdFJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestOpcodeParamFromObject.approval.teal b/tests/contracts/artifacts/ABITestOpcodeParamFromObject.approval.teal index 97f9b4e03..857627ecd 100644 --- a/tests/contracts/artifacts/ABITestOpcodeParamFromObject.approval.teal +++ b/tests/contracts/artifacts/ABITestOpcodeParamFromObject.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc32.json b/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc32.json index 662f5ae86..5042376e0 100644 --- a/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc32.json +++ b/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MKKmFiaV9yb3V0ZV9vcGNvZGVQYXJhbUZyb21PYmplY3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgb3Bjb2RlUGFyYW1Gcm9tT2JqZWN0KClhZGRyZXNzCgljYWxsc3ViIG9wY29kZVBhcmFtRnJvbU9iamVjdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG9wY29kZVBhcmFtRnJvbU9iamVjdCgpOiBBZGRyZXNzCm9wY29kZVBhcmFtRnJvbU9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNjcKCS8vIGE6IHsgbXlBcHA6IEFwcElEIH0gPSB7IG15QXBwOiB0aGlzLmFwcCB9Cgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglmcmFtZV9idXJ5IDAgLy8gYTogeyBteUFwcDogQXBwSUQgfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDY5CgkvLyByZXR1cm4gdGhpcy5hcHAuYWRkcmVzczsKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wY29kZVBhcmFtRnJvbU9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MKKmFiaV9yb3V0ZV9vcGNvZGVQYXJhbUZyb21PYmplY3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgb3Bjb2RlUGFyYW1Gcm9tT2JqZWN0KClhZGRyZXNzCgljYWxsc3ViIG9wY29kZVBhcmFtRnJvbU9iamVjdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG9wY29kZVBhcmFtRnJvbU9iamVjdCgpOiBBZGRyZXNzCm9wY29kZVBhcmFtRnJvbU9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNjcKCS8vIGE6IHsgbXlBcHA6IEFwcElEIH0gPSB7IG15QXBwOiB0aGlzLmFwcCB9Cgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglmcmFtZV9idXJ5IDAgLy8gYTogeyBteUFwcDogQXBwSUQgfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDY5CgkvLyByZXR1cm4gdGhpcy5hcHAuYWRkcmVzczsKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wY29kZVBhcmFtRnJvbU9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc56_draft.json b/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc56_draft.json index ecf806f53..e54413fa8 100644 --- a/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestOpcodeParamFromObject.arc56_draft.json @@ -60,310 +60,313 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1065, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1065, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1065, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1065, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1065, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1065, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1065, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1065, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1065, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1066, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1066, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1066, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1066, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1066, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1066, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1066, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 1066, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 1067, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 47, - "source": 1067, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 1067, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 52, - "source": 1069, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 55, - "source": 1066, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 56, - "source": 1066, - "pc": [ - 68 - ] - }, - { - "teal": 59, - "source": 1065, - "pc": [ - 69 - ] - }, - { - "teal": 60, - "source": 1065, - "pc": [ - 70 - ] - }, - { - "teal": 63, - "source": 1065, - "pc": [ - 71, - 72, - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 64, - "source": 1065, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 65, - "source": 1065, - "pc": [ - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 68, - "source": 1065, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 84 - ] - }, - { - "teal": 71, - "source": 1065, - "pc": [ - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 72, - "source": 1065, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 73, - "source": 1065, - "pc": [ - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 76, - "source": 1065, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 98 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1065, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1065, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1065, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1065, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1065, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1065, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1065, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1065, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1065, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1066, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1066, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1066, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1066, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1066, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1066, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1066, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 1066, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 1067, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 47, + "source": 1067, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 1067, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 52, + "source": 1069, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 55, + "source": 1066, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 56, + "source": 1066, + "pc": [ + 68 + ] + }, + { + "teal": 59, + "source": 1065, + "pc": [ + 69 + ] + }, + { + "teal": 60, + "source": 1065, + "pc": [ + 70 + ] + }, + { + "teal": 63, + "source": 1065, + "pc": [ + 71, + 72, + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 64, + "source": 1065, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 65, + "source": 1065, + "pc": [ + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 68, + "source": 1065, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 84 + ] + }, + { + "teal": 71, + "source": 1065, + "pc": [ + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 72, + "source": 1065, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 73, + "source": 1065, + "pc": [ + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 76, + "source": 1065, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 98 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MKKmFiaV9yb3V0ZV9vcGNvZGVQYXJhbUZyb21PYmplY3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgb3Bjb2RlUGFyYW1Gcm9tT2JqZWN0KClhZGRyZXNzCgljYWxsc3ViIG9wY29kZVBhcmFtRnJvbU9iamVjdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG9wY29kZVBhcmFtRnJvbU9iamVjdCgpOiBBZGRyZXNzCm9wY29kZVBhcmFtRnJvbU9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNjcKCS8vIGE6IHsgbXlBcHA6IEFwcElEIH0gPSB7IG15QXBwOiB0aGlzLmFwcCB9Cgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglmcmFtZV9idXJ5IDAgLy8gYTogeyBteUFwcDogQXBwSUQgfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDY5CgkvLyByZXR1cm4gdGhpcy5hcHAuYWRkcmVzczsKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wY29kZVBhcmFtRnJvbU9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MKKmFiaV9yb3V0ZV9vcGNvZGVQYXJhbUZyb21PYmplY3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgb3Bjb2RlUGFyYW1Gcm9tT2JqZWN0KClhZGRyZXNzCgljYWxsc3ViIG9wY29kZVBhcmFtRnJvbU9iamVjdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG9wY29kZVBhcmFtRnJvbU9iamVjdCgpOiBBZGRyZXNzCm9wY29kZVBhcmFtRnJvbU9iamVjdDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNjcKCS8vIGE6IHsgbXlBcHA6IEFwcElEIH0gPSB7IG15QXBwOiB0aGlzLmFwcCB9Cgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglmcmFtZV9idXJ5IDAgLy8gYTogeyBteUFwcDogQXBwSUQgfQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDY5CgkvLyByZXR1cm4gdGhpcy5hcHAuYWRkcmVzczsKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJvcGNvZGVQYXJhbUZyb21PYmplY3QoKWFkZHJlc3MiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX29wY29kZVBhcmFtRnJvbU9iamVjdAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestPartialStaticArray.approval.teal b/tests/contracts/artifacts/ABITestPartialStaticArray.approval.teal index 1c2f0f410..ff2fa8e5f 100644 --- a/tests/contracts/artifacts/ABITestPartialStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestPartialStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestPartialStaticArray.arc32.json b/tests/contracts/artifacts/ABITestPartialStaticArray.arc32.json index 38550497a..af1b2c9b7 100644 --- a/tests/contracts/artifacts/ABITestPartialStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestPartialStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NTAKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbMV0KCWJ5dGUgMHgwMDAxMDAwMDAwMDAKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg1MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NTAKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbMV0KCWJ5dGUgMHgwMDAxMDAwMDAwMDAKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg1MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestPartialStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestPartialStaticArray.arc56_draft.json index 579b14b6a..072e5b2ad 100644 --- a/tests/contracts/artifacts/ABITestPartialStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestPartialStaticArray.arc56_draft.json @@ -60,308 +60,311 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 848, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 848, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 848, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 848, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 848, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 848, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 848, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 848, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 848, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 849, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 849, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 849, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 849, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 849, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 849, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 849, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 849, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 850, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 47, - "source": 850, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 51, - "source": 852, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 54, - "source": 849, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 55, - "source": 849, - "pc": [ - 72 - ] - }, - { - "teal": 58, - "source": 848, - "pc": [ - 73 - ] - }, - { - "teal": 59, - "source": 848, - "pc": [ - 74 - ] - }, - { - "teal": 62, - "source": 848, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 63, - "source": 848, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 64, - "source": 848, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 67, - "source": 848, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 70, - "source": 848, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 71, - "source": 848, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 72, - "source": 848, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 75, - "source": 848, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 848, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 848, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 848, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 848, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 848, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 848, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 848, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 848, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 848, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 849, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 849, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 849, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 849, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 849, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 849, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 849, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 849, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 850, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 47, + "source": 850, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 51, + "source": 852, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 54, + "source": 849, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 55, + "source": 849, + "pc": [ + 72 + ] + }, + { + "teal": 58, + "source": 848, + "pc": [ + 73 + ] + }, + { + "teal": 59, + "source": 848, + "pc": [ + 74 + ] + }, + { + "teal": 62, + "source": 848, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 63, + "source": 848, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 64, + "source": 848, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 67, + "source": 848, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 70, + "source": 848, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 71, + "source": 848, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 72, + "source": 848, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 75, + "source": 848, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NTAKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbMV0KCWJ5dGUgMHgwMDAxMDAwMDAwMDAKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg1MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NTAKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQxNiwgMz4gPSBbMV0KCWJ5dGUgMHgwMDAxMDAwMDAwMDAKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg1MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50MTYsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.approval.teal b/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.approval.teal index b89d0894d..65aa99b6b 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.approval.teal +++ b/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc32.json b/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc32.json index cf4e1485f..702613fc9 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc32.json +++ b/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzQXJyYXlWYWx1ZSgpdWludDY0WzJdCiphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXQoJY2FsbHN1YiBwbHVzRXF1YWxzQXJyYXlWYWx1ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNBcnJheVZhbHVlKCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KcGx1c0VxdWFsc0FycmF5VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjMzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+ID0gWzEsIDJdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzQKCS8vIGFbMV0gKz0gMQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoJaW50IDgKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzUKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzQXJyYXlWYWx1ZSgpdWludDY0WzJdCiphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXQoJY2FsbHN1YiBwbHVzRXF1YWxzQXJyYXlWYWx1ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNBcnJheVZhbHVlKCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KcGx1c0VxdWFsc0FycmF5VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjMzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+ID0gWzEsIDJdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzQKCS8vIGFbMV0gKz0gMQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoJaW50IDgKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzUKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc56_draft.json b/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc56_draft.json index e89338f5c..3b8367dfc 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestPlusEqualsArrayValue.arc56_draft.json @@ -60,394 +60,397 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1231, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1231, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1231, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1231, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1231, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1231, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1231, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1231, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1231, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1232, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1232, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1232, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1232, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1232, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1232, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1232, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 1232, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 1233, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 47, - "source": 1233, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 51, - "source": 1234, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 52, - "source": 1234, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 53, - "source": 1234, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 54, - "source": 1234, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 55, - "source": 1234, - "pc": [ - 87 - ] - }, - { - "teal": 56, - "source": 1234, - "pc": [ - 88 - ] - }, - { - "teal": 57, - "source": 1234, - "pc": [ - 89 - ] - }, - { - "teal": 58, - "source": 1234, - "pc": [ - 90 - ] - }, - { - "teal": 59, - "source": 1234, - "pc": [ - 91 - ] - }, - { - "teal": 60, - "source": 1234, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 64, - "source": 1235, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 67, - "source": 1232, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 68, - "source": 1232, - "pc": [ - 98 - ] - }, - { - "teal": 71, - "source": 1231, - "pc": [ - 99 - ] - }, - { - "teal": 72, - "source": 1231, - "pc": [ - 100 - ] - }, - { - "teal": 75, - "source": 1231, - "pc": [ - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 76, - "source": 1231, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 77, - "source": 1231, - "pc": [ - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 80, - "source": 1231, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 114 - ] - }, - { - "teal": 83, - "source": 1231, - "pc": [ - 115, - 116, - 117, - 118, - 119, - 120 - ] - }, - { - "teal": 84, - "source": 1231, - "pc": [ - 121, - 122, - 123 - ] - }, - { - "teal": 85, - "source": 1231, - "pc": [ - 124, - 125, - 126, - 127 - ] - }, - { - "teal": 88, - "source": 1231, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 128 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1231, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1231, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1231, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1231, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1231, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1231, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1231, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1231, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1231, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1232, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1232, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1232, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1232, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1232, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1232, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1232, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 1232, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 1233, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 47, + "source": 1233, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 51, + "source": 1234, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 52, + "source": 1234, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 53, + "source": 1234, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 54, + "source": 1234, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 55, + "source": 1234, + "pc": [ + 87 + ] + }, + { + "teal": 56, + "source": 1234, + "pc": [ + 88 + ] + }, + { + "teal": 57, + "source": 1234, + "pc": [ + 89 + ] + }, + { + "teal": 58, + "source": 1234, + "pc": [ + 90 + ] + }, + { + "teal": 59, + "source": 1234, + "pc": [ + 91 + ] + }, + { + "teal": 60, + "source": 1234, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 64, + "source": 1235, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 67, + "source": 1232, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 68, + "source": 1232, + "pc": [ + 98 + ] + }, + { + "teal": 71, + "source": 1231, + "pc": [ + 99 + ] + }, + { + "teal": 72, + "source": 1231, + "pc": [ + 100 + ] + }, + { + "teal": 75, + "source": 1231, + "pc": [ + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 76, + "source": 1231, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 77, + "source": 1231, + "pc": [ + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 80, + "source": 1231, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 114 + ] + }, + { + "teal": 83, + "source": 1231, + "pc": [ + 115, + 116, + 117, + 118, + 119, + 120 + ] + }, + { + "teal": 84, + "source": 1231, + "pc": [ + 121, + 122, + 123 + ] + }, + { + "teal": 85, + "source": 1231, + "pc": [ + 124, + 125, + 126, + 127 + ] + }, + { + "teal": 88, + "source": 1231, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 128 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzQXJyYXlWYWx1ZSgpdWludDY0WzJdCiphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXQoJY2FsbHN1YiBwbHVzRXF1YWxzQXJyYXlWYWx1ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNBcnJheVZhbHVlKCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KcGx1c0VxdWFsc0FycmF5VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjMzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+ID0gWzEsIDJdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzQKCS8vIGFbMV0gKz0gMQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoJaW50IDgKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzUKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzQXJyYXlWYWx1ZSgpdWludDY0WzJdCiphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXQoJY2FsbHN1YiBwbHVzRXF1YWxzQXJyYXlWYWx1ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNBcnJheVZhbHVlKCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KcGx1c0VxdWFsc0FycmF5VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjMzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+ID0gWzEsIDJdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzQKCS8vIGFbMV0gKz0gMQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoJaW50IDgKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDI+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMzUKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAyPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc0FycmF5VmFsdWUoKXVpbnQ2NFsyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc0FycmF5VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestPlusEqualsObjValue.approval.teal b/tests/contracts/artifacts/ABITestPlusEqualsObjValue.approval.teal index 095663880..5f29d3a69 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsObjValue.approval.teal +++ b/tests/contracts/artifacts/ABITestPlusEqualsObjValue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc32.json b/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc32.json index 5264de7df..cf67c2146 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc32.json +++ b/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQpwbHVzRXF1YWxzT2JqVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjQxCgkvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9ID0geyBmb286IDMsIGJhcjogNCB9CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDIKCS8vIGEuYmFyICs9IDEKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWludCA4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlKCkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQpwbHVzRXF1YWxzT2JqVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjQxCgkvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9ID0geyBmb286IDMsIGJhcjogNCB9CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDIKCS8vIGEuYmFyICs9IDEKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWludCA4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlKCkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc56_draft.json b/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc56_draft.json index f994b02ce..cbaa991b3 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestPlusEqualsObjValue.arc56_draft.json @@ -35,10 +35,16 @@ 56 ], "structs": { - "{ foo: uint64; bar: uint64; }": { - "foo": "uint64", - "bar": "uint64" - } + "{ foo: uint64; bar: uint64; }": [ + { + "name": "foo", + "type": "uint64" + }, + { + "name": "bar", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -66,394 +72,397 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1239, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1239, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1239, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1239, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1239, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1239, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1239, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1239, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1239, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1240, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1240, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1240, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1240, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1240, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1240, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1240, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 1240, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 1241, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 47, - "source": 1241, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 51, - "source": 1242, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 52, - "source": 1242, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 53, - "source": 1242, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 54, - "source": 1242, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 55, - "source": 1242, - "pc": [ - 87 - ] - }, - { - "teal": 56, - "source": 1242, - "pc": [ - 88 - ] - }, - { - "teal": 57, - "source": 1242, - "pc": [ - 89 - ] - }, - { - "teal": 58, - "source": 1242, - "pc": [ - 90 - ] - }, - { - "teal": 59, - "source": 1242, - "pc": [ - 91 - ] - }, - { - "teal": 60, - "source": 1242, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 64, - "source": 1243, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 67, - "source": 1240, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 68, - "source": 1240, - "pc": [ - 98 - ] - }, - { - "teal": 71, - "source": 1239, - "pc": [ - 99 - ] - }, - { - "teal": 72, - "source": 1239, - "pc": [ - 100 - ] - }, - { - "teal": 75, - "source": 1239, - "pc": [ - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 76, - "source": 1239, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 77, - "source": 1239, - "pc": [ - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 80, - "source": 1239, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 114 - ] - }, - { - "teal": 83, - "source": 1239, - "pc": [ - 115, - 116, - 117, - 118, - 119, - 120 - ] - }, - { - "teal": 84, - "source": 1239, - "pc": [ - 121, - 122, - 123 - ] - }, - { - "teal": 85, - "source": 1239, - "pc": [ - 124, - 125, - 126, - 127 - ] - }, - { - "teal": 88, - "source": 1239, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 128 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1239, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1239, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1239, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1239, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1239, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1239, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1239, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1239, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1239, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1240, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1240, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1240, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1240, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1240, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1240, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1240, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 1240, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 1241, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 47, + "source": 1241, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 51, + "source": 1242, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 52, + "source": 1242, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 53, + "source": 1242, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 54, + "source": 1242, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 55, + "source": 1242, + "pc": [ + 87 + ] + }, + { + "teal": 56, + "source": 1242, + "pc": [ + 88 + ] + }, + { + "teal": 57, + "source": 1242, + "pc": [ + 89 + ] + }, + { + "teal": 58, + "source": 1242, + "pc": [ + 90 + ] + }, + { + "teal": 59, + "source": 1242, + "pc": [ + 91 + ] + }, + { + "teal": 60, + "source": 1242, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 64, + "source": 1243, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 67, + "source": 1240, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 68, + "source": 1240, + "pc": [ + 98 + ] + }, + { + "teal": 71, + "source": 1239, + "pc": [ + 99 + ] + }, + { + "teal": 72, + "source": 1239, + "pc": [ + 100 + ] + }, + { + "teal": 75, + "source": 1239, + "pc": [ + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 76, + "source": 1239, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 77, + "source": 1239, + "pc": [ + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 80, + "source": 1239, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 114 + ] + }, + { + "teal": 83, + "source": 1239, + "pc": [ + 115, + 116, + 117, + 118, + 119, + 120 + ] + }, + { + "teal": 84, + "source": 1239, + "pc": [ + 121, + 122, + 123 + ] + }, + { + "teal": 85, + "source": 1239, + "pc": [ + 124, + 125, + 126, + 127 + ] + }, + { + "teal": 88, + "source": 1239, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 128 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQpwbHVzRXF1YWxzT2JqVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjQxCgkvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9ID0geyBmb286IDMsIGJhcjogNCB9CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDIKCS8vIGEuYmFyICs9IDEKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWludCA4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlKCkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzT2JqVmFsdWUoKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwbHVzRXF1YWxzT2JqVmFsdWUoKTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQpwbHVzRXF1YWxzT2JqVmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjQxCgkvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9ID0geyBmb286IDMsIGJhcjogNCB9CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDIKCS8vIGEuYmFyICs9IDEKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWludCA4IC8vIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAwIC8vIGE6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KCWV4dHJhY3QgOCA4CglidG9pCglpbnQgMQoJKwoJaXRvYgoJcmVwbGFjZTMKCWZyYW1lX2J1cnkgMCAvLyBhOiB7IGZvbzogdWludDY0OyBiYXI6IHVpbnQ2NCB9CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNDMKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogeyBmb286IHVpbnQ2NDsgYmFyOiB1aW50NjQgfQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlKCkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3BsdXNFcXVhbHNPYmpWYWx1ZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.approval.teal b/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.approval.teal index cc13bc177..32798524e 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc32.json b/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc32.json index c4600cec1..2830fd41b 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveCgpKHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNPYmpWYWx1ZUluQm94KCk6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGZvbzogMywgYmFyOiA0IH0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjUyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5iYXIgKz0gMQoJaW50IDggLy8gaGVhZE9mZnNldAoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJaW50IDggLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJKwoJaXRvYgoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MwoJLy8gcmV0dXJuIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlOwoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveCgpKHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNPYmpWYWx1ZUluQm94KCk6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGZvbzogMywgYmFyOiA0IH0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjUyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5iYXIgKz0gMQoJaW50IDggLy8gaGVhZE9mZnNldAoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJaW50IDggLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJKwoJaXRvYgoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MwoJLy8gcmV0dXJuIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlOwoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc56_draft.json index a749a06fe..da5cd3f09 100644 --- a/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestPlusEqualsObjValueInBox.arc56_draft.json @@ -35,14 +35,26 @@ 56 ], "structs": { - "{ foo: uint64; bar: uint64 }": { - "foo": "uint64", - "bar": "uint64" - }, - "{ foo: uint64; bar: uint64; }": { - "foo": "uint64", - "bar": "uint64" - } + "{ foo: uint64; bar: uint64 }": [ + { + "name": "foo", + "type": "uint64" + }, + { + "name": "bar", + "type": "uint64" + } + ], + "{ foo: uint64; bar: uint64; }": [ + { + "name": "foo", + "type": "uint64" + }, + { + "name": "bar", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -75,415 +87,418 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1247, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11 - ] - }, - { - "teal": 13, - "source": 1247, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 14, - "source": 1247, - "pc": [ - 14 - ] - }, - { - "teal": 15, - "source": 1247, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 16, - "source": 1247, - "pc": [ - 17 - ] - }, - { - "teal": 17, - "source": 1247, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 18, - "source": 1247, - "pc": [ - 20 - ] - }, - { - "teal": 19, - "source": 1247, - "pc": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 23, - "source": 1247, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 47 - ] - }, - { - "teal": 28, - "source": 1250, - "pc": [ - 48, - 49, - 50, - 51, - 52, - 53 - ] - }, - { - "teal": 31, - "source": 1250, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 32, - "source": 1250, - "pc": [ - 57 - ] - }, - { - "teal": 33, - "source": 1250, - "pc": [ - 58 - ] - }, - { - "teal": 34, - "source": 1250, - "pc": [ - 59 - ] - }, - { - "teal": 35, - "source": 1250, - "pc": [ - 60 - ] - }, - { - "teal": 39, - "source": 1250, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 43, - "source": 1251, - "pc": [ - 64 - ] - }, - { - "teal": 44, - "source": 1251, - "pc": [ - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 45, - "source": 1251, - "pc": [ - 83 - ] - }, - { - "teal": 49, - "source": 1252, - "pc": [ - 84 - ] - }, - { - "teal": 50, - "source": 1252, - "pc": [ - 85 - ] - }, - { - "teal": 51, - "source": 1252, - "pc": [ - 86 - ] - }, - { - "teal": 52, - "source": 1252, - "pc": [ - 87 - ] - }, - { - "teal": 53, - "source": 1252, - "pc": [ - 88 - ] - }, - { - "teal": 54, - "source": 1252, - "pc": [ - 89 - ] - }, - { - "teal": 55, - "source": 1252, - "pc": [ - 90 - ] - }, - { - "teal": 56, - "source": 1252, - "pc": [ - 91 - ] - }, - { - "teal": 57, - "source": 1252, - "pc": [ - 92 - ] - }, - { - "teal": 58, - "source": 1252, - "pc": [ - 93 - ] - }, - { - "teal": 59, - "source": 1252, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 60, - "source": 1252, - "pc": [ - 96 - ] - }, - { - "teal": 64, - "source": 1253, - "pc": [ - 97 - ] - }, - { - "teal": 65, - "source": 1253, - "pc": [ - 98 - ] - }, - { - "teal": 68, - "source": 1253, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 99 - ] - }, - { - "teal": 69, - "source": 1250, - "pc": [ - 100 - ] - }, - { - "teal": 72, - "source": 1247, - "pc": [ - 101 - ] - }, - { - "teal": 73, - "source": 1247, - "pc": [ - 102 - ] - }, - { - "teal": 76, - "source": 1247, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 77, - "source": 1247, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 78, - "source": 1247, - "pc": [ - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 81, - "source": 1247, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 116 - ] - }, - { - "teal": 84, - "source": 1247, - "pc": [ - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 85, - "source": 1247, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 86, - "source": 1247, - "pc": [ - 126, - 127, - 128, - 129 - ] - }, - { - "teal": 89, - "source": 1247, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 130 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1247, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + }, + { + "teal": 13, + "source": 1247, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 14, + "source": 1247, + "pc": [ + 14 + ] + }, + { + "teal": 15, + "source": 1247, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 16, + "source": 1247, + "pc": [ + 17 + ] + }, + { + "teal": 17, + "source": 1247, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 18, + "source": 1247, + "pc": [ + 20 + ] + }, + { + "teal": 19, + "source": 1247, + "pc": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 23, + "source": 1247, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 47 + ] + }, + { + "teal": 28, + "source": 1250, + "pc": [ + 48, + 49, + 50, + 51, + 52, + 53 + ] + }, + { + "teal": 31, + "source": 1250, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 32, + "source": 1250, + "pc": [ + 57 + ] + }, + { + "teal": 33, + "source": 1250, + "pc": [ + 58 + ] + }, + { + "teal": 34, + "source": 1250, + "pc": [ + 59 + ] + }, + { + "teal": 35, + "source": 1250, + "pc": [ + 60 + ] + }, + { + "teal": 39, + "source": 1250, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 43, + "source": 1251, + "pc": [ + 64 + ] + }, + { + "teal": 44, + "source": 1251, + "pc": [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 45, + "source": 1251, + "pc": [ + 83 + ] + }, + { + "teal": 49, + "source": 1252, + "pc": [ + 84 + ] + }, + { + "teal": 50, + "source": 1252, + "pc": [ + 85 + ] + }, + { + "teal": 51, + "source": 1252, + "pc": [ + 86 + ] + }, + { + "teal": 52, + "source": 1252, + "pc": [ + 87 + ] + }, + { + "teal": 53, + "source": 1252, + "pc": [ + 88 + ] + }, + { + "teal": 54, + "source": 1252, + "pc": [ + 89 + ] + }, + { + "teal": 55, + "source": 1252, + "pc": [ + 90 + ] + }, + { + "teal": 56, + "source": 1252, + "pc": [ + 91 + ] + }, + { + "teal": 57, + "source": 1252, + "pc": [ + 92 + ] + }, + { + "teal": 58, + "source": 1252, + "pc": [ + 93 + ] + }, + { + "teal": 59, + "source": 1252, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 60, + "source": 1252, + "pc": [ + 96 + ] + }, + { + "teal": 64, + "source": 1253, + "pc": [ + 97 + ] + }, + { + "teal": 65, + "source": 1253, + "pc": [ + 98 + ] + }, + { + "teal": 68, + "source": 1253, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 99 + ] + }, + { + "teal": 69, + "source": 1250, + "pc": [ + 100 + ] + }, + { + "teal": 72, + "source": 1247, + "pc": [ + 101 + ] + }, + { + "teal": 73, + "source": 1247, + "pc": [ + 102 + ] + }, + { + "teal": 76, + "source": 1247, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 77, + "source": 1247, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 78, + "source": 1247, + "pc": [ + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 81, + "source": 1247, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 116 + ] + }, + { + "teal": 84, + "source": 1247, + "pc": [ + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 85, + "source": 1247, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 86, + "source": 1247, + "pc": [ + 126, + 127, + 128, + 129 + ] + }, + { + "teal": 89, + "source": 1247, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 130 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveCgpKHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNPYmpWYWx1ZUluQm94KCk6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGZvbzogMywgYmFyOiA0IH0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjUyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5iYXIgKz0gMQoJaW50IDggLy8gaGVhZE9mZnNldAoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJaW50IDggLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJKwoJaXRvYgoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MwoJLy8gcmV0dXJuIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlOwoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveCgpKHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KQoJY2FsbHN1YiBwbHVzRXF1YWxzT2JqVmFsdWVJbkJveAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNPYmpWYWx1ZUluQm94KCk6IHsgZm9vOiB1aW50NjQ7IGJhcjogdWludDY0IH0KcGx1c0VxdWFsc09ialZhbHVlSW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGZvbzogMywgYmFyOiA0IH0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwNAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjUyCgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5iYXIgKz0gMQoJaW50IDggLy8gaGVhZE9mZnNldAoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJaW50IDggLy8gaGVhZE9mZnNldAoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglpbnQgMQoJKwoJaXRvYgoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI1MwoJLy8gcmV0dXJuIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlOwoJYnl0ZSAweDYyNGQ2MTcwIC8vICJiTWFwIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicGx1c0VxdWFsc09ialZhbHVlSW5Cb3goKSh1aW50NjQsdWludDY0KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGx1c0VxdWFsc09ialZhbHVlSW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestPostBoolTupleOffset.approval.teal b/tests/contracts/artifacts/ABITestPostBoolTupleOffset.approval.teal index 54739f845..a6e17ca31 100644 --- a/tests/contracts/artifacts/ABITestPostBoolTupleOffset.approval.teal +++ b/tests/contracts/artifacts/ABITestPostBoolTupleOffset.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc32.json b/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc32.json index 1d8776f85..f68068baa 100644 --- a/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc32.json +++ b/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwb3N0Qm9vbFR1cGxlT2Zmc2V0KCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgcG9zdEJvb2xUdXBsZU9mZnNldAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBvc3RCb29sVHVwbGVPZmZzZXQoKTogVDkKcG9zdEJvb2xUdXBsZU9mZnNldDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MTkKCS8vIHJldFZhbDogVDkgPSB7IGE6IGZhbHNlLCBiOiAwLCBjOiAwIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWR1cAoJc2V0Yml0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjIxCgkvLyByZXRWYWwuYSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIHJldFZhbDogVDkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIHJldFZhbDogVDkKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYyMgoJLy8gcmV0VmFsLmIgPSAxCglmcmFtZV9kaWcgMCAvLyByZXRWYWw6IFQ5CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCXJlcGxhY2UyIDEKCWZyYW1lX2J1cnkgMCAvLyByZXRWYWw6IFQ5CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MjMKCS8vIHJldFZhbC5jID0gMgoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiA5CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjI1CgkvLyByZXR1cm4gcmV0VmFsOwoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwb3N0Qm9vbFR1cGxlT2Zmc2V0KCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgcG9zdEJvb2xUdXBsZU9mZnNldAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBvc3RCb29sVHVwbGVPZmZzZXQoKTogVDkKcG9zdEJvb2xUdXBsZU9mZnNldDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MTkKCS8vIHJldFZhbDogVDkgPSB7IGE6IGZhbHNlLCBiOiAwLCBjOiAwIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWR1cAoJc2V0Yml0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjIxCgkvLyByZXRWYWwuYSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIHJldFZhbDogVDkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIHJldFZhbDogVDkKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYyMgoJLy8gcmV0VmFsLmIgPSAxCglmcmFtZV9kaWcgMCAvLyByZXRWYWw6IFQ5CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCXJlcGxhY2UyIDEKCWZyYW1lX2J1cnkgMCAvLyByZXRWYWw6IFQ5CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MjMKCS8vIHJldFZhbC5jID0gMgoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiA5CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjI1CgkvLyByZXR1cm4gcmV0VmFsOwoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc56_draft.json b/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc56_draft.json index 2f45dab47..d6a4bec79 100644 --- a/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestPostBoolTupleOffset.arc56_draft.json @@ -35,11 +35,20 @@ 56 ], "structs": { - "T9": { - "a": "bool", - "b": "uint64", - "c": "uint64" - } + "T9": [ + { + "name": "a", + "type": "bool" + }, + { + "name": "b", + "type": "uint64" + }, + { + "name": "c", + "type": "uint64" + } + ] }, "state": { "schema": { @@ -67,529 +76,532 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1617, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15 - ] - }, - { - "teal": 13, - "source": 1617, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 14, - "source": 1617, - "pc": [ - 18 - ] - }, - { - "teal": 15, - "source": 1617, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 16, - "source": 1617, - "pc": [ - 21 - ] - }, - { - "teal": 17, - "source": 1617, - "pc": [ - 22, - 23 - ] - }, - { - "teal": 18, - "source": 1617, - "pc": [ - 24 - ] - }, - { - "teal": 19, - "source": 1617, - "pc": [ - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 23, - "source": 1617, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 51 - ] - }, - { - "teal": 28, - "source": 1618, - "pc": [ - 52, - 53, - 54, - 55, - 56, - 57 - ] - }, - { - "teal": 31, - "source": 1618, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 32, - "source": 1618, - "pc": [ - 61 - ] - }, - { - "teal": 33, - "source": 1618, - "pc": [ - 62 - ] - }, - { - "teal": 34, - "source": 1618, - "pc": [ - 63 - ] - }, - { - "teal": 35, - "source": 1618, - "pc": [ - 64 - ] - }, - { - "teal": 39, - "source": 1618, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 42, - "source": 1618, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 46, - "source": 1619, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 47, - "source": 1619, - "pc": [ - 73 - ] - }, - { - "teal": 48, - "source": 1619, - "pc": [ - 74 - ] - }, - { - "teal": 49, - "source": 1619, - "pc": [ - 75 - ] - }, - { - "teal": 50, - "source": 1619, - "pc": [ - 76 - ] - }, - { - "teal": 51, - "source": 1619, - "pc": [ - 77 - ] - }, - { - "teal": 52, - "source": 1619, - "pc": [ - 78 - ] - }, - { - "teal": 53, - "source": 1619, - "pc": [ - 79 - ] - }, - { - "teal": 54, - "source": 1619, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 58, - "source": 1621, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 59, - "source": 1621, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 60, - "source": 1621, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 61, - "source": 1621, - "pc": [ - 88 - ] - }, - { - "teal": 62, - "source": 1621, - "pc": [ - 89 - ] - }, - { - "teal": 63, - "source": 1621, - "pc": [ - 90 - ] - }, - { - "teal": 64, - "source": 1621, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 68, - "source": 1622, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 69, - "source": 1622, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 70, - "source": 1622, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 71, - "source": 1622, - "pc": [ - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 72, - "source": 1622, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 73, - "source": 1622, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 77, - "source": 1623, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 78, - "source": 1623, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 79, - "source": 1623, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 80, - "source": 1623, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 81, - "source": 1623, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 82, - "source": 1623, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 86, - "source": 1625, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 89, - "source": 1618, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 90, - "source": 1618, - "pc": [ - 137 - ] - }, - { - "teal": 93, - "source": 1617, - "pc": [ - 138 - ] - }, - { - "teal": 94, - "source": 1617, - "pc": [ - 139 - ] - }, - { - "teal": 97, - "source": 1617, - "pc": [ - 140, - 141, - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 98, - "source": 1617, - "pc": [ - 146, - 147, - 148 - ] - }, - { - "teal": 99, - "source": 1617, - "pc": [ - 149, - 150, - 151, - 152 - ] - }, - { - "teal": 102, - "source": 1617, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 153 - ] - }, - { - "teal": 105, - "source": 1617, - "pc": [ - 154, - 155, - 156, - 157, - 158, - 159 - ] - }, - { - "teal": 106, - "source": 1617, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 107, - "source": 1617, - "pc": [ - 163, - 164, - 165, - 166 - ] - }, - { - "teal": 110, - "source": 1617, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 167 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1617, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + }, + { + "teal": 13, + "source": 1617, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 14, + "source": 1617, + "pc": [ + 18 + ] + }, + { + "teal": 15, + "source": 1617, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 16, + "source": 1617, + "pc": [ + 21 + ] + }, + { + "teal": 17, + "source": 1617, + "pc": [ + 22, + 23 + ] + }, + { + "teal": 18, + "source": 1617, + "pc": [ + 24 + ] + }, + { + "teal": 19, + "source": 1617, + "pc": [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 23, + "source": 1617, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 51 + ] + }, + { + "teal": 28, + "source": 1618, + "pc": [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + }, + { + "teal": 31, + "source": 1618, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 32, + "source": 1618, + "pc": [ + 61 + ] + }, + { + "teal": 33, + "source": 1618, + "pc": [ + 62 + ] + }, + { + "teal": 34, + "source": 1618, + "pc": [ + 63 + ] + }, + { + "teal": 35, + "source": 1618, + "pc": [ + 64 + ] + }, + { + "teal": 39, + "source": 1618, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 42, + "source": 1618, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 46, + "source": 1619, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 47, + "source": 1619, + "pc": [ + 73 + ] + }, + { + "teal": 48, + "source": 1619, + "pc": [ + 74 + ] + }, + { + "teal": 49, + "source": 1619, + "pc": [ + 75 + ] + }, + { + "teal": 50, + "source": 1619, + "pc": [ + 76 + ] + }, + { + "teal": 51, + "source": 1619, + "pc": [ + 77 + ] + }, + { + "teal": 52, + "source": 1619, + "pc": [ + 78 + ] + }, + { + "teal": 53, + "source": 1619, + "pc": [ + 79 + ] + }, + { + "teal": 54, + "source": 1619, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 58, + "source": 1621, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 59, + "source": 1621, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 60, + "source": 1621, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 61, + "source": 1621, + "pc": [ + 88 + ] + }, + { + "teal": 62, + "source": 1621, + "pc": [ + 89 + ] + }, + { + "teal": 63, + "source": 1621, + "pc": [ + 90 + ] + }, + { + "teal": 64, + "source": 1621, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 68, + "source": 1622, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 69, + "source": 1622, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 70, + "source": 1622, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 71, + "source": 1622, + "pc": [ + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 72, + "source": 1622, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 73, + "source": 1622, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 77, + "source": 1623, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 78, + "source": 1623, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 79, + "source": 1623, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 80, + "source": 1623, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 81, + "source": 1623, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 82, + "source": 1623, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 86, + "source": 1625, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 89, + "source": 1618, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 90, + "source": 1618, + "pc": [ + 137 + ] + }, + { + "teal": 93, + "source": 1617, + "pc": [ + 138 + ] + }, + { + "teal": 94, + "source": 1617, + "pc": [ + 139 + ] + }, + { + "teal": 97, + "source": 1617, + "pc": [ + 140, + 141, + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 98, + "source": 1617, + "pc": [ + 146, + 147, + 148 + ] + }, + { + "teal": 99, + "source": 1617, + "pc": [ + 149, + 150, + 151, + 152 + ] + }, + { + "teal": 102, + "source": 1617, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 153 + ] + }, + { + "teal": 105, + "source": 1617, + "pc": [ + 154, + 155, + 156, + 157, + 158, + 159 + ] + }, + { + "teal": 106, + "source": 1617, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 107, + "source": 1617, + "pc": [ + 163, + 164, + 165, + 166 + ] + }, + { + "teal": 110, + "source": 1617, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 167 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwb3N0Qm9vbFR1cGxlT2Zmc2V0KCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgcG9zdEJvb2xUdXBsZU9mZnNldAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBvc3RCb29sVHVwbGVPZmZzZXQoKTogVDkKcG9zdEJvb2xUdXBsZU9mZnNldDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MTkKCS8vIHJldFZhbDogVDkgPSB7IGE6IGZhbHNlLCBiOiAwLCBjOiAwIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWR1cAoJc2V0Yml0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjIxCgkvLyByZXRWYWwuYSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIHJldFZhbDogVDkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIHJldFZhbDogVDkKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYyMgoJLy8gcmV0VmFsLmIgPSAxCglmcmFtZV9kaWcgMCAvLyByZXRWYWw6IFQ5CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCXJlcGxhY2UyIDEKCWZyYW1lX2J1cnkgMCAvLyByZXRWYWw6IFQ5CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MjMKCS8vIHJldFZhbC5jID0gMgoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiA5CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjI1CgkvLyByZXR1cm4gcmV0VmFsOwoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwb3N0Qm9vbFR1cGxlT2Zmc2V0KCkoYm9vbCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgcG9zdEJvb2xUdXBsZU9mZnNldAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBvc3RCb29sVHVwbGVPZmZzZXQoKTogVDkKcG9zdEJvb2xUdXBsZU9mZnNldDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MTkKCS8vIHJldFZhbDogVDkgPSB7IGE6IGZhbHNlLCBiOiAwLCBjOiAwIH0KCWJ5dGUgMHgwMAoJaW50IDAKCWR1cAoJc2V0Yml0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjIxCgkvLyByZXRWYWwuYSA9IHRydWUKCWZyYW1lX2RpZyAwIC8vIHJldFZhbDogVDkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIHJldFZhbDogVDkKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTYyMgoJLy8gcmV0VmFsLmIgPSAxCglmcmFtZV9kaWcgMCAvLyByZXRWYWw6IFQ5CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEKCXJlcGxhY2UyIDEKCWZyYW1lX2J1cnkgMCAvLyByZXRWYWw6IFQ5CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE2MjMKCS8vIHJldFZhbC5jID0gMgoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAyCglyZXBsYWNlMiA5CglmcmFtZV9idXJ5IDAgLy8gcmV0VmFsOiBUOQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNjI1CgkvLyByZXR1cm4gcmV0VmFsOwoJZnJhbWVfZGlnIDAgLy8gcmV0VmFsOiBUOQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicG9zdEJvb2xUdXBsZU9mZnNldCgpKGJvb2wsdWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Bvc3RCb29sVHVwbGVPZmZzZXQKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestPushToArrayInBox.approval.teal b/tests/contracts/artifacts/ABITestPushToArrayInBox.approval.teal index aa7f68786..595740bf7 100644 --- a/tests/contracts/artifacts/ABITestPushToArrayInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestPushToArrayInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestPushToArrayInBox.arc32.json b/tests/contracts/artifacts/ABITestPushToArrayInBox.arc32.json index d6aefa43d..f147492d7 100644 --- a/tests/contracts/artifacts/ABITestPushToArrayInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestPushToArrayInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXQoqYWJpX3JvdXRlX3B1c2hUb0FycmF5SW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcHVzaFRvQXJyYXlJbkJveCgpdWludDY0W10KCWNhbGxzdWIgcHVzaFRvQXJyYXlJbkJveAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVzaFRvQXJyYXlJbkJveCgpOiBBcHBJRFtdCnB1c2hUb0FycmF5SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU1NAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBbQXBwSUQuZnJvbVVpbnQ2NCgxKSwgQXBwSUQuZnJvbVVpbnQ2NCgyKV0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMjAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTYKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCgzKSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMwoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTcKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCg0KSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTkKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcHVzaFRvQXJyYXlJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXQoqYWJpX3JvdXRlX3B1c2hUb0FycmF5SW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcHVzaFRvQXJyYXlJbkJveCgpdWludDY0W10KCWNhbGxzdWIgcHVzaFRvQXJyYXlJbkJveAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVzaFRvQXJyYXlJbkJveCgpOiBBcHBJRFtdCnB1c2hUb0FycmF5SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU1NAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBbQXBwSUQuZnJvbVVpbnQ2NCgxKSwgQXBwSUQuZnJvbVVpbnQ2NCgyKV0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMjAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTYKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCgzKSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMwoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTcKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCg0KSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTkKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcHVzaFRvQXJyYXlJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestPushToArrayInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestPushToArrayInBox.arc56_draft.json index e6a93f37f..391ee8472 100644 --- a/tests/contracts/artifacts/ABITestPushToArrayInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestPushToArrayInBox.arc56_draft.json @@ -65,728 +65,731 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1550, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11 - ] - }, - { - "teal": 13, - "source": 1550, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 14, - "source": 1550, - "pc": [ - 14 - ] - }, - { - "teal": 15, - "source": 1550, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 16, - "source": 1550, - "pc": [ - 17 - ] - }, - { - "teal": 17, - "source": 1550, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 18, - "source": 1550, - "pc": [ - 20 - ] - }, - { - "teal": 19, - "source": 1550, - "pc": [ - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 23, - "source": 1550, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 47 - ] - }, - { - "teal": 28, - "source": 1553, - "pc": [ - 48, - 49, - 50, - 51, - 52, - 53 - ] - }, - { - "teal": 31, - "source": 1553, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 32, - "source": 1553, - "pc": [ - 57 - ] - }, - { - "teal": 33, - "source": 1553, - "pc": [ - 58 - ] - }, - { - "teal": 34, - "source": 1553, - "pc": [ - 59 - ] - }, - { - "teal": 35, - "source": 1553, - "pc": [ - 60 - ] - }, - { - "teal": 36, - "source": 1553, - "pc": [ - 61 - ] - }, - { - "teal": 37, - "source": 1553, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 38, - "source": 1553, - "pc": [ - 65 - ] - }, - { - "teal": 39, - "source": 1553, - "pc": [ - 66 - ] - }, - { - "teal": 40, - "source": 1553, - "pc": [ - 67 - ] - }, - { - "teal": 41, - "source": 1553, - "pc": [ - 68 - ] - }, - { - "teal": 42, - "source": 1553, - "pc": [ - 69 - ] - }, - { - "teal": 43, - "source": 1553, - "pc": [ - 70 - ] - }, - { - "teal": 47, - "source": 1553, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 51, - "source": 1554, - "pc": [ - 74 - ] - }, - { - "teal": 52, - "source": 1554, - "pc": [ - 75 - ] - }, - { - "teal": 53, - "source": 1554, - "pc": [ - 76 - ] - }, - { - "teal": 54, - "source": 1554, - "pc": [ - 77 - ] - }, - { - "teal": 55, - "source": 1554, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 56, - "source": 1554, - "pc": [ - 98 - ] - }, - { - "teal": 60, - "source": 1556, - "pc": [ - 99 - ] - }, - { - "teal": 61, - "source": 1556, - "pc": [ - 100 - ] - }, - { - "teal": 64, - "source": 1556, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 101 - ] - }, - { - "teal": 65, - "source": 1556, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 66, - "source": 1556, - "pc": [ - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 67, - "source": 1556, - "pc": [ - 115 - ] - }, - { - "teal": 68, - "source": 1556, - "pc": [ - 116 - ] - }, - { - "teal": 69, - "source": 1556, - "pc": [ - 117 - ] - }, - { - "teal": 70, - "source": 1556, - "pc": [ - 118 - ] - }, - { - "teal": 71, - "source": 1556, - "pc": [ - 119 - ] - }, - { - "teal": 72, - "source": 1556, - "pc": [ - 120 - ] - }, - { - "teal": 73, - "source": 1556, - "pc": [ - 121 - ] - }, - { - "teal": 74, - "source": 1556, - "pc": [ - 122 - ] - }, - { - "teal": 75, - "source": 1556, - "pc": [ - 123 - ] - }, - { - "teal": 76, - "source": 1556, - "pc": [ - 124 - ] - }, - { - "teal": 77, - "source": 1556, - "pc": [ - 125 - ] - }, - { - "teal": 78, - "source": 1556, - "pc": [ - 126, - 127, - 128 - ] - }, - { - "teal": 79, - "source": 1556, - "pc": [ - 129 - ] - }, - { - "teal": 80, - "source": 1556, - "pc": [ - 130 - ] - }, - { - "teal": 81, - "source": 1556, - "pc": [ - 131 - ] - }, - { - "teal": 85, - "source": 1557, - "pc": [ - 132 - ] - }, - { - "teal": 86, - "source": 1557, - "pc": [ - 133 - ] - }, - { - "teal": 89, - "source": 1557, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 134 - ] - }, - { - "teal": 90, - "source": 1557, - "pc": [ - 135, - 136, - 137 - ] - }, - { - "teal": 91, - "source": 1557, - "pc": [ - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 92, - "source": 1557, - "pc": [ - 148 - ] - }, - { - "teal": 93, - "source": 1557, - "pc": [ - 149 - ] - }, - { - "teal": 94, - "source": 1557, - "pc": [ - 150 - ] - }, - { - "teal": 95, - "source": 1557, - "pc": [ - 151 - ] - }, - { - "teal": 96, - "source": 1557, - "pc": [ - 152 - ] - }, - { - "teal": 97, - "source": 1557, - "pc": [ - 153 - ] - }, - { - "teal": 98, - "source": 1557, - "pc": [ - 154 - ] - }, - { - "teal": 99, - "source": 1557, - "pc": [ - 155 - ] - }, - { - "teal": 100, - "source": 1557, - "pc": [ - 156 - ] - }, - { - "teal": 101, - "source": 1557, - "pc": [ - 157 - ] - }, - { - "teal": 102, - "source": 1557, - "pc": [ - 158 - ] - }, - { - "teal": 103, - "source": 1557, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 104, - "source": 1557, - "pc": [ - 162 - ] - }, - { - "teal": 105, - "source": 1557, - "pc": [ - 163 - ] - }, - { - "teal": 106, - "source": 1557, - "pc": [ - 164 - ] - }, - { - "teal": 110, - "source": 1559, - "pc": [ - 165 - ] - }, - { - "teal": 111, - "source": 1559, - "pc": [ - 166 - ] - }, - { - "teal": 114, - "source": 1559, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 167 - ] - }, - { - "teal": 115, - "source": 1559, - "pc": [ - 168, - 169, - 170 - ] - }, - { - "teal": 116, - "source": 1553, - "pc": [ - 171 - ] - }, - { - "teal": 119, - "source": 1550, - "pc": [ - 172 - ] - }, - { - "teal": 120, - "source": 1550, - "pc": [ - 173 - ] - }, - { - "teal": 123, - "source": 1550, - "pc": [ - 174, - 175, - 176, - 177, - 178, - 179 - ] - }, - { - "teal": 124, - "source": 1550, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 125, - "source": 1550, - "pc": [ - 183, - 184, - 185, - 186 - ] - }, - { - "teal": 128, - "source": 1550, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 187 - ] - }, - { - "teal": 131, - "source": 1550, - "pc": [ - 188, - 189, - 190, - 191, - 192, - 193 - ] - }, - { - "teal": 132, - "source": 1550, - "pc": [ - 194, - 195, - 196 - ] - }, - { - "teal": 133, - "source": 1550, - "pc": [ - 197, - 198, - 199, - 200 - ] - }, - { - "teal": 136, - "source": 1550, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 201 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1550, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + }, + { + "teal": 13, + "source": 1550, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 14, + "source": 1550, + "pc": [ + 14 + ] + }, + { + "teal": 15, + "source": 1550, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 16, + "source": 1550, + "pc": [ + 17 + ] + }, + { + "teal": 17, + "source": 1550, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 18, + "source": 1550, + "pc": [ + 20 + ] + }, + { + "teal": 19, + "source": 1550, + "pc": [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 23, + "source": 1550, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 47 + ] + }, + { + "teal": 28, + "source": 1553, + "pc": [ + 48, + 49, + 50, + 51, + 52, + 53 + ] + }, + { + "teal": 31, + "source": 1553, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 32, + "source": 1553, + "pc": [ + 57 + ] + }, + { + "teal": 33, + "source": 1553, + "pc": [ + 58 + ] + }, + { + "teal": 34, + "source": 1553, + "pc": [ + 59 + ] + }, + { + "teal": 35, + "source": 1553, + "pc": [ + 60 + ] + }, + { + "teal": 36, + "source": 1553, + "pc": [ + 61 + ] + }, + { + "teal": 37, + "source": 1553, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 38, + "source": 1553, + "pc": [ + 65 + ] + }, + { + "teal": 39, + "source": 1553, + "pc": [ + 66 + ] + }, + { + "teal": 40, + "source": 1553, + "pc": [ + 67 + ] + }, + { + "teal": 41, + "source": 1553, + "pc": [ + 68 + ] + }, + { + "teal": 42, + "source": 1553, + "pc": [ + 69 + ] + }, + { + "teal": 43, + "source": 1553, + "pc": [ + 70 + ] + }, + { + "teal": 47, + "source": 1553, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 51, + "source": 1554, + "pc": [ + 74 + ] + }, + { + "teal": 52, + "source": 1554, + "pc": [ + 75 + ] + }, + { + "teal": 53, + "source": 1554, + "pc": [ + 76 + ] + }, + { + "teal": 54, + "source": 1554, + "pc": [ + 77 + ] + }, + { + "teal": 55, + "source": 1554, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 56, + "source": 1554, + "pc": [ + 98 + ] + }, + { + "teal": 60, + "source": 1556, + "pc": [ + 99 + ] + }, + { + "teal": 61, + "source": 1556, + "pc": [ + 100 + ] + }, + { + "teal": 64, + "source": 1556, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 101 + ] + }, + { + "teal": 65, + "source": 1556, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 66, + "source": 1556, + "pc": [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 67, + "source": 1556, + "pc": [ + 115 + ] + }, + { + "teal": 68, + "source": 1556, + "pc": [ + 116 + ] + }, + { + "teal": 69, + "source": 1556, + "pc": [ + 117 + ] + }, + { + "teal": 70, + "source": 1556, + "pc": [ + 118 + ] + }, + { + "teal": 71, + "source": 1556, + "pc": [ + 119 + ] + }, + { + "teal": 72, + "source": 1556, + "pc": [ + 120 + ] + }, + { + "teal": 73, + "source": 1556, + "pc": [ + 121 + ] + }, + { + "teal": 74, + "source": 1556, + "pc": [ + 122 + ] + }, + { + "teal": 75, + "source": 1556, + "pc": [ + 123 + ] + }, + { + "teal": 76, + "source": 1556, + "pc": [ + 124 + ] + }, + { + "teal": 77, + "source": 1556, + "pc": [ + 125 + ] + }, + { + "teal": 78, + "source": 1556, + "pc": [ + 126, + 127, + 128 + ] + }, + { + "teal": 79, + "source": 1556, + "pc": [ + 129 + ] + }, + { + "teal": 80, + "source": 1556, + "pc": [ + 130 + ] + }, + { + "teal": 81, + "source": 1556, + "pc": [ + 131 + ] + }, + { + "teal": 85, + "source": 1557, + "pc": [ + 132 + ] + }, + { + "teal": 86, + "source": 1557, + "pc": [ + 133 + ] + }, + { + "teal": 89, + "source": 1557, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 134 + ] + }, + { + "teal": 90, + "source": 1557, + "pc": [ + 135, + 136, + 137 + ] + }, + { + "teal": 91, + "source": 1557, + "pc": [ + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 92, + "source": 1557, + "pc": [ + 148 + ] + }, + { + "teal": 93, + "source": 1557, + "pc": [ + 149 + ] + }, + { + "teal": 94, + "source": 1557, + "pc": [ + 150 + ] + }, + { + "teal": 95, + "source": 1557, + "pc": [ + 151 + ] + }, + { + "teal": 96, + "source": 1557, + "pc": [ + 152 + ] + }, + { + "teal": 97, + "source": 1557, + "pc": [ + 153 + ] + }, + { + "teal": 98, + "source": 1557, + "pc": [ + 154 + ] + }, + { + "teal": 99, + "source": 1557, + "pc": [ + 155 + ] + }, + { + "teal": 100, + "source": 1557, + "pc": [ + 156 + ] + }, + { + "teal": 101, + "source": 1557, + "pc": [ + 157 + ] + }, + { + "teal": 102, + "source": 1557, + "pc": [ + 158 + ] + }, + { + "teal": 103, + "source": 1557, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 104, + "source": 1557, + "pc": [ + 162 + ] + }, + { + "teal": 105, + "source": 1557, + "pc": [ + 163 + ] + }, + { + "teal": 106, + "source": 1557, + "pc": [ + 164 + ] + }, + { + "teal": 110, + "source": 1559, + "pc": [ + 165 + ] + }, + { + "teal": 111, + "source": 1559, + "pc": [ + 166 + ] + }, + { + "teal": 114, + "source": 1559, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 167 + ] + }, + { + "teal": 115, + "source": 1559, + "pc": [ + 168, + 169, + 170 + ] + }, + { + "teal": 116, + "source": 1553, + "pc": [ + 171 + ] + }, + { + "teal": 119, + "source": 1550, + "pc": [ + 172 + ] + }, + { + "teal": 120, + "source": 1550, + "pc": [ + 173 + ] + }, + { + "teal": 123, + "source": 1550, + "pc": [ + 174, + 175, + 176, + 177, + 178, + 179 + ] + }, + { + "teal": 124, + "source": 1550, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 125, + "source": 1550, + "pc": [ + 183, + 184, + 185, + 186 + ] + }, + { + "teal": 128, + "source": 1550, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 187 + ] + }, + { + "teal": 131, + "source": 1550, + "pc": [ + 188, + 189, + 190, + 191, + 192, + 193 + ] + }, + { + "teal": 132, + "source": 1550, + "pc": [ + 194, + 195, + 196 + ] + }, + { + "teal": 133, + "source": 1550, + "pc": [ + 197, + 198, + 199, + 200 + ] + }, + { + "teal": 136, + "source": 1550, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 201 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXQoqYWJpX3JvdXRlX3B1c2hUb0FycmF5SW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcHVzaFRvQXJyYXlJbkJveCgpdWludDY0W10KCWNhbGxzdWIgcHVzaFRvQXJyYXlJbkJveAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVzaFRvQXJyYXlJbkJveCgpOiBBcHBJRFtdCnB1c2hUb0FycmF5SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU1NAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBbQXBwSUQuZnJvbVVpbnQ2NCgxKSwgQXBwSUQuZnJvbVVpbnQ2NCgyKV0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMjAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTYKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCgzKSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMwoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTcKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCg0KSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTkKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcHVzaFRvQXJyYXlJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXQoqYWJpX3JvdXRlX3B1c2hUb0FycmF5SW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcHVzaFRvQXJyYXlJbkJveCgpdWludDY0W10KCWNhbGxzdWIgcHVzaFRvQXJyYXlJbkJveAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVzaFRvQXJyYXlJbkJveCgpOiBBcHBJRFtdCnB1c2hUb0FycmF5SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU1NAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBbQXBwSUQuZnJvbVVpbnQ2NCgxKSwgQXBwSUQuZnJvbVVpbnQ2NCgyKV0KCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMjAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyCglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTYKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCgzKSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMwoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTcKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLnB1c2goQXBwSUQuZnJvbVVpbnQ2NCg0KSkKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NTkKCS8vIHJldHVybiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZTsKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlCglhc3NlcnQKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwdXNoVG9BcnJheUluQm94KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcHVzaFRvQXJyYXlJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestRawBytesFunction.approval.teal b/tests/contracts/artifacts/ABITestRawBytesFunction.approval.teal index 7746b2e9d..ff9cce403 100644 --- a/tests/contracts/artifacts/ABITestRawBytesFunction.approval.teal +++ b/tests/contracts/artifacts/ABITestRawBytesFunction.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestRawBytesFunction.arc32.json b/tests/contracts/artifacts/ABITestRawBytesFunction.arc32.json index 024744bf8..eff01d7fd 100644 --- a/tests/contracts/artifacts/ABITestRawBytesFunction.arc32.json +++ b/tests/contracts/artifacts/ABITestRawBytesFunction.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmcKKmFiaV9yb3V0ZV9yYXdCeXRlc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJhd0J5dGVzRnVuY3Rpb24oKXN0cmluZwoJY2FsbHN1YiByYXdCeXRlc0Z1bmN0aW9uCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJhd0J5dGVzRnVuY3Rpb24oKTogc3RyaW5nCnJhd0J5dGVzRnVuY3Rpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDUzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAxMDIwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNTQKCS8vIHJldHVybiByYXdCeXRlcyhhKTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Jhd0J5dGVzRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmcKKmFiaV9yb3V0ZV9yYXdCeXRlc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJhd0J5dGVzRnVuY3Rpb24oKXN0cmluZwoJY2FsbHN1YiByYXdCeXRlc0Z1bmN0aW9uCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJhd0J5dGVzRnVuY3Rpb24oKTogc3RyaW5nCnJhd0J5dGVzRnVuY3Rpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDUzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAxMDIwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNTQKCS8vIHJldHVybiByYXdCeXRlcyhhKTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Jhd0J5dGVzRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestRawBytesFunction.arc56_draft.json b/tests/contracts/artifacts/ABITestRawBytesFunction.arc56_draft.json index 34410b051..820adc5bd 100644 --- a/tests/contracts/artifacts/ABITestRawBytesFunction.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestRawBytesFunction.arc56_draft.json @@ -60,349 +60,352 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1051, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1051, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1051, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1051, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1051, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1051, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1051, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1051, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1051, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1052, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1052, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1052, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1052, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1052, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1052, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 1052, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 1052, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 1052, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 1052, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 1052, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 1052, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1052, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 48, - "source": 1052, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 52, - "source": 1053, - "pc": [ - 66, - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 53, - "source": 1053, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 57, - "source": 1054, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 60, - "source": 1052, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 61, - "source": 1052, - "pc": [ - 77 - ] - }, - { - "teal": 64, - "source": 1051, - "pc": [ - 78 - ] - }, - { - "teal": 65, - "source": 1051, - "pc": [ - 79 - ] - }, - { - "teal": 68, - "source": 1051, - "pc": [ - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 69, - "source": 1051, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 70, - "source": 1051, - "pc": [ - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 73, - "source": 1051, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 93 - ] - }, - { - "teal": 76, - "source": 1051, - "pc": [ - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 77, - "source": 1051, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 78, - "source": 1051, - "pc": [ - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 81, - "source": 1051, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 107 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1051, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1051, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1051, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1051, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1051, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1051, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1051, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1051, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1051, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1052, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1052, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1052, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1052, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1052, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1052, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 1052, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 1052, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 1052, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 1052, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 1052, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 1052, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1052, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 48, + "source": 1052, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 52, + "source": 1053, + "pc": [ + 66, + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 53, + "source": 1053, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 57, + "source": 1054, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 60, + "source": 1052, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 61, + "source": 1052, + "pc": [ + 77 + ] + }, + { + "teal": 64, + "source": 1051, + "pc": [ + 78 + ] + }, + { + "teal": 65, + "source": 1051, + "pc": [ + 79 + ] + }, + { + "teal": 68, + "source": 1051, + "pc": [ + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 69, + "source": 1051, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 70, + "source": 1051, + "pc": [ + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 73, + "source": 1051, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 93 + ] + }, + { + "teal": 76, + "source": 1051, + "pc": [ + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 77, + "source": 1051, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 78, + "source": 1051, + "pc": [ + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 81, + "source": 1051, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 107 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmcKKmFiaV9yb3V0ZV9yYXdCeXRlc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJhd0J5dGVzRnVuY3Rpb24oKXN0cmluZwoJY2FsbHN1YiByYXdCeXRlc0Z1bmN0aW9uCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJhd0J5dGVzRnVuY3Rpb24oKTogc3RyaW5nCnJhd0J5dGVzRnVuY3Rpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDUzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAxMDIwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNTQKCS8vIHJldHVybiByYXdCeXRlcyhhKTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Jhd0J5dGVzRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmcKKmFiaV9yb3V0ZV9yYXdCeXRlc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJhd0J5dGVzRnVuY3Rpb24oKXN0cmluZwoJY2FsbHN1YiByYXdCeXRlc0Z1bmN0aW9uCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJhd0J5dGVzRnVuY3Rpb24oKTogc3RyaW5nCnJhd0J5dGVzRnVuY3Rpb246Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDUzCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50PDg+LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAxMDIwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwNTQKCS8vIHJldHVybiByYXdCeXRlcyhhKTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ8OD4sIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyYXdCeXRlc0Z1bmN0aW9uKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Jhd0J5dGVzRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestRefTypes.approval.teal b/tests/contracts/artifacts/ABITestRefTypes.approval.teal index 0fe9343af..5026516d0 100644 --- a/tests/contracts/artifacts/ABITestRefTypes.approval.teal +++ b/tests/contracts/artifacts/ABITestRefTypes.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestRefTypes.arc32.json b/tests/contracts/artifacts/ABITestRefTypes.arc32.json index 12911c4f8..a1eb33101 100644 --- a/tests/contracts/artifacts/ABITestRefTypes.arc32.json +++ b/tests/contracts/artifacts/ABITestRefTypes.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKKmFiaV9yb3V0ZV9yZWZUeXBlczoKCS8vIGFzYTogYXNzZXQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCXR4bmFzIEFzc2V0cwoKCS8vIGFwcDogYXBwbGljYXRpb24KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCXR4bmFzIEFwcGxpY2F0aW9ucwoKCS8vIGFjY3Q6IGFjY291bnQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCXR4bmFzIEFjY291bnRzCgoJLy8gZXhlY3V0ZSByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKCWNhbGxzdWIgcmVmVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHJlZlR5cGVzKGFjY3Q6IEFjY291bnRSZWZlcmVuY2UsIGFwcDogQXBwUmVmZXJlbmNlLCBhc2E6IEFzc2V0UmVmZXJlbmNlKTogdm9pZApyZWZUeXBlczoKCXByb3RvIDMgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTI2CgkvLyBhc3NlcnQoIWFjY3QuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0xIC8vIGFjY3Q6IEFjY291bnRSZWZlcmVuY2UKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MjcKCS8vIGFzc2VydCghYXBwLmFkZHJlc3MuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0yIC8vIGFwcDogQXBwUmVmZXJlbmNlCglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JlZlR5cGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKKmFiaV9yb3V0ZV9yZWZUeXBlczoKCS8vIGFzYTogYXNzZXQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCXR4bmFzIEFzc2V0cwoKCS8vIGFwcDogYXBwbGljYXRpb24KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCXR4bmFzIEFwcGxpY2F0aW9ucwoKCS8vIGFjY3Q6IGFjY291bnQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCXR4bmFzIEFjY291bnRzCgoJLy8gZXhlY3V0ZSByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKCWNhbGxzdWIgcmVmVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHJlZlR5cGVzKGFjY3Q6IEFjY291bnRSZWZlcmVuY2UsIGFwcDogQXBwUmVmZXJlbmNlLCBhc2E6IEFzc2V0UmVmZXJlbmNlKTogdm9pZApyZWZUeXBlczoKCXByb3RvIDMgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTI2CgkvLyBhc3NlcnQoIWFjY3QuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0xIC8vIGFjY3Q6IEFjY291bnRSZWZlcmVuY2UKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MjcKCS8vIGFzc2VydCghYXBwLmFkZHJlc3MuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0yIC8vIGFwcDogQXBwUmVmZXJlbmNlCglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JlZlR5cGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestRefTypes.arc56_draft.json b/tests/contracts/artifacts/ABITestRefTypes.arc56_draft.json index 44e4f5080..d3eb4322b 100644 --- a/tests/contracts/artifacts/ABITestRefTypes.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestRefTypes.arc56_draft.json @@ -73,427 +73,430 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1524, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1524, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1524, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1524, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1524, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1524, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1524, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1524, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1524, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1525, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 1525, - "pc": [ - 43 - ] - }, - { - "teal": 30, - "source": 1525, - "pc": [ - 44, - 45 - ] - }, - { - "teal": 33, - "source": 1525, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 34, - "source": 1525, - "pc": [ - 49 - ] - }, - { - "teal": 35, - "source": 1525, - "pc": [ - 50, - 51 - ] - }, - { - "teal": 38, - "source": 1525, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 39, - "source": 1525, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1525, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 43, - "source": 1525, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1525, - "pc": [ - 61 - ] - }, - { - "teal": 45, - "source": 1525, - "pc": [ - 62 - ] - }, - { - "teal": 49, - "source": 1525, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 53, - "source": 1526, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 54, - "source": 1526, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 55, - "source": 1526, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 56, - "source": 1526, - "pc": [ - 72 - ] - }, - { - "teal": 57, - "source": 1526, - "pc": [ - 73 - ] - }, - { - "teal": 58, - "source": 1526, - "pc": [ - 74 - ] - }, - { - "teal": 59, - "source": 1526, - "pc": [ - 75 - ] - }, - { - "teal": 63, - "source": 1527, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 64, - "source": 1527, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 65, - "source": 1527, - "pc": [ - 80 - ] - }, - { - "teal": 66, - "source": 1527, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 67, - "source": 1527, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 68, - "source": 1527, - "pc": [ - 85 - ] - }, - { - "teal": 69, - "source": 1527, - "pc": [ - 86 - ] - }, - { - "teal": 70, - "source": 1527, - "pc": [ - 87 - ] - }, - { - "teal": 71, - "source": 1527, - "pc": [ - 88 - ] - }, - { - "teal": 72, - "source": 1525, - "pc": [ - 89 - ] - }, - { - "teal": 75, - "source": 1524, - "pc": [ - 90 - ] - }, - { - "teal": 76, - "source": 1524, - "pc": [ - 91 - ] - }, - { - "teal": 79, - "source": 1524, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 80, - "source": 1524, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 81, - "source": 1524, - "pc": [ - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 84, - "source": 1524, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 105 - ] - }, - { - "teal": 87, - "source": 1524, - "pc": [ - 106, - 107, - 108, - 109, - 110, - 111 - ] - }, - { - "teal": 88, - "source": 1524, - "pc": [ - 112, - 113, - 114 - ] - }, - { - "teal": 89, - "source": 1524, - "pc": [ - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 92, - "source": 1524, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 119 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1524, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1524, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1524, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1524, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1524, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1524, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1524, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1524, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1524, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1525, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 1525, + "pc": [ + 43 + ] + }, + { + "teal": 30, + "source": 1525, + "pc": [ + 44, + 45 + ] + }, + { + "teal": 33, + "source": 1525, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 34, + "source": 1525, + "pc": [ + 49 + ] + }, + { + "teal": 35, + "source": 1525, + "pc": [ + 50, + 51 + ] + }, + { + "teal": 38, + "source": 1525, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 39, + "source": 1525, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1525, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 43, + "source": 1525, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1525, + "pc": [ + 61 + ] + }, + { + "teal": 45, + "source": 1525, + "pc": [ + 62 + ] + }, + { + "teal": 49, + "source": 1525, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 53, + "source": 1526, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 54, + "source": 1526, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 55, + "source": 1526, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 56, + "source": 1526, + "pc": [ + 72 + ] + }, + { + "teal": 57, + "source": 1526, + "pc": [ + 73 + ] + }, + { + "teal": 58, + "source": 1526, + "pc": [ + 74 + ] + }, + { + "teal": 59, + "source": 1526, + "pc": [ + 75 + ] + }, + { + "teal": 63, + "source": 1527, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 64, + "source": 1527, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 65, + "source": 1527, + "pc": [ + 80 + ] + }, + { + "teal": 66, + "source": 1527, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 67, + "source": 1527, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 68, + "source": 1527, + "pc": [ + 85 + ] + }, + { + "teal": 69, + "source": 1527, + "pc": [ + 86 + ] + }, + { + "teal": 70, + "source": 1527, + "pc": [ + 87 + ] + }, + { + "teal": 71, + "source": 1527, + "pc": [ + 88 + ] + }, + { + "teal": 72, + "source": 1525, + "pc": [ + 89 + ] + }, + { + "teal": 75, + "source": 1524, + "pc": [ + 90 + ] + }, + { + "teal": 76, + "source": 1524, + "pc": [ + 91 + ] + }, + { + "teal": 79, + "source": 1524, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 80, + "source": 1524, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 81, + "source": 1524, + "pc": [ + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 84, + "source": 1524, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 105 + ] + }, + { + "teal": 87, + "source": 1524, + "pc": [ + 106, + 107, + 108, + 109, + 110, + 111 + ] + }, + { + "teal": 88, + "source": 1524, + "pc": [ + 112, + 113, + 114 + ] + }, + { + "teal": 89, + "source": 1524, + "pc": [ + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 92, + "source": 1524, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 119 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKKmFiaV9yb3V0ZV9yZWZUeXBlczoKCS8vIGFzYTogYXNzZXQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCXR4bmFzIEFzc2V0cwoKCS8vIGFwcDogYXBwbGljYXRpb24KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCXR4bmFzIEFwcGxpY2F0aW9ucwoKCS8vIGFjY3Q6IGFjY291bnQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCXR4bmFzIEFjY291bnRzCgoJLy8gZXhlY3V0ZSByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKCWNhbGxzdWIgcmVmVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHJlZlR5cGVzKGFjY3Q6IEFjY291bnRSZWZlcmVuY2UsIGFwcDogQXBwUmVmZXJlbmNlLCBhc2E6IEFzc2V0UmVmZXJlbmNlKTogdm9pZApyZWZUeXBlczoKCXByb3RvIDMgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTI2CgkvLyBhc3NlcnQoIWFjY3QuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0xIC8vIGFjY3Q6IEFjY291bnRSZWZlcmVuY2UKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MjcKCS8vIGFzc2VydCghYXBwLmFkZHJlc3MuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0yIC8vIGFwcDogQXBwUmVmZXJlbmNlCglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JlZlR5cGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKKmFiaV9yb3V0ZV9yZWZUeXBlczoKCS8vIGFzYTogYXNzZXQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCXR4bmFzIEFzc2V0cwoKCS8vIGFwcDogYXBwbGljYXRpb24KCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCXR4bmFzIEFwcGxpY2F0aW9ucwoKCS8vIGFjY3Q6IGFjY291bnQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCXR4bmFzIEFjY291bnRzCgoJLy8gZXhlY3V0ZSByZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQKCWNhbGxzdWIgcmVmVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHJlZlR5cGVzKGFjY3Q6IEFjY291bnRSZWZlcmVuY2UsIGFwcDogQXBwUmVmZXJlbmNlLCBhc2E6IEFzc2V0UmVmZXJlbmNlKTogdm9pZApyZWZUeXBlczoKCXByb3RvIDMgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTI2CgkvLyBhc3NlcnQoIWFjY3QuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0xIC8vIGFjY3Q6IEFjY291bnRSZWZlcmVuY2UKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MjcKCS8vIGFzc2VydCghYXBwLmFkZHJlc3MuaXNPcHRlZEluVG9Bc3NldChhc2EpKQoJZnJhbWVfZGlnIC0yIC8vIGFwcDogQXBwUmVmZXJlbmNlCglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2RpZyAtMyAvLyBhc2E6IEFzc2V0UmVmZXJlbmNlCglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXN3YXAKCXBvcAoJIQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJyZWZUeXBlcyhhY2NvdW50LGFwcGxpY2F0aW9uLGFzc2V0KXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JlZlR5cGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestReturnByte.approval.teal b/tests/contracts/artifacts/ABITestReturnByte.approval.teal index 4a4eb389f..5dc31d161 100644 --- a/tests/contracts/artifacts/ABITestReturnByte.approval.teal +++ b/tests/contracts/artifacts/ABITestReturnByte.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestReturnByte.arc32.json b/tests/contracts/artifacts/ABITestReturnByte.arc32.json index 969f9d384..9de480886 100644 --- a/tests/contracts/artifacts/ABITestReturnByte.arc32.json +++ b/tests/contracts/artifacts/ABITestReturnByte.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5CeXRlKClieXRlCiphYmlfcm91dGVfcmV0dXJuQnl0ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5CeXRlKClieXRlCgljYWxsc3ViIHJldHVybkJ5dGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQnl0ZSgpOiBieXRlCnJldHVybkJ5dGU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU2NQoJLy8gcmV0dXJuIHJhd0J5dGUodHJ1ZSk7CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkJ5dGUoKWJ5dGUiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVybkJ5dGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5CeXRlKClieXRlCiphYmlfcm91dGVfcmV0dXJuQnl0ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5CeXRlKClieXRlCgljYWxsc3ViIHJldHVybkJ5dGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQnl0ZSgpOiBieXRlCnJldHVybkJ5dGU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU2NQoJLy8gcmV0dXJuIHJhd0J5dGUodHJ1ZSk7CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkJ5dGUoKWJ5dGUiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVybkJ5dGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestReturnByte.arc56_draft.json b/tests/contracts/artifacts/ABITestReturnByte.arc56_draft.json index 180074ab0..2bc7b0ad4 100644 --- a/tests/contracts/artifacts/ABITestReturnByte.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestReturnByte.arc56_draft.json @@ -60,345 +60,348 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1563, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1563, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1563, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1563, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1563, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1563, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1563, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1563, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1563, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1564, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1564, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1564, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1564, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1564, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1564, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 1564, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 1564, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 1564, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 1564, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 1564, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 1564, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1564, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 49, - "source": 1565, - "pc": [ - 64 - ] - }, - { - "teal": 50, - "source": 1565, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 51, - "source": 1565, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 52, - "source": 1565, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 53, - "source": 1565, - "pc": [ - 72 - ] - }, - { - "teal": 54, - "source": 1564, - "pc": [ - 73 - ] - }, - { - "teal": 57, - "source": 1563, - "pc": [ - 74 - ] - }, - { - "teal": 58, - "source": 1563, - "pc": [ - 75 - ] - }, - { - "teal": 61, - "source": 1563, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 62, - "source": 1563, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 63, - "source": 1563, - "pc": [ - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 66, - "source": 1563, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 89 - ] - }, - { - "teal": 69, - "source": 1563, - "pc": [ - 90, - 91, - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 70, - "source": 1563, - "pc": [ - 96, - 97, - 98 - ] - }, - { - "teal": 71, - "source": 1563, - "pc": [ - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 74, - "source": 1563, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 103 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1563, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1563, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1563, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1563, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1563, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1563, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1563, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1563, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1563, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1564, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1564, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1564, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1564, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1564, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1564, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 1564, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 1564, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 1564, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 1564, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 1564, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 1564, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1564, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 49, + "source": 1565, + "pc": [ + 64 + ] + }, + { + "teal": 50, + "source": 1565, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 51, + "source": 1565, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 52, + "source": 1565, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 53, + "source": 1565, + "pc": [ + 72 + ] + }, + { + "teal": 54, + "source": 1564, + "pc": [ + 73 + ] + }, + { + "teal": 57, + "source": 1563, + "pc": [ + 74 + ] + }, + { + "teal": 58, + "source": 1563, + "pc": [ + 75 + ] + }, + { + "teal": 61, + "source": 1563, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 62, + "source": 1563, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 63, + "source": 1563, + "pc": [ + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 66, + "source": 1563, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 89 + ] + }, + { + "teal": 69, + "source": 1563, + "pc": [ + 90, + 91, + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 70, + "source": 1563, + "pc": [ + 96, + 97, + 98 + ] + }, + { + "teal": 71, + "source": 1563, + "pc": [ + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 74, + "source": 1563, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 103 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5CeXRlKClieXRlCiphYmlfcm91dGVfcmV0dXJuQnl0ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5CeXRlKClieXRlCgljYWxsc3ViIHJldHVybkJ5dGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQnl0ZSgpOiBieXRlCnJldHVybkJ5dGU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU2NQoJLy8gcmV0dXJuIHJhd0J5dGUodHJ1ZSk7CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkJ5dGUoKWJ5dGUiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVybkJ5dGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5CeXRlKClieXRlCiphYmlfcm91dGVfcmV0dXJuQnl0ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5CeXRlKClieXRlCgljYWxsc3ViIHJldHVybkJ5dGUKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQnl0ZSgpOiBieXRlCnJldHVybkJ5dGU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU2NQoJLy8gcmV0dXJuIHJhd0J5dGUodHJ1ZSk7CglpbnQgMQoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkJ5dGUoKWJ5dGUiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVybkJ5dGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestReturnDynamicArray.approval.teal b/tests/contracts/artifacts/ABITestReturnDynamicArray.approval.teal index eef24ec12..ad833c407 100644 --- a/tests/contracts/artifacts/ABITestReturnDynamicArray.approval.teal +++ b/tests/contracts/artifacts/ABITestReturnDynamicArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestReturnDynamicArray.arc32.json b/tests/contracts/artifacts/ABITestReturnDynamicArray.arc32.json index 22f627c61..29044b461 100644 --- a/tests/contracts/artifacts/ABITestReturnDynamicArray.arc32.json +++ b/tests/contracts/artifacts/ABITestReturnDynamicArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKXVpbnQ2NFtdCiphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgcmV0dXJuRHluYW1pY0FycmF5CglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKTogdWludDY0W10KcmV0dXJuRHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzU2CgkvLyBhOiB1aW50NjRbXSA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM1NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuRHluYW1pY0FycmF5KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKXVpbnQ2NFtdCiphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgcmV0dXJuRHluYW1pY0FycmF5CglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKTogdWludDY0W10KcmV0dXJuRHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzU2CgkvLyBhOiB1aW50NjRbXSA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM1NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuRHluYW1pY0FycmF5KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestReturnDynamicArray.arc56_draft.json b/tests/contracts/artifacts/ABITestReturnDynamicArray.arc56_draft.json index 3db4661f8..e3476d5c3 100644 --- a/tests/contracts/artifacts/ABITestReturnDynamicArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestReturnDynamicArray.arc56_draft.json @@ -60,385 +60,388 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 354, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 354, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 354, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 354, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 354, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 354, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 354, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 354, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 354, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 355, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 355, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 355, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 355, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 355, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 355, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 355, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 355, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 38, - "source": 355, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 355, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 355, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 355, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 355, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 355, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 355, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 50, - "source": 355, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 54, - "source": 356, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 55, - "source": 356, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 59, - "source": 357, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 62, - "source": 355, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 63, - "source": 355, - "pc": [ - 101 - ] - }, - { - "teal": 66, - "source": 354, - "pc": [ - 102 - ] - }, - { - "teal": 67, - "source": 354, - "pc": [ - 103 - ] - }, - { - "teal": 70, - "source": 354, - "pc": [ - 104, - 105, - 106, - 107, - 108, - 109 - ] - }, - { - "teal": 71, - "source": 354, - "pc": [ - 110, - 111, - 112 - ] - }, - { - "teal": 72, - "source": 354, - "pc": [ - 113, - 114, - 115, - 116 - ] - }, - { - "teal": 75, - "source": 354, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 117 - ] - }, - { - "teal": 78, - "source": 354, - "pc": [ - 118, - 119, - 120, - 121, - 122, - 123 - ] - }, - { - "teal": 79, - "source": 354, - "pc": [ - 124, - 125, - 126 - ] - }, - { - "teal": 80, - "source": 354, - "pc": [ - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 83, - "source": 354, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 131 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 354, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 354, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 354, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 354, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 354, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 354, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 354, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 354, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 354, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 355, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 355, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 355, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 355, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 355, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 355, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 355, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 355, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 38, + "source": 355, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 355, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 355, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 355, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 355, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 355, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 355, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 50, + "source": 355, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 54, + "source": 356, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 55, + "source": 356, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 59, + "source": 357, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 62, + "source": 355, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 63, + "source": 355, + "pc": [ + 101 + ] + }, + { + "teal": 66, + "source": 354, + "pc": [ + 102 + ] + }, + { + "teal": 67, + "source": 354, + "pc": [ + 103 + ] + }, + { + "teal": 70, + "source": 354, + "pc": [ + 104, + 105, + 106, + 107, + 108, + 109 + ] + }, + { + "teal": 71, + "source": 354, + "pc": [ + 110, + 111, + 112 + ] + }, + { + "teal": 72, + "source": 354, + "pc": [ + 113, + 114, + 115, + 116 + ] + }, + { + "teal": 75, + "source": 354, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 117 + ] + }, + { + "teal": 78, + "source": 354, + "pc": [ + 118, + 119, + 120, + 121, + 122, + 123 + ] + }, + { + "teal": 79, + "source": 354, + "pc": [ + 124, + 125, + 126 + ] + }, + { + "teal": 80, + "source": 354, + "pc": [ + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 83, + "source": 354, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 131 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKXVpbnQ2NFtdCiphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgcmV0dXJuRHluYW1pY0FycmF5CglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKTogdWludDY0W10KcmV0dXJuRHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzU2CgkvLyBhOiB1aW50NjRbXSA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM1NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuRHluYW1pY0FycmF5KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKXVpbnQ2NFtdCiphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkR5bmFtaWNBcnJheSgpdWludDY0W10KCWNhbGxzdWIgcmV0dXJuRHluYW1pY0FycmF5CglkdXAKCWxlbgoJaW50IDgKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXkoKTogdWludDY0W10KcmV0dXJuRHluYW1pY0FycmF5OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzU2CgkvLyBhOiB1aW50NjRbXSA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM1NwoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuRHluYW1pY0FycmF5KCl1aW50NjRbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.approval.teal b/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.approval.teal index 7dff7d37c..cedcffc55 100644 --- a/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc32.json b/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc32.json index 17c56fe61..556922296 100644 --- a/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9yZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlKCl1aW50OFtdCgljYWxsc3ViIHJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKTogdWludDw4PltdCnJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5OAoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIFs1LCA2XSwgWzcsIDhdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwOSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwNzA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDAKCS8vIHJldHVybiBhWzRdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZSgpdWludDhbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9yZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlKCl1aW50OFtdCgljYWxsc3ViIHJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKTogdWludDw4PltdCnJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5OAoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIFs1LCA2XSwgWzcsIDhdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwOSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwNzA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDAKCS8vIHJldHVybiBhWzRdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZSgpdWludDhbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc56_draft.json index 1d3e2e80b..6f6dfa440 100644 --- a/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestReturnDynamicArrayFromTuple.arc56_draft.json @@ -60,825 +60,828 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 396, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 396, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 396, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 396, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 396, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 396, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 396, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 396, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 396, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 397, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 397, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 397, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 397, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 397, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 397, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 36, - "source": 397, - "pc": [ - 58 - ] - }, - { - "teal": 37, - "source": 397, - "pc": [ - 59 - ] - }, - { - "teal": 38, - "source": 397, - "pc": [ - 60 - ] - }, - { - "teal": 39, - "source": 397, - "pc": [ - 61 - ] - }, - { - "teal": 40, - "source": 397, - "pc": [ - 62 - ] - }, - { - "teal": 41, - "source": 397, - "pc": [ - 63 - ] - }, - { - "teal": 45, - "source": 397, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 48, - "source": 397, - "pc": [ - 67 - ] - }, - { - "teal": 52, - "source": 398, - "pc": [ - 68 - ] - }, - { - "teal": 53, - "source": 398, - "pc": [ - 69 - ] - }, - { - "teal": 54, - "source": 398, - "pc": [ - 70, - 71, - 72, - 73 - ] - }, - { - "teal": 55, - "source": 398, - "pc": [ - 74, - 75, - 76 - ] - }, - { - "teal": 56, - "source": 398, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 57, - "source": 398, - "pc": [ - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 58, - "source": 398, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 59, - "source": 398, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 60, - "source": 398, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 61, - "source": 398, - "pc": [ - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 62, - "source": 398, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 63, - "source": 398, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 64, - "source": 398, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 65, - "source": 398, - "pc": [ - 116 - ] - }, - { - "teal": 66, - "source": 398, - "pc": [ - 117 - ] - }, - { - "teal": 67, - "source": 398, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 71, - "source": 400, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 72, - "source": 400, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 73, - "source": 400, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 74, - "source": 400, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 75, - "source": 400, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 76, - "source": 400, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 77, - "source": 400, - "pc": [ - 132 - ] - }, - { - "teal": 78, - "source": 400, - "pc": [ - 133 - ] - }, - { - "teal": 79, - "source": 400, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 80, - "source": 400, - "pc": [ - 136 - ] - }, - { - "teal": 81, - "source": 400, - "pc": [ - 137 - ] - }, - { - "teal": 82, - "source": 400, - "pc": [ - 138 - ] - }, - { - "teal": 83, - "source": 400, - "pc": [ - 139 - ] - }, - { - "teal": 84, - "source": 400, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 85, - "source": 400, - "pc": [ - 142 - ] - }, - { - "teal": 86, - "source": 400, - "pc": [ - 143 - ] - }, - { - "teal": 87, - "source": 400, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 90, - "source": 397, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 91, - "source": 397, - "pc": [ - 149 - ] - }, - { - "teal": 94, - "source": 396, - "pc": [ - 150 - ] - }, - { - "teal": 95, - "source": 396, - "pc": [ - 151 - ] - }, - { - "teal": 98, - "source": 396, - "pc": [ - 152, - 153, - 154, - 155, - 156, - 157 - ] - }, - { - "teal": 99, - "source": 396, - "pc": [ - 158, - 159, - 160 - ] - }, - { - "teal": 100, - "source": 396, - "pc": [ - 161, - 162, - 163, - 164 - ] - }, - { - "teal": 103, - "source": 396, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 165 - ] - }, - { - "teal": 106, - "source": 396, - "pc": [ - 166, - 167, - 168, - 169, - 170, - 171 - ] - }, - { - "teal": 107, - "source": 396, - "pc": [ - 172, - 173, - 174 - ] - }, - { - "teal": 108, - "source": 396, - "pc": [ - 175, - 176, - 177, - 178 - ] - }, - { - "teal": 111, - "source": 396, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 179 - ] - }, - { - "teal": 114, - "source": 396, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 115, - "source": 396, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 116, - "source": 396, - "pc": [ - 185, - 186 - ] - }, - { - "teal": 117, - "source": 396, - "pc": [ - 187 - ] - }, - { - "teal": 118, - "source": 396, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 119, - "source": 396, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 120, - "source": 396, - "pc": [ - 192 - ] - }, - { - "teal": 123, - "source": 396, - "pc": [ - 193, - 194, - 195 - ] - }, - { - "teal": 124, - "source": 396, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 125, - "source": 396, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 126, - "source": 396, - "pc": [ - 200 - ] - }, - { - "teal": 127, - "source": 396, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 128, - "source": 396, - "pc": [ - 203, - 204 - ] - }, - { - "teal": 129, - "source": 396, - "pc": [ - 205 - ] - }, - { - "teal": 130, - "source": 396, - "pc": [ - 206 - ] - }, - { - "teal": 131, - "source": 396, - "pc": [ - 207, - 208 - ] - }, - { - "teal": 132, - "source": 396, - "pc": [ - 209 - ] - }, - { - "teal": 133, - "source": 396, - "pc": [ - 210 - ] - }, - { - "teal": 134, - "source": 396, - "pc": [ - 211 - ] - }, - { - "teal": 135, - "source": 396, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 136, - "source": 396, - "pc": [ - 215, - 216 - ] - }, - { - "teal": 137, - "source": 396, - "pc": [ - 217, - 218 - ] - }, - { - "teal": 138, - "source": 396, - "pc": [ - 219 - ] - }, - { - "teal": 139, - "source": 396, - "pc": [ - 220 - ] - }, - { - "teal": 140, - "source": 396, - "pc": [ - 221, - 222 - ] - }, - { - "teal": 141, - "source": 396, - "pc": [ - 223, - 224 - ] - }, - { - "teal": 142, - "source": 396, - "pc": [ - 225, - 226 - ] - }, - { - "teal": 143, - "source": 396, - "pc": [ - 227, - 228 - ] - }, - { - "teal": 144, - "source": 396, - "pc": [ - 229 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 396, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 396, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 396, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 396, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 396, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 396, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 396, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 396, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 396, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 397, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 397, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 397, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 397, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 397, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 397, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 36, + "source": 397, + "pc": [ + 58 + ] + }, + { + "teal": 37, + "source": 397, + "pc": [ + 59 + ] + }, + { + "teal": 38, + "source": 397, + "pc": [ + 60 + ] + }, + { + "teal": 39, + "source": 397, + "pc": [ + 61 + ] + }, + { + "teal": 40, + "source": 397, + "pc": [ + 62 + ] + }, + { + "teal": 41, + "source": 397, + "pc": [ + 63 + ] + }, + { + "teal": 45, + "source": 397, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 48, + "source": 397, + "pc": [ + 67 + ] + }, + { + "teal": 52, + "source": 398, + "pc": [ + 68 + ] + }, + { + "teal": 53, + "source": 398, + "pc": [ + 69 + ] + }, + { + "teal": 54, + "source": 398, + "pc": [ + 70, + 71, + 72, + 73 + ] + }, + { + "teal": 55, + "source": 398, + "pc": [ + 74, + 75, + 76 + ] + }, + { + "teal": 56, + "source": 398, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 57, + "source": 398, + "pc": [ + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 58, + "source": 398, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 59, + "source": 398, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 60, + "source": 398, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 61, + "source": 398, + "pc": [ + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 62, + "source": 398, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 63, + "source": 398, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 64, + "source": 398, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 65, + "source": 398, + "pc": [ + 116 + ] + }, + { + "teal": 66, + "source": 398, + "pc": [ + 117 + ] + }, + { + "teal": 67, + "source": 398, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 71, + "source": 400, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 72, + "source": 400, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 73, + "source": 400, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 74, + "source": 400, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 75, + "source": 400, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 76, + "source": 400, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 77, + "source": 400, + "pc": [ + 132 + ] + }, + { + "teal": 78, + "source": 400, + "pc": [ + 133 + ] + }, + { + "teal": 79, + "source": 400, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 80, + "source": 400, + "pc": [ + 136 + ] + }, + { + "teal": 81, + "source": 400, + "pc": [ + 137 + ] + }, + { + "teal": 82, + "source": 400, + "pc": [ + 138 + ] + }, + { + "teal": 83, + "source": 400, + "pc": [ + 139 + ] + }, + { + "teal": 84, + "source": 400, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 85, + "source": 400, + "pc": [ + 142 + ] + }, + { + "teal": 86, + "source": 400, + "pc": [ + 143 + ] + }, + { + "teal": 87, + "source": 400, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 90, + "source": 397, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 91, + "source": 397, + "pc": [ + 149 + ] + }, + { + "teal": 94, + "source": 396, + "pc": [ + 150 + ] + }, + { + "teal": 95, + "source": 396, + "pc": [ + 151 + ] + }, + { + "teal": 98, + "source": 396, + "pc": [ + 152, + 153, + 154, + 155, + 156, + 157 + ] + }, + { + "teal": 99, + "source": 396, + "pc": [ + 158, + 159, + 160 + ] + }, + { + "teal": 100, + "source": 396, + "pc": [ + 161, + 162, + 163, + 164 + ] + }, + { + "teal": 103, + "source": 396, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 165 + ] + }, + { + "teal": 106, + "source": 396, + "pc": [ + 166, + 167, + 168, + 169, + 170, + 171 + ] + }, + { + "teal": 107, + "source": 396, + "pc": [ + 172, + 173, + 174 + ] + }, + { + "teal": 108, + "source": 396, + "pc": [ + 175, + 176, + 177, + 178 + ] + }, + { + "teal": 111, + "source": 396, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 179 + ] + }, + { + "teal": 114, + "source": 396, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 115, + "source": 396, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 116, + "source": 396, + "pc": [ + 185, + 186 + ] + }, + { + "teal": 117, + "source": 396, + "pc": [ + 187 + ] + }, + { + "teal": 118, + "source": 396, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 119, + "source": 396, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 120, + "source": 396, + "pc": [ + 192 + ] + }, + { + "teal": 123, + "source": 396, + "pc": [ + 193, + 194, + 195 + ] + }, + { + "teal": 124, + "source": 396, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 125, + "source": 396, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 126, + "source": 396, + "pc": [ + 200 + ] + }, + { + "teal": 127, + "source": 396, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 128, + "source": 396, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 129, + "source": 396, + "pc": [ + 205 + ] + }, + { + "teal": 130, + "source": 396, + "pc": [ + 206 + ] + }, + { + "teal": 131, + "source": 396, + "pc": [ + 207, + 208 + ] + }, + { + "teal": 132, + "source": 396, + "pc": [ + 209 + ] + }, + { + "teal": 133, + "source": 396, + "pc": [ + 210 + ] + }, + { + "teal": 134, + "source": 396, + "pc": [ + 211 + ] + }, + { + "teal": 135, + "source": 396, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 136, + "source": 396, + "pc": [ + 215, + 216 + ] + }, + { + "teal": 137, + "source": 396, + "pc": [ + 217, + 218 + ] + }, + { + "teal": 138, + "source": 396, + "pc": [ + 219 + ] + }, + { + "teal": 139, + "source": 396, + "pc": [ + 220 + ] + }, + { + "teal": 140, + "source": 396, + "pc": [ + 221, + 222 + ] + }, + { + "teal": 141, + "source": 396, + "pc": [ + 223, + 224 + ] + }, + { + "teal": 142, + "source": 396, + "pc": [ + 225, + 226 + ] + }, + { + "teal": 143, + "source": 396, + "pc": [ + 227, + 228 + ] + }, + { + "teal": 144, + "source": 396, + "pc": [ + 229 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9yZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlKCl1aW50OFtdCgljYWxsc3ViIHJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKTogdWludDw4PltdCnJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5OAoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIFs1LCA2XSwgWzcsIDhdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwOSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwNzA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDAKCS8vIHJldHVybiBhWzRdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZSgpdWludDhbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKXVpbnQ4W10KKmFiaV9yb3V0ZV9yZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlKCl1aW50OFtdCgljYWxsc3ViIHJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5EeW5hbWljQXJyYXlGcm9tVHVwbGUoKTogdWludDw4PltdCnJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5OAoJLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFsxLCAyLCBbMywgNF0sIFs1LCA2XSwgWzcsIDhdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwOSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwNzA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDAKCS8vIHJldHVybiBhWzRdOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVybkR5bmFtaWNBcnJheUZyb21UdXBsZSgpdWludDhbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuRHluYW1pY0FycmF5RnJvbVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestReturnStaticArray.approval.teal b/tests/contracts/artifacts/ABITestReturnStaticArray.approval.teal index 02382dd50..ea7934655 100644 --- a/tests/contracts/artifacts/ABITestReturnStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestReturnStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestReturnStaticArray.arc32.json b/tests/contracts/artifacts/ABITestReturnStaticArray.arc32.json index 544460f5c..fb048f14d 100644 --- a/tests/contracts/artifacts/ABITestReturnStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestReturnStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5TdGF0aWNBcnJheSgpdWludDY0WzNdCiphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXQoJY2FsbHN1YiByZXR1cm5TdGF0aWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblN0YXRpY0FycmF5KCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KcmV0dXJuU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxOQoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5TdGF0aWNBcnJheSgpdWludDY0WzNdCiphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXQoJY2FsbHN1YiByZXR1cm5TdGF0aWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblN0YXRpY0FycmF5KCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KcmV0dXJuU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxOQoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestReturnStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestReturnStaticArray.arc56_draft.json index 85318673d..71f36109e 100644 --- a/tests/contracts/artifacts/ABITestReturnStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestReturnStaticArray.arc56_draft.json @@ -60,326 +60,329 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 17, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 17, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 17, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 17, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 17, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 17, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 17, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 17, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 17, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 18, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 18, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 18, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 18, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 18, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 18, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 18, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 18, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 19, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 47, - "source": 19, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 51, - "source": 21, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 54, - "source": 18, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 55, - "source": 18, - "pc": [ - 90 - ] - }, - { - "teal": 58, - "source": 17, - "pc": [ - 91 - ] - }, - { - "teal": 59, - "source": 17, - "pc": [ - 92 - ] - }, - { - "teal": 62, - "source": 17, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 63, - "source": 17, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 64, - "source": 17, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 67, - "source": 17, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 106 - ] - }, - { - "teal": 70, - "source": 17, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 71, - "source": 17, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 72, - "source": 17, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 75, - "source": 17, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 120 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 17, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 17, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 17, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 17, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 17, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 17, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 17, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 17, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 17, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 18, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 18, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 18, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 18, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 18, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 18, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 18, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 18, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 19, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 47, + "source": 19, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 51, + "source": 21, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 54, + "source": 18, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 55, + "source": 18, + "pc": [ + 90 + ] + }, + { + "teal": 58, + "source": 17, + "pc": [ + 91 + ] + }, + { + "teal": 59, + "source": 17, + "pc": [ + 92 + ] + }, + { + "teal": 62, + "source": 17, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 63, + "source": 17, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 64, + "source": 17, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 67, + "source": 17, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 106 + ] + }, + { + "teal": 70, + "source": 17, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 71, + "source": 17, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 72, + "source": 17, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 75, + "source": 17, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 120 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5TdGF0aWNBcnJheSgpdWludDY0WzNdCiphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXQoJY2FsbHN1YiByZXR1cm5TdGF0aWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblN0YXRpY0FycmF5KCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KcmV0dXJuU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxOQoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5TdGF0aWNBcnJheSgpdWludDY0WzNdCiphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXQoJY2FsbHN1YiByZXR1cm5TdGF0aWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblN0YXRpY0FycmF5KCk6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KcmV0dXJuU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxOQoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjEKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuU3RhdGljQXJyYXkoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcmV0dXJuU3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestReturnTuple.approval.teal b/tests/contracts/artifacts/ABITestReturnTuple.approval.teal index 50d16d1da..9cacafbb5 100644 --- a/tests/contracts/artifacts/ABITestReturnTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestReturnTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestReturnTuple.arc32.json b/tests/contracts/artifacts/ABITestReturnTuple.arc32.json index 2c45ff858..55966f45d 100644 --- a/tests/contracts/artifacts/ABITestReturnTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestReturnTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZSgpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoqYWJpX3JvdXRlX3JldHVyblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVyblR1cGxlKCkodWludDY0LHVpbnQxNix1aW50NjQpCgljYWxsc3ViIHJldHVyblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuVHVwbGUoKTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCnJldHVyblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM1CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuVHVwbGUoKSh1aW50NjQsdWludDE2LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZSgpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoqYWJpX3JvdXRlX3JldHVyblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVyblR1cGxlKCkodWludDY0LHVpbnQxNix1aW50NjQpCgljYWxsc3ViIHJldHVyblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuVHVwbGUoKTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCnJldHVyblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM1CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuVHVwbGUoKSh1aW50NjQsdWludDE2LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestReturnTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestReturnTuple.arc56_draft.json index 0d5e60585..917457caf 100644 --- a/tests/contracts/artifacts/ABITestReturnTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestReturnTuple.arc56_draft.json @@ -60,320 +60,323 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 333, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 333, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 333, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 333, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 333, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 333, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 333, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 333, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 333, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 334, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 334, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 334, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 334, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 334, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 334, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 334, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 334, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 335, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 47, - "source": 335, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 51, - "source": 336, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 54, - "source": 334, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 55, - "source": 334, - "pc": [ - 84 - ] - }, - { - "teal": 58, - "source": 333, - "pc": [ - 85 - ] - }, - { - "teal": 59, - "source": 333, - "pc": [ - 86 - ] - }, - { - "teal": 62, - "source": 333, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 63, - "source": 333, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 64, - "source": 333, - "pc": [ - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 67, - "source": 333, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 100 - ] - }, - { - "teal": 70, - "source": 333, - "pc": [ - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 71, - "source": 333, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 72, - "source": 333, - "pc": [ - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 75, - "source": 333, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 114 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 333, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 333, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 333, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 333, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 333, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 333, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 333, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 333, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 333, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 334, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 334, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 334, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 334, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 334, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 334, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 334, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 334, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 335, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 47, + "source": 335, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 51, + "source": 336, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 54, + "source": 334, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 55, + "source": 334, + "pc": [ + 84 + ] + }, + { + "teal": 58, + "source": 333, + "pc": [ + 85 + ] + }, + { + "teal": 59, + "source": 333, + "pc": [ + 86 + ] + }, + { + "teal": 62, + "source": 333, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 63, + "source": 333, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 64, + "source": 333, + "pc": [ + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 67, + "source": 333, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 100 + ] + }, + { + "teal": 70, + "source": 333, + "pc": [ + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 71, + "source": 333, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 72, + "source": 333, + "pc": [ + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 75, + "source": 333, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 114 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZSgpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoqYWJpX3JvdXRlX3JldHVyblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVyblR1cGxlKCkodWludDY0LHVpbnQxNix1aW50NjQpCgljYWxsc3ViIHJldHVyblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuVHVwbGUoKTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCnJldHVyblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM1CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuVHVwbGUoKSh1aW50NjQsdWludDE2LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZSgpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoqYWJpX3JvdXRlX3JldHVyblR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVyblR1cGxlKCkodWludDY0LHVpbnQxNix1aW50NjQpCgljYWxsc3ViIHJldHVyblR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuVHVwbGUoKTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCnJldHVyblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM1CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NF0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MzM2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAicmV0dXJuVHVwbGUoKSh1aW50NjQsdWludDE2LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.approval.teal b/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.approval.teal index 6de52b0fe..c5a037336 100644 --- a/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.approval.teal +++ b/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc32.json b/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc32.json index dc68dc0b9..78fac2a74 100644 --- a/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc32.json +++ b/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheSgpKHVpbnQ2NCx1aW50MTYsdWludDY0W10sdWludDE2W10pCiphYmlfcm91dGVfcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXkoKSh1aW50NjQsdWludDE2LHVpbnQ2NFtdLHVpbnQxNltdKQoJY2FsbHN1YiByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCk6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0W10sIHVpbnQxNltdXQpyZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MAoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dID0gWzEsIDIsIFszLCA0XSwgWzUsIDZdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwZSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NFtdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCkodWludDY0LHVpbnQxNix1aW50NjRbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlV2l0aER5YW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheSgpKHVpbnQ2NCx1aW50MTYsdWludDY0W10sdWludDE2W10pCiphYmlfcm91dGVfcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXkoKSh1aW50NjQsdWludDE2LHVpbnQ2NFtdLHVpbnQxNltdKQoJY2FsbHN1YiByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCk6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0W10sIHVpbnQxNltdXQpyZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MAoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dID0gWzEsIDIsIFszLCA0XSwgWzUsIDZdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwZSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NFtdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCkodWludDY0LHVpbnQxNix1aW50NjRbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlV2l0aER5YW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc56_draft.json b/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc56_draft.json index 47ca78d6a..9d5aefc88 100644 --- a/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestReturnTupleWithDyamicArray.arc56_draft.json @@ -60,660 +60,663 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 388, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 388, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 388, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 388, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 388, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 388, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 388, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 388, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 388, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 389, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 389, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 389, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 389, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 389, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 389, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 389, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 42, - "source": 389, - "pc": [ - 59 - ] - }, - { - "teal": 46, - "source": 390, - "pc": [ - 60 - ] - }, - { - "teal": 47, - "source": 390, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 390, - "pc": [ - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 49, - "source": 390, - "pc": [ - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 50, - "source": 390, - "pc": [ - 76, - 77, - 78 - ] - }, - { - "teal": 51, - "source": 390, - "pc": [ - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 52, - "source": 390, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 53, - "source": 390, - "pc": [ - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 54, - "source": 390, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 55, - "source": 390, - "pc": [ - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116 - ] - }, - { - "teal": 56, - "source": 390, - "pc": [ - 117, - 118, - 119 - ] - }, - { - "teal": 57, - "source": 390, - "pc": [ - 120 - ] - }, - { - "teal": 58, - "source": 390, - "pc": [ - 121 - ] - }, - { - "teal": 59, - "source": 390, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 63, - "source": 392, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 66, - "source": 389, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 67, - "source": 389, - "pc": [ - 128 - ] - }, - { - "teal": 70, - "source": 388, - "pc": [ - 129 - ] - }, - { - "teal": 71, - "source": 388, - "pc": [ - 130 - ] - }, - { - "teal": 74, - "source": 388, - "pc": [ - 131, - 132, - 133, - 134, - 135, - 136 - ] - }, - { - "teal": 75, - "source": 388, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 76, - "source": 388, - "pc": [ - 140, - 141, - 142, - 143 - ] - }, - { - "teal": 79, - "source": 388, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 144 - ] - }, - { - "teal": 82, - "source": 388, - "pc": [ - 145, - 146, - 147, - 148, - 149, - 150 - ] - }, - { - "teal": 83, - "source": 388, - "pc": [ - 151, - 152, - 153 - ] - }, - { - "teal": 84, - "source": 388, - "pc": [ - 154, - 155, - 156, - 157 - ] - }, - { - "teal": 87, - "source": 388, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 158 - ] - }, - { - "teal": 90, - "source": 388, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 91, - "source": 388, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 92, - "source": 388, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 93, - "source": 388, - "pc": [ - 166 - ] - }, - { - "teal": 94, - "source": 388, - "pc": [ - 167, - 168 - ] - }, - { - "teal": 95, - "source": 388, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 96, - "source": 388, - "pc": [ - 171 - ] - }, - { - "teal": 99, - "source": 388, - "pc": [ - 172, - 173, - 174 - ] - }, - { - "teal": 100, - "source": 388, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 101, - "source": 388, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 102, - "source": 388, - "pc": [ - 179 - ] - }, - { - "teal": 103, - "source": 388, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 104, - "source": 388, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 105, - "source": 388, - "pc": [ - 184 - ] - }, - { - "teal": 106, - "source": 388, - "pc": [ - 185 - ] - }, - { - "teal": 107, - "source": 388, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 108, - "source": 388, - "pc": [ - 188 - ] - }, - { - "teal": 109, - "source": 388, - "pc": [ - 189 - ] - }, - { - "teal": 110, - "source": 388, - "pc": [ - 190 - ] - }, - { - "teal": 111, - "source": 388, - "pc": [ - 191, - 192, - 193 - ] - }, - { - "teal": 112, - "source": 388, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 113, - "source": 388, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 114, - "source": 388, - "pc": [ - 198 - ] - }, - { - "teal": 115, - "source": 388, - "pc": [ - 199 - ] - }, - { - "teal": 116, - "source": 388, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 117, - "source": 388, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 118, - "source": 388, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 119, - "source": 388, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 120, - "source": 388, - "pc": [ - 208 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 388, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 388, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 388, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 388, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 388, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 388, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 388, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 388, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 388, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 389, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 389, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 389, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 389, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 389, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 389, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 389, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 42, + "source": 389, + "pc": [ + 59 + ] + }, + { + "teal": 46, + "source": 390, + "pc": [ + 60 + ] + }, + { + "teal": 47, + "source": 390, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 390, + "pc": [ + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 49, + "source": 390, + "pc": [ + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 50, + "source": 390, + "pc": [ + 76, + 77, + 78 + ] + }, + { + "teal": 51, + "source": 390, + "pc": [ + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 52, + "source": 390, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 53, + "source": 390, + "pc": [ + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 54, + "source": 390, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 55, + "source": 390, + "pc": [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116 + ] + }, + { + "teal": 56, + "source": 390, + "pc": [ + 117, + 118, + 119 + ] + }, + { + "teal": 57, + "source": 390, + "pc": [ + 120 + ] + }, + { + "teal": 58, + "source": 390, + "pc": [ + 121 + ] + }, + { + "teal": 59, + "source": 390, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 63, + "source": 392, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 66, + "source": 389, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 67, + "source": 389, + "pc": [ + 128 + ] + }, + { + "teal": 70, + "source": 388, + "pc": [ + 129 + ] + }, + { + "teal": 71, + "source": 388, + "pc": [ + 130 + ] + }, + { + "teal": 74, + "source": 388, + "pc": [ + 131, + 132, + 133, + 134, + 135, + 136 + ] + }, + { + "teal": 75, + "source": 388, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 76, + "source": 388, + "pc": [ + 140, + 141, + 142, + 143 + ] + }, + { + "teal": 79, + "source": 388, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 144 + ] + }, + { + "teal": 82, + "source": 388, + "pc": [ + 145, + 146, + 147, + 148, + 149, + 150 + ] + }, + { + "teal": 83, + "source": 388, + "pc": [ + 151, + 152, + 153 + ] + }, + { + "teal": 84, + "source": 388, + "pc": [ + 154, + 155, + 156, + 157 + ] + }, + { + "teal": 87, + "source": 388, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 158 + ] + }, + { + "teal": 90, + "source": 388, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 91, + "source": 388, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 92, + "source": 388, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 93, + "source": 388, + "pc": [ + 166 + ] + }, + { + "teal": 94, + "source": 388, + "pc": [ + 167, + 168 + ] + }, + { + "teal": 95, + "source": 388, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 96, + "source": 388, + "pc": [ + 171 + ] + }, + { + "teal": 99, + "source": 388, + "pc": [ + 172, + 173, + 174 + ] + }, + { + "teal": 100, + "source": 388, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 101, + "source": 388, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 102, + "source": 388, + "pc": [ + 179 + ] + }, + { + "teal": 103, + "source": 388, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 104, + "source": 388, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 105, + "source": 388, + "pc": [ + 184 + ] + }, + { + "teal": 106, + "source": 388, + "pc": [ + 185 + ] + }, + { + "teal": 107, + "source": 388, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 108, + "source": 388, + "pc": [ + 188 + ] + }, + { + "teal": 109, + "source": 388, + "pc": [ + 189 + ] + }, + { + "teal": 110, + "source": 388, + "pc": [ + 190 + ] + }, + { + "teal": 111, + "source": 388, + "pc": [ + 191, + 192, + 193 + ] + }, + { + "teal": 112, + "source": 388, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 113, + "source": 388, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 114, + "source": 388, + "pc": [ + 198 + ] + }, + { + "teal": 115, + "source": 388, + "pc": [ + 199 + ] + }, + { + "teal": 116, + "source": 388, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 117, + "source": 388, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 118, + "source": 388, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 119, + "source": 388, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 120, + "source": 388, + "pc": [ + 208 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheSgpKHVpbnQ2NCx1aW50MTYsdWludDY0W10sdWludDE2W10pCiphYmlfcm91dGVfcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXkoKSh1aW50NjQsdWludDE2LHVpbnQ2NFtdLHVpbnQxNltdKQoJY2FsbHN1YiByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCk6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0W10sIHVpbnQxNltdXQpyZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MAoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dID0gWzEsIDIsIFszLCA0XSwgWzUsIDZdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwZSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NFtdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCkodWludDY0LHVpbnQxNix1aW50NjRbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlV2l0aER5YW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheSgpKHVpbnQ2NCx1aW50MTYsdWludDY0W10sdWludDE2W10pCiphYmlfcm91dGVfcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVHVwbGVXaXRoRHlhbWljQXJyYXkoKSh1aW50NjQsdWludDE2LHVpbnQ2NFtdLHVpbnQxNltdKQoJY2FsbHN1YiByZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCk6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0W10sIHVpbnQxNltdXQpyZXR1cm5UdXBsZVdpdGhEeWFtaWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MAoJLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dID0gWzEsIDIsIFszLCA0XSwgWzUsIDZdXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwZSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMDAwMDAwMDAwMDAwMzAwMDAwMDAwMDAwMDAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMjAwMDUwMDA2CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM5MgoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NFtdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInJldHVyblR1cGxlV2l0aER5YW1pY0FycmF5KCkodWludDY0LHVpbnQxNix1aW50NjRbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3JldHVyblR1cGxlV2l0aER5YW1pY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSetStaticArrayElement.approval.teal b/tests/contracts/artifacts/ABITestSetStaticArrayElement.approval.teal index a57dcf8b2..375bb3dc9 100644 --- a/tests/contracts/artifacts/ABITestSetStaticArrayElement.approval.teal +++ b/tests/contracts/artifacts/ABITestSetStaticArrayElement.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc32.json b/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc32.json index 149e04aad..1c6bf32e8 100644 --- a/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc32.json +++ b/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3NldFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiBzZXRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnNldFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0CgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NgoJLy8gYVsxXSA9IDIyMgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2V0U3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3NldFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiBzZXRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnNldFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0CgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NgoJLy8gYVsxXSA9IDIyMgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2V0U3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc56_draft.json b/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc56_draft.json index 4618bcb9f..d37e66e54 100644 --- a/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSetStaticArrayElement.arc56_draft.json @@ -60,389 +60,392 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 62, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 62, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 62, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 62, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 62, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 62, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 62, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 62, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 62, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 63, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 63, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 63, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 63, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 63, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 63, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 63, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 63, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 63, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 64, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 48, - "source": 64, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 52, - "source": 66, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 53, - "source": 66, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 54, - "source": 66, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 55, - "source": 66, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 59, - "source": 68, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 60, - "source": 68, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 61, - "source": 68, - "pc": [ - 108 - ] - }, - { - "teal": 64, - "source": 63, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 65, - "source": 63, - "pc": [ - 111 - ] - }, - { - "teal": 68, - "source": 62, - "pc": [ - 112 - ] - }, - { - "teal": 69, - "source": 62, - "pc": [ - 113 - ] - }, - { - "teal": 72, - "source": 62, - "pc": [ - 114, - 115, - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 73, - "source": 62, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 74, - "source": 62, - "pc": [ - 123, - 124, - 125, - 126 - ] - }, - { - "teal": 77, - "source": 62, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 127 - ] - }, - { - "teal": 80, - "source": 62, - "pc": [ - 128, - 129, - 130, - 131, - 132, - 133 - ] - }, - { - "teal": 81, - "source": 62, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 82, - "source": 62, - "pc": [ - 137, - 138, - 139, - 140 - ] - }, - { - "teal": 85, - "source": 62, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 141 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 62, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 62, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 62, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 62, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 62, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 62, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 62, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 62, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 62, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 63, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 63, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 63, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 63, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 63, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 63, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 63, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 63, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 63, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 64, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 48, + "source": 64, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 52, + "source": 66, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 53, + "source": 66, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 54, + "source": 66, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 55, + "source": 66, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 59, + "source": 68, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 60, + "source": 68, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 61, + "source": 68, + "pc": [ + 108 + ] + }, + { + "teal": 64, + "source": 63, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 65, + "source": 63, + "pc": [ + 111 + ] + }, + { + "teal": 68, + "source": 62, + "pc": [ + 112 + ] + }, + { + "teal": 69, + "source": 62, + "pc": [ + 113 + ] + }, + { + "teal": 72, + "source": 62, + "pc": [ + 114, + 115, + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 73, + "source": 62, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 74, + "source": 62, + "pc": [ + 123, + 124, + 125, + 126 + ] + }, + { + "teal": 77, + "source": 62, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 127 + ] + }, + { + "teal": 80, + "source": 62, + "pc": [ + 128, + 129, + 130, + 131, + 132, + 133 + ] + }, + { + "teal": 81, + "source": 62, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 82, + "source": 62, + "pc": [ + 137, + 138, + 139, + 140 + ] + }, + { + "teal": 85, + "source": 62, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 141 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3NldFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiBzZXRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnNldFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0CgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NgoJLy8gYVsxXSA9IDIyMgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2V0U3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3NldFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiBzZXRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzZXRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnNldFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0CgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2NgoJLy8gYVsxXSA9IDIyMgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY4CgkvLyByZXR1cm4gYVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzZXRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2V0U3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestShortTypeNotation.approval.teal b/tests/contracts/artifacts/ABITestShortTypeNotation.approval.teal index 61b60ccda..5b0708692 100644 --- a/tests/contracts/artifacts/ABITestShortTypeNotation.approval.teal +++ b/tests/contracts/artifacts/ABITestShortTypeNotation.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestShortTypeNotation.arc32.json b/tests/contracts/artifacts/ABITestShortTypeNotation.arc32.json index 25fd9ecde..0c575f78e 100644 --- a/tests/contracts/artifacts/ABITestShortTypeNotation.arc32.json +++ b/tests/contracts/artifacts/ABITestShortTypeNotation.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydFR5cGVOb3RhdGlvbigpdWludDE2CiphYmlfcm91dGVfc2hvcnRUeXBlTm90YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2hvcnRUeXBlTm90YXRpb24oKXVpbnQxNgoJY2FsbHN1YiBzaG9ydFR5cGVOb3RhdGlvbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaG9ydFR5cGVOb3RhdGlvbiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2hvcnRUeXBlTm90YXRpb24oKTogdWludDE2CnNob3J0VHlwZU5vdGF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjkyCgkvLyBhOiBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgU3RhdGljQXJyYXk8dWludDY0LCAyPiwgU3RhdGljQXJyYXk8dWludDE2LCAyPl0gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgICAgWzU1LCA2Nl0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3MDA0MgoJZnJhbWVfYnVyeSAwIC8vIGE6IFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCBTdGF0aWNBcnJheTx1aW50MTYsIDI+XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyOTgKCS8vIHJldHVybiBhWzJdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIFN0YXRpY0FycmF5PHVpbnQxNiwgMj5dCglleHRyYWN0IDIyIDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNob3J0VHlwZU5vdGF0aW9uKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Nob3J0VHlwZU5vdGF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydFR5cGVOb3RhdGlvbigpdWludDE2CiphYmlfcm91dGVfc2hvcnRUeXBlTm90YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2hvcnRUeXBlTm90YXRpb24oKXVpbnQxNgoJY2FsbHN1YiBzaG9ydFR5cGVOb3RhdGlvbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaG9ydFR5cGVOb3RhdGlvbiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2hvcnRUeXBlTm90YXRpb24oKTogdWludDE2CnNob3J0VHlwZU5vdGF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjkyCgkvLyBhOiBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgU3RhdGljQXJyYXk8dWludDY0LCAyPiwgU3RhdGljQXJyYXk8dWludDE2LCAyPl0gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgICAgWzU1LCA2Nl0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3MDA0MgoJZnJhbWVfYnVyeSAwIC8vIGE6IFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCBTdGF0aWNBcnJheTx1aW50MTYsIDI+XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyOTgKCS8vIHJldHVybiBhWzJdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIFN0YXRpY0FycmF5PHVpbnQxNiwgMj5dCglleHRyYWN0IDIyIDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNob3J0VHlwZU5vdGF0aW9uKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Nob3J0VHlwZU5vdGF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestShortTypeNotation.arc56_draft.json b/tests/contracts/artifacts/ABITestShortTypeNotation.arc56_draft.json index 69c2bc3d8..6604834ce 100644 --- a/tests/contracts/artifacts/ABITestShortTypeNotation.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestShortTypeNotation.arc56_draft.json @@ -60,395 +60,398 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 290, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 290, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 290, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 290, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 290, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 290, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 290, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 290, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 290, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 291, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 291, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 291, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 291, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 291, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 291, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 36, - "source": 291, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 291, - "errorMessage": "shortTypeNotation return value overflowed 16 bits", - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 291, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 41, - "source": 291, - "pc": [ - 59 - ] - }, - { - "teal": 42, - "source": 291, - "pc": [ - 60 - ] - }, - { - "teal": 43, - "source": 291, - "pc": [ - 61 - ] - }, - { - "teal": 44, - "source": 291, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 291, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 51, - "source": 291, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 59, - "source": 295, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 60, - "source": 292, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 64, - "source": 298, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 65, - "source": 298, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 66, - "source": 298, - "pc": [ - 101 - ] - }, - { - "teal": 69, - "source": 291, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 70, - "source": 291, - "pc": [ - 104 - ] - }, - { - "teal": 73, - "source": 290, - "pc": [ - 105 - ] - }, - { - "teal": 74, - "source": 290, - "pc": [ - 106 - ] - }, - { - "teal": 77, - "source": 290, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 78, - "source": 290, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 79, - "source": 290, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 82, - "source": 290, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 120 - ] - }, - { - "teal": 85, - "source": 290, - "pc": [ - 121, - 122, - 123, - 124, - 125, - 126 - ] - }, - { - "teal": 86, - "source": 290, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 87, - "source": 290, - "pc": [ - 130, - 131, - 132, - 133 - ] - }, - { - "teal": 90, - "source": 290, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 134 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 290, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 290, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 290, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 290, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 290, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 290, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 290, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 290, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 290, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 291, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 291, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 291, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 291, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 291, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 291, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 36, + "source": 291, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 291, + "errorMessage": "shortTypeNotation return value overflowed 16 bits", + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 291, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 41, + "source": 291, + "pc": [ + 59 + ] + }, + { + "teal": 42, + "source": 291, + "pc": [ + 60 + ] + }, + { + "teal": 43, + "source": 291, + "pc": [ + 61 + ] + }, + { + "teal": 44, + "source": 291, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 291, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 51, + "source": 291, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 59, + "source": 295, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 60, + "source": 292, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 64, + "source": 298, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 65, + "source": 298, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 66, + "source": 298, + "pc": [ + 101 + ] + }, + { + "teal": 69, + "source": 291, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 70, + "source": 291, + "pc": [ + 104 + ] + }, + { + "teal": 73, + "source": 290, + "pc": [ + 105 + ] + }, + { + "teal": 74, + "source": 290, + "pc": [ + 106 + ] + }, + { + "teal": 77, + "source": 290, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 78, + "source": 290, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 79, + "source": 290, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 82, + "source": 290, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 120 + ] + }, + { + "teal": 85, + "source": 290, + "pc": [ + 121, + 122, + 123, + 124, + 125, + 126 + ] + }, + { + "teal": 86, + "source": 290, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 87, + "source": 290, + "pc": [ + 130, + 131, + 132, + 133 + ] + }, + { + "teal": 90, + "source": 290, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 134 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydFR5cGVOb3RhdGlvbigpdWludDE2CiphYmlfcm91dGVfc2hvcnRUeXBlTm90YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2hvcnRUeXBlTm90YXRpb24oKXVpbnQxNgoJY2FsbHN1YiBzaG9ydFR5cGVOb3RhdGlvbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaG9ydFR5cGVOb3RhdGlvbiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2hvcnRUeXBlTm90YXRpb24oKTogdWludDE2CnNob3J0VHlwZU5vdGF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjkyCgkvLyBhOiBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgU3RhdGljQXJyYXk8dWludDY0LCAyPiwgU3RhdGljQXJyYXk8dWludDE2LCAyPl0gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgICAgWzU1LCA2Nl0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3MDA0MgoJZnJhbWVfYnVyeSAwIC8vIGE6IFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCBTdGF0aWNBcnJheTx1aW50MTYsIDI+XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyOTgKCS8vIHJldHVybiBhWzJdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIFN0YXRpY0FycmF5PHVpbnQxNiwgMj5dCglleHRyYWN0IDIyIDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNob3J0VHlwZU5vdGF0aW9uKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Nob3J0VHlwZU5vdGF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydFR5cGVOb3RhdGlvbigpdWludDE2CiphYmlfcm91dGVfc2hvcnRUeXBlTm90YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2hvcnRUeXBlTm90YXRpb24oKXVpbnQxNgoJY2FsbHN1YiBzaG9ydFR5cGVOb3RhdGlvbgoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaG9ydFR5cGVOb3RhdGlvbiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2hvcnRUeXBlTm90YXRpb24oKTogdWludDE2CnNob3J0VHlwZU5vdGF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjkyCgkvLyBhOiBbU3RhdGljQXJyYXk8dWludDE2LCAyPiwgU3RhdGljQXJyYXk8dWludDY0LCAyPiwgU3RhdGljQXJyYXk8dWludDE2LCAyPl0gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgICAgWzU1LCA2Nl0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMGIwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDM3MDA0MgoJZnJhbWVfYnVyeSAwIC8vIGE6IFtTdGF0aWNBcnJheTx1aW50MTYsIDI+LCBTdGF0aWNBcnJheTx1aW50NjQsIDI+LCBTdGF0aWNBcnJheTx1aW50MTYsIDI+XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyOTgKCS8vIHJldHVybiBhWzJdWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogW1N0YXRpY0FycmF5PHVpbnQxNiwgMj4sIFN0YXRpY0FycmF5PHVpbnQ2NCwgMj4sIFN0YXRpY0FycmF5PHVpbnQxNiwgMj5dCglleHRyYWN0IDIyIDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNob3J0VHlwZU5vdGF0aW9uKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3Nob3J0VHlwZU5vdGF0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.approval.teal b/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.approval.teal index 14b515620..56bc94f2c 100644 --- a/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc32.json b/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc32.json index f69874939..0b1f0ff27 100644 --- a/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHNob3J0ZW5EeW5hbWljRWxlbWVudEluVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQpzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTg2CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbCgkvLyAgICAgICBbMSwgMl0sCgkvLyAgICAgICBbMiwgM10sCgkvLyAgICAgICBbMywgNF0sCgkvLyAgICAgXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMjAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMDAyMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMzAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkyCgkvLyBhWzBdID0gWzVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA1CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA0CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkzCgkvLyBhWzFdID0gWzZdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA2CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1OTQKCS8vIGFbMl0gPSBbN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMTAwMDcKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTk2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZSgpKHVpbnQxNltdLHVpbnQxNltdLHVpbnQxNltdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCip1cGRhdGVfZHluYW1pY19oZWFkOgoJcHJvdG8gMiAwCglmcmFtZV9kaWcgLTIgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMSAvLyBkeW5hbWljIGFycmF5IG9mZnNldAoJZXh0cmFjdF91aW50MTYgLy8gZXh0cmFjdCBkeW5hbWljIGFycmF5IG9mZnNldAoJbG9hZCAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCglieiAqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlCgkrIC8vIGFkZCBkaWZmZXJlbmNlIHRvIG9mZnNldAoJYiAqZW5kX2NhbGNfbmV3X2hlYWQKCipzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2U6Cglzd2FwCgktIC8vIHN1YnRyYWN0IGRpZmZlcmVuY2UgZnJvbSBvZmZldAoKKmVuZF9jYWxjX25ld19oZWFkOgoJaXRvYiAvLyBjb252ZXJ0IHRvIGJ5dGVzCglleHRyYWN0IDYgMiAvLyBjb252ZXJ0IHRvIHVpbnQxNgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZnJhbWVfZGlnIC0xIC8vIG9mZnNldAoJc3dhcAoJcmVwbGFjZTMgLy8gdXBkYXRlIG9mZnNldAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHNob3J0ZW5EeW5hbWljRWxlbWVudEluVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQpzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTg2CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbCgkvLyAgICAgICBbMSwgMl0sCgkvLyAgICAgICBbMiwgM10sCgkvLyAgICAgICBbMywgNF0sCgkvLyAgICAgXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMjAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMDAyMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMzAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkyCgkvLyBhWzBdID0gWzVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA1CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA0CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkzCgkvLyBhWzFdID0gWzZdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA2CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1OTQKCS8vIGFbMl0gPSBbN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMTAwMDcKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTk2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZSgpKHVpbnQxNltdLHVpbnQxNltdLHVpbnQxNltdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCip1cGRhdGVfZHluYW1pY19oZWFkOgoJcHJvdG8gMiAwCglmcmFtZV9kaWcgLTIgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMSAvLyBkeW5hbWljIGFycmF5IG9mZnNldAoJZXh0cmFjdF91aW50MTYgLy8gZXh0cmFjdCBkeW5hbWljIGFycmF5IG9mZnNldAoJbG9hZCAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCglieiAqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlCgkrIC8vIGFkZCBkaWZmZXJlbmNlIHRvIG9mZnNldAoJYiAqZW5kX2NhbGNfbmV3X2hlYWQKCipzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2U6Cglzd2FwCgktIC8vIHN1YnRyYWN0IGRpZmZlcmVuY2UgZnJvbSBvZmZldAoKKmVuZF9jYWxjX25ld19oZWFkOgoJaXRvYiAvLyBjb252ZXJ0IHRvIGJ5dGVzCglleHRyYWN0IDYgMiAvLyBjb252ZXJ0IHRvIHVpbnQxNgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZnJhbWVfZGlnIC0xIC8vIG9mZnNldAoJc3dhcAoJcmVwbGFjZTMgLy8gdXBkYXRlIG9mZnNldAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc56_draft.json index 0ce936554..ff97ee865 100644 --- a/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestShortenDynamicElementInTuple.arc56_draft.json @@ -60,1911 +60,1914 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 584, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9 - ] - }, - { - "teal": 13, - "source": 584, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 14, - "source": 584, - "pc": [ - 12 - ] - }, - { - "teal": 15, - "source": 584, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 16, - "source": 584, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 584, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 584, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 584, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 584, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 585, - "pc": [ - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 31, - "source": 585, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 32, - "source": 585, - "pc": [ - 55 - ] - }, - { - "teal": 33, - "source": 585, - "pc": [ - 56 - ] - }, - { - "teal": 34, - "source": 585, - "pc": [ - 57 - ] - }, - { - "teal": 35, - "source": 585, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 585, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 42, - "source": 585, - "pc": [ - 62 - ] - }, - { - "teal": 50, - "source": 586, - "pc": [ - 63 - ] - }, - { - "teal": 51, - "source": 586, - "pc": [ - 64 - ] - }, - { - "teal": 52, - "source": 586, - "pc": [ - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 53, - "source": 587, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 54, - "source": 587, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 55, - "source": 588, - "pc": [ - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 56, - "source": 588, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 57, - "source": 589, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 58, - "source": 589, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 59, - "source": 586, - "pc": [ - 102 - ] - }, - { - "teal": 60, - "source": 586, - "pc": [ - 103 - ] - }, - { - "teal": 61, - "source": 586, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 65, - "source": 592, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 66, - "source": 592, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 67, - "source": 592, - "pc": [ - 110 - ] - }, - { - "teal": 68, - "source": 592, - "pc": [ - 111 - ] - }, - { - "teal": 69, - "source": 592, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 70, - "source": 592, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 71, - "source": 592, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 72, - "source": 592, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 73, - "source": 592, - "pc": [ - 120 - ] - }, - { - "teal": 74, - "source": 592, - "pc": [ - 121 - ] - }, - { - "teal": 75, - "source": 592, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 76, - "source": 592, - "pc": [ - 124 - ] - }, - { - "teal": 77, - "source": 592, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 78, - "source": 592, - "pc": [ - 127 - ] - }, - { - "teal": 79, - "source": 592, - "pc": [ - 128 - ] - }, - { - "teal": 80, - "source": 592, - "pc": [ - 129 - ] - }, - { - "teal": 81, - "source": 592, - "pc": [ - 130 - ] - }, - { - "teal": 82, - "source": 592, - "pc": [ - 131 - ] - }, - { - "teal": 83, - "source": 592, - "pc": [ - 132 - ] - }, - { - "teal": 84, - "source": 592, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 85, - "source": 592, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 86, - "source": 592, - "pc": [ - 137 - ] - }, - { - "teal": 87, - "source": 592, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 88, - "source": 592, - "pc": [ - 140 - ] - }, - { - "teal": 89, - "source": 592, - "pc": [ - 141, - 142, - 143, - 144, - 145, - 146 - ] - }, - { - "teal": 90, - "source": 592, - "pc": [ - 147 - ] - }, - { - "teal": 91, - "source": 592, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 92, - "source": 592, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 93, - "source": 592, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 94, - "source": 592, - "pc": [ - 154, - 155 - ] - }, - { - "teal": 95, - "source": 592, - "pc": [ - 156 - ] - }, - { - "teal": 96, - "source": 592, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 97, - "source": 592, - "pc": [ - 159 - ] - }, - { - "teal": 98, - "source": 592, - "pc": [ - 160 - ] - }, - { - "teal": 99, - "source": 592, - "pc": [ - 161 - ] - }, - { - "teal": 100, - "source": 592, - "pc": [ - 162 - ] - }, - { - "teal": 101, - "source": 592, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 102, - "source": 592, - "pc": [ - 165, - 166, - 167 - ] - }, - { - "teal": 103, - "source": 592, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 104, - "source": 592, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 105, - "source": 592, - "pc": [ - 172 - ] - }, - { - "teal": 106, - "source": 592, - "pc": [ - 173 - ] - }, - { - "teal": 107, - "source": 592, - "pc": [ - 174, - 175, - 176 - ] - }, - { - "teal": 108, - "source": 592, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 109, - "source": 592, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 110, - "source": 592, - "pc": [ - 181 - ] - }, - { - "teal": 111, - "source": 592, - "pc": [ - 182 - ] - }, - { - "teal": 112, - "source": 592, - "pc": [ - 183, - 184, - 185 - ] - }, - { - "teal": 113, - "source": 592, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 114, - "source": 592, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 118, - "source": 593, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 119, - "source": 593, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 120, - "source": 593, - "pc": [ - 194 - ] - }, - { - "teal": 121, - "source": 593, - "pc": [ - 195 - ] - }, - { - "teal": 122, - "source": 593, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 123, - "source": 593, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 124, - "source": 593, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 125, - "source": 593, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 126, - "source": 593, - "pc": [ - 204 - ] - }, - { - "teal": 127, - "source": 593, - "pc": [ - 205 - ] - }, - { - "teal": 128, - "source": 593, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 129, - "source": 593, - "pc": [ - 208 - ] - }, - { - "teal": 130, - "source": 593, - "pc": [ - 209, - 210 - ] - }, - { - "teal": 131, - "source": 593, - "pc": [ - 211 - ] - }, - { - "teal": 132, - "source": 593, - "pc": [ - 212 - ] - }, - { - "teal": 133, - "source": 593, - "pc": [ - 213 - ] - }, - { - "teal": 134, - "source": 593, - "pc": [ - 214 - ] - }, - { - "teal": 135, - "source": 593, - "pc": [ - 215 - ] - }, - { - "teal": 136, - "source": 593, - "pc": [ - 216 - ] - }, - { - "teal": 137, - "source": 593, - "pc": [ - 217, - 218 - ] - }, - { - "teal": 138, - "source": 593, - "pc": [ - 219, - 220 - ] - }, - { - "teal": 139, - "source": 593, - "pc": [ - 221 - ] - }, - { - "teal": 140, - "source": 593, - "pc": [ - 222, - 223 - ] - }, - { - "teal": 141, - "source": 593, - "pc": [ - 224 - ] - }, - { - "teal": 142, - "source": 593, - "pc": [ - 225, - 226, - 227, - 228, - 229, - 230 - ] - }, - { - "teal": 143, - "source": 593, - "pc": [ - 231 - ] - }, - { - "teal": 144, - "source": 593, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 145, - "source": 593, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 146, - "source": 593, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 147, - "source": 593, - "pc": [ - 238, - 239 - ] - }, - { - "teal": 148, - "source": 593, - "pc": [ - 240 - ] - }, - { - "teal": 149, - "source": 593, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 150, - "source": 593, - "pc": [ - 243 - ] - }, - { - "teal": 151, - "source": 593, - "pc": [ - 244 - ] - }, - { - "teal": 152, - "source": 593, - "pc": [ - 245 - ] - }, - { - "teal": 153, - "source": 593, - "pc": [ - 246 - ] - }, - { - "teal": 154, - "source": 593, - "pc": [ - 247, - 248 - ] - }, - { - "teal": 155, - "source": 593, - "pc": [ - 249, - 250, - 251 - ] - }, - { - "teal": 156, - "source": 593, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 157, - "source": 593, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 158, - "source": 593, - "pc": [ - 256 - ] - }, - { - "teal": 159, - "source": 593, - "pc": [ - 257 - ] - }, - { - "teal": 160, - "source": 593, - "pc": [ - 258, - 259, - 260 - ] - }, - { - "teal": 161, - "source": 593, - "pc": [ - 261, - 262 - ] - }, - { - "teal": 162, - "source": 593, - "pc": [ - 263, - 264 - ] - }, - { - "teal": 166, - "source": 594, - "pc": [ - 265, - 266 - ] - }, - { - "teal": 167, - "source": 594, - "pc": [ - 267, - 268 - ] - }, - { - "teal": 168, - "source": 594, - "pc": [ - 269 - ] - }, - { - "teal": 169, - "source": 594, - "pc": [ - 270 - ] - }, - { - "teal": 170, - "source": 594, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 171, - "source": 594, - "pc": [ - 273, - 274 - ] - }, - { - "teal": 172, - "source": 594, - "pc": [ - 275, - 276 - ] - }, - { - "teal": 173, - "source": 594, - "pc": [ - 277, - 278 - ] - }, - { - "teal": 174, - "source": 594, - "pc": [ - 279 - ] - }, - { - "teal": 175, - "source": 594, - "pc": [ - 280 - ] - }, - { - "teal": 176, - "source": 594, - "pc": [ - 281, - 282 - ] - }, - { - "teal": 177, - "source": 594, - "pc": [ - 283 - ] - }, - { - "teal": 178, - "source": 594, - "pc": [ - 284, - 285 - ] - }, - { - "teal": 179, - "source": 594, - "pc": [ - 286 - ] - }, - { - "teal": 180, - "source": 594, - "pc": [ - 287 - ] - }, - { - "teal": 181, - "source": 594, - "pc": [ - 288 - ] - }, - { - "teal": 182, - "source": 594, - "pc": [ - 289 - ] - }, - { - "teal": 183, - "source": 594, - "pc": [ - 290 - ] - }, - { - "teal": 184, - "source": 594, - "pc": [ - 291 - ] - }, - { - "teal": 185, - "source": 594, - "pc": [ - 292, - 293 - ] - }, - { - "teal": 186, - "source": 594, - "pc": [ - 294, - 295 - ] - }, - { - "teal": 187, - "source": 594, - "pc": [ - 296 - ] - }, - { - "teal": 188, - "source": 594, - "pc": [ - 297, - 298 - ] - }, - { - "teal": 189, - "source": 594, - "pc": [ - 299 - ] - }, - { - "teal": 190, - "source": 594, - "pc": [ - 300, - 301, - 302, - 303, - 304, - 305 - ] - }, - { - "teal": 191, - "source": 594, - "pc": [ - 306 - ] - }, - { - "teal": 192, - "source": 594, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 193, - "source": 594, - "pc": [ - 309, - 310 - ] - }, - { - "teal": 194, - "source": 594, - "pc": [ - 311, - 312 - ] - }, - { - "teal": 195, - "source": 594, - "pc": [ - 313, - 314 - ] - }, - { - "teal": 196, - "source": 594, - "pc": [ - 315 - ] - }, - { - "teal": 197, - "source": 594, - "pc": [ - 316, - 317 - ] - }, - { - "teal": 198, - "source": 594, - "pc": [ - 318 - ] - }, - { - "teal": 199, - "source": 594, - "pc": [ - 319 - ] - }, - { - "teal": 200, - "source": 594, - "pc": [ - 320 - ] - }, - { - "teal": 201, - "source": 594, - "pc": [ - 321 - ] - }, - { - "teal": 202, - "source": 594, - "pc": [ - 322, - 323 - ] - }, - { - "teal": 203, - "source": 594, - "pc": [ - 324, - 325, - 326 - ] - }, - { - "teal": 204, - "source": 594, - "pc": [ - 327, - 328 - ] - }, - { - "teal": 205, - "source": 594, - "pc": [ - 329, - 330 - ] - }, - { - "teal": 209, - "source": 596, - "pc": [ - 331, - 332 - ] - }, - { - "teal": 212, - "source": 585, - "pc": [ - 333, - 334 - ] - }, - { - "teal": 213, - "source": 585, - "pc": [ - 335 - ] - }, - { - "teal": 216, - "source": 584, - "pc": [ - 336 - ] - }, - { - "teal": 217, - "source": 584, - "pc": [ - 337 - ] - }, - { - "teal": 220, - "source": 584, - "pc": [ - 338, - 339, - 340, - 341, - 342, - 343 - ] - }, - { - "teal": 221, - "source": 584, - "pc": [ - 344, - 345, - 346 - ] - }, - { - "teal": 222, - "source": 584, - "pc": [ - 347, - 348, - 349, - 350 - ] - }, - { - "teal": 225, - "source": 584, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 351 - ] - }, - { - "teal": 228, - "source": 584, - "pc": [ - 352, - 353, - 354, - 355, - 356, - 357 - ] - }, - { - "teal": 229, - "source": 584, - "pc": [ - 358, - 359, - 360 - ] - }, - { - "teal": 230, - "source": 584, - "pc": [ - 361, - 362, - 363, - 364 - ] - }, - { - "teal": 233, - "source": 584, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 365 - ] - }, - { - "teal": 236, - "source": 584, - "pc": [ - 366, - 367, - 368 - ] - }, - { - "teal": 237, - "source": 584, - "pc": [ - 369, - 370 - ] - }, - { - "teal": 238, - "source": 584, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 239, - "source": 584, - "pc": [ - 373 - ] - }, - { - "teal": 240, - "source": 584, - "pc": [ - 374, - 375 - ] - }, - { - "teal": 241, - "source": 584, - "pc": [ - 376, - 377 - ] - }, - { - "teal": 242, - "source": 584, - "pc": [ - 378 - ] - }, - { - "teal": 243, - "source": 584, - "pc": [ - 379 - ] - }, - { - "teal": 244, - "source": 584, - "pc": [ - 380, - 381 - ] - }, - { - "teal": 245, - "source": 584, - "pc": [ - 382 - ] - }, - { - "teal": 246, - "source": 584, - "pc": [ - 383 - ] - }, - { - "teal": 247, - "source": 584, - "pc": [ - 384 - ] - }, - { - "teal": 248, - "source": 584, - "pc": [ - 385, - 386, - 387 - ] - }, - { - "teal": 249, - "source": 584, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 250, - "source": 584, - "pc": [ - 390, - 391 - ] - }, - { - "teal": 251, - "source": 584, - "pc": [ - 392 - ] - }, - { - "teal": 252, - "source": 584, - "pc": [ - 393 - ] - }, - { - "teal": 253, - "source": 584, - "pc": [ - 394, - 395 - ] - }, - { - "teal": 254, - "source": 584, - "pc": [ - 396, - 397 - ] - }, - { - "teal": 255, - "source": 584, - "pc": [ - 398, - 399 - ] - }, - { - "teal": 256, - "source": 584, - "pc": [ - 400, - 401 - ] - }, - { - "teal": 257, - "source": 584, - "pc": [ - 402 - ] - }, - { - "teal": 260, - "source": 584, - "pc": [ - 403, - 404, - 405 - ] - }, - { - "teal": 261, - "source": 584, - "pc": [ - 406, - 407 - ] - }, - { - "teal": 262, - "source": 584, - "pc": [ - 408, - 409 - ] - }, - { - "teal": 263, - "source": 584, - "pc": [ - 410, - 411 - ] - }, - { - "teal": 264, - "source": 584, - "pc": [ - 412 - ] - }, - { - "teal": 265, - "source": 584, - "pc": [ - 413, - 414 - ] - }, - { - "teal": 266, - "source": 584, - "pc": [ - 415, - 416, - 417 - ] - }, - { - "teal": 267, - "source": 584, - "pc": [ - 418 - ] - }, - { - "teal": 268, - "source": 584, - "pc": [ - 419, - 420, - 421 - ] - }, - { - "teal": 271, - "source": 584, - "pc": [ - 422 - ] - }, - { - "teal": 272, - "source": 584, - "pc": [ - 423 - ] - }, - { - "teal": 275, - "source": 584, - "pc": [ - 424 - ] - }, - { - "teal": 276, - "source": 584, - "pc": [ - 425, - 426, - 427 - ] - }, - { - "teal": 277, - "source": 584, - "pc": [ - 428, - 429 - ] - }, - { - "teal": 278, - "source": 584, - "pc": [ - 430 - ] - }, - { - "teal": 279, - "source": 584, - "pc": [ - 431, - 432 - ] - }, - { - "teal": 280, - "source": 584, - "pc": [ - 433 - ] - }, - { - "teal": 281, - "source": 584, - "pc": [ - 434 - ] - }, - { - "teal": 282, - "source": 584, - "pc": [ - 435, - 436 - ] - }, - { - "teal": 283, - "source": 584, - "pc": [ - 437 - ] - }, - { - "teal": 286, - "source": 584, - "pc": [ - 438, - 439 - ] - }, - { - "teal": 287, - "source": 584, - "pc": [ - 440 - ] - }, - { - "teal": 288, - "source": 584, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 289, - "source": 584, - "pc": [ - 443 - ] - }, - { - "teal": 290, - "source": 584, - "pc": [ - 444, - 445, - 446 - ] - }, - { - "teal": 291, - "source": 584, - "pc": [ - 447, - 448 - ] - }, - { - "teal": 292, - "source": 584, - "pc": [ - 449 - ] - }, - { - "teal": 293, - "source": 584, - "pc": [ - 450, - 451 - ] - }, - { - "teal": 294, - "source": 584, - "pc": [ - 452 - ] - }, - { - "teal": 295, - "source": 584, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 296, - "source": 584, - "pc": [ - 455, - 456, - 457 - ] - }, - { - "teal": 299, - "source": 584, - "pc": [ - 458, - 459 - ] - }, - { - "teal": 300, - "source": 584, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 301, - "source": 584, - "pc": [ - 462 - ] - }, - { - "teal": 302, - "source": 584, - "pc": [ - 463 - ] - }, - { - "teal": 303, - "source": 584, - "pc": [ - 464, - 465 - ] - }, - { - "teal": 306, - "source": 584, - "pc": [ - 466 - ] - }, - { - "teal": 307, - "source": 584, - "pc": [ - 467, - 468 - ] - }, - { - "teal": 308, - "source": 584, - "pc": [ - 469 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 584, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "teal": 13, + "source": 584, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 14, + "source": 584, + "pc": [ + 12 + ] + }, + { + "teal": 15, + "source": 584, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 16, + "source": 584, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 584, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 584, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 584, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 584, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 585, + "pc": [ + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 31, + "source": 585, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 32, + "source": 585, + "pc": [ + 55 + ] + }, + { + "teal": 33, + "source": 585, + "pc": [ + 56 + ] + }, + { + "teal": 34, + "source": 585, + "pc": [ + 57 + ] + }, + { + "teal": 35, + "source": 585, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 585, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 42, + "source": 585, + "pc": [ + 62 + ] + }, + { + "teal": 50, + "source": 586, + "pc": [ + 63 + ] + }, + { + "teal": 51, + "source": 586, + "pc": [ + 64 + ] + }, + { + "teal": 52, + "source": 586, + "pc": [ + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 53, + "source": 587, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 54, + "source": 587, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 55, + "source": 588, + "pc": [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 56, + "source": 588, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 57, + "source": 589, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 58, + "source": 589, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 59, + "source": 586, + "pc": [ + 102 + ] + }, + { + "teal": 60, + "source": 586, + "pc": [ + 103 + ] + }, + { + "teal": 61, + "source": 586, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 65, + "source": 592, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 66, + "source": 592, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 67, + "source": 592, + "pc": [ + 110 + ] + }, + { + "teal": 68, + "source": 592, + "pc": [ + 111 + ] + }, + { + "teal": 69, + "source": 592, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 70, + "source": 592, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 71, + "source": 592, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 72, + "source": 592, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 73, + "source": 592, + "pc": [ + 120 + ] + }, + { + "teal": 74, + "source": 592, + "pc": [ + 121 + ] + }, + { + "teal": 75, + "source": 592, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 76, + "source": 592, + "pc": [ + 124 + ] + }, + { + "teal": 77, + "source": 592, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 78, + "source": 592, + "pc": [ + 127 + ] + }, + { + "teal": 79, + "source": 592, + "pc": [ + 128 + ] + }, + { + "teal": 80, + "source": 592, + "pc": [ + 129 + ] + }, + { + "teal": 81, + "source": 592, + "pc": [ + 130 + ] + }, + { + "teal": 82, + "source": 592, + "pc": [ + 131 + ] + }, + { + "teal": 83, + "source": 592, + "pc": [ + 132 + ] + }, + { + "teal": 84, + "source": 592, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 85, + "source": 592, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 86, + "source": 592, + "pc": [ + 137 + ] + }, + { + "teal": 87, + "source": 592, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 88, + "source": 592, + "pc": [ + 140 + ] + }, + { + "teal": 89, + "source": 592, + "pc": [ + 141, + 142, + 143, + 144, + 145, + 146 + ] + }, + { + "teal": 90, + "source": 592, + "pc": [ + 147 + ] + }, + { + "teal": 91, + "source": 592, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 92, + "source": 592, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 93, + "source": 592, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 94, + "source": 592, + "pc": [ + 154, + 155 + ] + }, + { + "teal": 95, + "source": 592, + "pc": [ + 156 + ] + }, + { + "teal": 96, + "source": 592, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 97, + "source": 592, + "pc": [ + 159 + ] + }, + { + "teal": 98, + "source": 592, + "pc": [ + 160 + ] + }, + { + "teal": 99, + "source": 592, + "pc": [ + 161 + ] + }, + { + "teal": 100, + "source": 592, + "pc": [ + 162 + ] + }, + { + "teal": 101, + "source": 592, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 102, + "source": 592, + "pc": [ + 165, + 166, + 167 + ] + }, + { + "teal": 103, + "source": 592, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 104, + "source": 592, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 105, + "source": 592, + "pc": [ + 172 + ] + }, + { + "teal": 106, + "source": 592, + "pc": [ + 173 + ] + }, + { + "teal": 107, + "source": 592, + "pc": [ + 174, + 175, + 176 + ] + }, + { + "teal": 108, + "source": 592, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 109, + "source": 592, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 110, + "source": 592, + "pc": [ + 181 + ] + }, + { + "teal": 111, + "source": 592, + "pc": [ + 182 + ] + }, + { + "teal": 112, + "source": 592, + "pc": [ + 183, + 184, + 185 + ] + }, + { + "teal": 113, + "source": 592, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 114, + "source": 592, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 118, + "source": 593, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 119, + "source": 593, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 120, + "source": 593, + "pc": [ + 194 + ] + }, + { + "teal": 121, + "source": 593, + "pc": [ + 195 + ] + }, + { + "teal": 122, + "source": 593, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 123, + "source": 593, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 124, + "source": 593, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 125, + "source": 593, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 126, + "source": 593, + "pc": [ + 204 + ] + }, + { + "teal": 127, + "source": 593, + "pc": [ + 205 + ] + }, + { + "teal": 128, + "source": 593, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 129, + "source": 593, + "pc": [ + 208 + ] + }, + { + "teal": 130, + "source": 593, + "pc": [ + 209, + 210 + ] + }, + { + "teal": 131, + "source": 593, + "pc": [ + 211 + ] + }, + { + "teal": 132, + "source": 593, + "pc": [ + 212 + ] + }, + { + "teal": 133, + "source": 593, + "pc": [ + 213 + ] + }, + { + "teal": 134, + "source": 593, + "pc": [ + 214 + ] + }, + { + "teal": 135, + "source": 593, + "pc": [ + 215 + ] + }, + { + "teal": 136, + "source": 593, + "pc": [ + 216 + ] + }, + { + "teal": 137, + "source": 593, + "pc": [ + 217, + 218 + ] + }, + { + "teal": 138, + "source": 593, + "pc": [ + 219, + 220 + ] + }, + { + "teal": 139, + "source": 593, + "pc": [ + 221 + ] + }, + { + "teal": 140, + "source": 593, + "pc": [ + 222, + 223 + ] + }, + { + "teal": 141, + "source": 593, + "pc": [ + 224 + ] + }, + { + "teal": 142, + "source": 593, + "pc": [ + 225, + 226, + 227, + 228, + 229, + 230 + ] + }, + { + "teal": 143, + "source": 593, + "pc": [ + 231 + ] + }, + { + "teal": 144, + "source": 593, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 145, + "source": 593, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 146, + "source": 593, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 147, + "source": 593, + "pc": [ + 238, + 239 + ] + }, + { + "teal": 148, + "source": 593, + "pc": [ + 240 + ] + }, + { + "teal": 149, + "source": 593, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 150, + "source": 593, + "pc": [ + 243 + ] + }, + { + "teal": 151, + "source": 593, + "pc": [ + 244 + ] + }, + { + "teal": 152, + "source": 593, + "pc": [ + 245 + ] + }, + { + "teal": 153, + "source": 593, + "pc": [ + 246 + ] + }, + { + "teal": 154, + "source": 593, + "pc": [ + 247, + 248 + ] + }, + { + "teal": 155, + "source": 593, + "pc": [ + 249, + 250, + 251 + ] + }, + { + "teal": 156, + "source": 593, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 157, + "source": 593, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 158, + "source": 593, + "pc": [ + 256 + ] + }, + { + "teal": 159, + "source": 593, + "pc": [ + 257 + ] + }, + { + "teal": 160, + "source": 593, + "pc": [ + 258, + 259, + 260 + ] + }, + { + "teal": 161, + "source": 593, + "pc": [ + 261, + 262 + ] + }, + { + "teal": 162, + "source": 593, + "pc": [ + 263, + 264 + ] + }, + { + "teal": 166, + "source": 594, + "pc": [ + 265, + 266 + ] + }, + { + "teal": 167, + "source": 594, + "pc": [ + 267, + 268 + ] + }, + { + "teal": 168, + "source": 594, + "pc": [ + 269 + ] + }, + { + "teal": 169, + "source": 594, + "pc": [ + 270 + ] + }, + { + "teal": 170, + "source": 594, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 171, + "source": 594, + "pc": [ + 273, + 274 + ] + }, + { + "teal": 172, + "source": 594, + "pc": [ + 275, + 276 + ] + }, + { + "teal": 173, + "source": 594, + "pc": [ + 277, + 278 + ] + }, + { + "teal": 174, + "source": 594, + "pc": [ + 279 + ] + }, + { + "teal": 175, + "source": 594, + "pc": [ + 280 + ] + }, + { + "teal": 176, + "source": 594, + "pc": [ + 281, + 282 + ] + }, + { + "teal": 177, + "source": 594, + "pc": [ + 283 + ] + }, + { + "teal": 178, + "source": 594, + "pc": [ + 284, + 285 + ] + }, + { + "teal": 179, + "source": 594, + "pc": [ + 286 + ] + }, + { + "teal": 180, + "source": 594, + "pc": [ + 287 + ] + }, + { + "teal": 181, + "source": 594, + "pc": [ + 288 + ] + }, + { + "teal": 182, + "source": 594, + "pc": [ + 289 + ] + }, + { + "teal": 183, + "source": 594, + "pc": [ + 290 + ] + }, + { + "teal": 184, + "source": 594, + "pc": [ + 291 + ] + }, + { + "teal": 185, + "source": 594, + "pc": [ + 292, + 293 + ] + }, + { + "teal": 186, + "source": 594, + "pc": [ + 294, + 295 + ] + }, + { + "teal": 187, + "source": 594, + "pc": [ + 296 + ] + }, + { + "teal": 188, + "source": 594, + "pc": [ + 297, + 298 + ] + }, + { + "teal": 189, + "source": 594, + "pc": [ + 299 + ] + }, + { + "teal": 190, + "source": 594, + "pc": [ + 300, + 301, + 302, + 303, + 304, + 305 + ] + }, + { + "teal": 191, + "source": 594, + "pc": [ + 306 + ] + }, + { + "teal": 192, + "source": 594, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 193, + "source": 594, + "pc": [ + 309, + 310 + ] + }, + { + "teal": 194, + "source": 594, + "pc": [ + 311, + 312 + ] + }, + { + "teal": 195, + "source": 594, + "pc": [ + 313, + 314 + ] + }, + { + "teal": 196, + "source": 594, + "pc": [ + 315 + ] + }, + { + "teal": 197, + "source": 594, + "pc": [ + 316, + 317 + ] + }, + { + "teal": 198, + "source": 594, + "pc": [ + 318 + ] + }, + { + "teal": 199, + "source": 594, + "pc": [ + 319 + ] + }, + { + "teal": 200, + "source": 594, + "pc": [ + 320 + ] + }, + { + "teal": 201, + "source": 594, + "pc": [ + 321 + ] + }, + { + "teal": 202, + "source": 594, + "pc": [ + 322, + 323 + ] + }, + { + "teal": 203, + "source": 594, + "pc": [ + 324, + 325, + 326 + ] + }, + { + "teal": 204, + "source": 594, + "pc": [ + 327, + 328 + ] + }, + { + "teal": 205, + "source": 594, + "pc": [ + 329, + 330 + ] + }, + { + "teal": 209, + "source": 596, + "pc": [ + 331, + 332 + ] + }, + { + "teal": 212, + "source": 585, + "pc": [ + 333, + 334 + ] + }, + { + "teal": 213, + "source": 585, + "pc": [ + 335 + ] + }, + { + "teal": 216, + "source": 584, + "pc": [ + 336 + ] + }, + { + "teal": 217, + "source": 584, + "pc": [ + 337 + ] + }, + { + "teal": 220, + "source": 584, + "pc": [ + 338, + 339, + 340, + 341, + 342, + 343 + ] + }, + { + "teal": 221, + "source": 584, + "pc": [ + 344, + 345, + 346 + ] + }, + { + "teal": 222, + "source": 584, + "pc": [ + 347, + 348, + 349, + 350 + ] + }, + { + "teal": 225, + "source": 584, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 351 + ] + }, + { + "teal": 228, + "source": 584, + "pc": [ + 352, + 353, + 354, + 355, + 356, + 357 + ] + }, + { + "teal": 229, + "source": 584, + "pc": [ + 358, + 359, + 360 + ] + }, + { + "teal": 230, + "source": 584, + "pc": [ + 361, + 362, + 363, + 364 + ] + }, + { + "teal": 233, + "source": 584, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 365 + ] + }, + { + "teal": 236, + "source": 584, + "pc": [ + 366, + 367, + 368 + ] + }, + { + "teal": 237, + "source": 584, + "pc": [ + 369, + 370 + ] + }, + { + "teal": 238, + "source": 584, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 239, + "source": 584, + "pc": [ + 373 + ] + }, + { + "teal": 240, + "source": 584, + "pc": [ + 374, + 375 + ] + }, + { + "teal": 241, + "source": 584, + "pc": [ + 376, + 377 + ] + }, + { + "teal": 242, + "source": 584, + "pc": [ + 378 + ] + }, + { + "teal": 243, + "source": 584, + "pc": [ + 379 + ] + }, + { + "teal": 244, + "source": 584, + "pc": [ + 380, + 381 + ] + }, + { + "teal": 245, + "source": 584, + "pc": [ + 382 + ] + }, + { + "teal": 246, + "source": 584, + "pc": [ + 383 + ] + }, + { + "teal": 247, + "source": 584, + "pc": [ + 384 + ] + }, + { + "teal": 248, + "source": 584, + "pc": [ + 385, + 386, + 387 + ] + }, + { + "teal": 249, + "source": 584, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 250, + "source": 584, + "pc": [ + 390, + 391 + ] + }, + { + "teal": 251, + "source": 584, + "pc": [ + 392 + ] + }, + { + "teal": 252, + "source": 584, + "pc": [ + 393 + ] + }, + { + "teal": 253, + "source": 584, + "pc": [ + 394, + 395 + ] + }, + { + "teal": 254, + "source": 584, + "pc": [ + 396, + 397 + ] + }, + { + "teal": 255, + "source": 584, + "pc": [ + 398, + 399 + ] + }, + { + "teal": 256, + "source": 584, + "pc": [ + 400, + 401 + ] + }, + { + "teal": 257, + "source": 584, + "pc": [ + 402 + ] + }, + { + "teal": 260, + "source": 584, + "pc": [ + 403, + 404, + 405 + ] + }, + { + "teal": 261, + "source": 584, + "pc": [ + 406, + 407 + ] + }, + { + "teal": 262, + "source": 584, + "pc": [ + 408, + 409 + ] + }, + { + "teal": 263, + "source": 584, + "pc": [ + 410, + 411 + ] + }, + { + "teal": 264, + "source": 584, + "pc": [ + 412 + ] + }, + { + "teal": 265, + "source": 584, + "pc": [ + 413, + 414 + ] + }, + { + "teal": 266, + "source": 584, + "pc": [ + 415, + 416, + 417 + ] + }, + { + "teal": 267, + "source": 584, + "pc": [ + 418 + ] + }, + { + "teal": 268, + "source": 584, + "pc": [ + 419, + 420, + 421 + ] + }, + { + "teal": 271, + "source": 584, + "pc": [ + 422 + ] + }, + { + "teal": 272, + "source": 584, + "pc": [ + 423 + ] + }, + { + "teal": 275, + "source": 584, + "pc": [ + 424 + ] + }, + { + "teal": 276, + "source": 584, + "pc": [ + 425, + 426, + 427 + ] + }, + { + "teal": 277, + "source": 584, + "pc": [ + 428, + 429 + ] + }, + { + "teal": 278, + "source": 584, + "pc": [ + 430 + ] + }, + { + "teal": 279, + "source": 584, + "pc": [ + 431, + 432 + ] + }, + { + "teal": 280, + "source": 584, + "pc": [ + 433 + ] + }, + { + "teal": 281, + "source": 584, + "pc": [ + 434 + ] + }, + { + "teal": 282, + "source": 584, + "pc": [ + 435, + 436 + ] + }, + { + "teal": 283, + "source": 584, + "pc": [ + 437 + ] + }, + { + "teal": 286, + "source": 584, + "pc": [ + 438, + 439 + ] + }, + { + "teal": 287, + "source": 584, + "pc": [ + 440 + ] + }, + { + "teal": 288, + "source": 584, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 289, + "source": 584, + "pc": [ + 443 + ] + }, + { + "teal": 290, + "source": 584, + "pc": [ + 444, + 445, + 446 + ] + }, + { + "teal": 291, + "source": 584, + "pc": [ + 447, + 448 + ] + }, + { + "teal": 292, + "source": 584, + "pc": [ + 449 + ] + }, + { + "teal": 293, + "source": 584, + "pc": [ + 450, + 451 + ] + }, + { + "teal": 294, + "source": 584, + "pc": [ + 452 + ] + }, + { + "teal": 295, + "source": 584, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 296, + "source": 584, + "pc": [ + 455, + 456, + 457 + ] + }, + { + "teal": 299, + "source": 584, + "pc": [ + 458, + 459 + ] + }, + { + "teal": 300, + "source": 584, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 301, + "source": 584, + "pc": [ + 462 + ] + }, + { + "teal": 302, + "source": 584, + "pc": [ + 463 + ] + }, + { + "teal": 303, + "source": 584, + "pc": [ + 464, + 465 + ] + }, + { + "teal": 306, + "source": 584, + "pc": [ + 466 + ] + }, + { + "teal": 307, + "source": 584, + "pc": [ + 467, + 468 + ] + }, + { + "teal": 308, + "source": 584, + "pc": [ + 469 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHNob3J0ZW5EeW5hbWljRWxlbWVudEluVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQpzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTg2CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbCgkvLyAgICAgICBbMSwgMl0sCgkvLyAgICAgICBbMiwgM10sCgkvLyAgICAgICBbMywgNF0sCgkvLyAgICAgXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMjAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMDAyMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMzAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkyCgkvLyBhWzBdID0gWzVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA1CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA0CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkzCgkvLyBhWzFdID0gWzZdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA2CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1OTQKCS8vIGFbMl0gPSBbN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMTAwMDcKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTk2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZSgpKHVpbnQxNltdLHVpbnQxNltdLHVpbnQxNltdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCip1cGRhdGVfZHluYW1pY19oZWFkOgoJcHJvdG8gMiAwCglmcmFtZV9kaWcgLTIgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMSAvLyBkeW5hbWljIGFycmF5IG9mZnNldAoJZXh0cmFjdF91aW50MTYgLy8gZXh0cmFjdCBkeW5hbWljIGFycmF5IG9mZnNldAoJbG9hZCAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCglieiAqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlCgkrIC8vIGFkZCBkaWZmZXJlbmNlIHRvIG9mZnNldAoJYiAqZW5kX2NhbGNfbmV3X2hlYWQKCipzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2U6Cglzd2FwCgktIC8vIHN1YnRyYWN0IGRpZmZlcmVuY2UgZnJvbSBvZmZldAoKKmVuZF9jYWxjX25ld19oZWFkOgoJaXRvYiAvLyBjb252ZXJ0IHRvIGJ5dGVzCglleHRyYWN0IDYgMiAvLyBjb252ZXJ0IHRvIHVpbnQxNgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZnJhbWVfZGlnIC0xIC8vIG9mZnNldAoJc3dhcAoJcmVwbGFjZTMgLy8gdXBkYXRlIG9mZnNldAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHNob3J0ZW5EeW5hbWljRWxlbWVudEluVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQpzaG9ydGVuRHluYW1pY0VsZW1lbnRJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTg2CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbCgkvLyAgICAgICBbMSwgMl0sCgkvLyAgICAgICBbMiwgM10sCgkvLyAgICAgICBbMywgNF0sCgkvLyAgICAgXQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMjAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDIwMDAyMDAwMwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAyMDAwMzAwMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkyCgkvLyBhWzBdID0gWzVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA1CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA0CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTkzCgkvLyBhWzFdID0gWzZdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDEwMDA2CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1OTQKCS8vIGFbMl0gPSBbN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMTAwMDcKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTk2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZSgpKHVpbnQxNltdLHVpbnQxNltdLHVpbnQxNltdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc2hvcnRlbkR5bmFtaWNFbGVtZW50SW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCip1cGRhdGVfZHluYW1pY19oZWFkOgoJcHJvdG8gMiAwCglmcmFtZV9kaWcgLTIgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2RpZyAtMSAvLyBkeW5hbWljIGFycmF5IG9mZnNldAoJZXh0cmFjdF91aW50MTYgLy8gZXh0cmFjdCBkeW5hbWljIGFycmF5IG9mZnNldAoJbG9hZCAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCglieiAqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlCgkrIC8vIGFkZCBkaWZmZXJlbmNlIHRvIG9mZnNldAoJYiAqZW5kX2NhbGNfbmV3X2hlYWQKCipzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2U6Cglzd2FwCgktIC8vIHN1YnRyYWN0IGRpZmZlcmVuY2UgZnJvbSBvZmZldAoKKmVuZF9jYWxjX25ld19oZWFkOgoJaXRvYiAvLyBjb252ZXJ0IHRvIGJ5dGVzCglleHRyYWN0IDYgMiAvLyBjb252ZXJ0IHRvIHVpbnQxNgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZnJhbWVfZGlnIC0xIC8vIG9mZnNldAoJc3dhcAoJcmVwbGFjZTMgLy8gdXBkYXRlIG9mZnNldAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSimpleTuple.approval.teal b/tests/contracts/artifacts/ABITestSimpleTuple.approval.teal index 5c9ba964b..db258fa25 100644 --- a/tests/contracts/artifacts/ABITestSimpleTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestSimpleTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSimpleTuple.arc32.json b/tests/contracts/artifacts/ABITestSimpleTuple.arc32.json index 5ce7efb23..e27d0a0e4 100644 --- a/tests/contracts/artifacts/ABITestSimpleTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestSimpleTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW1wbGVUdXBsZSgpdWludDE2CiphYmlfcm91dGVfc2ltcGxlVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2ltcGxlVHVwbGUoKXVpbnQxNgoJY2FsbHN1YiBzaW1wbGVUdXBsZQoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaW1wbGVUdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2ltcGxlVHVwbGUoKTogdWludDE2CnNpbXBsZVR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU3CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NCwgdWludDE2XSA9IFsxMSwgMjIsIDMzLCA0NF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjQsIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU5CgkvLyByZXR1cm4gYVszXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0LCB1aW50MTZdCglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNpbXBsZVR1cGxlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NpbXBsZVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW1wbGVUdXBsZSgpdWludDE2CiphYmlfcm91dGVfc2ltcGxlVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2ltcGxlVHVwbGUoKXVpbnQxNgoJY2FsbHN1YiBzaW1wbGVUdXBsZQoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaW1wbGVUdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2ltcGxlVHVwbGUoKTogdWludDE2CnNpbXBsZVR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU3CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NCwgdWludDE2XSA9IFsxMSwgMjIsIDMzLCA0NF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjQsIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU5CgkvLyByZXR1cm4gYVszXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0LCB1aW50MTZdCglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNpbXBsZVR1cGxlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NpbXBsZVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSimpleTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestSimpleTuple.arc56_draft.json index 0e50f160c..dd5a45924 100644 --- a/tests/contracts/artifacts/ABITestSimpleTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSimpleTuple.arc56_draft.json @@ -60,391 +60,394 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 255, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 255, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 255, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 255, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 255, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 255, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 255, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 255, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 255, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 256, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 256, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 256, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 256, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 256, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 256, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 36, - "source": 256, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 256, - "errorMessage": "simpleTuple return value overflowed 16 bits", - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 256, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 41, - "source": 256, - "pc": [ - 59 - ] - }, - { - "teal": 42, - "source": 256, - "pc": [ - 60 - ] - }, - { - "teal": 43, - "source": 256, - "pc": [ - 61 - ] - }, - { - "teal": 44, - "source": 256, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 256, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 51, - "source": 256, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 55, - "source": 257, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 56, - "source": 257, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 60, - "source": 259, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 61, - "source": 259, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 62, - "source": 259, - "pc": [ - 97 - ] - }, - { - "teal": 65, - "source": 256, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 66, - "source": 256, - "pc": [ - 100 - ] - }, - { - "teal": 69, - "source": 255, - "pc": [ - 101 - ] - }, - { - "teal": 70, - "source": 255, - "pc": [ - 102 - ] - }, - { - "teal": 73, - "source": 255, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 74, - "source": 255, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 75, - "source": 255, - "pc": [ - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 78, - "source": 255, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 116 - ] - }, - { - "teal": 81, - "source": 255, - "pc": [ - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 82, - "source": 255, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 83, - "source": 255, - "pc": [ - 126, - 127, - 128, - 129 - ] - }, - { - "teal": 86, - "source": 255, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 130 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 255, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 255, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 255, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 255, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 255, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 255, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 255, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 255, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 255, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 256, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 256, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 256, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 256, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 256, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 256, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 36, + "source": 256, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 256, + "errorMessage": "simpleTuple return value overflowed 16 bits", + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 256, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 41, + "source": 256, + "pc": [ + 59 + ] + }, + { + "teal": 42, + "source": 256, + "pc": [ + 60 + ] + }, + { + "teal": 43, + "source": 256, + "pc": [ + 61 + ] + }, + { + "teal": 44, + "source": 256, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 256, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 51, + "source": 256, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 55, + "source": 257, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 56, + "source": 257, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 60, + "source": 259, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 61, + "source": 259, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 62, + "source": 259, + "pc": [ + 97 + ] + }, + { + "teal": 65, + "source": 256, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 66, + "source": 256, + "pc": [ + 100 + ] + }, + { + "teal": 69, + "source": 255, + "pc": [ + 101 + ] + }, + { + "teal": 70, + "source": 255, + "pc": [ + 102 + ] + }, + { + "teal": 73, + "source": 255, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 74, + "source": 255, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 75, + "source": 255, + "pc": [ + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 78, + "source": 255, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 116 + ] + }, + { + "teal": 81, + "source": 255, + "pc": [ + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 82, + "source": 255, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 83, + "source": 255, + "pc": [ + 126, + 127, + 128, + 129 + ] + }, + { + "teal": 86, + "source": 255, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 130 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW1wbGVUdXBsZSgpdWludDE2CiphYmlfcm91dGVfc2ltcGxlVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2ltcGxlVHVwbGUoKXVpbnQxNgoJY2FsbHN1YiBzaW1wbGVUdXBsZQoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaW1wbGVUdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2ltcGxlVHVwbGUoKTogdWludDE2CnNpbXBsZVR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU3CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NCwgdWludDE2XSA9IFsxMSwgMjIsIDMzLCA0NF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjQsIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU5CgkvLyByZXR1cm4gYVszXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0LCB1aW50MTZdCglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNpbXBsZVR1cGxlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NpbXBsZVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW1wbGVUdXBsZSgpdWludDE2CiphYmlfcm91dGVfc2ltcGxlVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc2ltcGxlVHVwbGUoKXVpbnQxNgoJY2FsbHN1YiBzaW1wbGVUdXBsZQoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBzaW1wbGVUdXBsZSByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc2ltcGxlVHVwbGUoKTogdWludDE2CnNpbXBsZVR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU3CgkvLyBhOiBbdWludDY0LCB1aW50MTYsIHVpbnQ2NCwgdWludDE2XSA9IFsxMSwgMjIsIDMzLCA0NF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjQsIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjU5CgkvLyByZXR1cm4gYVszXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50NjQsIHVpbnQxNiwgdWludDY0LCB1aW50MTZdCglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNpbXBsZVR1cGxlKCl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3NpbXBsZVR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSmallerByteCasting.approval.teal b/tests/contracts/artifacts/ABITestSmallerByteCasting.approval.teal index b3605b11c..0dc11f886 100644 --- a/tests/contracts/artifacts/ABITestSmallerByteCasting.approval.teal +++ b/tests/contracts/artifacts/ABITestSmallerByteCasting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSmallerByteCasting.arc32.json b/tests/contracts/artifacts/ABITestSmallerByteCasting.arc32.json index feeb8dfb6..1020eca03 100644 --- a/tests/contracts/artifacts/ABITestSmallerByteCasting.arc32.json +++ b/tests/contracts/artifacts/ABITestSmallerByteCasting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCiphYmlfcm91dGVfc21hbGxlckJ5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiBieXRlWzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHNtYWxsZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVs0XQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCgljYWxsc3ViIHNtYWxsZXJCeXRlQ2FzdGluZwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNtYWxsZXJCeXRlQ2FzdGluZyhhOiBieXRlczw0Pik6IGJ5dGVzPDI+CnNtYWxsZXJCeXRlQ2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjEzCgkvLyByZXR1cm4gPGJ5dGVzPDI+PmE7CglmcmFtZV9kaWcgLTEgLy8gYTogYnl0ZXM8ND4KCWV4dHJhY3QgMCAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zbWFsbGVyQnl0ZUNhc3RpbmcKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCiphYmlfcm91dGVfc21hbGxlckJ5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiBieXRlWzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHNtYWxsZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVs0XQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCgljYWxsc3ViIHNtYWxsZXJCeXRlQ2FzdGluZwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNtYWxsZXJCeXRlQ2FzdGluZyhhOiBieXRlczw0Pik6IGJ5dGVzPDI+CnNtYWxsZXJCeXRlQ2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjEzCgkvLyByZXR1cm4gPGJ5dGVzPDI+PmE7CglmcmFtZV9kaWcgLTEgLy8gYTogYnl0ZXM8ND4KCWV4dHJhY3QgMCAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zbWFsbGVyQnl0ZUNhc3RpbmcKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSmallerByteCasting.arc56_draft.json b/tests/contracts/artifacts/ABITestSmallerByteCasting.arc56_draft.json index 965ebd0e2..da512e4b1 100644 --- a/tests/contracts/artifacts/ABITestSmallerByteCasting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSmallerByteCasting.arc56_draft.json @@ -65,325 +65,328 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1211, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1211, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1211, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1211, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1211, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1211, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1211, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1211, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1211, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1212, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1212, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1212, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1212, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1212, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 1212, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 1212, - "errorMessage": "argument 0 (a) for smallerByteCasting must be a byte[4]", - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 1212, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 1212, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 1212, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1212, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1212, - "pc": [ - 61 - ] - }, - { - "teal": 49, - "source": 1212, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 53, - "source": 1213, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 54, - "source": 1213, - "pc": [ - 67, - 68, - 69 - ] - }, - { - "teal": 55, - "source": 1212, - "pc": [ - 70 - ] - }, - { - "teal": 58, - "source": 1211, - "pc": [ - 71 - ] - }, - { - "teal": 59, - "source": 1211, - "pc": [ - 72 - ] - }, - { - "teal": 62, - "source": 1211, - "pc": [ - 73, - 74, - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 63, - "source": 1211, - "pc": [ - 79, - 80, - 81 - ] - }, - { - "teal": 64, - "source": 1211, - "pc": [ - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 67, - "source": 1211, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 86 - ] - }, - { - "teal": 70, - "source": 1211, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 71, - "source": 1211, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 72, - "source": 1211, - "pc": [ - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 75, - "source": 1211, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 100 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1211, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1211, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1211, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1211, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1211, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1211, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1211, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1211, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1211, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1212, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1212, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1212, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1212, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1212, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 1212, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 1212, + "errorMessage": "argument 0 (a) for smallerByteCasting must be a byte[4]", + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 1212, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 1212, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 1212, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1212, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1212, + "pc": [ + 61 + ] + }, + { + "teal": 49, + "source": 1212, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 53, + "source": 1213, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 54, + "source": 1213, + "pc": [ + 67, + 68, + 69 + ] + }, + { + "teal": 55, + "source": 1212, + "pc": [ + 70 + ] + }, + { + "teal": 58, + "source": 1211, + "pc": [ + 71 + ] + }, + { + "teal": 59, + "source": 1211, + "pc": [ + 72 + ] + }, + { + "teal": 62, + "source": 1211, + "pc": [ + 73, + 74, + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 63, + "source": 1211, + "pc": [ + 79, + 80, + 81 + ] + }, + { + "teal": 64, + "source": 1211, + "pc": [ + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 67, + "source": 1211, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 86 + ] + }, + { + "teal": 70, + "source": 1211, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 71, + "source": 1211, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 72, + "source": 1211, + "pc": [ + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 75, + "source": 1211, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 100 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCiphYmlfcm91dGVfc21hbGxlckJ5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiBieXRlWzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHNtYWxsZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVs0XQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCgljYWxsc3ViIHNtYWxsZXJCeXRlQ2FzdGluZwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNtYWxsZXJCeXRlQ2FzdGluZyhhOiBieXRlczw0Pik6IGJ5dGVzPDI+CnNtYWxsZXJCeXRlQ2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjEzCgkvLyByZXR1cm4gPGJ5dGVzPDI+PmE7CglmcmFtZV9kaWcgLTEgLy8gYTogYnl0ZXM8ND4KCWV4dHJhY3QgMCAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zbWFsbGVyQnl0ZUNhc3RpbmcKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCiphYmlfcm91dGVfc21hbGxlckJ5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiBieXRlWzRdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHNtYWxsZXJCeXRlQ2FzdGluZyBtdXN0IGJlIGEgYnl0ZVs0XQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdCgljYWxsc3ViIHNtYWxsZXJCeXRlQ2FzdGluZwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNtYWxsZXJCeXRlQ2FzdGluZyhhOiBieXRlczw0Pik6IGJ5dGVzPDI+CnNtYWxsZXJCeXRlQ2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjEzCgkvLyByZXR1cm4gPGJ5dGVzPDI+PmE7CglmcmFtZV9kaWcgLTEgLy8gYTogYnl0ZXM8ND4KCWV4dHJhY3QgMCAyCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzbWFsbGVyQnl0ZUNhc3RpbmcoYnl0ZVs0XSlieXRlWzJdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zbWFsbGVyQnl0ZUNhc3RpbmcKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSpliceFirstElement.approval.teal b/tests/contracts/artifacts/ABITestSpliceFirstElement.approval.teal index c1fc4387d..87e27a943 100644 --- a/tests/contracts/artifacts/ABITestSpliceFirstElement.approval.teal +++ b/tests/contracts/artifacts/ABITestSpliceFirstElement.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSpliceFirstElement.arc32.json b/tests/contracts/artifacts/ABITestSpliceFirstElement.arc32.json index e3799c878..a0d662a25 100644 --- a/tests/contracts/artifacts/ABITestSpliceFirstElement.arc32.json +++ b/tests/contracts/artifacts/ABITestSpliceFirstElement.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKXVpbnQxNltdCiphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHNwbGljZUZpcnN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50CglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKTogdWludDE2W10Kc3BsaWNlRmlyc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTEwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxMgoJLy8gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxNAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlRmlyc3RFbGVtZW50KCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKXVpbnQxNltdCiphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHNwbGljZUZpcnN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50CglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKTogdWludDE2W10Kc3BsaWNlRmlyc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTEwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxMgoJLy8gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxNAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlRmlyc3RFbGVtZW50KCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSpliceFirstElement.arc56_draft.json b/tests/contracts/artifacts/ABITestSpliceFirstElement.arc56_draft.json index 868b40ee7..ae7d089bc 100644 --- a/tests/contracts/artifacts/ABITestSpliceFirstElement.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSpliceFirstElement.arc56_draft.json @@ -60,532 +60,535 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 508, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 508, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 508, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 508, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 508, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 508, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 508, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 508, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 508, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 509, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 509, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 509, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 509, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 509, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 509, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 509, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 509, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 38, - "source": 509, - "pc": [ - 59 - ] - }, - { - "teal": 39, - "source": 509, - "pc": [ - 60 - ] - }, - { - "teal": 40, - "source": 509, - "pc": [ - 61 - ] - }, - { - "teal": 41, - "source": 509, - "pc": [ - 62 - ] - }, - { - "teal": 42, - "source": 509, - "pc": [ - 63 - ] - }, - { - "teal": 43, - "source": 509, - "pc": [ - 64 - ] - }, - { - "teal": 47, - "source": 509, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 50, - "source": 509, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 54, - "source": 510, - "pc": [ - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 55, - "source": 510, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 59, - "source": 512, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 60, - "source": 512, - "pc": [ - 82 - ] - }, - { - "teal": 61, - "source": 512, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 512, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 63, - "source": 512, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 64, - "source": 512, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 65, - "source": 512, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 66, - "source": 512, - "pc": [ - 92 - ] - }, - { - "teal": 67, - "source": 512, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 68, - "source": 512, - "pc": [ - 95 - ] - }, - { - "teal": 69, - "source": 512, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 70, - "source": 512, - "pc": [ - 98 - ] - }, - { - "teal": 71, - "source": 512, - "pc": [ - 99 - ] - }, - { - "teal": 72, - "source": 512, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 73, - "source": 512, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 74, - "source": 512, - "pc": [ - 104 - ] - }, - { - "teal": 75, - "source": 512, - "pc": [ - 105 - ] - }, - { - "teal": 76, - "source": 512, - "pc": [ - 106 - ] - }, - { - "teal": 77, - "source": 512, - "pc": [ - 107 - ] - }, - { - "teal": 78, - "source": 512, - "pc": [ - 108 - ] - }, - { - "teal": 79, - "source": 512, - "pc": [ - 109 - ] - }, - { - "teal": 80, - "source": 512, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 84, - "source": 514, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 87, - "source": 509, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 88, - "source": 509, - "pc": [ - 116 - ] - }, - { - "teal": 91, - "source": 508, - "pc": [ - 117 - ] - }, - { - "teal": 92, - "source": 508, - "pc": [ - 118 - ] - }, - { - "teal": 95, - "source": 508, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 96, - "source": 508, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 97, - "source": 508, - "pc": [ - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 100, - "source": 508, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 132 - ] - }, - { - "teal": 103, - "source": 508, - "pc": [ - 133, - 134, - 135, - 136, - 137, - 138 - ] - }, - { - "teal": 104, - "source": 508, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 105, - "source": 508, - "pc": [ - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 108, - "source": 508, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 146 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 508, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 508, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 508, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 508, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 508, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 508, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 508, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 508, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 508, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 509, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 509, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 509, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 509, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 509, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 509, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 509, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 509, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 38, + "source": 509, + "pc": [ + 59 + ] + }, + { + "teal": 39, + "source": 509, + "pc": [ + 60 + ] + }, + { + "teal": 40, + "source": 509, + "pc": [ + 61 + ] + }, + { + "teal": 41, + "source": 509, + "pc": [ + 62 + ] + }, + { + "teal": 42, + "source": 509, + "pc": [ + 63 + ] + }, + { + "teal": 43, + "source": 509, + "pc": [ + 64 + ] + }, + { + "teal": 47, + "source": 509, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 50, + "source": 509, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 54, + "source": 510, + "pc": [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 55, + "source": 510, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 59, + "source": 512, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 60, + "source": 512, + "pc": [ + 82 + ] + }, + { + "teal": 61, + "source": 512, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 512, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 63, + "source": 512, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 64, + "source": 512, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 65, + "source": 512, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 66, + "source": 512, + "pc": [ + 92 + ] + }, + { + "teal": 67, + "source": 512, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 68, + "source": 512, + "pc": [ + 95 + ] + }, + { + "teal": 69, + "source": 512, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 70, + "source": 512, + "pc": [ + 98 + ] + }, + { + "teal": 71, + "source": 512, + "pc": [ + 99 + ] + }, + { + "teal": 72, + "source": 512, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 73, + "source": 512, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 74, + "source": 512, + "pc": [ + 104 + ] + }, + { + "teal": 75, + "source": 512, + "pc": [ + 105 + ] + }, + { + "teal": 76, + "source": 512, + "pc": [ + 106 + ] + }, + { + "teal": 77, + "source": 512, + "pc": [ + 107 + ] + }, + { + "teal": 78, + "source": 512, + "pc": [ + 108 + ] + }, + { + "teal": 79, + "source": 512, + "pc": [ + 109 + ] + }, + { + "teal": 80, + "source": 512, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 84, + "source": 514, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 87, + "source": 509, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 88, + "source": 509, + "pc": [ + 116 + ] + }, + { + "teal": 91, + "source": 508, + "pc": [ + 117 + ] + }, + { + "teal": 92, + "source": 508, + "pc": [ + 118 + ] + }, + { + "teal": 95, + "source": 508, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 96, + "source": 508, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 97, + "source": 508, + "pc": [ + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 100, + "source": 508, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 132 + ] + }, + { + "teal": 103, + "source": 508, + "pc": [ + 133, + 134, + 135, + 136, + 137, + 138 + ] + }, + { + "teal": 104, + "source": 508, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 105, + "source": 508, + "pc": [ + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 108, + "source": 508, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 146 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKXVpbnQxNltdCiphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHNwbGljZUZpcnN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50CglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKTogdWludDE2W10Kc3BsaWNlRmlyc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTEwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxMgoJLy8gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxNAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlRmlyc3RFbGVtZW50KCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKXVpbnQxNltdCiphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHNwbGljZUZpcnN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50CglkdXAKCWxlbgoJaW50IDIKCS8KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcGxpY2VGaXJzdEVsZW1lbnQoKTogdWludDE2W10Kc3BsaWNlRmlyc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTEwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxMgoJLy8gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUxNAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlRmlyc3RFbGVtZW50KCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSpliceFirstElementValue.approval.teal b/tests/contracts/artifacts/ABITestSpliceFirstElementValue.approval.teal index ba80f6c26..7e2bd6327 100644 --- a/tests/contracts/artifacts/ABITestSpliceFirstElementValue.approval.teal +++ b/tests/contracts/artifacts/ABITestSpliceFirstElementValue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc32.json b/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc32.json index 383336064..cf7927fdb 100644 --- a/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc32.json +++ b/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCk6IHVpbnQxNltdCnNwbGljZUZpcnN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MjAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTIyCgkvLyB2ID0gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUyNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCk6IHVpbnQxNltdCnNwbGljZUZpcnN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MjAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTIyCgkvLyB2ID0gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUyNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc56_draft.json b/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc56_draft.json index feab787f3..a4eea841c 100644 --- a/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSpliceFirstElementValue.arc56_draft.json @@ -60,607 +60,610 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 518, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 518, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 518, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 518, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 518, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 518, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 518, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 518, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 518, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 519, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 519, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 519, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 519, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 519, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 519, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 519, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 519, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 38, - "source": 519, - "pc": [ - 59 - ] - }, - { - "teal": 39, - "source": 519, - "pc": [ - 60 - ] - }, - { - "teal": 40, - "source": 519, - "pc": [ - 61 - ] - }, - { - "teal": 41, - "source": 519, - "pc": [ - 62 - ] - }, - { - "teal": 42, - "source": 519, - "pc": [ - 63 - ] - }, - { - "teal": 43, - "source": 519, - "pc": [ - 64 - ] - }, - { - "teal": 47, - "source": 519, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 50, - "source": 519, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 51, - "source": 519, - "pc": [ - 70 - ] - }, - { - "teal": 55, - "source": 520, - "pc": [ - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 56, - "source": 520, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 60, - "source": 522, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 61, - "source": 522, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 522, - "pc": [ - 84 - ] - }, - { - "teal": 63, - "source": 522, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 64, - "source": 522, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 65, - "source": 522, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 66, - "source": 522, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 67, - "source": 522, - "pc": [ - 93 - ] - }, - { - "teal": 68, - "source": 522, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 69, - "source": 522, - "pc": [ - 96 - ] - }, - { - "teal": 70, - "source": 522, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 71, - "source": 522, - "pc": [ - 99 - ] - }, - { - "teal": 72, - "source": 522, - "pc": [ - 100 - ] - }, - { - "teal": 73, - "source": 522, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 74, - "source": 522, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 75, - "source": 522, - "pc": [ - 105 - ] - }, - { - "teal": 76, - "source": 522, - "pc": [ - 106 - ] - }, - { - "teal": 77, - "source": 522, - "pc": [ - 107 - ] - }, - { - "teal": 78, - "source": 522, - "pc": [ - 108 - ] - }, - { - "teal": 79, - "source": 522, - "pc": [ - 109 - ] - }, - { - "teal": 80, - "source": 522, - "pc": [ - 110 - ] - }, - { - "teal": 81, - "source": 522, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 82, - "source": 522, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 83, - "source": 522, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 84, - "source": 522, - "pc": [ - 117 - ] - }, - { - "teal": 85, - "source": 522, - "pc": [ - 118 - ] - }, - { - "teal": 86, - "source": 522, - "pc": [ - 119 - ] - }, - { - "teal": 87, - "source": 522, - "pc": [ - 120 - ] - }, - { - "teal": 88, - "source": 522, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 89, - "source": 522, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 93, - "source": 524, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 96, - "source": 519, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 99, - "source": 519, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 100, - "source": 519, - "pc": [ - 131 - ] - }, - { - "teal": 103, - "source": 518, - "pc": [ - 132 - ] - }, - { - "teal": 104, - "source": 518, - "pc": [ - 133 - ] - }, - { - "teal": 107, - "source": 518, - "pc": [ - 134, - 135, - 136, - 137, - 138, - 139 - ] - }, - { - "teal": 108, - "source": 518, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 109, - "source": 518, - "pc": [ - 143, - 144, - 145, - 146 - ] - }, - { - "teal": 112, - "source": 518, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 147 - ] - }, - { - "teal": 115, - "source": 518, - "pc": [ - 148, - 149, - 150, - 151, - 152, - 153 - ] - }, - { - "teal": 116, - "source": 518, - "pc": [ - 154, - 155, - 156 - ] - }, - { - "teal": 117, - "source": 518, - "pc": [ - 157, - 158, - 159, - 160 - ] - }, - { - "teal": 120, - "source": 518, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 161 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 518, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 518, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 518, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 518, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 518, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 518, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 518, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 518, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 518, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 519, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 519, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 519, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 519, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 519, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 519, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 519, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 519, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 38, + "source": 519, + "pc": [ + 59 + ] + }, + { + "teal": 39, + "source": 519, + "pc": [ + 60 + ] + }, + { + "teal": 40, + "source": 519, + "pc": [ + 61 + ] + }, + { + "teal": 41, + "source": 519, + "pc": [ + 62 + ] + }, + { + "teal": 42, + "source": 519, + "pc": [ + 63 + ] + }, + { + "teal": 43, + "source": 519, + "pc": [ + 64 + ] + }, + { + "teal": 47, + "source": 519, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 50, + "source": 519, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 51, + "source": 519, + "pc": [ + 70 + ] + }, + { + "teal": 55, + "source": 520, + "pc": [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 56, + "source": 520, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 60, + "source": 522, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 61, + "source": 522, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 522, + "pc": [ + 84 + ] + }, + { + "teal": 63, + "source": 522, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 64, + "source": 522, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 65, + "source": 522, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 66, + "source": 522, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 67, + "source": 522, + "pc": [ + 93 + ] + }, + { + "teal": 68, + "source": 522, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 69, + "source": 522, + "pc": [ + 96 + ] + }, + { + "teal": 70, + "source": 522, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 71, + "source": 522, + "pc": [ + 99 + ] + }, + { + "teal": 72, + "source": 522, + "pc": [ + 100 + ] + }, + { + "teal": 73, + "source": 522, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 74, + "source": 522, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 75, + "source": 522, + "pc": [ + 105 + ] + }, + { + "teal": 76, + "source": 522, + "pc": [ + 106 + ] + }, + { + "teal": 77, + "source": 522, + "pc": [ + 107 + ] + }, + { + "teal": 78, + "source": 522, + "pc": [ + 108 + ] + }, + { + "teal": 79, + "source": 522, + "pc": [ + 109 + ] + }, + { + "teal": 80, + "source": 522, + "pc": [ + 110 + ] + }, + { + "teal": 81, + "source": 522, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 82, + "source": 522, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 83, + "source": 522, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 84, + "source": 522, + "pc": [ + 117 + ] + }, + { + "teal": 85, + "source": 522, + "pc": [ + 118 + ] + }, + { + "teal": 86, + "source": 522, + "pc": [ + 119 + ] + }, + { + "teal": 87, + "source": 522, + "pc": [ + 120 + ] + }, + { + "teal": 88, + "source": 522, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 89, + "source": 522, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 93, + "source": 524, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 96, + "source": 519, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 99, + "source": 519, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 100, + "source": 519, + "pc": [ + 131 + ] + }, + { + "teal": 103, + "source": 518, + "pc": [ + 132 + ] + }, + { + "teal": 104, + "source": 518, + "pc": [ + 133 + ] + }, + { + "teal": 107, + "source": 518, + "pc": [ + 134, + 135, + 136, + 137, + 138, + 139 + ] + }, + { + "teal": 108, + "source": 518, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 109, + "source": 518, + "pc": [ + 143, + 144, + 145, + 146 + ] + }, + { + "teal": 112, + "source": 518, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 147 + ] + }, + { + "teal": 115, + "source": 518, + "pc": [ + 148, + 149, + 150, + 151, + 152, + 153 + ] + }, + { + "teal": 116, + "source": 518, + "pc": [ + 154, + 155, + 156 + ] + }, + { + "teal": 117, + "source": 518, + "pc": [ + 157, + 158, + 159, + 160 + ] + }, + { + "teal": 120, + "source": 518, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 161 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCk6IHVpbnQxNltdCnNwbGljZUZpcnN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MjAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTIyCgkvLyB2ID0gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUyNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VGaXJzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCk6IHVpbnQxNltdCnNwbGljZUZpcnN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MjAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTIyCgkvLyB2ID0gYS5zcGxpY2UoMCwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDAKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUyNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUZpcnN0RWxlbWVudFZhbHVlKCl1aW50MTZbXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3BsaWNlRmlyc3RFbGVtZW50VmFsdWUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSpliceLastElement.approval.teal b/tests/contracts/artifacts/ABITestSpliceLastElement.approval.teal index ac8136cc2..f3a457b2e 100644 --- a/tests/contracts/artifacts/ABITestSpliceLastElement.approval.teal +++ b/tests/contracts/artifacts/ABITestSpliceLastElement.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSpliceLastElement.arc32.json b/tests/contracts/artifacts/ABITestSpliceLastElement.arc32.json index e25e9d355..275fbbfba 100644 --- a/tests/contracts/artifacts/ABITestSpliceLastElement.arc32.json +++ b/tests/contracts/artifacts/ABITestSpliceLastElement.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnQKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUxhc3RFbGVtZW50KCk6IHVpbnQxNltdCnNwbGljZUxhc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5MgoJLy8gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlTGFzdEVsZW1lbnQoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnQKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUxhc3RFbGVtZW50KCk6IHVpbnQxNltdCnNwbGljZUxhc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5MgoJLy8gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlTGFzdEVsZW1lbnQoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSpliceLastElement.arc56_draft.json b/tests/contracts/artifacts/ABITestSpliceLastElement.arc56_draft.json index bc836807a..45c123d00 100644 --- a/tests/contracts/artifacts/ABITestSpliceLastElement.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSpliceLastElement.arc56_draft.json @@ -60,532 +60,535 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 488, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 488, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 488, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 488, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 488, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 488, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 488, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 488, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 488, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 489, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 489, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 489, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 489, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 489, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 489, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 489, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 489, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 38, - "source": 489, - "pc": [ - 59 - ] - }, - { - "teal": 39, - "source": 489, - "pc": [ - 60 - ] - }, - { - "teal": 40, - "source": 489, - "pc": [ - 61 - ] - }, - { - "teal": 41, - "source": 489, - "pc": [ - 62 - ] - }, - { - "teal": 42, - "source": 489, - "pc": [ - 63 - ] - }, - { - "teal": 43, - "source": 489, - "pc": [ - 64 - ] - }, - { - "teal": 47, - "source": 489, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 50, - "source": 489, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 54, - "source": 490, - "pc": [ - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 55, - "source": 490, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 59, - "source": 492, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 60, - "source": 492, - "pc": [ - 82 - ] - }, - { - "teal": 61, - "source": 492, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 492, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 63, - "source": 492, - "pc": [ - 86 - ] - }, - { - "teal": 64, - "source": 492, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 65, - "source": 492, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 66, - "source": 492, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 67, - "source": 492, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 68, - "source": 492, - "pc": [ - 95 - ] - }, - { - "teal": 69, - "source": 492, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 70, - "source": 492, - "pc": [ - 98 - ] - }, - { - "teal": 71, - "source": 492, - "pc": [ - 99 - ] - }, - { - "teal": 72, - "source": 492, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 73, - "source": 492, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 74, - "source": 492, - "pc": [ - 104 - ] - }, - { - "teal": 75, - "source": 492, - "pc": [ - 105 - ] - }, - { - "teal": 76, - "source": 492, - "pc": [ - 106 - ] - }, - { - "teal": 77, - "source": 492, - "pc": [ - 107 - ] - }, - { - "teal": 78, - "source": 492, - "pc": [ - 108 - ] - }, - { - "teal": 79, - "source": 492, - "pc": [ - 109 - ] - }, - { - "teal": 80, - "source": 492, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 84, - "source": 494, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 87, - "source": 489, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 88, - "source": 489, - "pc": [ - 116 - ] - }, - { - "teal": 91, - "source": 488, - "pc": [ - 117 - ] - }, - { - "teal": 92, - "source": 488, - "pc": [ - 118 - ] - }, - { - "teal": 95, - "source": 488, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 96, - "source": 488, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 97, - "source": 488, - "pc": [ - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 100, - "source": 488, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 132 - ] - }, - { - "teal": 103, - "source": 488, - "pc": [ - 133, - 134, - 135, - 136, - 137, - 138 - ] - }, - { - "teal": 104, - "source": 488, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 105, - "source": 488, - "pc": [ - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 108, - "source": 488, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 146 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 488, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 488, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 488, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 488, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 488, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 488, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 488, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 488, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 488, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 489, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 489, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 489, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 489, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 489, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 489, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 489, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 489, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 38, + "source": 489, + "pc": [ + 59 + ] + }, + { + "teal": 39, + "source": 489, + "pc": [ + 60 + ] + }, + { + "teal": 40, + "source": 489, + "pc": [ + 61 + ] + }, + { + "teal": 41, + "source": 489, + "pc": [ + 62 + ] + }, + { + "teal": 42, + "source": 489, + "pc": [ + 63 + ] + }, + { + "teal": 43, + "source": 489, + "pc": [ + 64 + ] + }, + { + "teal": 47, + "source": 489, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 50, + "source": 489, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 54, + "source": 490, + "pc": [ + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 55, + "source": 490, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 59, + "source": 492, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 60, + "source": 492, + "pc": [ + 82 + ] + }, + { + "teal": 61, + "source": 492, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 492, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 63, + "source": 492, + "pc": [ + 86 + ] + }, + { + "teal": 64, + "source": 492, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 65, + "source": 492, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 66, + "source": 492, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 67, + "source": 492, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 68, + "source": 492, + "pc": [ + 95 + ] + }, + { + "teal": 69, + "source": 492, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 70, + "source": 492, + "pc": [ + 98 + ] + }, + { + "teal": 71, + "source": 492, + "pc": [ + 99 + ] + }, + { + "teal": 72, + "source": 492, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 73, + "source": 492, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 74, + "source": 492, + "pc": [ + 104 + ] + }, + { + "teal": 75, + "source": 492, + "pc": [ + 105 + ] + }, + { + "teal": 76, + "source": 492, + "pc": [ + 106 + ] + }, + { + "teal": 77, + "source": 492, + "pc": [ + 107 + ] + }, + { + "teal": 78, + "source": 492, + "pc": [ + 108 + ] + }, + { + "teal": 79, + "source": 492, + "pc": [ + 109 + ] + }, + { + "teal": 80, + "source": 492, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 84, + "source": 494, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 87, + "source": 489, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 88, + "source": 489, + "pc": [ + 116 + ] + }, + { + "teal": 91, + "source": 488, + "pc": [ + 117 + ] + }, + { + "teal": 92, + "source": 488, + "pc": [ + 118 + ] + }, + { + "teal": 95, + "source": 488, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 96, + "source": 488, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 97, + "source": 488, + "pc": [ + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 100, + "source": 488, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 132 + ] + }, + { + "teal": 103, + "source": 488, + "pc": [ + 133, + 134, + 135, + 136, + 137, + 138 + ] + }, + { + "teal": 104, + "source": 488, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 105, + "source": 488, + "pc": [ + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 108, + "source": 488, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 146 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnQKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUxhc3RFbGVtZW50KCk6IHVpbnQxNltdCnNwbGljZUxhc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5MgoJLy8gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlTGFzdEVsZW1lbnQoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzcGxpY2VMYXN0RWxlbWVudCgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnQKCWR1cAoJbGVuCglpbnQgMgoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNwbGljZUxhc3RFbGVtZW50KCk6IHVpbnQxNltdCnNwbGljZUxhc3RFbGVtZW50OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDkwCgkvLyBhOiB1aW50MTZbXSA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDEwMDAyMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5MgoJLy8gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQ5NAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3BsaWNlTGFzdEVsZW1lbnQoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestSpliceLastElementValue.approval.teal b/tests/contracts/artifacts/ABITestSpliceLastElementValue.approval.teal index ac94234ef..4b300b672 100644 --- a/tests/contracts/artifacts/ABITestSpliceLastElementValue.approval.teal +++ b/tests/contracts/artifacts/ABITestSpliceLastElementValue.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc32.json b/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc32.json index 9faa52829..d96309fe6 100644 --- a/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc32.json +++ b/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudFZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX3NwbGljZUxhc3RFbGVtZW50VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpOiB1aW50MTZbXQpzcGxpY2VMYXN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MDAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTAyCgkvLyB2ID0gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUwNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUxhc3RFbGVtZW50VmFsdWUoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudFZhbHVlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudFZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX3NwbGljZUxhc3RFbGVtZW50VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpOiB1aW50MTZbXQpzcGxpY2VMYXN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MDAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTAyCgkvLyB2ID0gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUwNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUxhc3RFbGVtZW50VmFsdWUoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudFZhbHVlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc56_draft.json b/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc56_draft.json index c8d4bb549..2299aa454 100644 --- a/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestSpliceLastElementValue.arc56_draft.json @@ -60,607 +60,610 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 498, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 498, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 498, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 498, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 498, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 498, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 498, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 498, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 498, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 499, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 499, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 499, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 499, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 499, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 499, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 499, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 499, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 38, - "source": 499, - "pc": [ - 59 - ] - }, - { - "teal": 39, - "source": 499, - "pc": [ - 60 - ] - }, - { - "teal": 40, - "source": 499, - "pc": [ - 61 - ] - }, - { - "teal": 41, - "source": 499, - "pc": [ - 62 - ] - }, - { - "teal": 42, - "source": 499, - "pc": [ - 63 - ] - }, - { - "teal": 43, - "source": 499, - "pc": [ - 64 - ] - }, - { - "teal": 47, - "source": 499, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 50, - "source": 499, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 51, - "source": 499, - "pc": [ - 70 - ] - }, - { - "teal": 55, - "source": 500, - "pc": [ - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 56, - "source": 500, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 60, - "source": 502, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 61, - "source": 502, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 502, - "pc": [ - 84 - ] - }, - { - "teal": 63, - "source": 502, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 64, - "source": 502, - "pc": [ - 87 - ] - }, - { - "teal": 65, - "source": 502, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 66, - "source": 502, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 67, - "source": 502, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 68, - "source": 502, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 69, - "source": 502, - "pc": [ - 96 - ] - }, - { - "teal": 70, - "source": 502, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 71, - "source": 502, - "pc": [ - 99 - ] - }, - { - "teal": 72, - "source": 502, - "pc": [ - 100 - ] - }, - { - "teal": 73, - "source": 502, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 74, - "source": 502, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 75, - "source": 502, - "pc": [ - 105 - ] - }, - { - "teal": 76, - "source": 502, - "pc": [ - 106 - ] - }, - { - "teal": 77, - "source": 502, - "pc": [ - 107 - ] - }, - { - "teal": 78, - "source": 502, - "pc": [ - 108 - ] - }, - { - "teal": 79, - "source": 502, - "pc": [ - 109 - ] - }, - { - "teal": 80, - "source": 502, - "pc": [ - 110 - ] - }, - { - "teal": 81, - "source": 502, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 82, - "source": 502, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 83, - "source": 502, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 84, - "source": 502, - "pc": [ - 117 - ] - }, - { - "teal": 85, - "source": 502, - "pc": [ - 118 - ] - }, - { - "teal": 86, - "source": 502, - "pc": [ - 119 - ] - }, - { - "teal": 87, - "source": 502, - "pc": [ - 120 - ] - }, - { - "teal": 88, - "source": 502, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 89, - "source": 502, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 93, - "source": 504, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 96, - "source": 499, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 99, - "source": 499, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 100, - "source": 499, - "pc": [ - 131 - ] - }, - { - "teal": 103, - "source": 498, - "pc": [ - 132 - ] - }, - { - "teal": 104, - "source": 498, - "pc": [ - 133 - ] - }, - { - "teal": 107, - "source": 498, - "pc": [ - 134, - 135, - 136, - 137, - 138, - 139 - ] - }, - { - "teal": 108, - "source": 498, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 109, - "source": 498, - "pc": [ - 143, - 144, - 145, - 146 - ] - }, - { - "teal": 112, - "source": 498, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 147 - ] - }, - { - "teal": 115, - "source": 498, - "pc": [ - 148, - 149, - 150, - 151, - 152, - 153 - ] - }, - { - "teal": 116, - "source": 498, - "pc": [ - 154, - 155, - 156 - ] - }, - { - "teal": 117, - "source": 498, - "pc": [ - 157, - 158, - 159, - 160 - ] - }, - { - "teal": 120, - "source": 498, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 161 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 498, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 498, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 498, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 498, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 498, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 498, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 498, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 498, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 498, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 499, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 499, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 499, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 499, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 499, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 499, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 499, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 499, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 38, + "source": 499, + "pc": [ + 59 + ] + }, + { + "teal": 39, + "source": 499, + "pc": [ + 60 + ] + }, + { + "teal": 40, + "source": 499, + "pc": [ + 61 + ] + }, + { + "teal": 41, + "source": 499, + "pc": [ + 62 + ] + }, + { + "teal": 42, + "source": 499, + "pc": [ + 63 + ] + }, + { + "teal": 43, + "source": 499, + "pc": [ + 64 + ] + }, + { + "teal": 47, + "source": 499, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 50, + "source": 499, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 51, + "source": 499, + "pc": [ + 70 + ] + }, + { + "teal": 55, + "source": 500, + "pc": [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 56, + "source": 500, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 60, + "source": 502, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 61, + "source": 502, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 502, + "pc": [ + 84 + ] + }, + { + "teal": 63, + "source": 502, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 64, + "source": 502, + "pc": [ + 87 + ] + }, + { + "teal": 65, + "source": 502, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 66, + "source": 502, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 67, + "source": 502, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 68, + "source": 502, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 69, + "source": 502, + "pc": [ + 96 + ] + }, + { + "teal": 70, + "source": 502, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 71, + "source": 502, + "pc": [ + 99 + ] + }, + { + "teal": 72, + "source": 502, + "pc": [ + 100 + ] + }, + { + "teal": 73, + "source": 502, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 74, + "source": 502, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 75, + "source": 502, + "pc": [ + 105 + ] + }, + { + "teal": 76, + "source": 502, + "pc": [ + 106 + ] + }, + { + "teal": 77, + "source": 502, + "pc": [ + 107 + ] + }, + { + "teal": 78, + "source": 502, + "pc": [ + 108 + ] + }, + { + "teal": 79, + "source": 502, + "pc": [ + 109 + ] + }, + { + "teal": 80, + "source": 502, + "pc": [ + 110 + ] + }, + { + "teal": 81, + "source": 502, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 82, + "source": 502, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 83, + "source": 502, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 84, + "source": 502, + "pc": [ + 117 + ] + }, + { + "teal": 85, + "source": 502, + "pc": [ + 118 + ] + }, + { + "teal": 86, + "source": 502, + "pc": [ + 119 + ] + }, + { + "teal": 87, + "source": 502, + "pc": [ + 120 + ] + }, + { + "teal": 88, + "source": 502, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 89, + "source": 502, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 93, + "source": 504, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 96, + "source": 499, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 99, + "source": 499, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 100, + "source": 499, + "pc": [ + 131 + ] + }, + { + "teal": 103, + "source": 498, + "pc": [ + 132 + ] + }, + { + "teal": 104, + "source": 498, + "pc": [ + 133 + ] + }, + { + "teal": 107, + "source": 498, + "pc": [ + 134, + 135, + 136, + 137, + 138, + 139 + ] + }, + { + "teal": 108, + "source": 498, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 109, + "source": 498, + "pc": [ + 143, + 144, + 145, + 146 + ] + }, + { + "teal": 112, + "source": 498, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 147 + ] + }, + { + "teal": 115, + "source": 498, + "pc": [ + 148, + 149, + 150, + 151, + 152, + 153 + ] + }, + { + "teal": 116, + "source": 498, + "pc": [ + 154, + 155, + 156 + ] + }, + { + "teal": 117, + "source": 498, + "pc": [ + 157, + 158, + 159, + 160 + ] + }, + { + "teal": 120, + "source": 498, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 161 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudFZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX3NwbGljZUxhc3RFbGVtZW50VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpOiB1aW50MTZbXQpzcGxpY2VMYXN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MDAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTAyCgkvLyB2ID0gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUwNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUxhc3RFbGVtZW50VmFsdWUoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudFZhbHVlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzcGxpY2VMYXN0RWxlbWVudFZhbHVlKCl1aW50MTZbXQoqYWJpX3JvdXRlX3NwbGljZUxhc3RFbGVtZW50VmFsdWU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpdWludDE2W10KCWNhbGxzdWIgc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZQoJZHVwCglsZW4KCWludCAyCgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3BsaWNlTGFzdEVsZW1lbnRWYWx1ZSgpOiB1aW50MTZbXQpzcGxpY2VMYXN0RWxlbWVudFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1MDAKCS8vIGE6IHVpbnQxNltdID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMTAwMDIwMDAzCglmcmFtZV9idXJ5IDAgLy8gYTogdWludDE2W10KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTAyCgkvLyB2ID0gYS5zcGxpY2UoMiwgMSkKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQxNltdCglpbnQgMQoJaW50IDQKCXN0b3JlIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWludCA0CglzdG9yZSAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50MTZbXQoJaW50IDAKCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJc3Vic3RyaW5nMwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWR1cAoJbGVuCglsb2FkIDI0NyAvLyBzcGxpY2Ugc3RhcnQKCWxvYWQgMjQ2IC8vIHNwbGljZSBieXRlIGxlbmd0aAoJKwoJaW50IDIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gYTogdWludDE2W10KCWxvYWQgMjQ3IC8vIHNwbGljZSBzdGFydAoJbG9hZCAyNDYgLy8gc3BsaWNlIGJ5dGUgbGVuZ3RoCglpbnQgMgoJLQoJZXh0cmFjdDMKCXN3YXAKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50MTZbXQoJZnJhbWVfYnVyeSAxIC8vIHY6IHVpbnQxNltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjUwNAoJLy8gcmV0dXJuIHY7CglmcmFtZV9kaWcgMSAvLyB2OiB1aW50MTZbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInNwbGljZUxhc3RFbGVtZW50VmFsdWUoKXVpbnQxNltdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zcGxpY2VMYXN0RWxlbWVudFZhbHVlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticArray.approval.teal b/tests/contracts/artifacts/ABITestStaticArray.approval.teal index e64ae1eb3..019aae7e7 100644 --- a/tests/contracts/artifacts/ABITestStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticArray.arc32.json b/tests/contracts/artifacts/ABITestStaticArray.arc32.json index ae83862c6..1b685180f 100644 --- a/tests/contracts/artifacts/ABITestStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5KCk6IHVpbnQ2NApzdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5KCk6IHVpbnQ2NApzdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticArray.arc56_draft.json index cd1e38a33..3934b3300 100644 --- a/tests/contracts/artifacts/ABITestStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticArray.arc56_draft.json @@ -60,349 +60,352 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 9, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 9, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 9, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 9, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 9, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 9, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 9, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 9, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 9, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 10, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 10, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 10, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 10, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 10, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 10, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 10, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 10, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 10, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 11, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 48, - "source": 11, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 52, - "source": 13, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 53, - "source": 13, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 54, - "source": 13, - "pc": [ - 92 - ] - }, - { - "teal": 57, - "source": 10, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 58, - "source": 10, - "pc": [ - 95 - ] - }, - { - "teal": 61, - "source": 9, - "pc": [ - 96 - ] - }, - { - "teal": 62, - "source": 9, - "pc": [ - 97 - ] - }, - { - "teal": 65, - "source": 9, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 66, - "source": 9, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 67, - "source": 9, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 70, - "source": 9, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 111 - ] - }, - { - "teal": 73, - "source": 9, - "pc": [ - 112, - 113, - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 74, - "source": 9, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 75, - "source": 9, - "pc": [ - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 78, - "source": 9, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 125 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 9, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 9, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 9, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 9, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 9, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 9, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 9, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 9, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 9, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 10, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 10, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 10, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 10, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 10, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 10, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 10, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 10, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 10, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 11, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 48, + "source": 11, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 52, + "source": 13, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 53, + "source": 13, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 54, + "source": 13, + "pc": [ + 92 + ] + }, + { + "teal": 57, + "source": 10, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 58, + "source": 10, + "pc": [ + 95 + ] + }, + { + "teal": 61, + "source": 9, + "pc": [ + 96 + ] + }, + { + "teal": 62, + "source": 9, + "pc": [ + 97 + ] + }, + { + "teal": 65, + "source": 9, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 66, + "source": 9, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 67, + "source": 9, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 70, + "source": 9, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 111 + ] + }, + { + "teal": 73, + "source": 9, + "pc": [ + 112, + 113, + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 74, + "source": 9, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 75, + "source": 9, + "pc": [ + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 78, + "source": 9, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 125 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5KCk6IHVpbnQ2NApzdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5KCk6IHVpbnQ2NApzdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExCgkvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWzExLCAyMiwgMzNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwYjAwMDAwMDAwMDAwMDAwMTYwMDAwMDAwMDAwMDAwMDIxCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayArg.approval.teal b/tests/contracts/artifacts/ABITestStaticArrayArg.approval.teal index 4963b2fe7..ba289ca31 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayArg.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticArrayArg.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticArrayArg.arc32.json b/tests/contracts/artifacts/ABITestStaticArrayArg.arc32.json index baacdaed2..0e7e77e47 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayArg.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticArrayArg.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFszXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyNAoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3Igc3RhdGljQXJyYXlBcmcgbXVzdCBiZSBhIHVpbnQ2NFszXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CgljYWxsc3ViIHN0YXRpY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQXJyYXlBcmcoYTogU3RhdGljQXJyYXk8dWludDY0LCAzPik6IHVpbnQ2NApzdGF0aWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0FycmF5QXJnKHVpbnQ2NFszXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFszXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyNAoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3Igc3RhdGljQXJyYXlBcmcgbXVzdCBiZSBhIHVpbnQ2NFszXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CgljYWxsc3ViIHN0YXRpY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQXJyYXlBcmcoYTogU3RhdGljQXJyYXk8dWludDY0LCAzPik6IHVpbnQ2NApzdGF0aWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0FycmF5QXJnKHVpbnQ2NFszXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayArg.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticArrayArg.arc56_draft.json index 182e13672..a2d4a884a 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayArg.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticArrayArg.arc56_draft.json @@ -65,339 +65,342 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 25, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 25, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 25, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 25, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 25, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 25, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 25, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 25, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 25, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 26, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 26, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 26, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 26, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 26, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 26, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 26, - "errorMessage": "argument 0 (a) for staticArrayArg must be a uint64[3]", - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 26, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 26, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 26, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 26, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 26, - "pc": [ - 61 - ] - }, - { - "teal": 46, - "source": 26, - "pc": [ - 62 - ] - }, - { - "teal": 50, - "source": 26, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 54, - "source": 27, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 55, - "source": 27, - "pc": [ - 68, - 69, - 70 - ] - }, - { - "teal": 56, - "source": 27, - "pc": [ - 71 - ] - }, - { - "teal": 57, - "source": 26, - "pc": [ - 72 - ] - }, - { - "teal": 60, - "source": 25, - "pc": [ - 73 - ] - }, - { - "teal": 61, - "source": 25, - "pc": [ - 74 - ] - }, - { - "teal": 64, - "source": 25, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 65, - "source": 25, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 66, - "source": 25, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 69, - "source": 25, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 72, - "source": 25, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 73, - "source": 25, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 74, - "source": 25, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 77, - "source": 25, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 25, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 25, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 25, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 25, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 25, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 25, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 25, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 25, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 25, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 26, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 26, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 26, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 26, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 26, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 26, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 26, + "errorMessage": "argument 0 (a) for staticArrayArg must be a uint64[3]", + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 26, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 26, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 26, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 26, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 26, + "pc": [ + 61 + ] + }, + { + "teal": 46, + "source": 26, + "pc": [ + 62 + ] + }, + { + "teal": 50, + "source": 26, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 54, + "source": 27, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 55, + "source": 27, + "pc": [ + 68, + 69, + 70 + ] + }, + { + "teal": 56, + "source": 27, + "pc": [ + 71 + ] + }, + { + "teal": 57, + "source": 26, + "pc": [ + 72 + ] + }, + { + "teal": 60, + "source": 25, + "pc": [ + 73 + ] + }, + { + "teal": 61, + "source": 25, + "pc": [ + 74 + ] + }, + { + "teal": 64, + "source": 25, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 65, + "source": 25, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 66, + "source": 25, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 69, + "source": 25, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 72, + "source": 25, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 73, + "source": 25, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 74, + "source": 25, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 77, + "source": 25, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFszXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyNAoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3Igc3RhdGljQXJyYXlBcmcgbXVzdCBiZSBhIHVpbnQ2NFszXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CgljYWxsc3ViIHN0YXRpY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQXJyYXlBcmcoYTogU3RhdGljQXJyYXk8dWludDY0LCAzPik6IHVpbnQ2NApzdGF0aWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0FycmF5QXJnKHVpbnQ2NFszXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFszXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyNAoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3Igc3RhdGljQXJyYXlBcmcgbXVzdCBiZSBhIHVpbnQ2NFszXQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNBcnJheUFyZyh1aW50NjRbM10pdWludDY0CgljYWxsc3ViIHN0YXRpY0FycmF5QXJnCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQXJyYXlBcmcoYTogU3RhdGljQXJyYXk8dWludDY0LCAzPik6IHVpbnQ2NApzdGF0aWNBcnJheUFyZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNwoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZXh0cmFjdCA4IDgKCWJ0b2kKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0FycmF5QXJnKHVpbnQ2NFszXSl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.approval.teal b/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.approval.teal index a9853fea0..3e1608bc0 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc32.json b/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc32.json index 9cf7676d9..acd70f784 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NwoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDgKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MQoJLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWwoJLy8gICAgICAgdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAnbE1hcCcpLnZhbHVlWzFdLAoJLy8gICAgICAgdGhpcy5iTWFwKCdiTWFwJykudmFsdWVbMV0sCgkvLyAgICAgXQoJYnl0ZSAweDY3NGQ2MTcwIC8vICJnTWFwIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NwoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNBcnJheUluU3RvcmFnZU1hcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NwoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDgKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MQoJLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWwoJLy8gICAgICAgdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAnbE1hcCcpLnZhbHVlWzFdLAoJLy8gICAgICAgdGhpcy5iTWFwKCdiTWFwJykudmFsdWVbMV0sCgkvLyAgICAgXQoJYnl0ZSAweDY3NGQ2MTcwIC8vICJnTWFwIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NwoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNBcnJheUluU3RvcmFnZU1hcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc56_draft.json index 86cdcf5e9..07e9a820a 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticArrayInStorageMap.arc56_draft.json @@ -93,579 +93,582 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 130, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20 - ] - }, - { - "teal": 13, - "source": 130, - "pc": [ - 21, - 22 - ] - }, - { - "teal": 14, - "source": 130, - "pc": [ - 23 - ] - }, - { - "teal": 15, - "source": 130, - "pc": [ - 24, - 25 - ] - }, - { - "teal": 16, - "source": 130, - "pc": [ - 26 - ] - }, - { - "teal": 17, - "source": 130, - "pc": [ - 27, - 28 - ] - }, - { - "teal": 18, - "source": 130, - "pc": [ - 29 - ] - }, - { - "teal": 19, - "source": 130, - "pc": [ - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55 - ] - }, - { - "teal": 23, - "source": 130, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 56 - ] - }, - { - "teal": 28, - "source": 143, - "pc": [ - 57, - 58, - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 31, - "source": 143, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 32, - "source": 143, - "pc": [ - 66 - ] - }, - { - "teal": 33, - "source": 143, - "pc": [ - 67 - ] - }, - { - "teal": 34, - "source": 143, - "pc": [ - 68 - ] - }, - { - "teal": 35, - "source": 143, - "pc": [ - 69 - ] - }, - { - "teal": 39, - "source": 143, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 42, - "source": 143, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 43, - "source": 143, - "pc": [ - 75 - ] - }, - { - "teal": 47, - "source": 145, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 48, - "source": 145, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 52, - "source": 147, - "pc": [ - 104 - ] - }, - { - "teal": 53, - "source": 147, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 54, - "source": 147, - "pc": [ - 107 - ] - }, - { - "teal": 58, - "source": 148, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 59, - "source": 148, - "pc": [ - 110 - ] - }, - { - "teal": 60, - "source": 148, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 61, - "source": 148, - "pc": [ - 113 - ] - }, - { - "teal": 65, - "source": 149, - "pc": [ - 114 - ] - }, - { - "teal": 66, - "source": 149, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 67, - "source": 149, - "pc": [ - 117 - ] - }, - { - "teal": 75, - "source": 152, - "pc": [ - 118 - ] - }, - { - "teal": 76, - "source": 152, - "pc": [ - 119 - ] - }, - { - "teal": 77, - "source": 152, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 78, - "source": 152, - "pc": [ - 123 - ] - }, - { - "teal": 79, - "source": 152, - "pc": [ - 124 - ] - }, - { - "teal": 80, - "source": 153, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 81, - "source": 153, - "pc": [ - 127 - ] - }, - { - "teal": 82, - "source": 153, - "pc": [ - 128 - ] - }, - { - "teal": 83, - "source": 153, - "pc": [ - 129, - 130, - 131 - ] - }, - { - "teal": 84, - "source": 153, - "pc": [ - 132 - ] - }, - { - "teal": 85, - "source": 153, - "pc": [ - 133 - ] - }, - { - "teal": 86, - "source": 151, - "pc": [ - 134 - ] - }, - { - "teal": 87, - "source": 154, - "pc": [ - 135 - ] - }, - { - "teal": 88, - "source": 154, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 89, - "source": 154, - "pc": [ - 138 - ] - }, - { - "teal": 90, - "source": 154, - "pc": [ - 139 - ] - }, - { - "teal": 91, - "source": 154, - "pc": [ - 140 - ] - }, - { - "teal": 92, - "source": 154, - "pc": [ - 141 - ] - }, - { - "teal": 93, - "source": 151, - "pc": [ - 142 - ] - }, - { - "teal": 94, - "source": 151, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 98, - "source": 157, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 101, - "source": 143, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 104, - "source": 143, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 105, - "source": 143, - "pc": [ - 151 - ] - }, - { - "teal": 108, - "source": 130, - "pc": [ - 152 - ] - }, - { - "teal": 109, - "source": 130, - "pc": [ - 153 - ] - }, - { - "teal": 112, - "source": 130, - "pc": [ - 154, - 155, - 156, - 157, - 158, - 159 - ] - }, - { - "teal": 113, - "source": 130, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 114, - "source": 130, - "pc": [ - 163, - 164, - 165, - 166 - ] - }, - { - "teal": 117, - "source": 130, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 167 - ] - }, - { - "teal": 120, - "source": 130, - "pc": [ - 168, - 169, - 170, - 171, - 172, - 173 - ] - }, - { - "teal": 121, - "source": 130, - "pc": [ - 174, - 175, - 176 - ] - }, - { - "teal": 122, - "source": 130, - "pc": [ - 177, - 178, - 179, - 180 - ] - }, - { - "teal": 125, - "source": 130, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 181 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 130, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + }, + { + "teal": 13, + "source": 130, + "pc": [ + 21, + 22 + ] + }, + { + "teal": 14, + "source": 130, + "pc": [ + 23 + ] + }, + { + "teal": 15, + "source": 130, + "pc": [ + 24, + 25 + ] + }, + { + "teal": 16, + "source": 130, + "pc": [ + 26 + ] + }, + { + "teal": 17, + "source": 130, + "pc": [ + 27, + 28 + ] + }, + { + "teal": 18, + "source": 130, + "pc": [ + 29 + ] + }, + { + "teal": 19, + "source": 130, + "pc": [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + }, + { + "teal": 23, + "source": 130, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 56 + ] + }, + { + "teal": 28, + "source": 143, + "pc": [ + 57, + 58, + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 31, + "source": 143, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 32, + "source": 143, + "pc": [ + 66 + ] + }, + { + "teal": 33, + "source": 143, + "pc": [ + 67 + ] + }, + { + "teal": 34, + "source": 143, + "pc": [ + 68 + ] + }, + { + "teal": 35, + "source": 143, + "pc": [ + 69 + ] + }, + { + "teal": 39, + "source": 143, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 42, + "source": 143, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 43, + "source": 143, + "pc": [ + 75 + ] + }, + { + "teal": 47, + "source": 145, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 48, + "source": 145, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 52, + "source": 147, + "pc": [ + 104 + ] + }, + { + "teal": 53, + "source": 147, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 54, + "source": 147, + "pc": [ + 107 + ] + }, + { + "teal": 58, + "source": 148, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 59, + "source": 148, + "pc": [ + 110 + ] + }, + { + "teal": 60, + "source": 148, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 61, + "source": 148, + "pc": [ + 113 + ] + }, + { + "teal": 65, + "source": 149, + "pc": [ + 114 + ] + }, + { + "teal": 66, + "source": 149, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 67, + "source": 149, + "pc": [ + 117 + ] + }, + { + "teal": 75, + "source": 152, + "pc": [ + 118 + ] + }, + { + "teal": 76, + "source": 152, + "pc": [ + 119 + ] + }, + { + "teal": 77, + "source": 152, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 78, + "source": 152, + "pc": [ + 123 + ] + }, + { + "teal": 79, + "source": 152, + "pc": [ + 124 + ] + }, + { + "teal": 80, + "source": 153, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 81, + "source": 153, + "pc": [ + 127 + ] + }, + { + "teal": 82, + "source": 153, + "pc": [ + 128 + ] + }, + { + "teal": 83, + "source": 153, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 84, + "source": 153, + "pc": [ + 132 + ] + }, + { + "teal": 85, + "source": 153, + "pc": [ + 133 + ] + }, + { + "teal": 86, + "source": 151, + "pc": [ + 134 + ] + }, + { + "teal": 87, + "source": 154, + "pc": [ + 135 + ] + }, + { + "teal": 88, + "source": 154, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 89, + "source": 154, + "pc": [ + 138 + ] + }, + { + "teal": 90, + "source": 154, + "pc": [ + 139 + ] + }, + { + "teal": 91, + "source": 154, + "pc": [ + 140 + ] + }, + { + "teal": 92, + "source": 154, + "pc": [ + 141 + ] + }, + { + "teal": 93, + "source": 151, + "pc": [ + 142 + ] + }, + { + "teal": 94, + "source": 151, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 98, + "source": 157, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 101, + "source": 143, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 104, + "source": 143, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 105, + "source": 143, + "pc": [ + 151 + ] + }, + { + "teal": 108, + "source": 130, + "pc": [ + 152 + ] + }, + { + "teal": 109, + "source": 130, + "pc": [ + 153 + ] + }, + { + "teal": 112, + "source": 130, + "pc": [ + 154, + 155, + 156, + 157, + 158, + 159 + ] + }, + { + "teal": 113, + "source": 130, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 114, + "source": 130, + "pc": [ + 163, + 164, + 165, + 166 + ] + }, + { + "teal": 117, + "source": 130, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 167 + ] + }, + { + "teal": 120, + "source": 130, + "pc": [ + 168, + 169, + 170, + 171, + 172, + 173 + ] + }, + { + "teal": 121, + "source": 130, + "pc": [ + 174, + 175, + 176 + ] + }, + { + "teal": 122, + "source": 130, + "pc": [ + 177, + 178, + 179, + 180 + ] + }, + { + "teal": 125, + "source": 130, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 181 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NwoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDgKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MQoJLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWwoJLy8gICAgICAgdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAnbE1hcCcpLnZhbHVlWzFdLAoJLy8gICAgICAgdGhpcy5iTWFwKCdiTWFwJykudmFsdWVbMV0sCgkvLyAgICAgXQoJYnl0ZSAweDY3NGQ2MTcwIC8vICJnTWFwIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NwoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNBcnJheUluU3RvcmFnZU1hcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NwoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNDgKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0OQoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1MQoJLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+ID0gWwoJLy8gICAgICAgdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAnbE1hcCcpLnZhbHVlWzFdLAoJLy8gICAgICAgdGhpcy5iTWFwKCdiTWFwJykudmFsdWVbMV0sCgkvLyAgICAgXQoJYnl0ZSAweDY3NGQ2MTcwIC8vICJnTWFwIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NwoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJzdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNBcnJheUluU3RvcmFnZU1hcAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.approval.teal b/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.approval.teal index c0459f312..c29624628 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc32.json b/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc32.json index f167f4aa5..5643aca14 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODkKCS8vIHRoaXMuZ1JlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkwCgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTEKCS8vIHRoaXMuYlJlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTMKCS8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFt0aGlzLmdSZWYudmFsdWVbMV0sIHRoaXMubFJlZih0aGlzLnR4bi5zZW5kZXIpLnZhbHVlWzFdLCB0aGlzLmJSZWYudmFsdWVbMV1dCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTUKCS8vIHJldHVybiByZXQ7CglmcmFtZV9kaWcgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9PcHRJbjoKCW1ldGhvZCAic3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBPcHRJbgoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODkKCS8vIHRoaXMuZ1JlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkwCgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTEKCS8vIHRoaXMuYlJlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTMKCS8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFt0aGlzLmdSZWYudmFsdWVbMV0sIHRoaXMubFJlZih0aGlzLnR4bi5zZW5kZXIpLnZhbHVlWzFdLCB0aGlzLmJSZWYudmFsdWVbMV1dCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTUKCS8vIHJldHVybiByZXQ7CglmcmFtZV9kaWcgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9PcHRJbjoKCW1ldGhvZCAic3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBPcHRJbgoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc56_draft.json index 91d4ee7fd..47cfbf5be 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticArrayInStorageRef.arc56_draft.json @@ -93,579 +93,582 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 72, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20 - ] - }, - { - "teal": 13, - "source": 72, - "pc": [ - 21, - 22 - ] - }, - { - "teal": 14, - "source": 72, - "pc": [ - 23 - ] - }, - { - "teal": 15, - "source": 72, - "pc": [ - 24, - 25 - ] - }, - { - "teal": 16, - "source": 72, - "pc": [ - 26 - ] - }, - { - "teal": 17, - "source": 72, - "pc": [ - 27, - 28 - ] - }, - { - "teal": 18, - "source": 72, - "pc": [ - 29 - ] - }, - { - "teal": 19, - "source": 72, - "pc": [ - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55 - ] - }, - { - "teal": 23, - "source": 72, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 56 - ] - }, - { - "teal": 28, - "source": 85, - "pc": [ - 57, - 58, - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 31, - "source": 85, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 32, - "source": 85, - "pc": [ - 66 - ] - }, - { - "teal": 33, - "source": 85, - "pc": [ - 67 - ] - }, - { - "teal": 34, - "source": 85, - "pc": [ - 68 - ] - }, - { - "teal": 35, - "source": 85, - "pc": [ - 69 - ] - }, - { - "teal": 39, - "source": 85, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 42, - "source": 85, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 43, - "source": 85, - "pc": [ - 75 - ] - }, - { - "teal": 47, - "source": 87, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 48, - "source": 87, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 52, - "source": 89, - "pc": [ - 104 - ] - }, - { - "teal": 53, - "source": 89, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 54, - "source": 89, - "pc": [ - 107 - ] - }, - { - "teal": 58, - "source": 90, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 59, - "source": 90, - "pc": [ - 110 - ] - }, - { - "teal": 60, - "source": 90, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 61, - "source": 90, - "pc": [ - 113 - ] - }, - { - "teal": 65, - "source": 91, - "pc": [ - 114 - ] - }, - { - "teal": 66, - "source": 91, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 67, - "source": 91, - "pc": [ - 117 - ] - }, - { - "teal": 71, - "source": 93, - "pc": [ - 118 - ] - }, - { - "teal": 72, - "source": 93, - "pc": [ - 119 - ] - }, - { - "teal": 73, - "source": 93, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 74, - "source": 93, - "pc": [ - 123 - ] - }, - { - "teal": 75, - "source": 93, - "pc": [ - 124 - ] - }, - { - "teal": 76, - "source": 93, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 77, - "source": 93, - "pc": [ - 127 - ] - }, - { - "teal": 78, - "source": 93, - "pc": [ - 128 - ] - }, - { - "teal": 79, - "source": 93, - "pc": [ - 129, - 130, - 131 - ] - }, - { - "teal": 80, - "source": 93, - "pc": [ - 132 - ] - }, - { - "teal": 81, - "source": 93, - "pc": [ - 133 - ] - }, - { - "teal": 82, - "source": 93, - "pc": [ - 134 - ] - }, - { - "teal": 83, - "source": 93, - "pc": [ - 135 - ] - }, - { - "teal": 84, - "source": 93, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 85, - "source": 93, - "pc": [ - 138 - ] - }, - { - "teal": 86, - "source": 93, - "pc": [ - 139 - ] - }, - { - "teal": 87, - "source": 93, - "pc": [ - 140 - ] - }, - { - "teal": 88, - "source": 93, - "pc": [ - 141 - ] - }, - { - "teal": 89, - "source": 93, - "pc": [ - 142 - ] - }, - { - "teal": 90, - "source": 93, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 94, - "source": 95, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 97, - "source": 85, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 100, - "source": 85, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 101, - "source": 85, - "pc": [ - 151 - ] - }, - { - "teal": 104, - "source": 72, - "pc": [ - 152 - ] - }, - { - "teal": 105, - "source": 72, - "pc": [ - 153 - ] - }, - { - "teal": 108, - "source": 72, - "pc": [ - 154, - 155, - 156, - 157, - 158, - 159 - ] - }, - { - "teal": 109, - "source": 72, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 110, - "source": 72, - "pc": [ - 163, - 164, - 165, - 166 - ] - }, - { - "teal": 113, - "source": 72, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 167 - ] - }, - { - "teal": 116, - "source": 72, - "pc": [ - 168, - 169, - 170, - 171, - 172, - 173 - ] - }, - { - "teal": 117, - "source": 72, - "pc": [ - 174, - 175, - 176 - ] - }, - { - "teal": 118, - "source": 72, - "pc": [ - 177, - 178, - 179, - 180 - ] - }, - { - "teal": 121, - "source": 72, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 181 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 72, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + }, + { + "teal": 13, + "source": 72, + "pc": [ + 21, + 22 + ] + }, + { + "teal": 14, + "source": 72, + "pc": [ + 23 + ] + }, + { + "teal": 15, + "source": 72, + "pc": [ + 24, + 25 + ] + }, + { + "teal": 16, + "source": 72, + "pc": [ + 26 + ] + }, + { + "teal": 17, + "source": 72, + "pc": [ + 27, + 28 + ] + }, + { + "teal": 18, + "source": 72, + "pc": [ + 29 + ] + }, + { + "teal": 19, + "source": 72, + "pc": [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + }, + { + "teal": 23, + "source": 72, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 56 + ] + }, + { + "teal": 28, + "source": 85, + "pc": [ + 57, + 58, + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 31, + "source": 85, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 32, + "source": 85, + "pc": [ + 66 + ] + }, + { + "teal": 33, + "source": 85, + "pc": [ + 67 + ] + }, + { + "teal": 34, + "source": 85, + "pc": [ + 68 + ] + }, + { + "teal": 35, + "source": 85, + "pc": [ + 69 + ] + }, + { + "teal": 39, + "source": 85, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 42, + "source": 85, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 43, + "source": 85, + "pc": [ + 75 + ] + }, + { + "teal": 47, + "source": 87, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 48, + "source": 87, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 52, + "source": 89, + "pc": [ + 104 + ] + }, + { + "teal": 53, + "source": 89, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 54, + "source": 89, + "pc": [ + 107 + ] + }, + { + "teal": 58, + "source": 90, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 59, + "source": 90, + "pc": [ + 110 + ] + }, + { + "teal": 60, + "source": 90, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 61, + "source": 90, + "pc": [ + 113 + ] + }, + { + "teal": 65, + "source": 91, + "pc": [ + 114 + ] + }, + { + "teal": 66, + "source": 91, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 67, + "source": 91, + "pc": [ + 117 + ] + }, + { + "teal": 71, + "source": 93, + "pc": [ + 118 + ] + }, + { + "teal": 72, + "source": 93, + "pc": [ + 119 + ] + }, + { + "teal": 73, + "source": 93, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 74, + "source": 93, + "pc": [ + 123 + ] + }, + { + "teal": 75, + "source": 93, + "pc": [ + 124 + ] + }, + { + "teal": 76, + "source": 93, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 77, + "source": 93, + "pc": [ + 127 + ] + }, + { + "teal": 78, + "source": 93, + "pc": [ + 128 + ] + }, + { + "teal": 79, + "source": 93, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 80, + "source": 93, + "pc": [ + 132 + ] + }, + { + "teal": 81, + "source": 93, + "pc": [ + 133 + ] + }, + { + "teal": 82, + "source": 93, + "pc": [ + 134 + ] + }, + { + "teal": 83, + "source": 93, + "pc": [ + 135 + ] + }, + { + "teal": 84, + "source": 93, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 85, + "source": 93, + "pc": [ + 138 + ] + }, + { + "teal": 86, + "source": 93, + "pc": [ + 139 + ] + }, + { + "teal": 87, + "source": 93, + "pc": [ + 140 + ] + }, + { + "teal": 88, + "source": 93, + "pc": [ + 141 + ] + }, + { + "teal": 89, + "source": 93, + "pc": [ + 142 + ] + }, + { + "teal": 90, + "source": 93, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 94, + "source": 95, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 97, + "source": 85, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 100, + "source": 85, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 101, + "source": 85, + "pc": [ + 151 + ] + }, + { + "teal": 104, + "source": 72, + "pc": [ + 152 + ] + }, + { + "teal": 105, + "source": 72, + "pc": [ + 153 + ] + }, + { + "teal": 108, + "source": 72, + "pc": [ + 154, + 155, + 156, + 157, + 158, + 159 + ] + }, + { + "teal": 109, + "source": 72, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 110, + "source": 72, + "pc": [ + 163, + 164, + 165, + 166 + ] + }, + { + "teal": 113, + "source": 72, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 167 + ] + }, + { + "teal": 116, + "source": 72, + "pc": [ + 168, + 169, + 170, + 171, + 172, + 173 + ] + }, + { + "teal": 117, + "source": 72, + "pc": [ + 174, + 175, + 176 + ] + }, + { + "teal": 118, + "source": 72, + "pc": [ + 177, + 178, + 179, + 180 + ] + }, + { + "teal": 121, + "source": 72, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 181 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODkKCS8vIHRoaXMuZ1JlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkwCgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTEKCS8vIHRoaXMuYlJlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTMKCS8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFt0aGlzLmdSZWYudmFsdWVbMV0sIHRoaXMubFJlZih0aGlzLnR4bi5zZW5kZXIpLnZhbHVlWzFdLCB0aGlzLmJSZWYudmFsdWVbMV1dCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTUKCS8vIHJldHVybiByZXQ7CglmcmFtZV9kaWcgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9PcHRJbjoKCW1ldGhvZCAic3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBPcHRJbgoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3N0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4NwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxMSwgMjIsIDMzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMQoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODkKCS8vIHRoaXMuZ1JlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjkwCgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTEKCS8vIHRoaXMuYlJlZi52YWx1ZSA9IGEKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTMKCS8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFt0aGlzLmdSZWYudmFsdWVbMV0sIHRoaXMubFJlZih0aGlzLnR4bi5zZW5kZXIpLnZhbHVlWzFdLCB0aGlzLmJSZWYudmFsdWVbMV1dCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTUKCS8vIHJldHVybiByZXQ7CglmcmFtZV9kaWcgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9PcHRJbjoKCW1ldGhvZCAic3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBPcHRJbgoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayLength.approval.teal b/tests/contracts/artifacts/ABITestStaticArrayLength.approval.teal index bba6b6f27..197ce8130 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayLength.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticArrayLength.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticArrayLength.arc32.json b/tests/contracts/artifacts/ABITestStaticArrayLength.arc32.json index f91e40e3f..25bf91b68 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayLength.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticArrayLength.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApzdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzODUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiA9IFsxMSwgMjIsIDMzLCA0NCwgNTVdCglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzg3CgkvLyByZXR1cm4gYS5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApzdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzODUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiA9IFsxMSwgMjIsIDMzLCA0NCwgNTVdCglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzg3CgkvLyByZXR1cm4gYS5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticArrayLength.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticArrayLength.arc56_draft.json index 664bc54a9..a6ac900fb 100644 --- a/tests/contracts/artifacts/ABITestStaticArrayLength.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticArrayLength.arc56_draft.json @@ -60,314 +60,317 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1383, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1383, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1383, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1383, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1383, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1383, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1383, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1383, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1383, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1384, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1384, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1384, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1384, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1384, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1384, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 1384, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 1384, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 1384, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 1385, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 48, - "source": 1385, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 52, - "source": 1387, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 55, - "source": 1384, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 56, - "source": 1384, - "pc": [ - 72 - ] - }, - { - "teal": 59, - "source": 1383, - "pc": [ - 73 - ] - }, - { - "teal": 60, - "source": 1383, - "pc": [ - 74 - ] - }, - { - "teal": 63, - "source": 1383, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 64, - "source": 1383, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 65, - "source": 1383, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 68, - "source": 1383, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 71, - "source": 1383, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 72, - "source": 1383, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 73, - "source": 1383, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 76, - "source": 1383, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1383, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1383, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1383, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1383, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1383, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1383, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1383, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1383, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1383, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1384, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1384, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1384, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1384, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1384, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1384, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 1384, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 1384, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 1384, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 1385, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 48, + "source": 1385, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 52, + "source": 1387, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 55, + "source": 1384, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 56, + "source": 1384, + "pc": [ + 72 + ] + }, + { + "teal": 59, + "source": 1383, + "pc": [ + 73 + ] + }, + { + "teal": 60, + "source": 1383, + "pc": [ + 74 + ] + }, + { + "teal": 63, + "source": 1383, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 64, + "source": 1383, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 65, + "source": 1383, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 68, + "source": 1383, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 71, + "source": 1383, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 72, + "source": 1383, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 73, + "source": 1383, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 76, + "source": 1383, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApzdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzODUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiA9IFsxMSwgMjIsIDMzLCA0NCwgNTVdCglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzg3CgkvLyByZXR1cm4gYS5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNBcnJheUxlbmd0aCgpdWludDY0CiphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNBcnJheUxlbmd0aAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0FycmF5TGVuZ3RoKCk6IHVpbnQ2NApzdGF0aWNBcnJheUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEzODUKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PiA9IFsxMSwgMjIsIDMzLCA0NCwgNTVdCglieXRlIDB4MGIxNjIxMmMzNwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ4LCA1PgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzg3CgkvLyByZXR1cm4gYS5sZW5ndGg7CglpbnQgNQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQXJyYXlMZW5ndGgoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljQXJyYXlMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticBoolArray.approval.teal b/tests/contracts/artifacts/ABITestStaticBoolArray.approval.teal index c01b01302..22faa860e 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArray.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticBoolArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticBoolArray.arc32.json b/tests/contracts/artifacts/ABITestStaticBoolArray.arc32.json index befe6ce4c..a9aefd6c4 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArray.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticBoolArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5KClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODk5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5KClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODk5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticBoolArray.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticBoolArray.arc56_draft.json index 0e24a5f9a..26cc37ced 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticBoolArray.arc56_draft.json @@ -60,500 +60,503 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 895, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 895, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 895, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 895, - "pc": [ - 9 - ] - }, - { - "teal": 16, - "source": 895, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 895, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 895, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 895, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 895, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 896, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 896, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 896, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 896, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 896, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 896, - "pc": [ - 53 - ] - }, - { - "teal": 39, - "source": 896, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 42, - "source": 896, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 46, - "source": 897, - "pc": [ - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 47, - "source": 897, - "pc": [ - 63 - ] - }, - { - "teal": 48, - "source": 897, - "pc": [ - 64 - ] - }, - { - "teal": 49, - "source": 897, - "pc": [ - 65 - ] - }, - { - "teal": 50, - "source": 897, - "pc": [ - 66 - ] - }, - { - "teal": 51, - "source": 897, - "pc": [ - 67 - ] - }, - { - "teal": 52, - "source": 897, - "pc": [ - 68 - ] - }, - { - "teal": 53, - "source": 897, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 54, - "source": 897, - "pc": [ - 71 - ] - }, - { - "teal": 55, - "source": 897, - "pc": [ - 72 - ] - }, - { - "teal": 56, - "source": 897, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 57, - "source": 897, - "pc": [ - 75 - ] - }, - { - "teal": 58, - "source": 897, - "pc": [ - 76 - ] - }, - { - "teal": 59, - "source": 897, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 60, - "source": 897, - "pc": [ - 79 - ] - }, - { - "teal": 61, - "source": 897, - "pc": [ - 80 - ] - }, - { - "teal": 62, - "source": 897, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 63, - "source": 897, - "pc": [ - 83 - ] - }, - { - "teal": 64, - "source": 897, - "pc": [ - 84 - ] - }, - { - "teal": 65, - "source": 897, - "pc": [ - 85 - ] - }, - { - "teal": 66, - "source": 897, - "pc": [ - 86 - ] - }, - { - "teal": 67, - "source": 897, - "pc": [ - 87 - ] - }, - { - "teal": 68, - "source": 897, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 69, - "source": 897, - "pc": [ - 90 - ] - }, - { - "teal": 70, - "source": 897, - "pc": [ - 91 - ] - }, - { - "teal": 71, - "source": 897, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 72, - "source": 897, - "pc": [ - 94 - ] - }, - { - "teal": 73, - "source": 897, - "pc": [ - 95 - ] - }, - { - "teal": 74, - "source": 897, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 78, - "source": 899, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 81, - "source": 896, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 82, - "source": 896, - "pc": [ - 102 - ] - }, - { - "teal": 85, - "source": 895, - "pc": [ - 103 - ] - }, - { - "teal": 86, - "source": 895, - "pc": [ - 104 - ] - }, - { - "teal": 89, - "source": 895, - "pc": [ - 105, - 106, - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 90, - "source": 895, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 91, - "source": 895, - "pc": [ - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 94, - "source": 895, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 118 - ] - }, - { - "teal": 97, - "source": 895, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 98, - "source": 895, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 99, - "source": 895, - "pc": [ - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 102, - "source": 895, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 132 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 895, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 895, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 895, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 895, + "pc": [ + 9 + ] + }, + { + "teal": 16, + "source": 895, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 895, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 895, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 895, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 895, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 896, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 896, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 896, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 896, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 896, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 896, + "pc": [ + 53 + ] + }, + { + "teal": 39, + "source": 896, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 42, + "source": 896, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 46, + "source": 897, + "pc": [ + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 47, + "source": 897, + "pc": [ + 63 + ] + }, + { + "teal": 48, + "source": 897, + "pc": [ + 64 + ] + }, + { + "teal": 49, + "source": 897, + "pc": [ + 65 + ] + }, + { + "teal": 50, + "source": 897, + "pc": [ + 66 + ] + }, + { + "teal": 51, + "source": 897, + "pc": [ + 67 + ] + }, + { + "teal": 52, + "source": 897, + "pc": [ + 68 + ] + }, + { + "teal": 53, + "source": 897, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 54, + "source": 897, + "pc": [ + 71 + ] + }, + { + "teal": 55, + "source": 897, + "pc": [ + 72 + ] + }, + { + "teal": 56, + "source": 897, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 57, + "source": 897, + "pc": [ + 75 + ] + }, + { + "teal": 58, + "source": 897, + "pc": [ + 76 + ] + }, + { + "teal": 59, + "source": 897, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 60, + "source": 897, + "pc": [ + 79 + ] + }, + { + "teal": 61, + "source": 897, + "pc": [ + 80 + ] + }, + { + "teal": 62, + "source": 897, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 63, + "source": 897, + "pc": [ + 83 + ] + }, + { + "teal": 64, + "source": 897, + "pc": [ + 84 + ] + }, + { + "teal": 65, + "source": 897, + "pc": [ + 85 + ] + }, + { + "teal": 66, + "source": 897, + "pc": [ + 86 + ] + }, + { + "teal": 67, + "source": 897, + "pc": [ + 87 + ] + }, + { + "teal": 68, + "source": 897, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 69, + "source": 897, + "pc": [ + 90 + ] + }, + { + "teal": 70, + "source": 897, + "pc": [ + 91 + ] + }, + { + "teal": 71, + "source": 897, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 72, + "source": 897, + "pc": [ + 94 + ] + }, + { + "teal": 73, + "source": 897, + "pc": [ + 95 + ] + }, + { + "teal": 74, + "source": 897, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 78, + "source": 899, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 81, + "source": 896, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 82, + "source": 896, + "pc": [ + 102 + ] + }, + { + "teal": 85, + "source": 895, + "pc": [ + 103 + ] + }, + { + "teal": 86, + "source": 895, + "pc": [ + 104 + ] + }, + { + "teal": 89, + "source": 895, + "pc": [ + 105, + 106, + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 90, + "source": 895, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 91, + "source": 895, + "pc": [ + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 94, + "source": 895, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 118 + ] + }, + { + "teal": 97, + "source": 895, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 98, + "source": 895, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 99, + "source": 895, + "pc": [ + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 102, + "source": 895, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 132 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5KClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODk5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5KClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXk6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4OTcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODk5CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdGF0aWNCb29sQXJyYXkoKWJvb2xbOV0iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Jvb2xBcnJheQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.approval.teal b/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.approval.teal index c8c905f1a..e90ef615b 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc32.json b/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc32.json index 50479e4fe..8da4101d6 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKTogYm9vbGVhbgpzdGF0aWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MjMKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTI1CgkvLyByZXR1cm4gYVs4XTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKTogYm9vbGVhbgpzdGF0aWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MjMKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTI1CgkvLyByZXR1cm4gYVs4XTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc56_draft.json index 07930260e..d7a204def 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticBoolArrayAccess.arc56_draft.json @@ -60,561 +60,564 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 921, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 921, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 921, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 921, - "pc": [ - 10 - ] - }, - { - "teal": 16, - "source": 921, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 921, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 921, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 921, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 921, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 922, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 922, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 922, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 33, - "source": 922, - "pc": [ - 54 - ] - }, - { - "teal": 34, - "source": 922, - "pc": [ - 55, - 56 - ] - }, - { - "teal": 35, - "source": 922, - "pc": [ - 57 - ] - }, - { - "teal": 36, - "source": 922, - "pc": [ - 58 - ] - }, - { - "teal": 37, - "source": 922, - "pc": [ - 59 - ] - }, - { - "teal": 38, - "source": 922, - "pc": [ - 60 - ] - }, - { - "teal": 39, - "source": 922, - "pc": [ - 61 - ] - }, - { - "teal": 43, - "source": 922, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 46, - "source": 922, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 50, - "source": 923, - "pc": [ - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 51, - "source": 923, - "pc": [ - 71 - ] - }, - { - "teal": 52, - "source": 923, - "pc": [ - 72 - ] - }, - { - "teal": 53, - "source": 923, - "pc": [ - 73 - ] - }, - { - "teal": 54, - "source": 923, - "pc": [ - 74 - ] - }, - { - "teal": 55, - "source": 923, - "pc": [ - 75 - ] - }, - { - "teal": 56, - "source": 923, - "pc": [ - 76 - ] - }, - { - "teal": 57, - "source": 923, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 58, - "source": 923, - "pc": [ - 79 - ] - }, - { - "teal": 59, - "source": 923, - "pc": [ - 80 - ] - }, - { - "teal": 60, - "source": 923, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 61, - "source": 923, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 923, - "pc": [ - 84 - ] - }, - { - "teal": 63, - "source": 923, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 64, - "source": 923, - "pc": [ - 87 - ] - }, - { - "teal": 65, - "source": 923, - "pc": [ - 88 - ] - }, - { - "teal": 66, - "source": 923, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 67, - "source": 923, - "pc": [ - 91 - ] - }, - { - "teal": 68, - "source": 923, - "pc": [ - 92 - ] - }, - { - "teal": 69, - "source": 923, - "pc": [ - 93 - ] - }, - { - "teal": 70, - "source": 923, - "pc": [ - 94 - ] - }, - { - "teal": 71, - "source": 923, - "pc": [ - 95 - ] - }, - { - "teal": 72, - "source": 923, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 73, - "source": 923, - "pc": [ - 98 - ] - }, - { - "teal": 74, - "source": 923, - "pc": [ - 99 - ] - }, - { - "teal": 75, - "source": 923, - "pc": [ - 100 - ] - }, - { - "teal": 76, - "source": 923, - "pc": [ - 101 - ] - }, - { - "teal": 77, - "source": 923, - "pc": [ - 102 - ] - }, - { - "teal": 78, - "source": 923, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 82, - "source": 925, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 83, - "source": 925, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 84, - "source": 925, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 85, - "source": 925, - "pc": [ - 111 - ] - }, - { - "teal": 86, - "source": 925, - "pc": [ - 112 - ] - }, - { - "teal": 89, - "source": 922, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 90, - "source": 922, - "pc": [ - 115 - ] - }, - { - "teal": 93, - "source": 921, - "pc": [ - 116 - ] - }, - { - "teal": 94, - "source": 921, - "pc": [ - 117 - ] - }, - { - "teal": 97, - "source": 921, - "pc": [ - 118, - 119, - 120, - 121, - 122, - 123 - ] - }, - { - "teal": 98, - "source": 921, - "pc": [ - 124, - 125, - 126 - ] - }, - { - "teal": 99, - "source": 921, - "pc": [ - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 102, - "source": 921, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 131 - ] - }, - { - "teal": 105, - "source": 921, - "pc": [ - 132, - 133, - 134, - 135, - 136, - 137 - ] - }, - { - "teal": 106, - "source": 921, - "pc": [ - 138, - 139, - 140 - ] - }, - { - "teal": 107, - "source": 921, - "pc": [ - 141, - 142, - 143, - 144 - ] - }, - { - "teal": 110, - "source": 921, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 145 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 921, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 921, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 921, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 921, + "pc": [ + 10 + ] + }, + { + "teal": 16, + "source": 921, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 921, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 921, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 921, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 921, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 922, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 922, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 922, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 33, + "source": 922, + "pc": [ + 54 + ] + }, + { + "teal": 34, + "source": 922, + "pc": [ + 55, + 56 + ] + }, + { + "teal": 35, + "source": 922, + "pc": [ + 57 + ] + }, + { + "teal": 36, + "source": 922, + "pc": [ + 58 + ] + }, + { + "teal": 37, + "source": 922, + "pc": [ + 59 + ] + }, + { + "teal": 38, + "source": 922, + "pc": [ + 60 + ] + }, + { + "teal": 39, + "source": 922, + "pc": [ + 61 + ] + }, + { + "teal": 43, + "source": 922, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 46, + "source": 922, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 50, + "source": 923, + "pc": [ + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 51, + "source": 923, + "pc": [ + 71 + ] + }, + { + "teal": 52, + "source": 923, + "pc": [ + 72 + ] + }, + { + "teal": 53, + "source": 923, + "pc": [ + 73 + ] + }, + { + "teal": 54, + "source": 923, + "pc": [ + 74 + ] + }, + { + "teal": 55, + "source": 923, + "pc": [ + 75 + ] + }, + { + "teal": 56, + "source": 923, + "pc": [ + 76 + ] + }, + { + "teal": 57, + "source": 923, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 58, + "source": 923, + "pc": [ + 79 + ] + }, + { + "teal": 59, + "source": 923, + "pc": [ + 80 + ] + }, + { + "teal": 60, + "source": 923, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 61, + "source": 923, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 923, + "pc": [ + 84 + ] + }, + { + "teal": 63, + "source": 923, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 64, + "source": 923, + "pc": [ + 87 + ] + }, + { + "teal": 65, + "source": 923, + "pc": [ + 88 + ] + }, + { + "teal": 66, + "source": 923, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 67, + "source": 923, + "pc": [ + 91 + ] + }, + { + "teal": 68, + "source": 923, + "pc": [ + 92 + ] + }, + { + "teal": 69, + "source": 923, + "pc": [ + 93 + ] + }, + { + "teal": 70, + "source": 923, + "pc": [ + 94 + ] + }, + { + "teal": 71, + "source": 923, + "pc": [ + 95 + ] + }, + { + "teal": 72, + "source": 923, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 73, + "source": 923, + "pc": [ + 98 + ] + }, + { + "teal": 74, + "source": 923, + "pc": [ + 99 + ] + }, + { + "teal": 75, + "source": 923, + "pc": [ + 100 + ] + }, + { + "teal": 76, + "source": 923, + "pc": [ + 101 + ] + }, + { + "teal": 77, + "source": 923, + "pc": [ + 102 + ] + }, + { + "teal": 78, + "source": 923, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 82, + "source": 925, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 83, + "source": 925, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 84, + "source": 925, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 85, + "source": 925, + "pc": [ + 111 + ] + }, + { + "teal": 86, + "source": 925, + "pc": [ + 112 + ] + }, + { + "teal": 89, + "source": 922, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 90, + "source": 922, + "pc": [ + 115 + ] + }, + { + "teal": 93, + "source": 921, + "pc": [ + 116 + ] + }, + { + "teal": 94, + "source": 921, + "pc": [ + 117 + ] + }, + { + "teal": 97, + "source": 921, + "pc": [ + 118, + 119, + 120, + 121, + 122, + 123 + ] + }, + { + "teal": 98, + "source": 921, + "pc": [ + 124, + 125, + 126 + ] + }, + { + "teal": 99, + "source": 921, + "pc": [ + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 102, + "source": 921, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 131 + ] + }, + { + "teal": 105, + "source": 921, + "pc": [ + 132, + 133, + 134, + 135, + 136, + 137 + ] + }, + { + "teal": 106, + "source": 921, + "pc": [ + 138, + 139, + 140 + ] + }, + { + "teal": 107, + "source": 921, + "pc": [ + 141, + 142, + 143, + 144 + ] + }, + { + "teal": 110, + "source": 921, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 145 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKTogYm9vbGVhbgpzdGF0aWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MjMKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTI1CgkvLyByZXR1cm4gYVs4XTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKWJvb2wKKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheUFjY2VzcwoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNCb29sQXJyYXlBY2Nlc3MoKTogYm9vbGVhbgpzdGF0aWNCb29sQXJyYXlBY2Nlc3M6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5MjMKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTI1CgkvLyByZXR1cm4gYVs4XTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDgKCWdldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5QWNjZXNzKClib29sIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlBY2Nlc3MKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.approval.teal b/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.approval.teal index 55cab87cf..d582b7eeb 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc32.json b/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc32.json index 19e05cc5e..891c8e2b1 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXlVcGRhdGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTQ5CgkvLyBhWzhdID0gdHJ1ZQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1MQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXlVcGRhdGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTQ5CgkvLyBhWzhdID0gdHJ1ZQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1MQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc56_draft.json index 4b3d82f5f..46bbeef45 100644 --- a/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticBoolArrayUpdate.arc56_draft.json @@ -60,553 +60,556 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 945, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 945, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 945, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 945, - "pc": [ - 10 - ] - }, - { - "teal": 16, - "source": 945, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 945, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 945, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 945, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 945, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 946, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 946, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 946, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 946, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 946, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 946, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 946, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 946, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 46, - "source": 947, - "pc": [ - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 47, - "source": 947, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 947, - "pc": [ - 65 - ] - }, - { - "teal": 49, - "source": 947, - "pc": [ - 66 - ] - }, - { - "teal": 50, - "source": 947, - "pc": [ - 67 - ] - }, - { - "teal": 51, - "source": 947, - "pc": [ - 68 - ] - }, - { - "teal": 52, - "source": 947, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 947, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 54, - "source": 947, - "pc": [ - 72 - ] - }, - { - "teal": 55, - "source": 947, - "pc": [ - 73 - ] - }, - { - "teal": 56, - "source": 947, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 57, - "source": 947, - "pc": [ - 76 - ] - }, - { - "teal": 58, - "source": 947, - "pc": [ - 77 - ] - }, - { - "teal": 59, - "source": 947, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 60, - "source": 947, - "pc": [ - 80 - ] - }, - { - "teal": 61, - "source": 947, - "pc": [ - 81 - ] - }, - { - "teal": 62, - "source": 947, - "pc": [ - 82, - 83 - ] - }, - { - "teal": 63, - "source": 947, - "pc": [ - 84 - ] - }, - { - "teal": 64, - "source": 947, - "pc": [ - 85 - ] - }, - { - "teal": 65, - "source": 947, - "pc": [ - 86 - ] - }, - { - "teal": 66, - "source": 947, - "pc": [ - 87 - ] - }, - { - "teal": 67, - "source": 947, - "pc": [ - 88 - ] - }, - { - "teal": 68, - "source": 947, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 69, - "source": 947, - "pc": [ - 91 - ] - }, - { - "teal": 70, - "source": 947, - "pc": [ - 92 - ] - }, - { - "teal": 71, - "source": 947, - "pc": [ - 93 - ] - }, - { - "teal": 72, - "source": 947, - "pc": [ - 94 - ] - }, - { - "teal": 73, - "source": 947, - "pc": [ - 95 - ] - }, - { - "teal": 74, - "source": 947, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 78, - "source": 949, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 79, - "source": 949, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 80, - "source": 949, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 81, - "source": 949, - "pc": [ - 104 - ] - }, - { - "teal": 82, - "source": 949, - "pc": [ - 105 - ] - }, - { - "teal": 83, - "source": 949, - "pc": [ - 106 - ] - }, - { - "teal": 84, - "source": 949, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 88, - "source": 951, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 91, - "source": 946, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 92, - "source": 946, - "pc": [ - 113 - ] - }, - { - "teal": 95, - "source": 945, - "pc": [ - 114 - ] - }, - { - "teal": 96, - "source": 945, - "pc": [ - 115 - ] - }, - { - "teal": 99, - "source": 945, - "pc": [ - 116, - 117, - 118, - 119, - 120, - 121 - ] - }, - { - "teal": 100, - "source": 945, - "pc": [ - 122, - 123, - 124 - ] - }, - { - "teal": 101, - "source": 945, - "pc": [ - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 104, - "source": 945, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 129 - ] - }, - { - "teal": 107, - "source": 945, - "pc": [ - 130, - 131, - 132, - 133, - 134, - 135 - ] - }, - { - "teal": 108, - "source": 945, - "pc": [ - 136, - 137, - 138 - ] - }, - { - "teal": 109, - "source": 945, - "pc": [ - 139, - 140, - 141, - 142 - ] - }, - { - "teal": 112, - "source": 945, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 143 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 945, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 945, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 945, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 945, + "pc": [ + 10 + ] + }, + { + "teal": 16, + "source": 945, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 945, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 945, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 945, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 945, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 946, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 946, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 946, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 946, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 946, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 946, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 946, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 946, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 46, + "source": 947, + "pc": [ + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 47, + "source": 947, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 947, + "pc": [ + 65 + ] + }, + { + "teal": 49, + "source": 947, + "pc": [ + 66 + ] + }, + { + "teal": 50, + "source": 947, + "pc": [ + 67 + ] + }, + { + "teal": 51, + "source": 947, + "pc": [ + 68 + ] + }, + { + "teal": 52, + "source": 947, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 947, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 54, + "source": 947, + "pc": [ + 72 + ] + }, + { + "teal": 55, + "source": 947, + "pc": [ + 73 + ] + }, + { + "teal": 56, + "source": 947, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 57, + "source": 947, + "pc": [ + 76 + ] + }, + { + "teal": 58, + "source": 947, + "pc": [ + 77 + ] + }, + { + "teal": 59, + "source": 947, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 60, + "source": 947, + "pc": [ + 80 + ] + }, + { + "teal": 61, + "source": 947, + "pc": [ + 81 + ] + }, + { + "teal": 62, + "source": 947, + "pc": [ + 82, + 83 + ] + }, + { + "teal": 63, + "source": 947, + "pc": [ + 84 + ] + }, + { + "teal": 64, + "source": 947, + "pc": [ + 85 + ] + }, + { + "teal": 65, + "source": 947, + "pc": [ + 86 + ] + }, + { + "teal": 66, + "source": 947, + "pc": [ + 87 + ] + }, + { + "teal": 67, + "source": 947, + "pc": [ + 88 + ] + }, + { + "teal": 68, + "source": 947, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 69, + "source": 947, + "pc": [ + 91 + ] + }, + { + "teal": 70, + "source": 947, + "pc": [ + 92 + ] + }, + { + "teal": 71, + "source": 947, + "pc": [ + 93 + ] + }, + { + "teal": 72, + "source": 947, + "pc": [ + 94 + ] + }, + { + "teal": 73, + "source": 947, + "pc": [ + 95 + ] + }, + { + "teal": 74, + "source": 947, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 78, + "source": 949, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 79, + "source": 949, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 80, + "source": 949, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 81, + "source": 949, + "pc": [ + 104 + ] + }, + { + "teal": 82, + "source": 949, + "pc": [ + 105 + ] + }, + { + "teal": 83, + "source": 949, + "pc": [ + 106 + ] + }, + { + "teal": 84, + "source": 949, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 88, + "source": 951, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 91, + "source": 946, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 92, + "source": 946, + "pc": [ + 113 + ] + }, + { + "teal": 95, + "source": 945, + "pc": [ + 114 + ] + }, + { + "teal": 96, + "source": 945, + "pc": [ + 115 + ] + }, + { + "teal": 99, + "source": 945, + "pc": [ + 116, + 117, + 118, + 119, + 120, + 121 + ] + }, + { + "teal": 100, + "source": 945, + "pc": [ + 122, + 123, + 124 + ] + }, + { + "teal": 101, + "source": 945, + "pc": [ + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 104, + "source": 945, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 129 + ] + }, + { + "teal": 107, + "source": 945, + "pc": [ + 130, + 131, + 132, + 133, + 134, + 135 + ] + }, + { + "teal": 108, + "source": 945, + "pc": [ + 136, + 137, + 138 + ] + }, + { + "teal": 109, + "source": 945, + "pc": [ + 139, + 140, + 141, + 142 + ] + }, + { + "teal": 112, + "source": 945, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 143 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXlVcGRhdGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTQ5CgkvLyBhWzhdID0gdHJ1ZQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1MQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCb29sQXJyYXlVcGRhdGUoKWJvb2xbOV0KKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldCgljYWxsc3ViIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Jvb2xBcnJheVVwZGF0ZSgpOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgpzdGF0aWNCb29sQXJyYXlVcGRhdGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo5NDcKCS8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+ID0gW3RydWUsIGZhbHNlLCB0cnVlLCB0cnVlLCBmYWxzZSwgZmFsc2UsIHRydWUsIGZhbHNlLCBmYWxzZV0KCWJ5dGUgMHgwMDAwCglpbnQgMAoJaW50IDEKCXNldGJpdAoJaW50IDEKCWludCAwCglzZXRiaXQKCWludCAyCglpbnQgMQoJc2V0Yml0CglpbnQgMwoJaW50IDEKCXNldGJpdAoJaW50IDQKCWludCAwCglzZXRiaXQKCWludCA1CglpbnQgMAoJc2V0Yml0CglpbnQgNgoJaW50IDEKCXNldGJpdAoJaW50IDcKCWludCAwCglzZXRiaXQKCWludCA4CglpbnQgMAoJc2V0Yml0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6OTQ5CgkvLyBhWzhdID0gdHJ1ZQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8Ym9vbGVhbiwgOT4KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgOAoJaW50IDEKCXNldGJpdAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PGJvb2xlYW4sIDk+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjk1MQoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxib29sZWFuLCA5PgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljQm9vbEFycmF5VXBkYXRlKClib29sWzldIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCb29sQXJyYXlVcGRhdGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticByteCasting.approval.teal b/tests/contracts/artifacts/ABITestStaticByteCasting.approval.teal index 21a64e08a..5b2b8eb69 100644 --- a/tests/contracts/artifacts/ABITestStaticByteCasting.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticByteCasting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticByteCasting.arc32.json b/tests/contracts/artifacts/ABITestStaticByteCasting.arc32.json index 0f12f05ef..a10eb7c2b 100644 --- a/tests/contracts/artifacts/ABITestStaticByteCasting.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticByteCasting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCeXRlQ2FzdGluZygpYnl0ZVs1XQoqYWJpX3JvdXRlX3N0YXRpY0J5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdCgljYWxsc3ViIHN0YXRpY0J5dGVDYXN0aW5nCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQnl0ZUNhc3RpbmcoKTogYnl0ZXM8NT4Kc3RhdGljQnl0ZUNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA0MQoJLy8gcmV0dXJuICdhYmMnIGFzIGJ5dGVzPDU+OwoJYnl0ZSAweDYxNjI2MzAwMDAgLy8gImFiYyIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCeXRlQ2FzdGluZygpYnl0ZVs1XQoqYWJpX3JvdXRlX3N0YXRpY0J5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdCgljYWxsc3ViIHN0YXRpY0J5dGVDYXN0aW5nCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQnl0ZUNhc3RpbmcoKTogYnl0ZXM8NT4Kc3RhdGljQnl0ZUNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA0MQoJLy8gcmV0dXJuICdhYmMnIGFzIGJ5dGVzPDU+OwoJYnl0ZSAweDYxNjI2MzAwMDAgLy8gImFiYyIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticByteCasting.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticByteCasting.arc56_draft.json index 4d0c4c2bf..ac5f3d627 100644 --- a/tests/contracts/artifacts/ABITestStaticByteCasting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticByteCasting.arc56_draft.json @@ -60,275 +60,278 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1039, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1039, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1039, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1039, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1039, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1039, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1039, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1039, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1039, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1040, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1040, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1040, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1040, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1040, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1040, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1040, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 43, - "source": 1041, - "pc": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 44, - "source": 1040, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 1039, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 1039, - "pc": [ - 65 - ] - }, - { - "teal": 51, - "source": 1039, - "pc": [ - 66, - 67, - 68, - 69, - 70, - 71 - ] - }, - { - "teal": 52, - "source": 1039, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 53, - "source": 1039, - "pc": [ - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 56, - "source": 1039, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 79 - ] - }, - { - "teal": 59, - "source": 1039, - "pc": [ - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 60, - "source": 1039, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 61, - "source": 1039, - "pc": [ - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 64, - "source": 1039, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 93 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1039, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1039, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1039, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1039, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1039, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1039, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1039, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1039, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1039, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1040, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1040, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1040, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1040, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1040, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1040, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1040, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 43, + "source": 1041, + "pc": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 44, + "source": 1040, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 1039, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 1039, + "pc": [ + 65 + ] + }, + { + "teal": 51, + "source": 1039, + "pc": [ + 66, + 67, + 68, + 69, + 70, + 71 + ] + }, + { + "teal": 52, + "source": 1039, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 53, + "source": 1039, + "pc": [ + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 56, + "source": 1039, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 79 + ] + }, + { + "teal": 59, + "source": 1039, + "pc": [ + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 60, + "source": 1039, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 61, + "source": 1039, + "pc": [ + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 64, + "source": 1039, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 93 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCeXRlQ2FzdGluZygpYnl0ZVs1XQoqYWJpX3JvdXRlX3N0YXRpY0J5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdCgljYWxsc3ViIHN0YXRpY0J5dGVDYXN0aW5nCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQnl0ZUNhc3RpbmcoKTogYnl0ZXM8NT4Kc3RhdGljQnl0ZUNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA0MQoJLy8gcmV0dXJuICdhYmMnIGFzIGJ5dGVzPDU+OwoJYnl0ZSAweDYxNjI2MzAwMDAgLy8gImFiYyIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNCeXRlQ2FzdGluZygpYnl0ZVs1XQoqYWJpX3JvdXRlX3N0YXRpY0J5dGVDYXN0aW5nOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdCgljYWxsc3ViIHN0YXRpY0J5dGVDYXN0aW5nCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQnl0ZUNhc3RpbmcoKTogYnl0ZXM8NT4Kc3RhdGljQnl0ZUNhc3Rpbmc6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTA0MQoJLy8gcmV0dXJuICdhYmMnIGFzIGJ5dGVzPDU+OwoJYnl0ZSAweDYxNjI2MzAwMDAgLy8gImFiYyIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0J5dGVDYXN0aW5nKClieXRlWzVdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNCeXRlQ2FzdGluZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticForEach.approval.teal b/tests/contracts/artifacts/ABITestStaticForEach.approval.teal index d48ef5cc9..bbfc732b2 100644 --- a/tests/contracts/artifacts/ABITestStaticForEach.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticForEach.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticForEach.arc32.json b/tests/contracts/artifacts/ABITestStaticForEach.arc32.json index 05ababd8b..d56b1201b 100644 --- a/tests/contracts/artifacts/ABITestStaticForEach.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticForEach.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljRm9yRWFjaCgpOiB1aW50NjQKc3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzExCgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxMgoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvckVhY2hfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvckVhY2hfMAoKKmZvckVhY2hfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxNAoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljRm9yRWFjaCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljRm9yRWFjaCgpOiB1aW50NjQKc3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzExCgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxMgoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvckVhY2hfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvckVhY2hfMAoKKmZvckVhY2hfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxNAoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljRm9yRWFjaCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticForEach.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticForEach.arc56_draft.json index bc5ff5ca1..3cab71dc2 100644 --- a/tests/contracts/artifacts/ABITestStaticForEach.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticForEach.arc56_draft.json @@ -60,574 +60,577 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1306, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1306, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1306, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1306, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1306, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1306, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1306, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1306, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1306, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1307, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 1307, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 1307, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 1307, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 1307, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1307, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1307, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1307, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1307, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1307, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 48, - "source": 1308, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 49, - "source": 1308, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 53, - "source": 1309, - "pc": [ - 91 - ] - }, - { - "teal": 54, - "source": 1309, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 58, - "source": 1311, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 59, - "source": 1311, - "pc": [ - 96 - ] - }, - { - "teal": 60, - "source": 1311, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 61, - "source": 1311, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 62, - "source": 1311, - "pc": [ - 102 - ] - }, - { - "teal": 63, - "source": 1311, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 64, - "source": 1311, - "pc": [ - 105 - ] - }, - { - "teal": 65, - "source": 1311, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 70, - "source": 1312, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 71, - "source": 1312, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 72, - "source": 1312, - "pc": [ - 112 - ] - }, - { - "teal": 73, - "source": 1312, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 76, - "source": 1311, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 77, - "source": 1311, - "pc": [ - 117 - ] - }, - { - "teal": 78, - "source": 1311, - "pc": [ - 118 - ] - }, - { - "teal": 79, - "source": 1311, - "pc": [ - 119 - ] - }, - { - "teal": 80, - "source": 1311, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 81, - "source": 1311, - "pc": [ - 122 - ] - }, - { - "teal": 82, - "source": 1311, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 83, - "source": 1311, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 84, - "source": 1311, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 85, - "source": 1311, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 86, - "source": 1311, - "pc": [ - 132 - ] - }, - { - "teal": 87, - "source": 1311, - "pc": [ - 133 - ] - }, - { - "teal": 88, - "source": 1311, - "pc": [ - 134 - ] - }, - { - "teal": 89, - "source": 1311, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 90, - "source": 1311, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 95, - "source": 1314, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 98, - "source": 1307, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 101, - "source": 1307, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 102, - "source": 1307, - "pc": [ - 146 - ] - }, - { - "teal": 105, - "source": 1306, - "pc": [ - 147 - ] - }, - { - "teal": 106, - "source": 1306, - "pc": [ - 148 - ] - }, - { - "teal": 109, - "source": 1306, - "pc": [ - 149, - 150, - 151, - 152, - 153, - 154 - ] - }, - { - "teal": 110, - "source": 1306, - "pc": [ - 155, - 156, - 157 - ] - }, - { - "teal": 111, - "source": 1306, - "pc": [ - 158, - 159, - 160, - 161 - ] - }, - { - "teal": 114, - "source": 1306, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 162 - ] - }, - { - "teal": 117, - "source": 1306, - "pc": [ - 163, - 164, - 165, - 166, - 167, - 168 - ] - }, - { - "teal": 118, - "source": 1306, - "pc": [ - 169, - 170, - 171 - ] - }, - { - "teal": 119, - "source": 1306, - "pc": [ - 172, - 173, - 174, - 175 - ] - }, - { - "teal": 122, - "source": 1306, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 176 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1306, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1306, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1306, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1306, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1306, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1306, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1306, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1306, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1306, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1307, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 1307, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 1307, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 1307, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 1307, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1307, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1307, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1307, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1307, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1307, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 48, + "source": 1308, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 49, + "source": 1308, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 53, + "source": 1309, + "pc": [ + 91 + ] + }, + { + "teal": 54, + "source": 1309, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 58, + "source": 1311, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 59, + "source": 1311, + "pc": [ + 96 + ] + }, + { + "teal": 60, + "source": 1311, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 61, + "source": 1311, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 62, + "source": 1311, + "pc": [ + 102 + ] + }, + { + "teal": 63, + "source": 1311, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 64, + "source": 1311, + "pc": [ + 105 + ] + }, + { + "teal": 65, + "source": 1311, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 70, + "source": 1312, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 71, + "source": 1312, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 72, + "source": 1312, + "pc": [ + 112 + ] + }, + { + "teal": 73, + "source": 1312, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 76, + "source": 1311, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 77, + "source": 1311, + "pc": [ + 117 + ] + }, + { + "teal": 78, + "source": 1311, + "pc": [ + 118 + ] + }, + { + "teal": 79, + "source": 1311, + "pc": [ + 119 + ] + }, + { + "teal": 80, + "source": 1311, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 81, + "source": 1311, + "pc": [ + 122 + ] + }, + { + "teal": 82, + "source": 1311, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 83, + "source": 1311, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 84, + "source": 1311, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 85, + "source": 1311, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 86, + "source": 1311, + "pc": [ + 132 + ] + }, + { + "teal": 87, + "source": 1311, + "pc": [ + 133 + ] + }, + { + "teal": 88, + "source": 1311, + "pc": [ + 134 + ] + }, + { + "teal": 89, + "source": 1311, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 90, + "source": 1311, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 95, + "source": 1314, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 98, + "source": 1307, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 101, + "source": 1307, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 102, + "source": 1307, + "pc": [ + 146 + ] + }, + { + "teal": 105, + "source": 1306, + "pc": [ + 147 + ] + }, + { + "teal": 106, + "source": 1306, + "pc": [ + 148 + ] + }, + { + "teal": 109, + "source": 1306, + "pc": [ + 149, + 150, + 151, + 152, + 153, + 154 + ] + }, + { + "teal": 110, + "source": 1306, + "pc": [ + 155, + 156, + 157 + ] + }, + { + "teal": 111, + "source": 1306, + "pc": [ + 158, + 159, + 160, + 161 + ] + }, + { + "teal": 114, + "source": 1306, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 162 + ] + }, + { + "teal": 117, + "source": 1306, + "pc": [ + 163, + 164, + 165, + 166, + 167, + 168 + ] + }, + { + "teal": 118, + "source": 1306, + "pc": [ + 169, + 170, + 171 + ] + }, + { + "teal": 119, + "source": 1306, + "pc": [ + 172, + 173, + 174, + 175 + ] + }, + { + "teal": 122, + "source": 1306, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 176 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljRm9yRWFjaCgpOiB1aW50NjQKc3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzExCgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxMgoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvckVhY2hfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvckVhY2hfMAoKKmZvckVhY2hfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxNAoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljRm9yRWFjaCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JFYWNoKCl1aW50NjQKKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0YXRpY0ZvckVhY2goKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JFYWNoCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljRm9yRWFjaCgpOiB1aW50NjQKc3RhdGljRm9yRWFjaDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOAoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwOQoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzExCgkvLyBhLmZvckVhY2gKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWR1cAoJZnJhbWVfYnVyeSAyIC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWludCAwCglmcmFtZV9idXJ5IDQgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCipmb3JFYWNoXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxMgoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIGluY3JlbWVudCBvZmZzZXQgYW5kIGxvb3AgaWYgbm90IG91dCBvZiBib3VuZHMKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJKwoJZHVwCglpbnQgMjQgLy8gb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvckVhY2hfMF9lbmQKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJZnJhbWVfZGlnIDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCWV4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyB2OiB1aW50NjQKCWIgKmZvckVhY2hfMAoKKmZvckVhY2hfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMxNAoJLy8gcmV0dXJuIHN1bTsKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gNAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RhdGljRm9yRWFjaCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdGF0aWNGb3JFYWNoCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticForOf.approval.teal b/tests/contracts/artifacts/ABITestStaticForOf.approval.teal index 5ed0c99fb..4d635ce0a 100644 --- a/tests/contracts/artifacts/ABITestStaticForOf.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticForOf.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticForOf.arc32.json b/tests/contracts/artifacts/ABITestStaticForOf.arc32.json index 182c523f4..762da30c4 100644 --- a/tests/contracts/artifacts/ABITestStaticForOf.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticForOf.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JPZigpdWludDY0CiphYmlfcm91dGVfc3RhdGljRm9yT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljRm9yT2YoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JPZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Zvck9mKCk6IHVpbnQ2NApzdGF0aWNGb3JPZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1OAoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKKmZvck9mXzBfY29udGludWU6CgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JPZl8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yT2ZfMAoKKmZvck9mXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NjAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0Zvck9mKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Zvck9mCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JPZigpdWludDY0CiphYmlfcm91dGVfc3RhdGljRm9yT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljRm9yT2YoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JPZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Zvck9mKCk6IHVpbnQ2NApzdGF0aWNGb3JPZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1OAoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKKmZvck9mXzBfY29udGludWU6CgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JPZl8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yT2ZfMAoKKmZvck9mXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NjAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0Zvck9mKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Zvck9mCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticForOf.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticForOf.arc56_draft.json index 7b99a94fe..7c4ff6ad6 100644 --- a/tests/contracts/artifacts/ABITestStaticForOf.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticForOf.arc56_draft.json @@ -60,574 +60,577 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1451, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1451, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1451, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1451, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1451, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1451, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1451, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1451, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1451, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1452, - "pc": [ - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 31, - "source": 1452, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 1452, - "pc": [ - 51 - ] - }, - { - "teal": 33, - "source": 1452, - "pc": [ - 52 - ] - }, - { - "teal": 34, - "source": 1452, - "pc": [ - 53 - ] - }, - { - "teal": 35, - "source": 1452, - "pc": [ - 54 - ] - }, - { - "teal": 36, - "source": 1452, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 1452, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1452, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 44, - "source": 1452, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 48, - "source": 1453, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 49, - "source": 1453, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 53, - "source": 1454, - "pc": [ - 91 - ] - }, - { - "teal": 54, - "source": 1454, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 55, - "source": 1457, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 56, - "source": 1457, - "pc": [ - 96 - ] - }, - { - "teal": 57, - "source": 1457, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 58, - "source": 1457, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 59, - "source": 1457, - "pc": [ - 102 - ] - }, - { - "teal": 60, - "source": 1457, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 61, - "source": 1457, - "pc": [ - 105 - ] - }, - { - "teal": 62, - "source": 1457, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 67, - "source": 1458, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 68, - "source": 1458, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 69, - "source": 1458, - "pc": [ - 112 - ] - }, - { - "teal": 70, - "source": 1458, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 74, - "source": 1457, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 75, - "source": 1457, - "pc": [ - 117 - ] - }, - { - "teal": 76, - "source": 1457, - "pc": [ - 118 - ] - }, - { - "teal": 77, - "source": 1457, - "pc": [ - 119 - ] - }, - { - "teal": 78, - "source": 1457, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 79, - "source": 1457, - "pc": [ - 122 - ] - }, - { - "teal": 80, - "source": 1457, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 81, - "source": 1457, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 82, - "source": 1457, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 83, - "source": 1457, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 84, - "source": 1457, - "pc": [ - 132 - ] - }, - { - "teal": 85, - "source": 1457, - "pc": [ - 133 - ] - }, - { - "teal": 86, - "source": 1457, - "pc": [ - 134 - ] - }, - { - "teal": 87, - "source": 1457, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 88, - "source": 1457, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 93, - "source": 1460, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 96, - "source": 1452, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 99, - "source": 1452, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 100, - "source": 1452, - "pc": [ - 146 - ] - }, - { - "teal": 103, - "source": 1451, - "pc": [ - 147 - ] - }, - { - "teal": 104, - "source": 1451, - "pc": [ - 148 - ] - }, - { - "teal": 107, - "source": 1451, - "pc": [ - 149, - 150, - 151, - 152, - 153, - 154 - ] - }, - { - "teal": 108, - "source": 1451, - "pc": [ - 155, - 156, - 157 - ] - }, - { - "teal": 109, - "source": 1451, - "pc": [ - 158, - 159, - 160, - 161 - ] - }, - { - "teal": 112, - "source": 1451, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 162 - ] - }, - { - "teal": 115, - "source": 1451, - "pc": [ - 163, - 164, - 165, - 166, - 167, - 168 - ] - }, - { - "teal": 116, - "source": 1451, - "pc": [ - 169, - 170, - 171 - ] - }, - { - "teal": 117, - "source": 1451, - "pc": [ - 172, - 173, - 174, - 175 - ] - }, - { - "teal": 120, - "source": 1451, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 176 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1451, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1451, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1451, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1451, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1451, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1451, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1451, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1451, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1451, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1452, + "pc": [ + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 31, + "source": 1452, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 1452, + "pc": [ + 51 + ] + }, + { + "teal": 33, + "source": 1452, + "pc": [ + 52 + ] + }, + { + "teal": 34, + "source": 1452, + "pc": [ + 53 + ] + }, + { + "teal": 35, + "source": 1452, + "pc": [ + 54 + ] + }, + { + "teal": 36, + "source": 1452, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 1452, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1452, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 44, + "source": 1452, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 48, + "source": 1453, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 49, + "source": 1453, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 53, + "source": 1454, + "pc": [ + 91 + ] + }, + { + "teal": 54, + "source": 1454, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 55, + "source": 1457, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 56, + "source": 1457, + "pc": [ + 96 + ] + }, + { + "teal": 57, + "source": 1457, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 58, + "source": 1457, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 59, + "source": 1457, + "pc": [ + 102 + ] + }, + { + "teal": 60, + "source": 1457, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 61, + "source": 1457, + "pc": [ + 105 + ] + }, + { + "teal": 62, + "source": 1457, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 67, + "source": 1458, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 68, + "source": 1458, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 69, + "source": 1458, + "pc": [ + 112 + ] + }, + { + "teal": 70, + "source": 1458, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 74, + "source": 1457, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 75, + "source": 1457, + "pc": [ + 117 + ] + }, + { + "teal": 76, + "source": 1457, + "pc": [ + 118 + ] + }, + { + "teal": 77, + "source": 1457, + "pc": [ + 119 + ] + }, + { + "teal": 78, + "source": 1457, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 79, + "source": 1457, + "pc": [ + 122 + ] + }, + { + "teal": 80, + "source": 1457, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 81, + "source": 1457, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 82, + "source": 1457, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 83, + "source": 1457, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 84, + "source": 1457, + "pc": [ + 132 + ] + }, + { + "teal": 85, + "source": 1457, + "pc": [ + 133 + ] + }, + { + "teal": 86, + "source": 1457, + "pc": [ + 134 + ] + }, + { + "teal": 87, + "source": 1457, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 88, + "source": 1457, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 93, + "source": 1460, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 96, + "source": 1452, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 99, + "source": 1452, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 100, + "source": 1452, + "pc": [ + 146 + ] + }, + { + "teal": 103, + "source": 1451, + "pc": [ + 147 + ] + }, + { + "teal": 104, + "source": 1451, + "pc": [ + 148 + ] + }, + { + "teal": 107, + "source": 1451, + "pc": [ + 149, + 150, + 151, + 152, + 153, + 154 + ] + }, + { + "teal": 108, + "source": 1451, + "pc": [ + 155, + 156, + 157 + ] + }, + { + "teal": 109, + "source": 1451, + "pc": [ + 158, + 159, + 160, + 161 + ] + }, + { + "teal": 112, + "source": 1451, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 162 + ] + }, + { + "teal": 115, + "source": 1451, + "pc": [ + 163, + 164, + 165, + 166, + 167, + 168 + ] + }, + { + "teal": 116, + "source": 1451, + "pc": [ + 169, + 170, + 171 + ] + }, + { + "teal": 117, + "source": 1451, + "pc": [ + 172, + 173, + 174, + 175 + ] + }, + { + "teal": 120, + "source": 1451, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 176 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JPZigpdWludDY0CiphYmlfcm91dGVfc3RhdGljRm9yT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljRm9yT2YoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JPZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Zvck9mKCk6IHVpbnQ2NApzdGF0aWNGb3JPZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1OAoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKKmZvck9mXzBfY29udGludWU6CgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JPZl8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yT2ZfMAoKKmZvck9mXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NjAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0Zvck9mKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Zvck9mCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNGb3JPZigpdWludDY0CiphYmlfcm91dGVfc3RhdGljRm9yT2Y6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RhdGljRm9yT2YoKXVpbnQ2NAoJY2FsbHN1YiBzdGF0aWNGb3JPZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY0Zvck9mKCk6IHVpbnQ2NApzdGF0aWNGb3JPZjoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1MwoJLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPiA9IFsxLCAyLCAzXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1NAoJLy8gc3VtID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJZHVwCglmcmFtZV9idXJ5IDIgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJaW50IDAKCWZyYW1lX2J1cnkgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTQ1OAoJLy8gc3VtICs9IHYKCWZyYW1lX2RpZyAxIC8vIHN1bTogdWludDY0CglmcmFtZV9kaWcgMyAvLyB2OiB1aW50NjQKCSsKCWZyYW1lX2J1cnkgMSAvLyBzdW06IHVpbnQ2NAoKKmZvck9mXzBfY29udGludWU6CgkvLyBpbmNyZW1lbnQgb2Zmc2V0IGFuZCBsb29wIGlmIG5vdCBvdXQgb2YgYm91bmRzCglmcmFtZV9kaWcgNCAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoJaW50IDgKCSsKCWR1cAoJaW50IDI0IC8vIG9mZnNldCBvZiBsYXN0IGVsZW1lbnQKCTwKCWJ6ICpmb3JPZl8wX2VuZAoJZnJhbWVfYnVyeSA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglmcmFtZV9kaWcgMiAvLyBjb3B5IG9mIHRoZSBhcnJheSB3ZSBhcmUgaXRlcmF0aW5nIG92ZXIKCWZyYW1lX2RpZyA0IC8vIHRoZSBvZmZzZXQgd2UgYXJlIGV4dHJhY3RpbmcgdGhlIG5leHQgZWxlbWVudCBmcm9tCglpbnQgOAoJZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIHY6IHVpbnQ2NAoJYiAqZm9yT2ZfMAoKKmZvck9mXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE0NjAKCS8vIHJldHVybiBzdW07CglmcmFtZV9kaWcgMSAvLyBzdW06IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY0Zvck9mKCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY0Zvck9mCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticStringArrayArg.approval.teal b/tests/contracts/artifacts/ABITestStaticStringArrayArg.approval.teal index 6b9201089..1ca58d202 100644 --- a/tests/contracts/artifacts/ABITestStaticStringArrayArg.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticStringArrayArg.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc32.json b/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc32.json index c0b193728..b5da4a17c 100644 --- a/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhzdHJpbmdbM10pc3RyaW5nCiphYmlfcm91dGVfc3RhdGljU3RyaW5nQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHN0cmluZ1szXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RhdGljU3RyaW5nQXJyYXlBcmcoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBzdGF0aWNTdHJpbmdBcnJheUFyZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+KTogc3RyaW5nCnN0YXRpY1N0cmluZ0FycmF5QXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0NQoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8c3RyaW5nLCAzPgoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1N0cmluZ0FycmF5QXJnKHN0cmluZ1szXSlzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY1N0cmluZ0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhzdHJpbmdbM10pc3RyaW5nCiphYmlfcm91dGVfc3RhdGljU3RyaW5nQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHN0cmluZ1szXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RhdGljU3RyaW5nQXJyYXlBcmcoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBzdGF0aWNTdHJpbmdBcnJheUFyZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+KTogc3RyaW5nCnN0YXRpY1N0cmluZ0FycmF5QXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0NQoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8c3RyaW5nLCAzPgoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1N0cmluZ0FycmF5QXJnKHN0cmluZ1szXSlzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY1N0cmluZ0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc56_draft.json index b0e6e7071..e9004c285 100644 --- a/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticStringArrayArg.arc56_draft.json @@ -65,443 +65,446 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 643, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 643, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 643, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 643, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 643, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 643, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 643, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 643, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 643, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 644, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 644, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 34, - "source": 644, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 644, - "pc": [ - 53 - ] - }, - { - "teal": 36, - "source": 644, - "pc": [ - 54 - ] - }, - { - "teal": 37, - "source": 644, - "pc": [ - 55 - ] - }, - { - "teal": 38, - "source": 644, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 39, - "source": 644, - "pc": [ - 59 - ] - }, - { - "teal": 40, - "source": 644, - "pc": [ - 60 - ] - }, - { - "teal": 41, - "source": 644, - "pc": [ - 61 - ] - }, - { - "teal": 42, - "source": 644, - "pc": [ - 62 - ] - }, - { - "teal": 43, - "source": 644, - "pc": [ - 63 - ] - }, - { - "teal": 44, - "source": 644, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 644, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 52, - "source": 645, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 53, - "source": 645, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 54, - "source": 645, - "pc": [ - 72 - ] - }, - { - "teal": 55, - "source": 645, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 56, - "source": 645, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 57, - "source": 645, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 58, - "source": 645, - "pc": [ - 79 - ] - }, - { - "teal": 59, - "source": 645, - "pc": [ - 80 - ] - }, - { - "teal": 60, - "source": 645, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 61, - "source": 645, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 645, - "pc": [ - 84 - ] - }, - { - "teal": 63, - "source": 645, - "pc": [ - 85 - ] - }, - { - "teal": 64, - "source": 645, - "pc": [ - 86 - ] - }, - { - "teal": 65, - "source": 645, - "pc": [ - 87 - ] - }, - { - "teal": 66, - "source": 645, - "pc": [ - 88 - ] - }, - { - "teal": 67, - "source": 645, - "pc": [ - 89 - ] - }, - { - "teal": 68, - "source": 645, - "pc": [ - 90, - 91, - 92 - ] - }, - { - "teal": 69, - "source": 644, - "pc": [ - 93 - ] - }, - { - "teal": 72, - "source": 643, - "pc": [ - 94 - ] - }, - { - "teal": 73, - "source": 643, - "pc": [ - 95 - ] - }, - { - "teal": 76, - "source": 643, - "pc": [ - 96, - 97, - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 77, - "source": 643, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 78, - "source": 643, - "pc": [ - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 81, - "source": 643, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 109 - ] - }, - { - "teal": 84, - "source": 643, - "pc": [ - 110, - 111, - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 85, - "source": 643, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 86, - "source": 643, - "pc": [ - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 89, - "source": 643, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 123 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 643, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 643, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 643, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 643, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 643, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 643, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 643, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 643, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 643, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 644, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 644, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 34, + "source": 644, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 644, + "pc": [ + 53 + ] + }, + { + "teal": 36, + "source": 644, + "pc": [ + 54 + ] + }, + { + "teal": 37, + "source": 644, + "pc": [ + 55 + ] + }, + { + "teal": 38, + "source": 644, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 39, + "source": 644, + "pc": [ + 59 + ] + }, + { + "teal": 40, + "source": 644, + "pc": [ + 60 + ] + }, + { + "teal": 41, + "source": 644, + "pc": [ + 61 + ] + }, + { + "teal": 42, + "source": 644, + "pc": [ + 62 + ] + }, + { + "teal": 43, + "source": 644, + "pc": [ + 63 + ] + }, + { + "teal": 44, + "source": 644, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 644, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 52, + "source": 645, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 53, + "source": 645, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 54, + "source": 645, + "pc": [ + 72 + ] + }, + { + "teal": 55, + "source": 645, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 56, + "source": 645, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 57, + "source": 645, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 58, + "source": 645, + "pc": [ + 79 + ] + }, + { + "teal": 59, + "source": 645, + "pc": [ + 80 + ] + }, + { + "teal": 60, + "source": 645, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 61, + "source": 645, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 645, + "pc": [ + 84 + ] + }, + { + "teal": 63, + "source": 645, + "pc": [ + 85 + ] + }, + { + "teal": 64, + "source": 645, + "pc": [ + 86 + ] + }, + { + "teal": 65, + "source": 645, + "pc": [ + 87 + ] + }, + { + "teal": 66, + "source": 645, + "pc": [ + 88 + ] + }, + { + "teal": 67, + "source": 645, + "pc": [ + 89 + ] + }, + { + "teal": 68, + "source": 645, + "pc": [ + 90, + 91, + 92 + ] + }, + { + "teal": 69, + "source": 644, + "pc": [ + 93 + ] + }, + { + "teal": 72, + "source": 643, + "pc": [ + 94 + ] + }, + { + "teal": 73, + "source": 643, + "pc": [ + 95 + ] + }, + { + "teal": 76, + "source": 643, + "pc": [ + 96, + 97, + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 77, + "source": 643, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 78, + "source": 643, + "pc": [ + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 81, + "source": 643, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 109 + ] + }, + { + "teal": 84, + "source": 643, + "pc": [ + 110, + 111, + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 85, + "source": 643, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 86, + "source": 643, + "pc": [ + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 89, + "source": 643, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 123 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhzdHJpbmdbM10pc3RyaW5nCiphYmlfcm91dGVfc3RhdGljU3RyaW5nQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHN0cmluZ1szXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RhdGljU3RyaW5nQXJyYXlBcmcoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBzdGF0aWNTdHJpbmdBcnJheUFyZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+KTogc3RyaW5nCnN0YXRpY1N0cmluZ0FycmF5QXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0NQoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8c3RyaW5nLCAzPgoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1N0cmluZ0FycmF5QXJnKHN0cmluZ1szXSlzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY1N0cmluZ0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhzdHJpbmdbM10pc3RyaW5nCiphYmlfcm91dGVfc3RhdGljU3RyaW5nQXJyYXlBcmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHN0cmluZ1szXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RhdGljU3RyaW5nQXJyYXlBcmcoc3RyaW5nWzNdKXN0cmluZwoJY2FsbHN1YiBzdGF0aWNTdHJpbmdBcnJheUFyZwoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNTdHJpbmdBcnJheUFyZyhhOiBTdGF0aWNBcnJheTxzdHJpbmcsIDM+KTogc3RyaW5nCnN0YXRpY1N0cmluZ0FycmF5QXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjY0NQoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogU3RhdGljQXJyYXk8c3RyaW5nLCAzPgoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglleHRyYWN0MwoJZXh0cmFjdCAyIDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1N0cmluZ0FycmF5QXJnKHN0cmluZ1szXSlzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0YXRpY1N0cmluZ0FycmF5QXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStaticTypeInBox.approval.teal b/tests/contracts/artifacts/ABITestStaticTypeInBox.approval.teal index 7f7a4d5b6..f8c9e78ae 100644 --- a/tests/contracts/artifacts/ABITestStaticTypeInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestStaticTypeInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStaticTypeInBox.arc32.json b/tests/contracts/artifacts/ABITestStaticTypeInBox.arc32.json index caa034233..4b24288a2 100644 --- a/tests/contracts/artifacts/ABITestStaticTypeInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestStaticTypeInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNUeXBlSW5Cb3goKXZvaWQKKmFiaV9yb3V0ZV9zdGF0aWNUeXBlSW5Cb3g6CgkvLyBleGVjdXRlIHN0YXRpY1R5cGVJbkJveCgpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlSW5Cb3gKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1R5cGVJbkJveCgpOiB2b2lkCnN0YXRpY1R5cGVJbkJveDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM1CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM2CgkvLyBhc3NlcnQodGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUuaXNJbkxlZGdlcikKCXR4biBTZW5kZXIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1R5cGVJbkJveCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljVHlwZUluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNUeXBlSW5Cb3goKXZvaWQKKmFiaV9yb3V0ZV9zdGF0aWNUeXBlSW5Cb3g6CgkvLyBleGVjdXRlIHN0YXRpY1R5cGVJbkJveCgpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlSW5Cb3gKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1R5cGVJbkJveCgpOiB2b2lkCnN0YXRpY1R5cGVJbkJveDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM1CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM2CgkvLyBhc3NlcnQodGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUuaXNJbkxlZGdlcikKCXR4biBTZW5kZXIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1R5cGVJbkJveCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljVHlwZUluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStaticTypeInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestStaticTypeInBox.arc56_draft.json index e8cebcc42..4346390b0 100644 --- a/tests/contracts/artifacts/ABITestStaticTypeInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStaticTypeInBox.arc56_draft.json @@ -65,311 +65,314 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1531, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1531, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1531, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1531, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1531, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1531, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1531, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1531, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1531, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1534, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 1534, - "pc": [ - 43 - ] - }, - { - "teal": 30, - "source": 1534, - "pc": [ - 44 - ] - }, - { - "teal": 34, - "source": 1534, - "pc": [ - 45, - 46, - 47 - ] - }, - { - "teal": 38, - "source": 1535, - "pc": [ - 48, - 49 - ] - }, - { - "teal": 39, - "source": 1535, - "pc": [ - 50, - 51 - ] - }, - { - "teal": 40, - "source": 1535, - "pc": [ - 52 - ] - }, - { - "teal": 44, - "source": 1536, - "pc": [ - 53, - 54 - ] - }, - { - "teal": 45, - "source": 1536, - "pc": [ - 55 - ] - }, - { - "teal": 48, - "source": 1536, - "errorMessage": "box value does not exist: this.bMap(this.txn.sender).value", - "pc": [ - 56 - ] - }, - { - "teal": 49, - "source": 1536, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 50, - "source": 1536, - "pc": [ - 59 - ] - }, - { - "teal": 51, - "source": 1536, - "pc": [ - 60 - ] - }, - { - "teal": 52, - "source": 1536, - "pc": [ - 61 - ] - }, - { - "teal": 53, - "source": 1534, - "pc": [ - 62 - ] - }, - { - "teal": 56, - "source": 1531, - "pc": [ - 63 - ] - }, - { - "teal": 57, - "source": 1531, - "pc": [ - 64 - ] - }, - { - "teal": 60, - "source": 1531, - "pc": [ - 65, - 66, - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 61, - "source": 1531, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 62, - "source": 1531, - "pc": [ - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 65, - "source": 1531, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 78 - ] - }, - { - "teal": 68, - "source": 1531, - "pc": [ - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 69, - "source": 1531, - "pc": [ - 85, - 86, - 87 - ] - }, - { - "teal": 70, - "source": 1531, - "pc": [ - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 73, - "source": 1531, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 92 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1531, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1531, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1531, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1531, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1531, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1531, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1531, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1531, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1531, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1534, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 1534, + "pc": [ + 43 + ] + }, + { + "teal": 30, + "source": 1534, + "pc": [ + 44 + ] + }, + { + "teal": 34, + "source": 1534, + "pc": [ + 45, + 46, + 47 + ] + }, + { + "teal": 38, + "source": 1535, + "pc": [ + 48, + 49 + ] + }, + { + "teal": 39, + "source": 1535, + "pc": [ + 50, + 51 + ] + }, + { + "teal": 40, + "source": 1535, + "pc": [ + 52 + ] + }, + { + "teal": 44, + "source": 1536, + "pc": [ + 53, + 54 + ] + }, + { + "teal": 45, + "source": 1536, + "pc": [ + 55 + ] + }, + { + "teal": 48, + "source": 1536, + "errorMessage": "box value does not exist: this.bMap(this.txn.sender).value", + "pc": [ + 56 + ] + }, + { + "teal": 49, + "source": 1536, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 50, + "source": 1536, + "pc": [ + 59 + ] + }, + { + "teal": 51, + "source": 1536, + "pc": [ + 60 + ] + }, + { + "teal": 52, + "source": 1536, + "pc": [ + 61 + ] + }, + { + "teal": 53, + "source": 1534, + "pc": [ + 62 + ] + }, + { + "teal": 56, + "source": 1531, + "pc": [ + 63 + ] + }, + { + "teal": 57, + "source": 1531, + "pc": [ + 64 + ] + }, + { + "teal": 60, + "source": 1531, + "pc": [ + 65, + 66, + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 61, + "source": 1531, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 62, + "source": 1531, + "pc": [ + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 65, + "source": 1531, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 78 + ] + }, + { + "teal": 68, + "source": 1531, + "pc": [ + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 69, + "source": 1531, + "pc": [ + 85, + 86, + 87 + ] + }, + { + "teal": 70, + "source": 1531, + "pc": [ + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 73, + "source": 1531, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 92 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNUeXBlSW5Cb3goKXZvaWQKKmFiaV9yb3V0ZV9zdGF0aWNUeXBlSW5Cb3g6CgkvLyBleGVjdXRlIHN0YXRpY1R5cGVJbkJveCgpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlSW5Cb3gKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1R5cGVJbkJveCgpOiB2b2lkCnN0YXRpY1R5cGVJbkJveDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM1CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM2CgkvLyBhc3NlcnQodGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUuaXNJbkxlZGdlcikKCXR4biBTZW5kZXIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1R5cGVJbkJveCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljVHlwZUluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdGF0aWNUeXBlSW5Cb3goKXZvaWQKKmFiaV9yb3V0ZV9zdGF0aWNUeXBlSW5Cb3g6CgkvLyBleGVjdXRlIHN0YXRpY1R5cGVJbkJveCgpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlSW5Cb3gKCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1R5cGVJbkJveCgpOiB2b2lkCnN0YXRpY1R5cGVJbkJveDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM1CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTM2CgkvLyBhc3NlcnQodGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUuaXNJbkxlZGdlcikKCXR4biBTZW5kZXIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCWFjY3RfcGFyYW1zX2dldCBBY2N0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0YXRpY1R5cGVJbkJveCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RhdGljVHlwZUluQm94CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.approval.teal b/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.approval.teal index 22609d459..85bbf856b 100644 --- a/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc32.json b/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc32.json index 67980c118..1d62c1ee2 100644 --- a/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0CiphYmlfcm91dGVfc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0b3JhZ2VQcm9wZXJ0eVJlZmVyZW5jZUluQm94KCk6IHVpbnQ2NApzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDQKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHRoaXMudHhuLnNlbmRlciwgYmFyOiB7IGJhejogMTMzNyB9IH0KCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwNTM5Cgljb25jYXQKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU0NQoJLy8gdiA9IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmJhci5iYXoKCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCWludCAzMgoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDYKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gdjogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0CiphYmlfcm91dGVfc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0b3JhZ2VQcm9wZXJ0eVJlZmVyZW5jZUluQm94KCk6IHVpbnQ2NApzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDQKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHRoaXMudHhuLnNlbmRlciwgYmFyOiB7IGJhejogMTMzNyB9IH0KCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwNTM5Cgljb25jYXQKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU0NQoJLy8gdiA9IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmJhci5iYXoKCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCWludCAzMgoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDYKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gdjogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc56_draft.json index a64c690f7..3a95603d1 100644 --- a/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStoragePropertyReferenceInBox.arc56_draft.json @@ -34,12 +34,21 @@ 56 ], "structs": { - "{ foo: Address; bar: { baz: uint64 } }": { - "foo": "address", - "bar": { - "baz": "uint64" + "{ foo: Address; bar: { baz: uint64 } }": [ + { + "name": "foo", + "type": "address" + }, + { + "name": "bar", + "type": [ + { + "name": "baz", + "type": "uint64" + } + ] } - } + ] }, "state": { "schema": { @@ -72,392 +81,395 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1540, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ] - }, - { - "teal": 13, - "source": 1540, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 14, - "source": 1540, - "pc": [ - 15 - ] - }, - { - "teal": 15, - "source": 1540, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 16, - "source": 1540, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 1540, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 1540, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 1540, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 1540, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 28, - "source": 1543, - "pc": [ - 49, - 50, - 51, - 52, - 53, - 54 - ] - }, - { - "teal": 31, - "source": 1543, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 32, - "source": 1543, - "pc": [ - 58 - ] - }, - { - "teal": 33, - "source": 1543, - "pc": [ - 59 - ] - }, - { - "teal": 34, - "source": 1543, - "pc": [ - 60 - ] - }, - { - "teal": 35, - "source": 1543, - "pc": [ - 61 - ] - }, - { - "teal": 36, - "source": 1543, - "pc": [ - 62 - ] - }, - { - "teal": 40, - "source": 1543, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 43, - "source": 1543, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 47, - "source": 1544, - "pc": [ - 68 - ] - }, - { - "teal": 48, - "source": 1544, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 49, - "source": 1544, - "pc": [ - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 50, - "source": 1544, - "pc": [ - 81 - ] - }, - { - "teal": 51, - "source": 1544, - "pc": [ - 82 - ] - }, - { - "teal": 55, - "source": 1545, - "pc": [ - 83 - ] - }, - { - "teal": 56, - "source": 1545, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 57, - "source": 1545, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 58, - "source": 1545, - "pc": [ - 88 - ] - }, - { - "teal": 59, - "source": 1545, - "pc": [ - 89 - ] - }, - { - "teal": 60, - "source": 1545, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 64, - "source": 1546, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 67, - "source": 1543, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 68, - "source": 1543, - "pc": [ - 96 - ] - }, - { - "teal": 71, - "source": 1540, - "pc": [ - 97 - ] - }, - { - "teal": 72, - "source": 1540, - "pc": [ - 98 - ] - }, - { - "teal": 75, - "source": 1540, - "pc": [ - 99, - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 76, - "source": 1540, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 77, - "source": 1540, - "pc": [ - 108, - 109, - 110, - 111 - ] - }, - { - "teal": 80, - "source": 1540, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 112 - ] - }, - { - "teal": 83, - "source": 1540, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 84, - "source": 1540, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 85, - "source": 1540, - "pc": [ - 122, - 123, - 124, - 125 - ] - }, - { - "teal": 88, - "source": 1540, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 126 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1540, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "teal": 13, + "source": 1540, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 14, + "source": 1540, + "pc": [ + 15 + ] + }, + { + "teal": 15, + "source": 1540, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 16, + "source": 1540, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 1540, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 1540, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 1540, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 1540, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 28, + "source": 1543, + "pc": [ + 49, + 50, + 51, + 52, + 53, + 54 + ] + }, + { + "teal": 31, + "source": 1543, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 32, + "source": 1543, + "pc": [ + 58 + ] + }, + { + "teal": 33, + "source": 1543, + "pc": [ + 59 + ] + }, + { + "teal": 34, + "source": 1543, + "pc": [ + 60 + ] + }, + { + "teal": 35, + "source": 1543, + "pc": [ + 61 + ] + }, + { + "teal": 36, + "source": 1543, + "pc": [ + 62 + ] + }, + { + "teal": 40, + "source": 1543, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 43, + "source": 1543, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 47, + "source": 1544, + "pc": [ + 68 + ] + }, + { + "teal": 48, + "source": 1544, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 49, + "source": 1544, + "pc": [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 50, + "source": 1544, + "pc": [ + 81 + ] + }, + { + "teal": 51, + "source": 1544, + "pc": [ + 82 + ] + }, + { + "teal": 55, + "source": 1545, + "pc": [ + 83 + ] + }, + { + "teal": 56, + "source": 1545, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 57, + "source": 1545, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 58, + "source": 1545, + "pc": [ + 88 + ] + }, + { + "teal": 59, + "source": 1545, + "pc": [ + 89 + ] + }, + { + "teal": 60, + "source": 1545, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 64, + "source": 1546, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 67, + "source": 1543, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 68, + "source": 1543, + "pc": [ + 96 + ] + }, + { + "teal": 71, + "source": 1540, + "pc": [ + 97 + ] + }, + { + "teal": 72, + "source": 1540, + "pc": [ + 98 + ] + }, + { + "teal": 75, + "source": 1540, + "pc": [ + 99, + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 76, + "source": 1540, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 77, + "source": 1540, + "pc": [ + 108, + 109, + 110, + 111 + ] + }, + { + "teal": 80, + "source": 1540, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 112 + ] + }, + { + "teal": 83, + "source": 1540, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 84, + "source": 1540, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 85, + "source": 1540, + "pc": [ + 122, + 123, + 124, + 125 + ] + }, + { + "teal": 88, + "source": 1540, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 126 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0CiphYmlfcm91dGVfc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0b3JhZ2VQcm9wZXJ0eVJlZmVyZW5jZUluQm94KCk6IHVpbnQ2NApzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDQKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHRoaXMudHhuLnNlbmRlciwgYmFyOiB7IGJhejogMTMzNyB9IH0KCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwNTM5Cgljb25jYXQKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU0NQoJLy8gdiA9IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmJhci5iYXoKCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCWludCAzMgoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDYKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gdjogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0CiphYmlfcm91dGVfc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3g6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RvcmFnZVByb3BlcnR5UmVmZXJlbmNlSW5Cb3goKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0b3JhZ2VQcm9wZXJ0eVJlZmVyZW5jZUluQm94KCk6IHVpbnQ2NApzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDQKCS8vIHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlID0geyBmb286IHRoaXMudHhuLnNlbmRlciwgYmFyOiB7IGJhejogMTMzNyB9IH0KCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwNTM5Cgljb25jYXQKCWJveF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU0NQoJLy8gdiA9IHRoaXMuYk1hcCgnYk1hcCcpLnZhbHVlLmJhci5iYXoKCWJ5dGUgMHgwMDA0NjI0ZDYxNzAKCWludCAzMgoJaW50IDgKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDAgLy8gdjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE1NDYKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gdjogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdG9yYWdlUHJvcGVydHlSZWZlcmVuY2VJbkJveAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStorageRefAccount.approval.teal b/tests/contracts/artifacts/ABITestStorageRefAccount.approval.teal index 6a7b4560d..fbfd87d1b 100644 --- a/tests/contracts/artifacts/ABITestStorageRefAccount.approval.teal +++ b/tests/contracts/artifacts/ABITestStorageRefAccount.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStorageRefAccount.arc32.json b/tests/contracts/artifacts/ABITestStorageRefAccount.arc32.json index 0a918880f..74cce1979 100644 --- a/tests/contracts/artifacts/ABITestStorageRefAccount.arc32.json +++ b/tests/contracts/artifacts/ABITestStorageRefAccount.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RvcmFnZVJlZkFjY291bnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQKCWNhbGxzdWIgc3RvcmFnZVJlZkFjY291bnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdG9yYWdlUmVmQWNjb3VudCgpOiB1aW50NjQKc3RvcmFnZVJlZkFjY291bnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMTkKCS8vIGFkZHIgPSB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBhZGRyOiBhZGRyZXNzCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjAKCS8vIHRoaXMubE1hcChhZGRyLCAwKS52YWx1ZSA9IFsxLCAyLCAzXQoJZnJhbWVfZGlnIDAgLy8gYWRkcjogYWRkcmVzcwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAzMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjEKCS8vIHIgPSB0aGlzLmxNYXAoYWRkciwgMCkudmFsdWUKCWZyYW1lX2RpZyAwIC8vIGFkZHI6IGFkZHJlc3MKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGFjY291bnQvL3IKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyMwoJLy8gYWRkciA9IGdsb2JhbHMuemVyb0FkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIGFkZHI6IGFkZHJlc3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyNQoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgMiAwCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCXJlcGxhY2UyIDgKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCXVuY292ZXIgMgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjcKCS8vIHJldHVybiB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAwKS52YWx1ZVsxXTsKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDIgMAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RvcmFnZVJlZkFjY291bnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQKCWNhbGxzdWIgc3RvcmFnZVJlZkFjY291bnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdG9yYWdlUmVmQWNjb3VudCgpOiB1aW50NjQKc3RvcmFnZVJlZkFjY291bnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMTkKCS8vIGFkZHIgPSB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBhZGRyOiBhZGRyZXNzCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjAKCS8vIHRoaXMubE1hcChhZGRyLCAwKS52YWx1ZSA9IFsxLCAyLCAzXQoJZnJhbWVfZGlnIDAgLy8gYWRkcjogYWRkcmVzcwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAzMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjEKCS8vIHIgPSB0aGlzLmxNYXAoYWRkciwgMCkudmFsdWUKCWZyYW1lX2RpZyAwIC8vIGFkZHI6IGFkZHJlc3MKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGFjY291bnQvL3IKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyMwoJLy8gYWRkciA9IGdsb2JhbHMuemVyb0FkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIGFkZHI6IGFkZHJlc3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyNQoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgMiAwCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCXJlcGxhY2UyIDgKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCXVuY292ZXIgMgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjcKCS8vIHJldHVybiB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAwKS52YWx1ZVsxXTsKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDIgMAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStorageRefAccount.arc56_draft.json b/tests/contracts/artifacts/ABITestStorageRefAccount.arc56_draft.json index 0ee19b294..6f4ebe847 100644 --- a/tests/contracts/artifacts/ABITestStorageRefAccount.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStorageRefAccount.arc56_draft.json @@ -65,638 +65,641 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1014, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14 - ] - }, - { - "teal": 13, - "source": 1014, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 14, - "source": 1014, - "pc": [ - 17 - ] - }, - { - "teal": 15, - "source": 1014, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 16, - "source": 1014, - "pc": [ - 20 - ] - }, - { - "teal": 17, - "source": 1014, - "pc": [ - 21, - 22 - ] - }, - { - "teal": 18, - "source": 1014, - "pc": [ - 23 - ] - }, - { - "teal": 19, - "source": 1014, - "pc": [ - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 23, - "source": 1014, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 50 - ] - }, - { - "teal": 28, - "source": 1017, - "pc": [ - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 31, - "source": 1017, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 32, - "source": 1017, - "pc": [ - 60 - ] - }, - { - "teal": 33, - "source": 1017, - "pc": [ - 61 - ] - }, - { - "teal": 34, - "source": 1017, - "pc": [ - 62 - ] - }, - { - "teal": 35, - "source": 1017, - "pc": [ - 63 - ] - }, - { - "teal": 36, - "source": 1017, - "pc": [ - 64 - ] - }, - { - "teal": 40, - "source": 1017, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 43, - "source": 1017, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 44, - "source": 1017, - "pc": [ - 70 - ] - }, - { - "teal": 48, - "source": 1019, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 49, - "source": 1019, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 53, - "source": 1020, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 54, - "source": 1020, - "pc": [ - 77 - ] - }, - { - "teal": 55, - "source": 1020, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 56, - "source": 1020, - "pc": [ - 106 - ] - }, - { - "teal": 60, - "source": 1021, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 61, - "source": 1021, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 65, - "source": 1023, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 66, - "source": 1023, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 70, - "source": 1021, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 71, - "source": 1021, - "pc": [ - 117 - ] - }, - { - "teal": 72, - "source": 1021, - "pc": [ - 118 - ] - }, - { - "teal": 73, - "source": 1021, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 74, - "source": 1025, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 75, - "source": 1025, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 76, - "source": 1025, - "pc": [ - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135 - ] - }, - { - "teal": 77, - "source": 1025, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 78, - "source": 1021, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 79, - "source": 1021, - "pc": [ - 140 - ] - }, - { - "teal": 80, - "source": 1021, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 81, - "source": 1021, - "pc": [ - 143 - ] - }, - { - "teal": 82, - "source": 1021, - "pc": [ - 144 - ] - }, - { - "teal": 83, - "source": 1021, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 84, - "source": 1021, - "pc": [ - 147 - ] - }, - { - "teal": 85, - "source": 1021, - "pc": [ - 148 - ] - }, - { - "teal": 86, - "source": 1021, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 87, - "source": 1021, - "pc": [ - 152 - ] - }, - { - "teal": 88, - "source": 1021, - "pc": [ - 153 - ] - }, - { - "teal": 89, - "source": 1021, - "pc": [ - 154 - ] - }, - { - "teal": 93, - "source": 1027, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 94, - "source": 1027, - "pc": [ - 157 - ] - }, - { - "teal": 95, - "source": 1027, - "pc": [ - 158 - ] - }, - { - "teal": 96, - "source": 1027, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 97, - "source": 1027, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 98, - "source": 1027, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 99, - "source": 1027, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 100, - "source": 1027, - "pc": [ - 169 - ] - }, - { - "teal": 103, - "source": 1017, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 106, - "source": 1017, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 107, - "source": 1017, - "pc": [ - 174 - ] - }, - { - "teal": 110, - "source": 1014, - "pc": [ - 175 - ] - }, - { - "teal": 111, - "source": 1014, - "pc": [ - 176 - ] - }, - { - "teal": 114, - "source": 1014, - "pc": [ - 177, - 178, - 179, - 180, - 181, - 182 - ] - }, - { - "teal": 115, - "source": 1014, - "pc": [ - 183, - 184, - 185 - ] - }, - { - "teal": 116, - "source": 1014, - "pc": [ - 186, - 187, - 188, - 189 - ] - }, - { - "teal": 119, - "source": 1014, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 190 - ] - }, - { - "teal": 122, - "source": 1014, - "pc": [ - 191, - 192, - 193, - 194, - 195, - 196 - ] - }, - { - "teal": 123, - "source": 1014, - "pc": [ - 197, - 198, - 199 - ] - }, - { - "teal": 124, - "source": 1014, - "pc": [ - 200, - 201, - 202, - 203 - ] - }, - { - "teal": 127, - "source": 1014, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 204 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1014, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + }, + { + "teal": 13, + "source": 1014, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 14, + "source": 1014, + "pc": [ + 17 + ] + }, + { + "teal": 15, + "source": 1014, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 16, + "source": 1014, + "pc": [ + 20 + ] + }, + { + "teal": 17, + "source": 1014, + "pc": [ + 21, + 22 + ] + }, + { + "teal": 18, + "source": 1014, + "pc": [ + 23 + ] + }, + { + "teal": 19, + "source": 1014, + "pc": [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 23, + "source": 1014, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 50 + ] + }, + { + "teal": 28, + "source": 1017, + "pc": [ + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 31, + "source": 1017, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 32, + "source": 1017, + "pc": [ + 60 + ] + }, + { + "teal": 33, + "source": 1017, + "pc": [ + 61 + ] + }, + { + "teal": 34, + "source": 1017, + "pc": [ + 62 + ] + }, + { + "teal": 35, + "source": 1017, + "pc": [ + 63 + ] + }, + { + "teal": 36, + "source": 1017, + "pc": [ + 64 + ] + }, + { + "teal": 40, + "source": 1017, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 43, + "source": 1017, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 44, + "source": 1017, + "pc": [ + 70 + ] + }, + { + "teal": 48, + "source": 1019, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 49, + "source": 1019, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 53, + "source": 1020, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 54, + "source": 1020, + "pc": [ + 77 + ] + }, + { + "teal": 55, + "source": 1020, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 56, + "source": 1020, + "pc": [ + 106 + ] + }, + { + "teal": 60, + "source": 1021, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 61, + "source": 1021, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 65, + "source": 1023, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 66, + "source": 1023, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 70, + "source": 1021, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 71, + "source": 1021, + "pc": [ + 117 + ] + }, + { + "teal": 72, + "source": 1021, + "pc": [ + 118 + ] + }, + { + "teal": 73, + "source": 1021, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 74, + "source": 1025, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 75, + "source": 1025, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 76, + "source": 1025, + "pc": [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135 + ] + }, + { + "teal": 77, + "source": 1025, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 78, + "source": 1021, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 79, + "source": 1021, + "pc": [ + 140 + ] + }, + { + "teal": 80, + "source": 1021, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 81, + "source": 1021, + "pc": [ + 143 + ] + }, + { + "teal": 82, + "source": 1021, + "pc": [ + 144 + ] + }, + { + "teal": 83, + "source": 1021, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 84, + "source": 1021, + "pc": [ + 147 + ] + }, + { + "teal": 85, + "source": 1021, + "pc": [ + 148 + ] + }, + { + "teal": 86, + "source": 1021, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 87, + "source": 1021, + "pc": [ + 152 + ] + }, + { + "teal": 88, + "source": 1021, + "pc": [ + 153 + ] + }, + { + "teal": 89, + "source": 1021, + "pc": [ + 154 + ] + }, + { + "teal": 93, + "source": 1027, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 94, + "source": 1027, + "pc": [ + 157 + ] + }, + { + "teal": 95, + "source": 1027, + "pc": [ + 158 + ] + }, + { + "teal": 96, + "source": 1027, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 97, + "source": 1027, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 98, + "source": 1027, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 99, + "source": 1027, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 100, + "source": 1027, + "pc": [ + 169 + ] + }, + { + "teal": 103, + "source": 1017, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 106, + "source": 1017, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 107, + "source": 1017, + "pc": [ + 174 + ] + }, + { + "teal": 110, + "source": 1014, + "pc": [ + 175 + ] + }, + { + "teal": 111, + "source": 1014, + "pc": [ + 176 + ] + }, + { + "teal": 114, + "source": 1014, + "pc": [ + 177, + 178, + 179, + 180, + 181, + 182 + ] + }, + { + "teal": 115, + "source": 1014, + "pc": [ + 183, + 184, + 185 + ] + }, + { + "teal": 116, + "source": 1014, + "pc": [ + 186, + 187, + 188, + 189 + ] + }, + { + "teal": 119, + "source": 1014, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 190 + ] + }, + { + "teal": 122, + "source": 1014, + "pc": [ + 191, + 192, + 193, + 194, + 195, + 196 + ] + }, + { + "teal": 123, + "source": 1014, + "pc": [ + 197, + 198, + 199 + ] + }, + { + "teal": 124, + "source": 1014, + "pc": [ + 200, + 201, + 202, + 203 + ] + }, + { + "teal": 127, + "source": 1014, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 204 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RvcmFnZVJlZkFjY291bnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQKCWNhbGxzdWIgc3RvcmFnZVJlZkFjY291bnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdG9yYWdlUmVmQWNjb3VudCgpOiB1aW50NjQKc3RvcmFnZVJlZkFjY291bnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMTkKCS8vIGFkZHIgPSB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBhZGRyOiBhZGRyZXNzCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjAKCS8vIHRoaXMubE1hcChhZGRyLCAwKS52YWx1ZSA9IFsxLCAyLCAzXQoJZnJhbWVfZGlnIDAgLy8gYWRkcjogYWRkcmVzcwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAzMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjEKCS8vIHIgPSB0aGlzLmxNYXAoYWRkciwgMCkudmFsdWUKCWZyYW1lX2RpZyAwIC8vIGFkZHI6IGFkZHJlc3MKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGFjY291bnQvL3IKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyMwoJLy8gYWRkciA9IGdsb2JhbHMuemVyb0FkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIGFkZHI6IGFkZHJlc3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyNQoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgMiAwCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCXJlcGxhY2UyIDgKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCXVuY292ZXIgMgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjcKCS8vIHJldHVybiB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAwKS52YWx1ZVsxXTsKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDIgMAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gc3RvcmFnZVJlZkFjY291bnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQKCWNhbGxzdWIgc3RvcmFnZVJlZkFjY291bnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdG9yYWdlUmVmQWNjb3VudCgpOiB1aW50NjQKc3RvcmFnZVJlZkFjY291bnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMTkKCS8vIGFkZHIgPSB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBhZGRyOiBhZGRyZXNzCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjAKCS8vIHRoaXMubE1hcChhZGRyLCAwKS52YWx1ZSA9IFsxLCAyLCAzXQoJZnJhbWVfZGlnIDAgLy8gYWRkcjogYWRkcmVzcwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAzMDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjEKCS8vIHIgPSB0aGlzLmxNYXAoYWRkciwgMCkudmFsdWUKCWZyYW1lX2RpZyAwIC8vIGFkZHI6IGFkZHJlc3MKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGFjY291bnQvL3IKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyMwoJLy8gYWRkciA9IGdsb2JhbHMuemVyb0FkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJZnJhbWVfYnVyeSAwIC8vIGFkZHI6IGFkZHJlc3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAyNQoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgMiAwCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDQKCXJlcGxhY2UyIDgKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2UgYWNjb3VudC8vcgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCXVuY292ZXIgMgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMjcKCS8vIHJldHVybiB0aGlzLmxNYXAodGhpcy50eG4uc2VuZGVyLCAwKS52YWx1ZVsxXTsKCXR4biBTZW5kZXIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDIgMAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInN0b3JhZ2VSZWZBY2NvdW50KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0b3JhZ2VSZWZBY2NvdW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStorageRefKey.approval.teal b/tests/contracts/artifacts/ABITestStorageRefKey.approval.teal index 19a8ab33d..3484745aa 100644 --- a/tests/contracts/artifacts/ABITestStorageRefKey.approval.teal +++ b/tests/contracts/artifacts/ABITestStorageRefKey.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStorageRefKey.arc32.json b/tests/contracts/artifacts/ABITestStorageRefKey.arc32.json index 91f808369..f4e232b5a 100644 --- a/tests/contracts/artifacts/ABITestStorageRefKey.arc32.json +++ b/tests/contracts/artifacts/ABITestStorageRefKey.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUmVmS2V5KCl1aW50NjQKKmFiaV9yb3V0ZV9zdG9yYWdlUmVmS2V5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZLZXkoKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUmVmS2V5CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RvcmFnZVJlZktleSgpOiB1aW50NjQKc3RvcmFnZVJlZktleToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwMAoJLy8gdGhpcy5nTWFwKDApLnZhbHVlID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwMDMwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMDIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA0CgkvLyByID0gdGhpcy5nTWFwKGkpLnZhbHVlCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGtleS8vcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA2CgkvLyBpID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwOAoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2Uga2V5Ly9yCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJcmVwbGFjZTIgOAoJZnJhbWVfZGlnIDEgLy8gc3RvcmFnZSBrZXkvL3IKCXN3YXAKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAxMAoJLy8gcmV0dXJuIHRoaXMuZ01hcCgwKS52YWx1ZVsxXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0b3JhZ2VSZWZLZXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RvcmFnZVJlZktleQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUmVmS2V5KCl1aW50NjQKKmFiaV9yb3V0ZV9zdG9yYWdlUmVmS2V5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZLZXkoKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUmVmS2V5CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RvcmFnZVJlZktleSgpOiB1aW50NjQKc3RvcmFnZVJlZktleToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwMAoJLy8gdGhpcy5nTWFwKDApLnZhbHVlID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwMDMwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMDIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA0CgkvLyByID0gdGhpcy5nTWFwKGkpLnZhbHVlCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGtleS8vcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA2CgkvLyBpID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwOAoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2Uga2V5Ly9yCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJcmVwbGFjZTIgOAoJZnJhbWVfZGlnIDEgLy8gc3RvcmFnZSBrZXkvL3IKCXN3YXAKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAxMAoJLy8gcmV0dXJuIHRoaXMuZ01hcCgwKS52YWx1ZVsxXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0b3JhZ2VSZWZLZXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RvcmFnZVJlZktleQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStorageRefKey.arc56_draft.json b/tests/contracts/artifacts/ABITestStorageRefKey.arc56_draft.json index ee238a5e9..8b23551bf 100644 --- a/tests/contracts/artifacts/ABITestStorageRefKey.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStorageRefKey.arc56_draft.json @@ -65,613 +65,616 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 996, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14 - ] - }, - { - "teal": 13, - "source": 996, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 14, - "source": 996, - "pc": [ - 17 - ] - }, - { - "teal": 15, - "source": 996, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 16, - "source": 996, - "pc": [ - 20 - ] - }, - { - "teal": 17, - "source": 996, - "pc": [ - 21, - 22 - ] - }, - { - "teal": 18, - "source": 996, - "pc": [ - 23 - ] - }, - { - "teal": 19, - "source": 996, - "pc": [ - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49 - ] - }, - { - "teal": 23, - "source": 996, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 50 - ] - }, - { - "teal": 28, - "source": 999, - "pc": [ - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 31, - "source": 999, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 32, - "source": 999, - "pc": [ - 60 - ] - }, - { - "teal": 33, - "source": 999, - "pc": [ - 61 - ] - }, - { - "teal": 34, - "source": 999, - "pc": [ - 62 - ] - }, - { - "teal": 35, - "source": 999, - "pc": [ - 63 - ] - }, - { - "teal": 36, - "source": 999, - "pc": [ - 64 - ] - }, - { - "teal": 40, - "source": 999, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 43, - "source": 999, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 44, - "source": 999, - "pc": [ - 70 - ] - }, - { - "teal": 48, - "source": 1000, - "pc": [ - 71 - ] - }, - { - "teal": 49, - "source": 1000, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 50, - "source": 1000, - "pc": [ - 100 - ] - }, - { - "teal": 54, - "source": 1002, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 55, - "source": 1002, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 59, - "source": 1004, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 60, - "source": 1004, - "pc": [ - 107 - ] - }, - { - "teal": 61, - "source": 1004, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 65, - "source": 1006, - "pc": [ - 110 - ] - }, - { - "teal": 66, - "source": 1006, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 70, - "source": 1004, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 71, - "source": 1004, - "pc": [ - 115 - ] - }, - { - "teal": 72, - "source": 1004, - "pc": [ - 116, - 117, - 118 - ] - }, - { - "teal": 73, - "source": 1008, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 74, - "source": 1008, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 75, - "source": 1008, - "pc": [ - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 76, - "source": 1008, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 77, - "source": 1004, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 78, - "source": 1004, - "pc": [ - 137 - ] - }, - { - "teal": 79, - "source": 1004, - "pc": [ - 138 - ] - }, - { - "teal": 80, - "source": 1004, - "pc": [ - 139 - ] - }, - { - "teal": 81, - "source": 1004, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 82, - "source": 1004, - "pc": [ - 142 - ] - }, - { - "teal": 83, - "source": 1004, - "pc": [ - 143 - ] - }, - { - "teal": 84, - "source": 1004, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 85, - "source": 1004, - "pc": [ - 147 - ] - }, - { - "teal": 86, - "source": 1004, - "pc": [ - 148 - ] - }, - { - "teal": 87, - "source": 1004, - "pc": [ - 149 - ] - }, - { - "teal": 91, - "source": 1010, - "pc": [ - 150 - ] - }, - { - "teal": 92, - "source": 1010, - "pc": [ - 151 - ] - }, - { - "teal": 93, - "source": 1010, - "pc": [ - 152, - 153, - 154 - ] - }, - { - "teal": 94, - "source": 1010, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 95, - "source": 1010, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 96, - "source": 1010, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 97, - "source": 1010, - "pc": [ - 162 - ] - }, - { - "teal": 100, - "source": 999, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 103, - "source": 999, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 104, - "source": 999, - "pc": [ - 167 - ] - }, - { - "teal": 107, - "source": 996, - "pc": [ - 168 - ] - }, - { - "teal": 108, - "source": 996, - "pc": [ - 169 - ] - }, - { - "teal": 111, - "source": 996, - "pc": [ - 170, - 171, - 172, - 173, - 174, - 175 - ] - }, - { - "teal": 112, - "source": 996, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 113, - "source": 996, - "pc": [ - 179, - 180, - 181, - 182 - ] - }, - { - "teal": 116, - "source": 996, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 183 - ] - }, - { - "teal": 119, - "source": 996, - "pc": [ - 184, - 185, - 186, - 187, - 188, - 189 - ] - }, - { - "teal": 120, - "source": 996, - "pc": [ - 190, - 191, - 192 - ] - }, - { - "teal": 121, - "source": 996, - "pc": [ - 193, - 194, - 195, - 196 - ] - }, - { - "teal": 124, - "source": 996, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 197 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 996, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + }, + { + "teal": 13, + "source": 996, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 14, + "source": 996, + "pc": [ + 17 + ] + }, + { + "teal": 15, + "source": 996, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 16, + "source": 996, + "pc": [ + 20 + ] + }, + { + "teal": 17, + "source": 996, + "pc": [ + 21, + 22 + ] + }, + { + "teal": 18, + "source": 996, + "pc": [ + 23 + ] + }, + { + "teal": 19, + "source": 996, + "pc": [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + }, + { + "teal": 23, + "source": 996, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 50 + ] + }, + { + "teal": 28, + "source": 999, + "pc": [ + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 31, + "source": 999, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 32, + "source": 999, + "pc": [ + 60 + ] + }, + { + "teal": 33, + "source": 999, + "pc": [ + 61 + ] + }, + { + "teal": 34, + "source": 999, + "pc": [ + 62 + ] + }, + { + "teal": 35, + "source": 999, + "pc": [ + 63 + ] + }, + { + "teal": 36, + "source": 999, + "pc": [ + 64 + ] + }, + { + "teal": 40, + "source": 999, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 43, + "source": 999, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 44, + "source": 999, + "pc": [ + 70 + ] + }, + { + "teal": 48, + "source": 1000, + "pc": [ + 71 + ] + }, + { + "teal": 49, + "source": 1000, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 50, + "source": 1000, + "pc": [ + 100 + ] + }, + { + "teal": 54, + "source": 1002, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 55, + "source": 1002, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 59, + "source": 1004, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 60, + "source": 1004, + "pc": [ + 107 + ] + }, + { + "teal": 61, + "source": 1004, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 65, + "source": 1006, + "pc": [ + 110 + ] + }, + { + "teal": 66, + "source": 1006, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 70, + "source": 1004, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 71, + "source": 1004, + "pc": [ + 115 + ] + }, + { + "teal": 72, + "source": 1004, + "pc": [ + 116, + 117, + 118 + ] + }, + { + "teal": 73, + "source": 1008, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 74, + "source": 1008, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 75, + "source": 1008, + "pc": [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 76, + "source": 1008, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 77, + "source": 1004, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 78, + "source": 1004, + "pc": [ + 137 + ] + }, + { + "teal": 79, + "source": 1004, + "pc": [ + 138 + ] + }, + { + "teal": 80, + "source": 1004, + "pc": [ + 139 + ] + }, + { + "teal": 81, + "source": 1004, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 82, + "source": 1004, + "pc": [ + 142 + ] + }, + { + "teal": 83, + "source": 1004, + "pc": [ + 143 + ] + }, + { + "teal": 84, + "source": 1004, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 85, + "source": 1004, + "pc": [ + 147 + ] + }, + { + "teal": 86, + "source": 1004, + "pc": [ + 148 + ] + }, + { + "teal": 87, + "source": 1004, + "pc": [ + 149 + ] + }, + { + "teal": 91, + "source": 1010, + "pc": [ + 150 + ] + }, + { + "teal": 92, + "source": 1010, + "pc": [ + 151 + ] + }, + { + "teal": 93, + "source": 1010, + "pc": [ + 152, + 153, + 154 + ] + }, + { + "teal": 94, + "source": 1010, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 95, + "source": 1010, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 96, + "source": 1010, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 97, + "source": 1010, + "pc": [ + 162 + ] + }, + { + "teal": 100, + "source": 999, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 103, + "source": 999, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 104, + "source": 999, + "pc": [ + 167 + ] + }, + { + "teal": 107, + "source": 996, + "pc": [ + 168 + ] + }, + { + "teal": 108, + "source": 996, + "pc": [ + 169 + ] + }, + { + "teal": 111, + "source": 996, + "pc": [ + 170, + 171, + 172, + 173, + 174, + 175 + ] + }, + { + "teal": 112, + "source": 996, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 113, + "source": 996, + "pc": [ + 179, + 180, + 181, + 182 + ] + }, + { + "teal": 116, + "source": 996, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 183 + ] + }, + { + "teal": 119, + "source": 996, + "pc": [ + 184, + 185, + 186, + 187, + 188, + 189 + ] + }, + { + "teal": 120, + "source": 996, + "pc": [ + 190, + 191, + 192 + ] + }, + { + "teal": 121, + "source": 996, + "pc": [ + 193, + 194, + 195, + 196 + ] + }, + { + "teal": 124, + "source": 996, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 197 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUmVmS2V5KCl1aW50NjQKKmFiaV9yb3V0ZV9zdG9yYWdlUmVmS2V5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZLZXkoKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUmVmS2V5CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RvcmFnZVJlZktleSgpOiB1aW50NjQKc3RvcmFnZVJlZktleToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwMAoJLy8gdGhpcy5nTWFwKDApLnZhbHVlID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwMDMwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMDIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA0CgkvLyByID0gdGhpcy5nTWFwKGkpLnZhbHVlCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGtleS8vcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA2CgkvLyBpID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwOAoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2Uga2V5Ly9yCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJcmVwbGFjZTIgOAoJZnJhbWVfZGlnIDEgLy8gc3RvcmFnZSBrZXkvL3IKCXN3YXAKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAxMAoJLy8gcmV0dXJuIHRoaXMuZ01hcCgwKS52YWx1ZVsxXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0b3JhZ2VSZWZLZXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RvcmFnZVJlZktleQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdG9yYWdlUmVmS2V5KCl1aW50NjQKKmFiaV9yb3V0ZV9zdG9yYWdlUmVmS2V5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHN0b3JhZ2VSZWZLZXkoKXVpbnQ2NAoJY2FsbHN1YiBzdG9yYWdlUmVmS2V5CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RvcmFnZVJlZktleSgpOiB1aW50NjQKc3RvcmFnZVJlZktleToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwMAoJLy8gdGhpcy5nTWFwKDApLnZhbHVlID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMAoJYnl0ZSAweDAwMDMwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEwMDIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA0CgkvLyByID0gdGhpcy5nTWFwKGkpLnZhbHVlCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyBzdG9yYWdlIGtleS8vcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMDA2CgkvLyBpID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAwOAoJLy8gclsxXSA9IDQKCWZyYW1lX2RpZyAxIC8vIHN0b3JhZ2Uga2V5Ly9yCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwNAoJcmVwbGFjZTIgOAoJZnJhbWVfZGlnIDEgLy8gc3RvcmFnZSBrZXkvL3IKCXN3YXAKCWR1cAoJbGVuCglpbnQgOAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTAxMAoJLy8gcmV0dXJuIHRoaXMuZ01hcCgwKS52YWx1ZVsxXTsKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCAyIDAKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0b3JhZ2VSZWZLZXkoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RvcmFnZVJlZktleQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStorageTypeHint.approval.teal b/tests/contracts/artifacts/ABITestStorageTypeHint.approval.teal index 1d2e1a16f..388eaad76 100644 --- a/tests/contracts/artifacts/ABITestStorageTypeHint.approval.teal +++ b/tests/contracts/artifacts/ABITestStorageTypeHint.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStorageTypeHint.arc32.json b/tests/contracts/artifacts/ABITestStorageTypeHint.arc32.json index fac37e4af..0c480d853 100644 --- a/tests/contracts/artifacts/ABITestStorageTypeHint.arc32.json +++ b/tests/contracts/artifacts/ABITestStorageTypeHint.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODYwCgkvLyB0aGlzLmdLZXkudmFsdWUgPSBbMSwgMiwgM10KCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2MgoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODYwCgkvLyB0aGlzLmdLZXkudmFsdWUgPSBbMSwgMiwgM10KCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2MgoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStorageTypeHint.arc56_draft.json b/tests/contracts/artifacts/ABITestStorageTypeHint.arc56_draft.json index f09380280..f1c1f0241 100644 --- a/tests/contracts/artifacts/ABITestStorageTypeHint.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStorageTypeHint.arc56_draft.json @@ -66,311 +66,314 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 856, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10 - ] - }, - { - "teal": 13, - "source": 856, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 14, - "source": 856, - "pc": [ - 13 - ] - }, - { - "teal": 15, - "source": 856, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 16, - "source": 856, - "pc": [ - 16 - ] - }, - { - "teal": 17, - "source": 856, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 18, - "source": 856, - "pc": [ - 19 - ] - }, - { - "teal": 19, - "source": 856, - "pc": [ - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 23, - "source": 856, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 46 - ] - }, - { - "teal": 28, - "source": 859, - "pc": [ - 47, - 48, - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 31, - "source": 859, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 32, - "source": 859, - "pc": [ - 56 - ] - }, - { - "teal": 33, - "source": 859, - "pc": [ - 57 - ] - }, - { - "teal": 34, - "source": 859, - "pc": [ - 58 - ] - }, - { - "teal": 35, - "source": 859, - "pc": [ - 59 - ] - }, - { - "teal": 39, - "source": 859, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 43, - "source": 860, - "pc": [ - 63 - ] - }, - { - "teal": 44, - "source": 860, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71 - ] - }, - { - "teal": 45, - "source": 860, - "pc": [ - 72 - ] - }, - { - "teal": 49, - "source": 862, - "pc": [ - 73 - ] - }, - { - "teal": 50, - "source": 862, - "pc": [ - 74 - ] - }, - { - "teal": 51, - "source": 859, - "pc": [ - 75 - ] - }, - { - "teal": 54, - "source": 856, - "pc": [ - 76 - ] - }, - { - "teal": 55, - "source": 856, - "pc": [ - 77 - ] - }, - { - "teal": 58, - "source": 856, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 59, - "source": 856, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 60, - "source": 856, - "pc": [ - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 63, - "source": 856, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 91 - ] - }, - { - "teal": 66, - "source": 856, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 67, - "source": 856, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 68, - "source": 856, - "pc": [ - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 71, - "source": 856, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 105 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 856, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10 + ] + }, + { + "teal": 13, + "source": 856, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 14, + "source": 856, + "pc": [ + 13 + ] + }, + { + "teal": 15, + "source": 856, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 16, + "source": 856, + "pc": [ + 16 + ] + }, + { + "teal": 17, + "source": 856, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 18, + "source": 856, + "pc": [ + 19 + ] + }, + { + "teal": 19, + "source": 856, + "pc": [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 23, + "source": 856, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 46 + ] + }, + { + "teal": 28, + "source": 859, + "pc": [ + 47, + 48, + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 31, + "source": 859, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 32, + "source": 859, + "pc": [ + 56 + ] + }, + { + "teal": 33, + "source": 859, + "pc": [ + 57 + ] + }, + { + "teal": 34, + "source": 859, + "pc": [ + 58 + ] + }, + { + "teal": 35, + "source": 859, + "pc": [ + 59 + ] + }, + { + "teal": 39, + "source": 859, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 43, + "source": 860, + "pc": [ + 63 + ] + }, + { + "teal": 44, + "source": 860, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + }, + { + "teal": 45, + "source": 860, + "pc": [ + 72 + ] + }, + { + "teal": 49, + "source": 862, + "pc": [ + 73 + ] + }, + { + "teal": 50, + "source": 862, + "pc": [ + 74 + ] + }, + { + "teal": 51, + "source": 859, + "pc": [ + 75 + ] + }, + { + "teal": 54, + "source": 856, + "pc": [ + 76 + ] + }, + { + "teal": 55, + "source": 856, + "pc": [ + 77 + ] + }, + { + "teal": 58, + "source": 856, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 59, + "source": 856, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 60, + "source": 856, + "pc": [ + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 63, + "source": 856, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 91 + ] + }, + { + "teal": 66, + "source": 856, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 67, + "source": 856, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 68, + "source": 856, + "pc": [ + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 71, + "source": 856, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 105 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODYwCgkvLyB0aGlzLmdLZXkudmFsdWUgPSBbMSwgMiwgM10KCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2MgoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoqYWJpX3JvdXRlX3BhcnRpYWxTdGF0aWNBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXQoJY2FsbHN1YiBwYXJ0aWFsU3RhdGljQXJyYXkKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBwYXJ0aWFsU3RhdGljQXJyYXkoKTogU3RhdGljQXJyYXk8dWludDE2LCAzPgpwYXJ0aWFsU3RhdGljQXJyYXk6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6ODYwCgkvLyB0aGlzLmdLZXkudmFsdWUgPSBbMSwgMiwgM10KCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWJ5dGUgMHgwMDAxMDAwMjAwMDMKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjg2MgoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwYXJ0aWFsU3RhdGljQXJyYXkoKXVpbnQxNlszXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfcGFydGlhbFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStringAccessor.approval.teal b/tests/contracts/artifacts/ABITestStringAccessor.approval.teal index bb5173997..18ddd88aa 100644 --- a/tests/contracts/artifacts/ABITestStringAccessor.approval.teal +++ b/tests/contracts/artifacts/ABITestStringAccessor.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStringAccessor.arc32.json b/tests/contracts/artifacts/ABITestStringAccessor.arc32.json index 8e0f40df6..70bbbed02 100644 --- a/tests/contracts/artifacts/ABITestStringAccessor.arc32.json +++ b/tests/contracts/artifacts/ABITestStringAccessor.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBY2Nlc3Nvcigpc3RyaW5nCiphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RyaW5nQWNjZXNzb3IoKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdBY2Nlc3NvcgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBY2Nlc3NvcigpOiBzdHJpbmcKc3RyaW5nQWNjZXNzb3I6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzQKCS8vIHMgPSBjb25jYXQoJ0hlbGxvICcsICdXb3JsZCcpCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NAoJZnJhbWVfYnVyeSAwIC8vIHM6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzYKCS8vIHJldHVybiBzWzFdOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglleHRyYWN0IDEgMQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RyaW5nQWNjZXNzb3IoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBY2Nlc3Nvcigpc3RyaW5nCiphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RyaW5nQWNjZXNzb3IoKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdBY2Nlc3NvcgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBY2Nlc3NvcigpOiBzdHJpbmcKc3RyaW5nQWNjZXNzb3I6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzQKCS8vIHMgPSBjb25jYXQoJ0hlbGxvICcsICdXb3JsZCcpCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NAoJZnJhbWVfYnVyeSAwIC8vIHM6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzYKCS8vIHJldHVybiBzWzFdOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglleHRyYWN0IDEgMQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RyaW5nQWNjZXNzb3IoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStringAccessor.arc56_draft.json b/tests/contracts/artifacts/ABITestStringAccessor.arc56_draft.json index 0ca58653f..f8eddb125 100644 --- a/tests/contracts/artifacts/ABITestStringAccessor.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStringAccessor.arc56_draft.json @@ -60,366 +60,369 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 832, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 832, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 832, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 832, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 832, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 832, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 832, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 832, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 832, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 833, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 833, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 833, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 833, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 833, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 833, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 833, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 833, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 833, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 833, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 833, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 833, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 833, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 48, - "source": 833, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 52, - "source": 834, - "pc": [ - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78 - ] - }, - { - "teal": 53, - "source": 834, - "pc": [ - 79, - 80 - ] - }, - { - "teal": 57, - "source": 836, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 58, - "source": 836, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 61, - "source": 833, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 62, - "source": 833, - "pc": [ - 88 - ] - }, - { - "teal": 65, - "source": 832, - "pc": [ - 89 - ] - }, - { - "teal": 66, - "source": 832, - "pc": [ - 90 - ] - }, - { - "teal": 69, - "source": 832, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 70, - "source": 832, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 71, - "source": 832, - "pc": [ - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 74, - "source": 832, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 104 - ] - }, - { - "teal": 77, - "source": 832, - "pc": [ - 105, - 106, - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 78, - "source": 832, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 79, - "source": 832, - "pc": [ - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 82, - "source": 832, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 118 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 832, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 832, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 832, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 832, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 832, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 832, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 832, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 832, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 832, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 833, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 833, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 833, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 833, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 833, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 833, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 833, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 833, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 833, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 833, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 833, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 833, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 833, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 48, + "source": 833, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 52, + "source": 834, + "pc": [ + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + }, + { + "teal": 53, + "source": 834, + "pc": [ + 79, + 80 + ] + }, + { + "teal": 57, + "source": 836, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 58, + "source": 836, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 61, + "source": 833, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 62, + "source": 833, + "pc": [ + 88 + ] + }, + { + "teal": 65, + "source": 832, + "pc": [ + 89 + ] + }, + { + "teal": 66, + "source": 832, + "pc": [ + 90 + ] + }, + { + "teal": 69, + "source": 832, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 70, + "source": 832, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 71, + "source": 832, + "pc": [ + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 74, + "source": 832, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 104 + ] + }, + { + "teal": 77, + "source": 832, + "pc": [ + 105, + 106, + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 78, + "source": 832, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 79, + "source": 832, + "pc": [ + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 82, + "source": 832, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 118 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBY2Nlc3Nvcigpc3RyaW5nCiphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RyaW5nQWNjZXNzb3IoKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdBY2Nlc3NvcgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBY2Nlc3NvcigpOiBzdHJpbmcKc3RyaW5nQWNjZXNzb3I6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzQKCS8vIHMgPSBjb25jYXQoJ0hlbGxvICcsICdXb3JsZCcpCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NAoJZnJhbWVfYnVyeSAwIC8vIHM6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzYKCS8vIHJldHVybiBzWzFdOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglleHRyYWN0IDEgMQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RyaW5nQWNjZXNzb3IoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBY2Nlc3Nvcigpc3RyaW5nCiphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgc3RyaW5nQWNjZXNzb3IoKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdBY2Nlc3NvcgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBY2Nlc3NvcigpOiBzdHJpbmcKc3RyaW5nQWNjZXNzb3I6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzQKCS8vIHMgPSBjb25jYXQoJ0hlbGxvICcsICdXb3JsZCcpCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NAoJZnJhbWVfYnVyeSAwIC8vIHM6IGJ5dGVbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo4MzYKCS8vIHJldHVybiBzWzFdOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglleHRyYWN0IDEgMQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic3RyaW5nQWNjZXNzb3IoKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nQWNjZXNzb3IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStringArg.approval.teal b/tests/contracts/artifacts/ABITestStringArg.approval.teal index e5d17832a..ecd54b354 100644 --- a/tests/contracts/artifacts/ABITestStringArg.approval.teal +++ b/tests/contracts/artifacts/ABITestStringArg.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStringArg.arc32.json b/tests/contracts/artifacts/ABITestStringArg.arc32.json index f79f6265c..334f47655 100644 --- a/tests/contracts/artifacts/ABITestStringArg.arc32.json +++ b/tests/contracts/artifacts/ABITestStringArg.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdBcmc6CgkvLyBzOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKCWNhbGxzdWIgc3RyaW5nQXJnCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBcmcoczogc3RyaW5nKTogdm9pZApzdHJpbmdBcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTM2CgkvLyBhc3NlcnQocyA9PT0gJ0hlbGxvIFdvcmxkIScpCglmcmFtZV9kaWcgLTEgLy8gczogc3RyaW5nCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdBcmcoc3RyaW5nKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdBcmc6CgkvLyBzOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKCWNhbGxzdWIgc3RyaW5nQXJnCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBcmcoczogc3RyaW5nKTogdm9pZApzdHJpbmdBcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTM2CgkvLyBhc3NlcnQocyA9PT0gJ0hlbGxvIFdvcmxkIScpCglmcmFtZV9kaWcgLTEgLy8gczogc3RyaW5nCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdBcmcoc3RyaW5nKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStringArg.arc56_draft.json b/tests/contracts/artifacts/ABITestStringArg.arc56_draft.json index 8ccaee1f9..4f71a8081 100644 --- a/tests/contracts/artifacts/ABITestStringArg.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStringArg.arc56_draft.json @@ -65,296 +65,299 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 534, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 534, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 534, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 534, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 534, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 534, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 534, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 534, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 534, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 535, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 535, - "pc": [ - 43, - 44, - 45 - ] - }, - { - "teal": 32, - "source": 535, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 33, - "source": 535, - "pc": [ - 49 - ] - }, - { - "teal": 34, - "source": 535, - "pc": [ - 50 - ] - }, - { - "teal": 38, - "source": 535, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 42, - "source": 536, - "pc": [ - 54, - 55 - ] - }, - { - "teal": 43, - "source": 536, - "pc": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 44, - "source": 536, - "pc": [ - 70 - ] - }, - { - "teal": 45, - "source": 536, - "pc": [ - 71 - ] - }, - { - "teal": 46, - "source": 535, - "pc": [ - 72 - ] - }, - { - "teal": 49, - "source": 534, - "pc": [ - 73 - ] - }, - { - "teal": 50, - "source": 534, - "pc": [ - 74 - ] - }, - { - "teal": 53, - "source": 534, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 54, - "source": 534, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 55, - "source": 534, - "pc": [ - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 58, - "source": 534, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 88 - ] - }, - { - "teal": 61, - "source": 534, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 62, - "source": 534, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 63, - "source": 534, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 66, - "source": 534, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 102 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 534, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 534, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 534, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 534, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 534, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 534, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 534, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 534, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 534, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 535, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 535, + "pc": [ + 43, + 44, + 45 + ] + }, + { + "teal": 32, + "source": 535, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 33, + "source": 535, + "pc": [ + 49 + ] + }, + { + "teal": 34, + "source": 535, + "pc": [ + 50 + ] + }, + { + "teal": 38, + "source": 535, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 42, + "source": 536, + "pc": [ + 54, + 55 + ] + }, + { + "teal": 43, + "source": 536, + "pc": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 44, + "source": 536, + "pc": [ + 70 + ] + }, + { + "teal": 45, + "source": 536, + "pc": [ + 71 + ] + }, + { + "teal": 46, + "source": 535, + "pc": [ + 72 + ] + }, + { + "teal": 49, + "source": 534, + "pc": [ + 73 + ] + }, + { + "teal": 50, + "source": 534, + "pc": [ + 74 + ] + }, + { + "teal": 53, + "source": 534, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 54, + "source": 534, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 55, + "source": 534, + "pc": [ + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 58, + "source": 534, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 88 + ] + }, + { + "teal": 61, + "source": 534, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 62, + "source": 534, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 63, + "source": 534, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 66, + "source": 534, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 102 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdBcmc6CgkvLyBzOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKCWNhbGxzdWIgc3RyaW5nQXJnCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBcmcoczogc3RyaW5nKTogdm9pZApzdHJpbmdBcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTM2CgkvLyBhc3NlcnQocyA9PT0gJ0hlbGxvIFdvcmxkIScpCglmcmFtZV9kaWcgLTEgLy8gczogc3RyaW5nCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdBcmcoc3RyaW5nKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdBcmc6CgkvLyBzOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdBcmcoc3RyaW5nKXZvaWQKCWNhbGxzdWIgc3RyaW5nQXJnCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdBcmcoczogc3RyaW5nKTogdm9pZApzdHJpbmdBcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTM2CgkvLyBhc3NlcnQocyA9PT0gJ0hlbGxvIFdvcmxkIScpCglmcmFtZV9kaWcgLTEgLy8gczogc3RyaW5nCglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdBcmcoc3RyaW5nKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FyZwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStringArray.approval.teal b/tests/contracts/artifacts/ABITestStringArray.approval.teal index 71d7a44d4..26cb6bd07 100644 --- a/tests/contracts/artifacts/ABITestStringArray.approval.teal +++ b/tests/contracts/artifacts/ABITestStringArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStringArray.arc32.json b/tests/contracts/artifacts/ABITestStringArray.arc32.json index 7ec6ca585..f8abcbff6 100644 --- a/tests/contracts/artifacts/ABITestStringArray.arc32.json +++ b/tests/contracts/artifacts/ABITestStringArray.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcnJheShzdHJpbmdbXSl2b2lkCiphYmlfcm91dGVfc3RyaW5nQXJyYXk6CgkvLyBhOiBzdHJpbmdbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RyaW5nQXJyYXkoc3RyaW5nW10pdm9pZAoJY2FsbHN1YiBzdHJpbmdBcnJheQoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nQXJyYXkoYTogc3RyaW5nW10pOiB2b2lkCnN0cmluZ0FycmF5OgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODMKCS8vIHRoaXMuZ0tleS52YWx1ZSA9IGEKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWZyYW1lX2RpZyAtMSAvLyBhOiBzdHJpbmdbXQoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0FycmF5KHN0cmluZ1tdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcnJheShzdHJpbmdbXSl2b2lkCiphYmlfcm91dGVfc3RyaW5nQXJyYXk6CgkvLyBhOiBzdHJpbmdbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RyaW5nQXJyYXkoc3RyaW5nW10pdm9pZAoJY2FsbHN1YiBzdHJpbmdBcnJheQoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nQXJyYXkoYTogc3RyaW5nW10pOiB2b2lkCnN0cmluZ0FycmF5OgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODMKCS8vIHRoaXMuZ0tleS52YWx1ZSA9IGEKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWZyYW1lX2RpZyAtMSAvLyBhOiBzdHJpbmdbXQoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0FycmF5KHN0cmluZ1tdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStringArray.arc56_draft.json b/tests/contracts/artifacts/ABITestStringArray.arc56_draft.json index 74183aac6..f06eb2e3b 100644 --- a/tests/contracts/artifacts/ABITestStringArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStringArray.arc56_draft.json @@ -71,272 +71,275 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1179, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1179, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1179, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1179, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1179, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1179, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1179, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1179, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1179, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1182, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 31, - "source": 1182, - "pc": [ - 43, - 44, - 45 - ] - }, - { - "teal": 32, - "source": 1182, - "pc": [ - 46 - ] - }, - { - "teal": 33, - "source": 1182, - "pc": [ - 47 - ] - }, - { - "teal": 37, - "source": 1182, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 41, - "source": 1183, - "pc": [ - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 42, - "source": 1183, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1183, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1182, - "pc": [ - 60 - ] - }, - { - "teal": 47, - "source": 1179, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 1179, - "pc": [ - 62 - ] - }, - { - "teal": 51, - "source": 1179, - "pc": [ - 63, - 64, - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 52, - "source": 1179, - "pc": [ - 69, - 70, - 71 - ] - }, - { - "teal": 53, - "source": 1179, - "pc": [ - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 56, - "source": 1179, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 76 - ] - }, - { - "teal": 59, - "source": 1179, - "pc": [ - 77, - 78, - 79, - 80, - 81, - 82 - ] - }, - { - "teal": 60, - "source": 1179, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 61, - "source": 1179, - "pc": [ - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 64, - "source": 1179, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 90 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1179, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1179, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1179, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1179, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1179, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1179, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1179, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1179, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1179, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1182, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 31, + "source": 1182, + "pc": [ + 43, + 44, + 45 + ] + }, + { + "teal": 32, + "source": 1182, + "pc": [ + 46 + ] + }, + { + "teal": 33, + "source": 1182, + "pc": [ + 47 + ] + }, + { + "teal": 37, + "source": 1182, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 41, + "source": 1183, + "pc": [ + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 42, + "source": 1183, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1183, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1182, + "pc": [ + 60 + ] + }, + { + "teal": 47, + "source": 1179, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 1179, + "pc": [ + 62 + ] + }, + { + "teal": 51, + "source": 1179, + "pc": [ + 63, + 64, + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 52, + "source": 1179, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 53, + "source": 1179, + "pc": [ + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 56, + "source": 1179, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 76 + ] + }, + { + "teal": 59, + "source": 1179, + "pc": [ + 77, + 78, + 79, + 80, + 81, + 82 + ] + }, + { + "teal": 60, + "source": 1179, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 61, + "source": 1179, + "pc": [ + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 64, + "source": 1179, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 90 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcnJheShzdHJpbmdbXSl2b2lkCiphYmlfcm91dGVfc3RyaW5nQXJyYXk6CgkvLyBhOiBzdHJpbmdbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RyaW5nQXJyYXkoc3RyaW5nW10pdm9pZAoJY2FsbHN1YiBzdHJpbmdBcnJheQoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nQXJyYXkoYTogc3RyaW5nW10pOiB2b2lkCnN0cmluZ0FycmF5OgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODMKCS8vIHRoaXMuZ0tleS52YWx1ZSA9IGEKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWZyYW1lX2RpZyAtMSAvLyBhOiBzdHJpbmdbXQoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0FycmF5KHN0cmluZ1tdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdBcnJheShzdHJpbmdbXSl2b2lkCiphYmlfcm91dGVfc3RyaW5nQXJyYXk6CgkvLyBhOiBzdHJpbmdbXQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoKCS8vIGV4ZWN1dGUgc3RyaW5nQXJyYXkoc3RyaW5nW10pdm9pZAoJY2FsbHN1YiBzdHJpbmdBcnJheQoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nQXJyYXkoYTogc3RyaW5nW10pOiB2b2lkCnN0cmluZ0FycmF5OgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODMKCS8vIHRoaXMuZ0tleS52YWx1ZSA9IGEKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWZyYW1lX2RpZyAtMSAvLyBhOiBzdHJpbmdbXQoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0FycmF5KHN0cmluZ1tdKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStringInTuple.approval.teal b/tests/contracts/artifacts/ABITestStringInTuple.approval.teal index 511bef109..79ed93b2b 100644 --- a/tests/contracts/artifacts/ABITestStringInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestStringInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStringInTuple.arc32.json b/tests/contracts/artifacts/ABITestStringInTuple.arc32.json index 97f1bf77c..459426835 100644 --- a/tests/contracts/artifacts/ABITestStringInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestStringInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCiphYmlfcm91dGVfc3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCgljYWxsc3ViIHN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdJblR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCnN0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0luVHVwbGUoKSh1aW50MTYsdWludDhbXSxzdHJpbmcsdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0luVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCiphYmlfcm91dGVfc3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCgljYWxsc3ViIHN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdJblR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCnN0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0luVHVwbGUoKSh1aW50MTYsdWludDhbXSxzdHJpbmcsdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0luVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStringInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestStringInTuple.arc56_draft.json index 979093025..e87a23dca 100644 --- a/tests/contracts/artifacts/ABITestStringInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStringInTuple.arc56_draft.json @@ -60,648 +60,651 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 540, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6 - ] - }, - { - "teal": 13, - "source": 540, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 14, - "source": 540, - "pc": [ - 9 - ] - }, - { - "teal": 15, - "source": 540, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 16, - "source": 540, - "pc": [ - 12 - ] - }, - { - "teal": 17, - "source": 540, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 18, - "source": 540, - "pc": [ - 15 - ] - }, - { - "teal": 19, - "source": 540, - "pc": [ - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41 - ] - }, - { - "teal": 23, - "source": 540, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 42 - ] - }, - { - "teal": 28, - "source": 541, - "pc": [ - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 31, - "source": 541, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 32, - "source": 541, - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 541, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 541, - "pc": [ - 54 - ] - }, - { - "teal": 35, - "source": 541, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 541, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 42, - "source": 541, - "pc": [ - 59 - ] - }, - { - "teal": 46, - "source": 542, - "pc": [ - 60 - ] - }, - { - "teal": 47, - "source": 542, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 542, - "pc": [ - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 49, - "source": 542, - "pc": [ - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 50, - "source": 542, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 51, - "source": 542, - "pc": [ - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 52, - "source": 542, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 53, - "source": 542, - "pc": [ - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 54, - "source": 542, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 55, - "source": 542, - "pc": [ - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 56, - "source": 542, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 57, - "source": 542, - "pc": [ - 108 - ] - }, - { - "teal": 58, - "source": 542, - "pc": [ - 109 - ] - }, - { - "teal": 59, - "source": 542, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 63, - "source": 544, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 66, - "source": 541, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 67, - "source": 541, - "pc": [ - 116 - ] - }, - { - "teal": 70, - "source": 540, - "pc": [ - 117 - ] - }, - { - "teal": 71, - "source": 540, - "pc": [ - 118 - ] - }, - { - "teal": 74, - "source": 540, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 75, - "source": 540, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 76, - "source": 540, - "pc": [ - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 79, - "source": 540, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 132 - ] - }, - { - "teal": 82, - "source": 540, - "pc": [ - 133, - 134, - 135, - 136, - 137, - 138 - ] - }, - { - "teal": 83, - "source": 540, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 84, - "source": 540, - "pc": [ - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 87, - "source": 540, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 146 - ] - }, - { - "teal": 90, - "source": 540, - "pc": [ - 147, - 148, - 149 - ] - }, - { - "teal": 91, - "source": 540, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 92, - "source": 540, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 93, - "source": 540, - "pc": [ - 154 - ] - }, - { - "teal": 94, - "source": 540, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 95, - "source": 540, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 96, - "source": 540, - "pc": [ - 159 - ] - }, - { - "teal": 99, - "source": 540, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 100, - "source": 540, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 101, - "source": 540, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 102, - "source": 540, - "pc": [ - 167 - ] - }, - { - "teal": 103, - "source": 540, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 104, - "source": 540, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 105, - "source": 540, - "pc": [ - 172 - ] - }, - { - "teal": 106, - "source": 540, - "pc": [ - 173 - ] - }, - { - "teal": 107, - "source": 540, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 108, - "source": 540, - "pc": [ - 176 - ] - }, - { - "teal": 109, - "source": 540, - "pc": [ - 177 - ] - }, - { - "teal": 110, - "source": 540, - "pc": [ - 178 - ] - }, - { - "teal": 111, - "source": 540, - "pc": [ - 179, - 180, - 181 - ] - }, - { - "teal": 112, - "source": 540, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 113, - "source": 540, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 114, - "source": 540, - "pc": [ - 186 - ] - }, - { - "teal": 115, - "source": 540, - "pc": [ - 187 - ] - }, - { - "teal": 116, - "source": 540, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 117, - "source": 540, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 118, - "source": 540, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 119, - "source": 540, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 120, - "source": 540, - "pc": [ - 196 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 540, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6 + ] + }, + { + "teal": 13, + "source": 540, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 14, + "source": 540, + "pc": [ + 9 + ] + }, + { + "teal": 15, + "source": 540, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 16, + "source": 540, + "pc": [ + 12 + ] + }, + { + "teal": 17, + "source": 540, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 18, + "source": 540, + "pc": [ + 15 + ] + }, + { + "teal": 19, + "source": 540, + "pc": [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + }, + { + "teal": 23, + "source": 540, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 42 + ] + }, + { + "teal": 28, + "source": 541, + "pc": [ + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 31, + "source": 541, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 32, + "source": 541, + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 541, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 541, + "pc": [ + 54 + ] + }, + { + "teal": 35, + "source": 541, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 541, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 42, + "source": 541, + "pc": [ + 59 + ] + }, + { + "teal": 46, + "source": 542, + "pc": [ + 60 + ] + }, + { + "teal": 47, + "source": 542, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 542, + "pc": [ + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 49, + "source": 542, + "pc": [ + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 50, + "source": 542, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 51, + "source": 542, + "pc": [ + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 52, + "source": 542, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 53, + "source": 542, + "pc": [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 54, + "source": 542, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 55, + "source": 542, + "pc": [ + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 56, + "source": 542, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 57, + "source": 542, + "pc": [ + 108 + ] + }, + { + "teal": 58, + "source": 542, + "pc": [ + 109 + ] + }, + { + "teal": 59, + "source": 542, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 63, + "source": 544, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 66, + "source": 541, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 67, + "source": 541, + "pc": [ + 116 + ] + }, + { + "teal": 70, + "source": 540, + "pc": [ + 117 + ] + }, + { + "teal": 71, + "source": 540, + "pc": [ + 118 + ] + }, + { + "teal": 74, + "source": 540, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 75, + "source": 540, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 76, + "source": 540, + "pc": [ + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 79, + "source": 540, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 132 + ] + }, + { + "teal": 82, + "source": 540, + "pc": [ + 133, + 134, + 135, + 136, + 137, + 138 + ] + }, + { + "teal": 83, + "source": 540, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 84, + "source": 540, + "pc": [ + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 87, + "source": 540, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 146 + ] + }, + { + "teal": 90, + "source": 540, + "pc": [ + 147, + 148, + 149 + ] + }, + { + "teal": 91, + "source": 540, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 92, + "source": 540, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 93, + "source": 540, + "pc": [ + 154 + ] + }, + { + "teal": 94, + "source": 540, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 95, + "source": 540, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 96, + "source": 540, + "pc": [ + 159 + ] + }, + { + "teal": 99, + "source": 540, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 100, + "source": 540, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 101, + "source": 540, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 102, + "source": 540, + "pc": [ + 167 + ] + }, + { + "teal": 103, + "source": 540, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 104, + "source": 540, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 105, + "source": 540, + "pc": [ + 172 + ] + }, + { + "teal": 106, + "source": 540, + "pc": [ + 173 + ] + }, + { + "teal": 107, + "source": 540, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 108, + "source": 540, + "pc": [ + 176 + ] + }, + { + "teal": 109, + "source": 540, + "pc": [ + 177 + ] + }, + { + "teal": 110, + "source": 540, + "pc": [ + 178 + ] + }, + { + "teal": 111, + "source": 540, + "pc": [ + 179, + 180, + 181 + ] + }, + { + "teal": 112, + "source": 540, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 113, + "source": 540, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 114, + "source": 540, + "pc": [ + 186 + ] + }, + { + "teal": 115, + "source": 540, + "pc": [ + 187 + ] + }, + { + "teal": 116, + "source": 540, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 117, + "source": 540, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 118, + "source": 540, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 119, + "source": 540, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 120, + "source": 540, + "pc": [ + 196 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCiphYmlfcm91dGVfc3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCgljYWxsc3ViIHN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdJblR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCnN0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0luVHVwbGUoKSh1aW50MTYsdWludDhbXSxzdHJpbmcsdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0luVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCiphYmlfcm91dGVfc3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdJblR1cGxlKCkodWludDE2LHVpbnQ4W10sc3RyaW5nLHVpbnQ4W10pCgljYWxsc3ViIHN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdJblR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dCnN0cmluZ0luVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgc3RyaW5nLCB1aW50PDg+W11dID0gWzEsIFsyXSwgJ0hlbGxvIFdvcmxkIScsIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDggLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDIKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDMKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHN0cmluZywgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCBzdHJpbmcsIHVpbnQ8OD5bXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0luVHVwbGUoKSh1aW50MTYsdWludDhbXSxzdHJpbmcsdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3N0cmluZ0luVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStringLength.approval.teal b/tests/contracts/artifacts/ABITestStringLength.approval.teal index 04161f627..39c8dac9e 100644 --- a/tests/contracts/artifacts/ABITestStringLength.approval.teal +++ b/tests/contracts/artifacts/ABITestStringLength.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStringLength.arc32.json b/tests/contracts/artifacts/ABITestStringLength.arc32.json index b10c9e0f0..76a7d68fa 100644 --- a/tests/contracts/artifacts/ABITestStringLength.arc32.json +++ b/tests/contracts/artifacts/ABITestStringLength.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0cmluZ0xlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdMZW5ndGgoKTogdWludDY0CnN0cmluZ0xlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0MwoJLy8gcyA9IGNvbmNhdCgnZm9vICcsICdiYXInKQoJYnl0ZSAweDY2NmY2ZjIwNjI2MTcyCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0NQoJLy8gcmV0dXJuIHMubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglsZW4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0xlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdHJpbmdMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0cmluZ0xlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdMZW5ndGgoKTogdWludDY0CnN0cmluZ0xlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0MwoJLy8gcyA9IGNvbmNhdCgnZm9vICcsICdiYXInKQoJYnl0ZSAweDY2NmY2ZjIwNjI2MTcyCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0NQoJLy8gcmV0dXJuIHMubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglsZW4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0xlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdHJpbmdMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStringLength.arc56_draft.json b/tests/contracts/artifacts/ABITestStringLength.arc56_draft.json index a32e820de..56c7d63f8 100644 --- a/tests/contracts/artifacts/ABITestStringLength.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStringLength.arc56_draft.json @@ -60,323 +60,326 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 741, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 741, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 741, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 741, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 741, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 741, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 741, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 741, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 741, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 742, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 742, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 742, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 742, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 742, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 742, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 742, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 742, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 742, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 743, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 48, - "source": 743, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 52, - "source": 745, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 53, - "source": 745, - "pc": [ - 72 - ] - }, - { - "teal": 56, - "source": 742, - "pc": [ - 73, - 74 - ] - }, - { - "teal": 57, - "source": 742, - "pc": [ - 75 - ] - }, - { - "teal": 60, - "source": 741, - "pc": [ - 76 - ] - }, - { - "teal": 61, - "source": 741, - "pc": [ - 77 - ] - }, - { - "teal": 64, - "source": 741, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 65, - "source": 741, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 66, - "source": 741, - "pc": [ - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 69, - "source": 741, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 91 - ] - }, - { - "teal": 72, - "source": 741, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 73, - "source": 741, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 74, - "source": 741, - "pc": [ - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 77, - "source": 741, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 105 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 741, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 741, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 741, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 741, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 741, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 741, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 741, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 741, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 741, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 742, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 742, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 742, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 742, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 742, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 742, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 742, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 742, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 742, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 743, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 48, + "source": 743, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 52, + "source": 745, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 53, + "source": 745, + "pc": [ + 72 + ] + }, + { + "teal": 56, + "source": 742, + "pc": [ + 73, + 74 + ] + }, + { + "teal": 57, + "source": 742, + "pc": [ + 75 + ] + }, + { + "teal": 60, + "source": 741, + "pc": [ + 76 + ] + }, + { + "teal": 61, + "source": 741, + "pc": [ + 77 + ] + }, + { + "teal": 64, + "source": 741, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 65, + "source": 741, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 66, + "source": 741, + "pc": [ + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 69, + "source": 741, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 91 + ] + }, + { + "teal": 72, + "source": 741, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 73, + "source": 741, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 74, + "source": 741, + "pc": [ + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 77, + "source": 741, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 105 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0cmluZ0xlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdMZW5ndGgoKTogdWludDY0CnN0cmluZ0xlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0MwoJLy8gcyA9IGNvbmNhdCgnZm9vICcsICdiYXInKQoJYnl0ZSAweDY2NmY2ZjIwNjI2MTcyCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0NQoJLy8gcmV0dXJuIHMubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglsZW4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0xlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdHJpbmdMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX3N0cmluZ0xlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzdHJpbmdMZW5ndGgoKTogdWludDY0CnN0cmluZ0xlbmd0aDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0MwoJLy8gcyA9IGNvbmNhdCgnZm9vICcsICdiYXInKQoJYnl0ZSAweDY2NmY2ZjIwNjI2MTcyCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjc0NQoJLy8gcmV0dXJuIHMubGVuZ3RoOwoJZnJhbWVfZGlnIDAgLy8gczogYnl0ZVtdCglsZW4KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInN0cmluZ0xlbmd0aCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zdHJpbmdMZW5ndGgKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestStringReturn.approval.teal b/tests/contracts/artifacts/ABITestStringReturn.approval.teal index b887d1218..3cc52af80 100644 --- a/tests/contracts/artifacts/ABITestStringReturn.approval.teal +++ b/tests/contracts/artifacts/ABITestStringReturn.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestStringReturn.arc32.json b/tests/contracts/artifacts/ABITestStringReturn.arc32.json index 346754028..79ddb4c55 100644 --- a/tests/contracts/artifacts/ABITestStringReturn.arc32.json +++ b/tests/contracts/artifacts/ABITestStringReturn.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdSZXR1cm4oKXN0cmluZwoqYWJpX3JvdXRlX3N0cmluZ1JldHVybjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdSZXR1cm4oKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdSZXR1cm4KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nUmV0dXJuKCk6IHN0cmluZwpzdHJpbmdSZXR1cm46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTMwCgkvLyByZXR1cm4gJ0hlbGxvIFdvcmxkISc7CglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdSZXR1cm4oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdSZXR1cm4oKXN0cmluZwoqYWJpX3JvdXRlX3N0cmluZ1JldHVybjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdSZXR1cm4oKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdSZXR1cm4KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nUmV0dXJuKCk6IHN0cmluZwpzdHJpbmdSZXR1cm46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTMwCgkvLyByZXR1cm4gJ0hlbGxvIFdvcmxkISc7CglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdSZXR1cm4oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestStringReturn.arc56_draft.json b/tests/contracts/artifacts/ABITestStringReturn.arc56_draft.json index f446cfc6a..65fa16da8 100644 --- a/tests/contracts/artifacts/ABITestStringReturn.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestStringReturn.arc56_draft.json @@ -60,326 +60,329 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 528, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 528, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 528, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 528, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 528, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 528, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 528, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 528, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 528, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 529, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 529, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 529, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 529, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 529, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 529, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 529, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 529, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 529, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 529, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 529, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 529, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 529, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 49, - "source": 530, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 50, - "source": 529, - "pc": [ - 78 - ] - }, - { - "teal": 53, - "source": 528, - "pc": [ - 79 - ] - }, - { - "teal": 54, - "source": 528, - "pc": [ - 80 - ] - }, - { - "teal": 57, - "source": 528, - "pc": [ - 81, - 82, - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 58, - "source": 528, - "pc": [ - 87, - 88, - 89 - ] - }, - { - "teal": 59, - "source": 528, - "pc": [ - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 62, - "source": 528, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 94 - ] - }, - { - "teal": 65, - "source": 528, - "pc": [ - 95, - 96, - 97, - 98, - 99, - 100 - ] - }, - { - "teal": 66, - "source": 528, - "pc": [ - 101, - 102, - 103 - ] - }, - { - "teal": 67, - "source": 528, - "pc": [ - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 70, - "source": 528, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 108 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 528, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 528, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 528, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 528, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 528, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 528, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 528, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 528, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 528, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 529, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 529, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 529, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 529, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 529, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 529, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 529, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 529, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 529, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 529, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 529, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 529, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 529, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 49, + "source": 530, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 50, + "source": 529, + "pc": [ + 78 + ] + }, + { + "teal": 53, + "source": 528, + "pc": [ + 79 + ] + }, + { + "teal": 54, + "source": 528, + "pc": [ + 80 + ] + }, + { + "teal": 57, + "source": 528, + "pc": [ + 81, + 82, + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 58, + "source": 528, + "pc": [ + 87, + 88, + 89 + ] + }, + { + "teal": 59, + "source": 528, + "pc": [ + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 62, + "source": 528, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 94 + ] + }, + { + "teal": 65, + "source": 528, + "pc": [ + 95, + 96, + 97, + 98, + 99, + 100 + ] + }, + { + "teal": 66, + "source": 528, + "pc": [ + 101, + 102, + 103 + ] + }, + { + "teal": 67, + "source": 528, + "pc": [ + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 70, + "source": 528, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 108 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdSZXR1cm4oKXN0cmluZwoqYWJpX3JvdXRlX3N0cmluZ1JldHVybjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdSZXR1cm4oKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdSZXR1cm4KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nUmV0dXJuKCk6IHN0cmluZwpzdHJpbmdSZXR1cm46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTMwCgkvLyByZXR1cm4gJ0hlbGxvIFdvcmxkISc7CglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdSZXR1cm4oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzdHJpbmdSZXR1cm4oKXN0cmluZwoqYWJpX3JvdXRlX3N0cmluZ1JldHVybjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBzdHJpbmdSZXR1cm4oKXN0cmluZwoJY2FsbHN1YiBzdHJpbmdSZXR1cm4KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nUmV0dXJuKCk6IHN0cmluZwpzdHJpbmdSZXR1cm46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTMwCgkvLyByZXR1cm4gJ0hlbGxvIFdvcmxkISc7CglieXRlIDB4NDg2NTZjNmM2ZjIwNTc2ZjcyNmM2NDIxIC8vICJIZWxsbyBXb3JsZCEiCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJzdHJpbmdSZXR1cm4oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfc3RyaW5nUmV0dXJuCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.approval.teal b/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.approval.teal index 565dd6da8..daae32bbd 100644 --- a/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.approval.teal +++ b/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc32.json b/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc32.json index 6566c96fa..653654e41 100644 --- a/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc32.json +++ b/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3RocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKTogdWludDE2CnRocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzOAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDE2LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgICAgWzMzLCA0NF0sCgkvLyAgICAgICBdLAoJLy8gICAgICAgWwoJLy8gICAgICAgICBbNTUsIDY2XSwKCS8vICAgICAgICAgWzc3LCA4OF0sCgkvLyAgICAgICBdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDBiMDAxNjAwMjEwMDJjMDAzNzAwNDIwMDRkMDA1OAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNDkKCS8vIGFbMV1bMV0gPSBbNzc3LCA4ODhdCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCWJ5dGUgMHgwMzA5MDM3OAoJcmVwbGFjZTIgMTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjUxCgkvLyByZXR1cm4gYVsxXVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoJZXh0cmFjdCAxNCAyCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3RocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKTogdWludDE2CnRocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzOAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDE2LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgICAgWzMzLCA0NF0sCgkvLyAgICAgICBdLAoJLy8gICAgICAgWwoJLy8gICAgICAgICBbNTUsIDY2XSwKCS8vICAgICAgICAgWzc3LCA4OF0sCgkvLyAgICAgICBdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDBiMDAxNjAwMjEwMDJjMDAzNzAwNDIwMDRkMDA1OAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNDkKCS8vIGFbMV1bMV0gPSBbNzc3LCA4ODhdCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCWJ5dGUgMHgwMzA5MDM3OAoJcmVwbGFjZTIgMTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjUxCgkvLyByZXR1cm4gYVsxXVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoJZXh0cmFjdCAxNCAyCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc56_draft.json b/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc56_draft.json index e33b79ee6..a14cc9239 100644 --- a/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestThreeDimensionalUint16Array.arc56_draft.json @@ -60,423 +60,426 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 236, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 236, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 236, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 236, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 236, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 236, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 236, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 236, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 236, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 237, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 237, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 237, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 237, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 237, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 237, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 36, - "source": 237, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 237, - "errorMessage": "threeDimensionalUint16Array return value overflowed 16 bits", - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 237, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 41, - "source": 237, - "pc": [ - 59 - ] - }, - { - "teal": 42, - "source": 237, - "pc": [ - 60 - ] - }, - { - "teal": 43, - "source": 237, - "pc": [ - 61 - ] - }, - { - "teal": 44, - "source": 237, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 237, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 51, - "source": 237, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 64, - "source": 238, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 65, - "source": 238, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 69, - "source": 249, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 70, - "source": 249, - "pc": [ - 90, - 91, - 92, - 93, - 94, - 95 - ] - }, - { - "teal": 71, - "source": 249, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 72, - "source": 249, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 76, - "source": 251, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 77, - "source": 251, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 78, - "source": 251, - "pc": [ - 105 - ] - }, - { - "teal": 81, - "source": 237, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 82, - "source": 237, - "pc": [ - 108 - ] - }, - { - "teal": 85, - "source": 236, - "pc": [ - 109 - ] - }, - { - "teal": 86, - "source": 236, - "pc": [ - 110 - ] - }, - { - "teal": 89, - "source": 236, - "pc": [ - 111, - 112, - 113, - 114, - 115, - 116 - ] - }, - { - "teal": 90, - "source": 236, - "pc": [ - 117, - 118, - 119 - ] - }, - { - "teal": 91, - "source": 236, - "pc": [ - 120, - 121, - 122, - 123 - ] - }, - { - "teal": 94, - "source": 236, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 124 - ] - }, - { - "teal": 97, - "source": 236, - "pc": [ - 125, - 126, - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 98, - "source": 236, - "pc": [ - 131, - 132, - 133 - ] - }, - { - "teal": 99, - "source": 236, - "pc": [ - 134, - 135, - 136, - 137 - ] - }, - { - "teal": 102, - "source": 236, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 138 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 236, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 236, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 236, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 236, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 236, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 236, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 236, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 236, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 236, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 237, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 237, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 237, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 237, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 237, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 237, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 36, + "source": 237, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 237, + "errorMessage": "threeDimensionalUint16Array return value overflowed 16 bits", + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 237, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 41, + "source": 237, + "pc": [ + 59 + ] + }, + { + "teal": 42, + "source": 237, + "pc": [ + 60 + ] + }, + { + "teal": 43, + "source": 237, + "pc": [ + 61 + ] + }, + { + "teal": 44, + "source": 237, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 237, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 51, + "source": 237, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 64, + "source": 238, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 65, + "source": 238, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 69, + "source": 249, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 70, + "source": 249, + "pc": [ + 90, + 91, + 92, + 93, + 94, + 95 + ] + }, + { + "teal": 71, + "source": 249, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 72, + "source": 249, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 76, + "source": 251, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 77, + "source": 251, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 78, + "source": 251, + "pc": [ + 105 + ] + }, + { + "teal": 81, + "source": 237, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 82, + "source": 237, + "pc": [ + 108 + ] + }, + { + "teal": 85, + "source": 236, + "pc": [ + 109 + ] + }, + { + "teal": 86, + "source": 236, + "pc": [ + 110 + ] + }, + { + "teal": 89, + "source": 236, + "pc": [ + 111, + 112, + 113, + 114, + 115, + 116 + ] + }, + { + "teal": 90, + "source": 236, + "pc": [ + 117, + 118, + 119 + ] + }, + { + "teal": 91, + "source": 236, + "pc": [ + 120, + 121, + 122, + 123 + ] + }, + { + "teal": 94, + "source": 236, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 124 + ] + }, + { + "teal": 97, + "source": 236, + "pc": [ + 125, + 126, + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 98, + "source": 236, + "pc": [ + 131, + 132, + 133 + ] + }, + { + "teal": 99, + "source": 236, + "pc": [ + 134, + 135, + 136, + 137 + ] + }, + { + "teal": 102, + "source": 236, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 138 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3RocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKTogdWludDE2CnRocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzOAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDE2LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgICAgWzMzLCA0NF0sCgkvLyAgICAgICBdLAoJLy8gICAgICAgWwoJLy8gICAgICAgICBbNTUsIDY2XSwKCS8vICAgICAgICAgWzc3LCA4OF0sCgkvLyAgICAgICBdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDBiMDAxNjAwMjEwMDJjMDAzNzAwNDIwMDRkMDA1OAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNDkKCS8vIGFbMV1bMV0gPSBbNzc3LCA4ODhdCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCWJ5dGUgMHgwMzA5MDM3OAoJcmVwbGFjZTIgMTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjUxCgkvLyByZXR1cm4gYVsxXVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoJZXh0cmFjdCAxNCAyCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3RocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKTogdWludDE2CnRocmVlRGltZW5zaW9uYWxVaW50MTZBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzOAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDE2LCAyPiwgMj4sIDI+ID0gWwoJLy8gICAgICAgWwoJLy8gICAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgICAgWzMzLCA0NF0sCgkvLyAgICAgICBdLAoJLy8gICAgICAgWwoJLy8gICAgICAgICBbNTUsIDY2XSwKCS8vICAgICAgICAgWzc3LCA4OF0sCgkvLyAgICAgICBdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDBiMDAxNjAwMjEwMDJjMDAzNzAwNDIwMDRkMDA1OAoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoyNDkKCS8vIGFbMV1bMV0gPSBbNzc3LCA4ODhdCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCWJ5dGUgMHgwMzA5MDM3OAoJcmVwbGFjZTIgMTIKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50MTYsIDI+LCAyPiwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjUxCgkvLyByZXR1cm4gYVsxXVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQxNiwgMj4sIDI+LCAyPgoJZXh0cmFjdCAxNCAyCglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0aHJlZURpbWVuc2lvbmFsVWludDE2QXJyYXkoKXVpbnQxNiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdGhyZWVEaW1lbnNpb25hbFVpbnQxNkFycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestTupleArg.approval.teal b/tests/contracts/artifacts/ABITestTupleArg.approval.teal index 2ed055717..2798de926 100644 --- a/tests/contracts/artifacts/ABITestTupleArg.approval.teal +++ b/tests/contracts/artifacts/ABITestTupleArg.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestTupleArg.arc32.json b/tests/contracts/artifacts/ABITestTupleArg.arc32.json index 4f08f9c4a..050731021 100644 --- a/tests/contracts/artifacts/ABITestTupleArg.arc32.json +++ b/tests/contracts/artifacts/ABITestTupleArg.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlQXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiAodWludDY0LHVpbnQxNix1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE4Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0dXBsZUFyZyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUFyZwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB0dXBsZUFyZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdHVwbGVBcmcoYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdKTogdWludDE2CnR1cGxlQXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0MgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCglleHRyYWN0IDggMgoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHVwbGVBcmcoKHVpbnQ2NCx1aW50MTYsdWludDY0KSl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3R1cGxlQXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlQXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiAodWludDY0LHVpbnQxNix1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE4Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0dXBsZUFyZyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUFyZwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB0dXBsZUFyZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdHVwbGVBcmcoYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdKTogdWludDE2CnR1cGxlQXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0MgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCglleHRyYWN0IDggMgoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHVwbGVBcmcoKHVpbnQ2NCx1aW50MTYsdWludDY0KSl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3R1cGxlQXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestTupleArg.arc56_draft.json b/tests/contracts/artifacts/ABITestTupleArg.arc56_draft.json index 95981c00d..f3459eb5c 100644 --- a/tests/contracts/artifacts/ABITestTupleArg.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestTupleArg.arc56_draft.json @@ -65,385 +65,388 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 340, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 340, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 340, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 340, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 340, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 340, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 340, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 340, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 340, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 341, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 341, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 341, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 341, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 341, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 341, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 341, - "errorMessage": "argument 0 (a) for tupleArg must be a (uint64,uint16,uint64)", - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 341, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 341, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 341, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 341, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 341, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 46, - "source": 341, - "pc": [ - 63 - ] - }, - { - "teal": 49, - "source": 341, - "errorMessage": "tupleArg return value overflowed 16 bits", - "pc": [ - 64 - ] - }, - { - "teal": 50, - "source": 341, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 51, - "source": 341, - "pc": [ - 68 - ] - }, - { - "teal": 52, - "source": 341, - "pc": [ - 69 - ] - }, - { - "teal": 53, - "source": 341, - "pc": [ - 70 - ] - }, - { - "teal": 54, - "source": 341, - "pc": [ - 71 - ] - }, - { - "teal": 58, - "source": 341, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 62, - "source": 342, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 63, - "source": 342, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 64, - "source": 342, - "pc": [ - 80 - ] - }, - { - "teal": 65, - "source": 341, - "pc": [ - 81 - ] - }, - { - "teal": 68, - "source": 340, - "pc": [ - 82 - ] - }, - { - "teal": 69, - "source": 340, - "pc": [ - 83 - ] - }, - { - "teal": 72, - "source": 340, - "pc": [ - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 73, - "source": 340, - "pc": [ - 90, - 91, - 92 - ] - }, - { - "teal": 74, - "source": 340, - "pc": [ - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 77, - "source": 340, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 97 - ] - }, - { - "teal": 80, - "source": 340, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 81, - "source": 340, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 82, - "source": 340, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 85, - "source": 340, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 111 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 340, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 340, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 340, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 340, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 340, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 340, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 340, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 340, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 340, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 341, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 341, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 341, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 341, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 341, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 341, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 341, + "errorMessage": "argument 0 (a) for tupleArg must be a (uint64,uint16,uint64)", + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 341, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 341, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 341, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 341, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 341, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 46, + "source": 341, + "pc": [ + 63 + ] + }, + { + "teal": 49, + "source": 341, + "errorMessage": "tupleArg return value overflowed 16 bits", + "pc": [ + 64 + ] + }, + { + "teal": 50, + "source": 341, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 51, + "source": 341, + "pc": [ + 68 + ] + }, + { + "teal": 52, + "source": 341, + "pc": [ + 69 + ] + }, + { + "teal": 53, + "source": 341, + "pc": [ + 70 + ] + }, + { + "teal": 54, + "source": 341, + "pc": [ + 71 + ] + }, + { + "teal": 58, + "source": 341, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 62, + "source": 342, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 63, + "source": 342, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 64, + "source": 342, + "pc": [ + 80 + ] + }, + { + "teal": 65, + "source": 341, + "pc": [ + 81 + ] + }, + { + "teal": 68, + "source": 340, + "pc": [ + 82 + ] + }, + { + "teal": 69, + "source": 340, + "pc": [ + 83 + ] + }, + { + "teal": 72, + "source": 340, + "pc": [ + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 73, + "source": 340, + "pc": [ + 90, + 91, + 92 + ] + }, + { + "teal": 74, + "source": 340, + "pc": [ + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 77, + "source": 340, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 97 + ] + }, + { + "teal": 80, + "source": 340, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 81, + "source": 340, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 82, + "source": 340, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 85, + "source": 340, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 111 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlQXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiAodWludDY0LHVpbnQxNix1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE4Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0dXBsZUFyZyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUFyZwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB0dXBsZUFyZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdHVwbGVBcmcoYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdKTogdWludDE2CnR1cGxlQXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0MgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCglleHRyYWN0IDggMgoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHVwbGVBcmcoKHVpbnQ2NCx1aW50MTYsdWludDY0KSl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3R1cGxlQXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlQXJnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhOiAodWludDY0LHVpbnQxNix1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE4Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0dXBsZUFyZyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50MTYsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB0dXBsZUFyZygodWludDY0LHVpbnQxNix1aW50NjQpKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUFyZwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB0dXBsZUFyZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdHVwbGVBcmcoYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdKTogdWludDE2CnR1cGxlQXJnOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM0MgoJLy8gcmV0dXJuIGFbMV07CglmcmFtZV9kaWcgLTEgLy8gYTogW3VpbnQ2NCwgdWludDE2LCB1aW50NjRdCglleHRyYWN0IDggMgoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidHVwbGVBcmcoKHVpbnQ2NCx1aW50MTYsdWludDY0KSl1aW50MTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3R1cGxlQXJnCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestTupleInArray.approval.teal b/tests/contracts/artifacts/ABITestTupleInArray.approval.teal index 39e4f5ecb..23d319b2b 100644 --- a/tests/contracts/artifacts/ABITestTupleInArray.approval.teal +++ b/tests/contracts/artifacts/ABITestTupleInArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestTupleInArray.arc32.json b/tests/contracts/artifacts/ABITestTupleInArray.arc32.json index 46dea709b..a092fa043 100644 --- a/tests/contracts/artifacts/ABITestTupleInArray.arc32.json +++ b/tests/contracts/artifacts/ABITestTupleInArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluQXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlSW5BcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluQXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUluQXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdHVwbGVJbkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluQXJyYXkoKTogdWludDE2CnR1cGxlSW5BcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI3MwoJLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Mjc4CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFt1aW50NjQsIHVpbnQxNl0sIDI+CglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5BcnJheSgpdWludDE2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluQXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlSW5BcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluQXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUluQXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdHVwbGVJbkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluQXJyYXkoKTogdWludDE2CnR1cGxlSW5BcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI3MwoJLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Mjc4CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFt1aW50NjQsIHVpbnQxNl0sIDI+CglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5BcnJheSgpdWludDE2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestTupleInArray.arc56_draft.json b/tests/contracts/artifacts/ABITestTupleInArray.arc56_draft.json index e6896a165..ba8445264 100644 --- a/tests/contracts/artifacts/ABITestTupleInArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestTupleInArray.arc56_draft.json @@ -60,391 +60,394 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 271, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 271, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 271, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 271, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 271, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 271, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 271, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 271, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 271, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 272, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 272, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 272, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 272, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 272, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 272, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 36, - "source": 272, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 272, - "errorMessage": "tupleInArray return value overflowed 16 bits", - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 272, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 41, - "source": 272, - "pc": [ - 59 - ] - }, - { - "teal": 42, - "source": 272, - "pc": [ - 60 - ] - }, - { - "teal": 43, - "source": 272, - "pc": [ - 61 - ] - }, - { - "teal": 44, - "source": 272, - "pc": [ - 62 - ] - }, - { - "teal": 48, - "source": 272, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 51, - "source": 272, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 58, - "source": 273, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 59, - "source": 273, - "pc": [ - 90, - 91 - ] - }, - { - "teal": 63, - "source": 278, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 64, - "source": 278, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 65, - "source": 278, - "pc": [ - 97 - ] - }, - { - "teal": 68, - "source": 272, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 69, - "source": 272, - "pc": [ - 100 - ] - }, - { - "teal": 72, - "source": 271, - "pc": [ - 101 - ] - }, - { - "teal": 73, - "source": 271, - "pc": [ - 102 - ] - }, - { - "teal": 76, - "source": 271, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 77, - "source": 271, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 78, - "source": 271, - "pc": [ - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 81, - "source": 271, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 116 - ] - }, - { - "teal": 84, - "source": 271, - "pc": [ - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 85, - "source": 271, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 86, - "source": 271, - "pc": [ - 126, - 127, - 128, - 129 - ] - }, - { - "teal": 89, - "source": 271, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 130 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 271, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 271, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 271, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 271, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 271, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 271, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 271, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 271, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 271, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 272, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 272, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 272, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 272, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 272, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 272, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 36, + "source": 272, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 272, + "errorMessage": "tupleInArray return value overflowed 16 bits", + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 272, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 41, + "source": 272, + "pc": [ + 59 + ] + }, + { + "teal": 42, + "source": 272, + "pc": [ + 60 + ] + }, + { + "teal": 43, + "source": 272, + "pc": [ + 61 + ] + }, + { + "teal": 44, + "source": 272, + "pc": [ + 62 + ] + }, + { + "teal": 48, + "source": 272, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 51, + "source": 272, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 58, + "source": 273, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 59, + "source": 273, + "pc": [ + 90, + 91 + ] + }, + { + "teal": 63, + "source": 278, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 64, + "source": 278, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 65, + "source": 278, + "pc": [ + 97 + ] + }, + { + "teal": 68, + "source": 272, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 69, + "source": 272, + "pc": [ + 100 + ] + }, + { + "teal": 72, + "source": 271, + "pc": [ + 101 + ] + }, + { + "teal": 73, + "source": 271, + "pc": [ + 102 + ] + }, + { + "teal": 76, + "source": 271, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 77, + "source": 271, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 78, + "source": 271, + "pc": [ + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 81, + "source": 271, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 116 + ] + }, + { + "teal": 84, + "source": 271, + "pc": [ + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 85, + "source": 271, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 86, + "source": 271, + "pc": [ + 126, + 127, + 128, + 129 + ] + }, + { + "teal": 89, + "source": 271, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 130 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluQXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlSW5BcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluQXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUluQXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdHVwbGVJbkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluQXJyYXkoKTogdWludDE2CnR1cGxlSW5BcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI3MwoJLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Mjc4CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFt1aW50NjQsIHVpbnQxNl0sIDI+CglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5BcnJheSgpdWludDE2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluQXJyYXkoKXVpbnQxNgoqYWJpX3JvdXRlX3R1cGxlSW5BcnJheToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluQXJyYXkoKXVpbnQxNgoJY2FsbHN1YiB0dXBsZUluQXJyYXkKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gdHVwbGVJbkFycmF5IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluQXJyYXkoKTogdWludDE2CnR1cGxlSW5BcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI3MwoJLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4gPSBbCgkvLyAgICAgICBbMTEsIDIyXSwKCS8vICAgICAgIFszMywgNDRdLAoJLy8gICAgIF0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8W3VpbnQ2NCwgdWludDE2XSwgMj4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Mjc4CgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFt1aW50NjQsIHVpbnQxNl0sIDI+CglleHRyYWN0IDE4IDIKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5BcnJheSgpdWludDE2IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluQXJyYXkKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestTupleInTuple.approval.teal b/tests/contracts/artifacts/ABITestTupleInTuple.approval.teal index 2f9594987..23b91e3f4 100644 --- a/tests/contracts/artifacts/ABITestTupleInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestTupleInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestTupleInTuple.arc32.json b/tests/contracts/artifacts/ABITestTupleInTuple.arc32.json index 39d9d7e31..bf7902121 100644 --- a/tests/contracts/artifacts/ABITestTupleInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestTupleInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX3R1cGxlSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiB0dXBsZUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluVHVwbGUoKTogdWludDY0CnR1cGxlSW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NAoJLy8gYTogW3VpbnQxNiwgdWludDE2LCBbdWludDY0LCB1aW50MTZdLCBbdWludDE2LCB1aW50NjRdXSA9IFsxMSwgMjIsIFszMywgNDRdLCBbNTUsIDY2XV0KCWJ5dGUgMHgwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjMDAzNzAwMDAwMDAwMDAwMDAwNDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NgoJLy8gcmV0dXJuIGFbM11bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCglleHRyYWN0IDE2IDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5UdXBsZSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX3R1cGxlSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiB0dXBsZUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluVHVwbGUoKTogdWludDY0CnR1cGxlSW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NAoJLy8gYTogW3VpbnQxNiwgdWludDE2LCBbdWludDY0LCB1aW50MTZdLCBbdWludDE2LCB1aW50NjRdXSA9IFsxMSwgMjIsIFszMywgNDRdLCBbNTUsIDY2XV0KCWJ5dGUgMHgwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjMDAzNzAwMDAwMDAwMDAwMDAwNDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NgoJLy8gcmV0dXJuIGFbM11bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCglleHRyYWN0IDE2IDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5UdXBsZSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestTupleInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestTupleInTuple.arc56_draft.json index 96d72b765..21dfe99ae 100644 --- a/tests/contracts/artifacts/ABITestTupleInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestTupleInTuple.arc56_draft.json @@ -60,349 +60,352 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 282, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 282, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 282, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 282, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 282, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 282, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 282, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 282, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 282, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 283, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 283, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 283, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 283, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 283, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 283, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 283, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 283, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 283, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 284, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 48, - "source": 284, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 52, - "source": 286, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 53, - "source": 286, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 54, - "source": 286, - "pc": [ - 92 - ] - }, - { - "teal": 57, - "source": 283, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 58, - "source": 283, - "pc": [ - 95 - ] - }, - { - "teal": 61, - "source": 282, - "pc": [ - 96 - ] - }, - { - "teal": 62, - "source": 282, - "pc": [ - 97 - ] - }, - { - "teal": 65, - "source": 282, - "pc": [ - 98, - 99, - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 66, - "source": 282, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 67, - "source": 282, - "pc": [ - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 70, - "source": 282, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 111 - ] - }, - { - "teal": 73, - "source": 282, - "pc": [ - 112, - 113, - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 74, - "source": 282, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 75, - "source": 282, - "pc": [ - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 78, - "source": 282, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 125 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 282, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 282, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 282, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 282, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 282, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 282, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 282, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 282, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 282, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 283, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 283, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 283, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 283, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 283, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 283, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 283, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 283, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 283, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 284, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 48, + "source": 284, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 52, + "source": 286, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 53, + "source": 286, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 54, + "source": 286, + "pc": [ + 92 + ] + }, + { + "teal": 57, + "source": 283, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 58, + "source": 283, + "pc": [ + 95 + ] + }, + { + "teal": 61, + "source": 282, + "pc": [ + 96 + ] + }, + { + "teal": 62, + "source": 282, + "pc": [ + 97 + ] + }, + { + "teal": 65, + "source": 282, + "pc": [ + 98, + 99, + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 66, + "source": 282, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 67, + "source": 282, + "pc": [ + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 70, + "source": 282, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 111 + ] + }, + { + "teal": 73, + "source": 282, + "pc": [ + 112, + 113, + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 74, + "source": 282, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 75, + "source": 282, + "pc": [ + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 78, + "source": 282, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 125 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX3R1cGxlSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiB0dXBsZUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluVHVwbGUoKTogdWludDY0CnR1cGxlSW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NAoJLy8gYTogW3VpbnQxNiwgdWludDE2LCBbdWludDY0LCB1aW50MTZdLCBbdWludDE2LCB1aW50NjRdXSA9IFsxMSwgMjIsIFszMywgNDRdLCBbNTUsIDY2XV0KCWJ5dGUgMHgwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjMDAzNzAwMDAwMDAwMDAwMDAwNDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NgoJLy8gcmV0dXJuIGFbM11bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCglleHRyYWN0IDE2IDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5UdXBsZSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0dXBsZUluVHVwbGUoKXVpbnQ2NAoqYWJpX3JvdXRlX3R1cGxlSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB0dXBsZUluVHVwbGUoKXVpbnQ2NAoJY2FsbHN1YiB0dXBsZUluVHVwbGUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0dXBsZUluVHVwbGUoKTogdWludDY0CnR1cGxlSW5UdXBsZToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NAoJLy8gYTogW3VpbnQxNiwgdWludDE2LCBbdWludDY0LCB1aW50MTZdLCBbdWludDE2LCB1aW50NjRdXSA9IFsxMSwgMjIsIFszMywgNDRdLCBbNTUsIDY2XV0KCWJ5dGUgMHgwMDBiMDAxNjAwMDAwMDAwMDAwMDAwMjEwMDJjMDAzNzAwMDAwMDAwMDAwMDAwNDIKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjI4NgoJLy8gcmV0dXJuIGFbM11bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2LCB1aW50MTYsIFt1aW50NjQsIHVpbnQxNl0sIFt1aW50MTYsIHVpbnQ2NF1dCglleHRyYWN0IDE2IDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR1cGxlSW5UdXBsZSgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90dXBsZUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestTxnTypes.approval.teal b/tests/contracts/artifacts/ABITestTxnTypes.approval.teal index e315464cb..5c9b36122 100644 --- a/tests/contracts/artifacts/ABITestTxnTypes.approval.teal +++ b/tests/contracts/artifacts/ABITestTxnTypes.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestTxnTypes.arc32.json b/tests/contracts/artifacts/ABITestTxnTypes.arc32.json index cef3d90a0..9de989e0b 100644 --- a/tests/contracts/artifacts/ABITestTxnTypes.arc32.json +++ b/tests/contracts/artifacts/ABITestTxnTypes.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCiphYmlfcm91dGVfdHhuVHlwZXM6CgkvLyBwOiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChwKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIHBheSB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8ga3I6IGtleXJlZwoJdHhuIEdyb3VwSW5kZXgKCWludCAyCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQga2V5cmVnCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGtyKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGtleXJlZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYXQ6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDMKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCAyIChhdCkgZm9yIHR4blR5cGVzIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWY6IGFmcnoKCXR4biBHcm91cEluZGV4CglpbnQgNAoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFmcnoKCT09CgoJLy8gYXJndW1lbnQgMyAoYWYpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWZyeiB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWM6IGFjZmcKCXR4biBHcm91cEluZGV4CglpbnQgNQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFjZmcKCT09CgoJLy8gYXJndW1lbnQgNCAoYWMpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWNmZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYTogYXBwbAoJdHhuIEdyb3VwSW5kZXgKCWludCA2CgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCgkvLyBhcmd1bWVudCA1IChhKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGFwcGwgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIHQ6IHR4bgoJdHhuIEdyb3VwSW5kZXgKCWludCA3CgktCgoJLy8gZXhlY3V0ZSB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCgljYWxsc3ViIHR4blR5cGVzCglpbnQgMQoJcmV0dXJuCgovLyB0eG5UeXBlcyh0OiBUeG4sIGE6IEFwcENhbGxUeG4sIGFjOiBBc3NldENvbmZpZ1R4biwgYWY6IEFzc2V0RnJlZXplVHhuLCBhdDogQXNzZXRUcmFuc2ZlclR4biwga3I6IEtleVJlZ1R4biwgcDogUGF5VHhuKTogdm9pZAp0eG5UeXBlczoKCXByb3RvIDcgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjYKCS8vIGFzc2VydCh0LnNlbmRlciA9PT0gYS5zZW5kZXIpCglmcmFtZV9kaWcgLTEgLy8gdDogVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBhOiBBcHBDYWxsVHhuCglndHhucyBTZW5kZXIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzI3CgkvLyBhc3NlcnQoYWMuc2VuZGVyID09PSBhZi5zZW5kZXIpCglmcmFtZV9kaWcgLTMgLy8gYWM6IEFzc2V0Q29uZmlnVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtNCAvLyBhZjogQXNzZXRGcmVlemVUeG4KCWd0eG5zIFNlbmRlcgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjgKCS8vIGFzc2VydChhdC5zZW5kZXIgPT09IGtyLnNlbmRlcikKCWZyYW1lX2RpZyAtNSAvLyBhdDogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTYgLy8ga3I6IEtleVJlZ1R4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcyOQoJLy8gYXNzZXJ0KHAuc2VuZGVyID09PSB0LnNlbmRlcikKCWZyYW1lX2RpZyAtNyAvLyBwOiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHQ6IFR4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCiphYmlfcm91dGVfdHhuVHlwZXM6CgkvLyBwOiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChwKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIHBheSB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8ga3I6IGtleXJlZwoJdHhuIEdyb3VwSW5kZXgKCWludCAyCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQga2V5cmVnCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGtyKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGtleXJlZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYXQ6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDMKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCAyIChhdCkgZm9yIHR4blR5cGVzIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWY6IGFmcnoKCXR4biBHcm91cEluZGV4CglpbnQgNAoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFmcnoKCT09CgoJLy8gYXJndW1lbnQgMyAoYWYpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWZyeiB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWM6IGFjZmcKCXR4biBHcm91cEluZGV4CglpbnQgNQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFjZmcKCT09CgoJLy8gYXJndW1lbnQgNCAoYWMpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWNmZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYTogYXBwbAoJdHhuIEdyb3VwSW5kZXgKCWludCA2CgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCgkvLyBhcmd1bWVudCA1IChhKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGFwcGwgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIHQ6IHR4bgoJdHhuIEdyb3VwSW5kZXgKCWludCA3CgktCgoJLy8gZXhlY3V0ZSB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCgljYWxsc3ViIHR4blR5cGVzCglpbnQgMQoJcmV0dXJuCgovLyB0eG5UeXBlcyh0OiBUeG4sIGE6IEFwcENhbGxUeG4sIGFjOiBBc3NldENvbmZpZ1R4biwgYWY6IEFzc2V0RnJlZXplVHhuLCBhdDogQXNzZXRUcmFuc2ZlclR4biwga3I6IEtleVJlZ1R4biwgcDogUGF5VHhuKTogdm9pZAp0eG5UeXBlczoKCXByb3RvIDcgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjYKCS8vIGFzc2VydCh0LnNlbmRlciA9PT0gYS5zZW5kZXIpCglmcmFtZV9kaWcgLTEgLy8gdDogVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBhOiBBcHBDYWxsVHhuCglndHhucyBTZW5kZXIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzI3CgkvLyBhc3NlcnQoYWMuc2VuZGVyID09PSBhZi5zZW5kZXIpCglmcmFtZV9kaWcgLTMgLy8gYWM6IEFzc2V0Q29uZmlnVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtNCAvLyBhZjogQXNzZXRGcmVlemVUeG4KCWd0eG5zIFNlbmRlcgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjgKCS8vIGFzc2VydChhdC5zZW5kZXIgPT09IGtyLnNlbmRlcikKCWZyYW1lX2RpZyAtNSAvLyBhdDogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTYgLy8ga3I6IEtleVJlZ1R4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcyOQoJLy8gYXNzZXJ0KHAuc2VuZGVyID09PSB0LnNlbmRlcikKCWZyYW1lX2RpZyAtNyAvLyBwOiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHQ6IFR4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestTxnTypes.arc56_draft.json b/tests/contracts/artifacts/ABITestTxnTypes.arc56_draft.json index 8ec1d289a..28871fc58 100644 --- a/tests/contracts/artifacts/ABITestTxnTypes.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestTxnTypes.arc56_draft.json @@ -89,805 +89,808 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 716, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 716, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 716, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 716, - "pc": [ - 12 - ] - }, - { - "teal": 16, - "source": 716, - "pc": [ - 13 - ] - }, - { - "teal": 17, - "source": 716, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 18, - "source": 716, - "pc": [ - 16 - ] - }, - { - "teal": 19, - "source": 716, - "pc": [ - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42 - ] - }, - { - "teal": 23, - "source": 716, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 43 - ] - }, - { - "teal": 28, - "source": 724, - "pc": [ - 44, - 45 - ] - }, - { - "teal": 29, - "source": 724, - "pc": [ - 46 - ] - }, - { - "teal": 30, - "source": 724, - "pc": [ - 47 - ] - }, - { - "teal": 31, - "source": 724, - "pc": [ - 48 - ] - }, - { - "teal": 32, - "source": 724, - "pc": [ - 49, - 50 - ] - }, - { - "teal": 33, - "source": 724, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 724, - "pc": [ - 52 - ] - }, - { - "teal": 37, - "source": 724, - "errorMessage": "argument 0 (p) for txnTypes must be a pay transaction", - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 723, - "pc": [ - 54, - 55 - ] - }, - { - "teal": 41, - "source": 723, - "pc": [ - 56 - ] - }, - { - "teal": 42, - "source": 723, - "pc": [ - 57 - ] - }, - { - "teal": 43, - "source": 723, - "pc": [ - 58 - ] - }, - { - "teal": 44, - "source": 723, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 45, - "source": 723, - "pc": [ - 61 - ] - }, - { - "teal": 46, - "source": 723, - "pc": [ - 62 - ] - }, - { - "teal": 49, - "source": 723, - "errorMessage": "argument 1 (kr) for txnTypes must be a keyreg transaction", - "pc": [ - 63 - ] - }, - { - "teal": 52, - "source": 722, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 53, - "source": 722, - "pc": [ - 66 - ] - }, - { - "teal": 54, - "source": 722, - "pc": [ - 67 - ] - }, - { - "teal": 55, - "source": 722, - "pc": [ - 68 - ] - }, - { - "teal": 56, - "source": 722, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 57, - "source": 722, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 58, - "source": 722, - "pc": [ - 73 - ] - }, - { - "teal": 61, - "source": 722, - "errorMessage": "argument 2 (at) for txnTypes must be a axfer transaction", - "pc": [ - 74 - ] - }, - { - "teal": 64, - "source": 721, - "pc": [ - 75, - 76 - ] - }, - { - "teal": 65, - "source": 721, - "pc": [ - 77, - 78 - ] - }, - { - "teal": 66, - "source": 721, - "pc": [ - 79 - ] - }, - { - "teal": 67, - "source": 721, - "pc": [ - 80 - ] - }, - { - "teal": 68, - "source": 721, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 69, - "source": 721, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 70, - "source": 721, - "pc": [ - 85 - ] - }, - { - "teal": 73, - "source": 721, - "errorMessage": "argument 3 (af) for txnTypes must be a afrz transaction", - "pc": [ - 86 - ] - }, - { - "teal": 76, - "source": 720, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 77, - "source": 720, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 78, - "source": 720, - "pc": [ - 91 - ] - }, - { - "teal": 79, - "source": 720, - "pc": [ - 92 - ] - }, - { - "teal": 80, - "source": 720, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 81, - "source": 720, - "pc": [ - 95 - ] - }, - { - "teal": 82, - "source": 720, - "pc": [ - 96 - ] - }, - { - "teal": 85, - "source": 720, - "errorMessage": "argument 4 (ac) for txnTypes must be a acfg transaction", - "pc": [ - 97 - ] - }, - { - "teal": 88, - "source": 719, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 89, - "source": 719, - "pc": [ - 100 - ] - }, - { - "teal": 90, - "source": 719, - "pc": [ - 101 - ] - }, - { - "teal": 91, - "source": 719, - "pc": [ - 102 - ] - }, - { - "teal": 92, - "source": 719, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 93, - "source": 719, - "pc": [ - 105 - ] - }, - { - "teal": 94, - "source": 719, - "pc": [ - 106 - ] - }, - { - "teal": 97, - "source": 719, - "errorMessage": "argument 5 (a) for txnTypes must be a appl transaction", - "pc": [ - 107 - ] - }, - { - "teal": 100, - "source": 718, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 101, - "source": 718, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 102, - "source": 718, - "pc": [ - 112 - ] - }, - { - "teal": 105, - "source": 717, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 106, - "source": 717, - "pc": [ - 116 - ] - }, - { - "teal": 107, - "source": 717, - "pc": [ - 117 - ] - }, - { - "teal": 111, - "source": 717, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 115, - "source": 726, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 116, - "source": 726, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 117, - "source": 726, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 118, - "source": 726, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 119, - "source": 726, - "pc": [ - 129 - ] - }, - { - "teal": 120, - "source": 726, - "pc": [ - 130 - ] - }, - { - "teal": 124, - "source": 727, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 125, - "source": 727, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 126, - "source": 727, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 127, - "source": 727, - "pc": [ - 137, - 138 - ] - }, - { - "teal": 128, - "source": 727, - "pc": [ - 139 - ] - }, - { - "teal": 129, - "source": 727, - "pc": [ - 140 - ] - }, - { - "teal": 133, - "source": 728, - "pc": [ - 141, - 142 - ] - }, - { - "teal": 134, - "source": 728, - "pc": [ - 143, - 144 - ] - }, - { - "teal": 135, - "source": 728, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 136, - "source": 728, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 137, - "source": 728, - "pc": [ - 149 - ] - }, - { - "teal": 138, - "source": 728, - "pc": [ - 150 - ] - }, - { - "teal": 142, - "source": 729, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 143, - "source": 729, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 144, - "source": 729, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 145, - "source": 729, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 146, - "source": 729, - "pc": [ - 159 - ] - }, - { - "teal": 147, - "source": 729, - "pc": [ - 160 - ] - }, - { - "teal": 148, - "source": 717, - "pc": [ - 161 - ] - }, - { - "teal": 151, - "source": 716, - "pc": [ - 162 - ] - }, - { - "teal": 152, - "source": 716, - "pc": [ - 163 - ] - }, - { - "teal": 155, - "source": 716, - "pc": [ - 164, - 165, - 166, - 167, - 168, - 169 - ] - }, - { - "teal": 156, - "source": 716, - "pc": [ - 170, - 171, - 172 - ] - }, - { - "teal": 157, - "source": 716, - "pc": [ - 173, - 174, - 175, - 176 - ] - }, - { - "teal": 160, - "source": 716, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 177 - ] - }, - { - "teal": 163, - "source": 716, - "pc": [ - 178, - 179, - 180, - 181, - 182, - 183 - ] - }, - { - "teal": 164, - "source": 716, - "pc": [ - 184, - 185, - 186 - ] - }, - { - "teal": 165, - "source": 716, - "pc": [ - 187, - 188, - 189, - 190 - ] - }, - { - "teal": 168, - "source": 716, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 191 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 716, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 716, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 716, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 716, + "pc": [ + 12 + ] + }, + { + "teal": 16, + "source": 716, + "pc": [ + 13 + ] + }, + { + "teal": 17, + "source": 716, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 18, + "source": 716, + "pc": [ + 16 + ] + }, + { + "teal": 19, + "source": 716, + "pc": [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42 + ] + }, + { + "teal": 23, + "source": 716, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 43 + ] + }, + { + "teal": 28, + "source": 724, + "pc": [ + 44, + 45 + ] + }, + { + "teal": 29, + "source": 724, + "pc": [ + 46 + ] + }, + { + "teal": 30, + "source": 724, + "pc": [ + 47 + ] + }, + { + "teal": 31, + "source": 724, + "pc": [ + 48 + ] + }, + { + "teal": 32, + "source": 724, + "pc": [ + 49, + 50 + ] + }, + { + "teal": 33, + "source": 724, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 724, + "pc": [ + 52 + ] + }, + { + "teal": 37, + "source": 724, + "errorMessage": "argument 0 (p) for txnTypes must be a pay transaction", + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 723, + "pc": [ + 54, + 55 + ] + }, + { + "teal": 41, + "source": 723, + "pc": [ + 56 + ] + }, + { + "teal": 42, + "source": 723, + "pc": [ + 57 + ] + }, + { + "teal": 43, + "source": 723, + "pc": [ + 58 + ] + }, + { + "teal": 44, + "source": 723, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 45, + "source": 723, + "pc": [ + 61 + ] + }, + { + "teal": 46, + "source": 723, + "pc": [ + 62 + ] + }, + { + "teal": 49, + "source": 723, + "errorMessage": "argument 1 (kr) for txnTypes must be a keyreg transaction", + "pc": [ + 63 + ] + }, + { + "teal": 52, + "source": 722, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 53, + "source": 722, + "pc": [ + 66 + ] + }, + { + "teal": 54, + "source": 722, + "pc": [ + 67 + ] + }, + { + "teal": 55, + "source": 722, + "pc": [ + 68 + ] + }, + { + "teal": 56, + "source": 722, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 57, + "source": 722, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 58, + "source": 722, + "pc": [ + 73 + ] + }, + { + "teal": 61, + "source": 722, + "errorMessage": "argument 2 (at) for txnTypes must be a axfer transaction", + "pc": [ + 74 + ] + }, + { + "teal": 64, + "source": 721, + "pc": [ + 75, + 76 + ] + }, + { + "teal": 65, + "source": 721, + "pc": [ + 77, + 78 + ] + }, + { + "teal": 66, + "source": 721, + "pc": [ + 79 + ] + }, + { + "teal": 67, + "source": 721, + "pc": [ + 80 + ] + }, + { + "teal": 68, + "source": 721, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 69, + "source": 721, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 70, + "source": 721, + "pc": [ + 85 + ] + }, + { + "teal": 73, + "source": 721, + "errorMessage": "argument 3 (af) for txnTypes must be a afrz transaction", + "pc": [ + 86 + ] + }, + { + "teal": 76, + "source": 720, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 77, + "source": 720, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 78, + "source": 720, + "pc": [ + 91 + ] + }, + { + "teal": 79, + "source": 720, + "pc": [ + 92 + ] + }, + { + "teal": 80, + "source": 720, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 81, + "source": 720, + "pc": [ + 95 + ] + }, + { + "teal": 82, + "source": 720, + "pc": [ + 96 + ] + }, + { + "teal": 85, + "source": 720, + "errorMessage": "argument 4 (ac) for txnTypes must be a acfg transaction", + "pc": [ + 97 + ] + }, + { + "teal": 88, + "source": 719, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 89, + "source": 719, + "pc": [ + 100 + ] + }, + { + "teal": 90, + "source": 719, + "pc": [ + 101 + ] + }, + { + "teal": 91, + "source": 719, + "pc": [ + 102 + ] + }, + { + "teal": 92, + "source": 719, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 93, + "source": 719, + "pc": [ + 105 + ] + }, + { + "teal": 94, + "source": 719, + "pc": [ + 106 + ] + }, + { + "teal": 97, + "source": 719, + "errorMessage": "argument 5 (a) for txnTypes must be a appl transaction", + "pc": [ + 107 + ] + }, + { + "teal": 100, + "source": 718, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 101, + "source": 718, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 102, + "source": 718, + "pc": [ + 112 + ] + }, + { + "teal": 105, + "source": 717, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 106, + "source": 717, + "pc": [ + 116 + ] + }, + { + "teal": 107, + "source": 717, + "pc": [ + 117 + ] + }, + { + "teal": 111, + "source": 717, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 115, + "source": 726, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 116, + "source": 726, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 117, + "source": 726, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 118, + "source": 726, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 119, + "source": 726, + "pc": [ + 129 + ] + }, + { + "teal": 120, + "source": 726, + "pc": [ + 130 + ] + }, + { + "teal": 124, + "source": 727, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 125, + "source": 727, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 126, + "source": 727, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 127, + "source": 727, + "pc": [ + 137, + 138 + ] + }, + { + "teal": 128, + "source": 727, + "pc": [ + 139 + ] + }, + { + "teal": 129, + "source": 727, + "pc": [ + 140 + ] + }, + { + "teal": 133, + "source": 728, + "pc": [ + 141, + 142 + ] + }, + { + "teal": 134, + "source": 728, + "pc": [ + 143, + 144 + ] + }, + { + "teal": 135, + "source": 728, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 136, + "source": 728, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 137, + "source": 728, + "pc": [ + 149 + ] + }, + { + "teal": 138, + "source": 728, + "pc": [ + 150 + ] + }, + { + "teal": 142, + "source": 729, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 143, + "source": 729, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 144, + "source": 729, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 145, + "source": 729, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 146, + "source": 729, + "pc": [ + 159 + ] + }, + { + "teal": 147, + "source": 729, + "pc": [ + 160 + ] + }, + { + "teal": 148, + "source": 717, + "pc": [ + 161 + ] + }, + { + "teal": 151, + "source": 716, + "pc": [ + 162 + ] + }, + { + "teal": 152, + "source": 716, + "pc": [ + 163 + ] + }, + { + "teal": 155, + "source": 716, + "pc": [ + 164, + 165, + 166, + 167, + 168, + 169 + ] + }, + { + "teal": 156, + "source": 716, + "pc": [ + 170, + 171, + 172 + ] + }, + { + "teal": 157, + "source": 716, + "pc": [ + 173, + 174, + 175, + 176 + ] + }, + { + "teal": 160, + "source": 716, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 177 + ] + }, + { + "teal": 163, + "source": 716, + "pc": [ + 178, + 179, + 180, + 181, + 182, + 183 + ] + }, + { + "teal": 164, + "source": 716, + "pc": [ + 184, + 185, + 186 + ] + }, + { + "teal": 165, + "source": 716, + "pc": [ + 187, + 188, + 189, + 190 + ] + }, + { + "teal": 168, + "source": 716, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 191 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCiphYmlfcm91dGVfdHhuVHlwZXM6CgkvLyBwOiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChwKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIHBheSB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8ga3I6IGtleXJlZwoJdHhuIEdyb3VwSW5kZXgKCWludCAyCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQga2V5cmVnCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGtyKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGtleXJlZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYXQ6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDMKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCAyIChhdCkgZm9yIHR4blR5cGVzIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWY6IGFmcnoKCXR4biBHcm91cEluZGV4CglpbnQgNAoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFmcnoKCT09CgoJLy8gYXJndW1lbnQgMyAoYWYpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWZyeiB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWM6IGFjZmcKCXR4biBHcm91cEluZGV4CglpbnQgNQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFjZmcKCT09CgoJLy8gYXJndW1lbnQgNCAoYWMpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWNmZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYTogYXBwbAoJdHhuIEdyb3VwSW5kZXgKCWludCA2CgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCgkvLyBhcmd1bWVudCA1IChhKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGFwcGwgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIHQ6IHR4bgoJdHhuIEdyb3VwSW5kZXgKCWludCA3CgktCgoJLy8gZXhlY3V0ZSB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCgljYWxsc3ViIHR4blR5cGVzCglpbnQgMQoJcmV0dXJuCgovLyB0eG5UeXBlcyh0OiBUeG4sIGE6IEFwcENhbGxUeG4sIGFjOiBBc3NldENvbmZpZ1R4biwgYWY6IEFzc2V0RnJlZXplVHhuLCBhdDogQXNzZXRUcmFuc2ZlclR4biwga3I6IEtleVJlZ1R4biwgcDogUGF5VHhuKTogdm9pZAp0eG5UeXBlczoKCXByb3RvIDcgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjYKCS8vIGFzc2VydCh0LnNlbmRlciA9PT0gYS5zZW5kZXIpCglmcmFtZV9kaWcgLTEgLy8gdDogVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBhOiBBcHBDYWxsVHhuCglndHhucyBTZW5kZXIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzI3CgkvLyBhc3NlcnQoYWMuc2VuZGVyID09PSBhZi5zZW5kZXIpCglmcmFtZV9kaWcgLTMgLy8gYWM6IEFzc2V0Q29uZmlnVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtNCAvLyBhZjogQXNzZXRGcmVlemVUeG4KCWd0eG5zIFNlbmRlcgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjgKCS8vIGFzc2VydChhdC5zZW5kZXIgPT09IGtyLnNlbmRlcikKCWZyYW1lX2RpZyAtNSAvLyBhdDogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTYgLy8ga3I6IEtleVJlZ1R4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcyOQoJLy8gYXNzZXJ0KHAuc2VuZGVyID09PSB0LnNlbmRlcikKCWZyYW1lX2RpZyAtNyAvLyBwOiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHQ6IFR4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCiphYmlfcm91dGVfdHhuVHlwZXM6CgkvLyBwOiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChwKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIHBheSB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8ga3I6IGtleXJlZwoJdHhuIEdyb3VwSW5kZXgKCWludCAyCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQga2V5cmVnCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGtyKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGtleXJlZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYXQ6IGF4ZmVyCgl0eG4gR3JvdXBJbmRleAoJaW50IDMKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludCBheGZlcgoJPT0KCgkvLyBhcmd1bWVudCAyIChhdCkgZm9yIHR4blR5cGVzIG11c3QgYmUgYSBheGZlciB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWY6IGFmcnoKCXR4biBHcm91cEluZGV4CglpbnQgNAoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFmcnoKCT09CgoJLy8gYXJndW1lbnQgMyAoYWYpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWZyeiB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYWM6IGFjZmcKCXR4biBHcm91cEluZGV4CglpbnQgNQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IGFjZmcKCT09CgoJLy8gYXJndW1lbnQgNCAoYWMpIGZvciB0eG5UeXBlcyBtdXN0IGJlIGEgYWNmZyB0cmFuc2FjdGlvbgoJYXNzZXJ0CgoJLy8gYTogYXBwbAoJdHhuIEdyb3VwSW5kZXgKCWludCA2CgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCgkvLyBhcmd1bWVudCA1IChhKSBmb3IgdHhuVHlwZXMgbXVzdCBiZSBhIGFwcGwgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIHQ6IHR4bgoJdHhuIEdyb3VwSW5kZXgKCWludCA3CgktCgoJLy8gZXhlY3V0ZSB0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkCgljYWxsc3ViIHR4blR5cGVzCglpbnQgMQoJcmV0dXJuCgovLyB0eG5UeXBlcyh0OiBUeG4sIGE6IEFwcENhbGxUeG4sIGFjOiBBc3NldENvbmZpZ1R4biwgYWY6IEFzc2V0RnJlZXplVHhuLCBhdDogQXNzZXRUcmFuc2ZlclR4biwga3I6IEtleVJlZ1R4biwgcDogUGF5VHhuKTogdm9pZAp0eG5UeXBlczoKCXByb3RvIDcgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjYKCS8vIGFzc2VydCh0LnNlbmRlciA9PT0gYS5zZW5kZXIpCglmcmFtZV9kaWcgLTEgLy8gdDogVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBhOiBBcHBDYWxsVHhuCglndHhucyBTZW5kZXIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzI3CgkvLyBhc3NlcnQoYWMuc2VuZGVyID09PSBhZi5zZW5kZXIpCglmcmFtZV9kaWcgLTMgLy8gYWM6IEFzc2V0Q29uZmlnVHhuCglndHhucyBTZW5kZXIKCWZyYW1lX2RpZyAtNCAvLyBhZjogQXNzZXRGcmVlemVUeG4KCWd0eG5zIFNlbmRlcgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MjgKCS8vIGFzc2VydChhdC5zZW5kZXIgPT09IGtyLnNlbmRlcikKCWZyYW1lX2RpZyAtNSAvLyBhdDogQXNzZXRUcmFuc2ZlclR4bgoJZ3R4bnMgU2VuZGVyCglmcmFtZV9kaWcgLTYgLy8ga3I6IEtleVJlZ1R4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjcyOQoJLy8gYXNzZXJ0KHAuc2VuZGVyID09PSB0LnNlbmRlcikKCWZyYW1lX2RpZyAtNyAvLyBwOiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIHQ6IFR4bgoJZ3R4bnMgU2VuZGVyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eG5UeXBlcyh0eG4sYXBwbCxhY2ZnLGFmcnosYXhmZXIsa2V5cmVnLHBheSl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestTypedConst.approval.teal b/tests/contracts/artifacts/ABITestTypedConst.approval.teal index 44f5c499e..0a78f3fe6 100644 --- a/tests/contracts/artifacts/ABITestTypedConst.approval.teal +++ b/tests/contracts/artifacts/ABITestTypedConst.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestTypedConst.arc32.json b/tests/contracts/artifacts/ABITestTypedConst.arc32.json index 72c814555..a54ccea5d 100644 --- a/tests/contracts/artifacts/ABITestTypedConst.arc32.json +++ b/tests/contracts/artifacts/ABITestTypedConst.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhQb29scygpdm9pZAoqYWJpX3JvdXRlX21heFBvb2xzOgoJLy8gZXhlY3V0ZSBtYXhQb29scygpdm9pZAoJY2FsbHN1YiBtYXhQb29scwoJaW50IDEKCXJldHVybgoKLy8gbWF4UG9vbHMoKTogdm9pZAptYXhQb29sczoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyOTEKCS8vIHVpbnQxNlZhcjogdWludDE2ID0gMjU2CglpbnQgMjU2CglmcmFtZV9idXJ5IDAgLy8gdWludDE2VmFyOiB1aW50MTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI5MgoJLy8gYXNzZXJ0KHVpbnQxNlZhciA9PT0gVUlOVDE2X0NPTlNUKQoJaW50IDI1NiAvLyB1aW50MTZWYXI6IHVpbnQxNgoJaW50IDI1NgoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4UG9vbHMoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX21heFBvb2xzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhQb29scygpdm9pZAoqYWJpX3JvdXRlX21heFBvb2xzOgoJLy8gZXhlY3V0ZSBtYXhQb29scygpdm9pZAoJY2FsbHN1YiBtYXhQb29scwoJaW50IDEKCXJldHVybgoKLy8gbWF4UG9vbHMoKTogdm9pZAptYXhQb29sczoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyOTEKCS8vIHVpbnQxNlZhcjogdWludDE2ID0gMjU2CglpbnQgMjU2CglmcmFtZV9idXJ5IDAgLy8gdWludDE2VmFyOiB1aW50MTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI5MgoJLy8gYXNzZXJ0KHVpbnQxNlZhciA9PT0gVUlOVDE2X0NPTlNUKQoJaW50IDI1NiAvLyB1aW50MTZWYXI6IHVpbnQxNgoJaW50IDI1NgoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4UG9vbHMoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX21heFBvb2xzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestTypedConst.arc56_draft.json b/tests/contracts/artifacts/ABITestTypedConst.arc56_draft.json index 58836bc2c..bc6326a2e 100644 --- a/tests/contracts/artifacts/ABITestTypedConst.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestTypedConst.arc56_draft.json @@ -60,289 +60,292 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1289, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 1289, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 1289, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 1289, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 1289, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 1289, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 1289, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 1289, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 1289, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 1290, - "pc": [ - 42, - 43, - 44 - ] - }, - { - "teal": 29, - "source": 1290, - "pc": [ - 45 - ] - }, - { - "teal": 30, - "source": 1290, - "pc": [ - 46 - ] - }, - { - "teal": 34, - "source": 1290, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 37, - "source": 1290, - "pc": [ - 50, - 51 - ] - }, - { - "teal": 41, - "source": 1291, - "pc": [ - 52 - ] - }, - { - "teal": 42, - "source": 1291, - "pc": [ - 53, - 54 - ] - }, - { - "teal": 46, - "source": 1292, - "pc": [ - 55 - ] - }, - { - "teal": 47, - "source": 1292, - "pc": [ - 56 - ] - }, - { - "teal": 48, - "source": 1292, - "pc": [ - 57 - ] - }, - { - "teal": 49, - "source": 1292, - "pc": [ - 58 - ] - }, - { - "teal": 50, - "source": 1290, - "pc": [ - 59 - ] - }, - { - "teal": 53, - "source": 1289, - "pc": [ - 60 - ] - }, - { - "teal": 54, - "source": 1289, - "pc": [ - 61 - ] - }, - { - "teal": 57, - "source": 1289, - "pc": [ - 62, - 63, - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 58, - "source": 1289, - "pc": [ - 68, - 69, - 70 - ] - }, - { - "teal": 59, - "source": 1289, - "pc": [ - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 62, - "source": 1289, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 75 - ] - }, - { - "teal": 65, - "source": 1289, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 66, - "source": 1289, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 67, - "source": 1289, - "pc": [ - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 70, - "source": 1289, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 89 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1289, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 1289, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 1289, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 1289, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 1289, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 1289, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 1289, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 1289, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 1289, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 1290, + "pc": [ + 42, + 43, + 44 + ] + }, + { + "teal": 29, + "source": 1290, + "pc": [ + 45 + ] + }, + { + "teal": 30, + "source": 1290, + "pc": [ + 46 + ] + }, + { + "teal": 34, + "source": 1290, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 37, + "source": 1290, + "pc": [ + 50, + 51 + ] + }, + { + "teal": 41, + "source": 1291, + "pc": [ + 52 + ] + }, + { + "teal": 42, + "source": 1291, + "pc": [ + 53, + 54 + ] + }, + { + "teal": 46, + "source": 1292, + "pc": [ + 55 + ] + }, + { + "teal": 47, + "source": 1292, + "pc": [ + 56 + ] + }, + { + "teal": 48, + "source": 1292, + "pc": [ + 57 + ] + }, + { + "teal": 49, + "source": 1292, + "pc": [ + 58 + ] + }, + { + "teal": 50, + "source": 1290, + "pc": [ + 59 + ] + }, + { + "teal": 53, + "source": 1289, + "pc": [ + 60 + ] + }, + { + "teal": 54, + "source": 1289, + "pc": [ + 61 + ] + }, + { + "teal": 57, + "source": 1289, + "pc": [ + 62, + 63, + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 58, + "source": 1289, + "pc": [ + 68, + 69, + 70 + ] + }, + { + "teal": 59, + "source": 1289, + "pc": [ + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 62, + "source": 1289, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 75 + ] + }, + { + "teal": 65, + "source": 1289, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 66, + "source": 1289, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 67, + "source": 1289, + "pc": [ + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 70, + "source": 1289, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 89 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhQb29scygpdm9pZAoqYWJpX3JvdXRlX21heFBvb2xzOgoJLy8gZXhlY3V0ZSBtYXhQb29scygpdm9pZAoJY2FsbHN1YiBtYXhQb29scwoJaW50IDEKCXJldHVybgoKLy8gbWF4UG9vbHMoKTogdm9pZAptYXhQb29sczoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyOTEKCS8vIHVpbnQxNlZhcjogdWludDE2ID0gMjU2CglpbnQgMjU2CglmcmFtZV9idXJ5IDAgLy8gdWludDE2VmFyOiB1aW50MTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI5MgoJLy8gYXNzZXJ0KHVpbnQxNlZhciA9PT0gVUlOVDE2X0NPTlNUKQoJaW50IDI1NiAvLyB1aW50MTZWYXI6IHVpbnQxNgoJaW50IDI1NgoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4UG9vbHMoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX21heFBvb2xzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBtYXhQb29scygpdm9pZAoqYWJpX3JvdXRlX21heFBvb2xzOgoJLy8gZXhlY3V0ZSBtYXhQb29scygpdm9pZAoJY2FsbHN1YiBtYXhQb29scwoJaW50IDEKCXJldHVybgoKLy8gbWF4UG9vbHMoKTogdm9pZAptYXhQb29sczoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyOTEKCS8vIHVpbnQxNlZhcjogdWludDE2ID0gMjU2CglpbnQgMjU2CglmcmFtZV9idXJ5IDAgLy8gdWludDE2VmFyOiB1aW50MTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI5MgoJLy8gYXNzZXJ0KHVpbnQxNlZhciA9PT0gVUlOVDE2X0NPTlNUKQoJaW50IDI1NiAvLyB1aW50MTZWYXI6IHVpbnQxNgoJaW50IDI1NgoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAibWF4UG9vbHMoKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX21heFBvb2xzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestTypedVarFromStorage.approval.teal b/tests/contracts/artifacts/ABITestTypedVarFromStorage.approval.teal index 78197d759..86bc8cf6a 100644 --- a/tests/contracts/artifacts/ABITestTypedVarFromStorage.approval.teal +++ b/tests/contracts/artifacts/ABITestTypedVarFromStorage.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc32.json b/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc32.json index f7e9fd577..04542ff42 100644 --- a/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc32.json +++ b/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXQoqYWJpX3JvdXRlX3R5cGVkVmFyRnJvbVN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGtleTogdWludDMyCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoa2V5KSBmb3IgdHlwZWRWYXJGcm9tU3RvcmFnZSBtdXN0IGJlIGEgdWludDMyCglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHR5cGVkVmFyRnJvbVN0b3JhZ2UodWludDMyKWJ5dGVbMzJdCgljYWxsc3ViIHR5cGVkVmFyRnJvbVN0b3JhZ2UKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKGtleTogdWludDwzMj4pOiBieXRlczMyCnR5cGVkVmFyRnJvbVN0b3JhZ2U6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzAwCgkvLyB2YWx1ZTogYnl0ZXMzMiA9IHRoaXMuYm94TWFwVGVzdChrZXkpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8ga2V5OiB1aW50PDMyPgoJaXRvYgoJZXh0cmFjdCA0IDQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsdWUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwMgoJLy8gcmV0dXJuIHZhbHVlOwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3ZhbHVlCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcFRlc3Qoa2V5KS52YWx1ZQoJYXNzZXJ0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZWRWYXJGcm9tU3RvcmFnZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXQoqYWJpX3JvdXRlX3R5cGVkVmFyRnJvbVN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGtleTogdWludDMyCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoa2V5KSBmb3IgdHlwZWRWYXJGcm9tU3RvcmFnZSBtdXN0IGJlIGEgdWludDMyCglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHR5cGVkVmFyRnJvbVN0b3JhZ2UodWludDMyKWJ5dGVbMzJdCgljYWxsc3ViIHR5cGVkVmFyRnJvbVN0b3JhZ2UKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKGtleTogdWludDwzMj4pOiBieXRlczMyCnR5cGVkVmFyRnJvbVN0b3JhZ2U6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzAwCgkvLyB2YWx1ZTogYnl0ZXMzMiA9IHRoaXMuYm94TWFwVGVzdChrZXkpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8ga2V5OiB1aW50PDMyPgoJaXRvYgoJZXh0cmFjdCA0IDQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsdWUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwMgoJLy8gcmV0dXJuIHZhbHVlOwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3ZhbHVlCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcFRlc3Qoa2V5KS52YWx1ZQoJYXNzZXJ0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZWRWYXJGcm9tU3RvcmFnZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc56_draft.json b/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc56_draft.json index e24498ac9..59ef5befa 100644 --- a/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestTypedVarFromStorage.arc56_draft.json @@ -70,386 +70,389 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1296, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1296, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1296, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1296, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1296, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1296, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1296, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1296, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1296, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1299, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1299, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1299, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1299, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1299, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 1299, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 1299, - "errorMessage": "argument 0 (key) for typedVarFromStorage must be a uint32", - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 1299, - "pc": [ - 55 - ] - }, - { - "teal": 42, - "source": 1299, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 43, - "source": 1299, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1299, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1299, - "pc": [ - 61 - ] - }, - { - "teal": 46, - "source": 1299, - "pc": [ - 62 - ] - }, - { - "teal": 50, - "source": 1299, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 53, - "source": 1299, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 57, - "source": 1300, - "pc": [ - 68, - 69 - ] - }, - { - "teal": 58, - "source": 1300, - "pc": [ - 70 - ] - }, - { - "teal": 59, - "source": 1300, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 60, - "source": 1300, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 64, - "source": 1300, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 65, - "source": 1300, - "pc": [ - 78 - ] - }, - { - "teal": 68, - "source": 1300, - "errorMessage": "box value does not exist: this.boxMapTest(key).value", - "pc": [ - 79 - ] - }, - { - "teal": 71, - "source": 1299, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 72, - "source": 1299, - "pc": [ - 82 - ] - }, - { - "teal": 75, - "source": 1296, - "pc": [ - 83 - ] - }, - { - "teal": 76, - "source": 1296, - "pc": [ - 84 - ] - }, - { - "teal": 79, - "source": 1296, - "pc": [ - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 80, - "source": 1296, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 81, - "source": 1296, - "pc": [ - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 84, - "source": 1296, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 98 - ] - }, - { - "teal": 87, - "source": 1296, - "pc": [ - 99, - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 88, - "source": 1296, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 89, - "source": 1296, - "pc": [ - 108, - 109, - 110, - 111 - ] - }, - { - "teal": 92, - "source": 1296, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 112 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1296, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1296, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1296, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1296, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1296, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1296, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1296, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1296, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1296, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1299, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1299, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1299, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1299, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1299, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 1299, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 1299, + "errorMessage": "argument 0 (key) for typedVarFromStorage must be a uint32", + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 1299, + "pc": [ + 55 + ] + }, + { + "teal": 42, + "source": 1299, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 43, + "source": 1299, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1299, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1299, + "pc": [ + 61 + ] + }, + { + "teal": 46, + "source": 1299, + "pc": [ + 62 + ] + }, + { + "teal": 50, + "source": 1299, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 53, + "source": 1299, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 57, + "source": 1300, + "pc": [ + 68, + 69 + ] + }, + { + "teal": 58, + "source": 1300, + "pc": [ + 70 + ] + }, + { + "teal": 59, + "source": 1300, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 60, + "source": 1300, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 64, + "source": 1300, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 65, + "source": 1300, + "pc": [ + 78 + ] + }, + { + "teal": 68, + "source": 1300, + "errorMessage": "box value does not exist: this.boxMapTest(key).value", + "pc": [ + 79 + ] + }, + { + "teal": 71, + "source": 1299, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 72, + "source": 1299, + "pc": [ + 82 + ] + }, + { + "teal": 75, + "source": 1296, + "pc": [ + 83 + ] + }, + { + "teal": 76, + "source": 1296, + "pc": [ + 84 + ] + }, + { + "teal": 79, + "source": 1296, + "pc": [ + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 80, + "source": 1296, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 81, + "source": 1296, + "pc": [ + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 84, + "source": 1296, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 98 + ] + }, + { + "teal": 87, + "source": 1296, + "pc": [ + 99, + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 88, + "source": 1296, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 89, + "source": 1296, + "pc": [ + 108, + 109, + 110, + 111 + ] + }, + { + "teal": 92, + "source": 1296, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 112 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXQoqYWJpX3JvdXRlX3R5cGVkVmFyRnJvbVN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGtleTogdWludDMyCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoa2V5KSBmb3IgdHlwZWRWYXJGcm9tU3RvcmFnZSBtdXN0IGJlIGEgdWludDMyCglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHR5cGVkVmFyRnJvbVN0b3JhZ2UodWludDMyKWJ5dGVbMzJdCgljYWxsc3ViIHR5cGVkVmFyRnJvbVN0b3JhZ2UKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKGtleTogdWludDwzMj4pOiBieXRlczMyCnR5cGVkVmFyRnJvbVN0b3JhZ2U6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzAwCgkvLyB2YWx1ZTogYnl0ZXMzMiA9IHRoaXMuYm94TWFwVGVzdChrZXkpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8ga2V5OiB1aW50PDMyPgoJaXRvYgoJZXh0cmFjdCA0IDQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsdWUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwMgoJLy8gcmV0dXJuIHZhbHVlOwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3ZhbHVlCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcFRlc3Qoa2V5KS52YWx1ZQoJYXNzZXJ0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZWRWYXJGcm9tU3RvcmFnZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXQoqYWJpX3JvdXRlX3R5cGVkVmFyRnJvbVN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGtleTogdWludDMyCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDQKCT09CgoJLy8gYXJndW1lbnQgMCAoa2V5KSBmb3IgdHlwZWRWYXJGcm9tU3RvcmFnZSBtdXN0IGJlIGEgdWludDMyCglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHR5cGVkVmFyRnJvbVN0b3JhZ2UodWludDMyKWJ5dGVbMzJdCgljYWxsc3ViIHR5cGVkVmFyRnJvbVN0b3JhZ2UKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB0eXBlZFZhckZyb21TdG9yYWdlKGtleTogdWludDwzMj4pOiBieXRlczMyCnR5cGVkVmFyRnJvbVN0b3JhZ2U6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMzAwCgkvLyB2YWx1ZTogYnl0ZXMzMiA9IHRoaXMuYm94TWFwVGVzdChrZXkpLnZhbHVlCglmcmFtZV9kaWcgLTEgLy8ga2V5OiB1aW50PDMyPgoJaXRvYgoJZXh0cmFjdCA0IDQKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdmFsdWUKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTMwMgoJLy8gcmV0dXJuIHZhbHVlOwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3ZhbHVlCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcFRlc3Qoa2V5KS52YWx1ZQoJYXNzZXJ0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0eXBlZFZhckZyb21TdG9yYWdlKHVpbnQzMilieXRlWzMyXSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdHlwZWRWYXJGcm9tU3RvcmFnZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUint64Casting.approval.teal b/tests/contracts/artifacts/ABITestUint64Casting.approval.teal index edd0c6223..08ff713d4 100644 --- a/tests/contracts/artifacts/ABITestUint64Casting.approval.teal +++ b/tests/contracts/artifacts/ABITestUint64Casting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUint64Casting.arc32.json b/tests/contracts/artifacts/ABITestUint64Casting.arc32.json index b2ec0e6fa..863b31d5a 100644 --- a/tests/contracts/artifacts/ABITestUint64Casting.arc32.json +++ b/tests/contracts/artifacts/ABITestUint64Casting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CiphYmlfcm91dGVfdWludDY0Q2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdWludDY0Q2FzdGluZyBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CgljYWxsc3ViIHVpbnQ2NENhc3RpbmcKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50NjRDYXN0aW5nKGE6IHVpbnQyNTYpOiB1aW50NjQKdWludDY0Q2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTk1CgkvLyByZXR1cm4gYSBhcyB1aW50NjQ7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyBhIGFzIHVpbnQ2NCBvdmVyZmxvd2VkIDY0IGJpdHMKCWFzc2VydAoJZXh0cmFjdCAyNCA4CglidG9pCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91aW50NjRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CiphYmlfcm91dGVfdWludDY0Q2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdWludDY0Q2FzdGluZyBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CgljYWxsc3ViIHVpbnQ2NENhc3RpbmcKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50NjRDYXN0aW5nKGE6IHVpbnQyNTYpOiB1aW50NjQKdWludDY0Q2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTk1CgkvLyByZXR1cm4gYSBhcyB1aW50NjQ7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyBhIGFzIHVpbnQ2NCBvdmVyZmxvd2VkIDY0IGJpdHMKCWFzc2VydAoJZXh0cmFjdCAyNCA4CglidG9pCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91aW50NjRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUint64Casting.arc56_draft.json b/tests/contracts/artifacts/ABITestUint64Casting.arc56_draft.json index aafa600c0..c852f8740 100644 --- a/tests/contracts/artifacts/ABITestUint64Casting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUint64Casting.arc56_draft.json @@ -65,376 +65,379 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1193, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1193, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1193, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1193, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1193, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1193, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1193, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1193, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1193, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1194, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1194, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1194, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1194, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1194, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 35, - "source": 1194, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 1194, - "errorMessage": "argument 0 (a) for uint64Casting must be a uint256", - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 1194, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 1194, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 1194, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1194, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1194, - "pc": [ - 61 - ] - }, - { - "teal": 46, - "source": 1194, - "pc": [ - 62 - ] - }, - { - "teal": 50, - "source": 1194, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 54, - "source": 1195, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 55, - "source": 1195, - "pc": [ - 68 - ] - }, - { - "teal": 56, - "source": 1195, - "pc": [ - 69 - ] - }, - { - "teal": 57, - "source": 1195, - "pc": [ - 70, - 71 - ] - }, - { - "teal": 58, - "source": 1195, - "pc": [ - 72 - ] - }, - { - "teal": 61, - "source": 1195, - "errorMessage": "a as uint64 overflowed 64 bits", - "pc": [ - 73 - ] - }, - { - "teal": 62, - "source": 1195, - "pc": [ - 74, - 75, - 76 - ] - }, - { - "teal": 63, - "source": 1195, - "pc": [ - 77 - ] - }, - { - "teal": 64, - "source": 1194, - "pc": [ - 78 - ] - }, - { - "teal": 67, - "source": 1193, - "pc": [ - 79 - ] - }, - { - "teal": 68, - "source": 1193, - "pc": [ - 80 - ] - }, - { - "teal": 71, - "source": 1193, - "pc": [ - 81, - 82, - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 72, - "source": 1193, - "pc": [ - 87, - 88, - 89 - ] - }, - { - "teal": 73, - "source": 1193, - "pc": [ - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 76, - "source": 1193, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 94 - ] - }, - { - "teal": 79, - "source": 1193, - "pc": [ - 95, - 96, - 97, - 98, - 99, - 100 - ] - }, - { - "teal": 80, - "source": 1193, - "pc": [ - 101, - 102, - 103 - ] - }, - { - "teal": 81, - "source": 1193, - "pc": [ - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 84, - "source": 1193, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 108 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1193, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1193, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1193, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1193, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1193, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1193, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1193, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1193, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1193, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1194, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1194, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1194, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1194, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1194, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 35, + "source": 1194, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 1194, + "errorMessage": "argument 0 (a) for uint64Casting must be a uint256", + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 1194, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 1194, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 1194, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1194, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1194, + "pc": [ + 61 + ] + }, + { + "teal": 46, + "source": 1194, + "pc": [ + 62 + ] + }, + { + "teal": 50, + "source": 1194, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 54, + "source": 1195, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 55, + "source": 1195, + "pc": [ + 68 + ] + }, + { + "teal": 56, + "source": 1195, + "pc": [ + 69 + ] + }, + { + "teal": 57, + "source": 1195, + "pc": [ + 70, + 71 + ] + }, + { + "teal": 58, + "source": 1195, + "pc": [ + 72 + ] + }, + { + "teal": 61, + "source": 1195, + "errorMessage": "a as uint64 overflowed 64 bits", + "pc": [ + 73 + ] + }, + { + "teal": 62, + "source": 1195, + "pc": [ + 74, + 75, + 76 + ] + }, + { + "teal": 63, + "source": 1195, + "pc": [ + 77 + ] + }, + { + "teal": 64, + "source": 1194, + "pc": [ + 78 + ] + }, + { + "teal": 67, + "source": 1193, + "pc": [ + 79 + ] + }, + { + "teal": 68, + "source": 1193, + "pc": [ + 80 + ] + }, + { + "teal": 71, + "source": 1193, + "pc": [ + 81, + 82, + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 72, + "source": 1193, + "pc": [ + 87, + 88, + 89 + ] + }, + { + "teal": 73, + "source": 1193, + "pc": [ + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 76, + "source": 1193, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 94 + ] + }, + { + "teal": 79, + "source": 1193, + "pc": [ + 95, + 96, + 97, + 98, + 99, + 100 + ] + }, + { + "teal": 80, + "source": 1193, + "pc": [ + 101, + 102, + 103 + ] + }, + { + "teal": 81, + "source": 1193, + "pc": [ + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 84, + "source": 1193, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 108 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CiphYmlfcm91dGVfdWludDY0Q2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdWludDY0Q2FzdGluZyBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CgljYWxsc3ViIHVpbnQ2NENhc3RpbmcKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50NjRDYXN0aW5nKGE6IHVpbnQyNTYpOiB1aW50NjQKdWludDY0Q2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTk1CgkvLyByZXR1cm4gYSBhcyB1aW50NjQ7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyBhIGFzIHVpbnQ2NCBvdmVyZmxvd2VkIDY0IGJpdHMKCWFzc2VydAoJZXh0cmFjdCAyNCA4CglidG9pCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91aW50NjRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CiphYmlfcm91dGVfdWludDY0Q2FzdGluZzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdWludDY0Q2FzdGluZyBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0CgljYWxsc3ViIHVpbnQ2NENhc3RpbmcKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50NjRDYXN0aW5nKGE6IHVpbnQyNTYpOiB1aW50NjQKdWludDY0Q2FzdGluZzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTk1CgkvLyByZXR1cm4gYSBhcyB1aW50NjQ7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyBhIGFzIHVpbnQ2NCBvdmVyZmxvd2VkIDY0IGJpdHMKCWFzc2VydAoJZXh0cmFjdCAyNCA4CglidG9pCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1aW50NjRDYXN0aW5nKHVpbnQyNTYpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91aW50NjRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUintCasting.approval.teal b/tests/contracts/artifacts/ABITestUintCasting.approval.teal index 28a7e9709..28242dd19 100644 --- a/tests/contracts/artifacts/ABITestUintCasting.approval.teal +++ b/tests/contracts/artifacts/ABITestUintCasting.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUintCasting.arc32.json b/tests/contracts/artifacts/ABITestUintCasting.arc32.json index 47495bef3..ad59fffc9 100644 --- a/tests/contracts/artifacts/ABITestUintCasting.arc32.json +++ b/tests/contracts/artifacts/ABITestUintCasting.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CiphYmlfcm91dGVfdWludENhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHVpbnRDYXN0aW5nIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZXhlY3V0ZSB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CgljYWxsc3ViIHVpbnRDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50Q2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVpbnRDYXN0aW5nKGE6IHVpbnQ8OD4pOiB1aW50MjU2CnVpbnRDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODkKCS8vIHJldHVybiA8dWludDI1Nj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWl0b2IKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnRDYXN0aW5nKHVpbnQ4KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VpbnRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CiphYmlfcm91dGVfdWludENhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHVpbnRDYXN0aW5nIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZXhlY3V0ZSB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CgljYWxsc3ViIHVpbnRDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50Q2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVpbnRDYXN0aW5nKGE6IHVpbnQ8OD4pOiB1aW50MjU2CnVpbnRDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODkKCS8vIHJldHVybiA8dWludDI1Nj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWl0b2IKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnRDYXN0aW5nKHVpbnQ4KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VpbnRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUintCasting.arc56_draft.json b/tests/contracts/artifacts/ABITestUintCasting.arc56_draft.json index 5ae1cd082..242ebdf11 100644 --- a/tests/contracts/artifacts/ABITestUintCasting.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUintCasting.arc56_draft.json @@ -65,464 +65,467 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1187, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1187, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1187, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1187, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1187, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1187, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1187, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1187, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1187, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1188, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1188, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1188, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1188, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1188, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1188, - "pc": [ - 52 - ] - }, - { - "teal": 38, - "source": 1188, - "errorMessage": "argument 0 (a) for uintCasting must be a uint8", - "pc": [ - 53 - ] - }, - { - "teal": 39, - "source": 1188, - "pc": [ - 54 - ] - }, - { - "teal": 42, - "source": 1188, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 43, - "source": 1188, - "pc": [ - 58 - ] - }, - { - "teal": 44, - "source": 1188, - "pc": [ - 59 - ] - }, - { - "teal": 45, - "source": 1188, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 46, - "source": 1188, - "pc": [ - 63 - ] - }, - { - "teal": 49, - "source": 1188, - "errorMessage": "uintCasting return value overflowed 256 bits", - "pc": [ - 64 - ] - }, - { - "teal": 50, - "source": 1188, - "pc": [ - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 51, - "source": 1188, - "pc": [ - 99 - ] - }, - { - "teal": 52, - "source": 1188, - "pc": [ - 100 - ] - }, - { - "teal": 53, - "source": 1188, - "pc": [ - 101 - ] - }, - { - "teal": 54, - "source": 1188, - "pc": [ - 102 - ] - }, - { - "teal": 55, - "source": 1188, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 56, - "source": 1188, - "pc": [ - 105 - ] - }, - { - "teal": 57, - "source": 1188, - "pc": [ - 106 - ] - }, - { - "teal": 58, - "source": 1188, - "pc": [ - 107 - ] - }, - { - "teal": 59, - "source": 1188, - "pc": [ - 108 - ] - }, - { - "teal": 60, - "source": 1188, - "pc": [ - 109 - ] - }, - { - "teal": 61, - "source": 1188, - "pc": [ - 110 - ] - }, - { - "teal": 62, - "source": 1188, - "pc": [ - 111 - ] - }, - { - "teal": 66, - "source": 1188, - "pc": [ - 112, - 113, - 114 - ] - }, - { - "teal": 70, - "source": 1189, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 71, - "source": 1189, - "pc": [ - 117 - ] - }, - { - "teal": 72, - "source": 1188, - "pc": [ - 118 - ] - }, - { - "teal": 75, - "source": 1187, - "pc": [ - 119 - ] - }, - { - "teal": 76, - "source": 1187, - "pc": [ - 120 - ] - }, - { - "teal": 79, - "source": 1187, - "pc": [ - 121, - 122, - 123, - 124, - 125, - 126 - ] - }, - { - "teal": 80, - "source": 1187, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 81, - "source": 1187, - "pc": [ - 130, - 131, - 132, - 133 - ] - }, - { - "teal": 84, - "source": 1187, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 134 - ] - }, - { - "teal": 87, - "source": 1187, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140 - ] - }, - { - "teal": 88, - "source": 1187, - "pc": [ - 141, - 142, - 143 - ] - }, - { - "teal": 89, - "source": 1187, - "pc": [ - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 92, - "source": 1187, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 148 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1187, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1187, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1187, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1187, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1187, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1187, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1187, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1187, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1187, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1188, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1188, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1188, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1188, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1188, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1188, + "pc": [ + 52 + ] + }, + { + "teal": 38, + "source": 1188, + "errorMessage": "argument 0 (a) for uintCasting must be a uint8", + "pc": [ + 53 + ] + }, + { + "teal": 39, + "source": 1188, + "pc": [ + 54 + ] + }, + { + "teal": 42, + "source": 1188, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 43, + "source": 1188, + "pc": [ + 58 + ] + }, + { + "teal": 44, + "source": 1188, + "pc": [ + 59 + ] + }, + { + "teal": 45, + "source": 1188, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 46, + "source": 1188, + "pc": [ + 63 + ] + }, + { + "teal": 49, + "source": 1188, + "errorMessage": "uintCasting return value overflowed 256 bits", + "pc": [ + 64 + ] + }, + { + "teal": 50, + "source": 1188, + "pc": [ + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 51, + "source": 1188, + "pc": [ + 99 + ] + }, + { + "teal": 52, + "source": 1188, + "pc": [ + 100 + ] + }, + { + "teal": 53, + "source": 1188, + "pc": [ + 101 + ] + }, + { + "teal": 54, + "source": 1188, + "pc": [ + 102 + ] + }, + { + "teal": 55, + "source": 1188, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 56, + "source": 1188, + "pc": [ + 105 + ] + }, + { + "teal": 57, + "source": 1188, + "pc": [ + 106 + ] + }, + { + "teal": 58, + "source": 1188, + "pc": [ + 107 + ] + }, + { + "teal": 59, + "source": 1188, + "pc": [ + 108 + ] + }, + { + "teal": 60, + "source": 1188, + "pc": [ + 109 + ] + }, + { + "teal": 61, + "source": 1188, + "pc": [ + 110 + ] + }, + { + "teal": 62, + "source": 1188, + "pc": [ + 111 + ] + }, + { + "teal": 66, + "source": 1188, + "pc": [ + 112, + 113, + 114 + ] + }, + { + "teal": 70, + "source": 1189, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 71, + "source": 1189, + "pc": [ + 117 + ] + }, + { + "teal": 72, + "source": 1188, + "pc": [ + 118 + ] + }, + { + "teal": 75, + "source": 1187, + "pc": [ + 119 + ] + }, + { + "teal": 76, + "source": 1187, + "pc": [ + 120 + ] + }, + { + "teal": 79, + "source": 1187, + "pc": [ + 121, + 122, + 123, + 124, + 125, + 126 + ] + }, + { + "teal": 80, + "source": 1187, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 81, + "source": 1187, + "pc": [ + 130, + 131, + 132, + 133 + ] + }, + { + "teal": 84, + "source": 1187, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 134 + ] + }, + { + "teal": 87, + "source": 1187, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140 + ] + }, + { + "teal": 88, + "source": 1187, + "pc": [ + 141, + 142, + 143 + ] + }, + { + "teal": 89, + "source": 1187, + "pc": [ + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 92, + "source": 1187, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 148 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CiphYmlfcm91dGVfdWludENhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHVpbnRDYXN0aW5nIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZXhlY3V0ZSB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CgljYWxsc3ViIHVpbnRDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50Q2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVpbnRDYXN0aW5nKGE6IHVpbnQ8OD4pOiB1aW50MjU2CnVpbnRDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODkKCS8vIHJldHVybiA8dWludDI1Nj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWl0b2IKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnRDYXN0aW5nKHVpbnQ4KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VpbnRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CiphYmlfcm91dGVfdWludENhc3Rpbmc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHVpbnRDYXN0aW5nIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gZXhlY3V0ZSB1aW50Q2FzdGluZyh1aW50OCl1aW50MjU2CgljYWxsc3ViIHVpbnRDYXN0aW5nCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50Q2FzdGluZyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVpbnRDYXN0aW5nKGE6IHVpbnQ8OD4pOiB1aW50MjU2CnVpbnRDYXN0aW5nOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExODkKCS8vIHJldHVybiA8dWludDI1Nj5hOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWl0b2IKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnRDYXN0aW5nKHVpbnQ4KXVpbnQyNTYiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VpbnRDYXN0aW5nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUintNComparison.approval.teal b/tests/contracts/artifacts/ABITestUintNComparison.approval.teal index 381b4f669..65f13ace6 100644 --- a/tests/contracts/artifacts/ABITestUintNComparison.approval.teal +++ b/tests/contracts/artifacts/ABITestUintNComparison.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUintNComparison.arc32.json b/tests/contracts/artifacts/ABITestUintNComparison.arc32.json index ffa6a6413..d86ecb536 100644 --- a/tests/contracts/artifacts/ABITestUintNComparison.arc32.json +++ b/tests/contracts/artifacts/ABITestUintNComparison.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50TkNvbXBhcmlzb24odWludDI1Nix1aW50MjU2KWJvb2wKKmFiaV9yb3V0ZV91aW50TkNvbXBhcmlzb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHk6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeSkgZm9yIHVpbnROQ29tcGFyaXNvbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8geDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdWludE5Db21wYXJpc29uIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbAoJY2FsbHN1YiB1aW50TkNvbXBhcmlzb24KCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5Db21wYXJpc29uKHg6IHVpbnQyNTYsIHk6IHVpbnQyNTYpOiBib29sZWFuCnVpbnROQ29tcGFyaXNvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjU5CgkvLyByZXR1cm4geCA+PSB5OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50MjU2CgliPj0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdWludE5Db21wYXJpc29uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50TkNvbXBhcmlzb24odWludDI1Nix1aW50MjU2KWJvb2wKKmFiaV9yb3V0ZV91aW50TkNvbXBhcmlzb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHk6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeSkgZm9yIHVpbnROQ29tcGFyaXNvbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8geDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdWludE5Db21wYXJpc29uIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbAoJY2FsbHN1YiB1aW50TkNvbXBhcmlzb24KCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5Db21wYXJpc29uKHg6IHVpbnQyNTYsIHk6IHVpbnQyNTYpOiBib29sZWFuCnVpbnROQ29tcGFyaXNvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjU5CgkvLyByZXR1cm4geCA+PSB5OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50MjU2CgliPj0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdWludE5Db21wYXJpc29uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUintNComparison.arc56_draft.json b/tests/contracts/artifacts/ABITestUintNComparison.arc56_draft.json index 8920e6f94..2eee79bec 100644 --- a/tests/contracts/artifacts/ABITestUintNComparison.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUintNComparison.arc56_draft.json @@ -69,408 +69,411 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1257, - "pc": [ - 0, - 1, - 2, - 3, - 4 - ] - }, - { - "teal": 13, - "source": 1257, - "pc": [ - 5, - 6 - ] - }, - { - "teal": 14, - "source": 1257, - "pc": [ - 7 - ] - }, - { - "teal": 15, - "source": 1257, - "pc": [ - 8, - 9 - ] - }, - { - "teal": 16, - "source": 1257, - "pc": [ - 10 - ] - }, - { - "teal": 17, - "source": 1257, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 18, - "source": 1257, - "pc": [ - 13 - ] - }, - { - "teal": 19, - "source": 1257, - "pc": [ - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39 - ] - }, - { - "teal": 23, - "source": 1257, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 40 - ] - }, - { - "teal": 28, - "source": 1258, - "pc": [ - 41, - 42, - 43, - 44, - 45, - 46 - ] - }, - { - "teal": 31, - "source": 1258, - "pc": [ - 47, - 48, - 49 - ] - }, - { - "teal": 32, - "source": 1258, - "pc": [ - 50 - ] - }, - { - "teal": 33, - "source": 1258, - "pc": [ - 51 - ] - }, - { - "teal": 34, - "source": 1258, - "pc": [ - 52 - ] - }, - { - "teal": 35, - "source": 1258, - "pc": [ - 53 - ] - }, - { - "teal": 38, - "source": 1258, - "errorMessage": "argument 0 (y) for uintNComparison must be a uint256", - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 1258, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 42, - "source": 1258, - "pc": [ - 58 - ] - }, - { - "teal": 43, - "source": 1258, - "pc": [ - 59 - ] - }, - { - "teal": 44, - "source": 1258, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 1258, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 1258, - "errorMessage": "argument 1 (x) for uintNComparison must be a uint256", - "pc": [ - 62 - ] - }, - { - "teal": 51, - "source": 1258, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 52, - "source": 1258, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 53, - "source": 1258, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 54, - "source": 1258, - "pc": [ - 71, - 72 - ] - }, - { - "teal": 55, - "source": 1258, - "pc": [ - 73 - ] - }, - { - "teal": 56, - "source": 1258, - "pc": [ - 74 - ] - }, - { - "teal": 57, - "source": 1258, - "pc": [ - 75 - ] - }, - { - "teal": 58, - "source": 1258, - "pc": [ - 76 - ] - }, - { - "teal": 59, - "source": 1258, - "pc": [ - 77 - ] - }, - { - "teal": 63, - "source": 1258, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 67, - "source": 1259, - "pc": [ - 81, - 82 - ] - }, - { - "teal": 68, - "source": 1259, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 69, - "source": 1259, - "pc": [ - 85 - ] - }, - { - "teal": 70, - "source": 1258, - "pc": [ - 86 - ] - }, - { - "teal": 73, - "source": 1257, - "pc": [ - 87 - ] - }, - { - "teal": 74, - "source": 1257, - "pc": [ - 88 - ] - }, - { - "teal": 77, - "source": 1257, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 78, - "source": 1257, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 79, - "source": 1257, - "pc": [ - 98, - 99, - 100, - 101 - ] - }, - { - "teal": 82, - "source": 1257, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 102 - ] - }, - { - "teal": 85, - "source": 1257, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 86, - "source": 1257, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 87, - "source": 1257, - "pc": [ - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 90, - "source": 1257, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 116 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1257, + "pc": [ + 0, + 1, + 2, + 3, + 4 + ] + }, + { + "teal": 13, + "source": 1257, + "pc": [ + 5, + 6 + ] + }, + { + "teal": 14, + "source": 1257, + "pc": [ + 7 + ] + }, + { + "teal": 15, + "source": 1257, + "pc": [ + 8, + 9 + ] + }, + { + "teal": 16, + "source": 1257, + "pc": [ + 10 + ] + }, + { + "teal": 17, + "source": 1257, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 18, + "source": 1257, + "pc": [ + 13 + ] + }, + { + "teal": 19, + "source": 1257, + "pc": [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + }, + { + "teal": 23, + "source": 1257, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 40 + ] + }, + { + "teal": 28, + "source": 1258, + "pc": [ + 41, + 42, + 43, + 44, + 45, + 46 + ] + }, + { + "teal": 31, + "source": 1258, + "pc": [ + 47, + 48, + 49 + ] + }, + { + "teal": 32, + "source": 1258, + "pc": [ + 50 + ] + }, + { + "teal": 33, + "source": 1258, + "pc": [ + 51 + ] + }, + { + "teal": 34, + "source": 1258, + "pc": [ + 52 + ] + }, + { + "teal": 35, + "source": 1258, + "pc": [ + 53 + ] + }, + { + "teal": 38, + "source": 1258, + "errorMessage": "argument 0 (y) for uintNComparison must be a uint256", + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 1258, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 42, + "source": 1258, + "pc": [ + 58 + ] + }, + { + "teal": 43, + "source": 1258, + "pc": [ + 59 + ] + }, + { + "teal": 44, + "source": 1258, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 1258, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 1258, + "errorMessage": "argument 1 (x) for uintNComparison must be a uint256", + "pc": [ + 62 + ] + }, + { + "teal": 51, + "source": 1258, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 52, + "source": 1258, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 53, + "source": 1258, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 54, + "source": 1258, + "pc": [ + 71, + 72 + ] + }, + { + "teal": 55, + "source": 1258, + "pc": [ + 73 + ] + }, + { + "teal": 56, + "source": 1258, + "pc": [ + 74 + ] + }, + { + "teal": 57, + "source": 1258, + "pc": [ + 75 + ] + }, + { + "teal": 58, + "source": 1258, + "pc": [ + 76 + ] + }, + { + "teal": 59, + "source": 1258, + "pc": [ + 77 + ] + }, + { + "teal": 63, + "source": 1258, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 67, + "source": 1259, + "pc": [ + 81, + 82 + ] + }, + { + "teal": 68, + "source": 1259, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 69, + "source": 1259, + "pc": [ + 85 + ] + }, + { + "teal": 70, + "source": 1258, + "pc": [ + 86 + ] + }, + { + "teal": 73, + "source": 1257, + "pc": [ + 87 + ] + }, + { + "teal": 74, + "source": 1257, + "pc": [ + 88 + ] + }, + { + "teal": 77, + "source": 1257, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 78, + "source": 1257, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 79, + "source": 1257, + "pc": [ + 98, + 99, + 100, + 101 + ] + }, + { + "teal": 82, + "source": 1257, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 102 + ] + }, + { + "teal": 85, + "source": 1257, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 86, + "source": 1257, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 87, + "source": 1257, + "pc": [ + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 90, + "source": 1257, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 116 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50TkNvbXBhcmlzb24odWludDI1Nix1aW50MjU2KWJvb2wKKmFiaV9yb3V0ZV91aW50TkNvbXBhcmlzb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHk6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeSkgZm9yIHVpbnROQ29tcGFyaXNvbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8geDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdWludE5Db21wYXJpc29uIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbAoJY2FsbHN1YiB1aW50TkNvbXBhcmlzb24KCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5Db21wYXJpc29uKHg6IHVpbnQyNTYsIHk6IHVpbnQyNTYpOiBib29sZWFuCnVpbnROQ29tcGFyaXNvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjU5CgkvLyByZXR1cm4geCA+PSB5OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50MjU2CgliPj0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdWludE5Db21wYXJpc29uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1aW50TkNvbXBhcmlzb24odWludDI1Nix1aW50MjU2KWJvb2wKKmFiaV9yb3V0ZV91aW50TkNvbXBhcmlzb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIHk6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeSkgZm9yIHVpbnROQ29tcGFyaXNvbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8geDogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdWludE5Db21wYXJpc29uIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbAoJY2FsbHN1YiB1aW50TkNvbXBhcmlzb24KCWJ5dGUgMHgwMAoJaW50IDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5Db21wYXJpc29uKHg6IHVpbnQyNTYsIHk6IHVpbnQyNTYpOiBib29sZWFuCnVpbnROQ29tcGFyaXNvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMjU5CgkvLyByZXR1cm4geCA+PSB5OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50MjU2CgliPj0KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVpbnROQ29tcGFyaXNvbih1aW50MjU2LHVpbnQyNTYpYm9vbCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdWludE5Db21wYXJpc29uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.approval.teal b/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.approval.teal index 084c76ca8..880516a75 100644 --- a/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc32.json b/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc32.json index 7bcc71b5d..f47e52d86 100644 --- a/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCiphYmlfcm91dGVfdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCgljYWxsc3ViIHVwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKTogW3VpbnQ8OD4sIHVpbnQ2NF0KdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA3CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IFsxLCAyXQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAxMDAwMDAwMDAwMDAwMDAwMgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA5CgkvLyB2ID0gdGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTExCgkvLyB2WzBdID0gMwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWludCAwCglieXRlIDB4MDMKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTMKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVBcnJheVJlZkluQm94U3RvcmFnZSgpKHVpbnQ4LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCiphYmlfcm91dGVfdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCgljYWxsc3ViIHVwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKTogW3VpbnQ8OD4sIHVpbnQ2NF0KdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA3CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IFsxLCAyXQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAxMDAwMDAwMDAwMDAwMDAwMgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA5CgkvLyB2ID0gdGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTExCgkvLyB2WzBdID0gMwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWludCAwCglieXRlIDB4MDMKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTMKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVBcnJheVJlZkluQm94U3RvcmFnZSgpKHVpbnQ4LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc56_draft.json index c562121dc..548d86283 100644 --- a/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateArrayRefInBoxStorage.arc56_draft.json @@ -65,381 +65,384 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1102, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 1102, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 1102, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 1102, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 1102, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 1102, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 1102, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 1102, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 1102, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 1105, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 1105, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 1105, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 1105, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 1105, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 1105, - "pc": [ - 52 - ] - }, - { - "teal": 39, - "source": 1105, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 42, - "source": 1105, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 46, - "source": 1107, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 47, - "source": 1107, - "pc": [ - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70 - ] - }, - { - "teal": 48, - "source": 1107, - "pc": [ - 71 - ] - }, - { - "teal": 52, - "source": 1109, - "pc": [ - 72, - 73 - ] - }, - { - "teal": 53, - "source": 1109, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 57, - "source": 1109, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 58, - "source": 1109, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 59, - "source": 1109, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 60, - "source": 1109, - "pc": [ - 83 - ] - }, - { - "teal": 64, - "source": 1109, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 65, - "source": 1109, - "pc": [ - 86 - ] - }, - { - "teal": 68, - "source": 1109, - "errorMessage": "box value does not exist: this.bMap(this.txn.sender).value", - "pc": [ - 87 - ] - }, - { - "teal": 71, - "source": 1105, - "pc": [ - 88, - 89 - ] - }, - { - "teal": 72, - "source": 1105, - "pc": [ - 90 - ] - }, - { - "teal": 75, - "source": 1102, - "pc": [ - 91 - ] - }, - { - "teal": 76, - "source": 1102, - "pc": [ - 92 - ] - }, - { - "teal": 79, - "source": 1102, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 80, - "source": 1102, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 81, - "source": 1102, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 84, - "source": 1102, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 106 - ] - }, - { - "teal": 87, - "source": 1102, - "pc": [ - 107, - 108, - 109, - 110, - 111, - 112 - ] - }, - { - "teal": 88, - "source": 1102, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 89, - "source": 1102, - "pc": [ - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 92, - "source": 1102, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 120 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1102, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 1102, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 1102, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 1102, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 1102, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 1102, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 1102, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 1102, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 1102, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 1105, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 1105, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 1105, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 1105, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 1105, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 1105, + "pc": [ + 52 + ] + }, + { + "teal": 39, + "source": 1105, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 42, + "source": 1105, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 46, + "source": 1107, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 47, + "source": 1107, + "pc": [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + }, + { + "teal": 48, + "source": 1107, + "pc": [ + 71 + ] + }, + { + "teal": 52, + "source": 1109, + "pc": [ + 72, + 73 + ] + }, + { + "teal": 53, + "source": 1109, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 57, + "source": 1109, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 58, + "source": 1109, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 59, + "source": 1109, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 60, + "source": 1109, + "pc": [ + 83 + ] + }, + { + "teal": 64, + "source": 1109, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 65, + "source": 1109, + "pc": [ + 86 + ] + }, + { + "teal": 68, + "source": 1109, + "errorMessage": "box value does not exist: this.bMap(this.txn.sender).value", + "pc": [ + 87 + ] + }, + { + "teal": 71, + "source": 1105, + "pc": [ + 88, + 89 + ] + }, + { + "teal": 72, + "source": 1105, + "pc": [ + 90 + ] + }, + { + "teal": 75, + "source": 1102, + "pc": [ + 91 + ] + }, + { + "teal": 76, + "source": 1102, + "pc": [ + 92 + ] + }, + { + "teal": 79, + "source": 1102, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 80, + "source": 1102, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 81, + "source": 1102, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 84, + "source": 1102, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 106 + ] + }, + { + "teal": 87, + "source": 1102, + "pc": [ + 107, + 108, + 109, + 110, + 111, + 112 + ] + }, + { + "teal": 88, + "source": 1102, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 89, + "source": 1102, + "pc": [ + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 92, + "source": 1102, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 120 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCiphYmlfcm91dGVfdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCgljYWxsc3ViIHVwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKTogW3VpbnQ8OD4sIHVpbnQ2NF0KdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA3CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IFsxLCAyXQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAxMDAwMDAwMDAwMDAwMDAwMgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA5CgkvLyB2ID0gdGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTExCgkvLyB2WzBdID0gMwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWludCAwCglieXRlIDB4MDMKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTMKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVBcnJheVJlZkluQm94U3RvcmFnZSgpKHVpbnQ4LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCiphYmlfcm91dGVfdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKSh1aW50OCx1aW50NjQpCgljYWxsc3ViIHVwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2UoKTogW3VpbnQ8OD4sIHVpbnQ2NF0KdXBkYXRlQXJyYXlSZWZJbkJveFN0b3JhZ2U6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA3CgkvLyB0aGlzLmJNYXAodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IFsxLCAyXQoJdHhuIFNlbmRlcgoJYnl0ZSAweDAxMDAwMDAwMDAwMDAwMDAwMgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTA5CgkvLyB2ID0gdGhpcy5iTWFwKHRoaXMudHhuLnNlbmRlcikudmFsdWUKCXR4biBTZW5kZXIKCWZyYW1lX2J1cnkgMCAvLyBzdG9yYWdlIGtleS8vdgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTExCgkvLyB2WzBdID0gMwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWludCAwCglieXRlIDB4MDMKCWJveF9yZXBsYWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExMTMKCS8vIHJldHVybiB2OwoJZnJhbWVfZGlnIDAgLy8gc3RvcmFnZSBrZXkvL3YKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYk1hcCh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVBcnJheVJlZkluQm94U3RvcmFnZSgpKHVpbnQ4LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUFycmF5UmVmSW5Cb3hTdG9yYWdlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.approval.teal b/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.approval.teal index eb1fbd5ce..2a915bfda 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc32.json b/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc32.json index 03173d6a8..860cbe778 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50KCl1aW50NjQKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpOiB1aW50NjQKdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM2OQoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzEKCS8vIGFbMV0gPSAyMjIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50KCl1aW50NjQKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpOiB1aW50NjQKdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM2OQoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzEKCS8vIGFbMV0gPSAyMjIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc56_draft.json index d24e1a5da..01c61102a 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayElement.arc56_draft.json @@ -60,421 +60,424 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 367, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 367, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 367, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 367, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 367, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 367, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 367, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 367, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 367, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 368, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 368, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 368, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 368, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 368, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 368, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 368, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 368, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 368, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 47, - "source": 369, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 48, - "source": 369, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 52, - "source": 371, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 53, - "source": 371, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 54, - "source": 371, - "pc": [ - 91, - 92 - ] - }, - { - "teal": 55, - "source": 371, - "pc": [ - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 56, - "source": 371, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 57, - "source": 371, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 61, - "source": 373, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 62, - "source": 373, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 63, - "source": 373, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 64, - "source": 373, - "pc": [ - 113, - 114, - 115 - ] - }, - { - "teal": 65, - "source": 373, - "pc": [ - 116 - ] - }, - { - "teal": 68, - "source": 368, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 69, - "source": 368, - "pc": [ - 119 - ] - }, - { - "teal": 72, - "source": 367, - "pc": [ - 120 - ] - }, - { - "teal": 73, - "source": 367, - "pc": [ - 121 - ] - }, - { - "teal": 76, - "source": 367, - "pc": [ - 122, - 123, - 124, - 125, - 126, - 127 - ] - }, - { - "teal": 77, - "source": 367, - "pc": [ - 128, - 129, - 130 - ] - }, - { - "teal": 78, - "source": 367, - "pc": [ - 131, - 132, - 133, - 134 - ] - }, - { - "teal": 81, - "source": 367, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 135 - ] - }, - { - "teal": 84, - "source": 367, - "pc": [ - 136, - 137, - 138, - 139, - 140, - 141 - ] - }, - { - "teal": 85, - "source": 367, - "pc": [ - 142, - 143, - 144 - ] - }, - { - "teal": 86, - "source": 367, - "pc": [ - 145, - 146, - 147, - 148 - ] - }, - { - "teal": 89, - "source": 367, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 149 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 367, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 367, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 367, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 367, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 367, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 367, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 367, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 367, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 367, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 368, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 368, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 368, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 368, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 368, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 368, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 368, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 368, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 368, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 47, + "source": 369, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 48, + "source": 369, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 52, + "source": 371, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 53, + "source": 371, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 54, + "source": 371, + "pc": [ + 91, + 92 + ] + }, + { + "teal": 55, + "source": 371, + "pc": [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 56, + "source": 371, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 57, + "source": 371, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 61, + "source": 373, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 62, + "source": 373, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 63, + "source": 373, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 64, + "source": 373, + "pc": [ + 113, + 114, + 115 + ] + }, + { + "teal": 65, + "source": 373, + "pc": [ + 116 + ] + }, + { + "teal": 68, + "source": 368, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 69, + "source": 368, + "pc": [ + 119 + ] + }, + { + "teal": 72, + "source": 367, + "pc": [ + 120 + ] + }, + { + "teal": 73, + "source": 367, + "pc": [ + 121 + ] + }, + { + "teal": 76, + "source": 367, + "pc": [ + 122, + 123, + 124, + 125, + 126, + 127 + ] + }, + { + "teal": 77, + "source": 367, + "pc": [ + 128, + 129, + 130 + ] + }, + { + "teal": 78, + "source": 367, + "pc": [ + 131, + 132, + 133, + 134 + ] + }, + { + "teal": 81, + "source": 367, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 135 + ] + }, + { + "teal": 84, + "source": 367, + "pc": [ + 136, + 137, + 138, + 139, + 140, + 141 + ] + }, + { + "teal": 85, + "source": 367, + "pc": [ + 142, + 143, + 144 + ] + }, + { + "teal": 86, + "source": 367, + "pc": [ + 145, + 146, + 147, + 148 + ] + }, + { + "teal": 89, + "source": 367, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 149 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50KCl1aW50NjQKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpOiB1aW50NjQKdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM2OQoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzEKCS8vIGFbMV0gPSAyMjIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50KCl1aW50NjQKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpOiB1aW50NjQKdXBkYXRlRHluYW1pY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjM2OQoJLy8gYTogdWludDY0W10gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzEKCS8vIGFbMV0gPSAyMjIKCWZyYW1lX2RpZyAwIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwZGUKCXJlcGxhY2UyIDgKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjRbXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czozNzMKCS8vIHJldHVybiBhWzFdOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0W10KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5RWxlbWVudCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.approval.teal b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.approval.teal index 8c204c3f7..7eda57270 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc32.json b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc32.json index a616e6eef..ec327f6a1 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQp1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODQKCS8vIGFbMV0gPSBbNCwgNV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjA0MDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njg2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCkodWludDE2LHVpbnQ4W10sdWludDE2KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQp1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODQKCS8vIGFbMV0gPSBbNCwgNV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjA0MDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njg2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCkodWludDE2LHVpbnQ4W10sdWludDE2KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc56_draft.json index fd53583c8..f05aac02f 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInMiddleOfTuple.arc56_draft.json @@ -60,1070 +60,1073 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 680, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 680, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 680, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 680, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 16, - "source": 680, - "pc": [ - 14 - ] - }, - { - "teal": 17, - "source": 680, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 680, - "pc": [ - 17 - ] - }, - { - "teal": 19, - "source": 680, - "pc": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ] - }, - { - "teal": 23, - "source": 680, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 44 - ] - }, - { - "teal": 28, - "source": 681, - "pc": [ - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 31, - "source": 681, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 32, - "source": 681, - "pc": [ - 54 - ] - }, - { - "teal": 33, - "source": 681, - "pc": [ - 55 - ] - }, - { - "teal": 34, - "source": 681, - "pc": [ - 56 - ] - }, - { - "teal": 35, - "source": 681, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 681, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 42, - "source": 681, - "pc": [ - 61 - ] - }, - { - "teal": 46, - "source": 682, - "pc": [ - 62 - ] - }, - { - "teal": 47, - "source": 682, - "pc": [ - 63 - ] - }, - { - "teal": 48, - "source": 682, - "pc": [ - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 49, - "source": 682, - "pc": [ - 68, - 69, - 70, - 71 - ] - }, - { - "teal": 50, - "source": 682, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 51, - "source": 682, - "pc": [ - 75, - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 52, - "source": 682, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 53, - "source": 682, - "pc": [ - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 54, - "source": 682, - "pc": [ - 87, - 88, - 89 - ] - }, - { - "teal": 55, - "source": 682, - "pc": [ - 90 - ] - }, - { - "teal": 56, - "source": 682, - "pc": [ - 91 - ] - }, - { - "teal": 57, - "source": 682, - "pc": [ - 92, - 93 - ] - }, - { - "teal": 61, - "source": 684, - "pc": [ - 94, - 95 - ] - }, - { - "teal": 62, - "source": 684, - "pc": [ - 96, - 97 - ] - }, - { - "teal": 63, - "source": 684, - "pc": [ - 98 - ] - }, - { - "teal": 64, - "source": 684, - "pc": [ - 99 - ] - }, - { - "teal": 65, - "source": 684, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 66, - "source": 684, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 67, - "source": 684, - "pc": [ - 104, - 105 - ] - }, - { - "teal": 68, - "source": 684, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 69, - "source": 684, - "pc": [ - 108 - ] - }, - { - "teal": 70, - "source": 684, - "pc": [ - 109 - ] - }, - { - "teal": 71, - "source": 684, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 72, - "source": 684, - "pc": [ - 112 - ] - }, - { - "teal": 73, - "source": 684, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 74, - "source": 684, - "pc": [ - 115 - ] - }, - { - "teal": 75, - "source": 684, - "pc": [ - 116 - ] - }, - { - "teal": 76, - "source": 684, - "pc": [ - 117 - ] - }, - { - "teal": 77, - "source": 684, - "pc": [ - 118 - ] - }, - { - "teal": 78, - "source": 684, - "pc": [ - 119 - ] - }, - { - "teal": 79, - "source": 684, - "pc": [ - 120 - ] - }, - { - "teal": 80, - "source": 684, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 81, - "source": 684, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 82, - "source": 684, - "pc": [ - 125 - ] - }, - { - "teal": 83, - "source": 684, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 84, - "source": 684, - "pc": [ - 128 - ] - }, - { - "teal": 85, - "source": 684, - "pc": [ - 129, - 130, - 131, - 132, - 133, - 134 - ] - }, - { - "teal": 86, - "source": 684, - "pc": [ - 135 - ] - }, - { - "teal": 87, - "source": 684, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 88, - "source": 684, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 89, - "source": 684, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 90, - "source": 684, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 91, - "source": 684, - "pc": [ - 144 - ] - }, - { - "teal": 92, - "source": 684, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 93, - "source": 684, - "pc": [ - 147 - ] - }, - { - "teal": 94, - "source": 684, - "pc": [ - 148 - ] - }, - { - "teal": 95, - "source": 684, - "pc": [ - 149 - ] - }, - { - "teal": 96, - "source": 684, - "pc": [ - 150 - ] - }, - { - "teal": 97, - "source": 684, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 98, - "source": 684, - "pc": [ - 153, - 154, - 155 - ] - }, - { - "teal": 99, - "source": 684, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 100, - "source": 684, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 104, - "source": 686, - "pc": [ - 160, - 161 - ] - }, - { - "teal": 107, - "source": 681, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 108, - "source": 681, - "pc": [ - 164 - ] - }, - { - "teal": 111, - "source": 680, - "pc": [ - 165 - ] - }, - { - "teal": 112, - "source": 680, - "pc": [ - 166 - ] - }, - { - "teal": 115, - "source": 680, - "pc": [ - 167, - 168, - 169, - 170, - 171, - 172 - ] - }, - { - "teal": 116, - "source": 680, - "pc": [ - 173, - 174, - 175 - ] - }, - { - "teal": 117, - "source": 680, - "pc": [ - 176, - 177, - 178, - 179 - ] - }, - { - "teal": 120, - "source": 680, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 180 - ] - }, - { - "teal": 123, - "source": 680, - "pc": [ - 181, - 182, - 183, - 184, - 185, - 186 - ] - }, - { - "teal": 124, - "source": 680, - "pc": [ - 187, - 188, - 189 - ] - }, - { - "teal": 125, - "source": 680, - "pc": [ - 190, - 191, - 192, - 193 - ] - }, - { - "teal": 128, - "source": 680, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 194 - ] - }, - { - "teal": 131, - "source": 680, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 132, - "source": 680, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 133, - "source": 680, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 134, - "source": 680, - "pc": [ - 202 - ] - }, - { - "teal": 135, - "source": 680, - "pc": [ - 203, - 204 - ] - }, - { - "teal": 136, - "source": 680, - "pc": [ - 205, - 206 - ] - }, - { - "teal": 137, - "source": 680, - "pc": [ - 207 - ] - }, - { - "teal": 140, - "source": 680, - "pc": [ - 208, - 209, - 210 - ] - }, - { - "teal": 141, - "source": 680, - "pc": [ - 211, - 212 - ] - }, - { - "teal": 142, - "source": 680, - "pc": [ - 213, - 214 - ] - }, - { - "teal": 143, - "source": 680, - "pc": [ - 215 - ] - }, - { - "teal": 144, - "source": 680, - "pc": [ - 216, - 217 - ] - }, - { - "teal": 145, - "source": 680, - "pc": [ - 218, - 219 - ] - }, - { - "teal": 146, - "source": 680, - "pc": [ - 220 - ] - }, - { - "teal": 147, - "source": 680, - "pc": [ - 221 - ] - }, - { - "teal": 148, - "source": 680, - "pc": [ - 222, - 223 - ] - }, - { - "teal": 149, - "source": 680, - "pc": [ - 224 - ] - }, - { - "teal": 150, - "source": 680, - "pc": [ - 225 - ] - }, - { - "teal": 151, - "source": 680, - "pc": [ - 226 - ] - }, - { - "teal": 152, - "source": 680, - "pc": [ - 227, - 228, - 229 - ] - }, - { - "teal": 153, - "source": 680, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 154, - "source": 680, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 155, - "source": 680, - "pc": [ - 234 - ] - }, - { - "teal": 156, - "source": 680, - "pc": [ - 235 - ] - }, - { - "teal": 157, - "source": 680, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 158, - "source": 680, - "pc": [ - 238, - 239 - ] - }, - { - "teal": 159, - "source": 680, - "pc": [ - 240, - 241 - ] - }, - { - "teal": 160, - "source": 680, - "pc": [ - 242, - 243 - ] - }, - { - "teal": 161, - "source": 680, - "pc": [ - 244 - ] - }, - { - "teal": 164, - "source": 680, - "pc": [ - 245, - 246 - ] - }, - { - "teal": 165, - "source": 680, - "pc": [ - 247 - ] - }, - { - "teal": 166, - "source": 680, - "pc": [ - 248, - 249 - ] - }, - { - "teal": 167, - "source": 680, - "pc": [ - 250 - ] - }, - { - "teal": 168, - "source": 680, - "pc": [ - 251, - 252, - 253 - ] - }, - { - "teal": 169, - "source": 680, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 170, - "source": 680, - "pc": [ - 256 - ] - }, - { - "teal": 171, - "source": 680, - "pc": [ - 257, - 258 - ] - }, - { - "teal": 172, - "source": 680, - "pc": [ - 259 - ] - }, - { - "teal": 173, - "source": 680, - "pc": [ - 260, - 261 - ] - }, - { - "teal": 174, - "source": 680, - "pc": [ - 262, - 263, - 264 - ] - }, - { - "teal": 177, - "source": 680, - "pc": [ - 265, - 266 - ] - }, - { - "teal": 178, - "source": 680, - "pc": [ - 267, - 268 - ] - }, - { - "teal": 179, - "source": 680, - "pc": [ - 269 - ] - }, - { - "teal": 180, - "source": 680, - "pc": [ - 270 - ] - }, - { - "teal": 181, - "source": 680, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 184, - "source": 680, - "pc": [ - 273 - ] - }, - { - "teal": 185, - "source": 680, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 186, - "source": 680, - "pc": [ - 276 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 680, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 680, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 680, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 680, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 16, + "source": 680, + "pc": [ + 14 + ] + }, + { + "teal": 17, + "source": 680, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 680, + "pc": [ + 17 + ] + }, + { + "teal": 19, + "source": 680, + "pc": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "teal": 23, + "source": 680, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 44 + ] + }, + { + "teal": 28, + "source": 681, + "pc": [ + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 31, + "source": 681, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 32, + "source": 681, + "pc": [ + 54 + ] + }, + { + "teal": 33, + "source": 681, + "pc": [ + 55 + ] + }, + { + "teal": 34, + "source": 681, + "pc": [ + 56 + ] + }, + { + "teal": 35, + "source": 681, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 681, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 42, + "source": 681, + "pc": [ + 61 + ] + }, + { + "teal": 46, + "source": 682, + "pc": [ + 62 + ] + }, + { + "teal": 47, + "source": 682, + "pc": [ + 63 + ] + }, + { + "teal": 48, + "source": 682, + "pc": [ + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 49, + "source": 682, + "pc": [ + 68, + 69, + 70, + 71 + ] + }, + { + "teal": 50, + "source": 682, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 51, + "source": 682, + "pc": [ + 75, + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 52, + "source": 682, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 53, + "source": 682, + "pc": [ + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 54, + "source": 682, + "pc": [ + 87, + 88, + 89 + ] + }, + { + "teal": 55, + "source": 682, + "pc": [ + 90 + ] + }, + { + "teal": 56, + "source": 682, + "pc": [ + 91 + ] + }, + { + "teal": 57, + "source": 682, + "pc": [ + 92, + 93 + ] + }, + { + "teal": 61, + "source": 684, + "pc": [ + 94, + 95 + ] + }, + { + "teal": 62, + "source": 684, + "pc": [ + 96, + 97 + ] + }, + { + "teal": 63, + "source": 684, + "pc": [ + 98 + ] + }, + { + "teal": 64, + "source": 684, + "pc": [ + 99 + ] + }, + { + "teal": 65, + "source": 684, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 66, + "source": 684, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 67, + "source": 684, + "pc": [ + 104, + 105 + ] + }, + { + "teal": 68, + "source": 684, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 69, + "source": 684, + "pc": [ + 108 + ] + }, + { + "teal": 70, + "source": 684, + "pc": [ + 109 + ] + }, + { + "teal": 71, + "source": 684, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 72, + "source": 684, + "pc": [ + 112 + ] + }, + { + "teal": 73, + "source": 684, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 74, + "source": 684, + "pc": [ + 115 + ] + }, + { + "teal": 75, + "source": 684, + "pc": [ + 116 + ] + }, + { + "teal": 76, + "source": 684, + "pc": [ + 117 + ] + }, + { + "teal": 77, + "source": 684, + "pc": [ + 118 + ] + }, + { + "teal": 78, + "source": 684, + "pc": [ + 119 + ] + }, + { + "teal": 79, + "source": 684, + "pc": [ + 120 + ] + }, + { + "teal": 80, + "source": 684, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 81, + "source": 684, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 82, + "source": 684, + "pc": [ + 125 + ] + }, + { + "teal": 83, + "source": 684, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 84, + "source": 684, + "pc": [ + 128 + ] + }, + { + "teal": 85, + "source": 684, + "pc": [ + 129, + 130, + 131, + 132, + 133, + 134 + ] + }, + { + "teal": 86, + "source": 684, + "pc": [ + 135 + ] + }, + { + "teal": 87, + "source": 684, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 88, + "source": 684, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 89, + "source": 684, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 90, + "source": 684, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 91, + "source": 684, + "pc": [ + 144 + ] + }, + { + "teal": 92, + "source": 684, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 93, + "source": 684, + "pc": [ + 147 + ] + }, + { + "teal": 94, + "source": 684, + "pc": [ + 148 + ] + }, + { + "teal": 95, + "source": 684, + "pc": [ + 149 + ] + }, + { + "teal": 96, + "source": 684, + "pc": [ + 150 + ] + }, + { + "teal": 97, + "source": 684, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 98, + "source": 684, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 99, + "source": 684, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 100, + "source": 684, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 104, + "source": 686, + "pc": [ + 160, + 161 + ] + }, + { + "teal": 107, + "source": 681, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 108, + "source": 681, + "pc": [ + 164 + ] + }, + { + "teal": 111, + "source": 680, + "pc": [ + 165 + ] + }, + { + "teal": 112, + "source": 680, + "pc": [ + 166 + ] + }, + { + "teal": 115, + "source": 680, + "pc": [ + 167, + 168, + 169, + 170, + 171, + 172 + ] + }, + { + "teal": 116, + "source": 680, + "pc": [ + 173, + 174, + 175 + ] + }, + { + "teal": 117, + "source": 680, + "pc": [ + 176, + 177, + 178, + 179 + ] + }, + { + "teal": 120, + "source": 680, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 180 + ] + }, + { + "teal": 123, + "source": 680, + "pc": [ + 181, + 182, + 183, + 184, + 185, + 186 + ] + }, + { + "teal": 124, + "source": 680, + "pc": [ + 187, + 188, + 189 + ] + }, + { + "teal": 125, + "source": 680, + "pc": [ + 190, + 191, + 192, + 193 + ] + }, + { + "teal": 128, + "source": 680, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 194 + ] + }, + { + "teal": 131, + "source": 680, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 132, + "source": 680, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 133, + "source": 680, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 134, + "source": 680, + "pc": [ + 202 + ] + }, + { + "teal": 135, + "source": 680, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 136, + "source": 680, + "pc": [ + 205, + 206 + ] + }, + { + "teal": 137, + "source": 680, + "pc": [ + 207 + ] + }, + { + "teal": 140, + "source": 680, + "pc": [ + 208, + 209, + 210 + ] + }, + { + "teal": 141, + "source": 680, + "pc": [ + 211, + 212 + ] + }, + { + "teal": 142, + "source": 680, + "pc": [ + 213, + 214 + ] + }, + { + "teal": 143, + "source": 680, + "pc": [ + 215 + ] + }, + { + "teal": 144, + "source": 680, + "pc": [ + 216, + 217 + ] + }, + { + "teal": 145, + "source": 680, + "pc": [ + 218, + 219 + ] + }, + { + "teal": 146, + "source": 680, + "pc": [ + 220 + ] + }, + { + "teal": 147, + "source": 680, + "pc": [ + 221 + ] + }, + { + "teal": 148, + "source": 680, + "pc": [ + 222, + 223 + ] + }, + { + "teal": 149, + "source": 680, + "pc": [ + 224 + ] + }, + { + "teal": 150, + "source": 680, + "pc": [ + 225 + ] + }, + { + "teal": 151, + "source": 680, + "pc": [ + 226 + ] + }, + { + "teal": 152, + "source": 680, + "pc": [ + 227, + 228, + 229 + ] + }, + { + "teal": 153, + "source": 680, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 154, + "source": 680, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 155, + "source": 680, + "pc": [ + 234 + ] + }, + { + "teal": 156, + "source": 680, + "pc": [ + 235 + ] + }, + { + "teal": 157, + "source": 680, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 158, + "source": 680, + "pc": [ + 238, + 239 + ] + }, + { + "teal": 159, + "source": 680, + "pc": [ + 240, + 241 + ] + }, + { + "teal": 160, + "source": 680, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 161, + "source": 680, + "pc": [ + 244 + ] + }, + { + "teal": 164, + "source": 680, + "pc": [ + 245, + 246 + ] + }, + { + "teal": 165, + "source": 680, + "pc": [ + 247 + ] + }, + { + "teal": 166, + "source": 680, + "pc": [ + 248, + 249 + ] + }, + { + "teal": 167, + "source": 680, + "pc": [ + 250 + ] + }, + { + "teal": 168, + "source": 680, + "pc": [ + 251, + 252, + 253 + ] + }, + { + "teal": 169, + "source": 680, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 170, + "source": 680, + "pc": [ + 256 + ] + }, + { + "teal": 171, + "source": 680, + "pc": [ + 257, + 258 + ] + }, + { + "teal": 172, + "source": 680, + "pc": [ + 259 + ] + }, + { + "teal": 173, + "source": 680, + "pc": [ + 260, + 261 + ] + }, + { + "teal": 174, + "source": 680, + "pc": [ + 262, + 263, + 264 + ] + }, + { + "teal": 177, + "source": 680, + "pc": [ + 265, + 266 + ] + }, + { + "teal": 178, + "source": 680, + "pc": [ + 267, + 268 + ] + }, + { + "teal": 179, + "source": 680, + "pc": [ + 269 + ] + }, + { + "teal": 180, + "source": 680, + "pc": [ + 270 + ] + }, + { + "teal": 181, + "source": 680, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 184, + "source": 680, + "pc": [ + 273 + ] + }, + { + "teal": 185, + "source": 680, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 186, + "source": 680, + "pc": [ + 276 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQp1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODQKCS8vIGFbMV0gPSBbNCwgNV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjA0MDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njg2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCkodWludDE2LHVpbnQ4W10sdWludDE2KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGUoKSh1aW50MTYsdWludDhbXSx1aW50MTYpCiphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZUR5bmFtaWNBcnJheUluTWlkZGxlT2ZUdXBsZSgpKHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCk6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQp1cGRhdGVEeW5hbWljQXJyYXlJbk1pZGRsZU9mVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODIKCS8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XSA9IFsxLCBbMl0sIDNdCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA2IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwMDAxCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMKCWNhbGxzdWIgKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2ODQKCS8vIGFbMV0gPSBbNCwgNV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjA0MDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6Njg2CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlKCkodWludDE2LHVpbnQ4W10sdWludDE2KSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlRHluYW1pY0FycmF5SW5NaWRkbGVPZlR1cGxlCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJyCgoqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50Cgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0Cgljb25jYXQKCWZyYW1lX2J1cnkgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWR1cAoJbGVuCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWJ0b2kKCSsKCWl0b2IKCWV4dHJhY3QgNiAyCglmcmFtZV9idXJ5IC0yIC8vIGhlYWQgb2Zmc2V0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJc3dhcAoJY29uY2F0CglmcmFtZV9idXJ5IC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.approval.teal b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.approval.teal index 0bd46e8eb..88728cbaf 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc32.json b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc32.json index dc8bde48a..0251e077f 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJblR1cGxlKCkodWludDgsdWludDE2W10sdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUoKTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCnVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDYKCS8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFs5LCBbOF0sIFs3XSwgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwNwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDAwNgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDUKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDA4CgkvLyBhWzBdID0gOTkgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDYzCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQwOQoJLy8gYVsxXSA9IFsxMCwgMTFdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBhMDAwYgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDYKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MTAKCS8vIGFbMl0gPSBbMTIsIDEzXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDMKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMGMwZAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQxMQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDEyCgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDE0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnVwZGF0ZV9keW5hbWljX2hlYWQ6Cglwcm90byAyIDAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfZGlnIC0xIC8vIGR5bmFtaWMgYXJyYXkgb2Zmc2V0CglleHRyYWN0X3VpbnQxNiAvLyBleHRyYWN0IGR5bmFtaWMgYXJyYXkgb2Zmc2V0Cglsb2FkIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWJ6ICpzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2UKCSsgLy8gYWRkIGRpZmZlcmVuY2UgdG8gb2Zmc2V0CgliICplbmRfY2FsY19uZXdfaGVhZAoKKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZToKCXN3YXAKCS0gLy8gc3VidHJhY3QgZGlmZmVyZW5jZSBmcm9tIG9mZmV0CgoqZW5kX2NhbGNfbmV3X2hlYWQ6CglpdG9iIC8vIGNvbnZlcnQgdG8gYnl0ZXMKCWV4dHJhY3QgNiAyIC8vIGNvbnZlcnQgdG8gdWludDE2Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglmcmFtZV9kaWcgLTEgLy8gb2Zmc2V0Cglzd2FwCglyZXBsYWNlMyAvLyB1cGRhdGUgb2Zmc2V0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJblR1cGxlKCkodWludDgsdWludDE2W10sdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUoKTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCnVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDYKCS8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFs5LCBbOF0sIFs3XSwgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwNwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDAwNgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDUKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDA4CgkvLyBhWzBdID0gOTkgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDYzCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQwOQoJLy8gYVsxXSA9IFsxMCwgMTFdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBhMDAwYgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDYKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MTAKCS8vIGFbMl0gPSBbMTIsIDEzXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDMKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMGMwZAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQxMQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDEyCgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDE0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnVwZGF0ZV9keW5hbWljX2hlYWQ6Cglwcm90byAyIDAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfZGlnIC0xIC8vIGR5bmFtaWMgYXJyYXkgb2Zmc2V0CglleHRyYWN0X3VpbnQxNiAvLyBleHRyYWN0IGR5bmFtaWMgYXJyYXkgb2Zmc2V0Cglsb2FkIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWJ6ICpzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2UKCSsgLy8gYWRkIGRpZmZlcmVuY2UgdG8gb2Zmc2V0CgliICplbmRfY2FsY19uZXdfaGVhZAoKKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZToKCXN3YXAKCS0gLy8gc3VidHJhY3QgZGlmZmVyZW5jZSBmcm9tIG9mZmV0CgoqZW5kX2NhbGNfbmV3X2hlYWQ6CglpdG9iIC8vIGNvbnZlcnQgdG8gYnl0ZXMKCWV4dHJhY3QgNiAyIC8vIGNvbnZlcnQgdG8gdWludDE2Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglmcmFtZV9kaWcgLTEgLy8gb2Zmc2V0Cglzd2FwCglyZXBsYWNlMyAvLyB1cGRhdGUgb2Zmc2V0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc56_draft.json index 5a60e2c10..422106c4a 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicArrayInTuple.arc56_draft.json @@ -60,2478 +60,2481 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 404, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10 - ] - }, - { - "teal": 13, - "source": 404, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 14, - "source": 404, - "pc": [ - 13 - ] - }, - { - "teal": 15, - "source": 404, - "pc": [ - 14 - ] - }, - { - "teal": 16, - "source": 404, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 404, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 404, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 404, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 404, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 405, - "pc": [ - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 31, - "source": 405, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 32, - "source": 405, - "pc": [ - 55 - ] - }, - { - "teal": 33, - "source": 405, - "pc": [ - 56 - ] - }, - { - "teal": 34, - "source": 405, - "pc": [ - 57 - ] - }, - { - "teal": 35, - "source": 405, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 405, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 42, - "source": 405, - "pc": [ - 62 - ] - }, - { - "teal": 46, - "source": 406, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 406, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 406, - "pc": [ - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 49, - "source": 406, - "pc": [ - 69, - 70, - 71 - ] - }, - { - "teal": 50, - "source": 406, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 51, - "source": 406, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 52, - "source": 406, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 53, - "source": 406, - "pc": [ - 84, - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 54, - "source": 406, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 55, - "source": 406, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 56, - "source": 406, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 57, - "source": 406, - "pc": [ - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 58, - "source": 406, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 59, - "source": 406, - "pc": [ - 109 - ] - }, - { - "teal": 60, - "source": 406, - "pc": [ - 110 - ] - }, - { - "teal": 61, - "source": 406, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 65, - "source": 408, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 66, - "source": 408, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 67, - "source": 408, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 68, - "source": 408, - "pc": [ - 119, - 120, - 121 - ] - }, - { - "teal": 69, - "source": 408, - "pc": [ - 122, - 123 - ] - }, - { - "teal": 70, - "source": 408, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 74, - "source": 409, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 75, - "source": 409, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 76, - "source": 409, - "pc": [ - 130 - ] - }, - { - "teal": 77, - "source": 409, - "pc": [ - 131 - ] - }, - { - "teal": 78, - "source": 409, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 79, - "source": 409, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 80, - "source": 409, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 81, - "source": 409, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 82, - "source": 409, - "pc": [ - 140 - ] - }, - { - "teal": 83, - "source": 409, - "pc": [ - 141 - ] - }, - { - "teal": 84, - "source": 409, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 85, - "source": 409, - "pc": [ - 144 - ] - }, - { - "teal": 86, - "source": 409, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 87, - "source": 409, - "pc": [ - 147 - ] - }, - { - "teal": 88, - "source": 409, - "pc": [ - 148 - ] - }, - { - "teal": 89, - "source": 409, - "pc": [ - 149 - ] - }, - { - "teal": 90, - "source": 409, - "pc": [ - 150 - ] - }, - { - "teal": 91, - "source": 409, - "pc": [ - 151 - ] - }, - { - "teal": 92, - "source": 409, - "pc": [ - 152 - ] - }, - { - "teal": 93, - "source": 409, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 94, - "source": 409, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 95, - "source": 409, - "pc": [ - 157 - ] - }, - { - "teal": 96, - "source": 409, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 97, - "source": 409, - "pc": [ - 160 - ] - }, - { - "teal": 98, - "source": 409, - "pc": [ - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168 - ] - }, - { - "teal": 99, - "source": 409, - "pc": [ - 169 - ] - }, - { - "teal": 100, - "source": 409, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 101, - "source": 409, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 102, - "source": 409, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 103, - "source": 409, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 104, - "source": 409, - "pc": [ - 178 - ] - }, - { - "teal": 105, - "source": 409, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 106, - "source": 409, - "pc": [ - 181 - ] - }, - { - "teal": 107, - "source": 409, - "pc": [ - 182 - ] - }, - { - "teal": 108, - "source": 409, - "pc": [ - 183 - ] - }, - { - "teal": 109, - "source": 409, - "pc": [ - 184 - ] - }, - { - "teal": 110, - "source": 409, - "pc": [ - 185, - 186 - ] - }, - { - "teal": 111, - "source": 409, - "pc": [ - 187, - 188, - 189 - ] - }, - { - "teal": 112, - "source": 409, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 113, - "source": 409, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 114, - "source": 409, - "pc": [ - 194 - ] - }, - { - "teal": 115, - "source": 409, - "pc": [ - 195 - ] - }, - { - "teal": 116, - "source": 409, - "pc": [ - 196, - 197, - 198 - ] - }, - { - "teal": 117, - "source": 409, - "pc": [ - 199, - 200 - ] - }, - { - "teal": 118, - "source": 409, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 119, - "source": 409, - "pc": [ - 203, - 204 - ] - }, - { - "teal": 120, - "source": 409, - "pc": [ - 205 - ] - }, - { - "teal": 121, - "source": 409, - "pc": [ - 206, - 207, - 208 - ] - }, - { - "teal": 122, - "source": 409, - "pc": [ - 209, - 210 - ] - }, - { - "teal": 123, - "source": 409, - "pc": [ - 211, - 212 - ] - }, - { - "teal": 124, - "source": 409, - "pc": [ - 213 - ] - }, - { - "teal": 125, - "source": 409, - "pc": [ - 214 - ] - }, - { - "teal": 126, - "source": 409, - "pc": [ - 215, - 216, - 217 - ] - }, - { - "teal": 127, - "source": 409, - "pc": [ - 218, - 219 - ] - }, - { - "teal": 128, - "source": 409, - "pc": [ - 220, - 221 - ] - }, - { - "teal": 132, - "source": 410, - "pc": [ - 222, - 223 - ] - }, - { - "teal": 133, - "source": 410, - "pc": [ - 224, - 225 - ] - }, - { - "teal": 134, - "source": 410, - "pc": [ - 226, - 227 - ] - }, - { - "teal": 135, - "source": 410, - "pc": [ - 228 - ] - }, - { - "teal": 136, - "source": 410, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 137, - "source": 410, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 138, - "source": 410, - "pc": [ - 233, - 234 - ] - }, - { - "teal": 139, - "source": 410, - "pc": [ - 235, - 236 - ] - }, - { - "teal": 140, - "source": 410, - "pc": [ - 237 - ] - }, - { - "teal": 141, - "source": 410, - "pc": [ - 238 - ] - }, - { - "teal": 142, - "source": 410, - "pc": [ - 239, - 240 - ] - }, - { - "teal": 143, - "source": 410, - "pc": [ - 241 - ] - }, - { - "teal": 144, - "source": 410, - "pc": [ - 242, - 243 - ] - }, - { - "teal": 145, - "source": 410, - "pc": [ - 244 - ] - }, - { - "teal": 146, - "source": 410, - "pc": [ - 245 - ] - }, - { - "teal": 147, - "source": 410, - "pc": [ - 246 - ] - }, - { - "teal": 148, - "source": 410, - "pc": [ - 247 - ] - }, - { - "teal": 149, - "source": 410, - "pc": [ - 248 - ] - }, - { - "teal": 150, - "source": 410, - "pc": [ - 249 - ] - }, - { - "teal": 151, - "source": 410, - "pc": [ - 250, - 251 - ] - }, - { - "teal": 152, - "source": 410, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 153, - "source": 410, - "pc": [ - 254 - ] - }, - { - "teal": 154, - "source": 410, - "pc": [ - 255, - 256 - ] - }, - { - "teal": 155, - "source": 410, - "pc": [ - 257 - ] - }, - { - "teal": 156, - "source": 410, - "pc": [ - 258, - 259, - 260, - 261, - 262, - 263 - ] - }, - { - "teal": 157, - "source": 410, - "pc": [ - 264 - ] - }, - { - "teal": 158, - "source": 410, - "pc": [ - 265, - 266 - ] - }, - { - "teal": 159, - "source": 410, - "pc": [ - 267, - 268 - ] - }, - { - "teal": 160, - "source": 410, - "pc": [ - 269, - 270 - ] - }, - { - "teal": 161, - "source": 410, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 162, - "source": 410, - "pc": [ - 273 - ] - }, - { - "teal": 163, - "source": 410, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 164, - "source": 410, - "pc": [ - 276 - ] - }, - { - "teal": 165, - "source": 410, - "pc": [ - 277 - ] - }, - { - "teal": 166, - "source": 410, - "pc": [ - 278 - ] - }, - { - "teal": 167, - "source": 410, - "pc": [ - 279 - ] - }, - { - "teal": 168, - "source": 410, - "pc": [ - 280, - 281 - ] - }, - { - "teal": 169, - "source": 410, - "pc": [ - 282, - 283, - 284 - ] - }, - { - "teal": 170, - "source": 410, - "pc": [ - 285, - 286 - ] - }, - { - "teal": 171, - "source": 410, - "pc": [ - 287, - 288 - ] - }, - { - "teal": 172, - "source": 410, - "pc": [ - 289 - ] - }, - { - "teal": 173, - "source": 410, - "pc": [ - 290 - ] - }, - { - "teal": 174, - "source": 410, - "pc": [ - 291, - 292, - 293 - ] - }, - { - "teal": 175, - "source": 410, - "pc": [ - 294, - 295 - ] - }, - { - "teal": 176, - "source": 410, - "pc": [ - 296, - 297 - ] - }, - { - "teal": 177, - "source": 410, - "pc": [ - 298, - 299 - ] - }, - { - "teal": 178, - "source": 410, - "pc": [ - 300 - ] - }, - { - "teal": 179, - "source": 410, - "pc": [ - 301, - 302, - 303 - ] - }, - { - "teal": 180, - "source": 410, - "pc": [ - 304, - 305 - ] - }, - { - "teal": 181, - "source": 410, - "pc": [ - 306, - 307 - ] - }, - { - "teal": 185, - "source": 411, - "pc": [ - 308, - 309 - ] - }, - { - "teal": 186, - "source": 411, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 187, - "source": 411, - "pc": [ - 312, - 313 - ] - }, - { - "teal": 188, - "source": 411, - "pc": [ - 314 - ] - }, - { - "teal": 189, - "source": 411, - "pc": [ - 315, - 316 - ] - }, - { - "teal": 190, - "source": 411, - "pc": [ - 317, - 318 - ] - }, - { - "teal": 191, - "source": 411, - "pc": [ - 319, - 320 - ] - }, - { - "teal": 192, - "source": 411, - "pc": [ - 321, - 322 - ] - }, - { - "teal": 193, - "source": 411, - "pc": [ - 323 - ] - }, - { - "teal": 194, - "source": 411, - "pc": [ - 324 - ] - }, - { - "teal": 195, - "source": 411, - "pc": [ - 325, - 326 - ] - }, - { - "teal": 196, - "source": 411, - "pc": [ - 327 - ] - }, - { - "teal": 197, - "source": 411, - "pc": [ - 328, - 329 - ] - }, - { - "teal": 198, - "source": 411, - "pc": [ - 330 - ] - }, - { - "teal": 199, - "source": 411, - "pc": [ - 331 - ] - }, - { - "teal": 200, - "source": 411, - "pc": [ - 332 - ] - }, - { - "teal": 201, - "source": 411, - "pc": [ - 333 - ] - }, - { - "teal": 202, - "source": 411, - "pc": [ - 334 - ] - }, - { - "teal": 203, - "source": 411, - "pc": [ - 335 - ] - }, - { - "teal": 204, - "source": 411, - "pc": [ - 336, - 337 - ] - }, - { - "teal": 205, - "source": 411, - "pc": [ - 338, - 339 - ] - }, - { - "teal": 206, - "source": 411, - "pc": [ - 340 - ] - }, - { - "teal": 207, - "source": 411, - "pc": [ - 341, - 342 - ] - }, - { - "teal": 208, - "source": 411, - "pc": [ - 343 - ] - }, - { - "teal": 209, - "source": 411, - "pc": [ - 344, - 345, - 346, - 347, - 348, - 349, - 350, - 351 - ] - }, - { - "teal": 210, - "source": 411, - "pc": [ - 352 - ] - }, - { - "teal": 211, - "source": 411, - "pc": [ - 353, - 354 - ] - }, - { - "teal": 212, - "source": 411, - "pc": [ - 355, - 356 - ] - }, - { - "teal": 213, - "source": 411, - "pc": [ - 357, - 358 - ] - }, - { - "teal": 214, - "source": 411, - "pc": [ - 359, - 360 - ] - }, - { - "teal": 215, - "source": 411, - "pc": [ - 361 - ] - }, - { - "teal": 216, - "source": 411, - "pc": [ - 362, - 363 - ] - }, - { - "teal": 217, - "source": 411, - "pc": [ - 364 - ] - }, - { - "teal": 218, - "source": 411, - "pc": [ - 365 - ] - }, - { - "teal": 219, - "source": 411, - "pc": [ - 366 - ] - }, - { - "teal": 220, - "source": 411, - "pc": [ - 367 - ] - }, - { - "teal": 221, - "source": 411, - "pc": [ - 368, - 369 - ] - }, - { - "teal": 222, - "source": 411, - "pc": [ - 370, - 371, - 372 - ] - }, - { - "teal": 223, - "source": 411, - "pc": [ - 373, - 374 - ] - }, - { - "teal": 224, - "source": 411, - "pc": [ - 375, - 376 - ] - }, - { - "teal": 225, - "source": 411, - "pc": [ - 377 - ] - }, - { - "teal": 226, - "source": 411, - "pc": [ - 378 - ] - }, - { - "teal": 227, - "source": 411, - "pc": [ - 379, - 380, - 381 - ] - }, - { - "teal": 228, - "source": 411, - "pc": [ - 382, - 383 - ] - }, - { - "teal": 229, - "source": 411, - "pc": [ - 384, - 385 - ] - }, - { - "teal": 233, - "source": 412, - "pc": [ - 386, - 387 - ] - }, - { - "teal": 234, - "source": 412, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 235, - "source": 412, - "pc": [ - 390, - 391 - ] - }, - { - "teal": 236, - "source": 412, - "pc": [ - 392 - ] - }, - { - "teal": 237, - "source": 412, - "pc": [ - 393, - 394 - ] - }, - { - "teal": 238, - "source": 412, - "pc": [ - 395, - 396 - ] - }, - { - "teal": 239, - "source": 412, - "pc": [ - 397, - 398 - ] - }, - { - "teal": 240, - "source": 412, - "pc": [ - 399, - 400 - ] - }, - { - "teal": 241, - "source": 412, - "pc": [ - 401 - ] - }, - { - "teal": 242, - "source": 412, - "pc": [ - 402 - ] - }, - { - "teal": 243, - "source": 412, - "pc": [ - 403, - 404 - ] - }, - { - "teal": 244, - "source": 412, - "pc": [ - 405 - ] - }, - { - "teal": 245, - "source": 412, - "pc": [ - 406, - 407 - ] - }, - { - "teal": 246, - "source": 412, - "pc": [ - 408 - ] - }, - { - "teal": 247, - "source": 412, - "pc": [ - 409 - ] - }, - { - "teal": 248, - "source": 412, - "pc": [ - 410 - ] - }, - { - "teal": 249, - "source": 412, - "pc": [ - 411 - ] - }, - { - "teal": 250, - "source": 412, - "pc": [ - 412 - ] - }, - { - "teal": 251, - "source": 412, - "pc": [ - 413 - ] - }, - { - "teal": 252, - "source": 412, - "pc": [ - 414, - 415 - ] - }, - { - "teal": 253, - "source": 412, - "pc": [ - 416, - 417 - ] - }, - { - "teal": 254, - "source": 412, - "pc": [ - 418 - ] - }, - { - "teal": 255, - "source": 412, - "pc": [ - 419, - 420 - ] - }, - { - "teal": 256, - "source": 412, - "pc": [ - 421 - ] - }, - { - "teal": 257, - "source": 412, - "pc": [ - 422, - 423, - 424, - 425, - 426, - 427 - ] - }, - { - "teal": 258, - "source": 412, - "pc": [ - 428 - ] - }, - { - "teal": 259, - "source": 412, - "pc": [ - 429, - 430 - ] - }, - { - "teal": 260, - "source": 412, - "pc": [ - 431, - 432 - ] - }, - { - "teal": 261, - "source": 412, - "pc": [ - 433, - 434 - ] - }, - { - "teal": 262, - "source": 412, - "pc": [ - 435, - 436 - ] - }, - { - "teal": 263, - "source": 412, - "pc": [ - 437 - ] - }, - { - "teal": 264, - "source": 412, - "pc": [ - 438, - 439 - ] - }, - { - "teal": 265, - "source": 412, - "pc": [ - 440 - ] - }, - { - "teal": 266, - "source": 412, - "pc": [ - 441 - ] - }, - { - "teal": 267, - "source": 412, - "pc": [ - 442 - ] - }, - { - "teal": 268, - "source": 412, - "pc": [ - 443 - ] - }, - { - "teal": 269, - "source": 412, - "pc": [ - 444, - 445 - ] - }, - { - "teal": 270, - "source": 412, - "pc": [ - 446, - 447, - 448 - ] - }, - { - "teal": 271, - "source": 412, - "pc": [ - 449, - 450 - ] - }, - { - "teal": 272, - "source": 412, - "pc": [ - 451, - 452 - ] - }, - { - "teal": 276, - "source": 414, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 279, - "source": 405, - "pc": [ - 455, - 456 - ] - }, - { - "teal": 280, - "source": 405, - "pc": [ - 457 - ] - }, - { - "teal": 283, - "source": 404, - "pc": [ - 458 - ] - }, - { - "teal": 284, - "source": 404, - "pc": [ - 459 - ] - }, - { - "teal": 287, - "source": 404, - "pc": [ - 460, - 461, - 462, - 463, - 464, - 465 - ] - }, - { - "teal": 288, - "source": 404, - "pc": [ - 466, - 467, - 468 - ] - }, - { - "teal": 289, - "source": 404, - "pc": [ - 469, - 470, - 471, - 472 - ] - }, - { - "teal": 292, - "source": 404, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 473 - ] - }, - { - "teal": 295, - "source": 404, - "pc": [ - 474, - 475, - 476, - 477, - 478, - 479 - ] - }, - { - "teal": 296, - "source": 404, - "pc": [ - 480, - 481, - 482 - ] - }, - { - "teal": 297, - "source": 404, - "pc": [ - 483, - 484, - 485, - 486 - ] - }, - { - "teal": 300, - "source": 404, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 487 - ] - }, - { - "teal": 303, - "source": 404, - "pc": [ - 488, - 489, - 490 - ] - }, - { - "teal": 304, - "source": 404, - "pc": [ - 491, - 492 - ] - }, - { - "teal": 305, - "source": 404, - "pc": [ - 493, - 494 - ] - }, - { - "teal": 306, - "source": 404, - "pc": [ - 495 - ] - }, - { - "teal": 307, - "source": 404, - "pc": [ - 496, - 497 - ] - }, - { - "teal": 308, - "source": 404, - "pc": [ - 498, - 499 - ] - }, - { - "teal": 309, - "source": 404, - "pc": [ - 500 - ] - }, - { - "teal": 312, - "source": 404, - "pc": [ - 501, - 502, - 503 - ] - }, - { - "teal": 313, - "source": 404, - "pc": [ - 504, - 505 - ] - }, - { - "teal": 314, - "source": 404, - "pc": [ - 506, - 507 - ] - }, - { - "teal": 315, - "source": 404, - "pc": [ - 508 - ] - }, - { - "teal": 316, - "source": 404, - "pc": [ - 509, - 510 - ] - }, - { - "teal": 317, - "source": 404, - "pc": [ - 511, - 512 - ] - }, - { - "teal": 318, - "source": 404, - "pc": [ - 513 - ] - }, - { - "teal": 319, - "source": 404, - "pc": [ - 514 - ] - }, - { - "teal": 320, - "source": 404, - "pc": [ - 515, - 516 - ] - }, - { - "teal": 321, - "source": 404, - "pc": [ - 517 - ] - }, - { - "teal": 322, - "source": 404, - "pc": [ - 518 - ] - }, - { - "teal": 323, - "source": 404, - "pc": [ - 519 - ] - }, - { - "teal": 324, - "source": 404, - "pc": [ - 520, - 521, - 522 - ] - }, - { - "teal": 325, - "source": 404, - "pc": [ - 523, - 524 - ] - }, - { - "teal": 326, - "source": 404, - "pc": [ - 525, - 526 - ] - }, - { - "teal": 327, - "source": 404, - "pc": [ - 527 - ] - }, - { - "teal": 328, - "source": 404, - "pc": [ - 528 - ] - }, - { - "teal": 329, - "source": 404, - "pc": [ - 529, - 530 - ] - }, - { - "teal": 330, - "source": 404, - "pc": [ - 531, - 532 - ] - }, - { - "teal": 331, - "source": 404, - "pc": [ - 533, - 534 - ] - }, - { - "teal": 332, - "source": 404, - "pc": [ - 535, - 536 - ] - }, - { - "teal": 333, - "source": 404, - "pc": [ - 537 - ] - }, - { - "teal": 336, - "source": 404, - "pc": [ - 538, - 539, - 540 - ] - }, - { - "teal": 337, - "source": 404, - "pc": [ - 541, - 542 - ] - }, - { - "teal": 338, - "source": 404, - "pc": [ - 543, - 544 - ] - }, - { - "teal": 339, - "source": 404, - "pc": [ - 545, - 546 - ] - }, - { - "teal": 340, - "source": 404, - "pc": [ - 547 - ] - }, - { - "teal": 341, - "source": 404, - "pc": [ - 548, - 549 - ] - }, - { - "teal": 342, - "source": 404, - "pc": [ - 550, - 551, - 552 - ] - }, - { - "teal": 343, - "source": 404, - "pc": [ - 553 - ] - }, - { - "teal": 344, - "source": 404, - "pc": [ - 554, - 555, - 556 - ] - }, - { - "teal": 347, - "source": 404, - "pc": [ - 557 - ] - }, - { - "teal": 348, - "source": 404, - "pc": [ - 558 - ] - }, - { - "teal": 351, - "source": 404, - "pc": [ - 559 - ] - }, - { - "teal": 352, - "source": 404, - "pc": [ - 560, - 561, - 562 - ] - }, - { - "teal": 353, - "source": 404, - "pc": [ - 563, - 564 - ] - }, - { - "teal": 354, - "source": 404, - "pc": [ - 565 - ] - }, - { - "teal": 355, - "source": 404, - "pc": [ - 566, - 567 - ] - }, - { - "teal": 356, - "source": 404, - "pc": [ - 568 - ] - }, - { - "teal": 357, - "source": 404, - "pc": [ - 569 - ] - }, - { - "teal": 358, - "source": 404, - "pc": [ - 570, - 571 - ] - }, - { - "teal": 359, - "source": 404, - "pc": [ - 572 - ] - }, - { - "teal": 362, - "source": 404, - "pc": [ - 573, - 574 - ] - }, - { - "teal": 363, - "source": 404, - "pc": [ - 575 - ] - }, - { - "teal": 364, - "source": 404, - "pc": [ - 576, - 577 - ] - }, - { - "teal": 365, - "source": 404, - "pc": [ - 578 - ] - }, - { - "teal": 366, - "source": 404, - "pc": [ - 579, - 580, - 581 - ] - }, - { - "teal": 367, - "source": 404, - "pc": [ - 582, - 583 - ] - }, - { - "teal": 368, - "source": 404, - "pc": [ - 584 - ] - }, - { - "teal": 369, - "source": 404, - "pc": [ - 585, - 586 - ] - }, - { - "teal": 370, - "source": 404, - "pc": [ - 587 - ] - }, - { - "teal": 371, - "source": 404, - "pc": [ - 588, - 589 - ] - }, - { - "teal": 372, - "source": 404, - "pc": [ - 590, - 591, - 592 - ] - }, - { - "teal": 375, - "source": 404, - "pc": [ - 593, - 594 - ] - }, - { - "teal": 376, - "source": 404, - "pc": [ - 595, - 596 - ] - }, - { - "teal": 377, - "source": 404, - "pc": [ - 597 - ] - }, - { - "teal": 378, - "source": 404, - "pc": [ - 598 - ] - }, - { - "teal": 379, - "source": 404, - "pc": [ - 599, - 600 - ] - }, - { - "teal": 382, - "source": 404, - "pc": [ - 601 - ] - }, - { - "teal": 383, - "source": 404, - "pc": [ - 602, - 603 - ] - }, - { - "teal": 384, - "source": 404, - "pc": [ - 604 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 404, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10 + ] + }, + { + "teal": 13, + "source": 404, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 14, + "source": 404, + "pc": [ + 13 + ] + }, + { + "teal": 15, + "source": 404, + "pc": [ + 14 + ] + }, + { + "teal": 16, + "source": 404, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 404, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 404, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 404, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 404, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 405, + "pc": [ + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 31, + "source": 405, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 32, + "source": 405, + "pc": [ + 55 + ] + }, + { + "teal": 33, + "source": 405, + "pc": [ + 56 + ] + }, + { + "teal": 34, + "source": 405, + "pc": [ + 57 + ] + }, + { + "teal": 35, + "source": 405, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 405, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 42, + "source": 405, + "pc": [ + 62 + ] + }, + { + "teal": 46, + "source": 406, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 406, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 406, + "pc": [ + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 49, + "source": 406, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 50, + "source": 406, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 51, + "source": 406, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 52, + "source": 406, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 53, + "source": 406, + "pc": [ + 84, + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 54, + "source": 406, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 55, + "source": 406, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 56, + "source": 406, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 57, + "source": 406, + "pc": [ + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 58, + "source": 406, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 59, + "source": 406, + "pc": [ + 109 + ] + }, + { + "teal": 60, + "source": 406, + "pc": [ + 110 + ] + }, + { + "teal": 61, + "source": 406, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 65, + "source": 408, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 66, + "source": 408, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 67, + "source": 408, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 68, + "source": 408, + "pc": [ + 119, + 120, + 121 + ] + }, + { + "teal": 69, + "source": 408, + "pc": [ + 122, + 123 + ] + }, + { + "teal": 70, + "source": 408, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 74, + "source": 409, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 75, + "source": 409, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 76, + "source": 409, + "pc": [ + 130 + ] + }, + { + "teal": 77, + "source": 409, + "pc": [ + 131 + ] + }, + { + "teal": 78, + "source": 409, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 79, + "source": 409, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 80, + "source": 409, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 81, + "source": 409, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 82, + "source": 409, + "pc": [ + 140 + ] + }, + { + "teal": 83, + "source": 409, + "pc": [ + 141 + ] + }, + { + "teal": 84, + "source": 409, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 85, + "source": 409, + "pc": [ + 144 + ] + }, + { + "teal": 86, + "source": 409, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 87, + "source": 409, + "pc": [ + 147 + ] + }, + { + "teal": 88, + "source": 409, + "pc": [ + 148 + ] + }, + { + "teal": 89, + "source": 409, + "pc": [ + 149 + ] + }, + { + "teal": 90, + "source": 409, + "pc": [ + 150 + ] + }, + { + "teal": 91, + "source": 409, + "pc": [ + 151 + ] + }, + { + "teal": 92, + "source": 409, + "pc": [ + 152 + ] + }, + { + "teal": 93, + "source": 409, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 94, + "source": 409, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 95, + "source": 409, + "pc": [ + 157 + ] + }, + { + "teal": 96, + "source": 409, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 97, + "source": 409, + "pc": [ + 160 + ] + }, + { + "teal": 98, + "source": 409, + "pc": [ + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168 + ] + }, + { + "teal": 99, + "source": 409, + "pc": [ + 169 + ] + }, + { + "teal": 100, + "source": 409, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 101, + "source": 409, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 102, + "source": 409, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 103, + "source": 409, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 104, + "source": 409, + "pc": [ + 178 + ] + }, + { + "teal": 105, + "source": 409, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 106, + "source": 409, + "pc": [ + 181 + ] + }, + { + "teal": 107, + "source": 409, + "pc": [ + 182 + ] + }, + { + "teal": 108, + "source": 409, + "pc": [ + 183 + ] + }, + { + "teal": 109, + "source": 409, + "pc": [ + 184 + ] + }, + { + "teal": 110, + "source": 409, + "pc": [ + 185, + 186 + ] + }, + { + "teal": 111, + "source": 409, + "pc": [ + 187, + 188, + 189 + ] + }, + { + "teal": 112, + "source": 409, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 113, + "source": 409, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 114, + "source": 409, + "pc": [ + 194 + ] + }, + { + "teal": 115, + "source": 409, + "pc": [ + 195 + ] + }, + { + "teal": 116, + "source": 409, + "pc": [ + 196, + 197, + 198 + ] + }, + { + "teal": 117, + "source": 409, + "pc": [ + 199, + 200 + ] + }, + { + "teal": 118, + "source": 409, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 119, + "source": 409, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 120, + "source": 409, + "pc": [ + 205 + ] + }, + { + "teal": 121, + "source": 409, + "pc": [ + 206, + 207, + 208 + ] + }, + { + "teal": 122, + "source": 409, + "pc": [ + 209, + 210 + ] + }, + { + "teal": 123, + "source": 409, + "pc": [ + 211, + 212 + ] + }, + { + "teal": 124, + "source": 409, + "pc": [ + 213 + ] + }, + { + "teal": 125, + "source": 409, + "pc": [ + 214 + ] + }, + { + "teal": 126, + "source": 409, + "pc": [ + 215, + 216, + 217 + ] + }, + { + "teal": 127, + "source": 409, + "pc": [ + 218, + 219 + ] + }, + { + "teal": 128, + "source": 409, + "pc": [ + 220, + 221 + ] + }, + { + "teal": 132, + "source": 410, + "pc": [ + 222, + 223 + ] + }, + { + "teal": 133, + "source": 410, + "pc": [ + 224, + 225 + ] + }, + { + "teal": 134, + "source": 410, + "pc": [ + 226, + 227 + ] + }, + { + "teal": 135, + "source": 410, + "pc": [ + 228 + ] + }, + { + "teal": 136, + "source": 410, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 137, + "source": 410, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 138, + "source": 410, + "pc": [ + 233, + 234 + ] + }, + { + "teal": 139, + "source": 410, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 140, + "source": 410, + "pc": [ + 237 + ] + }, + { + "teal": 141, + "source": 410, + "pc": [ + 238 + ] + }, + { + "teal": 142, + "source": 410, + "pc": [ + 239, + 240 + ] + }, + { + "teal": 143, + "source": 410, + "pc": [ + 241 + ] + }, + { + "teal": 144, + "source": 410, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 145, + "source": 410, + "pc": [ + 244 + ] + }, + { + "teal": 146, + "source": 410, + "pc": [ + 245 + ] + }, + { + "teal": 147, + "source": 410, + "pc": [ + 246 + ] + }, + { + "teal": 148, + "source": 410, + "pc": [ + 247 + ] + }, + { + "teal": 149, + "source": 410, + "pc": [ + 248 + ] + }, + { + "teal": 150, + "source": 410, + "pc": [ + 249 + ] + }, + { + "teal": 151, + "source": 410, + "pc": [ + 250, + 251 + ] + }, + { + "teal": 152, + "source": 410, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 153, + "source": 410, + "pc": [ + 254 + ] + }, + { + "teal": 154, + "source": 410, + "pc": [ + 255, + 256 + ] + }, + { + "teal": 155, + "source": 410, + "pc": [ + 257 + ] + }, + { + "teal": 156, + "source": 410, + "pc": [ + 258, + 259, + 260, + 261, + 262, + 263 + ] + }, + { + "teal": 157, + "source": 410, + "pc": [ + 264 + ] + }, + { + "teal": 158, + "source": 410, + "pc": [ + 265, + 266 + ] + }, + { + "teal": 159, + "source": 410, + "pc": [ + 267, + 268 + ] + }, + { + "teal": 160, + "source": 410, + "pc": [ + 269, + 270 + ] + }, + { + "teal": 161, + "source": 410, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 162, + "source": 410, + "pc": [ + 273 + ] + }, + { + "teal": 163, + "source": 410, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 164, + "source": 410, + "pc": [ + 276 + ] + }, + { + "teal": 165, + "source": 410, + "pc": [ + 277 + ] + }, + { + "teal": 166, + "source": 410, + "pc": [ + 278 + ] + }, + { + "teal": 167, + "source": 410, + "pc": [ + 279 + ] + }, + { + "teal": 168, + "source": 410, + "pc": [ + 280, + 281 + ] + }, + { + "teal": 169, + "source": 410, + "pc": [ + 282, + 283, + 284 + ] + }, + { + "teal": 170, + "source": 410, + "pc": [ + 285, + 286 + ] + }, + { + "teal": 171, + "source": 410, + "pc": [ + 287, + 288 + ] + }, + { + "teal": 172, + "source": 410, + "pc": [ + 289 + ] + }, + { + "teal": 173, + "source": 410, + "pc": [ + 290 + ] + }, + { + "teal": 174, + "source": 410, + "pc": [ + 291, + 292, + 293 + ] + }, + { + "teal": 175, + "source": 410, + "pc": [ + 294, + 295 + ] + }, + { + "teal": 176, + "source": 410, + "pc": [ + 296, + 297 + ] + }, + { + "teal": 177, + "source": 410, + "pc": [ + 298, + 299 + ] + }, + { + "teal": 178, + "source": 410, + "pc": [ + 300 + ] + }, + { + "teal": 179, + "source": 410, + "pc": [ + 301, + 302, + 303 + ] + }, + { + "teal": 180, + "source": 410, + "pc": [ + 304, + 305 + ] + }, + { + "teal": 181, + "source": 410, + "pc": [ + 306, + 307 + ] + }, + { + "teal": 185, + "source": 411, + "pc": [ + 308, + 309 + ] + }, + { + "teal": 186, + "source": 411, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 187, + "source": 411, + "pc": [ + 312, + 313 + ] + }, + { + "teal": 188, + "source": 411, + "pc": [ + 314 + ] + }, + { + "teal": 189, + "source": 411, + "pc": [ + 315, + 316 + ] + }, + { + "teal": 190, + "source": 411, + "pc": [ + 317, + 318 + ] + }, + { + "teal": 191, + "source": 411, + "pc": [ + 319, + 320 + ] + }, + { + "teal": 192, + "source": 411, + "pc": [ + 321, + 322 + ] + }, + { + "teal": 193, + "source": 411, + "pc": [ + 323 + ] + }, + { + "teal": 194, + "source": 411, + "pc": [ + 324 + ] + }, + { + "teal": 195, + "source": 411, + "pc": [ + 325, + 326 + ] + }, + { + "teal": 196, + "source": 411, + "pc": [ + 327 + ] + }, + { + "teal": 197, + "source": 411, + "pc": [ + 328, + 329 + ] + }, + { + "teal": 198, + "source": 411, + "pc": [ + 330 + ] + }, + { + "teal": 199, + "source": 411, + "pc": [ + 331 + ] + }, + { + "teal": 200, + "source": 411, + "pc": [ + 332 + ] + }, + { + "teal": 201, + "source": 411, + "pc": [ + 333 + ] + }, + { + "teal": 202, + "source": 411, + "pc": [ + 334 + ] + }, + { + "teal": 203, + "source": 411, + "pc": [ + 335 + ] + }, + { + "teal": 204, + "source": 411, + "pc": [ + 336, + 337 + ] + }, + { + "teal": 205, + "source": 411, + "pc": [ + 338, + 339 + ] + }, + { + "teal": 206, + "source": 411, + "pc": [ + 340 + ] + }, + { + "teal": 207, + "source": 411, + "pc": [ + 341, + 342 + ] + }, + { + "teal": 208, + "source": 411, + "pc": [ + 343 + ] + }, + { + "teal": 209, + "source": 411, + "pc": [ + 344, + 345, + 346, + 347, + 348, + 349, + 350, + 351 + ] + }, + { + "teal": 210, + "source": 411, + "pc": [ + 352 + ] + }, + { + "teal": 211, + "source": 411, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 212, + "source": 411, + "pc": [ + 355, + 356 + ] + }, + { + "teal": 213, + "source": 411, + "pc": [ + 357, + 358 + ] + }, + { + "teal": 214, + "source": 411, + "pc": [ + 359, + 360 + ] + }, + { + "teal": 215, + "source": 411, + "pc": [ + 361 + ] + }, + { + "teal": 216, + "source": 411, + "pc": [ + 362, + 363 + ] + }, + { + "teal": 217, + "source": 411, + "pc": [ + 364 + ] + }, + { + "teal": 218, + "source": 411, + "pc": [ + 365 + ] + }, + { + "teal": 219, + "source": 411, + "pc": [ + 366 + ] + }, + { + "teal": 220, + "source": 411, + "pc": [ + 367 + ] + }, + { + "teal": 221, + "source": 411, + "pc": [ + 368, + 369 + ] + }, + { + "teal": 222, + "source": 411, + "pc": [ + 370, + 371, + 372 + ] + }, + { + "teal": 223, + "source": 411, + "pc": [ + 373, + 374 + ] + }, + { + "teal": 224, + "source": 411, + "pc": [ + 375, + 376 + ] + }, + { + "teal": 225, + "source": 411, + "pc": [ + 377 + ] + }, + { + "teal": 226, + "source": 411, + "pc": [ + 378 + ] + }, + { + "teal": 227, + "source": 411, + "pc": [ + 379, + 380, + 381 + ] + }, + { + "teal": 228, + "source": 411, + "pc": [ + 382, + 383 + ] + }, + { + "teal": 229, + "source": 411, + "pc": [ + 384, + 385 + ] + }, + { + "teal": 233, + "source": 412, + "pc": [ + 386, + 387 + ] + }, + { + "teal": 234, + "source": 412, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 235, + "source": 412, + "pc": [ + 390, + 391 + ] + }, + { + "teal": 236, + "source": 412, + "pc": [ + 392 + ] + }, + { + "teal": 237, + "source": 412, + "pc": [ + 393, + 394 + ] + }, + { + "teal": 238, + "source": 412, + "pc": [ + 395, + 396 + ] + }, + { + "teal": 239, + "source": 412, + "pc": [ + 397, + 398 + ] + }, + { + "teal": 240, + "source": 412, + "pc": [ + 399, + 400 + ] + }, + { + "teal": 241, + "source": 412, + "pc": [ + 401 + ] + }, + { + "teal": 242, + "source": 412, + "pc": [ + 402 + ] + }, + { + "teal": 243, + "source": 412, + "pc": [ + 403, + 404 + ] + }, + { + "teal": 244, + "source": 412, + "pc": [ + 405 + ] + }, + { + "teal": 245, + "source": 412, + "pc": [ + 406, + 407 + ] + }, + { + "teal": 246, + "source": 412, + "pc": [ + 408 + ] + }, + { + "teal": 247, + "source": 412, + "pc": [ + 409 + ] + }, + { + "teal": 248, + "source": 412, + "pc": [ + 410 + ] + }, + { + "teal": 249, + "source": 412, + "pc": [ + 411 + ] + }, + { + "teal": 250, + "source": 412, + "pc": [ + 412 + ] + }, + { + "teal": 251, + "source": 412, + "pc": [ + 413 + ] + }, + { + "teal": 252, + "source": 412, + "pc": [ + 414, + 415 + ] + }, + { + "teal": 253, + "source": 412, + "pc": [ + 416, + 417 + ] + }, + { + "teal": 254, + "source": 412, + "pc": [ + 418 + ] + }, + { + "teal": 255, + "source": 412, + "pc": [ + 419, + 420 + ] + }, + { + "teal": 256, + "source": 412, + "pc": [ + 421 + ] + }, + { + "teal": 257, + "source": 412, + "pc": [ + 422, + 423, + 424, + 425, + 426, + 427 + ] + }, + { + "teal": 258, + "source": 412, + "pc": [ + 428 + ] + }, + { + "teal": 259, + "source": 412, + "pc": [ + 429, + 430 + ] + }, + { + "teal": 260, + "source": 412, + "pc": [ + 431, + 432 + ] + }, + { + "teal": 261, + "source": 412, + "pc": [ + 433, + 434 + ] + }, + { + "teal": 262, + "source": 412, + "pc": [ + 435, + 436 + ] + }, + { + "teal": 263, + "source": 412, + "pc": [ + 437 + ] + }, + { + "teal": 264, + "source": 412, + "pc": [ + 438, + 439 + ] + }, + { + "teal": 265, + "source": 412, + "pc": [ + 440 + ] + }, + { + "teal": 266, + "source": 412, + "pc": [ + 441 + ] + }, + { + "teal": 267, + "source": 412, + "pc": [ + 442 + ] + }, + { + "teal": 268, + "source": 412, + "pc": [ + 443 + ] + }, + { + "teal": 269, + "source": 412, + "pc": [ + 444, + 445 + ] + }, + { + "teal": 270, + "source": 412, + "pc": [ + 446, + 447, + 448 + ] + }, + { + "teal": 271, + "source": 412, + "pc": [ + 449, + 450 + ] + }, + { + "teal": 272, + "source": 412, + "pc": [ + 451, + 452 + ] + }, + { + "teal": 276, + "source": 414, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 279, + "source": 405, + "pc": [ + 455, + 456 + ] + }, + { + "teal": 280, + "source": 405, + "pc": [ + 457 + ] + }, + { + "teal": 283, + "source": 404, + "pc": [ + 458 + ] + }, + { + "teal": 284, + "source": 404, + "pc": [ + 459 + ] + }, + { + "teal": 287, + "source": 404, + "pc": [ + 460, + 461, + 462, + 463, + 464, + 465 + ] + }, + { + "teal": 288, + "source": 404, + "pc": [ + 466, + 467, + 468 + ] + }, + { + "teal": 289, + "source": 404, + "pc": [ + 469, + 470, + 471, + 472 + ] + }, + { + "teal": 292, + "source": 404, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 473 + ] + }, + { + "teal": 295, + "source": 404, + "pc": [ + 474, + 475, + 476, + 477, + 478, + 479 + ] + }, + { + "teal": 296, + "source": 404, + "pc": [ + 480, + 481, + 482 + ] + }, + { + "teal": 297, + "source": 404, + "pc": [ + 483, + 484, + 485, + 486 + ] + }, + { + "teal": 300, + "source": 404, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 487 + ] + }, + { + "teal": 303, + "source": 404, + "pc": [ + 488, + 489, + 490 + ] + }, + { + "teal": 304, + "source": 404, + "pc": [ + 491, + 492 + ] + }, + { + "teal": 305, + "source": 404, + "pc": [ + 493, + 494 + ] + }, + { + "teal": 306, + "source": 404, + "pc": [ + 495 + ] + }, + { + "teal": 307, + "source": 404, + "pc": [ + 496, + 497 + ] + }, + { + "teal": 308, + "source": 404, + "pc": [ + 498, + 499 + ] + }, + { + "teal": 309, + "source": 404, + "pc": [ + 500 + ] + }, + { + "teal": 312, + "source": 404, + "pc": [ + 501, + 502, + 503 + ] + }, + { + "teal": 313, + "source": 404, + "pc": [ + 504, + 505 + ] + }, + { + "teal": 314, + "source": 404, + "pc": [ + 506, + 507 + ] + }, + { + "teal": 315, + "source": 404, + "pc": [ + 508 + ] + }, + { + "teal": 316, + "source": 404, + "pc": [ + 509, + 510 + ] + }, + { + "teal": 317, + "source": 404, + "pc": [ + 511, + 512 + ] + }, + { + "teal": 318, + "source": 404, + "pc": [ + 513 + ] + }, + { + "teal": 319, + "source": 404, + "pc": [ + 514 + ] + }, + { + "teal": 320, + "source": 404, + "pc": [ + 515, + 516 + ] + }, + { + "teal": 321, + "source": 404, + "pc": [ + 517 + ] + }, + { + "teal": 322, + "source": 404, + "pc": [ + 518 + ] + }, + { + "teal": 323, + "source": 404, + "pc": [ + 519 + ] + }, + { + "teal": 324, + "source": 404, + "pc": [ + 520, + 521, + 522 + ] + }, + { + "teal": 325, + "source": 404, + "pc": [ + 523, + 524 + ] + }, + { + "teal": 326, + "source": 404, + "pc": [ + 525, + 526 + ] + }, + { + "teal": 327, + "source": 404, + "pc": [ + 527 + ] + }, + { + "teal": 328, + "source": 404, + "pc": [ + 528 + ] + }, + { + "teal": 329, + "source": 404, + "pc": [ + 529, + 530 + ] + }, + { + "teal": 330, + "source": 404, + "pc": [ + 531, + 532 + ] + }, + { + "teal": 331, + "source": 404, + "pc": [ + 533, + 534 + ] + }, + { + "teal": 332, + "source": 404, + "pc": [ + 535, + 536 + ] + }, + { + "teal": 333, + "source": 404, + "pc": [ + 537 + ] + }, + { + "teal": 336, + "source": 404, + "pc": [ + 538, + 539, + 540 + ] + }, + { + "teal": 337, + "source": 404, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 338, + "source": 404, + "pc": [ + 543, + 544 + ] + }, + { + "teal": 339, + "source": 404, + "pc": [ + 545, + 546 + ] + }, + { + "teal": 340, + "source": 404, + "pc": [ + 547 + ] + }, + { + "teal": 341, + "source": 404, + "pc": [ + 548, + 549 + ] + }, + { + "teal": 342, + "source": 404, + "pc": [ + 550, + 551, + 552 + ] + }, + { + "teal": 343, + "source": 404, + "pc": [ + 553 + ] + }, + { + "teal": 344, + "source": 404, + "pc": [ + 554, + 555, + 556 + ] + }, + { + "teal": 347, + "source": 404, + "pc": [ + 557 + ] + }, + { + "teal": 348, + "source": 404, + "pc": [ + 558 + ] + }, + { + "teal": 351, + "source": 404, + "pc": [ + 559 + ] + }, + { + "teal": 352, + "source": 404, + "pc": [ + 560, + 561, + 562 + ] + }, + { + "teal": 353, + "source": 404, + "pc": [ + 563, + 564 + ] + }, + { + "teal": 354, + "source": 404, + "pc": [ + 565 + ] + }, + { + "teal": 355, + "source": 404, + "pc": [ + 566, + 567 + ] + }, + { + "teal": 356, + "source": 404, + "pc": [ + 568 + ] + }, + { + "teal": 357, + "source": 404, + "pc": [ + 569 + ] + }, + { + "teal": 358, + "source": 404, + "pc": [ + 570, + 571 + ] + }, + { + "teal": 359, + "source": 404, + "pc": [ + 572 + ] + }, + { + "teal": 362, + "source": 404, + "pc": [ + 573, + 574 + ] + }, + { + "teal": 363, + "source": 404, + "pc": [ + 575 + ] + }, + { + "teal": 364, + "source": 404, + "pc": [ + 576, + 577 + ] + }, + { + "teal": 365, + "source": 404, + "pc": [ + 578 + ] + }, + { + "teal": 366, + "source": 404, + "pc": [ + 579, + 580, + 581 + ] + }, + { + "teal": 367, + "source": 404, + "pc": [ + 582, + 583 + ] + }, + { + "teal": 368, + "source": 404, + "pc": [ + 584 + ] + }, + { + "teal": 369, + "source": 404, + "pc": [ + 585, + 586 + ] + }, + { + "teal": 370, + "source": 404, + "pc": [ + 587 + ] + }, + { + "teal": 371, + "source": 404, + "pc": [ + 588, + 589 + ] + }, + { + "teal": 372, + "source": 404, + "pc": [ + 590, + 591, + 592 + ] + }, + { + "teal": 375, + "source": 404, + "pc": [ + 593, + 594 + ] + }, + { + "teal": 376, + "source": 404, + "pc": [ + 595, + 596 + ] + }, + { + "teal": 377, + "source": 404, + "pc": [ + 597 + ] + }, + { + "teal": 378, + "source": 404, + "pc": [ + 598 + ] + }, + { + "teal": 379, + "source": 404, + "pc": [ + 599, + 600 + ] + }, + { + "teal": 382, + "source": 404, + "pc": [ + 601 + ] + }, + { + "teal": 383, + "source": 404, + "pc": [ + 602, + 603 + ] + }, + { + "teal": 384, + "source": 404, + "pc": [ + 604 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJblR1cGxlKCkodWludDgsdWludDE2W10sdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUoKTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCnVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDYKCS8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFs5LCBbOF0sIFs3XSwgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwNwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDAwNgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDUKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDA4CgkvLyBhWzBdID0gOTkgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDYzCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQwOQoJLy8gYVsxXSA9IFsxMCwgMTFdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBhMDAwYgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDYKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MTAKCS8vIGFbMl0gPSBbMTIsIDEzXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDMKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMGMwZAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQxMQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDEyCgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDE0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnVwZGF0ZV9keW5hbWljX2hlYWQ6Cglwcm90byAyIDAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfZGlnIC0xIC8vIGR5bmFtaWMgYXJyYXkgb2Zmc2V0CglleHRyYWN0X3VpbnQxNiAvLyBleHRyYWN0IGR5bmFtaWMgYXJyYXkgb2Zmc2V0Cglsb2FkIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWJ6ICpzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2UKCSsgLy8gYWRkIGRpZmZlcmVuY2UgdG8gb2Zmc2V0CgliICplbmRfY2FsY19uZXdfaGVhZAoKKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZToKCXN3YXAKCS0gLy8gc3VidHJhY3QgZGlmZmVyZW5jZSBmcm9tIG9mZmV0CgoqZW5kX2NhbGNfbmV3X2hlYWQ6CglpdG9iIC8vIGNvbnZlcnQgdG8gYnl0ZXMKCWV4dHJhY3QgNiAyIC8vIGNvbnZlcnQgdG8gdWludDE2Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglmcmFtZV9kaWcgLTEgLy8gb2Zmc2V0Cglzd2FwCglyZXBsYWNlMyAvLyB1cGRhdGUgb2Zmc2V0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljQXJyYXlJblR1cGxlKCkodWludDgsdWludDE2W10sdWludDhbXSx1aW50MTZbXSx1aW50OFtdKQoqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZQoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUoKTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCnVwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MDYKCS8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXSA9IFs5LCBbOF0sIFs3XSwgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwNwoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDAwNgoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCWJ5dGUgMHgwMDAxMDUKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDA4CgkvLyBhWzBdID0gOTkgYXMgdWludDw4PgoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJYnl0ZSAweDYzCglyZXBsYWNlMiAwCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQwOQoJLy8gYVsxXSA9IFsxMCwgMTFdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBhMDAwYgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDYKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo0MTAKCS8vIGFbMl0gPSBbMTIsIDEzXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDMKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDEgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMGMwZAoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCB1aW50PDg+W10sIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjQxMQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDEyCgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHVpbnQ8OD5bXSwgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NDE0CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgdWludDw4PltdLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0FycmF5SW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHVpbnQ4W10sdWludDE2W10sdWludDhbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZUR5bmFtaWNBcnJheUluVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKnVwZGF0ZV9keW5hbWljX2hlYWQ6Cglwcm90byAyIDAKCWZyYW1lX2RpZyAtMiAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfZGlnIC0xIC8vIGR5bmFtaWMgYXJyYXkgb2Zmc2V0CglleHRyYWN0X3VpbnQxNiAvLyBleHRyYWN0IGR5bmFtaWMgYXJyYXkgb2Zmc2V0Cglsb2FkIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWJ6ICpzdWJ0cmFjdF9oZWFkX2RpZmZlcmVuY2UKCSsgLy8gYWRkIGRpZmZlcmVuY2UgdG8gb2Zmc2V0CgliICplbmRfY2FsY19uZXdfaGVhZAoKKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZToKCXN3YXAKCS0gLy8gc3VidHJhY3QgZGlmZmVyZW5jZSBmcm9tIG9mZmV0CgoqZW5kX2NhbGNfbmV3X2hlYWQ6CglpdG9iIC8vIGNvbnZlcnQgdG8gYnl0ZXMKCWV4dHJhY3QgNiAyIC8vIGNvbnZlcnQgdG8gdWludDE2Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglmcmFtZV9kaWcgLTEgLy8gb2Zmc2V0Cglzd2FwCglyZXBsYWNlMyAvLyB1cGRhdGUgb2Zmc2V0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJcmV0c3ViCgoqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlOgoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgk8CglibnogKnN3YXBwZWRfZGlmZmVyZW5jZQoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglpbnQgMQoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYiAqZ2V0X2RpZmZlcmVuY2UKCipzd2FwcGVkX2RpZmZlcmVuY2U6Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTIgLy8gbmV3IGVsZW1lbnQKCWxlbiAvLyBsZW5ndGggb2YgbmV3IGVsZW1lbnQKCWludCAwCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgoqZ2V0X2RpZmZlcmVuY2U6CgktIC8vIGdldCBsZW5ndGggZGlmZmVyZW5jZQoJc3RvcmUgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglyZXRzdWI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.approval.teal b/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.approval.teal index 38df746f3..fcd6e83d1 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc32.json b/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc32.json index 4b3e3b1ab..685ec5c2c 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCnVwZGF0ZUR5bmFtaWNFbGVtZW50SW5UdXBsZVdpdGhTYW1lTGVuZ3RoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzAwCgkvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyLCAzLCA0XSwgNSwgWzYsIDcsIDhdLCA5XQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwYSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwNQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwNjA3MDgKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDIKCS8vIGFbMV0gPSBbMTAsIDExLCAxMl0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDMwYTBiMGMKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgoKSh1aW50MTYsdWludDhbXSx1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCnVwZGF0ZUR5bmFtaWNFbGVtZW50SW5UdXBsZVdpdGhTYW1lTGVuZ3RoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzAwCgkvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyLCAzLCA0XSwgNSwgWzYsIDcsIDhdLCA5XQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwYSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwNQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwNjA3MDgKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDIKCS8vIGFbMV0gPSBbMTAsIDExLCAxMl0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDMwYTBiMGMKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgoKSh1aW50MTYsdWludDhbXSx1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc56_draft.json index 7b6180bb9..63363483c 100644 --- a/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateDynamicElementInTupleWithSameLength.arc56_draft.json @@ -60,1309 +60,1312 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 698, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 698, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 698, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 698, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 16, - "source": 698, - "pc": [ - 14 - ] - }, - { - "teal": 17, - "source": 698, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 698, - "pc": [ - 17 - ] - }, - { - "teal": 19, - "source": 698, - "pc": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ] - }, - { - "teal": 23, - "source": 698, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 44 - ] - }, - { - "teal": 28, - "source": 699, - "pc": [ - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 31, - "source": 699, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 32, - "source": 699, - "pc": [ - 54 - ] - }, - { - "teal": 33, - "source": 699, - "pc": [ - 55 - ] - }, - { - "teal": 34, - "source": 699, - "pc": [ - 56 - ] - }, - { - "teal": 35, - "source": 699, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 699, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 42, - "source": 699, - "pc": [ - 61 - ] - }, - { - "teal": 46, - "source": 700, - "pc": [ - 62 - ] - }, - { - "teal": 47, - "source": 700, - "pc": [ - 63 - ] - }, - { - "teal": 48, - "source": 700, - "pc": [ - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 49, - "source": 700, - "pc": [ - 68, - 69, - 70, - 71 - ] - }, - { - "teal": 50, - "source": 700, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 51, - "source": 700, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 52, - "source": 700, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 53, - "source": 700, - "pc": [ - 85, - 86, - 87, - 88 - ] - }, - { - "teal": 54, - "source": 700, - "pc": [ - 89, - 90, - 91 - ] - }, - { - "teal": 55, - "source": 700, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97, - 98 - ] - }, - { - "teal": 56, - "source": 700, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 57, - "source": 700, - "pc": [ - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 58, - "source": 700, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 59, - "source": 700, - "pc": [ - 109 - ] - }, - { - "teal": 60, - "source": 700, - "pc": [ - 110 - ] - }, - { - "teal": 61, - "source": 700, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 65, - "source": 702, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 66, - "source": 702, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 67, - "source": 702, - "pc": [ - 117 - ] - }, - { - "teal": 68, - "source": 702, - "pc": [ - 118 - ] - }, - { - "teal": 69, - "source": 702, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 70, - "source": 702, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 71, - "source": 702, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 72, - "source": 702, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 73, - "source": 702, - "pc": [ - 127 - ] - }, - { - "teal": 74, - "source": 702, - "pc": [ - 128 - ] - }, - { - "teal": 75, - "source": 702, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 76, - "source": 702, - "pc": [ - 131 - ] - }, - { - "teal": 77, - "source": 702, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 78, - "source": 702, - "pc": [ - 134 - ] - }, - { - "teal": 79, - "source": 702, - "pc": [ - 135 - ] - }, - { - "teal": 80, - "source": 702, - "pc": [ - 136 - ] - }, - { - "teal": 81, - "source": 702, - "pc": [ - 137 - ] - }, - { - "teal": 82, - "source": 702, - "pc": [ - 138 - ] - }, - { - "teal": 83, - "source": 702, - "pc": [ - 139 - ] - }, - { - "teal": 84, - "source": 702, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 85, - "source": 702, - "pc": [ - 142, - 143 - ] - }, - { - "teal": 86, - "source": 702, - "pc": [ - 144 - ] - }, - { - "teal": 87, - "source": 702, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 88, - "source": 702, - "pc": [ - 147 - ] - }, - { - "teal": 89, - "source": 702, - "pc": [ - 148, - 149, - 150, - 151, - 152, - 153, - 154 - ] - }, - { - "teal": 90, - "source": 702, - "pc": [ - 155 - ] - }, - { - "teal": 91, - "source": 702, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 92, - "source": 702, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 93, - "source": 702, - "pc": [ - 160, - 161 - ] - }, - { - "teal": 94, - "source": 702, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 95, - "source": 702, - "pc": [ - 164 - ] - }, - { - "teal": 96, - "source": 702, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 97, - "source": 702, - "pc": [ - 167 - ] - }, - { - "teal": 98, - "source": 702, - "pc": [ - 168 - ] - }, - { - "teal": 99, - "source": 702, - "pc": [ - 169 - ] - }, - { - "teal": 100, - "source": 702, - "pc": [ - 170 - ] - }, - { - "teal": 101, - "source": 702, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 102, - "source": 702, - "pc": [ - 173, - 174, - 175 - ] - }, - { - "teal": 103, - "source": 702, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 104, - "source": 702, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 105, - "source": 702, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 106, - "source": 702, - "pc": [ - 182 - ] - }, - { - "teal": 107, - "source": 702, - "pc": [ - 183, - 184, - 185 - ] - }, - { - "teal": 108, - "source": 702, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 109, - "source": 702, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 113, - "source": 704, - "pc": [ - 190, - 191 - ] - }, - { - "teal": 116, - "source": 699, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 117, - "source": 699, - "pc": [ - 194 - ] - }, - { - "teal": 120, - "source": 698, - "pc": [ - 195 - ] - }, - { - "teal": 121, - "source": 698, - "pc": [ - 196 - ] - }, - { - "teal": 124, - "source": 698, - "pc": [ - 197, - 198, - 199, - 200, - 201, - 202 - ] - }, - { - "teal": 125, - "source": 698, - "pc": [ - 203, - 204, - 205 - ] - }, - { - "teal": 126, - "source": 698, - "pc": [ - 206, - 207, - 208, - 209 - ] - }, - { - "teal": 129, - "source": 698, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 210 - ] - }, - { - "teal": 132, - "source": 698, - "pc": [ - 211, - 212, - 213, - 214, - 215, - 216 - ] - }, - { - "teal": 133, - "source": 698, - "pc": [ - 217, - 218, - 219 - ] - }, - { - "teal": 134, - "source": 698, - "pc": [ - 220, - 221, - 222, - 223 - ] - }, - { - "teal": 137, - "source": 698, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 224 - ] - }, - { - "teal": 140, - "source": 698, - "pc": [ - 225, - 226, - 227 - ] - }, - { - "teal": 141, - "source": 698, - "pc": [ - 228, - 229 - ] - }, - { - "teal": 142, - "source": 698, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 143, - "source": 698, - "pc": [ - 232 - ] - }, - { - "teal": 144, - "source": 698, - "pc": [ - 233, - 234 - ] - }, - { - "teal": 145, - "source": 698, - "pc": [ - 235, - 236 - ] - }, - { - "teal": 146, - "source": 698, - "pc": [ - 237 - ] - }, - { - "teal": 149, - "source": 698, - "pc": [ - 238, - 239, - 240 - ] - }, - { - "teal": 150, - "source": 698, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 151, - "source": 698, - "pc": [ - 243, - 244 - ] - }, - { - "teal": 152, - "source": 698, - "pc": [ - 245 - ] - }, - { - "teal": 153, - "source": 698, - "pc": [ - 246, - 247 - ] - }, - { - "teal": 154, - "source": 698, - "pc": [ - 248, - 249 - ] - }, - { - "teal": 155, - "source": 698, - "pc": [ - 250 - ] - }, - { - "teal": 156, - "source": 698, - "pc": [ - 251 - ] - }, - { - "teal": 157, - "source": 698, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 158, - "source": 698, - "pc": [ - 254 - ] - }, - { - "teal": 159, - "source": 698, - "pc": [ - 255 - ] - }, - { - "teal": 160, - "source": 698, - "pc": [ - 256 - ] - }, - { - "teal": 161, - "source": 698, - "pc": [ - 257, - 258, - 259 - ] - }, - { - "teal": 162, - "source": 698, - "pc": [ - 260, - 261 - ] - }, - { - "teal": 163, - "source": 698, - "pc": [ - 262, - 263 - ] - }, - { - "teal": 164, - "source": 698, - "pc": [ - 264 - ] - }, - { - "teal": 165, - "source": 698, - "pc": [ - 265 - ] - }, - { - "teal": 166, - "source": 698, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 167, - "source": 698, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 168, - "source": 698, - "pc": [ - 270, - 271 - ] - }, - { - "teal": 169, - "source": 698, - "pc": [ - 272, - 273 - ] - }, - { - "teal": 170, - "source": 698, - "pc": [ - 274 - ] - }, - { - "teal": 173, - "source": 698, - "pc": [ - 275, - 276, - 277 - ] - }, - { - "teal": 174, - "source": 698, - "pc": [ - 278, - 279 - ] - }, - { - "teal": 175, - "source": 698, - "pc": [ - 280, - 281 - ] - }, - { - "teal": 176, - "source": 698, - "pc": [ - 282, - 283 - ] - }, - { - "teal": 177, - "source": 698, - "pc": [ - 284 - ] - }, - { - "teal": 178, - "source": 698, - "pc": [ - 285, - 286 - ] - }, - { - "teal": 179, - "source": 698, - "pc": [ - 287, - 288, - 289 - ] - }, - { - "teal": 180, - "source": 698, - "pc": [ - 290 - ] - }, - { - "teal": 181, - "source": 698, - "pc": [ - 291, - 292, - 293 - ] - }, - { - "teal": 184, - "source": 698, - "pc": [ - 294 - ] - }, - { - "teal": 185, - "source": 698, - "pc": [ - 295 - ] - }, - { - "teal": 188, - "source": 698, - "pc": [ - 296 - ] - }, - { - "teal": 189, - "source": 698, - "pc": [ - 297, - 298, - 299 - ] - }, - { - "teal": 190, - "source": 698, - "pc": [ - 300, - 301 - ] - }, - { - "teal": 191, - "source": 698, - "pc": [ - 302 - ] - }, - { - "teal": 192, - "source": 698, - "pc": [ - 303, - 304 - ] - }, - { - "teal": 193, - "source": 698, - "pc": [ - 305 - ] - }, - { - "teal": 194, - "source": 698, - "pc": [ - 306 - ] - }, - { - "teal": 195, - "source": 698, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 196, - "source": 698, - "pc": [ - 309 - ] - }, - { - "teal": 199, - "source": 698, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 200, - "source": 698, - "pc": [ - 312 - ] - }, - { - "teal": 201, - "source": 698, - "pc": [ - 313, - 314 - ] - }, - { - "teal": 202, - "source": 698, - "pc": [ - 315 - ] - }, - { - "teal": 203, - "source": 698, - "pc": [ - 316, - 317, - 318 - ] - }, - { - "teal": 204, - "source": 698, - "pc": [ - 319, - 320 - ] - }, - { - "teal": 205, - "source": 698, - "pc": [ - 321 - ] - }, - { - "teal": 206, - "source": 698, - "pc": [ - 322, - 323 - ] - }, - { - "teal": 207, - "source": 698, - "pc": [ - 324 - ] - }, - { - "teal": 208, - "source": 698, - "pc": [ - 325, - 326 - ] - }, - { - "teal": 209, - "source": 698, - "pc": [ - 327, - 328, - 329 - ] - }, - { - "teal": 212, - "source": 698, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 213, - "source": 698, - "pc": [ - 332, - 333 - ] - }, - { - "teal": 214, - "source": 698, - "pc": [ - 334 - ] - }, - { - "teal": 215, - "source": 698, - "pc": [ - 335 - ] - }, - { - "teal": 216, - "source": 698, - "pc": [ - 336, - 337 - ] - }, - { - "teal": 219, - "source": 698, - "pc": [ - 338 - ] - }, - { - "teal": 220, - "source": 698, - "pc": [ - 339, - 340 - ] - }, - { - "teal": 221, - "source": 698, - "pc": [ - 341 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 698, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 698, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 698, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 698, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 16, + "source": 698, + "pc": [ + 14 + ] + }, + { + "teal": 17, + "source": 698, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 698, + "pc": [ + 17 + ] + }, + { + "teal": 19, + "source": 698, + "pc": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "teal": 23, + "source": 698, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 44 + ] + }, + { + "teal": 28, + "source": 699, + "pc": [ + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 31, + "source": 699, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 32, + "source": 699, + "pc": [ + 54 + ] + }, + { + "teal": 33, + "source": 699, + "pc": [ + 55 + ] + }, + { + "teal": 34, + "source": 699, + "pc": [ + 56 + ] + }, + { + "teal": 35, + "source": 699, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 699, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 42, + "source": 699, + "pc": [ + 61 + ] + }, + { + "teal": 46, + "source": 700, + "pc": [ + 62 + ] + }, + { + "teal": 47, + "source": 700, + "pc": [ + 63 + ] + }, + { + "teal": 48, + "source": 700, + "pc": [ + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 49, + "source": 700, + "pc": [ + 68, + 69, + 70, + 71 + ] + }, + { + "teal": 50, + "source": 700, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 51, + "source": 700, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 52, + "source": 700, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 53, + "source": 700, + "pc": [ + 85, + 86, + 87, + 88 + ] + }, + { + "teal": 54, + "source": 700, + "pc": [ + 89, + 90, + 91 + ] + }, + { + "teal": 55, + "source": 700, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97, + 98 + ] + }, + { + "teal": 56, + "source": 700, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 57, + "source": 700, + "pc": [ + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 58, + "source": 700, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 59, + "source": 700, + "pc": [ + 109 + ] + }, + { + "teal": 60, + "source": 700, + "pc": [ + 110 + ] + }, + { + "teal": 61, + "source": 700, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 65, + "source": 702, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 66, + "source": 702, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 67, + "source": 702, + "pc": [ + 117 + ] + }, + { + "teal": 68, + "source": 702, + "pc": [ + 118 + ] + }, + { + "teal": 69, + "source": 702, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 70, + "source": 702, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 71, + "source": 702, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 72, + "source": 702, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 73, + "source": 702, + "pc": [ + 127 + ] + }, + { + "teal": 74, + "source": 702, + "pc": [ + 128 + ] + }, + { + "teal": 75, + "source": 702, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 76, + "source": 702, + "pc": [ + 131 + ] + }, + { + "teal": 77, + "source": 702, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 78, + "source": 702, + "pc": [ + 134 + ] + }, + { + "teal": 79, + "source": 702, + "pc": [ + 135 + ] + }, + { + "teal": 80, + "source": 702, + "pc": [ + 136 + ] + }, + { + "teal": 81, + "source": 702, + "pc": [ + 137 + ] + }, + { + "teal": 82, + "source": 702, + "pc": [ + 138 + ] + }, + { + "teal": 83, + "source": 702, + "pc": [ + 139 + ] + }, + { + "teal": 84, + "source": 702, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 85, + "source": 702, + "pc": [ + 142, + 143 + ] + }, + { + "teal": 86, + "source": 702, + "pc": [ + 144 + ] + }, + { + "teal": 87, + "source": 702, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 88, + "source": 702, + "pc": [ + 147 + ] + }, + { + "teal": 89, + "source": 702, + "pc": [ + 148, + 149, + 150, + 151, + 152, + 153, + 154 + ] + }, + { + "teal": 90, + "source": 702, + "pc": [ + 155 + ] + }, + { + "teal": 91, + "source": 702, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 92, + "source": 702, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 93, + "source": 702, + "pc": [ + 160, + 161 + ] + }, + { + "teal": 94, + "source": 702, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 95, + "source": 702, + "pc": [ + 164 + ] + }, + { + "teal": 96, + "source": 702, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 97, + "source": 702, + "pc": [ + 167 + ] + }, + { + "teal": 98, + "source": 702, + "pc": [ + 168 + ] + }, + { + "teal": 99, + "source": 702, + "pc": [ + 169 + ] + }, + { + "teal": 100, + "source": 702, + "pc": [ + 170 + ] + }, + { + "teal": 101, + "source": 702, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 102, + "source": 702, + "pc": [ + 173, + 174, + 175 + ] + }, + { + "teal": 103, + "source": 702, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 104, + "source": 702, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 105, + "source": 702, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 106, + "source": 702, + "pc": [ + 182 + ] + }, + { + "teal": 107, + "source": 702, + "pc": [ + 183, + 184, + 185 + ] + }, + { + "teal": 108, + "source": 702, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 109, + "source": 702, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 113, + "source": 704, + "pc": [ + 190, + 191 + ] + }, + { + "teal": 116, + "source": 699, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 117, + "source": 699, + "pc": [ + 194 + ] + }, + { + "teal": 120, + "source": 698, + "pc": [ + 195 + ] + }, + { + "teal": 121, + "source": 698, + "pc": [ + 196 + ] + }, + { + "teal": 124, + "source": 698, + "pc": [ + 197, + 198, + 199, + 200, + 201, + 202 + ] + }, + { + "teal": 125, + "source": 698, + "pc": [ + 203, + 204, + 205 + ] + }, + { + "teal": 126, + "source": 698, + "pc": [ + 206, + 207, + 208, + 209 + ] + }, + { + "teal": 129, + "source": 698, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 210 + ] + }, + { + "teal": 132, + "source": 698, + "pc": [ + 211, + 212, + 213, + 214, + 215, + 216 + ] + }, + { + "teal": 133, + "source": 698, + "pc": [ + 217, + 218, + 219 + ] + }, + { + "teal": 134, + "source": 698, + "pc": [ + 220, + 221, + 222, + 223 + ] + }, + { + "teal": 137, + "source": 698, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 224 + ] + }, + { + "teal": 140, + "source": 698, + "pc": [ + 225, + 226, + 227 + ] + }, + { + "teal": 141, + "source": 698, + "pc": [ + 228, + 229 + ] + }, + { + "teal": 142, + "source": 698, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 143, + "source": 698, + "pc": [ + 232 + ] + }, + { + "teal": 144, + "source": 698, + "pc": [ + 233, + 234 + ] + }, + { + "teal": 145, + "source": 698, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 146, + "source": 698, + "pc": [ + 237 + ] + }, + { + "teal": 149, + "source": 698, + "pc": [ + 238, + 239, + 240 + ] + }, + { + "teal": 150, + "source": 698, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 151, + "source": 698, + "pc": [ + 243, + 244 + ] + }, + { + "teal": 152, + "source": 698, + "pc": [ + 245 + ] + }, + { + "teal": 153, + "source": 698, + "pc": [ + 246, + 247 + ] + }, + { + "teal": 154, + "source": 698, + "pc": [ + 248, + 249 + ] + }, + { + "teal": 155, + "source": 698, + "pc": [ + 250 + ] + }, + { + "teal": 156, + "source": 698, + "pc": [ + 251 + ] + }, + { + "teal": 157, + "source": 698, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 158, + "source": 698, + "pc": [ + 254 + ] + }, + { + "teal": 159, + "source": 698, + "pc": [ + 255 + ] + }, + { + "teal": 160, + "source": 698, + "pc": [ + 256 + ] + }, + { + "teal": 161, + "source": 698, + "pc": [ + 257, + 258, + 259 + ] + }, + { + "teal": 162, + "source": 698, + "pc": [ + 260, + 261 + ] + }, + { + "teal": 163, + "source": 698, + "pc": [ + 262, + 263 + ] + }, + { + "teal": 164, + "source": 698, + "pc": [ + 264 + ] + }, + { + "teal": 165, + "source": 698, + "pc": [ + 265 + ] + }, + { + "teal": 166, + "source": 698, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 167, + "source": 698, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 168, + "source": 698, + "pc": [ + 270, + 271 + ] + }, + { + "teal": 169, + "source": 698, + "pc": [ + 272, + 273 + ] + }, + { + "teal": 170, + "source": 698, + "pc": [ + 274 + ] + }, + { + "teal": 173, + "source": 698, + "pc": [ + 275, + 276, + 277 + ] + }, + { + "teal": 174, + "source": 698, + "pc": [ + 278, + 279 + ] + }, + { + "teal": 175, + "source": 698, + "pc": [ + 280, + 281 + ] + }, + { + "teal": 176, + "source": 698, + "pc": [ + 282, + 283 + ] + }, + { + "teal": 177, + "source": 698, + "pc": [ + 284 + ] + }, + { + "teal": 178, + "source": 698, + "pc": [ + 285, + 286 + ] + }, + { + "teal": 179, + "source": 698, + "pc": [ + 287, + 288, + 289 + ] + }, + { + "teal": 180, + "source": 698, + "pc": [ + 290 + ] + }, + { + "teal": 181, + "source": 698, + "pc": [ + 291, + 292, + 293 + ] + }, + { + "teal": 184, + "source": 698, + "pc": [ + 294 + ] + }, + { + "teal": 185, + "source": 698, + "pc": [ + 295 + ] + }, + { + "teal": 188, + "source": 698, + "pc": [ + 296 + ] + }, + { + "teal": 189, + "source": 698, + "pc": [ + 297, + 298, + 299 + ] + }, + { + "teal": 190, + "source": 698, + "pc": [ + 300, + 301 + ] + }, + { + "teal": 191, + "source": 698, + "pc": [ + 302 + ] + }, + { + "teal": 192, + "source": 698, + "pc": [ + 303, + 304 + ] + }, + { + "teal": 193, + "source": 698, + "pc": [ + 305 + ] + }, + { + "teal": 194, + "source": 698, + "pc": [ + 306 + ] + }, + { + "teal": 195, + "source": 698, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 196, + "source": 698, + "pc": [ + 309 + ] + }, + { + "teal": 199, + "source": 698, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 200, + "source": 698, + "pc": [ + 312 + ] + }, + { + "teal": 201, + "source": 698, + "pc": [ + 313, + 314 + ] + }, + { + "teal": 202, + "source": 698, + "pc": [ + 315 + ] + }, + { + "teal": 203, + "source": 698, + "pc": [ + 316, + 317, + 318 + ] + }, + { + "teal": 204, + "source": 698, + "pc": [ + 319, + 320 + ] + }, + { + "teal": 205, + "source": 698, + "pc": [ + 321 + ] + }, + { + "teal": 206, + "source": 698, + "pc": [ + 322, + 323 + ] + }, + { + "teal": 207, + "source": 698, + "pc": [ + 324 + ] + }, + { + "teal": 208, + "source": 698, + "pc": [ + 325, + 326 + ] + }, + { + "teal": 209, + "source": 698, + "pc": [ + 327, + 328, + 329 + ] + }, + { + "teal": 212, + "source": 698, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 213, + "source": 698, + "pc": [ + 332, + 333 + ] + }, + { + "teal": 214, + "source": 698, + "pc": [ + 334 + ] + }, + { + "teal": 215, + "source": 698, + "pc": [ + 335 + ] + }, + { + "teal": 216, + "source": 698, + "pc": [ + 336, + 337 + ] + }, + { + "teal": 219, + "source": 698, + "pc": [ + 338 + ] + }, + { + "teal": 220, + "source": 698, + "pc": [ + 339, + 340 + ] + }, + { + "teal": 221, + "source": 698, + "pc": [ + 341 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCnVwZGF0ZUR5bmFtaWNFbGVtZW50SW5UdXBsZVdpdGhTYW1lTGVuZ3RoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzAwCgkvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyLCAzLCA0XSwgNSwgWzYsIDcsIDhdLCA5XQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwYSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwNQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwNjA3MDgKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDIKCS8vIGFbMV0gPSBbMTAsIDExLCAxMl0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDMwYTBiMGMKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgoKSh1aW50MTYsdWludDhbXSx1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpKHVpbnQxNix1aW50OFtdLHVpbnQxNix1aW50OFtdLHVpbnQxNikKCWNhbGxzdWIgdXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aCgpOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdCnVwZGF0ZUR5bmFtaWNFbGVtZW50SW5UdXBsZVdpdGhTYW1lTGVuZ3RoOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NzAwCgkvLyBhOiBbdWludDE2LCB1aW50PDg+W10sIHVpbnQxNiwgdWludDw4PltdLCB1aW50MTZdID0gWzEsIFsyLCAzLCA0XSwgNSwgWzYsIDcsIDhdLCA5XQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwYSAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwMjAzMDQKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwNQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDMwNjA3MDgKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDIKCS8vIGFbMV0gPSBbMTAsIDExLCAxMl0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2LCB1aW50PDg+W10sIHVpbnQxNl0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDMwYTBiMGMKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo3MDQKCS8vIHJldHVybiBhOwoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNiwgdWludDw4PltdLCB1aW50MTYsIHVpbnQ8OD5bXSwgdWludDE2XQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlRHluYW1pY0VsZW1lbnRJblR1cGxlV2l0aFNhbWVMZW5ndGgoKSh1aW50MTYsdWludDhbXSx1aW50MTYsdWludDhbXSx1aW50MTYpIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVEeW5hbWljRWxlbWVudEluVHVwbGVXaXRoU2FtZUxlbmd0aAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateNamedTuple.approval.teal b/tests/contracts/artifacts/ABITestUpdateNamedTuple.approval.teal index 18551f560..9552d557f 100644 --- a/tests/contracts/artifacts/ABITestUpdateNamedTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateNamedTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc32.json b/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc32.json index b71a5d278..917d1827c 100644 --- a/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVOYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZU5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVOYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5hbWVkVHVwbGUoKTogc3RyaW5nCnVwZGF0ZU5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MTYKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hpPycsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI0CgkvLyBhLmJhciA9ICdIZWxsbyBXb3JsZCEnCglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI2CgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVOYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZU5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVOYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5hbWVkVHVwbGUoKTogc3RyaW5nCnVwZGF0ZU5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MTYKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hpPycsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI0CgkvLyBhLmJhciA9ICdIZWxsbyBXb3JsZCEnCglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI2CgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc56_draft.json index 6163592b6..1d54ca365 100644 --- a/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateNamedTuple.arc56_draft.json @@ -60,1226 +60,1229 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 614, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8 - ] - }, - { - "teal": 13, - "source": 614, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 14, - "source": 614, - "pc": [ - 11 - ] - }, - { - "teal": 15, - "source": 614, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 16, - "source": 614, - "pc": [ - 14 - ] - }, - { - "teal": 17, - "source": 614, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 614, - "pc": [ - 17 - ] - }, - { - "teal": 19, - "source": 614, - "pc": [ - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43 - ] - }, - { - "teal": 23, - "source": 614, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 44 - ] - }, - { - "teal": 28, - "source": 615, - "pc": [ - 45, - 46, - 47, - 48, - 49, - 50 - ] - }, - { - "teal": 31, - "source": 615, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 32, - "source": 615, - "pc": [ - 54 - ] - }, - { - "teal": 33, - "source": 615, - "pc": [ - 55 - ] - }, - { - "teal": 34, - "source": 615, - "pc": [ - 56 - ] - }, - { - "teal": 35, - "source": 615, - "pc": [ - 57, - 58, - 59 - ] - }, - { - "teal": 36, - "source": 615, - "pc": [ - 60 - ] - }, - { - "teal": 37, - "source": 615, - "pc": [ - 61 - ] - }, - { - "teal": 38, - "source": 615, - "pc": [ - 62 - ] - }, - { - "teal": 39, - "source": 615, - "pc": [ - 63 - ] - }, - { - "teal": 40, - "source": 615, - "pc": [ - 64 - ] - }, - { - "teal": 41, - "source": 615, - "pc": [ - 65 - ] - }, - { - "teal": 45, - "source": 615, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 48, - "source": 615, - "pc": [ - 69 - ] - }, - { - "teal": 58, - "source": 619, - "pc": [ - 70 - ] - }, - { - "teal": 59, - "source": 619, - "pc": [ - 71 - ] - }, - { - "teal": 60, - "source": 619, - "pc": [ - 72, - 73, - 74, - 75 - ] - }, - { - "teal": 61, - "source": 620, - "pc": [ - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 62, - "source": 620, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 63, - "source": 621, - "pc": [ - 83, - 84, - 85, - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 64, - "source": 621, - "pc": [ - 90, - 91, - 92 - ] - }, - { - "teal": 65, - "source": 619, - "pc": [ - 93 - ] - }, - { - "teal": 66, - "source": 619, - "pc": [ - 94 - ] - }, - { - "teal": 67, - "source": 616, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 71, - "source": 624, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 72, - "source": 624, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 73, - "source": 624, - "pc": [ - 101 - ] - }, - { - "teal": 74, - "source": 624, - "pc": [ - 102 - ] - }, - { - "teal": 75, - "source": 624, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 76, - "source": 624, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 77, - "source": 624, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 78, - "source": 624, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 79, - "source": 624, - "pc": [ - 111 - ] - }, - { - "teal": 80, - "source": 624, - "pc": [ - 112 - ] - }, - { - "teal": 81, - "source": 624, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 82, - "source": 624, - "pc": [ - 115 - ] - }, - { - "teal": 83, - "source": 624, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 84, - "source": 624, - "pc": [ - 118 - ] - }, - { - "teal": 85, - "source": 624, - "pc": [ - 119 - ] - }, - { - "teal": 86, - "source": 624, - "pc": [ - 120 - ] - }, - { - "teal": 87, - "source": 624, - "pc": [ - 121 - ] - }, - { - "teal": 88, - "source": 624, - "pc": [ - 122 - ] - }, - { - "teal": 89, - "source": 624, - "pc": [ - 123 - ] - }, - { - "teal": 90, - "source": 624, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 91, - "source": 624, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 92, - "source": 624, - "pc": [ - 128 - ] - }, - { - "teal": 93, - "source": 624, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 94, - "source": 624, - "pc": [ - 131 - ] - }, - { - "teal": 95, - "source": 624, - "pc": [ - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147 - ] - }, - { - "teal": 96, - "source": 624, - "pc": [ - 148 - ] - }, - { - "teal": 97, - "source": 624, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 98, - "source": 624, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 99, - "source": 624, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 100, - "source": 624, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 101, - "source": 624, - "pc": [ - 157 - ] - }, - { - "teal": 102, - "source": 624, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 103, - "source": 624, - "pc": [ - 160 - ] - }, - { - "teal": 104, - "source": 624, - "pc": [ - 161 - ] - }, - { - "teal": 105, - "source": 624, - "pc": [ - 162 - ] - }, - { - "teal": 106, - "source": 624, - "pc": [ - 163 - ] - }, - { - "teal": 107, - "source": 624, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 108, - "source": 624, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 109, - "source": 624, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 110, - "source": 624, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 114, - "source": 626, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 115, - "source": 626, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 116, - "source": 626, - "pc": [ - 177 - ] - }, - { - "teal": 117, - "source": 626, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 118, - "source": 626, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 119, - "source": 626, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 120, - "source": 626, - "pc": [ - 184 - ] - }, - { - "teal": 121, - "source": 626, - "pc": [ - 185 - ] - }, - { - "teal": 122, - "source": 626, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 123, - "source": 626, - "pc": [ - 188 - ] - }, - { - "teal": 124, - "source": 626, - "pc": [ - 189 - ] - }, - { - "teal": 125, - "source": 626, - "pc": [ - 190 - ] - }, - { - "teal": 126, - "source": 626, - "pc": [ - 191 - ] - }, - { - "teal": 127, - "source": 626, - "pc": [ - 192 - ] - }, - { - "teal": 128, - "source": 626, - "pc": [ - 193 - ] - }, - { - "teal": 129, - "source": 626, - "pc": [ - 194 - ] - }, - { - "teal": 130, - "source": 626, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 133, - "source": 615, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 134, - "source": 615, - "pc": [ - 200 - ] - }, - { - "teal": 137, - "source": 614, - "pc": [ - 201 - ] - }, - { - "teal": 138, - "source": 614, - "pc": [ - 202 - ] - }, - { - "teal": 141, - "source": 614, - "pc": [ - 203, - 204, - 205, - 206, - 207, - 208 - ] - }, - { - "teal": 142, - "source": 614, - "pc": [ - 209, - 210, - 211 - ] - }, - { - "teal": 143, - "source": 614, - "pc": [ - 212, - 213, - 214, - 215 - ] - }, - { - "teal": 146, - "source": 614, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 216 - ] - }, - { - "teal": 149, - "source": 614, - "pc": [ - 217, - 218, - 219, - 220, - 221, - 222 - ] - }, - { - "teal": 150, - "source": 614, - "pc": [ - 223, - 224, - 225 - ] - }, - { - "teal": 151, - "source": 614, - "pc": [ - 226, - 227, - 228, - 229 - ] - }, - { - "teal": 154, - "source": 614, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 230 - ] - }, - { - "teal": 157, - "source": 614, - "pc": [ - 231, - 232, - 233 - ] - }, - { - "teal": 158, - "source": 614, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 159, - "source": 614, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 160, - "source": 614, - "pc": [ - 238 - ] - }, - { - "teal": 161, - "source": 614, - "pc": [ - 239, - 240 - ] - }, - { - "teal": 162, - "source": 614, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 163, - "source": 614, - "pc": [ - 243 - ] - }, - { - "teal": 166, - "source": 614, - "pc": [ - 244, - 245, - 246 - ] - }, - { - "teal": 167, - "source": 614, - "pc": [ - 247, - 248 - ] - }, - { - "teal": 168, - "source": 614, - "pc": [ - 249, - 250 - ] - }, - { - "teal": 169, - "source": 614, - "pc": [ - 251 - ] - }, - { - "teal": 170, - "source": 614, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 171, - "source": 614, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 172, - "source": 614, - "pc": [ - 256 - ] - }, - { - "teal": 173, - "source": 614, - "pc": [ - 257 - ] - }, - { - "teal": 174, - "source": 614, - "pc": [ - 258, - 259 - ] - }, - { - "teal": 175, - "source": 614, - "pc": [ - 260 - ] - }, - { - "teal": 176, - "source": 614, - "pc": [ - 261 - ] - }, - { - "teal": 177, - "source": 614, - "pc": [ - 262 - ] - }, - { - "teal": 178, - "source": 614, - "pc": [ - 263, - 264, - 265 - ] - }, - { - "teal": 179, - "source": 614, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 180, - "source": 614, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 181, - "source": 614, - "pc": [ - 270 - ] - }, - { - "teal": 182, - "source": 614, - "pc": [ - 271 - ] - }, - { - "teal": 183, - "source": 614, - "pc": [ - 272, - 273 - ] - }, - { - "teal": 184, - "source": 614, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 185, - "source": 614, - "pc": [ - 276, - 277 - ] - }, - { - "teal": 186, - "source": 614, - "pc": [ - 278, - 279 - ] - }, - { - "teal": 187, - "source": 614, - "pc": [ - 280 - ] - }, - { - "teal": 190, - "source": 614, - "pc": [ - 281, - 282 - ] - }, - { - "teal": 191, - "source": 614, - "pc": [ - 283 - ] - }, - { - "teal": 192, - "source": 614, - "pc": [ - 284, - 285 - ] - }, - { - "teal": 193, - "source": 614, - "pc": [ - 286 - ] - }, - { - "teal": 194, - "source": 614, - "pc": [ - 287, - 288, - 289 - ] - }, - { - "teal": 195, - "source": 614, - "pc": [ - 290, - 291 - ] - }, - { - "teal": 196, - "source": 614, - "pc": [ - 292 - ] - }, - { - "teal": 197, - "source": 614, - "pc": [ - 293, - 294 - ] - }, - { - "teal": 198, - "source": 614, - "pc": [ - 295 - ] - }, - { - "teal": 199, - "source": 614, - "pc": [ - 296, - 297 - ] - }, - { - "teal": 200, - "source": 614, - "pc": [ - 298, - 299, - 300 - ] - }, - { - "teal": 203, - "source": 614, - "pc": [ - 301, - 302 - ] - }, - { - "teal": 204, - "source": 614, - "pc": [ - 303, - 304 - ] - }, - { - "teal": 205, - "source": 614, - "pc": [ - 305 - ] - }, - { - "teal": 206, - "source": 614, - "pc": [ - 306 - ] - }, - { - "teal": 207, - "source": 614, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 210, - "source": 614, - "pc": [ - 309 - ] - }, - { - "teal": 211, - "source": 614, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 212, - "source": 614, - "pc": [ - 312 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 614, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + }, + { + "teal": 13, + "source": 614, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 14, + "source": 614, + "pc": [ + 11 + ] + }, + { + "teal": 15, + "source": 614, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 16, + "source": 614, + "pc": [ + 14 + ] + }, + { + "teal": 17, + "source": 614, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 614, + "pc": [ + 17 + ] + }, + { + "teal": 19, + "source": 614, + "pc": [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + }, + { + "teal": 23, + "source": 614, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 44 + ] + }, + { + "teal": 28, + "source": 615, + "pc": [ + 45, + 46, + 47, + 48, + 49, + 50 + ] + }, + { + "teal": 31, + "source": 615, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 32, + "source": 615, + "pc": [ + 54 + ] + }, + { + "teal": 33, + "source": 615, + "pc": [ + 55 + ] + }, + { + "teal": 34, + "source": 615, + "pc": [ + 56 + ] + }, + { + "teal": 35, + "source": 615, + "pc": [ + 57, + 58, + 59 + ] + }, + { + "teal": 36, + "source": 615, + "pc": [ + 60 + ] + }, + { + "teal": 37, + "source": 615, + "pc": [ + 61 + ] + }, + { + "teal": 38, + "source": 615, + "pc": [ + 62 + ] + }, + { + "teal": 39, + "source": 615, + "pc": [ + 63 + ] + }, + { + "teal": 40, + "source": 615, + "pc": [ + 64 + ] + }, + { + "teal": 41, + "source": 615, + "pc": [ + 65 + ] + }, + { + "teal": 45, + "source": 615, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 48, + "source": 615, + "pc": [ + 69 + ] + }, + { + "teal": 58, + "source": 619, + "pc": [ + 70 + ] + }, + { + "teal": 59, + "source": 619, + "pc": [ + 71 + ] + }, + { + "teal": 60, + "source": 619, + "pc": [ + 72, + 73, + 74, + 75 + ] + }, + { + "teal": 61, + "source": 620, + "pc": [ + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 62, + "source": 620, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 63, + "source": 621, + "pc": [ + 83, + 84, + 85, + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 64, + "source": 621, + "pc": [ + 90, + 91, + 92 + ] + }, + { + "teal": 65, + "source": 619, + "pc": [ + 93 + ] + }, + { + "teal": 66, + "source": 619, + "pc": [ + 94 + ] + }, + { + "teal": 67, + "source": 616, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 71, + "source": 624, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 72, + "source": 624, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 73, + "source": 624, + "pc": [ + 101 + ] + }, + { + "teal": 74, + "source": 624, + "pc": [ + 102 + ] + }, + { + "teal": 75, + "source": 624, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 76, + "source": 624, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 77, + "source": 624, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 78, + "source": 624, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 79, + "source": 624, + "pc": [ + 111 + ] + }, + { + "teal": 80, + "source": 624, + "pc": [ + 112 + ] + }, + { + "teal": 81, + "source": 624, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 82, + "source": 624, + "pc": [ + 115 + ] + }, + { + "teal": 83, + "source": 624, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 84, + "source": 624, + "pc": [ + 118 + ] + }, + { + "teal": 85, + "source": 624, + "pc": [ + 119 + ] + }, + { + "teal": 86, + "source": 624, + "pc": [ + 120 + ] + }, + { + "teal": 87, + "source": 624, + "pc": [ + 121 + ] + }, + { + "teal": 88, + "source": 624, + "pc": [ + 122 + ] + }, + { + "teal": 89, + "source": 624, + "pc": [ + 123 + ] + }, + { + "teal": 90, + "source": 624, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 91, + "source": 624, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 92, + "source": 624, + "pc": [ + 128 + ] + }, + { + "teal": 93, + "source": 624, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 94, + "source": 624, + "pc": [ + 131 + ] + }, + { + "teal": 95, + "source": 624, + "pc": [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + }, + { + "teal": 96, + "source": 624, + "pc": [ + 148 + ] + }, + { + "teal": 97, + "source": 624, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 98, + "source": 624, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 99, + "source": 624, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 100, + "source": 624, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 101, + "source": 624, + "pc": [ + 157 + ] + }, + { + "teal": 102, + "source": 624, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 103, + "source": 624, + "pc": [ + 160 + ] + }, + { + "teal": 104, + "source": 624, + "pc": [ + 161 + ] + }, + { + "teal": 105, + "source": 624, + "pc": [ + 162 + ] + }, + { + "teal": 106, + "source": 624, + "pc": [ + 163 + ] + }, + { + "teal": 107, + "source": 624, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 108, + "source": 624, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 109, + "source": 624, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 110, + "source": 624, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 114, + "source": 626, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 115, + "source": 626, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 116, + "source": 626, + "pc": [ + 177 + ] + }, + { + "teal": 117, + "source": 626, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 118, + "source": 626, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 119, + "source": 626, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 120, + "source": 626, + "pc": [ + 184 + ] + }, + { + "teal": 121, + "source": 626, + "pc": [ + 185 + ] + }, + { + "teal": 122, + "source": 626, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 123, + "source": 626, + "pc": [ + 188 + ] + }, + { + "teal": 124, + "source": 626, + "pc": [ + 189 + ] + }, + { + "teal": 125, + "source": 626, + "pc": [ + 190 + ] + }, + { + "teal": 126, + "source": 626, + "pc": [ + 191 + ] + }, + { + "teal": 127, + "source": 626, + "pc": [ + 192 + ] + }, + { + "teal": 128, + "source": 626, + "pc": [ + 193 + ] + }, + { + "teal": 129, + "source": 626, + "pc": [ + 194 + ] + }, + { + "teal": 130, + "source": 626, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 133, + "source": 615, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 134, + "source": 615, + "pc": [ + 200 + ] + }, + { + "teal": 137, + "source": 614, + "pc": [ + 201 + ] + }, + { + "teal": 138, + "source": 614, + "pc": [ + 202 + ] + }, + { + "teal": 141, + "source": 614, + "pc": [ + 203, + 204, + 205, + 206, + 207, + 208 + ] + }, + { + "teal": 142, + "source": 614, + "pc": [ + 209, + 210, + 211 + ] + }, + { + "teal": 143, + "source": 614, + "pc": [ + 212, + 213, + 214, + 215 + ] + }, + { + "teal": 146, + "source": 614, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 216 + ] + }, + { + "teal": 149, + "source": 614, + "pc": [ + 217, + 218, + 219, + 220, + 221, + 222 + ] + }, + { + "teal": 150, + "source": 614, + "pc": [ + 223, + 224, + 225 + ] + }, + { + "teal": 151, + "source": 614, + "pc": [ + 226, + 227, + 228, + 229 + ] + }, + { + "teal": 154, + "source": 614, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 230 + ] + }, + { + "teal": 157, + "source": 614, + "pc": [ + 231, + 232, + 233 + ] + }, + { + "teal": 158, + "source": 614, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 159, + "source": 614, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 160, + "source": 614, + "pc": [ + 238 + ] + }, + { + "teal": 161, + "source": 614, + "pc": [ + 239, + 240 + ] + }, + { + "teal": 162, + "source": 614, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 163, + "source": 614, + "pc": [ + 243 + ] + }, + { + "teal": 166, + "source": 614, + "pc": [ + 244, + 245, + 246 + ] + }, + { + "teal": 167, + "source": 614, + "pc": [ + 247, + 248 + ] + }, + { + "teal": 168, + "source": 614, + "pc": [ + 249, + 250 + ] + }, + { + "teal": 169, + "source": 614, + "pc": [ + 251 + ] + }, + { + "teal": 170, + "source": 614, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 171, + "source": 614, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 172, + "source": 614, + "pc": [ + 256 + ] + }, + { + "teal": 173, + "source": 614, + "pc": [ + 257 + ] + }, + { + "teal": 174, + "source": 614, + "pc": [ + 258, + 259 + ] + }, + { + "teal": 175, + "source": 614, + "pc": [ + 260 + ] + }, + { + "teal": 176, + "source": 614, + "pc": [ + 261 + ] + }, + { + "teal": 177, + "source": 614, + "pc": [ + 262 + ] + }, + { + "teal": 178, + "source": 614, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 179, + "source": 614, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 180, + "source": 614, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 181, + "source": 614, + "pc": [ + 270 + ] + }, + { + "teal": 182, + "source": 614, + "pc": [ + 271 + ] + }, + { + "teal": 183, + "source": 614, + "pc": [ + 272, + 273 + ] + }, + { + "teal": 184, + "source": 614, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 185, + "source": 614, + "pc": [ + 276, + 277 + ] + }, + { + "teal": 186, + "source": 614, + "pc": [ + 278, + 279 + ] + }, + { + "teal": 187, + "source": 614, + "pc": [ + 280 + ] + }, + { + "teal": 190, + "source": 614, + "pc": [ + 281, + 282 + ] + }, + { + "teal": 191, + "source": 614, + "pc": [ + 283 + ] + }, + { + "teal": 192, + "source": 614, + "pc": [ + 284, + 285 + ] + }, + { + "teal": 193, + "source": 614, + "pc": [ + 286 + ] + }, + { + "teal": 194, + "source": 614, + "pc": [ + 287, + 288, + 289 + ] + }, + { + "teal": 195, + "source": 614, + "pc": [ + 290, + 291 + ] + }, + { + "teal": 196, + "source": 614, + "pc": [ + 292 + ] + }, + { + "teal": 197, + "source": 614, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 198, + "source": 614, + "pc": [ + 295 + ] + }, + { + "teal": 199, + "source": 614, + "pc": [ + 296, + 297 + ] + }, + { + "teal": 200, + "source": 614, + "pc": [ + 298, + 299, + 300 + ] + }, + { + "teal": 203, + "source": 614, + "pc": [ + 301, + 302 + ] + }, + { + "teal": 204, + "source": 614, + "pc": [ + 303, + 304 + ] + }, + { + "teal": 205, + "source": 614, + "pc": [ + 305 + ] + }, + { + "teal": 206, + "source": 614, + "pc": [ + 306 + ] + }, + { + "teal": 207, + "source": 614, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 210, + "source": 614, + "pc": [ + 309 + ] + }, + { + "teal": 211, + "source": 614, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 212, + "source": 614, + "pc": [ + 312 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVOYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZU5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVOYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5hbWVkVHVwbGUoKTogc3RyaW5nCnVwZGF0ZU5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MTYKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hpPycsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI0CgkvLyBhLmJhciA9ICdIZWxsbyBXb3JsZCEnCglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI2CgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVOYW1lZFR1cGxlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZU5hbWVkVHVwbGUoKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVOYW1lZFR1cGxlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5hbWVkVHVwbGUoKTogc3RyaW5nCnVwZGF0ZU5hbWVkVHVwbGU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo2MTYKCS8vIGE6IHsKCS8vICAgICAgIGZvbzogdWludDE2OwoJLy8gICAgICAgYmFyOiBzdHJpbmc7CgkvLyAgICAgfSA9IHsKCS8vICAgICAgIGZvbzogMSwKCS8vICAgICAgIGJhcjogJ0hpPycsCgkvLyAgICAgfQoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAwNCAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0CglieXRlIDB4MDAwMQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50Cglwb3AgLy8gcG9wIGhlYWQgb2Zmc2V0Cgljb25jYXQgLy8gY29uY2F0IGhlYWQgYW5kIHRhaWwKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI0CgkvLyBhLmJhciA9ICdIZWxsbyBXb3JsZCEnCglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMGM0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NjI2CgkvLyByZXR1cm4gYS5iYXI7CglmcmFtZV9kaWcgMCAvLyBhOiB7ICAgICAgIGZvbzogdWludDE2OyAgICAgICBiYXI6IHN0cmluZzsgICAgIH0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOYW1lZFR1cGxlKClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5hbWVkVHVwbGUKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1YgoKKmdldF9sZW5ndGhfZGlmZmVyZW5jZToKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJPAoJYm56ICpzd2FwcGVkX2RpZmZlcmVuY2UKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJaW50IDEKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCWIgKmdldF9kaWZmZXJlbmNlCgoqc3dhcHBlZF9kaWZmZXJlbmNlOgoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjUyIC8vIG5ldyBlbGVtZW50CglsZW4gLy8gbGVuZ3RoIG9mIG5ldyBlbGVtZW50CglpbnQgMAoJc3RvcmUgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoKKmdldF9kaWZmZXJlbmNlOgoJLSAvLyBnZXQgbGVuZ3RoIGRpZmZlcmVuY2UKCXN0b3JlIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.approval.teal b/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.approval.teal index 67fbb0894..4b10426c8 100644 --- a/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc32.json b/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc32.json index 3de6924a7..8e0dd4ee3 100644 --- a/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlTmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NAp1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIyNAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzMAoJLy8gYVsxXSA9IFs0NDQsIDU1NSwgNjY2XQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMWJjMDAwMDAwMDAwMDAwMDIyYjAwMDAwMDAwMDAwMDAyOWEKCXJlcGxhY2UyIDI0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjMyCgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CglleHRyYWN0IDMyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlTmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NAp1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIyNAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzMAoJLy8gYVsxXSA9IFs0NDQsIDU1NSwgNjY2XQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMWJjMDAwMDAwMDAwMDAwMDIyYjAwMDAwMDAwMDAwMDAyOWEKCXJlcGxhY2UyIDI0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjMyCgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CglleHRyYWN0IDMyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc56_draft.json index 85e654afc..33a86a92c 100644 --- a/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateNestedStaticArray.arc56_draft.json @@ -60,453 +60,456 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 222, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 222, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 222, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 222, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 222, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 222, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 222, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 222, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 222, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 223, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 223, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 223, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 223, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 223, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 223, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 223, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 223, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 223, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 51, - "source": 224, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 52, - "source": 224, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 56, - "source": 230, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 57, - "source": 230, - "pc": [ - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162 - ] - }, - { - "teal": 58, - "source": 230, - "pc": [ - 163, - 164 - ] - }, - { - "teal": 59, - "source": 230, - "pc": [ - 165, - 166 - ] - }, - { - "teal": 63, - "source": 232, - "pc": [ - 167, - 168 - ] - }, - { - "teal": 64, - "source": 232, - "pc": [ - 169, - 170, - 171 - ] - }, - { - "teal": 65, - "source": 232, - "pc": [ - 172 - ] - }, - { - "teal": 68, - "source": 223, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 69, - "source": 223, - "pc": [ - 175 - ] - }, - { - "teal": 72, - "source": 222, - "pc": [ - 176 - ] - }, - { - "teal": 73, - "source": 222, - "pc": [ - 177 - ] - }, - { - "teal": 76, - "source": 222, - "pc": [ - 178, - 179, - 180, - 181, - 182, - 183 - ] - }, - { - "teal": 77, - "source": 222, - "pc": [ - 184, - 185, - 186 - ] - }, - { - "teal": 78, - "source": 222, - "pc": [ - 187, - 188, - 189, - 190 - ] - }, - { - "teal": 81, - "source": 222, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 191 - ] - }, - { - "teal": 84, - "source": 222, - "pc": [ - 192, - 193, - 194, - 195, - 196, - 197 - ] - }, - { - "teal": 85, - "source": 222, - "pc": [ - 198, - 199, - 200 - ] - }, - { - "teal": 86, - "source": 222, - "pc": [ - 201, - 202, - 203, - 204 - ] - }, - { - "teal": 89, - "source": 222, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 205 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 222, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 222, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 222, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 222, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 222, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 222, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 222, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 222, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 222, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 223, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 223, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 223, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 223, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 223, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 223, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 223, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 223, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 223, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 51, + "source": 224, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 52, + "source": 224, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 56, + "source": 230, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 57, + "source": 230, + "pc": [ + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162 + ] + }, + { + "teal": 58, + "source": 230, + "pc": [ + 163, + 164 + ] + }, + { + "teal": 59, + "source": 230, + "pc": [ + 165, + 166 + ] + }, + { + "teal": 63, + "source": 232, + "pc": [ + 167, + 168 + ] + }, + { + "teal": 64, + "source": 232, + "pc": [ + 169, + 170, + 171 + ] + }, + { + "teal": 65, + "source": 232, + "pc": [ + 172 + ] + }, + { + "teal": 68, + "source": 223, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 69, + "source": 223, + "pc": [ + 175 + ] + }, + { + "teal": 72, + "source": 222, + "pc": [ + 176 + ] + }, + { + "teal": 73, + "source": 222, + "pc": [ + 177 + ] + }, + { + "teal": 76, + "source": 222, + "pc": [ + 178, + 179, + 180, + 181, + 182, + 183 + ] + }, + { + "teal": 77, + "source": 222, + "pc": [ + 184, + 185, + 186 + ] + }, + { + "teal": 78, + "source": 222, + "pc": [ + 187, + 188, + 189, + 190 + ] + }, + { + "teal": 81, + "source": 222, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 191 + ] + }, + { + "teal": 84, + "source": 222, + "pc": [ + 192, + 193, + 194, + 195, + 196, + 197 + ] + }, + { + "teal": 85, + "source": 222, + "pc": [ + 198, + 199, + 200 + ] + }, + { + "teal": 86, + "source": 222, + "pc": [ + 201, + 202, + 203, + 204 + ] + }, + { + "teal": 89, + "source": 222, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 205 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlTmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NAp1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIyNAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzMAoJLy8gYVsxXSA9IFs0NDQsIDU1NSwgNjY2XQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMWJjMDAwMDAwMDAwMDAwMDIyYjAwMDAwMDAwMDAwMDAyOWEKCXJlcGxhY2UyIDI0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjMyCgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CglleHRyYWN0IDMyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheSgpdWludDY0CiphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXk6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdXBkYXRlTmVzdGVkU3RhdGljQXJyYXkoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCk6IHVpbnQ2NAp1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheToKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIyNAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIzMAoJLy8gYVsxXSA9IFs0NDQsIDU1NSwgNjY2XQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMWJjMDAwMDAwMDAwMDAwMDIyYjAwMDAwMDAwMDAwMDAyOWEKCXJlcGxhY2UyIDI0CglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MjMyCgkvLyByZXR1cm4gYVsxXVsxXTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CglleHRyYWN0IDMyIDgKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5KCl1aW50NjQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.approval.teal b/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.approval.teal index abd16e2b4..619a5ddb7 100644 --- a/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc32.json b/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc32.json index 6c59b5a1f..628cb43fa 100644 --- a/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxNgoJLy8gYVsxXVsxXSA9IDU1NQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMjJiCglyZXBsYWNlMiAzMgoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxOAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxNgoJLy8gYVsxXVsxXSA9IDU1NQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMjJiCglyZXBsYWNlMiAzMgoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxOAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc56_draft.json index 969b54c69..d24476590 100644 --- a/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateNestedStaticArrayElement.arc56_draft.json @@ -60,437 +60,440 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 208, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 208, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 208, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 208, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 208, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 208, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 208, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 208, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 208, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 209, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 209, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 209, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 209, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 209, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 209, - "pc": [ - 52 - ] - }, - { - "teal": 36, - "source": 209, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 209, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 43, - "source": 209, - "pc": [ - 57, - 58 - ] - }, - { - "teal": 51, - "source": 210, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132 - ] - }, - { - "teal": 52, - "source": 210, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 56, - "source": 216, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 57, - "source": 216, - "pc": [ - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146 - ] - }, - { - "teal": 58, - "source": 216, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 59, - "source": 216, - "pc": [ - 149, - 150 - ] - }, - { - "teal": 63, - "source": 218, - "pc": [ - 151, - 152 - ] - }, - { - "teal": 64, - "source": 218, - "pc": [ - 153, - 154, - 155 - ] - }, - { - "teal": 65, - "source": 218, - "pc": [ - 156 - ] - }, - { - "teal": 68, - "source": 209, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 69, - "source": 209, - "pc": [ - 159 - ] - }, - { - "teal": 72, - "source": 208, - "pc": [ - 160 - ] - }, - { - "teal": 73, - "source": 208, - "pc": [ - 161 - ] - }, - { - "teal": 76, - "source": 208, - "pc": [ - 162, - 163, - 164, - 165, - 166, - 167 - ] - }, - { - "teal": 77, - "source": 208, - "pc": [ - 168, - 169, - 170 - ] - }, - { - "teal": 78, - "source": 208, - "pc": [ - 171, - 172, - 173, - 174 - ] - }, - { - "teal": 81, - "source": 208, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 175 - ] - }, - { - "teal": 84, - "source": 208, - "pc": [ - 176, - 177, - 178, - 179, - 180, - 181 - ] - }, - { - "teal": 85, - "source": 208, - "pc": [ - 182, - 183, - 184 - ] - }, - { - "teal": 86, - "source": 208, - "pc": [ - 185, - 186, - 187, - 188 - ] - }, - { - "teal": 89, - "source": 208, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 189 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 208, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 208, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 208, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 208, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 208, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 208, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 208, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 208, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 208, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 209, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 209, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 209, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 209, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 209, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 209, + "pc": [ + 52 + ] + }, + { + "teal": 36, + "source": 209, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 209, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 43, + "source": 209, + "pc": [ + 57, + 58 + ] + }, + { + "teal": 51, + "source": 210, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + }, + { + "teal": 52, + "source": 210, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 56, + "source": 216, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 57, + "source": 216, + "pc": [ + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146 + ] + }, + { + "teal": 58, + "source": 216, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 59, + "source": 216, + "pc": [ + 149, + 150 + ] + }, + { + "teal": 63, + "source": 218, + "pc": [ + 151, + 152 + ] + }, + { + "teal": 64, + "source": 218, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 65, + "source": 218, + "pc": [ + 156 + ] + }, + { + "teal": 68, + "source": 209, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 69, + "source": 209, + "pc": [ + 159 + ] + }, + { + "teal": 72, + "source": 208, + "pc": [ + 160 + ] + }, + { + "teal": 73, + "source": 208, + "pc": [ + 161 + ] + }, + { + "teal": 76, + "source": 208, + "pc": [ + 162, + 163, + 164, + 165, + 166, + 167 + ] + }, + { + "teal": 77, + "source": 208, + "pc": [ + 168, + 169, + 170 + ] + }, + { + "teal": 78, + "source": 208, + "pc": [ + 171, + 172, + 173, + 174 + ] + }, + { + "teal": 81, + "source": 208, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 175 + ] + }, + { + "teal": 84, + "source": 208, + "pc": [ + 176, + 177, + 178, + 179, + 180, + 181 + ] + }, + { + "teal": 85, + "source": 208, + "pc": [ + 182, + 183, + 184 + ] + }, + { + "teal": 86, + "source": 208, + "pc": [ + 185, + 186, + 187, + 188 + ] + }, + { + "teal": 89, + "source": 208, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 189 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxNgoJLy8gYVsxXVsxXSA9IDU1NQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMjJiCglyZXBsYWNlMiAzMgoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxOAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3VwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NAoJY2FsbHN1YiB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKTogdWludDY0CnVwZGF0ZU5lc3RlZFN0YXRpY0FycmF5RWxlbWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxMAoJLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4gPSBbCgkvLyAgICAgICBbMTEsIDIyLCAzM10sCgkvLyAgICAgICBbNDQsIDU1LCA2Nl0sCgkvLyAgICAgICBbNzcsIDg4LCA5OV0sCgkvLyAgICAgXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMGIwMDAwMDAwMDAwMDAwMDE2MDAwMDAwMDAwMDAwMDAyMTAwMDAwMDAwMDAwMDAwMmMwMDAwMDAwMDAwMDAwMDM3MDAwMDAwMDAwMDAwMDA0MjAwMDAwMDAwMDAwMDAwNGQwMDAwMDAwMDAwMDAwMDU4MDAwMDAwMDAwMDAwMDA2MwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxNgoJLy8gYVsxXVsxXSA9IDU1NQoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8U3RhdGljQXJyYXk8dWludDY0LCAzPiwgMz4KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMjJiCglyZXBsYWNlMiAzMgoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4sIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjIxOAoJLy8gcmV0dXJuIGFbMV1bMV07CglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTxTdGF0aWNBcnJheTx1aW50NjQsIDM+LCAzPgoJZXh0cmFjdCAzMiA4CglidG9pCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVOZXN0ZWRTdGF0aWNBcnJheUVsZW1lbnQoKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlTmVzdGVkU3RhdGljQXJyYXlFbGVtZW50CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.approval.teal b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.approval.teal index 0fec38350..02b27f0dc 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc32.json b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc32.json index 4eb9fb049..758aa4e4e 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE3OAoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzkKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MgoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0gPSAxMTExCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDA0NTcKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzRkNjE3MCAvLyAiZ01hcCIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MwoJLy8gdGhpcy5sTWFwKHRoaXMudHhuLnNlbmRlciwgJ2xNYXAnKS52YWx1ZVsxXSA9IDIyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwOGFlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg0CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSA9IDMzMzMKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMGQwNQoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg2CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbCgkvLyAgICAgICB0aGlzLmdNYXAoJ2dNYXAnKS52YWx1ZVsxXSwKCS8vICAgICAgIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSwKCS8vICAgICBdCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTkyCgkvLyByZXR1cm4gcmV0OwoJZnJhbWVfZGlnIDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE3OAoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzkKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MgoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0gPSAxMTExCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDA0NTcKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzRkNjE3MCAvLyAiZ01hcCIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MwoJLy8gdGhpcy5sTWFwKHRoaXMudHhuLnNlbmRlciwgJ2xNYXAnKS52YWx1ZVsxXSA9IDIyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwOGFlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg0CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSA9IDMzMzMKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMGQwNQoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg2CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbCgkvLyAgICAgICB0aGlzLmdNYXAoJ2dNYXAnKS52YWx1ZVsxXSwKCS8vICAgICAgIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSwKCS8vICAgICBdCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTkyCgkvLyByZXR1cm4gcmV0OwoJZnJhbWVfZGlnIDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc56_draft.json index 43e24dd99..7d1614a53 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageMap.arc56_draft.json @@ -93,751 +93,754 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 161, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21 - ] - }, - { - "teal": 13, - "source": 161, - "pc": [ - 22, - 23 - ] - }, - { - "teal": 14, - "source": 161, - "pc": [ - 24 - ] - }, - { - "teal": 15, - "source": 161, - "pc": [ - 25, - 26 - ] - }, - { - "teal": 16, - "source": 161, - "pc": [ - 27 - ] - }, - { - "teal": 17, - "source": 161, - "pc": [ - 28, - 29 - ] - }, - { - "teal": 18, - "source": 161, - "pc": [ - 30 - ] - }, - { - "teal": 19, - "source": 161, - "pc": [ - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 23, - "source": 161, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 57 - ] - }, - { - "teal": 28, - "source": 174, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 31, - "source": 174, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 32, - "source": 174, - "pc": [ - 67 - ] - }, - { - "teal": 33, - "source": 174, - "pc": [ - 68 - ] - }, - { - "teal": 34, - "source": 174, - "pc": [ - 69 - ] - }, - { - "teal": 35, - "source": 174, - "pc": [ - 70 - ] - }, - { - "teal": 39, - "source": 174, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 42, - "source": 174, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 43, - "source": 174, - "pc": [ - 76 - ] - }, - { - "teal": 47, - "source": 176, - "pc": [ - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 48, - "source": 176, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 52, - "source": 178, - "pc": [ - 105 - ] - }, - { - "teal": 53, - "source": 178, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 54, - "source": 178, - "pc": [ - 108 - ] - }, - { - "teal": 58, - "source": 179, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 59, - "source": 179, - "pc": [ - 111 - ] - }, - { - "teal": 60, - "source": 179, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 61, - "source": 179, - "pc": [ - 114 - ] - }, - { - "teal": 65, - "source": 180, - "pc": [ - 115 - ] - }, - { - "teal": 66, - "source": 180, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 67, - "source": 180, - "pc": [ - 118 - ] - }, - { - "teal": 71, - "source": 182, - "pc": [ - 119 - ] - }, - { - "teal": 72, - "source": 182, - "pc": [ - 120 - ] - }, - { - "teal": 73, - "source": 182, - "pc": [ - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 74, - "source": 182, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 75, - "source": 182, - "pc": [ - 133 - ] - }, - { - "teal": 76, - "source": 182, - "pc": [ - 134 - ] - }, - { - "teal": 77, - "source": 182, - "pc": [ - 135 - ] - }, - { - "teal": 81, - "source": 183, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 82, - "source": 183, - "pc": [ - 138 - ] - }, - { - "teal": 83, - "source": 183, - "pc": [ - 139 - ] - }, - { - "teal": 84, - "source": 183, - "pc": [ - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149 - ] - }, - { - "teal": 85, - "source": 183, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 86, - "source": 183, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 87, - "source": 183, - "pc": [ - 154 - ] - }, - { - "teal": 88, - "source": 183, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 89, - "source": 183, - "pc": [ - 157 - ] - }, - { - "teal": 93, - "source": 184, - "pc": [ - 158 - ] - }, - { - "teal": 94, - "source": 184, - "pc": [ - 159 - ] - }, - { - "teal": 95, - "source": 184, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169 - ] - }, - { - "teal": 96, - "source": 184, - "pc": [ - 170 - ] - }, - { - "teal": 104, - "source": 187, - "pc": [ - 171 - ] - }, - { - "teal": 105, - "source": 187, - "pc": [ - 172 - ] - }, - { - "teal": 106, - "source": 187, - "pc": [ - 173, - 174, - 175 - ] - }, - { - "teal": 107, - "source": 187, - "pc": [ - 176 - ] - }, - { - "teal": 108, - "source": 187, - "pc": [ - 177 - ] - }, - { - "teal": 109, - "source": 188, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 110, - "source": 188, - "pc": [ - 180 - ] - }, - { - "teal": 111, - "source": 188, - "pc": [ - 181 - ] - }, - { - "teal": 112, - "source": 188, - "pc": [ - 182, - 183, - 184 - ] - }, - { - "teal": 113, - "source": 188, - "pc": [ - 185 - ] - }, - { - "teal": 114, - "source": 188, - "pc": [ - 186 - ] - }, - { - "teal": 115, - "source": 186, - "pc": [ - 187 - ] - }, - { - "teal": 116, - "source": 189, - "pc": [ - 188 - ] - }, - { - "teal": 117, - "source": 189, - "pc": [ - 189 - ] - }, - { - "teal": 118, - "source": 189, - "pc": [ - 190 - ] - }, - { - "teal": 119, - "source": 189, - "pc": [ - 191 - ] - }, - { - "teal": 120, - "source": 189, - "pc": [ - 192 - ] - }, - { - "teal": 121, - "source": 189, - "pc": [ - 193 - ] - }, - { - "teal": 122, - "source": 186, - "pc": [ - 194 - ] - }, - { - "teal": 123, - "source": 186, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 127, - "source": 192, - "pc": [ - 197, - 198 - ] - }, - { - "teal": 130, - "source": 174, - "pc": [ - 199, - 200 - ] - }, - { - "teal": 133, - "source": 174, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 134, - "source": 174, - "pc": [ - 203 - ] - }, - { - "teal": 137, - "source": 161, - "pc": [ - 204 - ] - }, - { - "teal": 138, - "source": 161, - "pc": [ - 205 - ] - }, - { - "teal": 141, - "source": 161, - "pc": [ - 206, - 207, - 208, - 209, - 210, - 211 - ] - }, - { - "teal": 142, - "source": 161, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 143, - "source": 161, - "pc": [ - 215, - 216, - 217, - 218 - ] - }, - { - "teal": 146, - "source": 161, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 219 - ] - }, - { - "teal": 149, - "source": 161, - "pc": [ - 220, - 221, - 222, - 223, - 224, - 225 - ] - }, - { - "teal": 150, - "source": 161, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 151, - "source": 161, - "pc": [ - 229, - 230, - 231, - 232 - ] - }, - { - "teal": 154, - "source": 161, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 233 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 161, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + }, + { + "teal": 13, + "source": 161, + "pc": [ + 22, + 23 + ] + }, + { + "teal": 14, + "source": 161, + "pc": [ + 24 + ] + }, + { + "teal": 15, + "source": 161, + "pc": [ + 25, + 26 + ] + }, + { + "teal": 16, + "source": 161, + "pc": [ + 27 + ] + }, + { + "teal": 17, + "source": 161, + "pc": [ + 28, + 29 + ] + }, + { + "teal": 18, + "source": 161, + "pc": [ + 30 + ] + }, + { + "teal": 19, + "source": 161, + "pc": [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 23, + "source": 161, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 57 + ] + }, + { + "teal": 28, + "source": 174, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 31, + "source": 174, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 32, + "source": 174, + "pc": [ + 67 + ] + }, + { + "teal": 33, + "source": 174, + "pc": [ + 68 + ] + }, + { + "teal": 34, + "source": 174, + "pc": [ + 69 + ] + }, + { + "teal": 35, + "source": 174, + "pc": [ + 70 + ] + }, + { + "teal": 39, + "source": 174, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 42, + "source": 174, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 43, + "source": 174, + "pc": [ + 76 + ] + }, + { + "teal": 47, + "source": 176, + "pc": [ + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 48, + "source": 176, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 52, + "source": 178, + "pc": [ + 105 + ] + }, + { + "teal": 53, + "source": 178, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 54, + "source": 178, + "pc": [ + 108 + ] + }, + { + "teal": 58, + "source": 179, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 59, + "source": 179, + "pc": [ + 111 + ] + }, + { + "teal": 60, + "source": 179, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 61, + "source": 179, + "pc": [ + 114 + ] + }, + { + "teal": 65, + "source": 180, + "pc": [ + 115 + ] + }, + { + "teal": 66, + "source": 180, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 67, + "source": 180, + "pc": [ + 118 + ] + }, + { + "teal": 71, + "source": 182, + "pc": [ + 119 + ] + }, + { + "teal": 72, + "source": 182, + "pc": [ + 120 + ] + }, + { + "teal": 73, + "source": 182, + "pc": [ + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 74, + "source": 182, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 75, + "source": 182, + "pc": [ + 133 + ] + }, + { + "teal": 76, + "source": 182, + "pc": [ + 134 + ] + }, + { + "teal": 77, + "source": 182, + "pc": [ + 135 + ] + }, + { + "teal": 81, + "source": 183, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 82, + "source": 183, + "pc": [ + 138 + ] + }, + { + "teal": 83, + "source": 183, + "pc": [ + 139 + ] + }, + { + "teal": 84, + "source": 183, + "pc": [ + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149 + ] + }, + { + "teal": 85, + "source": 183, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 86, + "source": 183, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 87, + "source": 183, + "pc": [ + 154 + ] + }, + { + "teal": 88, + "source": 183, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 89, + "source": 183, + "pc": [ + 157 + ] + }, + { + "teal": 93, + "source": 184, + "pc": [ + 158 + ] + }, + { + "teal": 94, + "source": 184, + "pc": [ + 159 + ] + }, + { + "teal": 95, + "source": 184, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169 + ] + }, + { + "teal": 96, + "source": 184, + "pc": [ + 170 + ] + }, + { + "teal": 104, + "source": 187, + "pc": [ + 171 + ] + }, + { + "teal": 105, + "source": 187, + "pc": [ + 172 + ] + }, + { + "teal": 106, + "source": 187, + "pc": [ + 173, + 174, + 175 + ] + }, + { + "teal": 107, + "source": 187, + "pc": [ + 176 + ] + }, + { + "teal": 108, + "source": 187, + "pc": [ + 177 + ] + }, + { + "teal": 109, + "source": 188, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 110, + "source": 188, + "pc": [ + 180 + ] + }, + { + "teal": 111, + "source": 188, + "pc": [ + 181 + ] + }, + { + "teal": 112, + "source": 188, + "pc": [ + 182, + 183, + 184 + ] + }, + { + "teal": 113, + "source": 188, + "pc": [ + 185 + ] + }, + { + "teal": 114, + "source": 188, + "pc": [ + 186 + ] + }, + { + "teal": 115, + "source": 186, + "pc": [ + 187 + ] + }, + { + "teal": 116, + "source": 189, + "pc": [ + 188 + ] + }, + { + "teal": 117, + "source": 189, + "pc": [ + 189 + ] + }, + { + "teal": 118, + "source": 189, + "pc": [ + 190 + ] + }, + { + "teal": 119, + "source": 189, + "pc": [ + 191 + ] + }, + { + "teal": 120, + "source": 189, + "pc": [ + 192 + ] + }, + { + "teal": 121, + "source": 189, + "pc": [ + 193 + ] + }, + { + "teal": 122, + "source": 186, + "pc": [ + 194 + ] + }, + { + "teal": 123, + "source": 186, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 127, + "source": 192, + "pc": [ + 197, + 198 + ] + }, + { + "teal": 130, + "source": 174, + "pc": [ + 199, + 200 + ] + }, + { + "teal": 133, + "source": 174, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 134, + "source": 174, + "pc": [ + 203 + ] + }, + { + "teal": 137, + "source": 161, + "pc": [ + 204 + ] + }, + { + "teal": 138, + "source": 161, + "pc": [ + 205 + ] + }, + { + "teal": 141, + "source": 161, + "pc": [ + 206, + 207, + 208, + 209, + 210, + 211 + ] + }, + { + "teal": 142, + "source": 161, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 143, + "source": 161, + "pc": [ + 215, + 216, + 217, + 218 + ] + }, + { + "teal": 146, + "source": 161, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 219 + ] + }, + { + "teal": 149, + "source": 161, + "pc": [ + 220, + 221, + 222, + 223, + 224, + 225 + ] + }, + { + "teal": 150, + "source": 161, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 151, + "source": 161, + "pc": [ + 229, + 230, + 231, + 232 + ] + }, + { + "teal": 154, + "source": 161, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 233 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE3OAoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzkKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MgoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0gPSAxMTExCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDA0NTcKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzRkNjE3MCAvLyAiZ01hcCIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MwoJLy8gdGhpcy5sTWFwKHRoaXMudHhuLnNlbmRlciwgJ2xNYXAnKS52YWx1ZVsxXSA9IDIyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwOGFlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg0CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSA9IDMzMzMKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMGQwNQoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg2CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbCgkvLyAgICAgICB0aGlzLmdNYXAoJ2dNYXAnKS52YWx1ZVsxXSwKCS8vICAgICAgIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSwKCS8vICAgICBdCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTkyCgkvLyByZXR1cm4gcmV0OwoJZnJhbWVfZGlnIDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VNYXAKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZU1hcCgpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzYKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE3OAoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWUgPSBhCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNzkKCS8vIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWUgPSBhCgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MAoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSBhCglieXRlIDB4NjI0ZDYxNzAgLy8gImJNYXAiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MgoJLy8gdGhpcy5nTWFwKCdnTWFwJykudmFsdWVbMV0gPSAxMTExCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDA0NTcKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzRkNjE3MCAvLyAiZ01hcCIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjE4MwoJLy8gdGhpcy5sTWFwKHRoaXMudHhuLnNlbmRlciwgJ2xNYXAnKS52YWx1ZVsxXSA9IDIyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwOGFlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM0ZDYxNzAgLy8gImxNYXAiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg0CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSA9IDMzMzMKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMGQwNQoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTg2CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbCgkvLyAgICAgICB0aGlzLmdNYXAoJ2dNYXAnKS52YWx1ZVsxXSwKCS8vICAgICAgIHRoaXMubE1hcCh0aGlzLnR4bi5zZW5kZXIsICdsTWFwJykudmFsdWVbMV0sCgkvLyAgICAgICB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZVsxXSwKCS8vICAgICBdCglieXRlIDB4Njc0ZDYxNzAgLy8gImdNYXAiCglhcHBfZ2xvYmFsX2dldAoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzRkNjE3MCAvLyAibE1hcCIKCWFwcF9sb2NhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWJ5dGUgMHg2MjRkNjE3MCAvLyAiYk1hcCIKCWludCA4CglkdXAKCWJveF9leHRyYWN0CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2J1cnkgMSAvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTkyCgkvLyByZXR1cm4gcmV0OwoJZnJhbWVfZGlnIDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgInVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwKCl1aW50NjRbM10iCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlTWFwCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.approval.teal b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.approval.teal index af72886ab..7286ad18b 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc32.json b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc32.json index 035b1cff9..515994a0d 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNgoJLy8gdGhpcy5nUmVmLnZhbHVlID0gYQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3CgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE4CgkvLyB0aGlzLmJSZWYudmFsdWUgPSBhCglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMAoJLy8gdGhpcy5nUmVmLnZhbHVlWzFdID0gMTExCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwNmYKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMQoJLy8gdGhpcy5sUmVmKHRoaXMudHhuLnNlbmRlcikudmFsdWVbMV0gPSAyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMGRlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyCgkvLyB0aGlzLmJSZWYudmFsdWVbMV0gPSAzMzMKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMDE0ZAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI0CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbdGhpcy5nUmVmLnZhbHVlWzFdLCB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZVsxXSwgdGhpcy5iUmVmLnZhbHVlWzFdXQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNgoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNgoJLy8gdGhpcy5nUmVmLnZhbHVlID0gYQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3CgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE4CgkvLyB0aGlzLmJSZWYudmFsdWUgPSBhCglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMAoJLy8gdGhpcy5nUmVmLnZhbHVlWzFdID0gMTExCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwNmYKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMQoJLy8gdGhpcy5sUmVmKHRoaXMudHhuLnNlbmRlcikudmFsdWVbMV0gPSAyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMGRlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyCgkvLyB0aGlzLmJSZWYudmFsdWVbMV0gPSAzMzMKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMDE0ZAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI0CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbdGhpcy5nUmVmLnZhbHVlWzFdLCB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZVsxXSwgdGhpcy5iUmVmLnZhbHVlWzFdXQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNgoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc56_draft.json index 4e1860a95..c9e9d9bd7 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateStaticArrayInStorageRef.arc56_draft.json @@ -93,751 +93,754 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 99, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21 - ] - }, - { - "teal": 13, - "source": 99, - "pc": [ - 22, - 23 - ] - }, - { - "teal": 14, - "source": 99, - "pc": [ - 24 - ] - }, - { - "teal": 15, - "source": 99, - "pc": [ - 25, - 26 - ] - }, - { - "teal": 16, - "source": 99, - "pc": [ - 27 - ] - }, - { - "teal": 17, - "source": 99, - "pc": [ - 28, - 29 - ] - }, - { - "teal": 18, - "source": 99, - "pc": [ - 30 - ] - }, - { - "teal": 19, - "source": 99, - "pc": [ - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56 - ] - }, - { - "teal": 23, - "source": 99, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 57 - ] - }, - { - "teal": 28, - "source": 112, - "pc": [ - 58, - 59, - 60, - 61, - 62, - 63 - ] - }, - { - "teal": 31, - "source": 112, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 32, - "source": 112, - "pc": [ - 67 - ] - }, - { - "teal": 33, - "source": 112, - "pc": [ - 68 - ] - }, - { - "teal": 34, - "source": 112, - "pc": [ - 69 - ] - }, - { - "teal": 35, - "source": 112, - "pc": [ - 70 - ] - }, - { - "teal": 39, - "source": 112, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 42, - "source": 112, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 43, - "source": 112, - "pc": [ - 76 - ] - }, - { - "teal": 47, - "source": 114, - "pc": [ - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102 - ] - }, - { - "teal": 48, - "source": 114, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 52, - "source": 116, - "pc": [ - 105 - ] - }, - { - "teal": 53, - "source": 116, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 54, - "source": 116, - "pc": [ - 108 - ] - }, - { - "teal": 58, - "source": 117, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 59, - "source": 117, - "pc": [ - 111 - ] - }, - { - "teal": 60, - "source": 117, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 61, - "source": 117, - "pc": [ - 114 - ] - }, - { - "teal": 65, - "source": 118, - "pc": [ - 115 - ] - }, - { - "teal": 66, - "source": 118, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 67, - "source": 118, - "pc": [ - 118 - ] - }, - { - "teal": 71, - "source": 120, - "pc": [ - 119 - ] - }, - { - "teal": 72, - "source": 120, - "pc": [ - 120 - ] - }, - { - "teal": 73, - "source": 120, - "pc": [ - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 74, - "source": 120, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 75, - "source": 120, - "pc": [ - 133 - ] - }, - { - "teal": 76, - "source": 120, - "pc": [ - 134 - ] - }, - { - "teal": 77, - "source": 120, - "pc": [ - 135 - ] - }, - { - "teal": 81, - "source": 121, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 82, - "source": 121, - "pc": [ - 138 - ] - }, - { - "teal": 83, - "source": 121, - "pc": [ - 139 - ] - }, - { - "teal": 84, - "source": 121, - "pc": [ - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149 - ] - }, - { - "teal": 85, - "source": 121, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 86, - "source": 121, - "pc": [ - 152, - 153 - ] - }, - { - "teal": 87, - "source": 121, - "pc": [ - 154 - ] - }, - { - "teal": 88, - "source": 121, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 89, - "source": 121, - "pc": [ - 157 - ] - }, - { - "teal": 93, - "source": 122, - "pc": [ - 158 - ] - }, - { - "teal": 94, - "source": 122, - "pc": [ - 159 - ] - }, - { - "teal": 95, - "source": 122, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169 - ] - }, - { - "teal": 96, - "source": 122, - "pc": [ - 170 - ] - }, - { - "teal": 100, - "source": 124, - "pc": [ - 171 - ] - }, - { - "teal": 101, - "source": 124, - "pc": [ - 172 - ] - }, - { - "teal": 102, - "source": 124, - "pc": [ - 173, - 174, - 175 - ] - }, - { - "teal": 103, - "source": 124, - "pc": [ - 176 - ] - }, - { - "teal": 104, - "source": 124, - "pc": [ - 177 - ] - }, - { - "teal": 105, - "source": 124, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 106, - "source": 124, - "pc": [ - 180 - ] - }, - { - "teal": 107, - "source": 124, - "pc": [ - 181 - ] - }, - { - "teal": 108, - "source": 124, - "pc": [ - 182, - 183, - 184 - ] - }, - { - "teal": 109, - "source": 124, - "pc": [ - 185 - ] - }, - { - "teal": 110, - "source": 124, - "pc": [ - 186 - ] - }, - { - "teal": 111, - "source": 124, - "pc": [ - 187 - ] - }, - { - "teal": 112, - "source": 124, - "pc": [ - 188 - ] - }, - { - "teal": 113, - "source": 124, - "pc": [ - 189 - ] - }, - { - "teal": 114, - "source": 124, - "pc": [ - 190 - ] - }, - { - "teal": 115, - "source": 124, - "pc": [ - 191 - ] - }, - { - "teal": 116, - "source": 124, - "pc": [ - 192 - ] - }, - { - "teal": 117, - "source": 124, - "pc": [ - 193 - ] - }, - { - "teal": 118, - "source": 124, - "pc": [ - 194 - ] - }, - { - "teal": 119, - "source": 124, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 123, - "source": 126, - "pc": [ - 197, - 198 - ] - }, - { - "teal": 126, - "source": 112, - "pc": [ - 199, - 200 - ] - }, - { - "teal": 129, - "source": 112, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 130, - "source": 112, - "pc": [ - 203 - ] - }, - { - "teal": 133, - "source": 99, - "pc": [ - 204 - ] - }, - { - "teal": 134, - "source": 99, - "pc": [ - 205 - ] - }, - { - "teal": 137, - "source": 99, - "pc": [ - 206, - 207, - 208, - 209, - 210, - 211 - ] - }, - { - "teal": 138, - "source": 99, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 139, - "source": 99, - "pc": [ - 215, - 216, - 217, - 218 - ] - }, - { - "teal": 142, - "source": 99, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 219 - ] - }, - { - "teal": 145, - "source": 99, - "pc": [ - 220, - 221, - 222, - 223, - 224, - 225 - ] - }, - { - "teal": 146, - "source": 99, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 147, - "source": 99, - "pc": [ - 229, - 230, - 231, - 232 - ] - }, - { - "teal": 150, - "source": 99, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 233 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 99, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + }, + { + "teal": 13, + "source": 99, + "pc": [ + 22, + 23 + ] + }, + { + "teal": 14, + "source": 99, + "pc": [ + 24 + ] + }, + { + "teal": 15, + "source": 99, + "pc": [ + 25, + 26 + ] + }, + { + "teal": 16, + "source": 99, + "pc": [ + 27 + ] + }, + { + "teal": 17, + "source": 99, + "pc": [ + 28, + 29 + ] + }, + { + "teal": 18, + "source": 99, + "pc": [ + 30 + ] + }, + { + "teal": 19, + "source": 99, + "pc": [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + }, + { + "teal": 23, + "source": 99, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 57 + ] + }, + { + "teal": 28, + "source": 112, + "pc": [ + 58, + 59, + 60, + 61, + 62, + 63 + ] + }, + { + "teal": 31, + "source": 112, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 32, + "source": 112, + "pc": [ + 67 + ] + }, + { + "teal": 33, + "source": 112, + "pc": [ + 68 + ] + }, + { + "teal": 34, + "source": 112, + "pc": [ + 69 + ] + }, + { + "teal": 35, + "source": 112, + "pc": [ + 70 + ] + }, + { + "teal": 39, + "source": 112, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 42, + "source": 112, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 43, + "source": 112, + "pc": [ + 76 + ] + }, + { + "teal": 47, + "source": 114, + "pc": [ + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102 + ] + }, + { + "teal": 48, + "source": 114, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 52, + "source": 116, + "pc": [ + 105 + ] + }, + { + "teal": 53, + "source": 116, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 54, + "source": 116, + "pc": [ + 108 + ] + }, + { + "teal": 58, + "source": 117, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 59, + "source": 117, + "pc": [ + 111 + ] + }, + { + "teal": 60, + "source": 117, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 61, + "source": 117, + "pc": [ + 114 + ] + }, + { + "teal": 65, + "source": 118, + "pc": [ + 115 + ] + }, + { + "teal": 66, + "source": 118, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 67, + "source": 118, + "pc": [ + 118 + ] + }, + { + "teal": 71, + "source": 120, + "pc": [ + 119 + ] + }, + { + "teal": 72, + "source": 120, + "pc": [ + 120 + ] + }, + { + "teal": 73, + "source": 120, + "pc": [ + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 74, + "source": 120, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 75, + "source": 120, + "pc": [ + 133 + ] + }, + { + "teal": 76, + "source": 120, + "pc": [ + 134 + ] + }, + { + "teal": 77, + "source": 120, + "pc": [ + 135 + ] + }, + { + "teal": 81, + "source": 121, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 82, + "source": 121, + "pc": [ + 138 + ] + }, + { + "teal": 83, + "source": 121, + "pc": [ + 139 + ] + }, + { + "teal": 84, + "source": 121, + "pc": [ + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149 + ] + }, + { + "teal": 85, + "source": 121, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 86, + "source": 121, + "pc": [ + 152, + 153 + ] + }, + { + "teal": 87, + "source": 121, + "pc": [ + 154 + ] + }, + { + "teal": 88, + "source": 121, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 89, + "source": 121, + "pc": [ + 157 + ] + }, + { + "teal": 93, + "source": 122, + "pc": [ + 158 + ] + }, + { + "teal": 94, + "source": 122, + "pc": [ + 159 + ] + }, + { + "teal": 95, + "source": 122, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169 + ] + }, + { + "teal": 96, + "source": 122, + "pc": [ + 170 + ] + }, + { + "teal": 100, + "source": 124, + "pc": [ + 171 + ] + }, + { + "teal": 101, + "source": 124, + "pc": [ + 172 + ] + }, + { + "teal": 102, + "source": 124, + "pc": [ + 173, + 174, + 175 + ] + }, + { + "teal": 103, + "source": 124, + "pc": [ + 176 + ] + }, + { + "teal": 104, + "source": 124, + "pc": [ + 177 + ] + }, + { + "teal": 105, + "source": 124, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 106, + "source": 124, + "pc": [ + 180 + ] + }, + { + "teal": 107, + "source": 124, + "pc": [ + 181 + ] + }, + { + "teal": 108, + "source": 124, + "pc": [ + 182, + 183, + 184 + ] + }, + { + "teal": 109, + "source": 124, + "pc": [ + 185 + ] + }, + { + "teal": 110, + "source": 124, + "pc": [ + 186 + ] + }, + { + "teal": 111, + "source": 124, + "pc": [ + 187 + ] + }, + { + "teal": 112, + "source": 124, + "pc": [ + 188 + ] + }, + { + "teal": 113, + "source": 124, + "pc": [ + 189 + ] + }, + { + "teal": 114, + "source": 124, + "pc": [ + 190 + ] + }, + { + "teal": 115, + "source": 124, + "pc": [ + 191 + ] + }, + { + "teal": 116, + "source": 124, + "pc": [ + 192 + ] + }, + { + "teal": 117, + "source": 124, + "pc": [ + 193 + ] + }, + { + "teal": 118, + "source": 124, + "pc": [ + 194 + ] + }, + { + "teal": 119, + "source": 124, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 123, + "source": 126, + "pc": [ + 197, + 198 + ] + }, + { + "teal": 126, + "source": 112, + "pc": [ + 199, + 200 + ] + }, + { + "teal": 129, + "source": 112, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 130, + "source": 112, + "pc": [ + 203 + ] + }, + { + "teal": 133, + "source": 99, + "pc": [ + 204 + ] + }, + { + "teal": 134, + "source": 99, + "pc": [ + 205 + ] + }, + { + "teal": 137, + "source": 99, + "pc": [ + 206, + 207, + 208, + 209, + 210, + 211 + ] + }, + { + "teal": 138, + "source": 99, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 139, + "source": 99, + "pc": [ + 215, + 216, + 217, + 218 + ] + }, + { + "teal": 142, + "source": 99, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 219 + ] + }, + { + "teal": 145, + "source": 99, + "pc": [ + 220, + 221, + 222, + 223, + 224, + 225 + ] + }, + { + "teal": 146, + "source": 99, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 147, + "source": 99, + "pc": [ + 229, + 230, + 231, + 232 + ] + }, + { + "teal": 150, + "source": 99, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 233 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNgoJLy8gdGhpcy5nUmVmLnZhbHVlID0gYQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3CgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE4CgkvLyB0aGlzLmJSZWYudmFsdWUgPSBhCglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMAoJLy8gdGhpcy5nUmVmLnZhbHVlWzFdID0gMTExCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwNmYKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMQoJLy8gdGhpcy5sUmVmKHRoaXMudHhuLnNlbmRlcikudmFsdWVbMV0gPSAyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMGRlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyCgkvLyB0aGlzLmJSZWYudmFsdWVbMV0gPSAzMzMKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMDE0ZAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI0CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbdGhpcy5nUmVmLnZhbHVlWzFdLCB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZVsxXSwgdGhpcy5iUmVmLnZhbHVlWzFdXQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNgoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYoKXVpbnQ2NFszXQoqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmKCl1aW50NjRbM10KCWNhbGxzdWIgdXBkYXRlU3RhdGljQXJyYXlJblN0b3JhZ2VSZWYKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CnVwZGF0ZVN0YXRpY0FycmF5SW5TdG9yYWdlUmVmOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxMTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMTEsIDIyLCAzM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDBiMDAwMDAwMDAwMDAwMDAxNjAwMDAwMDAwMDAwMDAwMjEKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjExNgoJLy8gdGhpcy5nUmVmLnZhbHVlID0gYQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE3CgkvLyB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZSA9IGEKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTE4CgkvLyB0aGlzLmJSZWYudmFsdWUgPSBhCglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+Cglib3hfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMAoJLy8gdGhpcy5nUmVmLnZhbHVlWzFdID0gMTExCglieXRlIDB4Njc1MjY1NjYgLy8gImdSZWYiCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwNmYKCXJlcGxhY2UyIDgKCWJ5dGUgMHg2NzUyNjU2NiAvLyAiZ1JlZiIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyMQoJLy8gdGhpcy5sUmVmKHRoaXMudHhuLnNlbmRlcikudmFsdWVbMV0gPSAyMjIKCXR4biBTZW5kZXIKCWJ5dGUgMHg2YzUyNjU2NiAvLyAibFJlZiIKCWFwcF9sb2NhbF9nZXQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMGRlCglyZXBsYWNlMiA4Cgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCgl1bmNvdmVyIDIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTIyCgkvLyB0aGlzLmJSZWYudmFsdWVbMV0gPSAzMzMKCWJ5dGUgMHg2MjUyNjU2NiAvLyAiYlJlZiIKCWludCA4CglieXRlIDB4MDAwMDAwMDAwMDAwMDE0ZAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTI0CgkvLyByZXQ6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbdGhpcy5nUmVmLnZhbHVlWzFdLCB0aGlzLmxSZWYodGhpcy50eG4uc2VuZGVyKS52YWx1ZVsxXSwgdGhpcy5iUmVmLnZhbHVlWzFdXQoJYnl0ZSAweDY3NTI2NTY2IC8vICJnUmVmIgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgl0eG4gU2VuZGVyCglieXRlIDB4NmM1MjY1NjYgLy8gImxSZWYiCglhcHBfbG9jYWxfZ2V0CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlIDB4NjI1MjY1NjYgLy8gImJSZWYiCglpbnQgOAoJZHVwCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDEgLy8gcmV0OiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjEyNgoJLy8gcmV0dXJuIHJldDsKCWZyYW1lX2RpZyAxIC8vIHJldDogU3RhdGljQXJyYXk8dWludDY0LCAzPgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX09wdEluOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZigpdWludDY0WzNdIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNBcnJheUluU3RvcmFnZVJlZgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE9wdEluCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.approval.teal b/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.approval.teal index 1659e9a92..5e37cd414 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc32.json b/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc32.json index 6c7c0cb1a..afc8cd57d 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKTogc3RyaW5nCnVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU3MwoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGFkZHI6IHRoaXMudHhuLnNlbmRlciwgc3RyOiAnSGVsbG8gV29ybGQhJyB9CglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyMiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc1CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5hZGRyID0gdGhpcy50eG4uc2VuZGVyCglieXRlIDB4MDAwNDYyNGQ2MTcwCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCXR4biBTZW5kZXIKCXJlcGxhY2UzCglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc2CgkvLyByZXR1cm4gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUuc3RyOwoJYnl0ZSAweDAwMDQ2MjRkNjE3MAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKTogc3RyaW5nCnVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU3MwoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGFkZHI6IHRoaXMudHhuLnNlbmRlciwgc3RyOiAnSGVsbG8gV29ybGQhJyB9CglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyMiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc1CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5hZGRyID0gdGhpcy50eG4uc2VuZGVyCglieXRlIDB4MDAwNDYyNGQ2MTcwCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCXR4biBTZW5kZXIKCXJlcGxhY2UzCglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc2CgkvLyByZXR1cm4gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUuc3RyOwoJYnl0ZSAweDAwMDQ2MjRkNjE3MAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc56_draft.json index e68500a39..a696fc789 100644 --- a/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateStaticFieldInDynamicObjectInBox.arc56_draft.json @@ -34,10 +34,16 @@ 56 ], "structs": { - "{ addr: Address; str: string }": { - "addr": "address", - "str": "string" - } + "{ addr: Address; str: string }": [ + { + "name": "addr", + "type": "address" + }, + { + "name": "str", + "type": "string" + } + ] }, "state": { "schema": { @@ -70,907 +76,910 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 1569, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13 - ] - }, - { - "teal": 13, - "source": 1569, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 14, - "source": 1569, - "pc": [ - 16 - ] - }, - { - "teal": 15, - "source": 1569, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 16, - "source": 1569, - "pc": [ - 19 - ] - }, - { - "teal": 17, - "source": 1569, - "pc": [ - 20, - 21 - ] - }, - { - "teal": 18, - "source": 1569, - "pc": [ - 22 - ] - }, - { - "teal": 19, - "source": 1569, - "pc": [ - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48 - ] - }, - { - "teal": 23, - "source": 1569, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 49 - ] - }, - { - "teal": 28, - "source": 1572, - "pc": [ - 50, - 51, - 52, - 53, - 54, - 55 - ] - }, - { - "teal": 31, - "source": 1572, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 32, - "source": 1572, - "pc": [ - 59 - ] - }, - { - "teal": 33, - "source": 1572, - "pc": [ - 60 - ] - }, - { - "teal": 34, - "source": 1572, - "pc": [ - 61 - ] - }, - { - "teal": 35, - "source": 1572, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 36, - "source": 1572, - "pc": [ - 65 - ] - }, - { - "teal": 37, - "source": 1572, - "pc": [ - 66 - ] - }, - { - "teal": 38, - "source": 1572, - "pc": [ - 67 - ] - }, - { - "teal": 39, - "source": 1572, - "pc": [ - 68 - ] - }, - { - "teal": 40, - "source": 1572, - "pc": [ - 69 - ] - }, - { - "teal": 41, - "source": 1572, - "pc": [ - 70 - ] - }, - { - "teal": 45, - "source": 1572, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 49, - "source": 1573, - "pc": [ - 74 - ] - }, - { - "teal": 50, - "source": 1573, - "pc": [ - 75 - ] - }, - { - "teal": 51, - "source": 1573, - "pc": [ - 76 - ] - }, - { - "teal": 52, - "source": 1573, - "pc": [ - 77 - ] - }, - { - "teal": 53, - "source": 1573, - "pc": [ - 78 - ] - }, - { - "teal": 54, - "source": 1573, - "pc": [ - 79 - ] - }, - { - "teal": 55, - "source": 1573, - "pc": [ - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 56, - "source": 1573, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 57, - "source": 1573, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 58, - "source": 1573, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 59, - "source": 1573, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 60, - "source": 1573, - "pc": [ - 108 - ] - }, - { - "teal": 61, - "source": 1573, - "pc": [ - 109 - ] - }, - { - "teal": 62, - "source": 1573, - "pc": [ - 110 - ] - }, - { - "teal": 66, - "source": 1575, - "pc": [ - 111 - ] - }, - { - "teal": 67, - "source": 1575, - "pc": [ - 112 - ] - }, - { - "teal": 70, - "source": 1575, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 113 - ] - }, - { - "teal": 71, - "source": 1575, - "pc": [ - 114, - 115 - ] - }, - { - "teal": 72, - "source": 1575, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 73, - "source": 1575, - "pc": [ - 118, - 119 - ] - }, - { - "teal": 74, - "source": 1575, - "pc": [ - 120, - 121 - ] - }, - { - "teal": 75, - "source": 1575, - "pc": [ - 122 - ] - }, - { - "teal": 76, - "source": 1575, - "pc": [ - 123 - ] - }, - { - "teal": 77, - "source": 1575, - "pc": [ - 124 - ] - }, - { - "teal": 78, - "source": 1575, - "pc": [ - 125 - ] - }, - { - "teal": 79, - "source": 1575, - "pc": [ - 126 - ] - }, - { - "teal": 80, - "source": 1575, - "pc": [ - 127 - ] - }, - { - "teal": 81, - "source": 1575, - "pc": [ - 128 - ] - }, - { - "teal": 85, - "source": 1576, - "pc": [ - 129 - ] - }, - { - "teal": 86, - "source": 1576, - "pc": [ - 130 - ] - }, - { - "teal": 89, - "source": 1576, - "errorMessage": "box value does not exist: this.bMap('bMap').value", - "pc": [ - 131 - ] - }, - { - "teal": 90, - "source": 1576, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 91, - "source": 1576, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 92, - "source": 1576, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 93, - "source": 1576, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 94, - "source": 1576, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 95, - "source": 1576, - "pc": [ - 142 - ] - }, - { - "teal": 96, - "source": 1576, - "pc": [ - 143 - ] - }, - { - "teal": 97, - "source": 1576, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 98, - "source": 1576, - "pc": [ - 146 - ] - }, - { - "teal": 99, - "source": 1576, - "pc": [ - 147 - ] - }, - { - "teal": 100, - "source": 1576, - "pc": [ - 148 - ] - }, - { - "teal": 101, - "source": 1576, - "pc": [ - 149 - ] - }, - { - "teal": 102, - "source": 1576, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 103, - "source": 1576, - "pc": [ - 152 - ] - }, - { - "teal": 104, - "source": 1576, - "pc": [ - 153 - ] - }, - { - "teal": 105, - "source": 1576, - "pc": [ - 154, - 155, - 156 - ] - }, - { - "teal": 106, - "source": 1572, - "pc": [ - 157 - ] - }, - { - "teal": 109, - "source": 1569, - "pc": [ - 158 - ] - }, - { - "teal": 110, - "source": 1569, - "pc": [ - 159 - ] - }, - { - "teal": 113, - "source": 1569, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 114, - "source": 1569, - "pc": [ - 166, - 167, - 168 - ] - }, - { - "teal": 115, - "source": 1569, - "pc": [ - 169, - 170, - 171, - 172 - ] - }, - { - "teal": 118, - "source": 1569, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 173 - ] - }, - { - "teal": 121, - "source": 1569, - "pc": [ - 174, - 175, - 176, - 177, - 178, - 179 - ] - }, - { - "teal": 122, - "source": 1569, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 123, - "source": 1569, - "pc": [ - 183, - 184, - 185, - 186 - ] - }, - { - "teal": 126, - "source": 1569, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 187 - ] - }, - { - "teal": 129, - "source": 1569, - "pc": [ - 188, - 189, - 190 - ] - }, - { - "teal": 130, - "source": 1569, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 131, - "source": 1569, - "pc": [ - 193, - 194 - ] - }, - { - "teal": 132, - "source": 1569, - "pc": [ - 195 - ] - }, - { - "teal": 133, - "source": 1569, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 134, - "source": 1569, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 135, - "source": 1569, - "pc": [ - 200 - ] - }, - { - "teal": 138, - "source": 1569, - "pc": [ - 201, - 202, - 203 - ] - }, - { - "teal": 139, - "source": 1569, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 140, - "source": 1569, - "pc": [ - 206, - 207 - ] - }, - { - "teal": 141, - "source": 1569, - "pc": [ - 208 - ] - }, - { - "teal": 142, - "source": 1569, - "pc": [ - 209, - 210 - ] - }, - { - "teal": 143, - "source": 1569, - "pc": [ - 211, - 212 - ] - }, - { - "teal": 144, - "source": 1569, - "pc": [ - 213 - ] - }, - { - "teal": 145, - "source": 1569, - "pc": [ - 214 - ] - }, - { - "teal": 146, - "source": 1569, - "pc": [ - 215, - 216 - ] - }, - { - "teal": 147, - "source": 1569, - "pc": [ - 217 - ] - }, - { - "teal": 148, - "source": 1569, - "pc": [ - 218 - ] - }, - { - "teal": 149, - "source": 1569, - "pc": [ - 219 - ] - }, - { - "teal": 150, - "source": 1569, - "pc": [ - 220, - 221, - 222 - ] - }, - { - "teal": 151, - "source": 1569, - "pc": [ - 223, - 224 - ] - }, - { - "teal": 152, - "source": 1569, - "pc": [ - 225, - 226 - ] - }, - { - "teal": 153, - "source": 1569, - "pc": [ - 227 - ] - }, - { - "teal": 154, - "source": 1569, - "pc": [ - 228 - ] - }, - { - "teal": 155, - "source": 1569, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 156, - "source": 1569, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 157, - "source": 1569, - "pc": [ - 233, - 234 - ] - }, - { - "teal": 158, - "source": 1569, - "pc": [ - 235, - 236 - ] - }, - { - "teal": 159, - "source": 1569, - "pc": [ - 237 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 1569, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + }, + { + "teal": 13, + "source": 1569, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 14, + "source": 1569, + "pc": [ + 16 + ] + }, + { + "teal": 15, + "source": 1569, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 16, + "source": 1569, + "pc": [ + 19 + ] + }, + { + "teal": 17, + "source": 1569, + "pc": [ + 20, + 21 + ] + }, + { + "teal": 18, + "source": 1569, + "pc": [ + 22 + ] + }, + { + "teal": 19, + "source": 1569, + "pc": [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + }, + { + "teal": 23, + "source": 1569, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 49 + ] + }, + { + "teal": 28, + "source": 1572, + "pc": [ + 50, + 51, + 52, + 53, + 54, + 55 + ] + }, + { + "teal": 31, + "source": 1572, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 32, + "source": 1572, + "pc": [ + 59 + ] + }, + { + "teal": 33, + "source": 1572, + "pc": [ + 60 + ] + }, + { + "teal": 34, + "source": 1572, + "pc": [ + 61 + ] + }, + { + "teal": 35, + "source": 1572, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 36, + "source": 1572, + "pc": [ + 65 + ] + }, + { + "teal": 37, + "source": 1572, + "pc": [ + 66 + ] + }, + { + "teal": 38, + "source": 1572, + "pc": [ + 67 + ] + }, + { + "teal": 39, + "source": 1572, + "pc": [ + 68 + ] + }, + { + "teal": 40, + "source": 1572, + "pc": [ + 69 + ] + }, + { + "teal": 41, + "source": 1572, + "pc": [ + 70 + ] + }, + { + "teal": 45, + "source": 1572, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 49, + "source": 1573, + "pc": [ + 74 + ] + }, + { + "teal": 50, + "source": 1573, + "pc": [ + 75 + ] + }, + { + "teal": 51, + "source": 1573, + "pc": [ + 76 + ] + }, + { + "teal": 52, + "source": 1573, + "pc": [ + 77 + ] + }, + { + "teal": 53, + "source": 1573, + "pc": [ + 78 + ] + }, + { + "teal": 54, + "source": 1573, + "pc": [ + 79 + ] + }, + { + "teal": 55, + "source": 1573, + "pc": [ + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 56, + "source": 1573, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 57, + "source": 1573, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 58, + "source": 1573, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 59, + "source": 1573, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 60, + "source": 1573, + "pc": [ + 108 + ] + }, + { + "teal": 61, + "source": 1573, + "pc": [ + 109 + ] + }, + { + "teal": 62, + "source": 1573, + "pc": [ + 110 + ] + }, + { + "teal": 66, + "source": 1575, + "pc": [ + 111 + ] + }, + { + "teal": 67, + "source": 1575, + "pc": [ + 112 + ] + }, + { + "teal": 70, + "source": 1575, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 113 + ] + }, + { + "teal": 71, + "source": 1575, + "pc": [ + 114, + 115 + ] + }, + { + "teal": 72, + "source": 1575, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 73, + "source": 1575, + "pc": [ + 118, + 119 + ] + }, + { + "teal": 74, + "source": 1575, + "pc": [ + 120, + 121 + ] + }, + { + "teal": 75, + "source": 1575, + "pc": [ + 122 + ] + }, + { + "teal": 76, + "source": 1575, + "pc": [ + 123 + ] + }, + { + "teal": 77, + "source": 1575, + "pc": [ + 124 + ] + }, + { + "teal": 78, + "source": 1575, + "pc": [ + 125 + ] + }, + { + "teal": 79, + "source": 1575, + "pc": [ + 126 + ] + }, + { + "teal": 80, + "source": 1575, + "pc": [ + 127 + ] + }, + { + "teal": 81, + "source": 1575, + "pc": [ + 128 + ] + }, + { + "teal": 85, + "source": 1576, + "pc": [ + 129 + ] + }, + { + "teal": 86, + "source": 1576, + "pc": [ + 130 + ] + }, + { + "teal": 89, + "source": 1576, + "errorMessage": "box value does not exist: this.bMap('bMap').value", + "pc": [ + 131 + ] + }, + { + "teal": 90, + "source": 1576, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 91, + "source": 1576, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 92, + "source": 1576, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 93, + "source": 1576, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 94, + "source": 1576, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 95, + "source": 1576, + "pc": [ + 142 + ] + }, + { + "teal": 96, + "source": 1576, + "pc": [ + 143 + ] + }, + { + "teal": 97, + "source": 1576, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 98, + "source": 1576, + "pc": [ + 146 + ] + }, + { + "teal": 99, + "source": 1576, + "pc": [ + 147 + ] + }, + { + "teal": 100, + "source": 1576, + "pc": [ + 148 + ] + }, + { + "teal": 101, + "source": 1576, + "pc": [ + 149 + ] + }, + { + "teal": 102, + "source": 1576, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 103, + "source": 1576, + "pc": [ + 152 + ] + }, + { + "teal": 104, + "source": 1576, + "pc": [ + 153 + ] + }, + { + "teal": 105, + "source": 1576, + "pc": [ + 154, + 155, + 156 + ] + }, + { + "teal": 106, + "source": 1572, + "pc": [ + 157 + ] + }, + { + "teal": 109, + "source": 1569, + "pc": [ + 158 + ] + }, + { + "teal": 110, + "source": 1569, + "pc": [ + 159 + ] + }, + { + "teal": 113, + "source": 1569, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 114, + "source": 1569, + "pc": [ + 166, + 167, + 168 + ] + }, + { + "teal": 115, + "source": 1569, + "pc": [ + 169, + 170, + 171, + 172 + ] + }, + { + "teal": 118, + "source": 1569, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 173 + ] + }, + { + "teal": 121, + "source": 1569, + "pc": [ + 174, + 175, + 176, + 177, + 178, + 179 + ] + }, + { + "teal": 122, + "source": 1569, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 123, + "source": 1569, + "pc": [ + 183, + 184, + 185, + 186 + ] + }, + { + "teal": 126, + "source": 1569, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 187 + ] + }, + { + "teal": 129, + "source": 1569, + "pc": [ + 188, + 189, + 190 + ] + }, + { + "teal": 130, + "source": 1569, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 131, + "source": 1569, + "pc": [ + 193, + 194 + ] + }, + { + "teal": 132, + "source": 1569, + "pc": [ + 195 + ] + }, + { + "teal": 133, + "source": 1569, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 134, + "source": 1569, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 135, + "source": 1569, + "pc": [ + 200 + ] + }, + { + "teal": 138, + "source": 1569, + "pc": [ + 201, + 202, + 203 + ] + }, + { + "teal": 139, + "source": 1569, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 140, + "source": 1569, + "pc": [ + 206, + 207 + ] + }, + { + "teal": 141, + "source": 1569, + "pc": [ + 208 + ] + }, + { + "teal": 142, + "source": 1569, + "pc": [ + 209, + 210 + ] + }, + { + "teal": 143, + "source": 1569, + "pc": [ + 211, + 212 + ] + }, + { + "teal": 144, + "source": 1569, + "pc": [ + 213 + ] + }, + { + "teal": 145, + "source": 1569, + "pc": [ + 214 + ] + }, + { + "teal": 146, + "source": 1569, + "pc": [ + 215, + 216 + ] + }, + { + "teal": 147, + "source": 1569, + "pc": [ + 217 + ] + }, + { + "teal": 148, + "source": 1569, + "pc": [ + 218 + ] + }, + { + "teal": 149, + "source": 1569, + "pc": [ + 219 + ] + }, + { + "teal": 150, + "source": 1569, + "pc": [ + 220, + 221, + 222 + ] + }, + { + "teal": 151, + "source": 1569, + "pc": [ + 223, + 224 + ] + }, + { + "teal": 152, + "source": 1569, + "pc": [ + 225, + 226 + ] + }, + { + "teal": 153, + "source": 1569, + "pc": [ + 227 + ] + }, + { + "teal": 154, + "source": 1569, + "pc": [ + 228 + ] + }, + { + "teal": 155, + "source": 1569, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 156, + "source": 1569, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 157, + "source": 1569, + "pc": [ + 233, + 234 + ] + }, + { + "teal": 158, + "source": 1569, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 159, + "source": 1569, + "pc": [ + 237 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKTogc3RyaW5nCnVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU3MwoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGFkZHI6IHRoaXMudHhuLnNlbmRlciwgc3RyOiAnSGVsbG8gV29ybGQhJyB9CglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyMiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc1CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5hZGRyID0gdGhpcy50eG4uc2VuZGVyCglieXRlIDB4MDAwNDYyNGQ2MTcwCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCXR4biBTZW5kZXIKCXJlcGxhY2UzCglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc2CgkvLyByZXR1cm4gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUuc3RyOwoJYnl0ZSAweDAwMDQ2MjRkNjE3MAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmcKKmFiaV9yb3V0ZV91cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKXN0cmluZwoJY2FsbHN1YiB1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3goKTogc3RyaW5nCnVwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3g6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6MTU3MwoJLy8gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUgPSB7IGFkZHI6IHRoaXMudHhuLnNlbmRlciwgc3RyOiAnSGVsbG8gV29ybGQhJyB9CglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweCAvLyBpbml0aWFsIGhlYWQKCWJ5dGUgMHggLy8gaW5pdGlhbCB0YWlsCglieXRlIDB4MDAyMiAvLyBpbml0aWFsIGhlYWQgb2Zmc2V0Cgl0eG4gU2VuZGVyCgljYWxsc3ViICpwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJY2FsbHN1YiAqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQKCXBvcCAvLyBwb3AgaGVhZCBvZmZzZXQKCWNvbmNhdCAvLyBjb25jYXQgaGVhZCBhbmQgdGFpbAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc1CgkvLyB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZS5hZGRyID0gdGhpcy50eG4uc2VuZGVyCglieXRlIDB4MDAwNDYyNGQ2MTcwCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJNYXAoJ2JNYXAnKS52YWx1ZQoJYXNzZXJ0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCXR4biBTZW5kZXIKCXJlcGxhY2UzCglieXRlIDB4MDAwNDYyNGQ2MTcwCglkdXAKCWJveF9kZWwKCXBvcAoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czoxNTc2CgkvLyByZXR1cm4gdGhpcy5iTWFwKCdiTWFwJykudmFsdWUuc3RyOwoJYnl0ZSAweDAwMDQ2MjRkNjE3MAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5iTWFwKCdiTWFwJykudmFsdWUKCWFzc2VydAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzMgoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMSAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJZXh0cmFjdDMKCWV4dHJhY3QgMiAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ1cGRhdGVTdGF0aWNGaWVsZEluRHluYW1pY09iamVjdEluQm94KClzdHJpbmciCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVN0YXRpY0ZpZWxkSW5EeW5hbWljT2JqZWN0SW5Cb3gKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX3N0YXRpY190dXBsZV9lbGVtZW50OgoJcHJvdG8gNCAzCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0xIC8vIGVsZW1lbnQKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqcHJvY2Vzc19keW5hbWljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCWNvbmNhdAoJZnJhbWVfYnVyeSAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJZHVwCglsZW4KCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJYnRvaQoJKwoJaXRvYgoJZXh0cmFjdCA2IDIKCWZyYW1lX2J1cnkgLTIgLy8gaGVhZCBvZmZzZXQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglzd2FwCgljb25jYXQKCWZyYW1lX2J1cnkgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTIgLy8gaGVhZCBvZmZzZXQKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateStringInTuple.approval.teal b/tests/contracts/artifacts/ABITestUpdateStringInTuple.approval.teal index ba0ceba75..3f8bc8ae8 100644 --- a/tests/contracts/artifacts/ABITestUpdateStringInTuple.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateStringInTuple.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc32.json b/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc32.json index f5e57a316..fd4eda457 100644 --- a/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCiphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCgljYWxsc3ViIHVwZGF0ZVN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCk6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQp1cGRhdGVTdHJpbmdJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTYwCgkvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0gPSBbOSwgWzhdLCAnSGk/JywgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAwMDYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTA1CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2MgoJLy8gYVswXSA9IDk5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHg2MwoJcmVwbGFjZTIgMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NjMKCS8vIGFbMV0gPSBbMTAsIDExXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwYTAwMGIKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA2CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY0CgkvLyBhWzJdID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2NQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY2CgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY4CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlU3RyaW5nSW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHN0cmluZyx1aW50MTZbXSx1aW50OFtdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCiphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCgljYWxsc3ViIHVwZGF0ZVN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCk6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQp1cGRhdGVTdHJpbmdJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTYwCgkvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0gPSBbOSwgWzhdLCAnSGk/JywgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAwMDYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTA1CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2MgoJLy8gYVswXSA9IDk5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHg2MwoJcmVwbGFjZTIgMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NjMKCS8vIGFbMV0gPSBbMTAsIDExXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwYTAwMGIKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA2CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY0CgkvLyBhWzJdID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2NQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY2CgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY4CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlU3RyaW5nSW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHN0cmluZyx1aW50MTZbXSx1aW50OFtdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc56_draft.json index 87795d798..6cecdc7f8 100644 --- a/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateStringInTuple.arc56_draft.json @@ -60,2490 +60,2493 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 558, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10 - ] - }, - { - "teal": 13, - "source": 558, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 14, - "source": 558, - "pc": [ - 13 - ] - }, - { - "teal": 15, - "source": 558, - "pc": [ - 14 - ] - }, - { - "teal": 16, - "source": 558, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 558, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 558, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 558, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 558, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 559, - "pc": [ - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 31, - "source": 559, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 32, - "source": 559, - "pc": [ - 55 - ] - }, - { - "teal": 33, - "source": 559, - "pc": [ - 56 - ] - }, - { - "teal": 34, - "source": 559, - "pc": [ - 57 - ] - }, - { - "teal": 35, - "source": 559, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 559, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 42, - "source": 559, - "pc": [ - 62 - ] - }, - { - "teal": 46, - "source": 560, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 560, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 560, - "pc": [ - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 49, - "source": 560, - "pc": [ - 69, - 70, - 71 - ] - }, - { - "teal": 50, - "source": 560, - "pc": [ - 72, - 73, - 74 - ] - }, - { - "teal": 51, - "source": 560, - "pc": [ - 75, - 76, - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 52, - "source": 560, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 53, - "source": 560, - "pc": [ - 84, - 85, - 86, - 87, - 88, - 89, - 90 - ] - }, - { - "teal": 54, - "source": 560, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 55, - "source": 560, - "pc": [ - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 56, - "source": 560, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 57, - "source": 560, - "pc": [ - 103, - 104, - 105, - 106, - 107 - ] - }, - { - "teal": 58, - "source": 560, - "pc": [ - 108, - 109, - 110 - ] - }, - { - "teal": 59, - "source": 560, - "pc": [ - 111 - ] - }, - { - "teal": 60, - "source": 560, - "pc": [ - 112 - ] - }, - { - "teal": 61, - "source": 560, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 65, - "source": 562, - "pc": [ - 115, - 116 - ] - }, - { - "teal": 66, - "source": 562, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 67, - "source": 562, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 68, - "source": 562, - "pc": [ - 121, - 122, - 123 - ] - }, - { - "teal": 69, - "source": 562, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 70, - "source": 562, - "pc": [ - 126, - 127 - ] - }, - { - "teal": 74, - "source": 563, - "pc": [ - 128, - 129 - ] - }, - { - "teal": 75, - "source": 563, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 76, - "source": 563, - "pc": [ - 132 - ] - }, - { - "teal": 77, - "source": 563, - "pc": [ - 133 - ] - }, - { - "teal": 78, - "source": 563, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 79, - "source": 563, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 80, - "source": 563, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 81, - "source": 563, - "pc": [ - 140, - 141 - ] - }, - { - "teal": 82, - "source": 563, - "pc": [ - 142 - ] - }, - { - "teal": 83, - "source": 563, - "pc": [ - 143 - ] - }, - { - "teal": 84, - "source": 563, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 85, - "source": 563, - "pc": [ - 146 - ] - }, - { - "teal": 86, - "source": 563, - "pc": [ - 147, - 148 - ] - }, - { - "teal": 87, - "source": 563, - "pc": [ - 149 - ] - }, - { - "teal": 88, - "source": 563, - "pc": [ - 150 - ] - }, - { - "teal": 89, - "source": 563, - "pc": [ - 151 - ] - }, - { - "teal": 90, - "source": 563, - "pc": [ - 152 - ] - }, - { - "teal": 91, - "source": 563, - "pc": [ - 153 - ] - }, - { - "teal": 92, - "source": 563, - "pc": [ - 154 - ] - }, - { - "teal": 93, - "source": 563, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 94, - "source": 563, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 95, - "source": 563, - "pc": [ - 159 - ] - }, - { - "teal": 96, - "source": 563, - "pc": [ - 160, - 161 - ] - }, - { - "teal": 97, - "source": 563, - "pc": [ - 162 - ] - }, - { - "teal": 98, - "source": 563, - "pc": [ - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170 - ] - }, - { - "teal": 99, - "source": 563, - "pc": [ - 171 - ] - }, - { - "teal": 100, - "source": 563, - "pc": [ - 172, - 173 - ] - }, - { - "teal": 101, - "source": 563, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 102, - "source": 563, - "pc": [ - 176, - 177 - ] - }, - { - "teal": 103, - "source": 563, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 104, - "source": 563, - "pc": [ - 180 - ] - }, - { - "teal": 105, - "source": 563, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 106, - "source": 563, - "pc": [ - 183 - ] - }, - { - "teal": 107, - "source": 563, - "pc": [ - 184 - ] - }, - { - "teal": 108, - "source": 563, - "pc": [ - 185 - ] - }, - { - "teal": 109, - "source": 563, - "pc": [ - 186 - ] - }, - { - "teal": 110, - "source": 563, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 111, - "source": 563, - "pc": [ - 189, - 190, - 191 - ] - }, - { - "teal": 112, - "source": 563, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 113, - "source": 563, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 114, - "source": 563, - "pc": [ - 196 - ] - }, - { - "teal": 115, - "source": 563, - "pc": [ - 197 - ] - }, - { - "teal": 116, - "source": 563, - "pc": [ - 198, - 199, - 200 - ] - }, - { - "teal": 117, - "source": 563, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 118, - "source": 563, - "pc": [ - 203, - 204 - ] - }, - { - "teal": 119, - "source": 563, - "pc": [ - 205, - 206 - ] - }, - { - "teal": 120, - "source": 563, - "pc": [ - 207 - ] - }, - { - "teal": 121, - "source": 563, - "pc": [ - 208, - 209, - 210 - ] - }, - { - "teal": 122, - "source": 563, - "pc": [ - 211, - 212 - ] - }, - { - "teal": 123, - "source": 563, - "pc": [ - 213, - 214 - ] - }, - { - "teal": 124, - "source": 563, - "pc": [ - 215 - ] - }, - { - "teal": 125, - "source": 563, - "pc": [ - 216 - ] - }, - { - "teal": 126, - "source": 563, - "pc": [ - 217, - 218, - 219 - ] - }, - { - "teal": 127, - "source": 563, - "pc": [ - 220, - 221 - ] - }, - { - "teal": 128, - "source": 563, - "pc": [ - 222, - 223 - ] - }, - { - "teal": 132, - "source": 564, - "pc": [ - 224, - 225 - ] - }, - { - "teal": 133, - "source": 564, - "pc": [ - 226, - 227 - ] - }, - { - "teal": 134, - "source": 564, - "pc": [ - 228, - 229 - ] - }, - { - "teal": 135, - "source": 564, - "pc": [ - 230 - ] - }, - { - "teal": 136, - "source": 564, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 137, - "source": 564, - "pc": [ - 233, - 234 - ] - }, - { - "teal": 138, - "source": 564, - "pc": [ - 235, - 236 - ] - }, - { - "teal": 139, - "source": 564, - "pc": [ - 237, - 238 - ] - }, - { - "teal": 140, - "source": 564, - "pc": [ - 239 - ] - }, - { - "teal": 141, - "source": 564, - "pc": [ - 240 - ] - }, - { - "teal": 142, - "source": 564, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 143, - "source": 564, - "pc": [ - 243 - ] - }, - { - "teal": 144, - "source": 564, - "pc": [ - 244, - 245 - ] - }, - { - "teal": 145, - "source": 564, - "pc": [ - 246 - ] - }, - { - "teal": 146, - "source": 564, - "pc": [ - 247 - ] - }, - { - "teal": 147, - "source": 564, - "pc": [ - 248 - ] - }, - { - "teal": 148, - "source": 564, - "pc": [ - 249 - ] - }, - { - "teal": 149, - "source": 564, - "pc": [ - 250 - ] - }, - { - "teal": 150, - "source": 564, - "pc": [ - 251 - ] - }, - { - "teal": 151, - "source": 564, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 152, - "source": 564, - "pc": [ - 254, - 255 - ] - }, - { - "teal": 153, - "source": 564, - "pc": [ - 256 - ] - }, - { - "teal": 154, - "source": 564, - "pc": [ - 257, - 258 - ] - }, - { - "teal": 155, - "source": 564, - "pc": [ - 259 - ] - }, - { - "teal": 156, - "source": 564, - "pc": [ - 260, - 261, - 262, - 263, - 264, - 265, - 266, - 267, - 268, - 269, - 270, - 271, - 272, - 273, - 274, - 275 - ] - }, - { - "teal": 157, - "source": 564, - "pc": [ - 276 - ] - }, - { - "teal": 158, - "source": 564, - "pc": [ - 277, - 278 - ] - }, - { - "teal": 159, - "source": 564, - "pc": [ - 279, - 280 - ] - }, - { - "teal": 160, - "source": 564, - "pc": [ - 281, - 282 - ] - }, - { - "teal": 161, - "source": 564, - "pc": [ - 283, - 284 - ] - }, - { - "teal": 162, - "source": 564, - "pc": [ - 285 - ] - }, - { - "teal": 163, - "source": 564, - "pc": [ - 286, - 287 - ] - }, - { - "teal": 164, - "source": 564, - "pc": [ - 288 - ] - }, - { - "teal": 165, - "source": 564, - "pc": [ - 289 - ] - }, - { - "teal": 166, - "source": 564, - "pc": [ - 290 - ] - }, - { - "teal": 167, - "source": 564, - "pc": [ - 291 - ] - }, - { - "teal": 168, - "source": 564, - "pc": [ - 292, - 293 - ] - }, - { - "teal": 169, - "source": 564, - "pc": [ - 294, - 295, - 296 - ] - }, - { - "teal": 170, - "source": 564, - "pc": [ - 297, - 298 - ] - }, - { - "teal": 171, - "source": 564, - "pc": [ - 299, - 300 - ] - }, - { - "teal": 172, - "source": 564, - "pc": [ - 301 - ] - }, - { - "teal": 173, - "source": 564, - "pc": [ - 302 - ] - }, - { - "teal": 174, - "source": 564, - "pc": [ - 303, - 304, - 305 - ] - }, - { - "teal": 175, - "source": 564, - "pc": [ - 306, - 307 - ] - }, - { - "teal": 176, - "source": 564, - "pc": [ - 308, - 309 - ] - }, - { - "teal": 177, - "source": 564, - "pc": [ - 310, - 311 - ] - }, - { - "teal": 178, - "source": 564, - "pc": [ - 312 - ] - }, - { - "teal": 179, - "source": 564, - "pc": [ - 313, - 314, - 315 - ] - }, - { - "teal": 180, - "source": 564, - "pc": [ - 316, - 317 - ] - }, - { - "teal": 181, - "source": 564, - "pc": [ - 318, - 319 - ] - }, - { - "teal": 185, - "source": 565, - "pc": [ - 320, - 321 - ] - }, - { - "teal": 186, - "source": 565, - "pc": [ - 322, - 323 - ] - }, - { - "teal": 187, - "source": 565, - "pc": [ - 324, - 325 - ] - }, - { - "teal": 188, - "source": 565, - "pc": [ - 326 - ] - }, - { - "teal": 189, - "source": 565, - "pc": [ - 327, - 328 - ] - }, - { - "teal": 190, - "source": 565, - "pc": [ - 329, - 330 - ] - }, - { - "teal": 191, - "source": 565, - "pc": [ - 331, - 332 - ] - }, - { - "teal": 192, - "source": 565, - "pc": [ - 333, - 334 - ] - }, - { - "teal": 193, - "source": 565, - "pc": [ - 335 - ] - }, - { - "teal": 194, - "source": 565, - "pc": [ - 336 - ] - }, - { - "teal": 195, - "source": 565, - "pc": [ - 337, - 338 - ] - }, - { - "teal": 196, - "source": 565, - "pc": [ - 339 - ] - }, - { - "teal": 197, - "source": 565, - "pc": [ - 340, - 341 - ] - }, - { - "teal": 198, - "source": 565, - "pc": [ - 342 - ] - }, - { - "teal": 199, - "source": 565, - "pc": [ - 343 - ] - }, - { - "teal": 200, - "source": 565, - "pc": [ - 344 - ] - }, - { - "teal": 201, - "source": 565, - "pc": [ - 345 - ] - }, - { - "teal": 202, - "source": 565, - "pc": [ - 346 - ] - }, - { - "teal": 203, - "source": 565, - "pc": [ - 347 - ] - }, - { - "teal": 204, - "source": 565, - "pc": [ - 348, - 349 - ] - }, - { - "teal": 205, - "source": 565, - "pc": [ - 350, - 351 - ] - }, - { - "teal": 206, - "source": 565, - "pc": [ - 352 - ] - }, - { - "teal": 207, - "source": 565, - "pc": [ - 353, - 354 - ] - }, - { - "teal": 208, - "source": 565, - "pc": [ - 355 - ] - }, - { - "teal": 209, - "source": 565, - "pc": [ - 356, - 357, - 358, - 359, - 360, - 361, - 362, - 363 - ] - }, - { - "teal": 210, - "source": 565, - "pc": [ - 364 - ] - }, - { - "teal": 211, - "source": 565, - "pc": [ - 365, - 366 - ] - }, - { - "teal": 212, - "source": 565, - "pc": [ - 367, - 368 - ] - }, - { - "teal": 213, - "source": 565, - "pc": [ - 369, - 370 - ] - }, - { - "teal": 214, - "source": 565, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 215, - "source": 565, - "pc": [ - 373 - ] - }, - { - "teal": 216, - "source": 565, - "pc": [ - 374, - 375 - ] - }, - { - "teal": 217, - "source": 565, - "pc": [ - 376 - ] - }, - { - "teal": 218, - "source": 565, - "pc": [ - 377 - ] - }, - { - "teal": 219, - "source": 565, - "pc": [ - 378 - ] - }, - { - "teal": 220, - "source": 565, - "pc": [ - 379 - ] - }, - { - "teal": 221, - "source": 565, - "pc": [ - 380, - 381 - ] - }, - { - "teal": 222, - "source": 565, - "pc": [ - 382, - 383, - 384 - ] - }, - { - "teal": 223, - "source": 565, - "pc": [ - 385, - 386 - ] - }, - { - "teal": 224, - "source": 565, - "pc": [ - 387, - 388 - ] - }, - { - "teal": 225, - "source": 565, - "pc": [ - 389 - ] - }, - { - "teal": 226, - "source": 565, - "pc": [ - 390 - ] - }, - { - "teal": 227, - "source": 565, - "pc": [ - 391, - 392, - 393 - ] - }, - { - "teal": 228, - "source": 565, - "pc": [ - 394, - 395 - ] - }, - { - "teal": 229, - "source": 565, - "pc": [ - 396, - 397 - ] - }, - { - "teal": 233, - "source": 566, - "pc": [ - 398, - 399 - ] - }, - { - "teal": 234, - "source": 566, - "pc": [ - 400, - 401 - ] - }, - { - "teal": 235, - "source": 566, - "pc": [ - 402, - 403 - ] - }, - { - "teal": 236, - "source": 566, - "pc": [ - 404 - ] - }, - { - "teal": 237, - "source": 566, - "pc": [ - 405, - 406 - ] - }, - { - "teal": 238, - "source": 566, - "pc": [ - 407, - 408 - ] - }, - { - "teal": 239, - "source": 566, - "pc": [ - 409, - 410 - ] - }, - { - "teal": 240, - "source": 566, - "pc": [ - 411, - 412 - ] - }, - { - "teal": 241, - "source": 566, - "pc": [ - 413 - ] - }, - { - "teal": 242, - "source": 566, - "pc": [ - 414 - ] - }, - { - "teal": 243, - "source": 566, - "pc": [ - 415, - 416 - ] - }, - { - "teal": 244, - "source": 566, - "pc": [ - 417 - ] - }, - { - "teal": 245, - "source": 566, - "pc": [ - 418, - 419 - ] - }, - { - "teal": 246, - "source": 566, - "pc": [ - 420 - ] - }, - { - "teal": 247, - "source": 566, - "pc": [ - 421 - ] - }, - { - "teal": 248, - "source": 566, - "pc": [ - 422 - ] - }, - { - "teal": 249, - "source": 566, - "pc": [ - 423 - ] - }, - { - "teal": 250, - "source": 566, - "pc": [ - 424 - ] - }, - { - "teal": 251, - "source": 566, - "pc": [ - 425 - ] - }, - { - "teal": 252, - "source": 566, - "pc": [ - 426, - 427 - ] - }, - { - "teal": 253, - "source": 566, - "pc": [ - 428, - 429 - ] - }, - { - "teal": 254, - "source": 566, - "pc": [ - 430 - ] - }, - { - "teal": 255, - "source": 566, - "pc": [ - 431, - 432 - ] - }, - { - "teal": 256, - "source": 566, - "pc": [ - 433 - ] - }, - { - "teal": 257, - "source": 566, - "pc": [ - 434, - 435, - 436, - 437, - 438, - 439 - ] - }, - { - "teal": 258, - "source": 566, - "pc": [ - 440 - ] - }, - { - "teal": 259, - "source": 566, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 260, - "source": 566, - "pc": [ - 443, - 444 - ] - }, - { - "teal": 261, - "source": 566, - "pc": [ - 445, - 446 - ] - }, - { - "teal": 262, - "source": 566, - "pc": [ - 447, - 448 - ] - }, - { - "teal": 263, - "source": 566, - "pc": [ - 449 - ] - }, - { - "teal": 264, - "source": 566, - "pc": [ - 450, - 451 - ] - }, - { - "teal": 265, - "source": 566, - "pc": [ - 452 - ] - }, - { - "teal": 266, - "source": 566, - "pc": [ - 453 - ] - }, - { - "teal": 267, - "source": 566, - "pc": [ - 454 - ] - }, - { - "teal": 268, - "source": 566, - "pc": [ - 455 - ] - }, - { - "teal": 269, - "source": 566, - "pc": [ - 456, - 457 - ] - }, - { - "teal": 270, - "source": 566, - "pc": [ - 458, - 459, - 460 - ] - }, - { - "teal": 271, - "source": 566, - "pc": [ - 461, - 462 - ] - }, - { - "teal": 272, - "source": 566, - "pc": [ - 463, - 464 - ] - }, - { - "teal": 276, - "source": 568, - "pc": [ - 465, - 466 - ] - }, - { - "teal": 279, - "source": 559, - "pc": [ - 467, - 468 - ] - }, - { - "teal": 280, - "source": 559, - "pc": [ - 469 - ] - }, - { - "teal": 283, - "source": 558, - "pc": [ - 470 - ] - }, - { - "teal": 284, - "source": 558, - "pc": [ - 471 - ] - }, - { - "teal": 287, - "source": 558, - "pc": [ - 472, - 473, - 474, - 475, - 476, - 477 - ] - }, - { - "teal": 288, - "source": 558, - "pc": [ - 478, - 479, - 480 - ] - }, - { - "teal": 289, - "source": 558, - "pc": [ - 481, - 482, - 483, - 484 - ] - }, - { - "teal": 292, - "source": 558, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 485 - ] - }, - { - "teal": 295, - "source": 558, - "pc": [ - 486, - 487, - 488, - 489, - 490, - 491 - ] - }, - { - "teal": 296, - "source": 558, - "pc": [ - 492, - 493, - 494 - ] - }, - { - "teal": 297, - "source": 558, - "pc": [ - 495, - 496, - 497, - 498 - ] - }, - { - "teal": 300, - "source": 558, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 499 - ] - }, - { - "teal": 303, - "source": 558, - "pc": [ - 500, - 501, - 502 - ] - }, - { - "teal": 304, - "source": 558, - "pc": [ - 503, - 504 - ] - }, - { - "teal": 305, - "source": 558, - "pc": [ - 505, - 506 - ] - }, - { - "teal": 306, - "source": 558, - "pc": [ - 507 - ] - }, - { - "teal": 307, - "source": 558, - "pc": [ - 508, - 509 - ] - }, - { - "teal": 308, - "source": 558, - "pc": [ - 510, - 511 - ] - }, - { - "teal": 309, - "source": 558, - "pc": [ - 512 - ] - }, - { - "teal": 312, - "source": 558, - "pc": [ - 513, - 514, - 515 - ] - }, - { - "teal": 313, - "source": 558, - "pc": [ - 516, - 517 - ] - }, - { - "teal": 314, - "source": 558, - "pc": [ - 518, - 519 - ] - }, - { - "teal": 315, - "source": 558, - "pc": [ - 520 - ] - }, - { - "teal": 316, - "source": 558, - "pc": [ - 521, - 522 - ] - }, - { - "teal": 317, - "source": 558, - "pc": [ - 523, - 524 - ] - }, - { - "teal": 318, - "source": 558, - "pc": [ - 525 - ] - }, - { - "teal": 319, - "source": 558, - "pc": [ - 526 - ] - }, - { - "teal": 320, - "source": 558, - "pc": [ - 527, - 528 - ] - }, - { - "teal": 321, - "source": 558, - "pc": [ - 529 - ] - }, - { - "teal": 322, - "source": 558, - "pc": [ - 530 - ] - }, - { - "teal": 323, - "source": 558, - "pc": [ - 531 - ] - }, - { - "teal": 324, - "source": 558, - "pc": [ - 532, - 533, - 534 - ] - }, - { - "teal": 325, - "source": 558, - "pc": [ - 535, - 536 - ] - }, - { - "teal": 326, - "source": 558, - "pc": [ - 537, - 538 - ] - }, - { - "teal": 327, - "source": 558, - "pc": [ - 539 - ] - }, - { - "teal": 328, - "source": 558, - "pc": [ - 540 - ] - }, - { - "teal": 329, - "source": 558, - "pc": [ - 541, - 542 - ] - }, - { - "teal": 330, - "source": 558, - "pc": [ - 543, - 544 - ] - }, - { - "teal": 331, - "source": 558, - "pc": [ - 545, - 546 - ] - }, - { - "teal": 332, - "source": 558, - "pc": [ - 547, - 548 - ] - }, - { - "teal": 333, - "source": 558, - "pc": [ - 549 - ] - }, - { - "teal": 336, - "source": 558, - "pc": [ - 550, - 551, - 552 - ] - }, - { - "teal": 337, - "source": 558, - "pc": [ - 553, - 554 - ] - }, - { - "teal": 338, - "source": 558, - "pc": [ - 555, - 556 - ] - }, - { - "teal": 339, - "source": 558, - "pc": [ - 557, - 558 - ] - }, - { - "teal": 340, - "source": 558, - "pc": [ - 559 - ] - }, - { - "teal": 341, - "source": 558, - "pc": [ - 560, - 561 - ] - }, - { - "teal": 342, - "source": 558, - "pc": [ - 562, - 563, - 564 - ] - }, - { - "teal": 343, - "source": 558, - "pc": [ - 565 - ] - }, - { - "teal": 344, - "source": 558, - "pc": [ - 566, - 567, - 568 - ] - }, - { - "teal": 347, - "source": 558, - "pc": [ - 569 - ] - }, - { - "teal": 348, - "source": 558, - "pc": [ - 570 - ] - }, - { - "teal": 351, - "source": 558, - "pc": [ - 571 - ] - }, - { - "teal": 352, - "source": 558, - "pc": [ - 572, - 573, - 574 - ] - }, - { - "teal": 353, - "source": 558, - "pc": [ - 575, - 576 - ] - }, - { - "teal": 354, - "source": 558, - "pc": [ - 577 - ] - }, - { - "teal": 355, - "source": 558, - "pc": [ - 578, - 579 - ] - }, - { - "teal": 356, - "source": 558, - "pc": [ - 580 - ] - }, - { - "teal": 357, - "source": 558, - "pc": [ - 581 - ] - }, - { - "teal": 358, - "source": 558, - "pc": [ - 582, - 583 - ] - }, - { - "teal": 359, - "source": 558, - "pc": [ - 584 - ] - }, - { - "teal": 362, - "source": 558, - "pc": [ - 585, - 586 - ] - }, - { - "teal": 363, - "source": 558, - "pc": [ - 587 - ] - }, - { - "teal": 364, - "source": 558, - "pc": [ - 588, - 589 - ] - }, - { - "teal": 365, - "source": 558, - "pc": [ - 590 - ] - }, - { - "teal": 366, - "source": 558, - "pc": [ - 591, - 592, - 593 - ] - }, - { - "teal": 367, - "source": 558, - "pc": [ - 594, - 595 - ] - }, - { - "teal": 368, - "source": 558, - "pc": [ - 596 - ] - }, - { - "teal": 369, - "source": 558, - "pc": [ - 597, - 598 - ] - }, - { - "teal": 370, - "source": 558, - "pc": [ - 599 - ] - }, - { - "teal": 371, - "source": 558, - "pc": [ - 600, - 601 - ] - }, - { - "teal": 372, - "source": 558, - "pc": [ - 602, - 603, - 604 - ] - }, - { - "teal": 375, - "source": 558, - "pc": [ - 605, - 606 - ] - }, - { - "teal": 376, - "source": 558, - "pc": [ - 607, - 608 - ] - }, - { - "teal": 377, - "source": 558, - "pc": [ - 609 - ] - }, - { - "teal": 378, - "source": 558, - "pc": [ - 610 - ] - }, - { - "teal": 379, - "source": 558, - "pc": [ - 611, - 612 - ] - }, - { - "teal": 382, - "source": 558, - "pc": [ - 613 - ] - }, - { - "teal": 383, - "source": 558, - "pc": [ - 614, - 615 - ] - }, - { - "teal": 384, - "source": 558, - "pc": [ - 616 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 558, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10 + ] + }, + { + "teal": 13, + "source": 558, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 14, + "source": 558, + "pc": [ + 13 + ] + }, + { + "teal": 15, + "source": 558, + "pc": [ + 14 + ] + }, + { + "teal": 16, + "source": 558, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 558, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 558, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 558, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 558, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 559, + "pc": [ + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 31, + "source": 559, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 32, + "source": 559, + "pc": [ + 55 + ] + }, + { + "teal": 33, + "source": 559, + "pc": [ + 56 + ] + }, + { + "teal": 34, + "source": 559, + "pc": [ + 57 + ] + }, + { + "teal": 35, + "source": 559, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 559, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 42, + "source": 559, + "pc": [ + 62 + ] + }, + { + "teal": 46, + "source": 560, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 560, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 560, + "pc": [ + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 49, + "source": 560, + "pc": [ + 69, + 70, + 71 + ] + }, + { + "teal": 50, + "source": 560, + "pc": [ + 72, + 73, + 74 + ] + }, + { + "teal": 51, + "source": 560, + "pc": [ + 75, + 76, + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 52, + "source": 560, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 53, + "source": 560, + "pc": [ + 84, + 85, + 86, + 87, + 88, + 89, + 90 + ] + }, + { + "teal": 54, + "source": 560, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 55, + "source": 560, + "pc": [ + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 56, + "source": 560, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 57, + "source": 560, + "pc": [ + 103, + 104, + 105, + 106, + 107 + ] + }, + { + "teal": 58, + "source": 560, + "pc": [ + 108, + 109, + 110 + ] + }, + { + "teal": 59, + "source": 560, + "pc": [ + 111 + ] + }, + { + "teal": 60, + "source": 560, + "pc": [ + 112 + ] + }, + { + "teal": 61, + "source": 560, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 65, + "source": 562, + "pc": [ + 115, + 116 + ] + }, + { + "teal": 66, + "source": 562, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 67, + "source": 562, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 68, + "source": 562, + "pc": [ + 121, + 122, + 123 + ] + }, + { + "teal": 69, + "source": 562, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 70, + "source": 562, + "pc": [ + 126, + 127 + ] + }, + { + "teal": 74, + "source": 563, + "pc": [ + 128, + 129 + ] + }, + { + "teal": 75, + "source": 563, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 76, + "source": 563, + "pc": [ + 132 + ] + }, + { + "teal": 77, + "source": 563, + "pc": [ + 133 + ] + }, + { + "teal": 78, + "source": 563, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 79, + "source": 563, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 80, + "source": 563, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 81, + "source": 563, + "pc": [ + 140, + 141 + ] + }, + { + "teal": 82, + "source": 563, + "pc": [ + 142 + ] + }, + { + "teal": 83, + "source": 563, + "pc": [ + 143 + ] + }, + { + "teal": 84, + "source": 563, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 85, + "source": 563, + "pc": [ + 146 + ] + }, + { + "teal": 86, + "source": 563, + "pc": [ + 147, + 148 + ] + }, + { + "teal": 87, + "source": 563, + "pc": [ + 149 + ] + }, + { + "teal": 88, + "source": 563, + "pc": [ + 150 + ] + }, + { + "teal": 89, + "source": 563, + "pc": [ + 151 + ] + }, + { + "teal": 90, + "source": 563, + "pc": [ + 152 + ] + }, + { + "teal": 91, + "source": 563, + "pc": [ + 153 + ] + }, + { + "teal": 92, + "source": 563, + "pc": [ + 154 + ] + }, + { + "teal": 93, + "source": 563, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 94, + "source": 563, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 95, + "source": 563, + "pc": [ + 159 + ] + }, + { + "teal": 96, + "source": 563, + "pc": [ + 160, + 161 + ] + }, + { + "teal": 97, + "source": 563, + "pc": [ + 162 + ] + }, + { + "teal": 98, + "source": 563, + "pc": [ + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + }, + { + "teal": 99, + "source": 563, + "pc": [ + 171 + ] + }, + { + "teal": 100, + "source": 563, + "pc": [ + 172, + 173 + ] + }, + { + "teal": 101, + "source": 563, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 102, + "source": 563, + "pc": [ + 176, + 177 + ] + }, + { + "teal": 103, + "source": 563, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 104, + "source": 563, + "pc": [ + 180 + ] + }, + { + "teal": 105, + "source": 563, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 106, + "source": 563, + "pc": [ + 183 + ] + }, + { + "teal": 107, + "source": 563, + "pc": [ + 184 + ] + }, + { + "teal": 108, + "source": 563, + "pc": [ + 185 + ] + }, + { + "teal": 109, + "source": 563, + "pc": [ + 186 + ] + }, + { + "teal": 110, + "source": 563, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 111, + "source": 563, + "pc": [ + 189, + 190, + 191 + ] + }, + { + "teal": 112, + "source": 563, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 113, + "source": 563, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 114, + "source": 563, + "pc": [ + 196 + ] + }, + { + "teal": 115, + "source": 563, + "pc": [ + 197 + ] + }, + { + "teal": 116, + "source": 563, + "pc": [ + 198, + 199, + 200 + ] + }, + { + "teal": 117, + "source": 563, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 118, + "source": 563, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 119, + "source": 563, + "pc": [ + 205, + 206 + ] + }, + { + "teal": 120, + "source": 563, + "pc": [ + 207 + ] + }, + { + "teal": 121, + "source": 563, + "pc": [ + 208, + 209, + 210 + ] + }, + { + "teal": 122, + "source": 563, + "pc": [ + 211, + 212 + ] + }, + { + "teal": 123, + "source": 563, + "pc": [ + 213, + 214 + ] + }, + { + "teal": 124, + "source": 563, + "pc": [ + 215 + ] + }, + { + "teal": 125, + "source": 563, + "pc": [ + 216 + ] + }, + { + "teal": 126, + "source": 563, + "pc": [ + 217, + 218, + 219 + ] + }, + { + "teal": 127, + "source": 563, + "pc": [ + 220, + 221 + ] + }, + { + "teal": 128, + "source": 563, + "pc": [ + 222, + 223 + ] + }, + { + "teal": 132, + "source": 564, + "pc": [ + 224, + 225 + ] + }, + { + "teal": 133, + "source": 564, + "pc": [ + 226, + 227 + ] + }, + { + "teal": 134, + "source": 564, + "pc": [ + 228, + 229 + ] + }, + { + "teal": 135, + "source": 564, + "pc": [ + 230 + ] + }, + { + "teal": 136, + "source": 564, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 137, + "source": 564, + "pc": [ + 233, + 234 + ] + }, + { + "teal": 138, + "source": 564, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 139, + "source": 564, + "pc": [ + 237, + 238 + ] + }, + { + "teal": 140, + "source": 564, + "pc": [ + 239 + ] + }, + { + "teal": 141, + "source": 564, + "pc": [ + 240 + ] + }, + { + "teal": 142, + "source": 564, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 143, + "source": 564, + "pc": [ + 243 + ] + }, + { + "teal": 144, + "source": 564, + "pc": [ + 244, + 245 + ] + }, + { + "teal": 145, + "source": 564, + "pc": [ + 246 + ] + }, + { + "teal": 146, + "source": 564, + "pc": [ + 247 + ] + }, + { + "teal": 147, + "source": 564, + "pc": [ + 248 + ] + }, + { + "teal": 148, + "source": 564, + "pc": [ + 249 + ] + }, + { + "teal": 149, + "source": 564, + "pc": [ + 250 + ] + }, + { + "teal": 150, + "source": 564, + "pc": [ + 251 + ] + }, + { + "teal": 151, + "source": 564, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 152, + "source": 564, + "pc": [ + 254, + 255 + ] + }, + { + "teal": 153, + "source": 564, + "pc": [ + 256 + ] + }, + { + "teal": 154, + "source": 564, + "pc": [ + 257, + 258 + ] + }, + { + "teal": 155, + "source": 564, + "pc": [ + 259 + ] + }, + { + "teal": 156, + "source": 564, + "pc": [ + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275 + ] + }, + { + "teal": 157, + "source": 564, + "pc": [ + 276 + ] + }, + { + "teal": 158, + "source": 564, + "pc": [ + 277, + 278 + ] + }, + { + "teal": 159, + "source": 564, + "pc": [ + 279, + 280 + ] + }, + { + "teal": 160, + "source": 564, + "pc": [ + 281, + 282 + ] + }, + { + "teal": 161, + "source": 564, + "pc": [ + 283, + 284 + ] + }, + { + "teal": 162, + "source": 564, + "pc": [ + 285 + ] + }, + { + "teal": 163, + "source": 564, + "pc": [ + 286, + 287 + ] + }, + { + "teal": 164, + "source": 564, + "pc": [ + 288 + ] + }, + { + "teal": 165, + "source": 564, + "pc": [ + 289 + ] + }, + { + "teal": 166, + "source": 564, + "pc": [ + 290 + ] + }, + { + "teal": 167, + "source": 564, + "pc": [ + 291 + ] + }, + { + "teal": 168, + "source": 564, + "pc": [ + 292, + 293 + ] + }, + { + "teal": 169, + "source": 564, + "pc": [ + 294, + 295, + 296 + ] + }, + { + "teal": 170, + "source": 564, + "pc": [ + 297, + 298 + ] + }, + { + "teal": 171, + "source": 564, + "pc": [ + 299, + 300 + ] + }, + { + "teal": 172, + "source": 564, + "pc": [ + 301 + ] + }, + { + "teal": 173, + "source": 564, + "pc": [ + 302 + ] + }, + { + "teal": 174, + "source": 564, + "pc": [ + 303, + 304, + 305 + ] + }, + { + "teal": 175, + "source": 564, + "pc": [ + 306, + 307 + ] + }, + { + "teal": 176, + "source": 564, + "pc": [ + 308, + 309 + ] + }, + { + "teal": 177, + "source": 564, + "pc": [ + 310, + 311 + ] + }, + { + "teal": 178, + "source": 564, + "pc": [ + 312 + ] + }, + { + "teal": 179, + "source": 564, + "pc": [ + 313, + 314, + 315 + ] + }, + { + "teal": 180, + "source": 564, + "pc": [ + 316, + 317 + ] + }, + { + "teal": 181, + "source": 564, + "pc": [ + 318, + 319 + ] + }, + { + "teal": 185, + "source": 565, + "pc": [ + 320, + 321 + ] + }, + { + "teal": 186, + "source": 565, + "pc": [ + 322, + 323 + ] + }, + { + "teal": 187, + "source": 565, + "pc": [ + 324, + 325 + ] + }, + { + "teal": 188, + "source": 565, + "pc": [ + 326 + ] + }, + { + "teal": 189, + "source": 565, + "pc": [ + 327, + 328 + ] + }, + { + "teal": 190, + "source": 565, + "pc": [ + 329, + 330 + ] + }, + { + "teal": 191, + "source": 565, + "pc": [ + 331, + 332 + ] + }, + { + "teal": 192, + "source": 565, + "pc": [ + 333, + 334 + ] + }, + { + "teal": 193, + "source": 565, + "pc": [ + 335 + ] + }, + { + "teal": 194, + "source": 565, + "pc": [ + 336 + ] + }, + { + "teal": 195, + "source": 565, + "pc": [ + 337, + 338 + ] + }, + { + "teal": 196, + "source": 565, + "pc": [ + 339 + ] + }, + { + "teal": 197, + "source": 565, + "pc": [ + 340, + 341 + ] + }, + { + "teal": 198, + "source": 565, + "pc": [ + 342 + ] + }, + { + "teal": 199, + "source": 565, + "pc": [ + 343 + ] + }, + { + "teal": 200, + "source": 565, + "pc": [ + 344 + ] + }, + { + "teal": 201, + "source": 565, + "pc": [ + 345 + ] + }, + { + "teal": 202, + "source": 565, + "pc": [ + 346 + ] + }, + { + "teal": 203, + "source": 565, + "pc": [ + 347 + ] + }, + { + "teal": 204, + "source": 565, + "pc": [ + 348, + 349 + ] + }, + { + "teal": 205, + "source": 565, + "pc": [ + 350, + 351 + ] + }, + { + "teal": 206, + "source": 565, + "pc": [ + 352 + ] + }, + { + "teal": 207, + "source": 565, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 208, + "source": 565, + "pc": [ + 355 + ] + }, + { + "teal": 209, + "source": 565, + "pc": [ + 356, + 357, + 358, + 359, + 360, + 361, + 362, + 363 + ] + }, + { + "teal": 210, + "source": 565, + "pc": [ + 364 + ] + }, + { + "teal": 211, + "source": 565, + "pc": [ + 365, + 366 + ] + }, + { + "teal": 212, + "source": 565, + "pc": [ + 367, + 368 + ] + }, + { + "teal": 213, + "source": 565, + "pc": [ + 369, + 370 + ] + }, + { + "teal": 214, + "source": 565, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 215, + "source": 565, + "pc": [ + 373 + ] + }, + { + "teal": 216, + "source": 565, + "pc": [ + 374, + 375 + ] + }, + { + "teal": 217, + "source": 565, + "pc": [ + 376 + ] + }, + { + "teal": 218, + "source": 565, + "pc": [ + 377 + ] + }, + { + "teal": 219, + "source": 565, + "pc": [ + 378 + ] + }, + { + "teal": 220, + "source": 565, + "pc": [ + 379 + ] + }, + { + "teal": 221, + "source": 565, + "pc": [ + 380, + 381 + ] + }, + { + "teal": 222, + "source": 565, + "pc": [ + 382, + 383, + 384 + ] + }, + { + "teal": 223, + "source": 565, + "pc": [ + 385, + 386 + ] + }, + { + "teal": 224, + "source": 565, + "pc": [ + 387, + 388 + ] + }, + { + "teal": 225, + "source": 565, + "pc": [ + 389 + ] + }, + { + "teal": 226, + "source": 565, + "pc": [ + 390 + ] + }, + { + "teal": 227, + "source": 565, + "pc": [ + 391, + 392, + 393 + ] + }, + { + "teal": 228, + "source": 565, + "pc": [ + 394, + 395 + ] + }, + { + "teal": 229, + "source": 565, + "pc": [ + 396, + 397 + ] + }, + { + "teal": 233, + "source": 566, + "pc": [ + 398, + 399 + ] + }, + { + "teal": 234, + "source": 566, + "pc": [ + 400, + 401 + ] + }, + { + "teal": 235, + "source": 566, + "pc": [ + 402, + 403 + ] + }, + { + "teal": 236, + "source": 566, + "pc": [ + 404 + ] + }, + { + "teal": 237, + "source": 566, + "pc": [ + 405, + 406 + ] + }, + { + "teal": 238, + "source": 566, + "pc": [ + 407, + 408 + ] + }, + { + "teal": 239, + "source": 566, + "pc": [ + 409, + 410 + ] + }, + { + "teal": 240, + "source": 566, + "pc": [ + 411, + 412 + ] + }, + { + "teal": 241, + "source": 566, + "pc": [ + 413 + ] + }, + { + "teal": 242, + "source": 566, + "pc": [ + 414 + ] + }, + { + "teal": 243, + "source": 566, + "pc": [ + 415, + 416 + ] + }, + { + "teal": 244, + "source": 566, + "pc": [ + 417 + ] + }, + { + "teal": 245, + "source": 566, + "pc": [ + 418, + 419 + ] + }, + { + "teal": 246, + "source": 566, + "pc": [ + 420 + ] + }, + { + "teal": 247, + "source": 566, + "pc": [ + 421 + ] + }, + { + "teal": 248, + "source": 566, + "pc": [ + 422 + ] + }, + { + "teal": 249, + "source": 566, + "pc": [ + 423 + ] + }, + { + "teal": 250, + "source": 566, + "pc": [ + 424 + ] + }, + { + "teal": 251, + "source": 566, + "pc": [ + 425 + ] + }, + { + "teal": 252, + "source": 566, + "pc": [ + 426, + 427 + ] + }, + { + "teal": 253, + "source": 566, + "pc": [ + 428, + 429 + ] + }, + { + "teal": 254, + "source": 566, + "pc": [ + 430 + ] + }, + { + "teal": 255, + "source": 566, + "pc": [ + 431, + 432 + ] + }, + { + "teal": 256, + "source": 566, + "pc": [ + 433 + ] + }, + { + "teal": 257, + "source": 566, + "pc": [ + 434, + 435, + 436, + 437, + 438, + 439 + ] + }, + { + "teal": 258, + "source": 566, + "pc": [ + 440 + ] + }, + { + "teal": 259, + "source": 566, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 260, + "source": 566, + "pc": [ + 443, + 444 + ] + }, + { + "teal": 261, + "source": 566, + "pc": [ + 445, + 446 + ] + }, + { + "teal": 262, + "source": 566, + "pc": [ + 447, + 448 + ] + }, + { + "teal": 263, + "source": 566, + "pc": [ + 449 + ] + }, + { + "teal": 264, + "source": 566, + "pc": [ + 450, + 451 + ] + }, + { + "teal": 265, + "source": 566, + "pc": [ + 452 + ] + }, + { + "teal": 266, + "source": 566, + "pc": [ + 453 + ] + }, + { + "teal": 267, + "source": 566, + "pc": [ + 454 + ] + }, + { + "teal": 268, + "source": 566, + "pc": [ + 455 + ] + }, + { + "teal": 269, + "source": 566, + "pc": [ + 456, + 457 + ] + }, + { + "teal": 270, + "source": 566, + "pc": [ + 458, + 459, + 460 + ] + }, + { + "teal": 271, + "source": 566, + "pc": [ + 461, + 462 + ] + }, + { + "teal": 272, + "source": 566, + "pc": [ + 463, + 464 + ] + }, + { + "teal": 276, + "source": 568, + "pc": [ + 465, + 466 + ] + }, + { + "teal": 279, + "source": 559, + "pc": [ + 467, + 468 + ] + }, + { + "teal": 280, + "source": 559, + "pc": [ + 469 + ] + }, + { + "teal": 283, + "source": 558, + "pc": [ + 470 + ] + }, + { + "teal": 284, + "source": 558, + "pc": [ + 471 + ] + }, + { + "teal": 287, + "source": 558, + "pc": [ + 472, + 473, + 474, + 475, + 476, + 477 + ] + }, + { + "teal": 288, + "source": 558, + "pc": [ + 478, + 479, + 480 + ] + }, + { + "teal": 289, + "source": 558, + "pc": [ + 481, + 482, + 483, + 484 + ] + }, + { + "teal": 292, + "source": 558, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 485 + ] + }, + { + "teal": 295, + "source": 558, + "pc": [ + 486, + 487, + 488, + 489, + 490, + 491 + ] + }, + { + "teal": 296, + "source": 558, + "pc": [ + 492, + 493, + 494 + ] + }, + { + "teal": 297, + "source": 558, + "pc": [ + 495, + 496, + 497, + 498 + ] + }, + { + "teal": 300, + "source": 558, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 499 + ] + }, + { + "teal": 303, + "source": 558, + "pc": [ + 500, + 501, + 502 + ] + }, + { + "teal": 304, + "source": 558, + "pc": [ + 503, + 504 + ] + }, + { + "teal": 305, + "source": 558, + "pc": [ + 505, + 506 + ] + }, + { + "teal": 306, + "source": 558, + "pc": [ + 507 + ] + }, + { + "teal": 307, + "source": 558, + "pc": [ + 508, + 509 + ] + }, + { + "teal": 308, + "source": 558, + "pc": [ + 510, + 511 + ] + }, + { + "teal": 309, + "source": 558, + "pc": [ + 512 + ] + }, + { + "teal": 312, + "source": 558, + "pc": [ + 513, + 514, + 515 + ] + }, + { + "teal": 313, + "source": 558, + "pc": [ + 516, + 517 + ] + }, + { + "teal": 314, + "source": 558, + "pc": [ + 518, + 519 + ] + }, + { + "teal": 315, + "source": 558, + "pc": [ + 520 + ] + }, + { + "teal": 316, + "source": 558, + "pc": [ + 521, + 522 + ] + }, + { + "teal": 317, + "source": 558, + "pc": [ + 523, + 524 + ] + }, + { + "teal": 318, + "source": 558, + "pc": [ + 525 + ] + }, + { + "teal": 319, + "source": 558, + "pc": [ + 526 + ] + }, + { + "teal": 320, + "source": 558, + "pc": [ + 527, + 528 + ] + }, + { + "teal": 321, + "source": 558, + "pc": [ + 529 + ] + }, + { + "teal": 322, + "source": 558, + "pc": [ + 530 + ] + }, + { + "teal": 323, + "source": 558, + "pc": [ + 531 + ] + }, + { + "teal": 324, + "source": 558, + "pc": [ + 532, + 533, + 534 + ] + }, + { + "teal": 325, + "source": 558, + "pc": [ + 535, + 536 + ] + }, + { + "teal": 326, + "source": 558, + "pc": [ + 537, + 538 + ] + }, + { + "teal": 327, + "source": 558, + "pc": [ + 539 + ] + }, + { + "teal": 328, + "source": 558, + "pc": [ + 540 + ] + }, + { + "teal": 329, + "source": 558, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 330, + "source": 558, + "pc": [ + 543, + 544 + ] + }, + { + "teal": 331, + "source": 558, + "pc": [ + 545, + 546 + ] + }, + { + "teal": 332, + "source": 558, + "pc": [ + 547, + 548 + ] + }, + { + "teal": 333, + "source": 558, + "pc": [ + 549 + ] + }, + { + "teal": 336, + "source": 558, + "pc": [ + 550, + 551, + 552 + ] + }, + { + "teal": 337, + "source": 558, + "pc": [ + 553, + 554 + ] + }, + { + "teal": 338, + "source": 558, + "pc": [ + 555, + 556 + ] + }, + { + "teal": 339, + "source": 558, + "pc": [ + 557, + 558 + ] + }, + { + "teal": 340, + "source": 558, + "pc": [ + 559 + ] + }, + { + "teal": 341, + "source": 558, + "pc": [ + 560, + 561 + ] + }, + { + "teal": 342, + "source": 558, + "pc": [ + 562, + 563, + 564 + ] + }, + { + "teal": 343, + "source": 558, + "pc": [ + 565 + ] + }, + { + "teal": 344, + "source": 558, + "pc": [ + 566, + 567, + 568 + ] + }, + { + "teal": 347, + "source": 558, + "pc": [ + 569 + ] + }, + { + "teal": 348, + "source": 558, + "pc": [ + 570 + ] + }, + { + "teal": 351, + "source": 558, + "pc": [ + 571 + ] + }, + { + "teal": 352, + "source": 558, + "pc": [ + 572, + 573, + 574 + ] + }, + { + "teal": 353, + "source": 558, + "pc": [ + 575, + 576 + ] + }, + { + "teal": 354, + "source": 558, + "pc": [ + 577 + ] + }, + { + "teal": 355, + "source": 558, + "pc": [ + 578, + 579 + ] + }, + { + "teal": 356, + "source": 558, + "pc": [ + 580 + ] + }, + { + "teal": 357, + "source": 558, + "pc": [ + 581 + ] + }, + { + "teal": 358, + "source": 558, + "pc": [ + 582, + 583 + ] + }, + { + "teal": 359, + "source": 558, + "pc": [ + 584 + ] + }, + { + "teal": 362, + "source": 558, + "pc": [ + 585, + 586 + ] + }, + { + "teal": 363, + "source": 558, + "pc": [ + 587 + ] + }, + { + "teal": 364, + "source": 558, + "pc": [ + 588, + 589 + ] + }, + { + "teal": 365, + "source": 558, + "pc": [ + 590 + ] + }, + { + "teal": 366, + "source": 558, + "pc": [ + 591, + 592, + 593 + ] + }, + { + "teal": 367, + "source": 558, + "pc": [ + 594, + 595 + ] + }, + { + "teal": 368, + "source": 558, + "pc": [ + 596 + ] + }, + { + "teal": 369, + "source": 558, + "pc": [ + 597, + 598 + ] + }, + { + "teal": 370, + "source": 558, + "pc": [ + 599 + ] + }, + { + "teal": 371, + "source": 558, + "pc": [ + 600, + 601 + ] + }, + { + "teal": 372, + "source": 558, + "pc": [ + 602, + 603, + 604 + ] + }, + { + "teal": 375, + "source": 558, + "pc": [ + 605, + 606 + ] + }, + { + "teal": 376, + "source": 558, + "pc": [ + 607, + 608 + ] + }, + { + "teal": 377, + "source": 558, + "pc": [ + 609 + ] + }, + { + "teal": 378, + "source": 558, + "pc": [ + 610 + ] + }, + { + "teal": 379, + "source": 558, + "pc": [ + 611, + 612 + ] + }, + { + "teal": 382, + "source": 558, + "pc": [ + 613 + ] + }, + { + "teal": 383, + "source": 558, + "pc": [ + 614, + 615 + ] + }, + { + "teal": 384, + "source": 558, + "pc": [ + 616 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCiphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCgljYWxsc3ViIHVwZGF0ZVN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCk6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQp1cGRhdGVTdHJpbmdJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTYwCgkvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0gPSBbOSwgWzhdLCAnSGk/JywgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAwMDYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTA1CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2MgoJLy8gYVswXSA9IDk5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHg2MwoJcmVwbGFjZTIgMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NjMKCS8vIGFbMV0gPSBbMTAsIDExXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwYTAwMGIKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA2CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY0CgkvLyBhWzJdID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2NQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY2CgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY4CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlU3RyaW5nSW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHN0cmluZyx1aW50MTZbXSx1aW50OFtdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCiphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVTdHJpbmdJblR1cGxlKCkodWludDgsdWludDE2W10sc3RyaW5nLHVpbnQxNltdLHVpbnQ4W10pCgljYWxsc3ViIHVwZGF0ZVN0cmluZ0luVHVwbGUKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVTdHJpbmdJblR1cGxlKCk6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQp1cGRhdGVTdHJpbmdJblR1cGxlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTYwCgkvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0gPSBbOSwgWzhdLCAnSGk/JywgWzZdLCBbNV1dCglieXRlIDB4IC8vIGluaXRpYWwgaGVhZAoJYnl0ZSAweCAvLyBpbml0aWFsIHRhaWwKCWJ5dGUgMHgwMDA5IC8vIGluaXRpYWwgaGVhZCBvZmZzZXQKCWJ5dGUgMHgwOQoJY2FsbHN1YiAqcHJvY2Vzc19zdGF0aWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDA4CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDM0ODY5M2YKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTAwMDYKCWNhbGxzdWIgKnByb2Nlc3NfZHluYW1pY190dXBsZV9lbGVtZW50CglieXRlIDB4MDAwMTA1CgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2MgoJLy8gYVswXSA9IDk5IGFzIHVpbnQ8OD4KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWJ5dGUgMHg2MwoJcmVwbGFjZTIgMAoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NjMKCS8vIGFbMV0gPSBbMTAsIDExXQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDEKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwYTAwMGIKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCA2CgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY0CgkvLyBhWzJdID0gJ0hlbGxvIFdvcmxkIScKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAzCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwYzQ4NjU2YzZjNmYyMDU3NmY3MjZjNjQyMQoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgNAoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQ8OD4sIHVpbnQxNltdLCBzdHJpbmcsIHVpbnQxNltdLCB1aW50PDg+W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU2NQoJLy8gYVszXSA9IFsxNCwgMTVdCglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgNQoJZHVwCglzdG9yZSAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJdW5jb3ZlciAyCglleHRyYWN0X3VpbnQxNgoJZHVwCglzdG9yZSAyNTQgLy8gZWxlbWVudCBzdGFydAoJZHVwIC8vIGR1cGxpY2F0ZSBzdGFydCBvZiBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglzd2FwCglleHRyYWN0X3VpbnQxNiAvLyBnZXQgbnVtYmVyIG9mIGVsZW1lbnRzCglpbnQgMiAvLyBnZXQgdHlwZSBsZW5ndGgKCSogLy8gbXVsdGlwbHkgYnkgdHlwZSBsZW5ndGgKCWludCAyCgkrIC8vIGFkZCB0d28gZm9yIGxlbmd0aAoJc3RvcmUgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnQgMAoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJc3Vic3RyaW5nMwoJYnl0ZSAweDAwMDIwMDBlMDAwZgoJZHVwCglzdG9yZSAyNTIgLy8gbmV3IGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCgkrIC8vIGdldCBlbmQgb2YgRWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbGVuCglzdWJzdHJpbmczCgljb25jYXQKCWNvbmNhdAoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWNhbGxzdWIgKmdldF9sZW5ndGhfZGlmZmVyZW5jZQoJbG9hZCAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCWxvYWQgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWludCAyCgkrIC8vIGhlYWQgb2ZzZXQKCWNhbGxzdWIgKnVwZGF0ZV9keW5hbWljX2hlYWQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY2CgkvLyBhWzRdID0gWzE2LCAxN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA3CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAxIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjEwMTEKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWZyYW1lX2J1cnkgMCAvLyBhOiBbdWludDw4PiwgdWludDE2W10sIHN0cmluZywgdWludDE2W10sIHVpbnQ8OD5bXV0KCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTY4CgkvLyByZXR1cm4gYTsKCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50PDg+LCB1aW50MTZbXSwgc3RyaW5nLCB1aW50MTZbXSwgdWludDw4PltdXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidXBkYXRlU3RyaW5nSW5UdXBsZSgpKHVpbnQ4LHVpbnQxNltdLHN0cmluZyx1aW50MTZbXSx1aW50OFtdKSIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdXBkYXRlU3RyaW5nSW5UdXBsZQoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKnByb2Nlc3Nfc3RhdGljX3R1cGxlX2VsZW1lbnQ6Cglwcm90byA0IDMKCWZyYW1lX2RpZyAtNCAvLyB0dXBsZSBoZWFkCglmcmFtZV9kaWcgLTEgLy8gZWxlbWVudAoJY29uY2F0CglmcmFtZV9kaWcgLTMgLy8gdHVwbGUgdGFpbAoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglyZXRzdWIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.approval.teal b/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.approval.teal index 51d93ae18..23b067c2d 100644 --- a/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.approval.teal +++ b/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc32.json b/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc32.json index 57d5e2f7e..c6333c692 100644 --- a/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc32.json +++ b/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfdXBkYXRlVHVwbGVXaXRoT25seUR5bmFtaWNUeXBlczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQp1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTc0CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbWzFdLCBbMl0sIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMDAxCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAzCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU3NgoJLy8gYVswXSA9IFs0LCA1XQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwNDAwMDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzcKCS8vIGFbMV0gPSBbNiwgN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDYwMDA3CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzgKCS8vIGFbMl0gPSBbOCwgOV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDgwMDA5CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU4MAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMoKSh1aW50MTZbXSx1aW50MTZbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfdXBkYXRlVHVwbGVXaXRoT25seUR5bmFtaWNUeXBlczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQp1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTc0CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbWzFdLCBbMl0sIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMDAxCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAzCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU3NgoJLy8gYVswXSA9IFs0LCA1XQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwNDAwMDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzcKCS8vIGFbMV0gPSBbNiwgN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDYwMDA3CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzgKCS8vIGFbMl0gPSBbOCwgOV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDgwMDA5CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU4MAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMoKSh1aW50MTZbXSx1aW50MTZbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc56_draft.json b/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc56_draft.json index 2c96c1dc6..74de1df95 100644 --- a/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc56_draft.json +++ b/tests/contracts/artifacts/ABITestUpdateTupleWithOnlyDynamicTypes.arc56_draft.json @@ -60,1911 +60,1914 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 572, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9 - ] - }, - { - "teal": 13, - "source": 572, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 14, - "source": 572, - "pc": [ - 12 - ] - }, - { - "teal": 15, - "source": 572, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 16, - "source": 572, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 572, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 572, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 572, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 572, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 573, - "pc": [ - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 31, - "source": 573, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 32, - "source": 573, - "pc": [ - 55 - ] - }, - { - "teal": 33, - "source": 573, - "pc": [ - 56 - ] - }, - { - "teal": 34, - "source": 573, - "pc": [ - 57 - ] - }, - { - "teal": 35, - "source": 573, - "pc": [ - 58 - ] - }, - { - "teal": 39, - "source": 573, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 42, - "source": 573, - "pc": [ - 62 - ] - }, - { - "teal": 46, - "source": 574, - "pc": [ - 63 - ] - }, - { - "teal": 47, - "source": 574, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 574, - "pc": [ - 65, - 66, - 67, - 68 - ] - }, - { - "teal": 49, - "source": 574, - "pc": [ - 69, - 70, - 71, - 72, - 73, - 74 - ] - }, - { - "teal": 50, - "source": 574, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 51, - "source": 574, - "pc": [ - 78, - 79, - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 52, - "source": 574, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 53, - "source": 574, - "pc": [ - 87, - 88, - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 54, - "source": 574, - "pc": [ - 93, - 94, - 95 - ] - }, - { - "teal": 55, - "source": 574, - "pc": [ - 96 - ] - }, - { - "teal": 56, - "source": 574, - "pc": [ - 97 - ] - }, - { - "teal": 57, - "source": 574, - "pc": [ - 98, - 99 - ] - }, - { - "teal": 61, - "source": 576, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 62, - "source": 576, - "pc": [ - 102, - 103 - ] - }, - { - "teal": 63, - "source": 576, - "pc": [ - 104 - ] - }, - { - "teal": 64, - "source": 576, - "pc": [ - 105 - ] - }, - { - "teal": 65, - "source": 576, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 66, - "source": 576, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 67, - "source": 576, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 68, - "source": 576, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 69, - "source": 576, - "pc": [ - 114 - ] - }, - { - "teal": 70, - "source": 576, - "pc": [ - 115 - ] - }, - { - "teal": 71, - "source": 576, - "pc": [ - 116, - 117 - ] - }, - { - "teal": 72, - "source": 576, - "pc": [ - 118 - ] - }, - { - "teal": 73, - "source": 576, - "pc": [ - 119, - 120 - ] - }, - { - "teal": 74, - "source": 576, - "pc": [ - 121 - ] - }, - { - "teal": 75, - "source": 576, - "pc": [ - 122 - ] - }, - { - "teal": 76, - "source": 576, - "pc": [ - 123 - ] - }, - { - "teal": 77, - "source": 576, - "pc": [ - 124 - ] - }, - { - "teal": 78, - "source": 576, - "pc": [ - 125 - ] - }, - { - "teal": 79, - "source": 576, - "pc": [ - 126 - ] - }, - { - "teal": 80, - "source": 576, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 81, - "source": 576, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 82, - "source": 576, - "pc": [ - 131 - ] - }, - { - "teal": 83, - "source": 576, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 84, - "source": 576, - "pc": [ - 134 - ] - }, - { - "teal": 85, - "source": 576, - "pc": [ - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142 - ] - }, - { - "teal": 86, - "source": 576, - "pc": [ - 143 - ] - }, - { - "teal": 87, - "source": 576, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 88, - "source": 576, - "pc": [ - 146, - 147 - ] - }, - { - "teal": 89, - "source": 576, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 90, - "source": 576, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 91, - "source": 576, - "pc": [ - 152 - ] - }, - { - "teal": 92, - "source": 576, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 93, - "source": 576, - "pc": [ - 155 - ] - }, - { - "teal": 94, - "source": 576, - "pc": [ - 156 - ] - }, - { - "teal": 95, - "source": 576, - "pc": [ - 157 - ] - }, - { - "teal": 96, - "source": 576, - "pc": [ - 158 - ] - }, - { - "teal": 97, - "source": 576, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 98, - "source": 576, - "pc": [ - 161, - 162, - 163 - ] - }, - { - "teal": 99, - "source": 576, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 100, - "source": 576, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 101, - "source": 576, - "pc": [ - 168 - ] - }, - { - "teal": 102, - "source": 576, - "pc": [ - 169 - ] - }, - { - "teal": 103, - "source": 576, - "pc": [ - 170, - 171, - 172 - ] - }, - { - "teal": 104, - "source": 576, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 105, - "source": 576, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 106, - "source": 576, - "pc": [ - 177 - ] - }, - { - "teal": 107, - "source": 576, - "pc": [ - 178 - ] - }, - { - "teal": 108, - "source": 576, - "pc": [ - 179, - 180, - 181 - ] - }, - { - "teal": 109, - "source": 576, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 110, - "source": 576, - "pc": [ - 184, - 185 - ] - }, - { - "teal": 114, - "source": 577, - "pc": [ - 186, - 187 - ] - }, - { - "teal": 115, - "source": 577, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 116, - "source": 577, - "pc": [ - 190 - ] - }, - { - "teal": 117, - "source": 577, - "pc": [ - 191 - ] - }, - { - "teal": 118, - "source": 577, - "pc": [ - 192, - 193 - ] - }, - { - "teal": 119, - "source": 577, - "pc": [ - 194, - 195 - ] - }, - { - "teal": 120, - "source": 577, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 121, - "source": 577, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 122, - "source": 577, - "pc": [ - 200 - ] - }, - { - "teal": 123, - "source": 577, - "pc": [ - 201 - ] - }, - { - "teal": 124, - "source": 577, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 125, - "source": 577, - "pc": [ - 204 - ] - }, - { - "teal": 126, - "source": 577, - "pc": [ - 205, - 206 - ] - }, - { - "teal": 127, - "source": 577, - "pc": [ - 207 - ] - }, - { - "teal": 128, - "source": 577, - "pc": [ - 208 - ] - }, - { - "teal": 129, - "source": 577, - "pc": [ - 209 - ] - }, - { - "teal": 130, - "source": 577, - "pc": [ - 210 - ] - }, - { - "teal": 131, - "source": 577, - "pc": [ - 211 - ] - }, - { - "teal": 132, - "source": 577, - "pc": [ - 212 - ] - }, - { - "teal": 133, - "source": 577, - "pc": [ - 213, - 214 - ] - }, - { - "teal": 134, - "source": 577, - "pc": [ - 215, - 216 - ] - }, - { - "teal": 135, - "source": 577, - "pc": [ - 217 - ] - }, - { - "teal": 136, - "source": 577, - "pc": [ - 218, - 219 - ] - }, - { - "teal": 137, - "source": 577, - "pc": [ - 220 - ] - }, - { - "teal": 138, - "source": 577, - "pc": [ - 221, - 222, - 223, - 224, - 225, - 226, - 227, - 228 - ] - }, - { - "teal": 139, - "source": 577, - "pc": [ - 229 - ] - }, - { - "teal": 140, - "source": 577, - "pc": [ - 230, - 231 - ] - }, - { - "teal": 141, - "source": 577, - "pc": [ - 232, - 233 - ] - }, - { - "teal": 142, - "source": 577, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 143, - "source": 577, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 144, - "source": 577, - "pc": [ - 238 - ] - }, - { - "teal": 145, - "source": 577, - "pc": [ - 239, - 240 - ] - }, - { - "teal": 146, - "source": 577, - "pc": [ - 241 - ] - }, - { - "teal": 147, - "source": 577, - "pc": [ - 242 - ] - }, - { - "teal": 148, - "source": 577, - "pc": [ - 243 - ] - }, - { - "teal": 149, - "source": 577, - "pc": [ - 244 - ] - }, - { - "teal": 150, - "source": 577, - "pc": [ - 245, - 246 - ] - }, - { - "teal": 151, - "source": 577, - "pc": [ - 247, - 248, - 249 - ] - }, - { - "teal": 152, - "source": 577, - "pc": [ - 250, - 251 - ] - }, - { - "teal": 153, - "source": 577, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 154, - "source": 577, - "pc": [ - 254 - ] - }, - { - "teal": 155, - "source": 577, - "pc": [ - 255 - ] - }, - { - "teal": 156, - "source": 577, - "pc": [ - 256, - 257, - 258 - ] - }, - { - "teal": 157, - "source": 577, - "pc": [ - 259, - 260 - ] - }, - { - "teal": 158, - "source": 577, - "pc": [ - 261, - 262 - ] - }, - { - "teal": 162, - "source": 578, - "pc": [ - 263, - 264 - ] - }, - { - "teal": 163, - "source": 578, - "pc": [ - 265, - 266 - ] - }, - { - "teal": 164, - "source": 578, - "pc": [ - 267 - ] - }, - { - "teal": 165, - "source": 578, - "pc": [ - 268 - ] - }, - { - "teal": 166, - "source": 578, - "pc": [ - 269, - 270 - ] - }, - { - "teal": 167, - "source": 578, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 168, - "source": 578, - "pc": [ - 273, - 274 - ] - }, - { - "teal": 169, - "source": 578, - "pc": [ - 275, - 276 - ] - }, - { - "teal": 170, - "source": 578, - "pc": [ - 277 - ] - }, - { - "teal": 171, - "source": 578, - "pc": [ - 278 - ] - }, - { - "teal": 172, - "source": 578, - "pc": [ - 279, - 280 - ] - }, - { - "teal": 173, - "source": 578, - "pc": [ - 281 - ] - }, - { - "teal": 174, - "source": 578, - "pc": [ - 282, - 283 - ] - }, - { - "teal": 175, - "source": 578, - "pc": [ - 284 - ] - }, - { - "teal": 176, - "source": 578, - "pc": [ - 285 - ] - }, - { - "teal": 177, - "source": 578, - "pc": [ - 286 - ] - }, - { - "teal": 178, - "source": 578, - "pc": [ - 287 - ] - }, - { - "teal": 179, - "source": 578, - "pc": [ - 288 - ] - }, - { - "teal": 180, - "source": 578, - "pc": [ - 289 - ] - }, - { - "teal": 181, - "source": 578, - "pc": [ - 290, - 291 - ] - }, - { - "teal": 182, - "source": 578, - "pc": [ - 292, - 293 - ] - }, - { - "teal": 183, - "source": 578, - "pc": [ - 294 - ] - }, - { - "teal": 184, - "source": 578, - "pc": [ - 295, - 296 - ] - }, - { - "teal": 185, - "source": 578, - "pc": [ - 297 - ] - }, - { - "teal": 186, - "source": 578, - "pc": [ - 298, - 299, - 300, - 301, - 302, - 303, - 304, - 305 - ] - }, - { - "teal": 187, - "source": 578, - "pc": [ - 306 - ] - }, - { - "teal": 188, - "source": 578, - "pc": [ - 307, - 308 - ] - }, - { - "teal": 189, - "source": 578, - "pc": [ - 309, - 310 - ] - }, - { - "teal": 190, - "source": 578, - "pc": [ - 311, - 312 - ] - }, - { - "teal": 191, - "source": 578, - "pc": [ - 313, - 314 - ] - }, - { - "teal": 192, - "source": 578, - "pc": [ - 315 - ] - }, - { - "teal": 193, - "source": 578, - "pc": [ - 316, - 317 - ] - }, - { - "teal": 194, - "source": 578, - "pc": [ - 318 - ] - }, - { - "teal": 195, - "source": 578, - "pc": [ - 319 - ] - }, - { - "teal": 196, - "source": 578, - "pc": [ - 320 - ] - }, - { - "teal": 197, - "source": 578, - "pc": [ - 321 - ] - }, - { - "teal": 198, - "source": 578, - "pc": [ - 322, - 323 - ] - }, - { - "teal": 199, - "source": 578, - "pc": [ - 324, - 325, - 326 - ] - }, - { - "teal": 200, - "source": 578, - "pc": [ - 327, - 328 - ] - }, - { - "teal": 201, - "source": 578, - "pc": [ - 329, - 330 - ] - }, - { - "teal": 205, - "source": 580, - "pc": [ - 331, - 332 - ] - }, - { - "teal": 208, - "source": 573, - "pc": [ - 333, - 334 - ] - }, - { - "teal": 209, - "source": 573, - "pc": [ - 335 - ] - }, - { - "teal": 212, - "source": 572, - "pc": [ - 336 - ] - }, - { - "teal": 213, - "source": 572, - "pc": [ - 337 - ] - }, - { - "teal": 216, - "source": 572, - "pc": [ - 338, - 339, - 340, - 341, - 342, - 343 - ] - }, - { - "teal": 217, - "source": 572, - "pc": [ - 344, - 345, - 346 - ] - }, - { - "teal": 218, - "source": 572, - "pc": [ - 347, - 348, - 349, - 350 - ] - }, - { - "teal": 221, - "source": 572, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 351 - ] - }, - { - "teal": 224, - "source": 572, - "pc": [ - 352, - 353, - 354, - 355, - 356, - 357 - ] - }, - { - "teal": 225, - "source": 572, - "pc": [ - 358, - 359, - 360 - ] - }, - { - "teal": 226, - "source": 572, - "pc": [ - 361, - 362, - 363, - 364 - ] - }, - { - "teal": 229, - "source": 572, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 365 - ] - }, - { - "teal": 232, - "source": 572, - "pc": [ - 366, - 367, - 368 - ] - }, - { - "teal": 233, - "source": 572, - "pc": [ - 369, - 370 - ] - }, - { - "teal": 234, - "source": 572, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 235, - "source": 572, - "pc": [ - 373 - ] - }, - { - "teal": 236, - "source": 572, - "pc": [ - 374, - 375 - ] - }, - { - "teal": 237, - "source": 572, - "pc": [ - 376, - 377 - ] - }, - { - "teal": 238, - "source": 572, - "pc": [ - 378 - ] - }, - { - "teal": 239, - "source": 572, - "pc": [ - 379 - ] - }, - { - "teal": 240, - "source": 572, - "pc": [ - 380, - 381 - ] - }, - { - "teal": 241, - "source": 572, - "pc": [ - 382 - ] - }, - { - "teal": 242, - "source": 572, - "pc": [ - 383 - ] - }, - { - "teal": 243, - "source": 572, - "pc": [ - 384 - ] - }, - { - "teal": 244, - "source": 572, - "pc": [ - 385, - 386, - 387 - ] - }, - { - "teal": 245, - "source": 572, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 246, - "source": 572, - "pc": [ - 390, - 391 - ] - }, - { - "teal": 247, - "source": 572, - "pc": [ - 392 - ] - }, - { - "teal": 248, - "source": 572, - "pc": [ - 393 - ] - }, - { - "teal": 249, - "source": 572, - "pc": [ - 394, - 395 - ] - }, - { - "teal": 250, - "source": 572, - "pc": [ - 396, - 397 - ] - }, - { - "teal": 251, - "source": 572, - "pc": [ - 398, - 399 - ] - }, - { - "teal": 252, - "source": 572, - "pc": [ - 400, - 401 - ] - }, - { - "teal": 253, - "source": 572, - "pc": [ - 402 - ] - }, - { - "teal": 256, - "source": 572, - "pc": [ - 403, - 404, - 405 - ] - }, - { - "teal": 257, - "source": 572, - "pc": [ - 406, - 407 - ] - }, - { - "teal": 258, - "source": 572, - "pc": [ - 408, - 409 - ] - }, - { - "teal": 259, - "source": 572, - "pc": [ - 410, - 411 - ] - }, - { - "teal": 260, - "source": 572, - "pc": [ - 412 - ] - }, - { - "teal": 261, - "source": 572, - "pc": [ - 413, - 414 - ] - }, - { - "teal": 262, - "source": 572, - "pc": [ - 415, - 416, - 417 - ] - }, - { - "teal": 263, - "source": 572, - "pc": [ - 418 - ] - }, - { - "teal": 264, - "source": 572, - "pc": [ - 419, - 420, - 421 - ] - }, - { - "teal": 267, - "source": 572, - "pc": [ - 422 - ] - }, - { - "teal": 268, - "source": 572, - "pc": [ - 423 - ] - }, - { - "teal": 271, - "source": 572, - "pc": [ - 424 - ] - }, - { - "teal": 272, - "source": 572, - "pc": [ - 425, - 426, - 427 - ] - }, - { - "teal": 273, - "source": 572, - "pc": [ - 428, - 429 - ] - }, - { - "teal": 274, - "source": 572, - "pc": [ - 430 - ] - }, - { - "teal": 275, - "source": 572, - "pc": [ - 431, - 432 - ] - }, - { - "teal": 276, - "source": 572, - "pc": [ - 433 - ] - }, - { - "teal": 277, - "source": 572, - "pc": [ - 434 - ] - }, - { - "teal": 278, - "source": 572, - "pc": [ - 435, - 436 - ] - }, - { - "teal": 279, - "source": 572, - "pc": [ - 437 - ] - }, - { - "teal": 282, - "source": 572, - "pc": [ - 438, - 439 - ] - }, - { - "teal": 283, - "source": 572, - "pc": [ - 440 - ] - }, - { - "teal": 284, - "source": 572, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 285, - "source": 572, - "pc": [ - 443 - ] - }, - { - "teal": 286, - "source": 572, - "pc": [ - 444, - 445, - 446 - ] - }, - { - "teal": 287, - "source": 572, - "pc": [ - 447, - 448 - ] - }, - { - "teal": 288, - "source": 572, - "pc": [ - 449 - ] - }, - { - "teal": 289, - "source": 572, - "pc": [ - 450, - 451 - ] - }, - { - "teal": 290, - "source": 572, - "pc": [ - 452 - ] - }, - { - "teal": 291, - "source": 572, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 292, - "source": 572, - "pc": [ - 455, - 456, - 457 - ] - }, - { - "teal": 295, - "source": 572, - "pc": [ - 458, - 459 - ] - }, - { - "teal": 296, - "source": 572, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 297, - "source": 572, - "pc": [ - 462 - ] - }, - { - "teal": 298, - "source": 572, - "pc": [ - 463 - ] - }, - { - "teal": 299, - "source": 572, - "pc": [ - 464, - 465 - ] - }, - { - "teal": 302, - "source": 572, - "pc": [ - 466 - ] - }, - { - "teal": 303, - "source": 572, - "pc": [ - 467, - 468 - ] - }, - { - "teal": 304, - "source": 572, - "pc": [ - 469 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 572, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "teal": 13, + "source": 572, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 14, + "source": 572, + "pc": [ + 12 + ] + }, + { + "teal": 15, + "source": 572, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 16, + "source": 572, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 572, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 572, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 572, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 572, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 573, + "pc": [ + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 31, + "source": 573, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 32, + "source": 573, + "pc": [ + 55 + ] + }, + { + "teal": 33, + "source": 573, + "pc": [ + 56 + ] + }, + { + "teal": 34, + "source": 573, + "pc": [ + 57 + ] + }, + { + "teal": 35, + "source": 573, + "pc": [ + 58 + ] + }, + { + "teal": 39, + "source": 573, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 42, + "source": 573, + "pc": [ + 62 + ] + }, + { + "teal": 46, + "source": 574, + "pc": [ + 63 + ] + }, + { + "teal": 47, + "source": 574, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 574, + "pc": [ + 65, + 66, + 67, + 68 + ] + }, + { + "teal": 49, + "source": 574, + "pc": [ + 69, + 70, + 71, + 72, + 73, + 74 + ] + }, + { + "teal": 50, + "source": 574, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 51, + "source": 574, + "pc": [ + 78, + 79, + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 52, + "source": 574, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 53, + "source": 574, + "pc": [ + 87, + 88, + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 54, + "source": 574, + "pc": [ + 93, + 94, + 95 + ] + }, + { + "teal": 55, + "source": 574, + "pc": [ + 96 + ] + }, + { + "teal": 56, + "source": 574, + "pc": [ + 97 + ] + }, + { + "teal": 57, + "source": 574, + "pc": [ + 98, + 99 + ] + }, + { + "teal": 61, + "source": 576, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 62, + "source": 576, + "pc": [ + 102, + 103 + ] + }, + { + "teal": 63, + "source": 576, + "pc": [ + 104 + ] + }, + { + "teal": 64, + "source": 576, + "pc": [ + 105 + ] + }, + { + "teal": 65, + "source": 576, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 66, + "source": 576, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 67, + "source": 576, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 68, + "source": 576, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 69, + "source": 576, + "pc": [ + 114 + ] + }, + { + "teal": 70, + "source": 576, + "pc": [ + 115 + ] + }, + { + "teal": 71, + "source": 576, + "pc": [ + 116, + 117 + ] + }, + { + "teal": 72, + "source": 576, + "pc": [ + 118 + ] + }, + { + "teal": 73, + "source": 576, + "pc": [ + 119, + 120 + ] + }, + { + "teal": 74, + "source": 576, + "pc": [ + 121 + ] + }, + { + "teal": 75, + "source": 576, + "pc": [ + 122 + ] + }, + { + "teal": 76, + "source": 576, + "pc": [ + 123 + ] + }, + { + "teal": 77, + "source": 576, + "pc": [ + 124 + ] + }, + { + "teal": 78, + "source": 576, + "pc": [ + 125 + ] + }, + { + "teal": 79, + "source": 576, + "pc": [ + 126 + ] + }, + { + "teal": 80, + "source": 576, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 81, + "source": 576, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 82, + "source": 576, + "pc": [ + 131 + ] + }, + { + "teal": 83, + "source": 576, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 84, + "source": 576, + "pc": [ + 134 + ] + }, + { + "teal": 85, + "source": 576, + "pc": [ + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + }, + { + "teal": 86, + "source": 576, + "pc": [ + 143 + ] + }, + { + "teal": 87, + "source": 576, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 88, + "source": 576, + "pc": [ + 146, + 147 + ] + }, + { + "teal": 89, + "source": 576, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 90, + "source": 576, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 91, + "source": 576, + "pc": [ + 152 + ] + }, + { + "teal": 92, + "source": 576, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 93, + "source": 576, + "pc": [ + 155 + ] + }, + { + "teal": 94, + "source": 576, + "pc": [ + 156 + ] + }, + { + "teal": 95, + "source": 576, + "pc": [ + 157 + ] + }, + { + "teal": 96, + "source": 576, + "pc": [ + 158 + ] + }, + { + "teal": 97, + "source": 576, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 98, + "source": 576, + "pc": [ + 161, + 162, + 163 + ] + }, + { + "teal": 99, + "source": 576, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 100, + "source": 576, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 101, + "source": 576, + "pc": [ + 168 + ] + }, + { + "teal": 102, + "source": 576, + "pc": [ + 169 + ] + }, + { + "teal": 103, + "source": 576, + "pc": [ + 170, + 171, + 172 + ] + }, + { + "teal": 104, + "source": 576, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 105, + "source": 576, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 106, + "source": 576, + "pc": [ + 177 + ] + }, + { + "teal": 107, + "source": 576, + "pc": [ + 178 + ] + }, + { + "teal": 108, + "source": 576, + "pc": [ + 179, + 180, + 181 + ] + }, + { + "teal": 109, + "source": 576, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 110, + "source": 576, + "pc": [ + 184, + 185 + ] + }, + { + "teal": 114, + "source": 577, + "pc": [ + 186, + 187 + ] + }, + { + "teal": 115, + "source": 577, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 116, + "source": 577, + "pc": [ + 190 + ] + }, + { + "teal": 117, + "source": 577, + "pc": [ + 191 + ] + }, + { + "teal": 118, + "source": 577, + "pc": [ + 192, + 193 + ] + }, + { + "teal": 119, + "source": 577, + "pc": [ + 194, + 195 + ] + }, + { + "teal": 120, + "source": 577, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 121, + "source": 577, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 122, + "source": 577, + "pc": [ + 200 + ] + }, + { + "teal": 123, + "source": 577, + "pc": [ + 201 + ] + }, + { + "teal": 124, + "source": 577, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 125, + "source": 577, + "pc": [ + 204 + ] + }, + { + "teal": 126, + "source": 577, + "pc": [ + 205, + 206 + ] + }, + { + "teal": 127, + "source": 577, + "pc": [ + 207 + ] + }, + { + "teal": 128, + "source": 577, + "pc": [ + 208 + ] + }, + { + "teal": 129, + "source": 577, + "pc": [ + 209 + ] + }, + { + "teal": 130, + "source": 577, + "pc": [ + 210 + ] + }, + { + "teal": 131, + "source": 577, + "pc": [ + 211 + ] + }, + { + "teal": 132, + "source": 577, + "pc": [ + 212 + ] + }, + { + "teal": 133, + "source": 577, + "pc": [ + 213, + 214 + ] + }, + { + "teal": 134, + "source": 577, + "pc": [ + 215, + 216 + ] + }, + { + "teal": 135, + "source": 577, + "pc": [ + 217 + ] + }, + { + "teal": 136, + "source": 577, + "pc": [ + 218, + 219 + ] + }, + { + "teal": 137, + "source": 577, + "pc": [ + 220 + ] + }, + { + "teal": 138, + "source": 577, + "pc": [ + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228 + ] + }, + { + "teal": 139, + "source": 577, + "pc": [ + 229 + ] + }, + { + "teal": 140, + "source": 577, + "pc": [ + 230, + 231 + ] + }, + { + "teal": 141, + "source": 577, + "pc": [ + 232, + 233 + ] + }, + { + "teal": 142, + "source": 577, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 143, + "source": 577, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 144, + "source": 577, + "pc": [ + 238 + ] + }, + { + "teal": 145, + "source": 577, + "pc": [ + 239, + 240 + ] + }, + { + "teal": 146, + "source": 577, + "pc": [ + 241 + ] + }, + { + "teal": 147, + "source": 577, + "pc": [ + 242 + ] + }, + { + "teal": 148, + "source": 577, + "pc": [ + 243 + ] + }, + { + "teal": 149, + "source": 577, + "pc": [ + 244 + ] + }, + { + "teal": 150, + "source": 577, + "pc": [ + 245, + 246 + ] + }, + { + "teal": 151, + "source": 577, + "pc": [ + 247, + 248, + 249 + ] + }, + { + "teal": 152, + "source": 577, + "pc": [ + 250, + 251 + ] + }, + { + "teal": 153, + "source": 577, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 154, + "source": 577, + "pc": [ + 254 + ] + }, + { + "teal": 155, + "source": 577, + "pc": [ + 255 + ] + }, + { + "teal": 156, + "source": 577, + "pc": [ + 256, + 257, + 258 + ] + }, + { + "teal": 157, + "source": 577, + "pc": [ + 259, + 260 + ] + }, + { + "teal": 158, + "source": 577, + "pc": [ + 261, + 262 + ] + }, + { + "teal": 162, + "source": 578, + "pc": [ + 263, + 264 + ] + }, + { + "teal": 163, + "source": 578, + "pc": [ + 265, + 266 + ] + }, + { + "teal": 164, + "source": 578, + "pc": [ + 267 + ] + }, + { + "teal": 165, + "source": 578, + "pc": [ + 268 + ] + }, + { + "teal": 166, + "source": 578, + "pc": [ + 269, + 270 + ] + }, + { + "teal": 167, + "source": 578, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 168, + "source": 578, + "pc": [ + 273, + 274 + ] + }, + { + "teal": 169, + "source": 578, + "pc": [ + 275, + 276 + ] + }, + { + "teal": 170, + "source": 578, + "pc": [ + 277 + ] + }, + { + "teal": 171, + "source": 578, + "pc": [ + 278 + ] + }, + { + "teal": 172, + "source": 578, + "pc": [ + 279, + 280 + ] + }, + { + "teal": 173, + "source": 578, + "pc": [ + 281 + ] + }, + { + "teal": 174, + "source": 578, + "pc": [ + 282, + 283 + ] + }, + { + "teal": 175, + "source": 578, + "pc": [ + 284 + ] + }, + { + "teal": 176, + "source": 578, + "pc": [ + 285 + ] + }, + { + "teal": 177, + "source": 578, + "pc": [ + 286 + ] + }, + { + "teal": 178, + "source": 578, + "pc": [ + 287 + ] + }, + { + "teal": 179, + "source": 578, + "pc": [ + 288 + ] + }, + { + "teal": 180, + "source": 578, + "pc": [ + 289 + ] + }, + { + "teal": 181, + "source": 578, + "pc": [ + 290, + 291 + ] + }, + { + "teal": 182, + "source": 578, + "pc": [ + 292, + 293 + ] + }, + { + "teal": 183, + "source": 578, + "pc": [ + 294 + ] + }, + { + "teal": 184, + "source": 578, + "pc": [ + 295, + 296 + ] + }, + { + "teal": 185, + "source": 578, + "pc": [ + 297 + ] + }, + { + "teal": 186, + "source": 578, + "pc": [ + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305 + ] + }, + { + "teal": 187, + "source": 578, + "pc": [ + 306 + ] + }, + { + "teal": 188, + "source": 578, + "pc": [ + 307, + 308 + ] + }, + { + "teal": 189, + "source": 578, + "pc": [ + 309, + 310 + ] + }, + { + "teal": 190, + "source": 578, + "pc": [ + 311, + 312 + ] + }, + { + "teal": 191, + "source": 578, + "pc": [ + 313, + 314 + ] + }, + { + "teal": 192, + "source": 578, + "pc": [ + 315 + ] + }, + { + "teal": 193, + "source": 578, + "pc": [ + 316, + 317 + ] + }, + { + "teal": 194, + "source": 578, + "pc": [ + 318 + ] + }, + { + "teal": 195, + "source": 578, + "pc": [ + 319 + ] + }, + { + "teal": 196, + "source": 578, + "pc": [ + 320 + ] + }, + { + "teal": 197, + "source": 578, + "pc": [ + 321 + ] + }, + { + "teal": 198, + "source": 578, + "pc": [ + 322, + 323 + ] + }, + { + "teal": 199, + "source": 578, + "pc": [ + 324, + 325, + 326 + ] + }, + { + "teal": 200, + "source": 578, + "pc": [ + 327, + 328 + ] + }, + { + "teal": 201, + "source": 578, + "pc": [ + 329, + 330 + ] + }, + { + "teal": 205, + "source": 580, + "pc": [ + 331, + 332 + ] + }, + { + "teal": 208, + "source": 573, + "pc": [ + 333, + 334 + ] + }, + { + "teal": 209, + "source": 573, + "pc": [ + 335 + ] + }, + { + "teal": 212, + "source": 572, + "pc": [ + 336 + ] + }, + { + "teal": 213, + "source": 572, + "pc": [ + 337 + ] + }, + { + "teal": 216, + "source": 572, + "pc": [ + 338, + 339, + 340, + 341, + 342, + 343 + ] + }, + { + "teal": 217, + "source": 572, + "pc": [ + 344, + 345, + 346 + ] + }, + { + "teal": 218, + "source": 572, + "pc": [ + 347, + 348, + 349, + 350 + ] + }, + { + "teal": 221, + "source": 572, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 351 + ] + }, + { + "teal": 224, + "source": 572, + "pc": [ + 352, + 353, + 354, + 355, + 356, + 357 + ] + }, + { + "teal": 225, + "source": 572, + "pc": [ + 358, + 359, + 360 + ] + }, + { + "teal": 226, + "source": 572, + "pc": [ + 361, + 362, + 363, + 364 + ] + }, + { + "teal": 229, + "source": 572, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 365 + ] + }, + { + "teal": 232, + "source": 572, + "pc": [ + 366, + 367, + 368 + ] + }, + { + "teal": 233, + "source": 572, + "pc": [ + 369, + 370 + ] + }, + { + "teal": 234, + "source": 572, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 235, + "source": 572, + "pc": [ + 373 + ] + }, + { + "teal": 236, + "source": 572, + "pc": [ + 374, + 375 + ] + }, + { + "teal": 237, + "source": 572, + "pc": [ + 376, + 377 + ] + }, + { + "teal": 238, + "source": 572, + "pc": [ + 378 + ] + }, + { + "teal": 239, + "source": 572, + "pc": [ + 379 + ] + }, + { + "teal": 240, + "source": 572, + "pc": [ + 380, + 381 + ] + }, + { + "teal": 241, + "source": 572, + "pc": [ + 382 + ] + }, + { + "teal": 242, + "source": 572, + "pc": [ + 383 + ] + }, + { + "teal": 243, + "source": 572, + "pc": [ + 384 + ] + }, + { + "teal": 244, + "source": 572, + "pc": [ + 385, + 386, + 387 + ] + }, + { + "teal": 245, + "source": 572, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 246, + "source": 572, + "pc": [ + 390, + 391 + ] + }, + { + "teal": 247, + "source": 572, + "pc": [ + 392 + ] + }, + { + "teal": 248, + "source": 572, + "pc": [ + 393 + ] + }, + { + "teal": 249, + "source": 572, + "pc": [ + 394, + 395 + ] + }, + { + "teal": 250, + "source": 572, + "pc": [ + 396, + 397 + ] + }, + { + "teal": 251, + "source": 572, + "pc": [ + 398, + 399 + ] + }, + { + "teal": 252, + "source": 572, + "pc": [ + 400, + 401 + ] + }, + { + "teal": 253, + "source": 572, + "pc": [ + 402 + ] + }, + { + "teal": 256, + "source": 572, + "pc": [ + 403, + 404, + 405 + ] + }, + { + "teal": 257, + "source": 572, + "pc": [ + 406, + 407 + ] + }, + { + "teal": 258, + "source": 572, + "pc": [ + 408, + 409 + ] + }, + { + "teal": 259, + "source": 572, + "pc": [ + 410, + 411 + ] + }, + { + "teal": 260, + "source": 572, + "pc": [ + 412 + ] + }, + { + "teal": 261, + "source": 572, + "pc": [ + 413, + 414 + ] + }, + { + "teal": 262, + "source": 572, + "pc": [ + 415, + 416, + 417 + ] + }, + { + "teal": 263, + "source": 572, + "pc": [ + 418 + ] + }, + { + "teal": 264, + "source": 572, + "pc": [ + 419, + 420, + 421 + ] + }, + { + "teal": 267, + "source": 572, + "pc": [ + 422 + ] + }, + { + "teal": 268, + "source": 572, + "pc": [ + 423 + ] + }, + { + "teal": 271, + "source": 572, + "pc": [ + 424 + ] + }, + { + "teal": 272, + "source": 572, + "pc": [ + 425, + 426, + 427 + ] + }, + { + "teal": 273, + "source": 572, + "pc": [ + 428, + 429 + ] + }, + { + "teal": 274, + "source": 572, + "pc": [ + 430 + ] + }, + { + "teal": 275, + "source": 572, + "pc": [ + 431, + 432 + ] + }, + { + "teal": 276, + "source": 572, + "pc": [ + 433 + ] + }, + { + "teal": 277, + "source": 572, + "pc": [ + 434 + ] + }, + { + "teal": 278, + "source": 572, + "pc": [ + 435, + 436 + ] + }, + { + "teal": 279, + "source": 572, + "pc": [ + 437 + ] + }, + { + "teal": 282, + "source": 572, + "pc": [ + 438, + 439 + ] + }, + { + "teal": 283, + "source": 572, + "pc": [ + 440 + ] + }, + { + "teal": 284, + "source": 572, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 285, + "source": 572, + "pc": [ + 443 + ] + }, + { + "teal": 286, + "source": 572, + "pc": [ + 444, + 445, + 446 + ] + }, + { + "teal": 287, + "source": 572, + "pc": [ + 447, + 448 + ] + }, + { + "teal": 288, + "source": 572, + "pc": [ + 449 + ] + }, + { + "teal": 289, + "source": 572, + "pc": [ + 450, + 451 + ] + }, + { + "teal": 290, + "source": 572, + "pc": [ + 452 + ] + }, + { + "teal": 291, + "source": 572, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 292, + "source": 572, + "pc": [ + 455, + 456, + 457 + ] + }, + { + "teal": 295, + "source": 572, + "pc": [ + 458, + 459 + ] + }, + { + "teal": 296, + "source": 572, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 297, + "source": 572, + "pc": [ + 462 + ] + }, + { + "teal": 298, + "source": 572, + "pc": [ + 463 + ] + }, + { + "teal": 299, + "source": 572, + "pc": [ + 464, + 465 + ] + }, + { + "teal": 302, + "source": 572, + "pc": [ + 466 + ] + }, + { + "teal": 303, + "source": 572, + "pc": [ + 467, + 468 + ] + }, + { + "teal": 304, + "source": 572, + "pc": [ + 469 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfdXBkYXRlVHVwbGVXaXRoT25seUR5bmFtaWNUeXBlczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQp1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTc0CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbWzFdLCBbMl0sIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMDAxCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAzCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU3NgoJLy8gYVswXSA9IFs0LCA1XQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwNDAwMDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzcKCS8vIGFbMV0gPSBbNiwgN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDYwMDA3CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzgKCS8vIGFbMl0gPSBbOCwgOV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDgwMDA5CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU4MAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMoKSh1aW50MTZbXSx1aW50MTZbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCiphYmlfcm91dGVfdXBkYXRlVHVwbGVXaXRoT25seUR5bmFtaWNUeXBlczoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCkodWludDE2W10sdWludDE2W10sdWludDE2W10pCgljYWxsc3ViIHVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzKCk6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQp1cGRhdGVUdXBsZVdpdGhPbmx5RHluYW1pY1R5cGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWJpLmFsZ28udHM6NTc0CgkvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0gPSBbWzFdLCBbMl0sIFszXV0KCWJ5dGUgMHggLy8gaW5pdGlhbCBoZWFkCglieXRlIDB4IC8vIGluaXRpYWwgdGFpbAoJYnl0ZSAweDAwMDYgLy8gaW5pdGlhbCBoZWFkIG9mZnNldAoJYnl0ZSAweDAwMDEwMDAxCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAyCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJYnl0ZSAweDAwMDEwMDAzCgljYWxsc3ViICpwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudAoJcG9wIC8vIHBvcCBoZWFkIG9mZnNldAoJY29uY2F0IC8vIGNvbmNhdCBoZWFkIGFuZCB0YWlsCglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU3NgoJLy8gYVswXSA9IFs0LCA1XQoJZnJhbWVfZGlnIDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWR1cAoJc3RvcmUgMjUxIC8vIGVsZW1lbnQgaGVhZCBvZmZzZXQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXVuY292ZXIgMgoJZXh0cmFjdF91aW50MTYKCWR1cAoJc3RvcmUgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCWR1cCAvLyBkdXBsaWNhdGUgc3RhcnQgb2YgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJc3dhcAoJZXh0cmFjdF91aW50MTYgLy8gZ2V0IG51bWJlciBvZiBlbGVtZW50cwoJaW50IDIgLy8gZ2V0IHR5cGUgbGVuZ3RoCgkqIC8vIG11bHRpcGx5IGJ5IHR5cGUgbGVuZ3RoCglpbnQgMgoJKyAvLyBhZGQgdHdvIGZvciBsZW5ndGgKCXN0b3JlIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJaW50IDAKCWxvYWQgMjU0IC8vIGVsZW1lbnQgc3RhcnQKCXN1YnN0cmluZzMKCWJ5dGUgMHgwMDAyMDAwNDAwMDUKCWR1cAoJc3RvcmUgMjUyIC8vIG5ldyBlbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0Cglsb2FkIDI1MyAvLyBlbGVtZW50IGxlbmd0aAoJKyAvLyBnZXQgZW5kIG9mIEVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWxlbgoJc3Vic3RyaW5nMwoJY29uY2F0Cgljb25jYXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CgljYWxsc3ViICpnZXRfbGVuZ3RoX2RpZmZlcmVuY2UKCWxvYWQgMjUwIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0CglpbnQgMgoJKyAvLyBoZWFkIG9mc2V0CgljYWxsc3ViICp1cGRhdGVfZHluYW1pY19oZWFkCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDQKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzcKCS8vIGFbMV0gPSBbNiwgN10KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAyCglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDYwMDA3CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1MCAvLyBsZW5ndGggZGlmZmVyZW5jZQoJbG9hZCAyNTEgLy8gZWxlbWVudCBoZWFkIG9mZnNldAoJaW50IDIKCSsgLy8gaGVhZCBvZnNldAoJY2FsbHN1YiAqdXBkYXRlX2R5bmFtaWNfaGVhZAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZnJhbWVfYnVyeSAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hYmkuYWxnby50czo1NzgKCS8vIGFbMl0gPSBbOCwgOV0KCWZyYW1lX2RpZyAwIC8vIGE6IFt1aW50MTZbXSwgdWludDE2W10sIHVpbnQxNltdXQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCA0CglkdXAKCXN0b3JlIDI1MSAvLyBlbGVtZW50IGhlYWQgb2Zmc2V0Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5Cgl1bmNvdmVyIDIKCWV4dHJhY3RfdWludDE2CglkdXAKCXN0b3JlIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglkdXAgLy8gZHVwbGljYXRlIHN0YXJ0IG9mIGVsZW1lbnQKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWV4dHJhY3RfdWludDE2IC8vIGdldCBudW1iZXIgb2YgZWxlbWVudHMKCWludCAyIC8vIGdldCB0eXBlIGxlbmd0aAoJKiAvLyBtdWx0aXBseSBieSB0eXBlIGxlbmd0aAoJaW50IDIKCSsgLy8gYWRkIHR3byBmb3IgbGVuZ3RoCglzdG9yZSAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludCAwCglsb2FkIDI1NCAvLyBlbGVtZW50IHN0YXJ0CglzdWJzdHJpbmczCglieXRlIDB4MDAwMjAwMDgwMDA5CglkdXAKCXN0b3JlIDI1MiAvLyBuZXcgZWxlbWVudAoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTQgLy8gZWxlbWVudCBzdGFydAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCSsgLy8gZ2V0IGVuZCBvZiBFbGVtZW50Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglsZW4KCXN1YnN0cmluZzMKCWNvbmNhdAoJY29uY2F0CglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJY2FsbHN1YiAqZ2V0X2xlbmd0aF9kaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9idXJ5IDAgLy8gYTogW3VpbnQxNltdLCB1aW50MTZbXSwgdWludDE2W11dCgoJLy8gdGVzdHMvY29udHJhY3RzL2FiaS5hbGdvLnRzOjU4MAoJLy8gcmV0dXJuIGE7CglmcmFtZV9kaWcgMCAvLyBhOiBbdWludDE2W10sIHVpbnQxNltdLCB1aW50MTZbXV0KCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInVwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMoKSh1aW50MTZbXSx1aW50MTZbXSx1aW50MTZbXSkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX3VwZGF0ZVR1cGxlV2l0aE9ubHlEeW5hbWljVHlwZXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCipwcm9jZXNzX2R5bmFtaWNfdHVwbGVfZWxlbWVudDoKCXByb3RvIDQgMwoJZnJhbWVfZGlnIC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJY29uY2F0CglmcmFtZV9idXJ5IC00IC8vIHR1cGxlIGhlYWQKCWZyYW1lX2RpZyAtMSAvLyBlbGVtZW50CglkdXAKCWxlbgoJZnJhbWVfZGlnIC0yIC8vIGhlYWQgb2Zmc2V0CglidG9pCgkrCglpdG9iCglleHRyYWN0IDYgMgoJZnJhbWVfYnVyeSAtMiAvLyBoZWFkIG9mZnNldAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCXN3YXAKCWNvbmNhdAoJZnJhbWVfYnVyeSAtMyAvLyB0dXBsZSB0YWlsCglmcmFtZV9kaWcgLTQgLy8gdHVwbGUgaGVhZAoJZnJhbWVfZGlnIC0zIC8vIHR1cGxlIHRhaWwKCWZyYW1lX2RpZyAtMiAvLyBoZWFkIG9mZnNldAoJcmV0c3ViCgoqdXBkYXRlX2R5bmFtaWNfaGVhZDoKCXByb3RvIDIgMAoJZnJhbWVfZGlnIC0yIC8vIGxlbmd0aCBkaWZmZXJlbmNlCglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglmcmFtZV9kaWcgLTEgLy8gZHluYW1pYyBhcnJheSBvZmZzZXQKCWV4dHJhY3RfdWludDE2IC8vIGV4dHJhY3QgZHluYW1pYyBhcnJheSBvZmZzZXQKCWxvYWQgMjQ5IC8vIHN1YnRyYWN0IGhlYWQgZGlmZmVyZW5jZQoJYnogKnN1YnRyYWN0X2hlYWRfZGlmZmVyZW5jZQoJKyAvLyBhZGQgZGlmZmVyZW5jZSB0byBvZmZzZXQKCWIgKmVuZF9jYWxjX25ld19oZWFkCgoqc3VidHJhY3RfaGVhZF9kaWZmZXJlbmNlOgoJc3dhcAoJLSAvLyBzdWJ0cmFjdCBkaWZmZXJlbmNlIGZyb20gb2ZmZXQKCiplbmRfY2FsY19uZXdfaGVhZDoKCWl0b2IgLy8gY29udmVydCB0byBieXRlcwoJZXh0cmFjdCA2IDIgLy8gY29udmVydCB0byB1aW50MTYKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXN3YXAKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQKCXN3YXAKCXJlcGxhY2UzIC8vIHVwZGF0ZSBvZmZzZXQKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5CglyZXRzdWIKCipnZXRfbGVuZ3RoX2RpZmZlcmVuY2U6Cglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCTwKCWJueiAqc3dhcHBlZF9kaWZmZXJlbmNlCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJbG9hZCAyNTMgLy8gZWxlbWVudCBsZW5ndGgKCWludCAxCglzdG9yZSAyNDkgLy8gc3VidHJhY3QgaGVhZCBkaWZmZXJlbmNlCgliICpnZXRfZGlmZmVyZW5jZQoKKnN3YXBwZWRfZGlmZmVyZW5jZToKCWxvYWQgMjUzIC8vIGVsZW1lbnQgbGVuZ3RoCglsb2FkIDI1MiAvLyBuZXcgZWxlbWVudAoJbGVuIC8vIGxlbmd0aCBvZiBuZXcgZWxlbWVudAoJaW50IDAKCXN0b3JlIDI0OSAvLyBzdWJ0cmFjdCBoZWFkIGRpZmZlcmVuY2UKCipnZXRfZGlmZmVyZW5jZToKCS0gLy8gZ2V0IGxlbmd0aCBkaWZmZXJlbmNlCglzdG9yZSAyNTAgLy8gbGVuZ3RoIGRpZmZlcmVuY2UKCXJldHN1Yg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/AD.approval.teal b/tests/contracts/artifacts/AD.approval.teal index 958e67a5e..4a5b40b6c 100644 --- a/tests/contracts/artifacts/AD.approval.teal +++ b/tests/contracts/artifacts/AD.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/AD.arc32.json b/tests/contracts/artifacts/AD.arc32.json index 56953ea34..cb2f916b8 100644 --- a/tests/contracts/artifacts/AD.arc32.json +++ b/tests/contracts/artifacts/AD.arc32.json @@ -58,7 +58,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZCgpdm9pZAoqYWJpX3JvdXRlX2Q6CgkvLyBleGVjdXRlIGQoKXZvaWQKCWNhbGxzdWIgZAoJaW50IDEKCXJldHVybgoKLy8gZCgpOiB2b2lkCmQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0MAoJLy8gdGhpcy5kS2V5LnZhbHVlID0gNDIKCWJ5dGUgMHg2NCAvLyAiZCIKCWludCA0MgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYWQoKXZvaWQKKmFiaV9yb3V0ZV9hZDoKCS8vIGV4ZWN1dGUgYWQoKXZvaWQKCWNhbGxzdWIgYWQKCWludCAxCglyZXR1cm4KCi8vIGFkKCk6IHZvaWQKYWQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0NgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQ3CgkvLyBhc3NlcnQodGhpcy5kS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2NCAvLyAiZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImQoKXZvaWQiCgltZXRob2QgImFkKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfZCAqYWJpX3JvdXRlX2FkCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZCgpdm9pZAoqYWJpX3JvdXRlX2Q6CgkvLyBleGVjdXRlIGQoKXZvaWQKCWNhbGxzdWIgZAoJaW50IDEKCXJldHVybgoKLy8gZCgpOiB2b2lkCmQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0MAoJLy8gdGhpcy5kS2V5LnZhbHVlID0gNDIKCWJ5dGUgMHg2NCAvLyAiZCIKCWludCA0MgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYWQoKXZvaWQKKmFiaV9yb3V0ZV9hZDoKCS8vIGV4ZWN1dGUgYWQoKXZvaWQKCWNhbGxzdWIgYWQKCWludCAxCglyZXR1cm4KCi8vIGFkKCk6IHZvaWQKYWQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0NgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQ3CgkvLyBhc3NlcnQodGhpcy5kS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2NCAvLyAiZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImQoKXZvaWQiCgltZXRob2QgImFkKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfZCAqYWJpX3JvdXRlX2FkCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/AD.arc56_draft.json b/tests/contracts/artifacts/AD.arc56_draft.json index 45ad6dedc..7ec5d1368 100644 --- a/tests/contracts/artifacts/AD.arc56_draft.json +++ b/tests/contracts/artifacts/AD.arc56_draft.json @@ -97,463 +97,466 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 44, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ] - }, - { - "teal": 13, - "source": 44, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 14, - "source": 44, - "pc": [ - 15 - ] - }, - { - "teal": 15, - "source": 44, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 16, - "source": 44, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 44, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 44, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 44, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 44, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 28, - "source": 15, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 29, - "source": 15, - "pc": [ - 52 - ] - }, - { - "teal": 30, - "source": 15, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 15, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 38, - "source": 16, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 16, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 16, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 15, - "pc": [ - 60 - ] - }, - { - "teal": 46, - "source": 39, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 47, - "source": 39, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 39, - "pc": [ - 65 - ] - }, - { - "teal": 52, - "source": 39, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 56, - "source": 40, - "pc": [ - 69 - ] - }, - { - "teal": 57, - "source": 40, - "pc": [ - 70 - ] - }, - { - "teal": 58, - "source": 40, - "pc": [ - 71 - ] - }, - { - "teal": 59, - "source": 39, - "pc": [ - 72 - ] - }, - { - "teal": 64, - "source": 45, - "pc": [ - 73, - 74, - 75 - ] - }, - { - "teal": 65, - "source": 45, - "pc": [ - 76 - ] - }, - { - "teal": 66, - "source": 45, - "pc": [ - 77 - ] - }, - { - "teal": 70, - "source": 45, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 74, - "source": 46, - "pc": [ - 81 - ] - }, - { - "teal": 75, - "source": 46, - "pc": [ - 82 - ] - }, - { - "teal": 76, - "source": 46, - "pc": [ - 83 - ] - }, - { - "teal": 77, - "source": 46, - "pc": [ - 84 - ] - }, - { - "teal": 78, - "source": 46, - "pc": [ - 85 - ] - }, - { - "teal": 82, - "source": 47, - "pc": [ - 86 - ] - }, - { - "teal": 83, - "source": 47, - "pc": [ - 87 - ] - }, - { - "teal": 84, - "source": 47, - "pc": [ - 88 - ] - }, - { - "teal": 85, - "source": 47, - "pc": [ - 89 - ] - }, - { - "teal": 86, - "source": 47, - "pc": [ - 90 - ] - }, - { - "teal": 87, - "source": 45, - "pc": [ - 91 - ] - }, - { - "teal": 90, - "source": 44, - "pc": [ - 92 - ] - }, - { - "teal": 91, - "source": 44, - "pc": [ - 93 - ] - }, - { - "teal": 94, - "source": 44, - "pc": [ - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 95, - "source": 44, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 96, - "source": 44, - "pc": [ - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 99, - "source": 44, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 107 - ] - }, - { - "teal": 102, - "source": 44, - "pc": [ - 108, - 109, - 110, - 111, - 112, - 113 - ] - }, - { - "teal": 103, - "source": 44, - "pc": [ - 114, - 115, - 116, - 117, - 118, - 119 - ] - }, - { - "teal": 104, - "source": 44, - "pc": [ - 120, - 121, - 122, - 123, - 124, - 125 - ] - }, - { - "teal": 105, - "source": 44, - "pc": [ - 126, - 127, - 128 - ] - }, - { - "teal": 106, - "source": 44, - "pc": [ - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136 - ] - }, - { - "teal": 109, - "source": 44, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 137 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 44, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "teal": 13, + "source": 44, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 14, + "source": 44, + "pc": [ + 15 + ] + }, + { + "teal": 15, + "source": 44, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 16, + "source": 44, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 44, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 44, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 44, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 44, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 28, + "source": 15, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 29, + "source": 15, + "pc": [ + 52 + ] + }, + { + "teal": 30, + "source": 15, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 15, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 38, + "source": 16, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 16, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 16, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 15, + "pc": [ + 60 + ] + }, + { + "teal": 46, + "source": 39, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 47, + "source": 39, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 39, + "pc": [ + 65 + ] + }, + { + "teal": 52, + "source": 39, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 56, + "source": 40, + "pc": [ + 69 + ] + }, + { + "teal": 57, + "source": 40, + "pc": [ + 70 + ] + }, + { + "teal": 58, + "source": 40, + "pc": [ + 71 + ] + }, + { + "teal": 59, + "source": 39, + "pc": [ + 72 + ] + }, + { + "teal": 64, + "source": 45, + "pc": [ + 73, + 74, + 75 + ] + }, + { + "teal": 65, + "source": 45, + "pc": [ + 76 + ] + }, + { + "teal": 66, + "source": 45, + "pc": [ + 77 + ] + }, + { + "teal": 70, + "source": 45, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 74, + "source": 46, + "pc": [ + 81 + ] + }, + { + "teal": 75, + "source": 46, + "pc": [ + 82 + ] + }, + { + "teal": 76, + "source": 46, + "pc": [ + 83 + ] + }, + { + "teal": 77, + "source": 46, + "pc": [ + 84 + ] + }, + { + "teal": 78, + "source": 46, + "pc": [ + 85 + ] + }, + { + "teal": 82, + "source": 47, + "pc": [ + 86 + ] + }, + { + "teal": 83, + "source": 47, + "pc": [ + 87 + ] + }, + { + "teal": 84, + "source": 47, + "pc": [ + 88 + ] + }, + { + "teal": 85, + "source": 47, + "pc": [ + 89 + ] + }, + { + "teal": 86, + "source": 47, + "pc": [ + 90 + ] + }, + { + "teal": 87, + "source": 45, + "pc": [ + 91 + ] + }, + { + "teal": 90, + "source": 44, + "pc": [ + 92 + ] + }, + { + "teal": 91, + "source": 44, + "pc": [ + 93 + ] + }, + { + "teal": 94, + "source": 44, + "pc": [ + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 95, + "source": 44, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 96, + "source": 44, + "pc": [ + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 99, + "source": 44, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 107 + ] + }, + { + "teal": 102, + "source": 44, + "pc": [ + 108, + 109, + 110, + 111, + 112, + 113 + ] + }, + { + "teal": 103, + "source": 44, + "pc": [ + 114, + 115, + 116, + 117, + 118, + 119 + ] + }, + { + "teal": 104, + "source": 44, + "pc": [ + 120, + 121, + 122, + 123, + 124, + 125 + ] + }, + { + "teal": 105, + "source": 44, + "pc": [ + 126, + 127, + 128 + ] + }, + { + "teal": 106, + "source": 44, + "pc": [ + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + }, + { + "teal": 109, + "source": 44, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 137 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZCgpdm9pZAoqYWJpX3JvdXRlX2Q6CgkvLyBleGVjdXRlIGQoKXZvaWQKCWNhbGxzdWIgZAoJaW50IDEKCXJldHVybgoKLy8gZCgpOiB2b2lkCmQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0MAoJLy8gdGhpcy5kS2V5LnZhbHVlID0gNDIKCWJ5dGUgMHg2NCAvLyAiZCIKCWludCA0MgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYWQoKXZvaWQKKmFiaV9yb3V0ZV9hZDoKCS8vIGV4ZWN1dGUgYWQoKXZvaWQKCWNhbGxzdWIgYWQKCWludCAxCglyZXR1cm4KCi8vIGFkKCk6IHZvaWQKYWQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0NgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQ3CgkvLyBhc3NlcnQodGhpcy5kS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2NCAvLyAiZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImQoKXZvaWQiCgltZXRob2QgImFkKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfZCAqYWJpX3JvdXRlX2FkCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gZCgpdm9pZAoqYWJpX3JvdXRlX2Q6CgkvLyBleGVjdXRlIGQoKXZvaWQKCWNhbGxzdWIgZAoJaW50IDEKCXJldHVybgoKLy8gZCgpOiB2b2lkCmQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0MAoJLy8gdGhpcy5kS2V5LnZhbHVlID0gNDIKCWJ5dGUgMHg2NCAvLyAiZCIKCWludCA0MgoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYWQoKXZvaWQKKmFiaV9yb3V0ZV9hZDoKCS8vIGV4ZWN1dGUgYWQoKXZvaWQKCWNhbGxzdWIgYWQKCWludCAxCglyZXR1cm4KCi8vIGFkKCk6IHZvaWQKYWQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo0NgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQ3CgkvLyBhc3NlcnQodGhpcy5kS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2NCAvLyAiZCIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImQoKXZvaWQiCgltZXRob2QgImFkKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfZCAqYWJpX3JvdXRlX2FkCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ARC56Test.approval.teal b/tests/contracts/artifacts/ARC56Test.approval.teal index 4d49b29bb..d1d7d8883 100644 --- a/tests/contracts/artifacts/ARC56Test.approval.teal +++ b/tests/contracts/artifacts/ARC56Test.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ARC56Test.arc32.json b/tests/contracts/artifacts/ARC56Test.arc32.json index 246eff507..30d9c249a 100644 --- a/tests/contracts/artifacts/ARC56Test.arc32.json +++ b/tests/contracts/artifacts/ARC56Test.arc32.json @@ -54,7 +54,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9zb21lTnVtYmVyCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9mb286CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGlucHV0czogKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGlucHV0cykgZm9yIGZvbyBtdXN0IGJlIGEgKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCglhc3NlcnQKCgkvLyBleGVjdXRlIGZvbygoKHVpbnQ2NCx1aW50NjQpLCh1aW50NjQsdWludDY0KSkpKHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGZvbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZvbyhpbnB1dHM6IElucHV0cyk6IE91dHB1dHMKZm9vOgoJcHJvdG8gMSAxCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjI0CgkvLyBpbnB1dHMuc3VidHJhY3QuYSA8IGlucHV0cy5zdWJ0cmFjdC5iCglmcmFtZV9kaWcgLTEgLy8gaW5wdXRzOiBJbnB1dHMKCWV4dHJhY3QgMTYgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDI0IDgKCWJ0b2kKCTwKCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBzdWJ0cmFjdC5hIG11c3QgYmUgZ3JlYXRlciB0aGFuIHN1YnRyYWN0LmIKCWVycgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNgoJLy8gdGhpcy5nbG9iYWxLZXkudmFsdWUgPSB0aGlzLnNvbWVOdW1iZXIKCWJ5dGUgMHg2NzZjNmY2MjYxNmM0YjY1NzkgLy8gImdsb2JhbEtleSIKCWxvYWQgMjAwIC8vIFRNUExfc29tZU51bWJlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNwoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0geyBmb286IDEzLCBiYXI6IDM3IH0KCWJ5dGUgMHg3MDAwMDM2NjZmNmYKCWJ5dGUgMHgwMDBkMDAyNQoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyOQoJLy8gcmV0dXJuIHsKCS8vICAgICAgIHN1bTogaW5wdXRzLmFkZC5hICsgaW5wdXRzLmFkZC5iLAoJLy8gICAgICAgZGlmZmVyZW5jZTogaW5wdXRzLnN1YnRyYWN0LmEgLSBpbnB1dHMuc3VidHJhY3QuYiwKCS8vICAgICB9OwoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDggOAoJYnRvaQoJKwoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDE2IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBpbnB1dHM6IElucHV0cwoJZXh0cmFjdCAyNCA4CglidG9pCgktCglpdG9iCgljb25jYXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNgoJLy8gdGhpcy5sb2NhbEtleSh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlID0gdGhpcy5zb21lTnVtYmVyCgl0eG4gU2VuZGVyCglieXRlIDB4NmM2ZjYzNjE2YzRiNjU3OSAvLyAibG9jYWxLZXkiCglsb2FkIDIwMCAvLyBUTVBMX3NvbWVOdW1iZXIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNwoJLy8gdGhpcy5sb2NhbE1hcCh0aGlzLnR4bi5zZW5kZXIsICdmb28nKS52YWx1ZSA9ICdiYXInCgl0eG4gU2VuZGVyCglieXRlIDB4NzA2NjZmNmYKCWJ5dGUgMHgwMDAzNjI2MTcyCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FyYzU2LmFsZ28udHM6MzgKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JheicKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMzYyNjE3YQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjM5CgkvLyB0aGlzLmJveE1hcCh7IGFkZDogeyBhOiAxLCBiOiAyIH0sIHN1YnRyYWN0OiB7IGE6IDQsIGI6IDMgfSB9KS52YWx1ZSA9IHsgc3VtOiAzLCBkaWZmZXJlbmNlOiAxIH0KCWJ5dGUgMHg3MDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDAwMDMKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgIm9wdEluVG9BcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9zb21lTnVtYmVyCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9mb286CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGlucHV0czogKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGlucHV0cykgZm9yIGZvbyBtdXN0IGJlIGEgKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCglhc3NlcnQKCgkvLyBleGVjdXRlIGZvbygoKHVpbnQ2NCx1aW50NjQpLCh1aW50NjQsdWludDY0KSkpKHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGZvbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZvbyhpbnB1dHM6IElucHV0cyk6IE91dHB1dHMKZm9vOgoJcHJvdG8gMSAxCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjI0CgkvLyBpbnB1dHMuc3VidHJhY3QuYSA8IGlucHV0cy5zdWJ0cmFjdC5iCglmcmFtZV9kaWcgLTEgLy8gaW5wdXRzOiBJbnB1dHMKCWV4dHJhY3QgMTYgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDI0IDgKCWJ0b2kKCTwKCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBzdWJ0cmFjdC5hIG11c3QgYmUgZ3JlYXRlciB0aGFuIHN1YnRyYWN0LmIKCWVycgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNgoJLy8gdGhpcy5nbG9iYWxLZXkudmFsdWUgPSB0aGlzLnNvbWVOdW1iZXIKCWJ5dGUgMHg2NzZjNmY2MjYxNmM0YjY1NzkgLy8gImdsb2JhbEtleSIKCWxvYWQgMjAwIC8vIFRNUExfc29tZU51bWJlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNwoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0geyBmb286IDEzLCBiYXI6IDM3IH0KCWJ5dGUgMHg3MDAwMDM2NjZmNmYKCWJ5dGUgMHgwMDBkMDAyNQoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyOQoJLy8gcmV0dXJuIHsKCS8vICAgICAgIHN1bTogaW5wdXRzLmFkZC5hICsgaW5wdXRzLmFkZC5iLAoJLy8gICAgICAgZGlmZmVyZW5jZTogaW5wdXRzLnN1YnRyYWN0LmEgLSBpbnB1dHMuc3VidHJhY3QuYiwKCS8vICAgICB9OwoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDggOAoJYnRvaQoJKwoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDE2IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBpbnB1dHM6IElucHV0cwoJZXh0cmFjdCAyNCA4CglidG9pCgktCglpdG9iCgljb25jYXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNgoJLy8gdGhpcy5sb2NhbEtleSh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlID0gdGhpcy5zb21lTnVtYmVyCgl0eG4gU2VuZGVyCglieXRlIDB4NmM2ZjYzNjE2YzRiNjU3OSAvLyAibG9jYWxLZXkiCglsb2FkIDIwMCAvLyBUTVBMX3NvbWVOdW1iZXIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNwoJLy8gdGhpcy5sb2NhbE1hcCh0aGlzLnR4bi5zZW5kZXIsICdmb28nKS52YWx1ZSA9ICdiYXInCgl0eG4gU2VuZGVyCglieXRlIDB4NzA2NjZmNmYKCWJ5dGUgMHgwMDAzNjI2MTcyCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FyYzU2LmFsZ28udHM6MzgKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JheicKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMzYyNjE3YQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjM5CgkvLyB0aGlzLmJveE1hcCh7IGFkZDogeyBhOiAxLCBiOiAyIH0sIHN1YnRyYWN0OiB7IGE6IDQsIGI6IDMgfSB9KS52YWx1ZSA9IHsgc3VtOiAzLCBkaWZmZXJlbmNlOiAxIH0KCWJ5dGUgMHg3MDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDAwMDMKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgIm9wdEluVG9BcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ARC56Test.arc56_draft.json b/tests/contracts/artifacts/ARC56Test.arc56_draft.json index e59e1b6bd..0667ba267 100644 --- a/tests/contracts/artifacts/ARC56Test.arc56_draft.json +++ b/tests/contracts/artifacts/ARC56Test.arc56_draft.json @@ -54,24 +54,54 @@ 56 ], "structs": { - "{ foo: uint16; bar: uint16 }": { - "foo": "uint16", - "bar": "uint16" - }, - "Outputs": { - "sum": "uint64", - "difference": "uint64" - }, - "Inputs": { - "add": { - "a": "uint64", - "b": "uint64" - }, - "subtract": { - "a": "uint64", - "b": "uint64" + "{ foo: uint16; bar: uint16 }": [ + { + "name": "foo", + "type": "uint16" + }, + { + "name": "bar", + "type": "uint16" } - } + ], + "Outputs": [ + { + "name": "sum", + "type": "uint64" + }, + { + "name": "difference", + "type": "uint64" + } + ], + "Inputs": [ + { + "name": "add", + "type": [ + { + "name": "a", + "type": "uint64" + }, + { + "name": "b", + "type": "uint64" + } + ] + }, + { + "name": "subtract", + "type": [ + { + "name": "a", + "type": "uint64" + }, + { + "name": "b", + "type": "uint64" + } + ] + } + ] }, "state": { "schema": { @@ -135,891 +165,894 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 6, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 9, - "source": 6, - "pc": [ - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13 - ] - }, - { - "teal": 10, - "source": 6, - "pc": [ - 14 - ] - }, - { - "teal": 11, - "source": 6, - "pc": [ - 15, - 16 - ] - }, - { - "teal": 18, - "source": 6, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 19, - "source": 6, - "pc": [ - 19 - ] - }, - { - "teal": 20, - "source": 6, - "pc": [ - 20, - 21 - ] - }, - { - "teal": 21, - "source": 6, - "pc": [ - 22 - ] - }, - { - "teal": 22, - "source": 6, - "pc": [ - 23, - 24 - ] - }, - { - "teal": 23, - "source": 6, - "pc": [ - 25 - ] - }, - { - "teal": 24, - "source": 6, - "pc": [ - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 28, - "source": 6, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 52 - ] - }, - { - "teal": 33, - "source": 23, - "pc": [ - 53, - 54, - 55, - 56, - 57, - 58 - ] - }, - { - "teal": 36, - "source": 23, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 37, - "source": 23, - "pc": [ - 62 - ] - }, - { - "teal": 38, - "source": 23, - "pc": [ - 63 - ] - }, - { - "teal": 39, - "source": 23, - "pc": [ - 64, - 65 - ] - }, - { - "teal": 40, - "source": 23, - "pc": [ - 66 - ] - }, - { - "teal": 43, - "source": 23, - "errorMessage": "argument 0 (inputs) for foo must be a ((uint64,uint64),(uint64,uint64))", - "pc": [ - 67 - ] - }, - { - "teal": 46, - "source": 23, - "pc": [ - 68, - 69, - 70 - ] - }, - { - "teal": 47, - "source": 23, - "pc": [ - 71 - ] - }, - { - "teal": 48, - "source": 23, - "pc": [ - 72 - ] - }, - { - "teal": 49, - "source": 23, - "pc": [ - 73 - ] - }, - { - "teal": 50, - "source": 23, - "pc": [ - 74 - ] - }, - { - "teal": 54, - "source": 23, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 59, - "source": 24, - "pc": [ - 78, - 79 - ] - }, - { - "teal": 60, - "source": 24, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 61, - "source": 24, - "pc": [ - 83 - ] - }, - { - "teal": 62, - "source": 24, - "pc": [ - 84, - 85 - ] - }, - { - "teal": 63, - "source": 24, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 64, - "source": 24, - "pc": [ - 89 - ] - }, - { - "teal": 65, - "source": 24, - "pc": [ - 90 - ] - }, - { - "teal": 66, - "source": 24, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 70, - "source": 24, - "errorMessage": "subtract.a must be greater than subtract.b", - "pc": [ - 94 - ] - }, - { - "teal": 75, - "source": 26, - "pc": [ - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 76, - "source": 26, - "pc": [ - 106, - 107 - ] - }, - { - "teal": 77, - "source": 26, - "pc": [ - 108 - ] - }, - { - "teal": 81, - "source": 27, - "pc": [ - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116 - ] - }, - { - "teal": 82, - "source": 27, - "pc": [ - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 83, - "source": 27, - "pc": [ - 123 - ] - }, - { - "teal": 90, - "source": 30, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 91, - "source": 30, - "pc": [ - 126, - 127, - 128 - ] - }, - { - "teal": 92, - "source": 30, - "pc": [ - 129 - ] - }, - { - "teal": 93, - "source": 30, - "pc": [ - 130, - 131 - ] - }, - { - "teal": 94, - "source": 30, - "pc": [ - 132, - 133, - 134 - ] - }, - { - "teal": 95, - "source": 30, - "pc": [ - 135 - ] - }, - { - "teal": 96, - "source": 30, - "pc": [ - 136 - ] - }, - { - "teal": 97, - "source": 30, - "pc": [ - 137 - ] - }, - { - "teal": 98, - "source": 31, - "pc": [ - 138, - 139 - ] - }, - { - "teal": 99, - "source": 31, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 100, - "source": 31, - "pc": [ - 143 - ] - }, - { - "teal": 101, - "source": 31, - "pc": [ - 144, - 145 - ] - }, - { - "teal": 102, - "source": 31, - "pc": [ - 146, - 147, - 148 - ] - }, - { - "teal": 103, - "source": 31, - "pc": [ - 149 - ] - }, - { - "teal": 104, - "source": 31, - "pc": [ - 150 - ] - }, - { - "teal": 105, - "source": 31, - "pc": [ - 151 - ] - }, - { - "teal": 106, - "source": 31, - "pc": [ - 152 - ] - }, - { - "teal": 107, - "source": 23, - "pc": [ - 153 - ] - }, - { - "teal": 112, - "source": 35, - "pc": [ - 154, - 155, - 156 - ] - }, - { - "teal": 113, - "source": 35, - "pc": [ - 157 - ] - }, - { - "teal": 114, - "source": 35, - "pc": [ - 158 - ] - }, - { - "teal": 118, - "source": 35, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 122, - "source": 36, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 123, - "source": 36, - "pc": [ - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173 - ] - }, - { - "teal": 124, - "source": 36, - "pc": [ - 174, - 175 - ] - }, - { - "teal": 125, - "source": 36, - "pc": [ - 176 - ] - }, - { - "teal": 129, - "source": 37, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 130, - "source": 37, - "pc": [ - 179, - 180, - 181, - 182, - 183, - 184 - ] - }, - { - "teal": 131, - "source": 37, - "pc": [ - 185, - 186, - 187, - 188, - 189, - 190, - 191 - ] - }, - { - "teal": 132, - "source": 37, - "pc": [ - 192 - ] - }, - { - "teal": 136, - "source": 38, - "pc": [ - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200 - ] - }, - { - "teal": 137, - "source": 38, - "pc": [ - 201 - ] - }, - { - "teal": 138, - "source": 38, - "pc": [ - 202 - ] - }, - { - "teal": 139, - "source": 38, - "pc": [ - 203 - ] - }, - { - "teal": 140, - "source": 38, - "pc": [ - 204, - 205, - 206, - 207, - 208, - 209, - 210 - ] - }, - { - "teal": 141, - "source": 38, - "pc": [ - 211 - ] - }, - { - "teal": 145, - "source": 39, - "pc": [ - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223, - 224, - 225, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246 - ] - }, - { - "teal": 146, - "source": 39, - "pc": [ - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258, - 259, - 260, - 261, - 262, - 263, - 264 - ] - }, - { - "teal": 147, - "source": 39, - "pc": [ - 265 - ] - }, - { - "teal": 148, - "source": 35, - "pc": [ - 266 - ] - }, - { - "teal": 151, - "source": 6, - "pc": [ - 267 - ] - }, - { - "teal": 152, - "source": 6, - "pc": [ - 268 - ] - }, - { - "teal": 155, - "source": 6, - "pc": [ - 269, - 270, - 271, - 272, - 273, - 274 - ] - }, - { - "teal": 156, - "source": 6, - "pc": [ - 275, - 276, - 277 - ] - }, - { - "teal": 157, - "source": 6, - "pc": [ - 278, - 279, - 280, - 281 - ] - }, - { - "teal": 160, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 282 - ] - }, - { - "teal": 163, - "source": 6, - "pc": [ - 283, - 284, - 285, - 286, - 287, - 288 - ] - }, - { - "teal": 164, - "source": 6, - "pc": [ - 289, - 290, - 291 - ] - }, - { - "teal": 165, - "source": 6, - "pc": [ - 292, - 293, - 294, - 295 - ] - }, - { - "teal": 168, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 296 - ] - }, - { - "teal": 171, - "source": 6, - "pc": [ - 297, - 298, - 299, - 300, - 301, - 302 - ] - }, - { - "teal": 172, - "source": 6, - "pc": [ - 303, - 304, - 305 - ] - }, - { - "teal": 173, - "source": 6, - "pc": [ - 306, - 307, - 308, - 309 - ] - }, - { - "teal": 176, - "source": 6, - "errorMessage": "this contract does not implement the given ABI method for call OptIn", - "pc": [ - 310 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 6, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 9, + "source": 6, + "pc": [ + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + }, + { + "teal": 10, + "source": 6, + "pc": [ + 14 + ] + }, + { + "teal": 11, + "source": 6, + "pc": [ + 15, + 16 + ] + }, + { + "teal": 18, + "source": 6, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 19, + "source": 6, + "pc": [ + 19 + ] + }, + { + "teal": 20, + "source": 6, + "pc": [ + 20, + 21 + ] + }, + { + "teal": 21, + "source": 6, + "pc": [ + 22 + ] + }, + { + "teal": 22, + "source": 6, + "pc": [ + 23, + 24 + ] + }, + { + "teal": 23, + "source": 6, + "pc": [ + 25 + ] + }, + { + "teal": 24, + "source": 6, + "pc": [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 28, + "source": 6, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 52 + ] + }, + { + "teal": 33, + "source": 23, + "pc": [ + 53, + 54, + 55, + 56, + 57, + 58 + ] + }, + { + "teal": 36, + "source": 23, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 37, + "source": 23, + "pc": [ + 62 + ] + }, + { + "teal": 38, + "source": 23, + "pc": [ + 63 + ] + }, + { + "teal": 39, + "source": 23, + "pc": [ + 64, + 65 + ] + }, + { + "teal": 40, + "source": 23, + "pc": [ + 66 + ] + }, + { + "teal": 43, + "source": 23, + "errorMessage": "argument 0 (inputs) for foo must be a ((uint64,uint64),(uint64,uint64))", + "pc": [ + 67 + ] + }, + { + "teal": 46, + "source": 23, + "pc": [ + 68, + 69, + 70 + ] + }, + { + "teal": 47, + "source": 23, + "pc": [ + 71 + ] + }, + { + "teal": 48, + "source": 23, + "pc": [ + 72 + ] + }, + { + "teal": 49, + "source": 23, + "pc": [ + 73 + ] + }, + { + "teal": 50, + "source": 23, + "pc": [ + 74 + ] + }, + { + "teal": 54, + "source": 23, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 59, + "source": 24, + "pc": [ + 78, + 79 + ] + }, + { + "teal": 60, + "source": 24, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 61, + "source": 24, + "pc": [ + 83 + ] + }, + { + "teal": 62, + "source": 24, + "pc": [ + 84, + 85 + ] + }, + { + "teal": 63, + "source": 24, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 64, + "source": 24, + "pc": [ + 89 + ] + }, + { + "teal": 65, + "source": 24, + "pc": [ + 90 + ] + }, + { + "teal": 66, + "source": 24, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 70, + "source": 24, + "errorMessage": "subtract.a must be greater than subtract.b", + "pc": [ + 94 + ] + }, + { + "teal": 75, + "source": 26, + "pc": [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 76, + "source": 26, + "pc": [ + 106, + 107 + ] + }, + { + "teal": 77, + "source": 26, + "pc": [ + 108 + ] + }, + { + "teal": 81, + "source": 27, + "pc": [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116 + ] + }, + { + "teal": 82, + "source": 27, + "pc": [ + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 83, + "source": 27, + "pc": [ + 123 + ] + }, + { + "teal": 90, + "source": 30, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 91, + "source": 30, + "pc": [ + 126, + 127, + 128 + ] + }, + { + "teal": 92, + "source": 30, + "pc": [ + 129 + ] + }, + { + "teal": 93, + "source": 30, + "pc": [ + 130, + 131 + ] + }, + { + "teal": 94, + "source": 30, + "pc": [ + 132, + 133, + 134 + ] + }, + { + "teal": 95, + "source": 30, + "pc": [ + 135 + ] + }, + { + "teal": 96, + "source": 30, + "pc": [ + 136 + ] + }, + { + "teal": 97, + "source": 30, + "pc": [ + 137 + ] + }, + { + "teal": 98, + "source": 31, + "pc": [ + 138, + 139 + ] + }, + { + "teal": 99, + "source": 31, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 100, + "source": 31, + "pc": [ + 143 + ] + }, + { + "teal": 101, + "source": 31, + "pc": [ + 144, + 145 + ] + }, + { + "teal": 102, + "source": 31, + "pc": [ + 146, + 147, + 148 + ] + }, + { + "teal": 103, + "source": 31, + "pc": [ + 149 + ] + }, + { + "teal": 104, + "source": 31, + "pc": [ + 150 + ] + }, + { + "teal": 105, + "source": 31, + "pc": [ + 151 + ] + }, + { + "teal": 106, + "source": 31, + "pc": [ + 152 + ] + }, + { + "teal": 107, + "source": 23, + "pc": [ + 153 + ] + }, + { + "teal": 112, + "source": 35, + "pc": [ + 154, + 155, + 156 + ] + }, + { + "teal": 113, + "source": 35, + "pc": [ + 157 + ] + }, + { + "teal": 114, + "source": 35, + "pc": [ + 158 + ] + }, + { + "teal": 118, + "source": 35, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 122, + "source": 36, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 123, + "source": 36, + "pc": [ + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173 + ] + }, + { + "teal": 124, + "source": 36, + "pc": [ + 174, + 175 + ] + }, + { + "teal": 125, + "source": 36, + "pc": [ + 176 + ] + }, + { + "teal": 129, + "source": 37, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 130, + "source": 37, + "pc": [ + 179, + 180, + 181, + 182, + 183, + 184 + ] + }, + { + "teal": 131, + "source": 37, + "pc": [ + 185, + 186, + 187, + 188, + 189, + 190, + 191 + ] + }, + { + "teal": 132, + "source": 37, + "pc": [ + 192 + ] + }, + { + "teal": 136, + "source": 38, + "pc": [ + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200 + ] + }, + { + "teal": 137, + "source": 38, + "pc": [ + 201 + ] + }, + { + "teal": 138, + "source": 38, + "pc": [ + 202 + ] + }, + { + "teal": 139, + "source": 38, + "pc": [ + 203 + ] + }, + { + "teal": 140, + "source": 38, + "pc": [ + 204, + 205, + 206, + 207, + 208, + 209, + 210 + ] + }, + { + "teal": 141, + "source": 38, + "pc": [ + 211 + ] + }, + { + "teal": 145, + "source": 39, + "pc": [ + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246 + ] + }, + { + "teal": 146, + "source": 39, + "pc": [ + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264 + ] + }, + { + "teal": 147, + "source": 39, + "pc": [ + 265 + ] + }, + { + "teal": 148, + "source": 35, + "pc": [ + 266 + ] + }, + { + "teal": 151, + "source": 6, + "pc": [ + 267 + ] + }, + { + "teal": 152, + "source": 6, + "pc": [ + 268 + ] + }, + { + "teal": 155, + "source": 6, + "pc": [ + 269, + 270, + 271, + 272, + 273, + 274 + ] + }, + { + "teal": 156, + "source": 6, + "pc": [ + 275, + 276, + 277 + ] + }, + { + "teal": 157, + "source": 6, + "pc": [ + 278, + 279, + 280, + 281 + ] + }, + { + "teal": 160, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 282 + ] + }, + { + "teal": 163, + "source": 6, + "pc": [ + 283, + 284, + 285, + 286, + 287, + 288 + ] + }, + { + "teal": 164, + "source": 6, + "pc": [ + 289, + 290, + 291 + ] + }, + { + "teal": 165, + "source": 6, + "pc": [ + 292, + 293, + 294, + 295 + ] + }, + { + "teal": 168, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 296 + ] + }, + { + "teal": 171, + "source": 6, + "pc": [ + 297, + 298, + 299, + 300, + 301, + 302 + ] + }, + { + "teal": 172, + "source": 6, + "pc": [ + 303, + 304, + 305 + ] + }, + { + "teal": 173, + "source": 6, + "pc": [ + 306, + 307, + 308, + 309 + ] + }, + { + "teal": 176, + "source": 6, + "errorMessage": "this contract does not implement the given ABI method for call OptIn", + "pc": [ + 310 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9zb21lTnVtYmVyCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9mb286CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGlucHV0czogKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGlucHV0cykgZm9yIGZvbyBtdXN0IGJlIGEgKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCglhc3NlcnQKCgkvLyBleGVjdXRlIGZvbygoKHVpbnQ2NCx1aW50NjQpLCh1aW50NjQsdWludDY0KSkpKHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGZvbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZvbyhpbnB1dHM6IElucHV0cyk6IE91dHB1dHMKZm9vOgoJcHJvdG8gMSAxCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjI0CgkvLyBpbnB1dHMuc3VidHJhY3QuYSA8IGlucHV0cy5zdWJ0cmFjdC5iCglmcmFtZV9kaWcgLTEgLy8gaW5wdXRzOiBJbnB1dHMKCWV4dHJhY3QgMTYgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDI0IDgKCWJ0b2kKCTwKCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBzdWJ0cmFjdC5hIG11c3QgYmUgZ3JlYXRlciB0aGFuIHN1YnRyYWN0LmIKCWVycgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNgoJLy8gdGhpcy5nbG9iYWxLZXkudmFsdWUgPSB0aGlzLnNvbWVOdW1iZXIKCWJ5dGUgMHg2NzZjNmY2MjYxNmM0YjY1NzkgLy8gImdsb2JhbEtleSIKCWxvYWQgMjAwIC8vIFRNUExfc29tZU51bWJlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNwoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0geyBmb286IDEzLCBiYXI6IDM3IH0KCWJ5dGUgMHg3MDAwMDM2NjZmNmYKCWJ5dGUgMHgwMDBkMDAyNQoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyOQoJLy8gcmV0dXJuIHsKCS8vICAgICAgIHN1bTogaW5wdXRzLmFkZC5hICsgaW5wdXRzLmFkZC5iLAoJLy8gICAgICAgZGlmZmVyZW5jZTogaW5wdXRzLnN1YnRyYWN0LmEgLSBpbnB1dHMuc3VidHJhY3QuYiwKCS8vICAgICB9OwoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDggOAoJYnRvaQoJKwoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDE2IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBpbnB1dHM6IElucHV0cwoJZXh0cmFjdCAyNCA4CglidG9pCgktCglpdG9iCgljb25jYXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNgoJLy8gdGhpcy5sb2NhbEtleSh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlID0gdGhpcy5zb21lTnVtYmVyCgl0eG4gU2VuZGVyCglieXRlIDB4NmM2ZjYzNjE2YzRiNjU3OSAvLyAibG9jYWxLZXkiCglsb2FkIDIwMCAvLyBUTVBMX3NvbWVOdW1iZXIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNwoJLy8gdGhpcy5sb2NhbE1hcCh0aGlzLnR4bi5zZW5kZXIsICdmb28nKS52YWx1ZSA9ICdiYXInCgl0eG4gU2VuZGVyCglieXRlIDB4NzA2NjZmNmYKCWJ5dGUgMHgwMDAzNjI2MTcyCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FyYzU2LmFsZ28udHM6MzgKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JheicKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMzYyNjE3YQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjM5CgkvLyB0aGlzLmJveE1hcCh7IGFkZDogeyBhOiAxLCBiOiAyIH0sIHN1YnRyYWN0OiB7IGE6IDQsIGI6IDMgfSB9KS52YWx1ZSA9IHsgc3VtOiAzLCBkaWZmZXJlbmNlOiAxIH0KCWJ5dGUgMHg3MDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDAwMDMKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgIm9wdEluVG9BcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9zb21lTnVtYmVyCmJ0b2kKc3RvcmUgMjAwCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqY2FsbF9PcHRJbiAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9mb286CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGlucHV0czogKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGlucHV0cykgZm9yIGZvbyBtdXN0IGJlIGEgKCh1aW50NjQsdWludDY0KSwodWludDY0LHVpbnQ2NCkpCglhc3NlcnQKCgkvLyBleGVjdXRlIGZvbygoKHVpbnQ2NCx1aW50NjQpLCh1aW50NjQsdWludDY0KSkpKHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGZvbwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGZvbyhpbnB1dHM6IElucHV0cyk6IE91dHB1dHMKZm9vOgoJcHJvdG8gMSAxCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjI0CgkvLyBpbnB1dHMuc3VidHJhY3QuYSA8IGlucHV0cy5zdWJ0cmFjdC5iCglmcmFtZV9kaWcgLTEgLy8gaW5wdXRzOiBJbnB1dHMKCWV4dHJhY3QgMTYgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDI0IDgKCWJ0b2kKCTwKCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyBzdWJ0cmFjdC5hIG11c3QgYmUgZ3JlYXRlciB0aGFuIHN1YnRyYWN0LmIKCWVycgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNgoJLy8gdGhpcy5nbG9iYWxLZXkudmFsdWUgPSB0aGlzLnNvbWVOdW1iZXIKCWJ5dGUgMHg2NzZjNmY2MjYxNmM0YjY1NzkgLy8gImdsb2JhbEtleSIKCWxvYWQgMjAwIC8vIFRNUExfc29tZU51bWJlcgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyNwoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0geyBmb286IDEzLCBiYXI6IDM3IH0KCWJ5dGUgMHg3MDAwMDM2NjZmNmYKCWJ5dGUgMHgwMDBkMDAyNQoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czoyOQoJLy8gcmV0dXJuIHsKCS8vICAgICAgIHN1bTogaW5wdXRzLmFkZC5hICsgaW5wdXRzLmFkZC5iLAoJLy8gICAgICAgZGlmZmVyZW5jZTogaW5wdXRzLnN1YnRyYWN0LmEgLSBpbnB1dHMuc3VidHJhY3QuYiwKCS8vICAgICB9OwoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDggOAoJYnRvaQoJKwoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIGlucHV0czogSW5wdXRzCglleHRyYWN0IDE2IDgKCWJ0b2kKCWZyYW1lX2RpZyAtMSAvLyBpbnB1dHM6IElucHV0cwoJZXh0cmFjdCAyNCA4CglidG9pCgktCglpdG9iCgljb25jYXQKCXJldHN1YgoKLy8gb3B0SW5Ub0FwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBvcHRJblRvQXBwbGljYXRpb24oKXZvaWQKCWNhbGxzdWIgb3B0SW5Ub0FwcGxpY2F0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBvcHRJblRvQXBwbGljYXRpb24oKTogdm9pZApvcHRJblRvQXBwbGljYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNgoJLy8gdGhpcy5sb2NhbEtleSh0aGlzLnR4bi5zZW5kZXIpLnZhbHVlID0gdGhpcy5zb21lTnVtYmVyCgl0eG4gU2VuZGVyCglieXRlIDB4NmM2ZjYzNjE2YzRiNjU3OSAvLyAibG9jYWxLZXkiCglsb2FkIDIwMCAvLyBUTVBMX3NvbWVOdW1iZXIKCWFwcF9sb2NhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXJjNTYuYWxnby50czozNwoJLy8gdGhpcy5sb2NhbE1hcCh0aGlzLnR4bi5zZW5kZXIsICdmb28nKS52YWx1ZSA9ICdiYXInCgl0eG4gU2VuZGVyCglieXRlIDB4NzA2NjZmNmYKCWJ5dGUgMHgwMDAzNjI2MTcyCglhcHBfbG9jYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2FyYzU2LmFsZ28udHM6MzgKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JheicKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWR1cAoJYm94X2RlbAoJcG9wCglieXRlIDB4MDAwMzYyNjE3YQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hcmM1Ni5hbGdvLnRzOjM5CgkvLyB0aGlzLmJveE1hcCh7IGFkZDogeyBhOiAxLCBiOiAyIH0sIHN1YnRyYWN0OiB7IGE6IDQsIGI6IDMgfSB9KS52YWx1ZSA9IHsgc3VtOiAzLCBkaWZmZXJlbmNlOiAxIH0KCWJ5dGUgMHg3MDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwNDAwMDAwMDAwMDAwMDAwMDMKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAzMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZm9vKCgodWludDY0LHVpbnQ2NCksKHVpbnQ2NCx1aW50NjQpKSkodWludDY0LHVpbnQ2NCkiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycgoKKmNhbGxfT3B0SW46CgltZXRob2QgIm9wdEluVG9BcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfb3B0SW5Ub0FwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgT3B0SW4KCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "templateVariables": { diff --git a/tests/contracts/artifacts/ARC56TestNoTemplateVars.approval.teal b/tests/contracts/artifacts/ARC56TestNoTemplateVars.approval.teal index 5ee5208dc..68cd51086 100644 --- a/tests/contracts/artifacts/ARC56TestNoTemplateVars.approval.teal +++ b/tests/contracts/artifacts/ARC56TestNoTemplateVars.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc32.json b/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc32.json index 6a5dd2219..b55b8d694 100644 --- a/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc32.json +++ b/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc32.json @@ -34,7 +34,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc56_draft.json b/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc56_draft.json index d89fc4ef2..a51a845ce 100644 --- a/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc56_draft.json +++ b/tests/contracts/artifacts/ARC56TestNoTemplateVars.arc56_draft.json @@ -47,156 +47,159 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 43, - "pc": [ - 0 - ] - }, - { - "teal": 13, - "source": 43, - "pc": [ - 1, - 2 - ] - }, - { - "teal": 14, - "source": 43, - "pc": [ - 3 - ] - }, - { - "teal": 15, - "source": 43, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 16, - "source": 43, - "pc": [ - 6 - ] - }, - { - "teal": 17, - "source": 43, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 18, - "source": 43, - "pc": [ - 9 - ] - }, - { - "teal": 19, - "source": 43, - "pc": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ] - }, - { - "teal": 23, - "source": 43, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 36 - ] - }, - { - "teal": 26, - "source": 43, - "pc": [ - 37, - 38 - ] - }, - { - "teal": 27, - "source": 43, - "pc": [ - 39 - ] - }, - { - "teal": 30, - "source": 43, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 43, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 43, - "pc": [ - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 43, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 53 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 43, + "pc": [ + 0 + ] + }, + { + "teal": 13, + "source": 43, + "pc": [ + 1, + 2 + ] + }, + { + "teal": 14, + "source": 43, + "pc": [ + 3 + ] + }, + { + "teal": 15, + "source": 43, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 16, + "source": 43, + "pc": [ + 6 + ] + }, + { + "teal": 17, + "source": 43, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 18, + "source": 43, + "pc": [ + 9 + ] + }, + { + "teal": 19, + "source": 43, + "pc": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "teal": 23, + "source": 43, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 36 + ] + }, + { + "teal": 26, + "source": 43, + "pc": [ + 37, + 38 + ] + }, + { + "teal": 27, + "source": 43, + "pc": [ + 39 + ] + }, + { + "teal": 30, + "source": 43, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 43, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 43, + "pc": [ + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 43, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 53 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/AVM11.approval.teal b/tests/contracts/artifacts/AVM11.approval.teal index 2d8be9edf..60c41120e 100644 --- a/tests/contracts/artifacts/AVM11.approval.teal +++ b/tests/contracts/artifacts/AVM11.approval.teal @@ -1,6 +1,6 @@ #pragma version 11 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/AVM11.arc32.json b/tests/contracts/artifacts/AVM11.arc32.json index 198700c68..f12ba79cc 100644 --- a/tests/contracts/artifacts/AVM11.arc32.json +++ b/tests/contracts/artifacts/AVM11.arc32.json @@ -59,7 +59,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2b3Rlck9wY29kZXMoKXZvaWQKKmFiaV9yb3V0ZV92b3Rlck9wY29kZXM6CgkvLyBleGVjdXRlIHZvdGVyT3Bjb2Rlcygpdm9pZAoJY2FsbHN1YiB2b3Rlck9wY29kZXMKCWludCAxCglyZXR1cm4KCi8vIHZvdGVyT3Bjb2RlcygpOiB2b2lkCnZvdGVyT3Bjb2RlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjcKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIudm90ZXJCYWxhbmNlKQoJdHhuIFNlbmRlcgoJdm90ZXJfcGFyYW1zX2dldCBWb3RlckJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBpbmNlbnRpdmVHbG9iYWxzKCl2b2lkCiphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFsczoKCS8vIGV4ZWN1dGUgaW5jZW50aXZlR2xvYmFscygpdm9pZAoJY2FsbHN1YiBpbmNlbnRpdmVHbG9iYWxzCglpbnQgMQoJcmV0dXJuCgovLyBpbmNlbnRpdmVHbG9iYWxzKCk6IHZvaWQKaW5jZW50aXZlR2xvYmFsczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjEyCgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzRW5hYmxlZCkKCWdsb2JhbCBQYXlvdXRzRW5hYmxlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTMKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNHb09ubGluZUZlZSkKCWdsb2JhbCBQYXlvdXRzR29PbmxpbmVGZWUKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzUGVyY2VudCkKCWdsb2JhbCBQYXlvdXRzUGVyY2VudAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTUKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNNaW5CYWxhbmNlKQoJZ2xvYmFsIFBheW91dHNNaW5CYWxhbmNlCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXZtMTEuYWxnby50czoxNgoJLy8gYXNzZXJ0KGdsb2JhbHMucGF5b3V0c01heEJhbGFuY2UpCglnbG9iYWwgUGF5b3V0c01heEJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBvbmxpbmVTdGFrZU9wKCl2b2lkCiphYmlfcm91dGVfb25saW5lU3Rha2VPcDoKCS8vIGV4ZWN1dGUgb25saW5lU3Rha2VPcCgpdm9pZAoJY2FsbHN1YiBvbmxpbmVTdGFrZU9wCglpbnQgMQoJcmV0dXJuCgovLyBvbmxpbmVTdGFrZU9wKCk6IHZvaWQKb25saW5lU3Rha2VPcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjIwCgkvLyBhc3NlcnQob25saW5lU3Rha2UoKSkKCW9ubGluZV9zdGFrZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFjY291bnRQYXJhbXMoKXZvaWQKKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zOgoJLy8gZXhlY3V0ZSBhY2NvdW50UGFyYW1zKCl2b2lkCgljYWxsc3ViIGFjY291bnRQYXJhbXMKCWludCAxCglyZXR1cm4KCi8vIGFjY291bnRQYXJhbXMoKTogdm9pZAphY2NvdW50UGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjQKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIuaW5jZW50aXZlRWxpZ2libGUpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdEluY2VudGl2ZUVsaWdpYmxlCglwb3AKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjI1CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyLmxhc3RIZWFydGJlYXQpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdExhc3RIZWFydGJlYXQKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjYKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIubGFzdFByb3Bvc2VkKQoJdHhuIFNlbmRlcgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RMYXN0UHJvcG9zZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJsb2NrUGFyYW1zKCl2b2lkCiphYmlfcm91dGVfYmxvY2tQYXJhbXM6CgkvLyBleGVjdXRlIGJsb2NrUGFyYW1zKCl2b2lkCgljYWxsc3ViIGJsb2NrUGFyYW1zCglpbnQgMQoJcmV0dXJuCgovLyBibG9ja1BhcmFtcygpOiB2b2lkCmJsb2NrUGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzAKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVzQ29sbGVjdGVkKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlc0NvbGxlY3RlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzIKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLmJvbnVzKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrQm9udXMKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMzCgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5icmFuY2gpCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtCcmFuY2gKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM0CgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVTaW5rKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlU2luawoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzUKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3RvY29sKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvdG9jb2wKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM2CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50eG5Db3VudGVyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrVHhuQ291bnRlcgoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzcKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyUGF5b3V0KQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXJQYXlvdXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidm90ZXJPcGNvZGVzKCl2b2lkIgoJbWV0aG9kICJpbmNlbnRpdmVHbG9iYWxzKCl2b2lkIgoJbWV0aG9kICJvbmxpbmVTdGFrZU9wKCl2b2lkIgoJbWV0aG9kICJhY2NvdW50UGFyYW1zKCl2b2lkIgoJbWV0aG9kICJibG9ja1BhcmFtcygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdm90ZXJPcGNvZGVzICphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFscyAqYWJpX3JvdXRlX29ubGluZVN0YWtlT3AgKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zICphYmlfcm91dGVfYmxvY2tQYXJhbXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2b3Rlck9wY29kZXMoKXZvaWQKKmFiaV9yb3V0ZV92b3Rlck9wY29kZXM6CgkvLyBleGVjdXRlIHZvdGVyT3Bjb2Rlcygpdm9pZAoJY2FsbHN1YiB2b3Rlck9wY29kZXMKCWludCAxCglyZXR1cm4KCi8vIHZvdGVyT3Bjb2RlcygpOiB2b2lkCnZvdGVyT3Bjb2RlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjcKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIudm90ZXJCYWxhbmNlKQoJdHhuIFNlbmRlcgoJdm90ZXJfcGFyYW1zX2dldCBWb3RlckJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBpbmNlbnRpdmVHbG9iYWxzKCl2b2lkCiphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFsczoKCS8vIGV4ZWN1dGUgaW5jZW50aXZlR2xvYmFscygpdm9pZAoJY2FsbHN1YiBpbmNlbnRpdmVHbG9iYWxzCglpbnQgMQoJcmV0dXJuCgovLyBpbmNlbnRpdmVHbG9iYWxzKCk6IHZvaWQKaW5jZW50aXZlR2xvYmFsczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjEyCgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzRW5hYmxlZCkKCWdsb2JhbCBQYXlvdXRzRW5hYmxlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTMKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNHb09ubGluZUZlZSkKCWdsb2JhbCBQYXlvdXRzR29PbmxpbmVGZWUKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzUGVyY2VudCkKCWdsb2JhbCBQYXlvdXRzUGVyY2VudAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTUKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNNaW5CYWxhbmNlKQoJZ2xvYmFsIFBheW91dHNNaW5CYWxhbmNlCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXZtMTEuYWxnby50czoxNgoJLy8gYXNzZXJ0KGdsb2JhbHMucGF5b3V0c01heEJhbGFuY2UpCglnbG9iYWwgUGF5b3V0c01heEJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBvbmxpbmVTdGFrZU9wKCl2b2lkCiphYmlfcm91dGVfb25saW5lU3Rha2VPcDoKCS8vIGV4ZWN1dGUgb25saW5lU3Rha2VPcCgpdm9pZAoJY2FsbHN1YiBvbmxpbmVTdGFrZU9wCglpbnQgMQoJcmV0dXJuCgovLyBvbmxpbmVTdGFrZU9wKCk6IHZvaWQKb25saW5lU3Rha2VPcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjIwCgkvLyBhc3NlcnQob25saW5lU3Rha2UoKSkKCW9ubGluZV9zdGFrZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFjY291bnRQYXJhbXMoKXZvaWQKKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zOgoJLy8gZXhlY3V0ZSBhY2NvdW50UGFyYW1zKCl2b2lkCgljYWxsc3ViIGFjY291bnRQYXJhbXMKCWludCAxCglyZXR1cm4KCi8vIGFjY291bnRQYXJhbXMoKTogdm9pZAphY2NvdW50UGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjQKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIuaW5jZW50aXZlRWxpZ2libGUpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdEluY2VudGl2ZUVsaWdpYmxlCglwb3AKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjI1CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyLmxhc3RIZWFydGJlYXQpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdExhc3RIZWFydGJlYXQKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjYKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIubGFzdFByb3Bvc2VkKQoJdHhuIFNlbmRlcgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RMYXN0UHJvcG9zZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJsb2NrUGFyYW1zKCl2b2lkCiphYmlfcm91dGVfYmxvY2tQYXJhbXM6CgkvLyBleGVjdXRlIGJsb2NrUGFyYW1zKCl2b2lkCgljYWxsc3ViIGJsb2NrUGFyYW1zCglpbnQgMQoJcmV0dXJuCgovLyBibG9ja1BhcmFtcygpOiB2b2lkCmJsb2NrUGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzAKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVzQ29sbGVjdGVkKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlc0NvbGxlY3RlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzIKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLmJvbnVzKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrQm9udXMKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMzCgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5icmFuY2gpCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtCcmFuY2gKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM0CgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVTaW5rKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlU2luawoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzUKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3RvY29sKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvdG9jb2wKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM2CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50eG5Db3VudGVyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrVHhuQ291bnRlcgoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzcKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyUGF5b3V0KQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXJQYXlvdXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidm90ZXJPcGNvZGVzKCl2b2lkIgoJbWV0aG9kICJpbmNlbnRpdmVHbG9iYWxzKCl2b2lkIgoJbWV0aG9kICJvbmxpbmVTdGFrZU9wKCl2b2lkIgoJbWV0aG9kICJhY2NvdW50UGFyYW1zKCl2b2lkIgoJbWV0aG9kICJibG9ja1BhcmFtcygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdm90ZXJPcGNvZGVzICphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFscyAqYWJpX3JvdXRlX29ubGluZVN0YWtlT3AgKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zICphYmlfcm91dGVfYmxvY2tQYXJhbXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEx" }, "contract": { diff --git a/tests/contracts/artifacts/AVM11.arc56_draft.json b/tests/contracts/artifacts/AVM11.arc56_draft.json index 19d82b767..ba70e94d0 100644 --- a/tests/contracts/artifacts/AVM11.arc56_draft.json +++ b/tests/contracts/artifacts/AVM11.arc56_draft.json @@ -112,473 +112,476 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 3 - }, - { - "teal": 13, - "source": 3 - }, - { - "teal": 14, - "source": 3 - }, - { - "teal": 15, - "source": 3 - }, - { - "teal": 16, - "source": 3 - }, - { - "teal": 17, - "source": 3 - }, - { - "teal": 18, - "source": 3 - }, - { - "teal": 19, - "source": 3 - }, - { - "teal": 23, - "source": 3, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?" - }, - { - "teal": 28, - "source": 6 - }, - { - "teal": 29, - "source": 6 - }, - { - "teal": 30, - "source": 6 - }, - { - "teal": 34, - "source": 6 - }, - { - "teal": 38, - "source": 7 - }, - { - "teal": 39, - "source": 7 - }, - { - "teal": 40, - "source": 7 - }, - { - "teal": 41, - "source": 6 - }, - { - "teal": 46, - "source": 11 - }, - { - "teal": 47, - "source": 11 - }, - { - "teal": 48, - "source": 11 - }, - { - "teal": 52, - "source": 11 - }, - { - "teal": 56, - "source": 12 - }, - { - "teal": 57, - "source": 12 - }, - { - "teal": 61, - "source": 13 - }, - { - "teal": 62, - "source": 13 - }, - { - "teal": 66, - "source": 14 - }, - { - "teal": 67, - "source": 14 - }, - { - "teal": 71, - "source": 15 - }, - { - "teal": 72, - "source": 15 - }, - { - "teal": 76, - "source": 16 - }, - { - "teal": 77, - "source": 16 - }, - { - "teal": 78, - "source": 11 - }, - { - "teal": 83, - "source": 19 - }, - { - "teal": 84, - "source": 19 - }, - { - "teal": 85, - "source": 19 - }, - { - "teal": 89, - "source": 19 - }, - { - "teal": 93, - "source": 20 - }, - { - "teal": 94, - "source": 20 - }, - { - "teal": 95, - "source": 19 - }, - { - "teal": 100, - "source": 23 - }, - { - "teal": 101, - "source": 23 - }, - { - "teal": 102, - "source": 23 - }, - { - "teal": 106, - "source": 23 - }, - { - "teal": 110, - "source": 24 - }, - { - "teal": 111, - "source": 24 - }, - { - "teal": 112, - "source": 24 - }, - { - "teal": 113, - "source": 24 - }, - { - "teal": 117, - "source": 25 - }, - { - "teal": 118, - "source": 25 - }, - { - "teal": 119, - "source": 25 - }, - { - "teal": 120, - "source": 25 - }, - { - "teal": 124, - "source": 26 - }, - { - "teal": 125, - "source": 26 - }, - { - "teal": 126, - "source": 26 - }, - { - "teal": 127, - "source": 26 - }, - { - "teal": 128, - "source": 23 - }, - { - "teal": 133, - "source": 29 - }, - { - "teal": 134, - "source": 29 - }, - { - "teal": 135, - "source": 29 - }, - { - "teal": 139, - "source": 29 - }, - { - "teal": 143, - "source": 30 - }, - { - "teal": 144, - "source": 30 - }, - { - "teal": 145, - "source": 30 - }, - { - "teal": 146, - "source": 30 - }, - { - "teal": 147, - "source": 30 - }, - { - "teal": 151, - "source": 31 - }, - { - "teal": 152, - "source": 31 - }, - { - "teal": 153, - "source": 31 - }, - { - "teal": 154, - "source": 31 - }, - { - "teal": 155, - "source": 31 - }, - { - "teal": 159, - "source": 32 - }, - { - "teal": 160, - "source": 32 - }, - { - "teal": 161, - "source": 32 - }, - { - "teal": 162, - "source": 32 - }, - { - "teal": 163, - "source": 32 - }, - { - "teal": 167, - "source": 33 - }, - { - "teal": 168, - "source": 33 - }, - { - "teal": 169, - "source": 33 - }, - { - "teal": 170, - "source": 33 - }, - { - "teal": 171, - "source": 33 - }, - { - "teal": 175, - "source": 34 - }, - { - "teal": 176, - "source": 34 - }, - { - "teal": 177, - "source": 34 - }, - { - "teal": 178, - "source": 34 - }, - { - "teal": 179, - "source": 34 - }, - { - "teal": 183, - "source": 35 - }, - { - "teal": 184, - "source": 35 - }, - { - "teal": 185, - "source": 35 - }, - { - "teal": 186, - "source": 35 - }, - { - "teal": 187, - "source": 35 - }, - { - "teal": 191, - "source": 36 - }, - { - "teal": 192, - "source": 36 - }, - { - "teal": 193, - "source": 36 - }, - { - "teal": 194, - "source": 36 - }, - { - "teal": 195, - "source": 36 - }, - { - "teal": 199, - "source": 37 - }, - { - "teal": 200, - "source": 37 - }, - { - "teal": 201, - "source": 37 - }, - { - "teal": 202, - "source": 37 - }, - { - "teal": 203, - "source": 37 - }, - { - "teal": 204, - "source": 29 - }, - { - "teal": 207, - "source": 3 - }, - { - "teal": 208, - "source": 3 - }, - { - "teal": 211, - "source": 3 - }, - { - "teal": 212, - "source": 3 - }, - { - "teal": 213, - "source": 3 - }, - { - "teal": 216, - "source": 3, - "errorMessage": "this contract does not implement the given ABI method for create NoOp" - }, - { - "teal": 219, - "source": 3 - }, - { - "teal": 220, - "source": 3 - }, - { - "teal": 221, - "source": 3 - }, - { - "teal": 222, - "source": 3 - }, - { - "teal": 223, - "source": 3 - }, - { - "teal": 224, - "source": 3 - }, - { - "teal": 225, - "source": 3 - }, - { - "teal": 228, - "source": 3, - "errorMessage": "this contract does not implement the given ABI method for call NoOp" - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 3 + }, + { + "teal": 13, + "source": 3 + }, + { + "teal": 14, + "source": 3 + }, + { + "teal": 15, + "source": 3 + }, + { + "teal": 16, + "source": 3 + }, + { + "teal": 17, + "source": 3 + }, + { + "teal": 18, + "source": 3 + }, + { + "teal": 19, + "source": 3 + }, + { + "teal": 23, + "source": 3, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?" + }, + { + "teal": 28, + "source": 6 + }, + { + "teal": 29, + "source": 6 + }, + { + "teal": 30, + "source": 6 + }, + { + "teal": 34, + "source": 6 + }, + { + "teal": 38, + "source": 7 + }, + { + "teal": 39, + "source": 7 + }, + { + "teal": 40, + "source": 7 + }, + { + "teal": 41, + "source": 6 + }, + { + "teal": 46, + "source": 11 + }, + { + "teal": 47, + "source": 11 + }, + { + "teal": 48, + "source": 11 + }, + { + "teal": 52, + "source": 11 + }, + { + "teal": 56, + "source": 12 + }, + { + "teal": 57, + "source": 12 + }, + { + "teal": 61, + "source": 13 + }, + { + "teal": 62, + "source": 13 + }, + { + "teal": 66, + "source": 14 + }, + { + "teal": 67, + "source": 14 + }, + { + "teal": 71, + "source": 15 + }, + { + "teal": 72, + "source": 15 + }, + { + "teal": 76, + "source": 16 + }, + { + "teal": 77, + "source": 16 + }, + { + "teal": 78, + "source": 11 + }, + { + "teal": 83, + "source": 19 + }, + { + "teal": 84, + "source": 19 + }, + { + "teal": 85, + "source": 19 + }, + { + "teal": 89, + "source": 19 + }, + { + "teal": 93, + "source": 20 + }, + { + "teal": 94, + "source": 20 + }, + { + "teal": 95, + "source": 19 + }, + { + "teal": 100, + "source": 23 + }, + { + "teal": 101, + "source": 23 + }, + { + "teal": 102, + "source": 23 + }, + { + "teal": 106, + "source": 23 + }, + { + "teal": 110, + "source": 24 + }, + { + "teal": 111, + "source": 24 + }, + { + "teal": 112, + "source": 24 + }, + { + "teal": 113, + "source": 24 + }, + { + "teal": 117, + "source": 25 + }, + { + "teal": 118, + "source": 25 + }, + { + "teal": 119, + "source": 25 + }, + { + "teal": 120, + "source": 25 + }, + { + "teal": 124, + "source": 26 + }, + { + "teal": 125, + "source": 26 + }, + { + "teal": 126, + "source": 26 + }, + { + "teal": 127, + "source": 26 + }, + { + "teal": 128, + "source": 23 + }, + { + "teal": 133, + "source": 29 + }, + { + "teal": 134, + "source": 29 + }, + { + "teal": 135, + "source": 29 + }, + { + "teal": 139, + "source": 29 + }, + { + "teal": 143, + "source": 30 + }, + { + "teal": 144, + "source": 30 + }, + { + "teal": 145, + "source": 30 + }, + { + "teal": 146, + "source": 30 + }, + { + "teal": 147, + "source": 30 + }, + { + "teal": 151, + "source": 31 + }, + { + "teal": 152, + "source": 31 + }, + { + "teal": 153, + "source": 31 + }, + { + "teal": 154, + "source": 31 + }, + { + "teal": 155, + "source": 31 + }, + { + "teal": 159, + "source": 32 + }, + { + "teal": 160, + "source": 32 + }, + { + "teal": 161, + "source": 32 + }, + { + "teal": 162, + "source": 32 + }, + { + "teal": 163, + "source": 32 + }, + { + "teal": 167, + "source": 33 + }, + { + "teal": 168, + "source": 33 + }, + { + "teal": 169, + "source": 33 + }, + { + "teal": 170, + "source": 33 + }, + { + "teal": 171, + "source": 33 + }, + { + "teal": 175, + "source": 34 + }, + { + "teal": 176, + "source": 34 + }, + { + "teal": 177, + "source": 34 + }, + { + "teal": 178, + "source": 34 + }, + { + "teal": 179, + "source": 34 + }, + { + "teal": 183, + "source": 35 + }, + { + "teal": 184, + "source": 35 + }, + { + "teal": 185, + "source": 35 + }, + { + "teal": 186, + "source": 35 + }, + { + "teal": 187, + "source": 35 + }, + { + "teal": 191, + "source": 36 + }, + { + "teal": 192, + "source": 36 + }, + { + "teal": 193, + "source": 36 + }, + { + "teal": 194, + "source": 36 + }, + { + "teal": 195, + "source": 36 + }, + { + "teal": 199, + "source": 37 + }, + { + "teal": 200, + "source": 37 + }, + { + "teal": 201, + "source": 37 + }, + { + "teal": 202, + "source": 37 + }, + { + "teal": 203, + "source": 37 + }, + { + "teal": 204, + "source": 29 + }, + { + "teal": 207, + "source": 3 + }, + { + "teal": 208, + "source": 3 + }, + { + "teal": 211, + "source": 3 + }, + { + "teal": 212, + "source": 3 + }, + { + "teal": 213, + "source": 3 + }, + { + "teal": 216, + "source": 3, + "errorMessage": "this contract does not implement the given ABI method for create NoOp" + }, + { + "teal": 219, + "source": 3 + }, + { + "teal": 220, + "source": 3 + }, + { + "teal": 221, + "source": 3 + }, + { + "teal": 222, + "source": 3 + }, + { + "teal": 223, + "source": 3 + }, + { + "teal": 224, + "source": 3 + }, + { + "teal": 225, + "source": 3 + }, + { + "teal": 228, + "source": 3, + "errorMessage": "this contract does not implement the given ABI method for call NoOp" + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2b3Rlck9wY29kZXMoKXZvaWQKKmFiaV9yb3V0ZV92b3Rlck9wY29kZXM6CgkvLyBleGVjdXRlIHZvdGVyT3Bjb2Rlcygpdm9pZAoJY2FsbHN1YiB2b3Rlck9wY29kZXMKCWludCAxCglyZXR1cm4KCi8vIHZvdGVyT3Bjb2RlcygpOiB2b2lkCnZvdGVyT3Bjb2RlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjcKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIudm90ZXJCYWxhbmNlKQoJdHhuIFNlbmRlcgoJdm90ZXJfcGFyYW1zX2dldCBWb3RlckJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBpbmNlbnRpdmVHbG9iYWxzKCl2b2lkCiphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFsczoKCS8vIGV4ZWN1dGUgaW5jZW50aXZlR2xvYmFscygpdm9pZAoJY2FsbHN1YiBpbmNlbnRpdmVHbG9iYWxzCglpbnQgMQoJcmV0dXJuCgovLyBpbmNlbnRpdmVHbG9iYWxzKCk6IHZvaWQKaW5jZW50aXZlR2xvYmFsczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjEyCgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzRW5hYmxlZCkKCWdsb2JhbCBQYXlvdXRzRW5hYmxlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTMKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNHb09ubGluZUZlZSkKCWdsb2JhbCBQYXlvdXRzR29PbmxpbmVGZWUKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzUGVyY2VudCkKCWdsb2JhbCBQYXlvdXRzUGVyY2VudAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTUKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNNaW5CYWxhbmNlKQoJZ2xvYmFsIFBheW91dHNNaW5CYWxhbmNlCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXZtMTEuYWxnby50czoxNgoJLy8gYXNzZXJ0KGdsb2JhbHMucGF5b3V0c01heEJhbGFuY2UpCglnbG9iYWwgUGF5b3V0c01heEJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBvbmxpbmVTdGFrZU9wKCl2b2lkCiphYmlfcm91dGVfb25saW5lU3Rha2VPcDoKCS8vIGV4ZWN1dGUgb25saW5lU3Rha2VPcCgpdm9pZAoJY2FsbHN1YiBvbmxpbmVTdGFrZU9wCglpbnQgMQoJcmV0dXJuCgovLyBvbmxpbmVTdGFrZU9wKCk6IHZvaWQKb25saW5lU3Rha2VPcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjIwCgkvLyBhc3NlcnQob25saW5lU3Rha2UoKSkKCW9ubGluZV9zdGFrZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFjY291bnRQYXJhbXMoKXZvaWQKKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zOgoJLy8gZXhlY3V0ZSBhY2NvdW50UGFyYW1zKCl2b2lkCgljYWxsc3ViIGFjY291bnRQYXJhbXMKCWludCAxCglyZXR1cm4KCi8vIGFjY291bnRQYXJhbXMoKTogdm9pZAphY2NvdW50UGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjQKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIuaW5jZW50aXZlRWxpZ2libGUpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdEluY2VudGl2ZUVsaWdpYmxlCglwb3AKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjI1CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyLmxhc3RIZWFydGJlYXQpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdExhc3RIZWFydGJlYXQKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjYKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIubGFzdFByb3Bvc2VkKQoJdHhuIFNlbmRlcgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RMYXN0UHJvcG9zZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJsb2NrUGFyYW1zKCl2b2lkCiphYmlfcm91dGVfYmxvY2tQYXJhbXM6CgkvLyBleGVjdXRlIGJsb2NrUGFyYW1zKCl2b2lkCgljYWxsc3ViIGJsb2NrUGFyYW1zCglpbnQgMQoJcmV0dXJuCgovLyBibG9ja1BhcmFtcygpOiB2b2lkCmJsb2NrUGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzAKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVzQ29sbGVjdGVkKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlc0NvbGxlY3RlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzIKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLmJvbnVzKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrQm9udXMKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMzCgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5icmFuY2gpCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtCcmFuY2gKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM0CgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVTaW5rKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlU2luawoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzUKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3RvY29sKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvdG9jb2wKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM2CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50eG5Db3VudGVyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrVHhuQ291bnRlcgoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzcKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyUGF5b3V0KQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXJQYXlvdXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidm90ZXJPcGNvZGVzKCl2b2lkIgoJbWV0aG9kICJpbmNlbnRpdmVHbG9iYWxzKCl2b2lkIgoJbWV0aG9kICJvbmxpbmVTdGFrZU9wKCl2b2lkIgoJbWV0aG9kICJhY2NvdW50UGFyYW1zKCl2b2lkIgoJbWV0aG9kICJibG9ja1BhcmFtcygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdm90ZXJPcGNvZGVzICphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFscyAqYWJpX3JvdXRlX29ubGluZVN0YWtlT3AgKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zICphYmlfcm91dGVfYmxvY2tQYXJhbXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB2b3Rlck9wY29kZXMoKXZvaWQKKmFiaV9yb3V0ZV92b3Rlck9wY29kZXM6CgkvLyBleGVjdXRlIHZvdGVyT3Bjb2Rlcygpdm9pZAoJY2FsbHN1YiB2b3Rlck9wY29kZXMKCWludCAxCglyZXR1cm4KCi8vIHZvdGVyT3Bjb2RlcygpOiB2b2lkCnZvdGVyT3Bjb2RlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjcKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIudm90ZXJCYWxhbmNlKQoJdHhuIFNlbmRlcgoJdm90ZXJfcGFyYW1zX2dldCBWb3RlckJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBpbmNlbnRpdmVHbG9iYWxzKCl2b2lkCiphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFsczoKCS8vIGV4ZWN1dGUgaW5jZW50aXZlR2xvYmFscygpdm9pZAoJY2FsbHN1YiBpbmNlbnRpdmVHbG9iYWxzCglpbnQgMQoJcmV0dXJuCgovLyBpbmNlbnRpdmVHbG9iYWxzKCk6IHZvaWQKaW5jZW50aXZlR2xvYmFsczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjEyCgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzRW5hYmxlZCkKCWdsb2JhbCBQYXlvdXRzRW5hYmxlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTMKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNHb09ubGluZUZlZSkKCWdsb2JhbCBQYXlvdXRzR29PbmxpbmVGZWUKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoZ2xvYmFscy5wYXlvdXRzUGVyY2VudCkKCWdsb2JhbCBQYXlvdXRzUGVyY2VudAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MTUKCS8vIGFzc2VydChnbG9iYWxzLnBheW91dHNNaW5CYWxhbmNlKQoJZ2xvYmFsIFBheW91dHNNaW5CYWxhbmNlCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvYXZtMTEuYWxnby50czoxNgoJLy8gYXNzZXJ0KGdsb2JhbHMucGF5b3V0c01heEJhbGFuY2UpCglnbG9iYWwgUGF5b3V0c01heEJhbGFuY2UKCWFzc2VydAoJcmV0c3ViCgovLyBvbmxpbmVTdGFrZU9wKCl2b2lkCiphYmlfcm91dGVfb25saW5lU3Rha2VPcDoKCS8vIGV4ZWN1dGUgb25saW5lU3Rha2VPcCgpdm9pZAoJY2FsbHN1YiBvbmxpbmVTdGFrZU9wCglpbnQgMQoJcmV0dXJuCgovLyBvbmxpbmVTdGFrZU9wKCk6IHZvaWQKb25saW5lU3Rha2VPcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjIwCgkvLyBhc3NlcnQob25saW5lU3Rha2UoKSkKCW9ubGluZV9zdGFrZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFjY291bnRQYXJhbXMoKXZvaWQKKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zOgoJLy8gZXhlY3V0ZSBhY2NvdW50UGFyYW1zKCl2b2lkCgljYWxsc3ViIGFjY291bnRQYXJhbXMKCWludCAxCglyZXR1cm4KCi8vIGFjY291bnRQYXJhbXMoKTogdm9pZAphY2NvdW50UGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjQKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIuaW5jZW50aXZlRWxpZ2libGUpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdEluY2VudGl2ZUVsaWdpYmxlCglwb3AKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjI1CgkvLyBhc3NlcnQodGhpcy50eG4uc2VuZGVyLmxhc3RIZWFydGJlYXQpCgl0eG4gU2VuZGVyCglhY2N0X3BhcmFtc19nZXQgQWNjdExhc3RIZWFydGJlYXQKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MjYKCS8vIGFzc2VydCh0aGlzLnR4bi5zZW5kZXIubGFzdFByb3Bvc2VkKQoJdHhuIFNlbmRlcgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RMYXN0UHJvcG9zZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJsb2NrUGFyYW1zKCl2b2lkCiphYmlfcm91dGVfYmxvY2tQYXJhbXM6CgkvLyBleGVjdXRlIGJsb2NrUGFyYW1zKCl2b2lkCgljYWxsc3ViIGJsb2NrUGFyYW1zCglpbnQgMQoJcmV0dXJuCgovLyBibG9ja1BhcmFtcygpOiB2b2lkCmJsb2NrUGFyYW1zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzAKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVzQ29sbGVjdGVkKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlc0NvbGxlY3RlZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzIKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLmJvbnVzKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrQm9udXMKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjMzCgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5icmFuY2gpCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtCcmFuY2gKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM0CgkvLyBsb2coYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS5mZWVTaW5rKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrRmVlU2luawoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzUKCS8vIGxvZyhibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3RvY29sKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvdG9jb2wKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hdm0xMS5hbGdvLnRzOjM2CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50eG5Db3VudGVyKQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrVHhuQ291bnRlcgoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2F2bTExLmFsZ28udHM6MzcKCS8vIGFzc2VydChibG9ja3NbZ2xvYmFscy5yb3VuZCAtIDFdLnByb3Bvc2VyUGF5b3V0KQoJZ2xvYmFsIFJvdW5kCglpbnQgMQoJLQoJYmxvY2sgQmxrUHJvcG9zZXJQYXlvdXQKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidm90ZXJPcGNvZGVzKCl2b2lkIgoJbWV0aG9kICJpbmNlbnRpdmVHbG9iYWxzKCl2b2lkIgoJbWV0aG9kICJvbmxpbmVTdGFrZU9wKCl2b2lkIgoJbWV0aG9kICJhY2NvdW50UGFyYW1zKCl2b2lkIgoJbWV0aG9kICJibG9ja1BhcmFtcygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdm90ZXJPcGNvZGVzICphYmlfcm91dGVfaW5jZW50aXZlR2xvYmFscyAqYWJpX3JvdXRlX29ubGluZVN0YWtlT3AgKmFiaV9yb3V0ZV9hY2NvdW50UGFyYW1zICphYmlfcm91dGVfYmxvY2tQYXJhbXMKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEx" } } \ No newline at end of file diff --git a/tests/contracts/artifacts/AccountTest.approval.teal b/tests/contracts/artifacts/AccountTest.approval.teal index 6e9b56500..eb10cddf4 100644 --- a/tests/contracts/artifacts/AccountTest.approval.teal +++ b/tests/contracts/artifacts/AccountTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/AccountTest.arc32.json b/tests/contracts/artifacts/AccountTest.arc32.json index 97d774142..f86e15c16 100644 --- a/tests/contracts/artifacts/AccountTest.arc32.json +++ b/tests/contracts/artifacts/AccountTest.arc32.json @@ -114,7 +114,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBoYXNBc3NldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9oYXNBc3NldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0Fzc2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGhhc0Fzc2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBoYXNBc3NldAoJaW50IDEKCXJldHVybgoKLy8gaGFzQXNzZXQoYTogQWRkcmVzcyk6IHZvaWQKaGFzQXNzZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjYKCS8vIGFzc2VydChhLmlzT3B0ZWRJblRvQXNzZXQoQXNzZXRJRC5mcm9tVWludDY0KDEyMykpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWludCAxMjMKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYXNzZXRCYWxhbmNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0QmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0QmFsYW5jZSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBhc3NldEJhbGFuY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGFzc2V0QmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRCYWxhbmNlKGE6IEFkZHJlc3MpOiB2b2lkCmFzc2V0QmFsYW5jZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MTAKCS8vIGFzc2VydChhLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBhc3NldEZyb3plbihhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hc3NldEZyb3plbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0RnJvemVuIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBhc3NldEZyb3plbgoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcm96ZW4oYTogQWRkcmVzcyk6IHZvaWQKYXNzZXRGcm96ZW46Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoYS5hc3NldEZyb3plbihBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRGcm96ZW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGhhc0JhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfaGFzQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0JhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgaGFzQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gaGFzQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApoYXNCYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEuaXNJbkxlZGdlcikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApiYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEuYmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIG1pbkJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbWluQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIG1pbkJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWluQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWluQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gbWluQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZAptaW5CYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEubWluQmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGF1dGhBZGRyKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2F1dGhBZGRyOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYXV0aEFkZHIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXV0aEFkZHIoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGF1dGhBZGRyCglpbnQgMQoJcmV0dXJuCgovLyBhdXRoQWRkcihhOiBBZGRyZXNzKTogdm9pZAphdXRoQWRkcjoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzAKCS8vIGxvZyhhLmF1dGhBZGRyKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJbG9nCglyZXRzdWIKCi8vIHRvdGFsTnVtVWludChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbE51bVVpbnQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbE51bVVpbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1VaW50KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbE51bVVpbnQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsTnVtVWludChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bVVpbnQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjM0CgkvLyBhc3NlcnQoYS50b3RhbE51bVVpbnQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbE51bVVpbnQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsTnVtQnl0ZVNsaWNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxOdW1CeXRlU2xpY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1CeXRlU2xpY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsTnVtQnl0ZVNsaWNlCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbE51bUJ5dGVTbGljZShhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bUJ5dGVTbGljZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzgKCS8vIGFzc2VydChhLnRvdGFsTnVtQnl0ZVNsaWNlKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxOdW1CeXRlU2xpY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEV4dHJhQXBwUGFnZXM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEV4dHJhQXBwUGFnZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxFeHRyYUFwcFBhZ2VzKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEV4dHJhQXBwUGFnZXMKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEV4dHJhQXBwUGFnZXM6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjQyCgkvLyBhc3NlcnQoYS50b3RhbEV4dHJhQXBwUGFnZXMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEV4dHJhQXBwUGFnZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzQ3JlYXRlZChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzQ3JlYXRlZAoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNDcmVhdGVkOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo0NgoJLy8gYXNzZXJ0KGEudG90YWxBcHBzQ3JlYXRlZCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc09wdGVkSW4oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzT3B0ZWRJbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc09wdGVkSW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzT3B0ZWRJbihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzT3B0ZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzT3B0ZWRJbihhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNPcHRlZEluOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo1MAoJLy8gYXNzZXJ0KGEudG90YWxBcHBzT3B0ZWRJbikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc09wdGVkSW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEFzc2V0c0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEFzc2V0c0NyZWF0ZWQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0c0NyZWF0ZWQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjU0CgkvLyBhc3NlcnQoYS50b3RhbEFzc2V0c0NyZWF0ZWQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEFzc2V0c0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsQXNzZXRzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxBc3NldHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsQXNzZXRzCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbEFzc2V0cyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6NTgKCS8vIGFzc2VydChhLnRvdGFsQXNzZXRzKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxBc3NldHMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2MgoJLy8gYXNzZXJ0KGEudG90YWxCb3hlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94Qnl0ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hCeXRlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94Qnl0ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hCeXRlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hCeXRlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveEJ5dGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2NgoJLy8gYXNzZXJ0KGEudG90YWxCb3hCeXRlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94Qnl0ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJoYXNBc3NldChhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0QmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImJhbGFuY2UoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJtaW5CYWxhbmNlKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXV0aEFkZHIoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bVVpbnQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bUJ5dGVTbGljZShhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEFwcHNPcHRlZEluKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHMoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEJveGVzKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2hhc0Fzc2V0ICphYmlfcm91dGVfYXNzZXRCYWxhbmNlICphYmlfcm91dGVfYXNzZXRGcm96ZW4gKmFiaV9yb3V0ZV9oYXNCYWxhbmNlICphYmlfcm91dGVfYmFsYW5jZSAqYWJpX3JvdXRlX21pbkJhbGFuY2UgKmFiaV9yb3V0ZV9hdXRoQWRkciAqYWJpX3JvdXRlX3RvdGFsTnVtVWludCAqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlICphYmlfcm91dGVfdG90YWxFeHRyYUFwcFBhZ2VzICphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZCAqYWJpX3JvdXRlX3RvdGFsQXBwc09wdGVkSW4gKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQgKmFiaV9yb3V0ZV90b3RhbEFzc2V0cyAqYWJpX3JvdXRlX3RvdGFsQm94ZXMgKmFiaV9yb3V0ZV90b3RhbEJveEJ5dGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBoYXNBc3NldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9oYXNBc3NldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0Fzc2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGhhc0Fzc2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBoYXNBc3NldAoJaW50IDEKCXJldHVybgoKLy8gaGFzQXNzZXQoYTogQWRkcmVzcyk6IHZvaWQKaGFzQXNzZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjYKCS8vIGFzc2VydChhLmlzT3B0ZWRJblRvQXNzZXQoQXNzZXRJRC5mcm9tVWludDY0KDEyMykpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWludCAxMjMKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYXNzZXRCYWxhbmNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0QmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0QmFsYW5jZSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBhc3NldEJhbGFuY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGFzc2V0QmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRCYWxhbmNlKGE6IEFkZHJlc3MpOiB2b2lkCmFzc2V0QmFsYW5jZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MTAKCS8vIGFzc2VydChhLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBhc3NldEZyb3plbihhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hc3NldEZyb3plbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0RnJvemVuIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBhc3NldEZyb3plbgoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcm96ZW4oYTogQWRkcmVzcyk6IHZvaWQKYXNzZXRGcm96ZW46Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoYS5hc3NldEZyb3plbihBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRGcm96ZW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGhhc0JhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfaGFzQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0JhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgaGFzQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gaGFzQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApoYXNCYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEuaXNJbkxlZGdlcikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApiYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEuYmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIG1pbkJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbWluQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIG1pbkJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWluQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWluQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gbWluQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZAptaW5CYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEubWluQmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGF1dGhBZGRyKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2F1dGhBZGRyOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYXV0aEFkZHIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXV0aEFkZHIoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGF1dGhBZGRyCglpbnQgMQoJcmV0dXJuCgovLyBhdXRoQWRkcihhOiBBZGRyZXNzKTogdm9pZAphdXRoQWRkcjoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzAKCS8vIGxvZyhhLmF1dGhBZGRyKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJbG9nCglyZXRzdWIKCi8vIHRvdGFsTnVtVWludChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbE51bVVpbnQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbE51bVVpbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1VaW50KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbE51bVVpbnQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsTnVtVWludChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bVVpbnQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjM0CgkvLyBhc3NlcnQoYS50b3RhbE51bVVpbnQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbE51bVVpbnQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsTnVtQnl0ZVNsaWNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxOdW1CeXRlU2xpY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1CeXRlU2xpY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsTnVtQnl0ZVNsaWNlCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbE51bUJ5dGVTbGljZShhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bUJ5dGVTbGljZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzgKCS8vIGFzc2VydChhLnRvdGFsTnVtQnl0ZVNsaWNlKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxOdW1CeXRlU2xpY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEV4dHJhQXBwUGFnZXM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEV4dHJhQXBwUGFnZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxFeHRyYUFwcFBhZ2VzKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEV4dHJhQXBwUGFnZXMKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEV4dHJhQXBwUGFnZXM6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjQyCgkvLyBhc3NlcnQoYS50b3RhbEV4dHJhQXBwUGFnZXMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEV4dHJhQXBwUGFnZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzQ3JlYXRlZChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzQ3JlYXRlZAoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNDcmVhdGVkOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo0NgoJLy8gYXNzZXJ0KGEudG90YWxBcHBzQ3JlYXRlZCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc09wdGVkSW4oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzT3B0ZWRJbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc09wdGVkSW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzT3B0ZWRJbihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzT3B0ZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzT3B0ZWRJbihhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNPcHRlZEluOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo1MAoJLy8gYXNzZXJ0KGEudG90YWxBcHBzT3B0ZWRJbikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc09wdGVkSW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEFzc2V0c0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEFzc2V0c0NyZWF0ZWQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0c0NyZWF0ZWQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjU0CgkvLyBhc3NlcnQoYS50b3RhbEFzc2V0c0NyZWF0ZWQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEFzc2V0c0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsQXNzZXRzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxBc3NldHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsQXNzZXRzCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbEFzc2V0cyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6NTgKCS8vIGFzc2VydChhLnRvdGFsQXNzZXRzKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxBc3NldHMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2MgoJLy8gYXNzZXJ0KGEudG90YWxCb3hlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94Qnl0ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hCeXRlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94Qnl0ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hCeXRlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hCeXRlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveEJ5dGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2NgoJLy8gYXNzZXJ0KGEudG90YWxCb3hCeXRlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94Qnl0ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJoYXNBc3NldChhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0QmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImJhbGFuY2UoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJtaW5CYWxhbmNlKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXV0aEFkZHIoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bVVpbnQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bUJ5dGVTbGljZShhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEFwcHNPcHRlZEluKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHMoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEJveGVzKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2hhc0Fzc2V0ICphYmlfcm91dGVfYXNzZXRCYWxhbmNlICphYmlfcm91dGVfYXNzZXRGcm96ZW4gKmFiaV9yb3V0ZV9oYXNCYWxhbmNlICphYmlfcm91dGVfYmFsYW5jZSAqYWJpX3JvdXRlX21pbkJhbGFuY2UgKmFiaV9yb3V0ZV9hdXRoQWRkciAqYWJpX3JvdXRlX3RvdGFsTnVtVWludCAqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlICphYmlfcm91dGVfdG90YWxFeHRyYUFwcFBhZ2VzICphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZCAqYWJpX3JvdXRlX3RvdGFsQXBwc09wdGVkSW4gKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQgKmFiaV9yb3V0ZV90b3RhbEFzc2V0cyAqYWJpX3JvdXRlX3RvdGFsQm94ZXMgKmFiaV9yb3V0ZV90b3RhbEJveEJ5dGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/AccountTest.arc56_draft.json b/tests/contracts/artifacts/AccountTest.arc56_draft.json index a4596f1a8..329e3bab6 100644 --- a/tests/contracts/artifacts/AccountTest.arc56_draft.json +++ b/tests/contracts/artifacts/AccountTest.arc56_draft.json @@ -335,2268 +335,2271 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 6, - 7 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 8 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 9, - 10 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 11 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 12, - 13 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 14 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 41 - ] - }, - { - "teal": 28, - "source": 5, - "pc": [ - 42, - 43, - 44 - ] - }, - { - "teal": 29, - "source": 5, - "pc": [ - 45 - ] - }, - { - "teal": 30, - "source": 5, - "pc": [ - 46 - ] - }, - { - "teal": 31, - "source": 5, - "pc": [ - 47 - ] - }, - { - "teal": 32, - "source": 5, - "pc": [ - 48 - ] - }, - { - "teal": 35, - "source": 5, - "errorMessage": "argument 0 (a) for hasAsset must be a address", - "pc": [ - 49 - ] - }, - { - "teal": 38, - "source": 5, - "pc": [ - 50, - 51, - 52 - ] - }, - { - "teal": 39, - "source": 5, - "pc": [ - 53 - ] - }, - { - "teal": 40, - "source": 5, - "pc": [ - 54 - ] - }, - { - "teal": 44, - "source": 5, - "pc": [ - 55, - 56, - 57 - ] - }, - { - "teal": 48, - "source": 6, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 49, - "source": 6, - "pc": [ - 60 - ] - }, - { - "teal": 50, - "source": 6, - "pc": [ - 61, - 62 - ] - }, - { - "teal": 51, - "source": 6, - "pc": [ - 63 - ] - }, - { - "teal": 52, - "source": 6, - "pc": [ - 64 - ] - }, - { - "teal": 53, - "source": 6, - "pc": [ - 65 - ] - }, - { - "teal": 54, - "source": 5, - "pc": [ - 66 - ] - }, - { - "teal": 59, - "source": 9, - "pc": [ - 67, - 68, - 69 - ] - }, - { - "teal": 60, - "source": 9, - "pc": [ - 70 - ] - }, - { - "teal": 61, - "source": 9, - "pc": [ - 71 - ] - }, - { - "teal": 62, - "source": 9, - "pc": [ - 72 - ] - }, - { - "teal": 63, - "source": 9, - "pc": [ - 73 - ] - }, - { - "teal": 66, - "source": 9, - "errorMessage": "argument 0 (a) for assetBalance must be a address", - "pc": [ - 74 - ] - }, - { - "teal": 69, - "source": 9, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 70, - "source": 9, - "pc": [ - 78 - ] - }, - { - "teal": 71, - "source": 9, - "pc": [ - 79 - ] - }, - { - "teal": 75, - "source": 9, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 79, - "source": 10, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 80, - "source": 10, - "pc": [ - 85 - ] - }, - { - "teal": 81, - "source": 10, - "pc": [ - 86, - 87 - ] - }, - { - "teal": 82, - "source": 10, - "pc": [ - 88 - ] - }, - { - "teal": 83, - "source": 10, - "pc": [ - 89 - ] - }, - { - "teal": 84, - "source": 9, - "pc": [ - 90 - ] - }, - { - "teal": 89, - "source": 13, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 90, - "source": 13, - "pc": [ - 94 - ] - }, - { - "teal": 91, - "source": 13, - "pc": [ - 95 - ] - }, - { - "teal": 92, - "source": 13, - "pc": [ - 96 - ] - }, - { - "teal": 93, - "source": 13, - "pc": [ - 97 - ] - }, - { - "teal": 96, - "source": 13, - "errorMessage": "argument 0 (a) for assetFrozen must be a address", - "pc": [ - 98 - ] - }, - { - "teal": 99, - "source": 13, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 100, - "source": 13, - "pc": [ - 102 - ] - }, - { - "teal": 101, - "source": 13, - "pc": [ - 103 - ] - }, - { - "teal": 105, - "source": 13, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 109, - "source": 14, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 110, - "source": 14, - "pc": [ - 109 - ] - }, - { - "teal": 111, - "source": 14, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 112, - "source": 14, - "pc": [ - 112 - ] - }, - { - "teal": 113, - "source": 14, - "pc": [ - 113 - ] - }, - { - "teal": 114, - "source": 13, - "pc": [ - 114 - ] - }, - { - "teal": 119, - "source": 17, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 120, - "source": 17, - "pc": [ - 118 - ] - }, - { - "teal": 121, - "source": 17, - "pc": [ - 119 - ] - }, - { - "teal": 122, - "source": 17, - "pc": [ - 120 - ] - }, - { - "teal": 123, - "source": 17, - "pc": [ - 121 - ] - }, - { - "teal": 126, - "source": 17, - "errorMessage": "argument 0 (a) for hasBalance must be a address", - "pc": [ - 122 - ] - }, - { - "teal": 129, - "source": 17, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 130, - "source": 17, - "pc": [ - 126 - ] - }, - { - "teal": 131, - "source": 17, - "pc": [ - 127 - ] - }, - { - "teal": 135, - "source": 17, - "pc": [ - 128, - 129, - 130 - ] - }, - { - "teal": 139, - "source": 18, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 140, - "source": 18, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 141, - "source": 18, - "pc": [ - 135 - ] - }, - { - "teal": 142, - "source": 18, - "pc": [ - 136 - ] - }, - { - "teal": 143, - "source": 18, - "pc": [ - 137 - ] - }, - { - "teal": 144, - "source": 17, - "pc": [ - 138 - ] - }, - { - "teal": 149, - "source": 21, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 150, - "source": 21, - "pc": [ - 142 - ] - }, - { - "teal": 151, - "source": 21, - "pc": [ - 143 - ] - }, - { - "teal": 152, - "source": 21, - "pc": [ - 144 - ] - }, - { - "teal": 153, - "source": 21, - "pc": [ - 145 - ] - }, - { - "teal": 156, - "source": 21, - "errorMessage": "argument 0 (a) for balance must be a address", - "pc": [ - 146 - ] - }, - { - "teal": 159, - "source": 21, - "pc": [ - 147, - 148, - 149 - ] - }, - { - "teal": 160, - "source": 21, - "pc": [ - 150 - ] - }, - { - "teal": 161, - "source": 21, - "pc": [ - 151 - ] - }, - { - "teal": 165, - "source": 21, - "pc": [ - 152, - 153, - 154 - ] - }, - { - "teal": 169, - "source": 22, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 170, - "source": 22, - "pc": [ - 157, - 158 - ] - }, - { - "teal": 171, - "source": 22, - "pc": [ - 159 - ] - }, - { - "teal": 172, - "source": 22, - "pc": [ - 160 - ] - }, - { - "teal": 173, - "source": 21, - "pc": [ - 161 - ] - }, - { - "teal": 178, - "source": 25, - "pc": [ - 162, - 163, - 164 - ] - }, - { - "teal": 179, - "source": 25, - "pc": [ - 165 - ] - }, - { - "teal": 180, - "source": 25, - "pc": [ - 166 - ] - }, - { - "teal": 181, - "source": 25, - "pc": [ - 167 - ] - }, - { - "teal": 182, - "source": 25, - "pc": [ - 168 - ] - }, - { - "teal": 185, - "source": 25, - "errorMessage": "argument 0 (a) for minBalance must be a address", - "pc": [ - 169 - ] - }, - { - "teal": 188, - "source": 25, - "pc": [ - 170, - 171, - 172 - ] - }, - { - "teal": 189, - "source": 25, - "pc": [ - 173 - ] - }, - { - "teal": 190, - "source": 25, - "pc": [ - 174 - ] - }, - { - "teal": 194, - "source": 25, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 198, - "source": 26, - "pc": [ - 178, - 179 - ] - }, - { - "teal": 199, - "source": 26, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 200, - "source": 26, - "pc": [ - 182 - ] - }, - { - "teal": 201, - "source": 26, - "pc": [ - 183 - ] - }, - { - "teal": 202, - "source": 25, - "pc": [ - 184 - ] - }, - { - "teal": 207, - "source": 29, - "pc": [ - 185, - 186, - 187 - ] - }, - { - "teal": 208, - "source": 29, - "pc": [ - 188 - ] - }, - { - "teal": 209, - "source": 29, - "pc": [ - 189 - ] - }, - { - "teal": 210, - "source": 29, - "pc": [ - 190 - ] - }, - { - "teal": 211, - "source": 29, - "pc": [ - 191 - ] - }, - { - "teal": 214, - "source": 29, - "errorMessage": "argument 0 (a) for authAddr must be a address", - "pc": [ - 192 - ] - }, - { - "teal": 217, - "source": 29, - "pc": [ - 193, - 194, - 195 - ] - }, - { - "teal": 218, - "source": 29, - "pc": [ - 196 - ] - }, - { - "teal": 219, - "source": 29, - "pc": [ - 197 - ] - }, - { - "teal": 223, - "source": 29, - "pc": [ - 198, - 199, - 200 - ] - }, - { - "teal": 227, - "source": 30, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 228, - "source": 30, - "pc": [ - 203, - 204 - ] - }, - { - "teal": 229, - "source": 30, - "pc": [ - 205 - ] - }, - { - "teal": 230, - "source": 30, - "pc": [ - 206 - ] - }, - { - "teal": 231, - "source": 29, - "pc": [ - 207 - ] - }, - { - "teal": 236, - "source": 33, - "pc": [ - 208, - 209, - 210 - ] - }, - { - "teal": 237, - "source": 33, - "pc": [ - 211 - ] - }, - { - "teal": 238, - "source": 33, - "pc": [ - 212 - ] - }, - { - "teal": 239, - "source": 33, - "pc": [ - 213 - ] - }, - { - "teal": 240, - "source": 33, - "pc": [ - 214 - ] - }, - { - "teal": 243, - "source": 33, - "errorMessage": "argument 0 (a) for totalNumUint must be a address", - "pc": [ - 215 - ] - }, - { - "teal": 246, - "source": 33, - "pc": [ - 216, - 217, - 218 - ] - }, - { - "teal": 247, - "source": 33, - "pc": [ - 219 - ] - }, - { - "teal": 248, - "source": 33, - "pc": [ - 220 - ] - }, - { - "teal": 252, - "source": 33, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 256, - "source": 34, - "pc": [ - 224, - 225 - ] - }, - { - "teal": 257, - "source": 34, - "pc": [ - 226, - 227 - ] - }, - { - "teal": 258, - "source": 34, - "pc": [ - 228 - ] - }, - { - "teal": 259, - "source": 34, - "pc": [ - 229 - ] - }, - { - "teal": 260, - "source": 33, - "pc": [ - 230 - ] - }, - { - "teal": 265, - "source": 37, - "pc": [ - 231, - 232, - 233 - ] - }, - { - "teal": 266, - "source": 37, - "pc": [ - 234 - ] - }, - { - "teal": 267, - "source": 37, - "pc": [ - 235 - ] - }, - { - "teal": 268, - "source": 37, - "pc": [ - 236 - ] - }, - { - "teal": 269, - "source": 37, - "pc": [ - 237 - ] - }, - { - "teal": 272, - "source": 37, - "errorMessage": "argument 0 (a) for totalNumByteSlice must be a address", - "pc": [ - 238 - ] - }, - { - "teal": 275, - "source": 37, - "pc": [ - 239, - 240, - 241 - ] - }, - { - "teal": 276, - "source": 37, - "pc": [ - 242 - ] - }, - { - "teal": 277, - "source": 37, - "pc": [ - 243 - ] - }, - { - "teal": 281, - "source": 37, - "pc": [ - 244, - 245, - 246 - ] - }, - { - "teal": 285, - "source": 38, - "pc": [ - 247, - 248 - ] - }, - { - "teal": 286, - "source": 38, - "pc": [ - 249, - 250 - ] - }, - { - "teal": 287, - "source": 38, - "pc": [ - 251 - ] - }, - { - "teal": 288, - "source": 38, - "pc": [ - 252 - ] - }, - { - "teal": 289, - "source": 37, - "pc": [ - 253 - ] - }, - { - "teal": 294, - "source": 41, - "pc": [ - 254, - 255, - 256 - ] - }, - { - "teal": 295, - "source": 41, - "pc": [ - 257 - ] - }, - { - "teal": 296, - "source": 41, - "pc": [ - 258 - ] - }, - { - "teal": 297, - "source": 41, - "pc": [ - 259 - ] - }, - { - "teal": 298, - "source": 41, - "pc": [ - 260 - ] - }, - { - "teal": 301, - "source": 41, - "errorMessage": "argument 0 (a) for totalExtraAppPages must be a address", - "pc": [ - 261 - ] - }, - { - "teal": 304, - "source": 41, - "pc": [ - 262, - 263, - 264 - ] - }, - { - "teal": 305, - "source": 41, - "pc": [ - 265 - ] - }, - { - "teal": 306, - "source": 41, - "pc": [ - 266 - ] - }, - { - "teal": 310, - "source": 41, - "pc": [ - 267, - 268, - 269 - ] - }, - { - "teal": 314, - "source": 42, - "pc": [ - 270, - 271 - ] - }, - { - "teal": 315, - "source": 42, - "pc": [ - 272, - 273 - ] - }, - { - "teal": 316, - "source": 42, - "pc": [ - 274 - ] - }, - { - "teal": 317, - "source": 42, - "pc": [ - 275 - ] - }, - { - "teal": 318, - "source": 41, - "pc": [ - 276 - ] - }, - { - "teal": 323, - "source": 45, - "pc": [ - 277, - 278, - 279 - ] - }, - { - "teal": 324, - "source": 45, - "pc": [ - 280 - ] - }, - { - "teal": 325, - "source": 45, - "pc": [ - 281 - ] - }, - { - "teal": 326, - "source": 45, - "pc": [ - 282 - ] - }, - { - "teal": 327, - "source": 45, - "pc": [ - 283 - ] - }, - { - "teal": 330, - "source": 45, - "errorMessage": "argument 0 (a) for totalAppsCreated must be a address", - "pc": [ - 284 - ] - }, - { - "teal": 333, - "source": 45, - "pc": [ - 285, - 286, - 287 - ] - }, - { - "teal": 334, - "source": 45, - "pc": [ - 288 - ] - }, - { - "teal": 335, - "source": 45, - "pc": [ - 289 - ] - }, - { - "teal": 339, - "source": 45, - "pc": [ - 290, - 291, - 292 - ] - }, - { - "teal": 343, - "source": 46, - "pc": [ - 293, - 294 - ] - }, - { - "teal": 344, - "source": 46, - "pc": [ - 295, - 296 - ] - }, - { - "teal": 345, - "source": 46, - "pc": [ - 297 - ] - }, - { - "teal": 346, - "source": 46, - "pc": [ - 298 - ] - }, - { - "teal": 347, - "source": 45, - "pc": [ - 299 - ] - }, - { - "teal": 352, - "source": 49, - "pc": [ - 300, - 301, - 302 - ] - }, - { - "teal": 353, - "source": 49, - "pc": [ - 303 - ] - }, - { - "teal": 354, - "source": 49, - "pc": [ - 304 - ] - }, - { - "teal": 355, - "source": 49, - "pc": [ - 305 - ] - }, - { - "teal": 356, - "source": 49, - "pc": [ - 306 - ] - }, - { - "teal": 359, - "source": 49, - "errorMessage": "argument 0 (a) for totalAppsOptedIn must be a address", - "pc": [ - 307 - ] - }, - { - "teal": 362, - "source": 49, - "pc": [ - 308, - 309, - 310 - ] - }, - { - "teal": 363, - "source": 49, - "pc": [ - 311 - ] - }, - { - "teal": 364, - "source": 49, - "pc": [ - 312 - ] - }, - { - "teal": 368, - "source": 49, - "pc": [ - 313, - 314, - 315 - ] - }, - { - "teal": 372, - "source": 50, - "pc": [ - 316, - 317 - ] - }, - { - "teal": 373, - "source": 50, - "pc": [ - 318, - 319 - ] - }, - { - "teal": 374, - "source": 50, - "pc": [ - 320 - ] - }, - { - "teal": 375, - "source": 50, - "pc": [ - 321 - ] - }, - { - "teal": 376, - "source": 49, - "pc": [ - 322 - ] - }, - { - "teal": 381, - "source": 53, - "pc": [ - 323, - 324, - 325 - ] - }, - { - "teal": 382, - "source": 53, - "pc": [ - 326 - ] - }, - { - "teal": 383, - "source": 53, - "pc": [ - 327 - ] - }, - { - "teal": 384, - "source": 53, - "pc": [ - 328 - ] - }, - { - "teal": 385, - "source": 53, - "pc": [ - 329 - ] - }, - { - "teal": 388, - "source": 53, - "errorMessage": "argument 0 (a) for totalAssetsCreated must be a address", - "pc": [ - 330 - ] - }, - { - "teal": 391, - "source": 53, - "pc": [ - 331, - 332, - 333 - ] - }, - { - "teal": 392, - "source": 53, - "pc": [ - 334 - ] - }, - { - "teal": 393, - "source": 53, - "pc": [ - 335 - ] - }, - { - "teal": 397, - "source": 53, - "pc": [ - 336, - 337, - 338 - ] - }, - { - "teal": 401, - "source": 54, - "pc": [ - 339, - 340 - ] - }, - { - "teal": 402, - "source": 54, - "pc": [ - 341, - 342 - ] - }, - { - "teal": 403, - "source": 54, - "pc": [ - 343 - ] - }, - { - "teal": 404, - "source": 54, - "pc": [ - 344 - ] - }, - { - "teal": 405, - "source": 53, - "pc": [ - 345 - ] - }, - { - "teal": 410, - "source": 57, - "pc": [ - 346, - 347, - 348 - ] - }, - { - "teal": 411, - "source": 57, - "pc": [ - 349 - ] - }, - { - "teal": 412, - "source": 57, - "pc": [ - 350 - ] - }, - { - "teal": 413, - "source": 57, - "pc": [ - 351 - ] - }, - { - "teal": 414, - "source": 57, - "pc": [ - 352 - ] - }, - { - "teal": 417, - "source": 57, - "errorMessage": "argument 0 (a) for totalAssets must be a address", - "pc": [ - 353 - ] - }, - { - "teal": 420, - "source": 57, - "pc": [ - 354, - 355, - 356 - ] - }, - { - "teal": 421, - "source": 57, - "pc": [ - 357 - ] - }, - { - "teal": 422, - "source": 57, - "pc": [ - 358 - ] - }, - { - "teal": 426, - "source": 57, - "pc": [ - 359, - 360, - 361 - ] - }, - { - "teal": 430, - "source": 58, - "pc": [ - 362, - 363 - ] - }, - { - "teal": 431, - "source": 58, - "pc": [ - 364, - 365 - ] - }, - { - "teal": 432, - "source": 58, - "pc": [ - 366 - ] - }, - { - "teal": 433, - "source": 58, - "pc": [ - 367 - ] - }, - { - "teal": 434, - "source": 57, - "pc": [ - 368 - ] - }, - { - "teal": 439, - "source": 61, - "pc": [ - 369, - 370, - 371 - ] - }, - { - "teal": 440, - "source": 61, - "pc": [ - 372 - ] - }, - { - "teal": 441, - "source": 61, - "pc": [ - 373 - ] - }, - { - "teal": 442, - "source": 61, - "pc": [ - 374 - ] - }, - { - "teal": 443, - "source": 61, - "pc": [ - 375 - ] - }, - { - "teal": 446, - "source": 61, - "errorMessage": "argument 0 (a) for totalBoxes must be a address", - "pc": [ - 376 - ] - }, - { - "teal": 449, - "source": 61, - "pc": [ - 377, - 378, - 379 - ] - }, - { - "teal": 450, - "source": 61, - "pc": [ - 380 - ] - }, - { - "teal": 451, - "source": 61, - "pc": [ - 381 - ] - }, - { - "teal": 455, - "source": 61, - "pc": [ - 382, - 383, - 384 - ] - }, - { - "teal": 459, - "source": 62, - "pc": [ - 385, - 386 - ] - }, - { - "teal": 460, - "source": 62, - "pc": [ - 387, - 388 - ] - }, - { - "teal": 461, - "source": 62, - "pc": [ - 389 - ] - }, - { - "teal": 462, - "source": 62, - "pc": [ - 390 - ] - }, - { - "teal": 463, - "source": 61, - "pc": [ - 391 - ] - }, - { - "teal": 468, - "source": 65, - "pc": [ - 392, - 393, - 394 - ] - }, - { - "teal": 469, - "source": 65, - "pc": [ - 395 - ] - }, - { - "teal": 470, - "source": 65, - "pc": [ - 396 - ] - }, - { - "teal": 471, - "source": 65, - "pc": [ - 397 - ] - }, - { - "teal": 472, - "source": 65, - "pc": [ - 398 - ] - }, - { - "teal": 475, - "source": 65, - "errorMessage": "argument 0 (a) for totalBoxBytes must be a address", - "pc": [ - 399 - ] - }, - { - "teal": 478, - "source": 65, - "pc": [ - 400, - 401, - 402 - ] - }, - { - "teal": 479, - "source": 65, - "pc": [ - 403 - ] - }, - { - "teal": 480, - "source": 65, - "pc": [ - 404 - ] - }, - { - "teal": 484, - "source": 65, - "pc": [ - 405, - 406, - 407 - ] - }, - { - "teal": 488, - "source": 66, - "pc": [ - 408, - 409 - ] - }, - { - "teal": 489, - "source": 66, - "pc": [ - 410, - 411 - ] - }, - { - "teal": 490, - "source": 66, - "pc": [ - 412 - ] - }, - { - "teal": 491, - "source": 66, - "pc": [ - 413 - ] - }, - { - "teal": 492, - "source": 65, - "pc": [ - 414 - ] - }, - { - "teal": 495, - "source": 4, - "pc": [ - 415 - ] - }, - { - "teal": 496, - "source": 4, - "pc": [ - 416 - ] - }, - { - "teal": 499, - "source": 4, - "pc": [ - 417, - 418, - 419, - 420, - 421, - 422 - ] - }, - { - "teal": 500, - "source": 4, - "pc": [ - 423, - 424, - 425 - ] - }, - { - "teal": 501, - "source": 4, - "pc": [ - 426, - 427, - 428, - 429 - ] - }, - { - "teal": 504, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 430 - ] - }, - { - "teal": 507, - "source": 4, - "pc": [ - 431, - 432, - 433, - 434, - 435, - 436 - ] - }, - { - "teal": 508, - "source": 4, - "pc": [ - 437, - 438, - 439, - 440, - 441, - 442 - ] - }, - { - "teal": 509, - "source": 4, - "pc": [ - 443, - 444, - 445, - 446, - 447, - 448 - ] - }, - { - "teal": 510, - "source": 4, - "pc": [ - 449, - 450, - 451, - 452, - 453, - 454 - ] - }, - { - "teal": 511, - "source": 4, - "pc": [ - 455, - 456, - 457, - 458, - 459, - 460 - ] - }, - { - "teal": 512, - "source": 4, - "pc": [ - 461, - 462, - 463, - 464, - 465, - 466 - ] - }, - { - "teal": 513, - "source": 4, - "pc": [ - 467, - 468, - 469, - 470, - 471, - 472 - ] - }, - { - "teal": 514, - "source": 4, - "pc": [ - 473, - 474, - 475, - 476, - 477, - 478 - ] - }, - { - "teal": 515, - "source": 4, - "pc": [ - 479, - 480, - 481, - 482, - 483, - 484 - ] - }, - { - "teal": 516, - "source": 4, - "pc": [ - 485, - 486, - 487, - 488, - 489, - 490 - ] - }, - { - "teal": 517, - "source": 4, - "pc": [ - 491, - 492, - 493, - 494, - 495, - 496 - ] - }, - { - "teal": 518, - "source": 4, - "pc": [ - 497, - 498, - 499, - 500, - 501, - 502 - ] - }, - { - "teal": 519, - "source": 4, - "pc": [ - 503, - 504, - 505, - 506, - 507, - 508 - ] - }, - { - "teal": 520, - "source": 4, - "pc": [ - 509, - 510, - 511, - 512, - 513, - 514 - ] - }, - { - "teal": 521, - "source": 4, - "pc": [ - 515, - 516, - 517, - 518, - 519, - 520 - ] - }, - { - "teal": 522, - "source": 4, - "pc": [ - 521, - 522, - 523, - 524, - 525, - 526 - ] - }, - { - "teal": 523, - "source": 4, - "pc": [ - 527, - 528, - 529 - ] - }, - { - "teal": 524, - "source": 4, - "pc": [ - 530, - 531, - 532, - 533, - 534, - 535, - 536, - 537, - 538, - 539, - 540, - 541, - 542, - 543, - 544, - 545, - 546, - 547, - 548, - 549, - 550, - 551, - 552, - 553, - 554, - 555, - 556, - 557, - 558, - 559, - 560, - 561, - 562, - 563 - ] - }, - { - "teal": 527, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 564 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 6, + 7 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 8 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 9, + 10 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 11 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 12, + 13 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 14 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 41 + ] + }, + { + "teal": 28, + "source": 5, + "pc": [ + 42, + 43, + 44 + ] + }, + { + "teal": 29, + "source": 5, + "pc": [ + 45 + ] + }, + { + "teal": 30, + "source": 5, + "pc": [ + 46 + ] + }, + { + "teal": 31, + "source": 5, + "pc": [ + 47 + ] + }, + { + "teal": 32, + "source": 5, + "pc": [ + 48 + ] + }, + { + "teal": 35, + "source": 5, + "errorMessage": "argument 0 (a) for hasAsset must be a address", + "pc": [ + 49 + ] + }, + { + "teal": 38, + "source": 5, + "pc": [ + 50, + 51, + 52 + ] + }, + { + "teal": 39, + "source": 5, + "pc": [ + 53 + ] + }, + { + "teal": 40, + "source": 5, + "pc": [ + 54 + ] + }, + { + "teal": 44, + "source": 5, + "pc": [ + 55, + 56, + 57 + ] + }, + { + "teal": 48, + "source": 6, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 49, + "source": 6, + "pc": [ + 60 + ] + }, + { + "teal": 50, + "source": 6, + "pc": [ + 61, + 62 + ] + }, + { + "teal": 51, + "source": 6, + "pc": [ + 63 + ] + }, + { + "teal": 52, + "source": 6, + "pc": [ + 64 + ] + }, + { + "teal": 53, + "source": 6, + "pc": [ + 65 + ] + }, + { + "teal": 54, + "source": 5, + "pc": [ + 66 + ] + }, + { + "teal": 59, + "source": 9, + "pc": [ + 67, + 68, + 69 + ] + }, + { + "teal": 60, + "source": 9, + "pc": [ + 70 + ] + }, + { + "teal": 61, + "source": 9, + "pc": [ + 71 + ] + }, + { + "teal": 62, + "source": 9, + "pc": [ + 72 + ] + }, + { + "teal": 63, + "source": 9, + "pc": [ + 73 + ] + }, + { + "teal": 66, + "source": 9, + "errorMessage": "argument 0 (a) for assetBalance must be a address", + "pc": [ + 74 + ] + }, + { + "teal": 69, + "source": 9, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 70, + "source": 9, + "pc": [ + 78 + ] + }, + { + "teal": 71, + "source": 9, + "pc": [ + 79 + ] + }, + { + "teal": 75, + "source": 9, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 79, + "source": 10, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 80, + "source": 10, + "pc": [ + 85 + ] + }, + { + "teal": 81, + "source": 10, + "pc": [ + 86, + 87 + ] + }, + { + "teal": 82, + "source": 10, + "pc": [ + 88 + ] + }, + { + "teal": 83, + "source": 10, + "pc": [ + 89 + ] + }, + { + "teal": 84, + "source": 9, + "pc": [ + 90 + ] + }, + { + "teal": 89, + "source": 13, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 90, + "source": 13, + "pc": [ + 94 + ] + }, + { + "teal": 91, + "source": 13, + "pc": [ + 95 + ] + }, + { + "teal": 92, + "source": 13, + "pc": [ + 96 + ] + }, + { + "teal": 93, + "source": 13, + "pc": [ + 97 + ] + }, + { + "teal": 96, + "source": 13, + "errorMessage": "argument 0 (a) for assetFrozen must be a address", + "pc": [ + 98 + ] + }, + { + "teal": 99, + "source": 13, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 100, + "source": 13, + "pc": [ + 102 + ] + }, + { + "teal": 101, + "source": 13, + "pc": [ + 103 + ] + }, + { + "teal": 105, + "source": 13, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 109, + "source": 14, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 110, + "source": 14, + "pc": [ + 109 + ] + }, + { + "teal": 111, + "source": 14, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 112, + "source": 14, + "pc": [ + 112 + ] + }, + { + "teal": 113, + "source": 14, + "pc": [ + 113 + ] + }, + { + "teal": 114, + "source": 13, + "pc": [ + 114 + ] + }, + { + "teal": 119, + "source": 17, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 120, + "source": 17, + "pc": [ + 118 + ] + }, + { + "teal": 121, + "source": 17, + "pc": [ + 119 + ] + }, + { + "teal": 122, + "source": 17, + "pc": [ + 120 + ] + }, + { + "teal": 123, + "source": 17, + "pc": [ + 121 + ] + }, + { + "teal": 126, + "source": 17, + "errorMessage": "argument 0 (a) for hasBalance must be a address", + "pc": [ + 122 + ] + }, + { + "teal": 129, + "source": 17, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 130, + "source": 17, + "pc": [ + 126 + ] + }, + { + "teal": 131, + "source": 17, + "pc": [ + 127 + ] + }, + { + "teal": 135, + "source": 17, + "pc": [ + 128, + 129, + 130 + ] + }, + { + "teal": 139, + "source": 18, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 140, + "source": 18, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 141, + "source": 18, + "pc": [ + 135 + ] + }, + { + "teal": 142, + "source": 18, + "pc": [ + 136 + ] + }, + { + "teal": 143, + "source": 18, + "pc": [ + 137 + ] + }, + { + "teal": 144, + "source": 17, + "pc": [ + 138 + ] + }, + { + "teal": 149, + "source": 21, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 150, + "source": 21, + "pc": [ + 142 + ] + }, + { + "teal": 151, + "source": 21, + "pc": [ + 143 + ] + }, + { + "teal": 152, + "source": 21, + "pc": [ + 144 + ] + }, + { + "teal": 153, + "source": 21, + "pc": [ + 145 + ] + }, + { + "teal": 156, + "source": 21, + "errorMessage": "argument 0 (a) for balance must be a address", + "pc": [ + 146 + ] + }, + { + "teal": 159, + "source": 21, + "pc": [ + 147, + 148, + 149 + ] + }, + { + "teal": 160, + "source": 21, + "pc": [ + 150 + ] + }, + { + "teal": 161, + "source": 21, + "pc": [ + 151 + ] + }, + { + "teal": 165, + "source": 21, + "pc": [ + 152, + 153, + 154 + ] + }, + { + "teal": 169, + "source": 22, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 170, + "source": 22, + "pc": [ + 157, + 158 + ] + }, + { + "teal": 171, + "source": 22, + "pc": [ + 159 + ] + }, + { + "teal": 172, + "source": 22, + "pc": [ + 160 + ] + }, + { + "teal": 173, + "source": 21, + "pc": [ + 161 + ] + }, + { + "teal": 178, + "source": 25, + "pc": [ + 162, + 163, + 164 + ] + }, + { + "teal": 179, + "source": 25, + "pc": [ + 165 + ] + }, + { + "teal": 180, + "source": 25, + "pc": [ + 166 + ] + }, + { + "teal": 181, + "source": 25, + "pc": [ + 167 + ] + }, + { + "teal": 182, + "source": 25, + "pc": [ + 168 + ] + }, + { + "teal": 185, + "source": 25, + "errorMessage": "argument 0 (a) for minBalance must be a address", + "pc": [ + 169 + ] + }, + { + "teal": 188, + "source": 25, + "pc": [ + 170, + 171, + 172 + ] + }, + { + "teal": 189, + "source": 25, + "pc": [ + 173 + ] + }, + { + "teal": 190, + "source": 25, + "pc": [ + 174 + ] + }, + { + "teal": 194, + "source": 25, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 198, + "source": 26, + "pc": [ + 178, + 179 + ] + }, + { + "teal": 199, + "source": 26, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 200, + "source": 26, + "pc": [ + 182 + ] + }, + { + "teal": 201, + "source": 26, + "pc": [ + 183 + ] + }, + { + "teal": 202, + "source": 25, + "pc": [ + 184 + ] + }, + { + "teal": 207, + "source": 29, + "pc": [ + 185, + 186, + 187 + ] + }, + { + "teal": 208, + "source": 29, + "pc": [ + 188 + ] + }, + { + "teal": 209, + "source": 29, + "pc": [ + 189 + ] + }, + { + "teal": 210, + "source": 29, + "pc": [ + 190 + ] + }, + { + "teal": 211, + "source": 29, + "pc": [ + 191 + ] + }, + { + "teal": 214, + "source": 29, + "errorMessage": "argument 0 (a) for authAddr must be a address", + "pc": [ + 192 + ] + }, + { + "teal": 217, + "source": 29, + "pc": [ + 193, + 194, + 195 + ] + }, + { + "teal": 218, + "source": 29, + "pc": [ + 196 + ] + }, + { + "teal": 219, + "source": 29, + "pc": [ + 197 + ] + }, + { + "teal": 223, + "source": 29, + "pc": [ + 198, + 199, + 200 + ] + }, + { + "teal": 227, + "source": 30, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 228, + "source": 30, + "pc": [ + 203, + 204 + ] + }, + { + "teal": 229, + "source": 30, + "pc": [ + 205 + ] + }, + { + "teal": 230, + "source": 30, + "pc": [ + 206 + ] + }, + { + "teal": 231, + "source": 29, + "pc": [ + 207 + ] + }, + { + "teal": 236, + "source": 33, + "pc": [ + 208, + 209, + 210 + ] + }, + { + "teal": 237, + "source": 33, + "pc": [ + 211 + ] + }, + { + "teal": 238, + "source": 33, + "pc": [ + 212 + ] + }, + { + "teal": 239, + "source": 33, + "pc": [ + 213 + ] + }, + { + "teal": 240, + "source": 33, + "pc": [ + 214 + ] + }, + { + "teal": 243, + "source": 33, + "errorMessage": "argument 0 (a) for totalNumUint must be a address", + "pc": [ + 215 + ] + }, + { + "teal": 246, + "source": 33, + "pc": [ + 216, + 217, + 218 + ] + }, + { + "teal": 247, + "source": 33, + "pc": [ + 219 + ] + }, + { + "teal": 248, + "source": 33, + "pc": [ + 220 + ] + }, + { + "teal": 252, + "source": 33, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 256, + "source": 34, + "pc": [ + 224, + 225 + ] + }, + { + "teal": 257, + "source": 34, + "pc": [ + 226, + 227 + ] + }, + { + "teal": 258, + "source": 34, + "pc": [ + 228 + ] + }, + { + "teal": 259, + "source": 34, + "pc": [ + 229 + ] + }, + { + "teal": 260, + "source": 33, + "pc": [ + 230 + ] + }, + { + "teal": 265, + "source": 37, + "pc": [ + 231, + 232, + 233 + ] + }, + { + "teal": 266, + "source": 37, + "pc": [ + 234 + ] + }, + { + "teal": 267, + "source": 37, + "pc": [ + 235 + ] + }, + { + "teal": 268, + "source": 37, + "pc": [ + 236 + ] + }, + { + "teal": 269, + "source": 37, + "pc": [ + 237 + ] + }, + { + "teal": 272, + "source": 37, + "errorMessage": "argument 0 (a) for totalNumByteSlice must be a address", + "pc": [ + 238 + ] + }, + { + "teal": 275, + "source": 37, + "pc": [ + 239, + 240, + 241 + ] + }, + { + "teal": 276, + "source": 37, + "pc": [ + 242 + ] + }, + { + "teal": 277, + "source": 37, + "pc": [ + 243 + ] + }, + { + "teal": 281, + "source": 37, + "pc": [ + 244, + 245, + 246 + ] + }, + { + "teal": 285, + "source": 38, + "pc": [ + 247, + 248 + ] + }, + { + "teal": 286, + "source": 38, + "pc": [ + 249, + 250 + ] + }, + { + "teal": 287, + "source": 38, + "pc": [ + 251 + ] + }, + { + "teal": 288, + "source": 38, + "pc": [ + 252 + ] + }, + { + "teal": 289, + "source": 37, + "pc": [ + 253 + ] + }, + { + "teal": 294, + "source": 41, + "pc": [ + 254, + 255, + 256 + ] + }, + { + "teal": 295, + "source": 41, + "pc": [ + 257 + ] + }, + { + "teal": 296, + "source": 41, + "pc": [ + 258 + ] + }, + { + "teal": 297, + "source": 41, + "pc": [ + 259 + ] + }, + { + "teal": 298, + "source": 41, + "pc": [ + 260 + ] + }, + { + "teal": 301, + "source": 41, + "errorMessage": "argument 0 (a) for totalExtraAppPages must be a address", + "pc": [ + 261 + ] + }, + { + "teal": 304, + "source": 41, + "pc": [ + 262, + 263, + 264 + ] + }, + { + "teal": 305, + "source": 41, + "pc": [ + 265 + ] + }, + { + "teal": 306, + "source": 41, + "pc": [ + 266 + ] + }, + { + "teal": 310, + "source": 41, + "pc": [ + 267, + 268, + 269 + ] + }, + { + "teal": 314, + "source": 42, + "pc": [ + 270, + 271 + ] + }, + { + "teal": 315, + "source": 42, + "pc": [ + 272, + 273 + ] + }, + { + "teal": 316, + "source": 42, + "pc": [ + 274 + ] + }, + { + "teal": 317, + "source": 42, + "pc": [ + 275 + ] + }, + { + "teal": 318, + "source": 41, + "pc": [ + 276 + ] + }, + { + "teal": 323, + "source": 45, + "pc": [ + 277, + 278, + 279 + ] + }, + { + "teal": 324, + "source": 45, + "pc": [ + 280 + ] + }, + { + "teal": 325, + "source": 45, + "pc": [ + 281 + ] + }, + { + "teal": 326, + "source": 45, + "pc": [ + 282 + ] + }, + { + "teal": 327, + "source": 45, + "pc": [ + 283 + ] + }, + { + "teal": 330, + "source": 45, + "errorMessage": "argument 0 (a) for totalAppsCreated must be a address", + "pc": [ + 284 + ] + }, + { + "teal": 333, + "source": 45, + "pc": [ + 285, + 286, + 287 + ] + }, + { + "teal": 334, + "source": 45, + "pc": [ + 288 + ] + }, + { + "teal": 335, + "source": 45, + "pc": [ + 289 + ] + }, + { + "teal": 339, + "source": 45, + "pc": [ + 290, + 291, + 292 + ] + }, + { + "teal": 343, + "source": 46, + "pc": [ + 293, + 294 + ] + }, + { + "teal": 344, + "source": 46, + "pc": [ + 295, + 296 + ] + }, + { + "teal": 345, + "source": 46, + "pc": [ + 297 + ] + }, + { + "teal": 346, + "source": 46, + "pc": [ + 298 + ] + }, + { + "teal": 347, + "source": 45, + "pc": [ + 299 + ] + }, + { + "teal": 352, + "source": 49, + "pc": [ + 300, + 301, + 302 + ] + }, + { + "teal": 353, + "source": 49, + "pc": [ + 303 + ] + }, + { + "teal": 354, + "source": 49, + "pc": [ + 304 + ] + }, + { + "teal": 355, + "source": 49, + "pc": [ + 305 + ] + }, + { + "teal": 356, + "source": 49, + "pc": [ + 306 + ] + }, + { + "teal": 359, + "source": 49, + "errorMessage": "argument 0 (a) for totalAppsOptedIn must be a address", + "pc": [ + 307 + ] + }, + { + "teal": 362, + "source": 49, + "pc": [ + 308, + 309, + 310 + ] + }, + { + "teal": 363, + "source": 49, + "pc": [ + 311 + ] + }, + { + "teal": 364, + "source": 49, + "pc": [ + 312 + ] + }, + { + "teal": 368, + "source": 49, + "pc": [ + 313, + 314, + 315 + ] + }, + { + "teal": 372, + "source": 50, + "pc": [ + 316, + 317 + ] + }, + { + "teal": 373, + "source": 50, + "pc": [ + 318, + 319 + ] + }, + { + "teal": 374, + "source": 50, + "pc": [ + 320 + ] + }, + { + "teal": 375, + "source": 50, + "pc": [ + 321 + ] + }, + { + "teal": 376, + "source": 49, + "pc": [ + 322 + ] + }, + { + "teal": 381, + "source": 53, + "pc": [ + 323, + 324, + 325 + ] + }, + { + "teal": 382, + "source": 53, + "pc": [ + 326 + ] + }, + { + "teal": 383, + "source": 53, + "pc": [ + 327 + ] + }, + { + "teal": 384, + "source": 53, + "pc": [ + 328 + ] + }, + { + "teal": 385, + "source": 53, + "pc": [ + 329 + ] + }, + { + "teal": 388, + "source": 53, + "errorMessage": "argument 0 (a) for totalAssetsCreated must be a address", + "pc": [ + 330 + ] + }, + { + "teal": 391, + "source": 53, + "pc": [ + 331, + 332, + 333 + ] + }, + { + "teal": 392, + "source": 53, + "pc": [ + 334 + ] + }, + { + "teal": 393, + "source": 53, + "pc": [ + 335 + ] + }, + { + "teal": 397, + "source": 53, + "pc": [ + 336, + 337, + 338 + ] + }, + { + "teal": 401, + "source": 54, + "pc": [ + 339, + 340 + ] + }, + { + "teal": 402, + "source": 54, + "pc": [ + 341, + 342 + ] + }, + { + "teal": 403, + "source": 54, + "pc": [ + 343 + ] + }, + { + "teal": 404, + "source": 54, + "pc": [ + 344 + ] + }, + { + "teal": 405, + "source": 53, + "pc": [ + 345 + ] + }, + { + "teal": 410, + "source": 57, + "pc": [ + 346, + 347, + 348 + ] + }, + { + "teal": 411, + "source": 57, + "pc": [ + 349 + ] + }, + { + "teal": 412, + "source": 57, + "pc": [ + 350 + ] + }, + { + "teal": 413, + "source": 57, + "pc": [ + 351 + ] + }, + { + "teal": 414, + "source": 57, + "pc": [ + 352 + ] + }, + { + "teal": 417, + "source": 57, + "errorMessage": "argument 0 (a) for totalAssets must be a address", + "pc": [ + 353 + ] + }, + { + "teal": 420, + "source": 57, + "pc": [ + 354, + 355, + 356 + ] + }, + { + "teal": 421, + "source": 57, + "pc": [ + 357 + ] + }, + { + "teal": 422, + "source": 57, + "pc": [ + 358 + ] + }, + { + "teal": 426, + "source": 57, + "pc": [ + 359, + 360, + 361 + ] + }, + { + "teal": 430, + "source": 58, + "pc": [ + 362, + 363 + ] + }, + { + "teal": 431, + "source": 58, + "pc": [ + 364, + 365 + ] + }, + { + "teal": 432, + "source": 58, + "pc": [ + 366 + ] + }, + { + "teal": 433, + "source": 58, + "pc": [ + 367 + ] + }, + { + "teal": 434, + "source": 57, + "pc": [ + 368 + ] + }, + { + "teal": 439, + "source": 61, + "pc": [ + 369, + 370, + 371 + ] + }, + { + "teal": 440, + "source": 61, + "pc": [ + 372 + ] + }, + { + "teal": 441, + "source": 61, + "pc": [ + 373 + ] + }, + { + "teal": 442, + "source": 61, + "pc": [ + 374 + ] + }, + { + "teal": 443, + "source": 61, + "pc": [ + 375 + ] + }, + { + "teal": 446, + "source": 61, + "errorMessage": "argument 0 (a) for totalBoxes must be a address", + "pc": [ + 376 + ] + }, + { + "teal": 449, + "source": 61, + "pc": [ + 377, + 378, + 379 + ] + }, + { + "teal": 450, + "source": 61, + "pc": [ + 380 + ] + }, + { + "teal": 451, + "source": 61, + "pc": [ + 381 + ] + }, + { + "teal": 455, + "source": 61, + "pc": [ + 382, + 383, + 384 + ] + }, + { + "teal": 459, + "source": 62, + "pc": [ + 385, + 386 + ] + }, + { + "teal": 460, + "source": 62, + "pc": [ + 387, + 388 + ] + }, + { + "teal": 461, + "source": 62, + "pc": [ + 389 + ] + }, + { + "teal": 462, + "source": 62, + "pc": [ + 390 + ] + }, + { + "teal": 463, + "source": 61, + "pc": [ + 391 + ] + }, + { + "teal": 468, + "source": 65, + "pc": [ + 392, + 393, + 394 + ] + }, + { + "teal": 469, + "source": 65, + "pc": [ + 395 + ] + }, + { + "teal": 470, + "source": 65, + "pc": [ + 396 + ] + }, + { + "teal": 471, + "source": 65, + "pc": [ + 397 + ] + }, + { + "teal": 472, + "source": 65, + "pc": [ + 398 + ] + }, + { + "teal": 475, + "source": 65, + "errorMessage": "argument 0 (a) for totalBoxBytes must be a address", + "pc": [ + 399 + ] + }, + { + "teal": 478, + "source": 65, + "pc": [ + 400, + 401, + 402 + ] + }, + { + "teal": 479, + "source": 65, + "pc": [ + 403 + ] + }, + { + "teal": 480, + "source": 65, + "pc": [ + 404 + ] + }, + { + "teal": 484, + "source": 65, + "pc": [ + 405, + 406, + 407 + ] + }, + { + "teal": 488, + "source": 66, + "pc": [ + 408, + 409 + ] + }, + { + "teal": 489, + "source": 66, + "pc": [ + 410, + 411 + ] + }, + { + "teal": 490, + "source": 66, + "pc": [ + 412 + ] + }, + { + "teal": 491, + "source": 66, + "pc": [ + 413 + ] + }, + { + "teal": 492, + "source": 65, + "pc": [ + 414 + ] + }, + { + "teal": 495, + "source": 4, + "pc": [ + 415 + ] + }, + { + "teal": 496, + "source": 4, + "pc": [ + 416 + ] + }, + { + "teal": 499, + "source": 4, + "pc": [ + 417, + 418, + 419, + 420, + 421, + 422 + ] + }, + { + "teal": 500, + "source": 4, + "pc": [ + 423, + 424, + 425 + ] + }, + { + "teal": 501, + "source": 4, + "pc": [ + 426, + 427, + 428, + 429 + ] + }, + { + "teal": 504, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 430 + ] + }, + { + "teal": 507, + "source": 4, + "pc": [ + 431, + 432, + 433, + 434, + 435, + 436 + ] + }, + { + "teal": 508, + "source": 4, + "pc": [ + 437, + 438, + 439, + 440, + 441, + 442 + ] + }, + { + "teal": 509, + "source": 4, + "pc": [ + 443, + 444, + 445, + 446, + 447, + 448 + ] + }, + { + "teal": 510, + "source": 4, + "pc": [ + 449, + 450, + 451, + 452, + 453, + 454 + ] + }, + { + "teal": 511, + "source": 4, + "pc": [ + 455, + 456, + 457, + 458, + 459, + 460 + ] + }, + { + "teal": 512, + "source": 4, + "pc": [ + 461, + 462, + 463, + 464, + 465, + 466 + ] + }, + { + "teal": 513, + "source": 4, + "pc": [ + 467, + 468, + 469, + 470, + 471, + 472 + ] + }, + { + "teal": 514, + "source": 4, + "pc": [ + 473, + 474, + 475, + 476, + 477, + 478 + ] + }, + { + "teal": 515, + "source": 4, + "pc": [ + 479, + 480, + 481, + 482, + 483, + 484 + ] + }, + { + "teal": 516, + "source": 4, + "pc": [ + 485, + 486, + 487, + 488, + 489, + 490 + ] + }, + { + "teal": 517, + "source": 4, + "pc": [ + 491, + 492, + 493, + 494, + 495, + 496 + ] + }, + { + "teal": 518, + "source": 4, + "pc": [ + 497, + 498, + 499, + 500, + 501, + 502 + ] + }, + { + "teal": 519, + "source": 4, + "pc": [ + 503, + 504, + 505, + 506, + 507, + 508 + ] + }, + { + "teal": 520, + "source": 4, + "pc": [ + 509, + 510, + 511, + 512, + 513, + 514 + ] + }, + { + "teal": 521, + "source": 4, + "pc": [ + 515, + 516, + 517, + 518, + 519, + 520 + ] + }, + { + "teal": 522, + "source": 4, + "pc": [ + 521, + 522, + 523, + 524, + 525, + 526 + ] + }, + { + "teal": 523, + "source": 4, + "pc": [ + 527, + 528, + 529 + ] + }, + { + "teal": 524, + "source": 4, + "pc": [ + 530, + 531, + 532, + 533, + 534, + 535, + 536, + 537, + 538, + 539, + 540, + 541, + 542, + 543, + 544, + 545, + 546, + 547, + 548, + 549, + 550, + 551, + 552, + 553, + 554, + 555, + 556, + 557, + 558, + 559, + 560, + 561, + 562, + 563 + ] + }, + { + "teal": 527, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 564 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBoYXNBc3NldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9oYXNBc3NldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0Fzc2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGhhc0Fzc2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBoYXNBc3NldAoJaW50IDEKCXJldHVybgoKLy8gaGFzQXNzZXQoYTogQWRkcmVzcyk6IHZvaWQKaGFzQXNzZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjYKCS8vIGFzc2VydChhLmlzT3B0ZWRJblRvQXNzZXQoQXNzZXRJRC5mcm9tVWludDY0KDEyMykpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWludCAxMjMKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYXNzZXRCYWxhbmNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0QmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0QmFsYW5jZSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBhc3NldEJhbGFuY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGFzc2V0QmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRCYWxhbmNlKGE6IEFkZHJlc3MpOiB2b2lkCmFzc2V0QmFsYW5jZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MTAKCS8vIGFzc2VydChhLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBhc3NldEZyb3plbihhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hc3NldEZyb3plbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0RnJvemVuIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBhc3NldEZyb3plbgoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcm96ZW4oYTogQWRkcmVzcyk6IHZvaWQKYXNzZXRGcm96ZW46Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoYS5hc3NldEZyb3plbihBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRGcm96ZW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGhhc0JhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfaGFzQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0JhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgaGFzQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gaGFzQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApoYXNCYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEuaXNJbkxlZGdlcikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApiYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEuYmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIG1pbkJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbWluQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIG1pbkJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWluQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWluQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gbWluQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZAptaW5CYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEubWluQmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGF1dGhBZGRyKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2F1dGhBZGRyOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYXV0aEFkZHIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXV0aEFkZHIoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGF1dGhBZGRyCglpbnQgMQoJcmV0dXJuCgovLyBhdXRoQWRkcihhOiBBZGRyZXNzKTogdm9pZAphdXRoQWRkcjoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzAKCS8vIGxvZyhhLmF1dGhBZGRyKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJbG9nCglyZXRzdWIKCi8vIHRvdGFsTnVtVWludChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbE51bVVpbnQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbE51bVVpbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1VaW50KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbE51bVVpbnQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsTnVtVWludChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bVVpbnQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjM0CgkvLyBhc3NlcnQoYS50b3RhbE51bVVpbnQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbE51bVVpbnQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsTnVtQnl0ZVNsaWNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxOdW1CeXRlU2xpY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1CeXRlU2xpY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsTnVtQnl0ZVNsaWNlCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbE51bUJ5dGVTbGljZShhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bUJ5dGVTbGljZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzgKCS8vIGFzc2VydChhLnRvdGFsTnVtQnl0ZVNsaWNlKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxOdW1CeXRlU2xpY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEV4dHJhQXBwUGFnZXM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEV4dHJhQXBwUGFnZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxFeHRyYUFwcFBhZ2VzKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEV4dHJhQXBwUGFnZXMKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEV4dHJhQXBwUGFnZXM6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjQyCgkvLyBhc3NlcnQoYS50b3RhbEV4dHJhQXBwUGFnZXMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEV4dHJhQXBwUGFnZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzQ3JlYXRlZChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzQ3JlYXRlZAoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNDcmVhdGVkOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo0NgoJLy8gYXNzZXJ0KGEudG90YWxBcHBzQ3JlYXRlZCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc09wdGVkSW4oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzT3B0ZWRJbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc09wdGVkSW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzT3B0ZWRJbihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzT3B0ZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzT3B0ZWRJbihhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNPcHRlZEluOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo1MAoJLy8gYXNzZXJ0KGEudG90YWxBcHBzT3B0ZWRJbikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc09wdGVkSW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEFzc2V0c0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEFzc2V0c0NyZWF0ZWQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0c0NyZWF0ZWQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjU0CgkvLyBhc3NlcnQoYS50b3RhbEFzc2V0c0NyZWF0ZWQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEFzc2V0c0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsQXNzZXRzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxBc3NldHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsQXNzZXRzCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbEFzc2V0cyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6NTgKCS8vIGFzc2VydChhLnRvdGFsQXNzZXRzKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxBc3NldHMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2MgoJLy8gYXNzZXJ0KGEudG90YWxCb3hlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94Qnl0ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hCeXRlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94Qnl0ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hCeXRlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hCeXRlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveEJ5dGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2NgoJLy8gYXNzZXJ0KGEudG90YWxCb3hCeXRlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94Qnl0ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJoYXNBc3NldChhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0QmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImJhbGFuY2UoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJtaW5CYWxhbmNlKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXV0aEFkZHIoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bVVpbnQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bUJ5dGVTbGljZShhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEFwcHNPcHRlZEluKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHMoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEJveGVzKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2hhc0Fzc2V0ICphYmlfcm91dGVfYXNzZXRCYWxhbmNlICphYmlfcm91dGVfYXNzZXRGcm96ZW4gKmFiaV9yb3V0ZV9oYXNCYWxhbmNlICphYmlfcm91dGVfYmFsYW5jZSAqYWJpX3JvdXRlX21pbkJhbGFuY2UgKmFiaV9yb3V0ZV9hdXRoQWRkciAqYWJpX3JvdXRlX3RvdGFsTnVtVWludCAqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlICphYmlfcm91dGVfdG90YWxFeHRyYUFwcFBhZ2VzICphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZCAqYWJpX3JvdXRlX3RvdGFsQXBwc09wdGVkSW4gKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQgKmFiaV9yb3V0ZV90b3RhbEFzc2V0cyAqYWJpX3JvdXRlX3RvdGFsQm94ZXMgKmFiaV9yb3V0ZV90b3RhbEJveEJ5dGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBoYXNBc3NldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9oYXNBc3NldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0Fzc2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGhhc0Fzc2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBoYXNBc3NldAoJaW50IDEKCXJldHVybgoKLy8gaGFzQXNzZXQoYTogQWRkcmVzcyk6IHZvaWQKaGFzQXNzZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjYKCS8vIGFzc2VydChhLmlzT3B0ZWRJblRvQXNzZXQoQXNzZXRJRC5mcm9tVWludDY0KDEyMykpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWludCAxMjMKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYXNzZXRCYWxhbmNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0QmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0QmFsYW5jZSBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBhc3NldEJhbGFuY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGFzc2V0QmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRCYWxhbmNlKGE6IEFkZHJlc3MpOiB2b2lkCmFzc2V0QmFsYW5jZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MTAKCS8vIGFzc2VydChhLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBhc3NldEZyb3plbihhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9hc3NldEZyb3plbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGFzc2V0RnJvemVuIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBhc3NldEZyb3plbgoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcm96ZW4oYTogQWRkcmVzcyk6IHZvaWQKYXNzZXRGcm96ZW46Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjE0CgkvLyBhc3NlcnQoYS5hc3NldEZyb3plbihBc3NldElELmZyb21VaW50NjQoMTIzKSkpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJaW50IDEyMwoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRGcm96ZW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGhhc0JhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfaGFzQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGhhc0JhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgaGFzQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gaGFzQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApoYXNCYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEuaXNJbkxlZGdlcikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfYmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgYmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gYmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZApiYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEuYmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdEJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIG1pbkJhbGFuY2UoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbWluQmFsYW5jZToKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIG1pbkJhbGFuY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbWluQmFsYW5jZShhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbWluQmFsYW5jZQoJaW50IDEKCXJldHVybgoKLy8gbWluQmFsYW5jZShhOiBBZGRyZXNzKTogdm9pZAptaW5CYWxhbmNlOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEubWluQmFsYW5jZSkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdE1pbkJhbGFuY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGF1dGhBZGRyKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2F1dGhBZGRyOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgYXV0aEFkZHIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgYXV0aEFkZHIoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGF1dGhBZGRyCglpbnQgMQoJcmV0dXJuCgovLyBhdXRoQWRkcihhOiBBZGRyZXNzKTogdm9pZAphdXRoQWRkcjoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzAKCS8vIGxvZyhhLmF1dGhBZGRyKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0QXV0aEFkZHIKCXBvcAoJbG9nCglyZXRzdWIKCi8vIHRvdGFsTnVtVWludChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbE51bVVpbnQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbE51bVVpbnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1VaW50KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbE51bVVpbnQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsTnVtVWludChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bVVpbnQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjM0CgkvLyBhc3NlcnQoYS50b3RhbE51bVVpbnQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbE51bVVpbnQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsTnVtQnl0ZVNsaWNlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxOdW1CeXRlU2xpY2UgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxOdW1CeXRlU2xpY2UoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsTnVtQnl0ZVNsaWNlCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbE51bUJ5dGVTbGljZShhOiBBZGRyZXNzKTogdm9pZAp0b3RhbE51bUJ5dGVTbGljZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6MzgKCS8vIGFzc2VydChhLnRvdGFsTnVtQnl0ZVNsaWNlKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxOdW1CeXRlU2xpY2UKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEV4dHJhQXBwUGFnZXM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEV4dHJhQXBwUGFnZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxFeHRyYUFwcFBhZ2VzKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEV4dHJhQXBwUGFnZXMKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsRXh0cmFBcHBQYWdlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEV4dHJhQXBwUGFnZXM6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjQyCgkvLyBhc3NlcnQoYS50b3RhbEV4dHJhQXBwUGFnZXMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEV4dHJhQXBwUGFnZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzQ3JlYXRlZChhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzQ3JlYXRlZAoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNDcmVhdGVkOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo0NgoJLy8gYXNzZXJ0KGEudG90YWxBcHBzQ3JlYXRlZCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXBwc09wdGVkSW4oYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxBcHBzT3B0ZWRJbjoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQXBwc09wdGVkSW4gbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBcHBzT3B0ZWRJbihhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxBcHBzT3B0ZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdG90YWxBcHBzT3B0ZWRJbihhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFwcHNPcHRlZEluOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo1MAoJLy8gYXNzZXJ0KGEudG90YWxBcHBzT3B0ZWRJbikKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQXBwc09wdGVkSW4KCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQ6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciB0b3RhbEFzc2V0c0NyZWF0ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiB0b3RhbEFzc2V0c0NyZWF0ZWQKCWludCAxCglyZXR1cm4KCi8vIHRvdGFsQXNzZXRzQ3JlYXRlZChhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0c0NyZWF0ZWQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYWNjb3VudC5hbGdvLnRzOjU0CgkvLyBhc3NlcnQoYS50b3RhbEFzc2V0c0NyZWF0ZWQpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RUb3RhbEFzc2V0c0NyZWF0ZWQKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQXNzZXRzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX3RvdGFsQXNzZXRzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgdG90YWxBc3NldHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxBc3NldHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIHRvdGFsQXNzZXRzCglpbnQgMQoJcmV0dXJuCgovLyB0b3RhbEFzc2V0cyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEFzc2V0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9hY2NvdW50LmFsZ28udHM6NTgKCS8vIGFzc2VydChhLnRvdGFsQXNzZXRzKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWFjY3RfcGFyYW1zX2dldCBBY2N0VG90YWxBc3NldHMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2MgoJLy8gYXNzZXJ0KGEudG90YWxCb3hlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIHRvdGFsQm94Qnl0ZXMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfdG90YWxCb3hCeXRlczoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIHRvdGFsQm94Qnl0ZXMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgdG90YWxCb3hCeXRlcwoJaW50IDEKCXJldHVybgoKLy8gdG90YWxCb3hCeXRlcyhhOiBBZGRyZXNzKTogdm9pZAp0b3RhbEJveEJ5dGVzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2FjY291bnQuYWxnby50czo2NgoJLy8gYXNzZXJ0KGEudG90YWxCb3hCeXRlcykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglhY2N0X3BhcmFtc19nZXQgQWNjdFRvdGFsQm94Qnl0ZXMKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJoYXNBc3NldChhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0QmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImFzc2V0RnJvemVuKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiaGFzQmFsYW5jZShhZGRyZXNzKXZvaWQiCgltZXRob2QgImJhbGFuY2UoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJtaW5CYWxhbmNlKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAiYXV0aEFkZHIoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bVVpbnQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbE51bUJ5dGVTbGljZShhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsRXh0cmFBcHBQYWdlcyhhZGRyZXNzKXZvaWQiCgltZXRob2QgInRvdGFsQXBwc0NyZWF0ZWQoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEFwcHNPcHRlZEluKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHNDcmVhdGVkKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxBc3NldHMoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJ0b3RhbEJveGVzKGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAidG90YWxCb3hCeXRlcyhhZGRyZXNzKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2hhc0Fzc2V0ICphYmlfcm91dGVfYXNzZXRCYWxhbmNlICphYmlfcm91dGVfYXNzZXRGcm96ZW4gKmFiaV9yb3V0ZV9oYXNCYWxhbmNlICphYmlfcm91dGVfYmFsYW5jZSAqYWJpX3JvdXRlX21pbkJhbGFuY2UgKmFiaV9yb3V0ZV9hdXRoQWRkciAqYWJpX3JvdXRlX3RvdGFsTnVtVWludCAqYWJpX3JvdXRlX3RvdGFsTnVtQnl0ZVNsaWNlICphYmlfcm91dGVfdG90YWxFeHRyYUFwcFBhZ2VzICphYmlfcm91dGVfdG90YWxBcHBzQ3JlYXRlZCAqYWJpX3JvdXRlX3RvdGFsQXBwc09wdGVkSW4gKmFiaV9yb3V0ZV90b3RhbEFzc2V0c0NyZWF0ZWQgKmFiaV9yb3V0ZV90b3RhbEFzc2V0cyAqYWJpX3JvdXRlX3RvdGFsQm94ZXMgKmFiaV9yb3V0ZV90b3RhbEJveEJ5dGVzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/B.approval.teal b/tests/contracts/artifacts/B.approval.teal index 6179c2f30..11ccd0fc3 100644 --- a/tests/contracts/artifacts/B.approval.teal +++ b/tests/contracts/artifacts/B.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/B.arc32.json b/tests/contracts/artifacts/B.arc32.json index 22dc3a349..32bb2d8b8 100644 --- a/tests/contracts/artifacts/B.arc32.json +++ b/tests/contracts/artifacts/B.arc32.json @@ -53,7 +53,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/B.arc56_draft.json b/tests/contracts/artifacts/B.arc56_draft.json index 633d650d3..862b5c758 100644 --- a/tests/contracts/artifacts/B.arc56_draft.json +++ b/tests/contracts/artifacts/B.arc56_draft.json @@ -84,375 +84,378 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 20, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9 - ] - }, - { - "teal": 13, - "source": 20, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 14, - "source": 20, - "pc": [ - 12 - ] - }, - { - "teal": 15, - "source": 20, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 16, - "source": 20, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 20, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 20, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 20, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 20, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 15, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 29, - "source": 15, - "pc": [ - 49 - ] - }, - { - "teal": 30, - "source": 15, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 15, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 38, - "source": 16, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 16, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 16, - "pc": [ - 56 - ] - }, - { - "teal": 41, - "source": 15, - "pc": [ - 57 - ] - }, - { - "teal": 46, - "source": 23, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 47, - "source": 23, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 23, - "pc": [ - 62 - ] - }, - { - "teal": 52, - "source": 23, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 56, - "source": 24, - "pc": [ - 66 - ] - }, - { - "teal": 57, - "source": 24, - "pc": [ - 67 - ] - }, - { - "teal": 58, - "source": 24, - "pc": [ - 68 - ] - }, - { - "teal": 59, - "source": 24, - "pc": [ - 69 - ] - }, - { - "teal": 60, - "source": 24, - "pc": [ - 70 - ] - }, - { - "teal": 64, - "source": 25, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 65, - "source": 25, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 66, - "source": 25, - "pc": [ - 76 - ] - }, - { - "teal": 67, - "source": 23, - "pc": [ - 77 - ] - }, - { - "teal": 70, - "source": 20, - "pc": [ - 78 - ] - }, - { - "teal": 71, - "source": 20, - "pc": [ - 79 - ] - }, - { - "teal": 74, - "source": 20, - "pc": [ - 80, - 81, - 82, - 83, - 84, - 85 - ] - }, - { - "teal": 75, - "source": 20, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 76, - "source": 20, - "pc": [ - 89, - 90, - 91, - 92 - ] - }, - { - "teal": 79, - "source": 20, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 93 - ] - }, - { - "teal": 82, - "source": 20, - "pc": [ - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 83, - "source": 20, - "pc": [ - 100, - 101, - 102, - 103, - 104, - 105 - ] - }, - { - "teal": 84, - "source": 20, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 85, - "source": 20, - "pc": [ - 109, - 110, - 111, - 112, - 113, - 114 - ] - }, - { - "teal": 88, - "source": 20, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 115 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 20, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "teal": 13, + "source": 20, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 14, + "source": 20, + "pc": [ + 12 + ] + }, + { + "teal": 15, + "source": 20, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 16, + "source": 20, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 20, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 20, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 20, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 20, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 15, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 29, + "source": 15, + "pc": [ + 49 + ] + }, + { + "teal": 30, + "source": 15, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 15, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 38, + "source": 16, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 16, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 16, + "pc": [ + 56 + ] + }, + { + "teal": 41, + "source": 15, + "pc": [ + 57 + ] + }, + { + "teal": 46, + "source": 23, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 47, + "source": 23, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 23, + "pc": [ + 62 + ] + }, + { + "teal": 52, + "source": 23, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 56, + "source": 24, + "pc": [ + 66 + ] + }, + { + "teal": 57, + "source": 24, + "pc": [ + 67 + ] + }, + { + "teal": 58, + "source": 24, + "pc": [ + 68 + ] + }, + { + "teal": 59, + "source": 24, + "pc": [ + 69 + ] + }, + { + "teal": 60, + "source": 24, + "pc": [ + 70 + ] + }, + { + "teal": 64, + "source": 25, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 65, + "source": 25, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 66, + "source": 25, + "pc": [ + 76 + ] + }, + { + "teal": 67, + "source": 23, + "pc": [ + 77 + ] + }, + { + "teal": 70, + "source": 20, + "pc": [ + 78 + ] + }, + { + "teal": 71, + "source": 20, + "pc": [ + 79 + ] + }, + { + "teal": 74, + "source": 20, + "pc": [ + 80, + 81, + 82, + 83, + 84, + 85 + ] + }, + { + "teal": 75, + "source": 20, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 76, + "source": 20, + "pc": [ + 89, + 90, + 91, + 92 + ] + }, + { + "teal": 79, + "source": 20, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 93 + ] + }, + { + "teal": 82, + "source": 20, + "pc": [ + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 83, + "source": 20, + "pc": [ + 100, + 101, + 102, + 103, + 104, + 105 + ] + }, + { + "teal": 84, + "source": 20, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 85, + "source": 20, + "pc": [ + 109, + 110, + 111, + 112, + 113, + 114 + ] + }, + { + "teal": 88, + "source": 20, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 115 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/B2.approval.teal b/tests/contracts/artifacts/B2.approval.teal index 7bbb4654e..d887605ef 100644 --- a/tests/contracts/artifacts/B2.approval.teal +++ b/tests/contracts/artifacts/B2.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/B2.arc32.json b/tests/contracts/artifacts/B2.arc32.json index c4af41096..5e5d66197 100644 --- a/tests/contracts/artifacts/B2.arc32.json +++ b/tests/contracts/artifacts/B2.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYjIoKXZvaWQKKmFiaV9yb3V0ZV9iMjoKCS8vIGV4ZWN1dGUgYjIoKXZvaWQKCWNhbGxzdWIgYjIKCWludCAxCglyZXR1cm4KCi8vIGIyKCk6IHZvaWQKYjI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4OAoJLy8gbG9nKCdiMicpCglieXRlIDB4NjIzMiAvLyAiYjIiCglsb2cKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImIyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfYjIKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYjIoKXZvaWQKKmFiaV9yb3V0ZV9iMjoKCS8vIGV4ZWN1dGUgYjIoKXZvaWQKCWNhbGxzdWIgYjIKCWludCAxCglyZXR1cm4KCi8vIGIyKCk6IHZvaWQKYjI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4OAoJLy8gbG9nKCdiMicpCglieXRlIDB4NjIzMiAvLyAiYjIiCglsb2cKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImIyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfYjIKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/B2.arc56_draft.json b/tests/contracts/artifacts/B2.arc56_draft.json index 4fceda1c5..e2da86bee 100644 --- a/tests/contracts/artifacts/B2.arc56_draft.json +++ b/tests/contracts/artifacts/B2.arc56_draft.json @@ -79,331 +79,334 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 86, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 86, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 86, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 86, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 86, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 86, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 86, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 86, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 86, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 15, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 15, - "pc": [ - 43 - ] - }, - { - "teal": 30, - "source": 15, - "pc": [ - 44 - ] - }, - { - "teal": 34, - "source": 15, - "pc": [ - 45, - 46, - 47 - ] - }, - { - "teal": 38, - "source": 16, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 39, - "source": 16, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 40, - "source": 16, - "pc": [ - 54 - ] - }, - { - "teal": 41, - "source": 15, - "pc": [ - 55 - ] - }, - { - "teal": 46, - "source": 87, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 47, - "source": 87, - "pc": [ - 59 - ] - }, - { - "teal": 48, - "source": 87, - "pc": [ - 60 - ] - }, - { - "teal": 52, - "source": 87, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 56, - "source": 88, - "pc": [ - 64, - 65, - 66, - 67 - ] - }, - { - "teal": 57, - "source": 88, - "pc": [ - 68 - ] - }, - { - "teal": 58, - "source": 87, - "pc": [ - 69 - ] - }, - { - "teal": 61, - "source": 86, - "pc": [ - 70 - ] - }, - { - "teal": 62, - "source": 86, - "pc": [ - 71 - ] - }, - { - "teal": 65, - "source": 86, - "pc": [ - 72, - 73, - 74, - 75, - 76, - 77 - ] - }, - { - "teal": 66, - "source": 86, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 67, - "source": 86, - "pc": [ - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 70, - "source": 86, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 85 - ] - }, - { - "teal": 73, - "source": 86, - "pc": [ - 86, - 87, - 88, - 89, - 90, - 91 - ] - }, - { - "teal": 74, - "source": 86, - "pc": [ - 92, - 93, - 94, - 95, - 96, - 97 - ] - }, - { - "teal": 75, - "source": 86, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 76, - "source": 86, - "pc": [ - 101, - 102, - 103, - 104, - 105, - 106 - ] - }, - { - "teal": 79, - "source": 86, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 107 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 86, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 86, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 86, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 86, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 86, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 86, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 86, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 86, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 86, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 15, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 15, + "pc": [ + 43 + ] + }, + { + "teal": 30, + "source": 15, + "pc": [ + 44 + ] + }, + { + "teal": 34, + "source": 15, + "pc": [ + 45, + 46, + 47 + ] + }, + { + "teal": 38, + "source": 16, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 39, + "source": 16, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 40, + "source": 16, + "pc": [ + 54 + ] + }, + { + "teal": 41, + "source": 15, + "pc": [ + 55 + ] + }, + { + "teal": 46, + "source": 87, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 47, + "source": 87, + "pc": [ + 59 + ] + }, + { + "teal": 48, + "source": 87, + "pc": [ + 60 + ] + }, + { + "teal": 52, + "source": 87, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 56, + "source": 88, + "pc": [ + 64, + 65, + 66, + 67 + ] + }, + { + "teal": 57, + "source": 88, + "pc": [ + 68 + ] + }, + { + "teal": 58, + "source": 87, + "pc": [ + 69 + ] + }, + { + "teal": 61, + "source": 86, + "pc": [ + 70 + ] + }, + { + "teal": 62, + "source": 86, + "pc": [ + 71 + ] + }, + { + "teal": 65, + "source": 86, + "pc": [ + 72, + 73, + 74, + 75, + 76, + 77 + ] + }, + { + "teal": 66, + "source": 86, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 67, + "source": 86, + "pc": [ + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 70, + "source": 86, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 85 + ] + }, + { + "teal": 73, + "source": 86, + "pc": [ + 86, + 87, + 88, + 89, + 90, + 91 + ] + }, + { + "teal": 74, + "source": 86, + "pc": [ + 92, + 93, + 94, + 95, + 96, + 97 + ] + }, + { + "teal": 75, + "source": 86, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 76, + "source": 86, + "pc": [ + 101, + 102, + 103, + 104, + 105, + 106 + ] + }, + { + "teal": 79, + "source": 86, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 107 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYjIoKXZvaWQKKmFiaV9yb3V0ZV9iMjoKCS8vIGV4ZWN1dGUgYjIoKXZvaWQKCWNhbGxzdWIgYjIKCWludCAxCglyZXR1cm4KCi8vIGIyKCk6IHZvaWQKYjI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4OAoJLy8gbG9nKCdiMicpCglieXRlIDB4NjIzMiAvLyAiYjIiCglsb2cKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImIyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfYjIKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYjIoKXZvaWQKKmFiaV9yb3V0ZV9iMjoKCS8vIGV4ZWN1dGUgYjIoKXZvaWQKCWNhbGxzdWIgYjIKCWludCAxCglyZXR1cm4KCi8vIGIyKCk6IHZvaWQKYjI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4OAoJLy8gbG9nKCdiMicpCglieXRlIDB4NjIzMiAvLyAiYjIiCglsb2cKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImEoKXZvaWQiCgltZXRob2QgImIyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hICphYmlfcm91dGVfYjIKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/BasicLsig.lsig.teal b/tests/contracts/artifacts/BasicLsig.lsig.teal index e2c26e2da..b02952523 100644 --- a/tests/contracts/artifacts/BasicLsig.lsig.teal +++ b/tests/contracts/artifacts/BasicLsig.lsig.teal @@ -1,7 +1,7 @@ #pragma version 10 //#pragma mode logicsig -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // The address of this logic signature is XBBFEDSZ6KEUC76ZFV5LUYHAYYRKAXRJ7FYUSBWIBTNA4HUYLMHGKGYXPU diff --git a/tests/contracts/artifacts/BigComment.arc56_draft.json b/tests/contracts/artifacts/BigComment.arc56_draft.json index 3521123b3..0efdc0f56 100644 --- a/tests/contracts/artifacts/BigComment.arc56_draft.json +++ b/tests/contracts/artifacts/BigComment.arc56_draft.json @@ -60,641 +60,644 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 3, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 3 - }, - { - "teal": 14, - "source": 3, - "pc": [ - 39 - ] - }, - { - "teal": 15, - "source": 3 - }, - { - "teal": 16, - "source": 3 - }, - { - "teal": 17, - "source": 3, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 18, - "source": 3 - }, - { - "teal": 19, - "source": 3, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 23, - "source": 3, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 28, - "source": 6, - "pc": [ - 59 - ] - }, - { - "teal": 31, - "source": 6 - }, - { - "teal": 32, - "source": 6, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 33, - "source": 6 - }, - { - "teal": 34, - "source": 6, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192, - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223, - 224, - 225, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258, - 259, - 260, - 261, - 262, - 263, - 264, - 265, - 266, - 267, - 268, - 269, - 270, - 271, - 272, - 273, - 274, - 275, - 276, - 277, - 278, - 279, - 280, - 281, - 282, - 283, - 284, - 285, - 286, - 287, - 288, - 289, - 290, - 291, - 292, - 293, - 294, - 295, - 296, - 297, - 298, - 299, - 300, - 301, - 302, - 303, - 304, - 305, - 306, - 307, - 308, - 309, - 310, - 311, - 312, - 313, - 314, - 315, - 316, - 317, - 318, - 319, - 320, - 321, - 322, - 323, - 324, - 325, - 326, - 327, - 328, - 329, - 330, - 331, - 332, - 333, - 334, - 335, - 336, - 337, - 338, - 339, - 340, - 341, - 342, - 343, - 344, - 345, - 346, - 347, - 348, - 349, - 350, - 351, - 352, - 353, - 354, - 355, - 356, - 357, - 358, - 359, - 360, - 361, - 362, - 363, - 364, - 365, - 366, - 367, - 368, - 369, - 370, - 371, - 372, - 373, - 374, - 375, - 376, - 377, - 378, - 379, - 380, - 381, - 382, - 383, - 384, - 385, - 386, - 387, - 388, - 389, - 390, - 391, - 392, - 393, - 394, - 395, - 396, - 397, - 398, - 399, - 400, - 401, - 402, - 403, - 404, - 405, - 406, - 407, - 408, - 409, - 410, - 411, - 412, - 413, - 414, - 415, - 416, - 417, - 418, - 419, - 420, - 421, - 422, - 423, - 424, - 425, - 426, - 427, - 428, - 429, - 430, - 431, - 432, - 433, - 434, - 435, - 436, - 437, - 438, - 439, - 440, - 441, - 442, - 443, - 444, - 445, - 446, - 447, - 448, - 449, - 450, - 451, - 452, - 453, - 454, - 455, - 456, - 457, - 458, - 459, - 460, - 461, - 462, - 463, - 464, - 465, - 466, - 467, - 468, - 469, - 470, - 471, - 472, - 473, - 474, - 475, - 476, - 477, - 478, - 479, - 480, - 481, - 482, - 483, - 484, - 485, - 486, - 487, - 488, - 489, - 490, - 491, - 492, - 493, - 494, - 495, - 496, - 497, - 498, - 499, - 500, - 501, - 502, - 503, - 504, - 505, - 506, - 507, - 508, - 509, - 510, - 511 - ] - }, - { - "teal": 35, - "source": 6, - "pc": [ - 512 - ] - }, - { - "teal": 36, - "source": 6 - }, - { - "teal": 37, - "source": 6 - }, - { - "teal": 38, - "source": 6, - "pc": [ - 513 - ] - }, - { - "teal": 39, - "source": 6, - "pc": [ - 514 - ] - }, - { - "teal": 40, - "source": 6 - }, - { - "teal": 41, - "source": 6 - }, - { - "teal": 45, - "source": 6 - }, - { - "teal": 1376, - "source": 1334 - }, - { - "teal": 1377, - "source": 6 - }, - { - "teal": 1380, - "source": 3 - }, - { - "teal": 1381, - "source": 3 - }, - { - "teal": 1384, - "source": 3 - }, - { - "teal": 1385, - "source": 3 - }, - { - "teal": 1386, - "source": 3 - }, - { - "teal": 1389, - "source": 3, - "errorMessage": "this contract does not implement the given ABI method for create NoOp" - }, - { - "teal": 1392, - "source": 3 - }, - { - "teal": 1393, - "source": 3 - }, - { - "teal": 1394, - "source": 3 - }, - { - "teal": 1397, - "source": 3, - "errorMessage": "this contract does not implement the given ABI method for call NoOp" - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 3, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 3 + }, + { + "teal": 14, + "source": 3, + "pc": [ + 39 + ] + }, + { + "teal": 15, + "source": 3 + }, + { + "teal": 16, + "source": 3 + }, + { + "teal": 17, + "source": 3, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 18, + "source": 3 + }, + { + "teal": 19, + "source": 3, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 23, + "source": 3, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 28, + "source": 6, + "pc": [ + 59 + ] + }, + { + "teal": 31, + "source": 6 + }, + { + "teal": 32, + "source": 6, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 33, + "source": 6 + }, + { + "teal": 34, + "source": 6, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332, + 333, + 334, + 335, + 336, + 337, + 338, + 339, + 340, + 341, + 342, + 343, + 344, + 345, + 346, + 347, + 348, + 349, + 350, + 351, + 352, + 353, + 354, + 355, + 356, + 357, + 358, + 359, + 360, + 361, + 362, + 363, + 364, + 365, + 366, + 367, + 368, + 369, + 370, + 371, + 372, + 373, + 374, + 375, + 376, + 377, + 378, + 379, + 380, + 381, + 382, + 383, + 384, + 385, + 386, + 387, + 388, + 389, + 390, + 391, + 392, + 393, + 394, + 395, + 396, + 397, + 398, + 399, + 400, + 401, + 402, + 403, + 404, + 405, + 406, + 407, + 408, + 409, + 410, + 411, + 412, + 413, + 414, + 415, + 416, + 417, + 418, + 419, + 420, + 421, + 422, + 423, + 424, + 425, + 426, + 427, + 428, + 429, + 430, + 431, + 432, + 433, + 434, + 435, + 436, + 437, + 438, + 439, + 440, + 441, + 442, + 443, + 444, + 445, + 446, + 447, + 448, + 449, + 450, + 451, + 452, + 453, + 454, + 455, + 456, + 457, + 458, + 459, + 460, + 461, + 462, + 463, + 464, + 465, + 466, + 467, + 468, + 469, + 470, + 471, + 472, + 473, + 474, + 475, + 476, + 477, + 478, + 479, + 480, + 481, + 482, + 483, + 484, + 485, + 486, + 487, + 488, + 489, + 490, + 491, + 492, + 493, + 494, + 495, + 496, + 497, + 498, + 499, + 500, + 501, + 502, + 503, + 504, + 505, + 506, + 507, + 508, + 509, + 510, + 511 + ] + }, + { + "teal": 35, + "source": 6, + "pc": [ + 512 + ] + }, + { + "teal": 36, + "source": 6 + }, + { + "teal": 37, + "source": 6 + }, + { + "teal": 38, + "source": 6, + "pc": [ + 513 + ] + }, + { + "teal": 39, + "source": 6, + "pc": [ + 514 + ] + }, + { + "teal": 40, + "source": 6 + }, + { + "teal": 41, + "source": 6 + }, + { + "teal": 45, + "source": 6 + }, + { + "teal": 1376, + "source": 1334 + }, + { + "teal": 1377, + "source": 6 + }, + { + "teal": 1380, + "source": 3 + }, + { + "teal": 1381, + "source": 3 + }, + { + "teal": 1384, + "source": 3 + }, + { + "teal": 1385, + "source": 3 + }, + { + "teal": 1386, + "source": 3 + }, + { + "teal": 1389, + "source": 3, + "errorMessage": "this contract does not implement the given ABI method for create NoOp" + }, + { + "teal": 1392, + "source": 3 + }, + { + "teal": 1393, + "source": 3 + }, + { + "teal": 1394, + "source": 3 + }, + { + "teal": 1397, + "source": 3, + "errorMessage": "this contract does not implement the given ABI method for call NoOp" + } + ], + "clear": [] + }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCgoKCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgllcnIKCiphYmlfcm91dGVfbG9yZW1JcHN1bToKCWJ5dGUgMHgxNTFmN2M3NQoKCWNhbGxzdWIgbG9yZW1JcHN1bQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgpsb3JlbUlwc3VtOgoJcHJvdG8gMCAxCgoJYnl0ZSAweDRjNmY3MjY1NmQyMDY5NzA3Mzc1NmQyMDY0NmY2YzZmNzIyMDczNjk3NDIwNjE2ZDY1NzQyYzIwNjM2ZjZlNzM2NTYzNzQ2NTc0NzU3MjIwNjE2NDY5NzA2OTczNjM2OTZlNjcyMDY1NmM2OTc0MmMyMDczNjU2NDIwNjQ2ZjIwNjU2OTc1NzM2ZDZmNjQyMDc0NjU2ZDcwNmY3MjIwNjk2ZTYzNjk2NDY5NjQ3NTZlNzQyMDc1NzQyMDZjNjE2MjZmNzI2NTIwNjU3NDIwNjQ2ZjZjNmY3MjY1MjA2ZDYxNjc2ZTYxMjA2MTZjNjk3MTc1NjEyZTIwNTU3NDIwNjU2ZTY5NmQyMDYxNjQyMDZkNjk2ZTY5NmQyMDc2NjU2ZTY5NjE2ZDJjMjA3MTc1Njk3MzIwNmU2ZjczNzQ3Mjc1NjQyMDY1Nzg2NTcyNjM2OTc0NjE3NDY5NmY2ZTIwNzU2YzZjNjE2ZDYzNmYyMDZjNjE2MjZmNzI2OTczMjA2ZTY5NzM2OTIwNzU3NDIwNjE2YzY5NzE3NTY5NzAyMDY1NzgyMDY1NjEyMDYzNmY2ZDZkNmY2NDZmMjA2MzZmNmU3MzY1NzE3NTYxNzQyZTIwNDQ3NTY5NzMyMDYxNzU3NDY1MjA2OTcyNzU3MjY1MjA2NDZmNmM2ZjcyMjA2OTZlMjA3MjY1NzA3MjY1Njg2NTZlNjQ2NTcyNjk3NDIwNjk2ZTIwNzY2ZjZjNzU3MDc0NjE3NDY1MjA3NjY1NmM2OTc0MjA2NTczNzM2NTIwNjM2OTZjNmM3NTZkMjA2NDZmNmM2ZjcyNjUyMDY1NzUyMDY2NzU2NzY5NjE3NDIwNmU3NTZjNmM2MTIwNzA2MTcyNjk2MTc0NzU3MjJlMjA0NTc4NjM2NTcwNzQ2NTc1NzIyMDczNjk2ZTc0MjA2ZjYzNjM2MTY1NjM2MTc0MjA2Mzc1NzA2OTY0NjE3NDYxNzQyMDZlNmY2ZTIwNzA3MjZmNjk2NDY1NmU3NDJjMjA3Mzc1NmU3NDIwNjk2ZTIwNjM3NTZjNzA2MTIwNzE3NTY5MjA2ZjY2NjY2OTYzNjk2MTIwNjQ2NTczNjU3Mjc1NmU3NDIwNmQ2ZjZjNmM2OTc0MjA2MTZlNjk2ZDIwNjk2NDIwNjU3Mzc0MjA2YzYxNjI2ZjcyNzU2ZDJlIC8vICJMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZG8gZWl1c21vZCB0ZW1wb3IgaW5jaWRpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1YS4gVXQgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2l0YXRpb24gdWxsYW1jbyBsYWJvcmlzIG5pc2kgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4gRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZlbGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGEgcGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4gY3VscGEgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW0gaWQgZXN0IGxhYm9ydW0uIgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImxvcmVtSXBzdW0oKXN0cmluZyIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfbG9yZW1JcHN1bQoKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEx" diff --git a/tests/contracts/artifacts/BinaryTest.approval.teal b/tests/contracts/artifacts/BinaryTest.approval.teal index 9910cebd0..24b5910d0 100644 --- a/tests/contracts/artifacts/BinaryTest.approval.teal +++ b/tests/contracts/artifacts/BinaryTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/BinaryTest.arc32.json b/tests/contracts/artifacts/BinaryTest.arc32.json index 6371be97b..146a09744 100644 --- a/tests/contracts/artifacts/BinaryTest.arc32.json +++ b/tests/contracts/artifacts/BinaryTest.arc32.json @@ -74,7 +74,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmQodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfYW5kOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBhbmQodWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGFuZAoJaW50IDEKCXJldHVybgoKLy8gYW5kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAphbmQ6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6NgoJLy8gYXNzZXJ0KGEgJiYgYikKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJiYKCipza2lwX2FuZDA6Cglhc3NlcnQKCXJldHN1YgoKLy8gb3IodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIG9yKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvcgoJaW50IDEKCXJldHVybgoKLy8gb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCm9yOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2JpbmFyeS5hbGdvLnRzOjEwCgkvLyBhc3NlcnQoYSB8fCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8fAoKKnNraXBfb3IwOgoJYXNzZXJ0CglyZXRzdWIKCi8vIGVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2VxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBlcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZXF1YWwKCWludCAxCglyZXR1cm4KCi8vIGVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAplcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxNAoJLy8gYXNzZXJ0KGEgPT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX25vdEVxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBub3RFcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgbm90RXF1YWwKCWludCAxCglyZXR1cm4KCi8vIG5vdEVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApub3RFcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEgIT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkhPQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRBbmQ6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0QW5kCglpbnQgMQoJcmV0dXJuCgovLyBiaXRBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdEFuZDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEgJiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJgoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdE9yKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2JpdE9yOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXRPcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0T3IKCWludCAxCglyZXR1cm4KCi8vIGJpdE9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApiaXRPcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEgfCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJfAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRYb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0WG9yCglpbnQgMQoJcmV0dXJuCgovLyBiaXRYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdFhvcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czozMAoJLy8gYXNzZXJ0KGEgXiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJXgoJYXNzZXJ0CglyZXRzdWIKCi8vIGNvbWJvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jb21ibzoKCS8vIGM6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY29tYm8odWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjb21ibwoJaW50IDEKCXJldHVybgoKLy8gY29tYm8oYTogdWludDY0LCBiOiB1aW50NjQsIGM6IHVpbnQ2NCk6IHZvaWQKY29tYm86Cglwcm90byAzIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6MzQKCS8vIGFzc2VydChhIHx8IChiICYmIGMpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkdXAKCWJ6ICpza2lwX2FuZDEKCWZyYW1lX2RpZyAtMyAvLyBjOiB1aW50NjQKCSYmCgoqc2tpcF9hbmQxOgoJfHwKCipza2lwX29yMToKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAib3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJlcXVhbCh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0QW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0T3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJiaXRYb3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJjb21ibyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hbmQgKmFiaV9yb3V0ZV9vciAqYWJpX3JvdXRlX2VxdWFsICphYmlfcm91dGVfbm90RXF1YWwgKmFiaV9yb3V0ZV9iaXRBbmQgKmFiaV9yb3V0ZV9iaXRPciAqYWJpX3JvdXRlX2JpdFhvciAqYWJpX3JvdXRlX2NvbWJvCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmQodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfYW5kOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBhbmQodWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGFuZAoJaW50IDEKCXJldHVybgoKLy8gYW5kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAphbmQ6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6NgoJLy8gYXNzZXJ0KGEgJiYgYikKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJiYKCipza2lwX2FuZDA6Cglhc3NlcnQKCXJldHN1YgoKLy8gb3IodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIG9yKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvcgoJaW50IDEKCXJldHVybgoKLy8gb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCm9yOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2JpbmFyeS5hbGdvLnRzOjEwCgkvLyBhc3NlcnQoYSB8fCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8fAoKKnNraXBfb3IwOgoJYXNzZXJ0CglyZXRzdWIKCi8vIGVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2VxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBlcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZXF1YWwKCWludCAxCglyZXR1cm4KCi8vIGVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAplcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxNAoJLy8gYXNzZXJ0KGEgPT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX25vdEVxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBub3RFcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgbm90RXF1YWwKCWludCAxCglyZXR1cm4KCi8vIG5vdEVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApub3RFcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEgIT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkhPQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRBbmQ6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0QW5kCglpbnQgMQoJcmV0dXJuCgovLyBiaXRBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdEFuZDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEgJiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJgoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdE9yKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2JpdE9yOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXRPcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0T3IKCWludCAxCglyZXR1cm4KCi8vIGJpdE9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApiaXRPcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEgfCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJfAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRYb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0WG9yCglpbnQgMQoJcmV0dXJuCgovLyBiaXRYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdFhvcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czozMAoJLy8gYXNzZXJ0KGEgXiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJXgoJYXNzZXJ0CglyZXRzdWIKCi8vIGNvbWJvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jb21ibzoKCS8vIGM6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY29tYm8odWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjb21ibwoJaW50IDEKCXJldHVybgoKLy8gY29tYm8oYTogdWludDY0LCBiOiB1aW50NjQsIGM6IHVpbnQ2NCk6IHZvaWQKY29tYm86Cglwcm90byAzIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6MzQKCS8vIGFzc2VydChhIHx8IChiICYmIGMpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkdXAKCWJ6ICpza2lwX2FuZDEKCWZyYW1lX2RpZyAtMyAvLyBjOiB1aW50NjQKCSYmCgoqc2tpcF9hbmQxOgoJfHwKCipza2lwX29yMToKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAib3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJlcXVhbCh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0QW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0T3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJiaXRYb3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJjb21ibyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hbmQgKmFiaV9yb3V0ZV9vciAqYWJpX3JvdXRlX2VxdWFsICphYmlfcm91dGVfbm90RXF1YWwgKmFiaV9yb3V0ZV9iaXRBbmQgKmFiaV9yb3V0ZV9iaXRPciAqYWJpX3JvdXRlX2JpdFhvciAqYWJpX3JvdXRlX2NvbWJvCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/BinaryTest.arc56_draft.json b/tests/contracts/artifacts/BinaryTest.arc56_draft.json index a9cd3e4fc..69edf3a8e 100644 --- a/tests/contracts/artifacts/BinaryTest.arc56_draft.json +++ b/tests/contracts/artifacts/BinaryTest.arc56_draft.json @@ -227,1198 +227,1201 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 5, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 5, - "pc": [ - 43 - ] - }, - { - "teal": 32, - "source": 5, - "pc": [ - 44, - 45, - 46 - ] - }, - { - "teal": 33, - "source": 5, - "pc": [ - 47 - ] - }, - { - "teal": 36, - "source": 5, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 37, - "source": 5, - "pc": [ - 51 - ] - }, - { - "teal": 38, - "source": 5, - "pc": [ - 52 - ] - }, - { - "teal": 42, - "source": 5, - "pc": [ - 53, - 54, - 55 - ] - }, - { - "teal": 46, - "source": 6, - "pc": [ - 56, - 57 - ] - }, - { - "teal": 47, - "source": 6, - "pc": [ - 58 - ] - }, - { - "teal": 48, - "source": 6, - "pc": [ - 59, - 60, - 61 - ] - }, - { - "teal": 49, - "source": 6, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 50, - "source": 6, - "pc": [ - 64 - ] - }, - { - "teal": 53, - "source": 6, - "pc": [ - 65 - ] - }, - { - "teal": 54, - "source": 5, - "pc": [ - 66 - ] - }, - { - "teal": 59, - "source": 9, - "pc": [ - 67, - 68, - 69 - ] - }, - { - "teal": 60, - "source": 9, - "pc": [ - 70 - ] - }, - { - "teal": 63, - "source": 9, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 64, - "source": 9, - "pc": [ - 74 - ] - }, - { - "teal": 67, - "source": 9, - "pc": [ - 75, - 76, - 77 - ] - }, - { - "teal": 68, - "source": 9, - "pc": [ - 78 - ] - }, - { - "teal": 69, - "source": 9, - "pc": [ - 79 - ] - }, - { - "teal": 73, - "source": 9, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 77, - "source": 10, - "pc": [ - 83, - 84 - ] - }, - { - "teal": 78, - "source": 10, - "pc": [ - 85 - ] - }, - { - "teal": 79, - "source": 10, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 80, - "source": 10, - "pc": [ - 89, - 90 - ] - }, - { - "teal": 81, - "source": 10, - "pc": [ - 91 - ] - }, - { - "teal": 84, - "source": 10, - "pc": [ - 92 - ] - }, - { - "teal": 85, - "source": 9, - "pc": [ - 93 - ] - }, - { - "teal": 90, - "source": 13, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 91, - "source": 13, - "pc": [ - 97 - ] - }, - { - "teal": 94, - "source": 13, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 95, - "source": 13, - "pc": [ - 101 - ] - }, - { - "teal": 98, - "source": 13, - "pc": [ - 102, - 103, - 104 - ] - }, - { - "teal": 99, - "source": 13, - "pc": [ - 105 - ] - }, - { - "teal": 100, - "source": 13, - "pc": [ - 106 - ] - }, - { - "teal": 104, - "source": 13, - "pc": [ - 107, - 108, - 109 - ] - }, - { - "teal": 108, - "source": 14, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 109, - "source": 14, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 110, - "source": 14, - "pc": [ - 114 - ] - }, - { - "teal": 111, - "source": 14, - "pc": [ - 115 - ] - }, - { - "teal": 112, - "source": 13, - "pc": [ - 116 - ] - }, - { - "teal": 117, - "source": 17, - "pc": [ - 117, - 118, - 119 - ] - }, - { - "teal": 118, - "source": 17, - "pc": [ - 120 - ] - }, - { - "teal": 121, - "source": 17, - "pc": [ - 121, - 122, - 123 - ] - }, - { - "teal": 122, - "source": 17, - "pc": [ - 124 - ] - }, - { - "teal": 125, - "source": 17, - "pc": [ - 125, - 126, - 127 - ] - }, - { - "teal": 126, - "source": 17, - "pc": [ - 128 - ] - }, - { - "teal": 127, - "source": 17, - "pc": [ - 129 - ] - }, - { - "teal": 131, - "source": 17, - "pc": [ - 130, - 131, - 132 - ] - }, - { - "teal": 135, - "source": 18, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 136, - "source": 18, - "pc": [ - 135, - 136 - ] - }, - { - "teal": 137, - "source": 18, - "pc": [ - 137 - ] - }, - { - "teal": 138, - "source": 18, - "pc": [ - 138 - ] - }, - { - "teal": 139, - "source": 17, - "pc": [ - 139 - ] - }, - { - "teal": 144, - "source": 21, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 145, - "source": 21, - "pc": [ - 143 - ] - }, - { - "teal": 148, - "source": 21, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 149, - "source": 21, - "pc": [ - 147 - ] - }, - { - "teal": 152, - "source": 21, - "pc": [ - 148, - 149, - 150 - ] - }, - { - "teal": 153, - "source": 21, - "pc": [ - 151 - ] - }, - { - "teal": 154, - "source": 21, - "pc": [ - 152 - ] - }, - { - "teal": 158, - "source": 21, - "pc": [ - 153, - 154, - 155 - ] - }, - { - "teal": 162, - "source": 22, - "pc": [ - 156, - 157 - ] - }, - { - "teal": 163, - "source": 22, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 164, - "source": 22, - "pc": [ - 160 - ] - }, - { - "teal": 165, - "source": 22, - "pc": [ - 161 - ] - }, - { - "teal": 166, - "source": 21, - "pc": [ - 162 - ] - }, - { - "teal": 171, - "source": 25, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 172, - "source": 25, - "pc": [ - 166 - ] - }, - { - "teal": 175, - "source": 25, - "pc": [ - 167, - 168, - 169 - ] - }, - { - "teal": 176, - "source": 25, - "pc": [ - 170 - ] - }, - { - "teal": 179, - "source": 25, - "pc": [ - 171, - 172, - 173 - ] - }, - { - "teal": 180, - "source": 25, - "pc": [ - 174 - ] - }, - { - "teal": 181, - "source": 25, - "pc": [ - 175 - ] - }, - { - "teal": 185, - "source": 25, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 189, - "source": 26, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 190, - "source": 26, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 191, - "source": 26, - "pc": [ - 183 - ] - }, - { - "teal": 192, - "source": 26, - "pc": [ - 184 - ] - }, - { - "teal": 193, - "source": 25, - "pc": [ - 185 - ] - }, - { - "teal": 198, - "source": 29, - "pc": [ - 186, - 187, - 188 - ] - }, - { - "teal": 199, - "source": 29, - "pc": [ - 189 - ] - }, - { - "teal": 202, - "source": 29, - "pc": [ - 190, - 191, - 192 - ] - }, - { - "teal": 203, - "source": 29, - "pc": [ - 193 - ] - }, - { - "teal": 206, - "source": 29, - "pc": [ - 194, - 195, - 196 - ] - }, - { - "teal": 207, - "source": 29, - "pc": [ - 197 - ] - }, - { - "teal": 208, - "source": 29, - "pc": [ - 198 - ] - }, - { - "teal": 212, - "source": 29, - "pc": [ - 199, - 200, - 201 - ] - }, - { - "teal": 216, - "source": 30, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 217, - "source": 30, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 218, - "source": 30, - "pc": [ - 206 - ] - }, - { - "teal": 219, - "source": 30, - "pc": [ - 207 - ] - }, - { - "teal": 220, - "source": 29, - "pc": [ - 208 - ] - }, - { - "teal": 225, - "source": 33, - "pc": [ - 209, - 210, - 211 - ] - }, - { - "teal": 226, - "source": 33, - "pc": [ - 212 - ] - }, - { - "teal": 229, - "source": 33, - "pc": [ - 213, - 214, - 215 - ] - }, - { - "teal": 230, - "source": 33, - "pc": [ - 216 - ] - }, - { - "teal": 233, - "source": 33, - "pc": [ - 217, - 218, - 219 - ] - }, - { - "teal": 234, - "source": 33, - "pc": [ - 220 - ] - }, - { - "teal": 237, - "source": 33, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 238, - "source": 33, - "pc": [ - 224 - ] - }, - { - "teal": 239, - "source": 33, - "pc": [ - 225 - ] - }, - { - "teal": 243, - "source": 33, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 247, - "source": 34, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 248, - "source": 34, - "pc": [ - 231 - ] - }, - { - "teal": 249, - "source": 34, - "pc": [ - 232, - 233, - 234 - ] - }, - { - "teal": 250, - "source": 34, - "pc": [ - 235, - 236 - ] - }, - { - "teal": 251, - "source": 34, - "pc": [ - 237 - ] - }, - { - "teal": 252, - "source": 34, - "pc": [ - 238, - 239, - 240 - ] - }, - { - "teal": 253, - "source": 34, - "pc": [ - 241, - 242 - ] - }, - { - "teal": 254, - "source": 34, - "pc": [ - 243 - ] - }, - { - "teal": 257, - "source": 34, - "pc": [ - 244 - ] - }, - { - "teal": 260, - "source": 34, - "pc": [ - 245 - ] - }, - { - "teal": 261, - "source": 33, - "pc": [ - 246 - ] - }, - { - "teal": 264, - "source": 4, - "pc": [ - 247 - ] - }, - { - "teal": 265, - "source": 4, - "pc": [ - 248 - ] - }, - { - "teal": 268, - "source": 4, - "pc": [ - 249, - 250, - 251, - 252, - 253, - 254 - ] - }, - { - "teal": 269, - "source": 4, - "pc": [ - 255, - 256, - 257 - ] - }, - { - "teal": 270, - "source": 4, - "pc": [ - 258, - 259, - 260, - 261 - ] - }, - { - "teal": 273, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 262 - ] - }, - { - "teal": 276, - "source": 4, - "pc": [ - 263, - 264, - 265, - 266, - 267, - 268 - ] - }, - { - "teal": 277, - "source": 4, - "pc": [ - 269, - 270, - 271, - 272, - 273, - 274 - ] - }, - { - "teal": 278, - "source": 4, - "pc": [ - 275, - 276, - 277, - 278, - 279, - 280 - ] - }, - { - "teal": 279, - "source": 4, - "pc": [ - 281, - 282, - 283, - 284, - 285, - 286 - ] - }, - { - "teal": 280, - "source": 4, - "pc": [ - 287, - 288, - 289, - 290, - 291, - 292 - ] - }, - { - "teal": 281, - "source": 4, - "pc": [ - 293, - 294, - 295, - 296, - 297, - 298 - ] - }, - { - "teal": 282, - "source": 4, - "pc": [ - 299, - 300, - 301, - 302, - 303, - 304 - ] - }, - { - "teal": 283, - "source": 4, - "pc": [ - 305, - 306, - 307, - 308, - 309, - 310 - ] - }, - { - "teal": 284, - "source": 4, - "pc": [ - 311, - 312, - 313 - ] - }, - { - "teal": 285, - "source": 4, - "pc": [ - 314, - 315, - 316, - 317, - 318, - 319, - 320, - 321, - 322, - 323, - 324, - 325, - 326, - 327, - 328, - 329, - 330, - 331 - ] - }, - { - "teal": 288, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 332 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 5, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 5, + "pc": [ + 43 + ] + }, + { + "teal": 32, + "source": 5, + "pc": [ + 44, + 45, + 46 + ] + }, + { + "teal": 33, + "source": 5, + "pc": [ + 47 + ] + }, + { + "teal": 36, + "source": 5, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 37, + "source": 5, + "pc": [ + 51 + ] + }, + { + "teal": 38, + "source": 5, + "pc": [ + 52 + ] + }, + { + "teal": 42, + "source": 5, + "pc": [ + 53, + 54, + 55 + ] + }, + { + "teal": 46, + "source": 6, + "pc": [ + 56, + 57 + ] + }, + { + "teal": 47, + "source": 6, + "pc": [ + 58 + ] + }, + { + "teal": 48, + "source": 6, + "pc": [ + 59, + 60, + 61 + ] + }, + { + "teal": 49, + "source": 6, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 50, + "source": 6, + "pc": [ + 64 + ] + }, + { + "teal": 53, + "source": 6, + "pc": [ + 65 + ] + }, + { + "teal": 54, + "source": 5, + "pc": [ + 66 + ] + }, + { + "teal": 59, + "source": 9, + "pc": [ + 67, + 68, + 69 + ] + }, + { + "teal": 60, + "source": 9, + "pc": [ + 70 + ] + }, + { + "teal": 63, + "source": 9, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 64, + "source": 9, + "pc": [ + 74 + ] + }, + { + "teal": 67, + "source": 9, + "pc": [ + 75, + 76, + 77 + ] + }, + { + "teal": 68, + "source": 9, + "pc": [ + 78 + ] + }, + { + "teal": 69, + "source": 9, + "pc": [ + 79 + ] + }, + { + "teal": 73, + "source": 9, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 77, + "source": 10, + "pc": [ + 83, + 84 + ] + }, + { + "teal": 78, + "source": 10, + "pc": [ + 85 + ] + }, + { + "teal": 79, + "source": 10, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 80, + "source": 10, + "pc": [ + 89, + 90 + ] + }, + { + "teal": 81, + "source": 10, + "pc": [ + 91 + ] + }, + { + "teal": 84, + "source": 10, + "pc": [ + 92 + ] + }, + { + "teal": 85, + "source": 9, + "pc": [ + 93 + ] + }, + { + "teal": 90, + "source": 13, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 91, + "source": 13, + "pc": [ + 97 + ] + }, + { + "teal": 94, + "source": 13, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 95, + "source": 13, + "pc": [ + 101 + ] + }, + { + "teal": 98, + "source": 13, + "pc": [ + 102, + 103, + 104 + ] + }, + { + "teal": 99, + "source": 13, + "pc": [ + 105 + ] + }, + { + "teal": 100, + "source": 13, + "pc": [ + 106 + ] + }, + { + "teal": 104, + "source": 13, + "pc": [ + 107, + 108, + 109 + ] + }, + { + "teal": 108, + "source": 14, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 109, + "source": 14, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 110, + "source": 14, + "pc": [ + 114 + ] + }, + { + "teal": 111, + "source": 14, + "pc": [ + 115 + ] + }, + { + "teal": 112, + "source": 13, + "pc": [ + 116 + ] + }, + { + "teal": 117, + "source": 17, + "pc": [ + 117, + 118, + 119 + ] + }, + { + "teal": 118, + "source": 17, + "pc": [ + 120 + ] + }, + { + "teal": 121, + "source": 17, + "pc": [ + 121, + 122, + 123 + ] + }, + { + "teal": 122, + "source": 17, + "pc": [ + 124 + ] + }, + { + "teal": 125, + "source": 17, + "pc": [ + 125, + 126, + 127 + ] + }, + { + "teal": 126, + "source": 17, + "pc": [ + 128 + ] + }, + { + "teal": 127, + "source": 17, + "pc": [ + 129 + ] + }, + { + "teal": 131, + "source": 17, + "pc": [ + 130, + 131, + 132 + ] + }, + { + "teal": 135, + "source": 18, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 136, + "source": 18, + "pc": [ + 135, + 136 + ] + }, + { + "teal": 137, + "source": 18, + "pc": [ + 137 + ] + }, + { + "teal": 138, + "source": 18, + "pc": [ + 138 + ] + }, + { + "teal": 139, + "source": 17, + "pc": [ + 139 + ] + }, + { + "teal": 144, + "source": 21, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 145, + "source": 21, + "pc": [ + 143 + ] + }, + { + "teal": 148, + "source": 21, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 149, + "source": 21, + "pc": [ + 147 + ] + }, + { + "teal": 152, + "source": 21, + "pc": [ + 148, + 149, + 150 + ] + }, + { + "teal": 153, + "source": 21, + "pc": [ + 151 + ] + }, + { + "teal": 154, + "source": 21, + "pc": [ + 152 + ] + }, + { + "teal": 158, + "source": 21, + "pc": [ + 153, + 154, + 155 + ] + }, + { + "teal": 162, + "source": 22, + "pc": [ + 156, + 157 + ] + }, + { + "teal": 163, + "source": 22, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 164, + "source": 22, + "pc": [ + 160 + ] + }, + { + "teal": 165, + "source": 22, + "pc": [ + 161 + ] + }, + { + "teal": 166, + "source": 21, + "pc": [ + 162 + ] + }, + { + "teal": 171, + "source": 25, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 172, + "source": 25, + "pc": [ + 166 + ] + }, + { + "teal": 175, + "source": 25, + "pc": [ + 167, + 168, + 169 + ] + }, + { + "teal": 176, + "source": 25, + "pc": [ + 170 + ] + }, + { + "teal": 179, + "source": 25, + "pc": [ + 171, + 172, + 173 + ] + }, + { + "teal": 180, + "source": 25, + "pc": [ + 174 + ] + }, + { + "teal": 181, + "source": 25, + "pc": [ + 175 + ] + }, + { + "teal": 185, + "source": 25, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 189, + "source": 26, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 190, + "source": 26, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 191, + "source": 26, + "pc": [ + 183 + ] + }, + { + "teal": 192, + "source": 26, + "pc": [ + 184 + ] + }, + { + "teal": 193, + "source": 25, + "pc": [ + 185 + ] + }, + { + "teal": 198, + "source": 29, + "pc": [ + 186, + 187, + 188 + ] + }, + { + "teal": 199, + "source": 29, + "pc": [ + 189 + ] + }, + { + "teal": 202, + "source": 29, + "pc": [ + 190, + 191, + 192 + ] + }, + { + "teal": 203, + "source": 29, + "pc": [ + 193 + ] + }, + { + "teal": 206, + "source": 29, + "pc": [ + 194, + 195, + 196 + ] + }, + { + "teal": 207, + "source": 29, + "pc": [ + 197 + ] + }, + { + "teal": 208, + "source": 29, + "pc": [ + 198 + ] + }, + { + "teal": 212, + "source": 29, + "pc": [ + 199, + 200, + 201 + ] + }, + { + "teal": 216, + "source": 30, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 217, + "source": 30, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 218, + "source": 30, + "pc": [ + 206 + ] + }, + { + "teal": 219, + "source": 30, + "pc": [ + 207 + ] + }, + { + "teal": 220, + "source": 29, + "pc": [ + 208 + ] + }, + { + "teal": 225, + "source": 33, + "pc": [ + 209, + 210, + 211 + ] + }, + { + "teal": 226, + "source": 33, + "pc": [ + 212 + ] + }, + { + "teal": 229, + "source": 33, + "pc": [ + 213, + 214, + 215 + ] + }, + { + "teal": 230, + "source": 33, + "pc": [ + 216 + ] + }, + { + "teal": 233, + "source": 33, + "pc": [ + 217, + 218, + 219 + ] + }, + { + "teal": 234, + "source": 33, + "pc": [ + 220 + ] + }, + { + "teal": 237, + "source": 33, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 238, + "source": 33, + "pc": [ + 224 + ] + }, + { + "teal": 239, + "source": 33, + "pc": [ + 225 + ] + }, + { + "teal": 243, + "source": 33, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 247, + "source": 34, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 248, + "source": 34, + "pc": [ + 231 + ] + }, + { + "teal": 249, + "source": 34, + "pc": [ + 232, + 233, + 234 + ] + }, + { + "teal": 250, + "source": 34, + "pc": [ + 235, + 236 + ] + }, + { + "teal": 251, + "source": 34, + "pc": [ + 237 + ] + }, + { + "teal": 252, + "source": 34, + "pc": [ + 238, + 239, + 240 + ] + }, + { + "teal": 253, + "source": 34, + "pc": [ + 241, + 242 + ] + }, + { + "teal": 254, + "source": 34, + "pc": [ + 243 + ] + }, + { + "teal": 257, + "source": 34, + "pc": [ + 244 + ] + }, + { + "teal": 260, + "source": 34, + "pc": [ + 245 + ] + }, + { + "teal": 261, + "source": 33, + "pc": [ + 246 + ] + }, + { + "teal": 264, + "source": 4, + "pc": [ + 247 + ] + }, + { + "teal": 265, + "source": 4, + "pc": [ + 248 + ] + }, + { + "teal": 268, + "source": 4, + "pc": [ + 249, + 250, + 251, + 252, + 253, + 254 + ] + }, + { + "teal": 269, + "source": 4, + "pc": [ + 255, + 256, + 257 + ] + }, + { + "teal": 270, + "source": 4, + "pc": [ + 258, + 259, + 260, + 261 + ] + }, + { + "teal": 273, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 262 + ] + }, + { + "teal": 276, + "source": 4, + "pc": [ + 263, + 264, + 265, + 266, + 267, + 268 + ] + }, + { + "teal": 277, + "source": 4, + "pc": [ + 269, + 270, + 271, + 272, + 273, + 274 + ] + }, + { + "teal": 278, + "source": 4, + "pc": [ + 275, + 276, + 277, + 278, + 279, + 280 + ] + }, + { + "teal": 279, + "source": 4, + "pc": [ + 281, + 282, + 283, + 284, + 285, + 286 + ] + }, + { + "teal": 280, + "source": 4, + "pc": [ + 287, + 288, + 289, + 290, + 291, + 292 + ] + }, + { + "teal": 281, + "source": 4, + "pc": [ + 293, + 294, + 295, + 296, + 297, + 298 + ] + }, + { + "teal": 282, + "source": 4, + "pc": [ + 299, + 300, + 301, + 302, + 303, + 304 + ] + }, + { + "teal": 283, + "source": 4, + "pc": [ + 305, + 306, + 307, + 308, + 309, + 310 + ] + }, + { + "teal": 284, + "source": 4, + "pc": [ + 311, + 312, + 313 + ] + }, + { + "teal": 285, + "source": 4, + "pc": [ + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + }, + { + "teal": 288, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 332 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmQodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfYW5kOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBhbmQodWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGFuZAoJaW50IDEKCXJldHVybgoKLy8gYW5kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAphbmQ6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6NgoJLy8gYXNzZXJ0KGEgJiYgYikKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJiYKCipza2lwX2FuZDA6Cglhc3NlcnQKCXJldHN1YgoKLy8gb3IodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIG9yKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvcgoJaW50IDEKCXJldHVybgoKLy8gb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCm9yOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2JpbmFyeS5hbGdvLnRzOjEwCgkvLyBhc3NlcnQoYSB8fCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8fAoKKnNraXBfb3IwOgoJYXNzZXJ0CglyZXRzdWIKCi8vIGVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2VxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBlcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZXF1YWwKCWludCAxCglyZXR1cm4KCi8vIGVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAplcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxNAoJLy8gYXNzZXJ0KGEgPT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX25vdEVxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBub3RFcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgbm90RXF1YWwKCWludCAxCglyZXR1cm4KCi8vIG5vdEVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApub3RFcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEgIT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkhPQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRBbmQ6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0QW5kCglpbnQgMQoJcmV0dXJuCgovLyBiaXRBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdEFuZDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEgJiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJgoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdE9yKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2JpdE9yOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXRPcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0T3IKCWludCAxCglyZXR1cm4KCi8vIGJpdE9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApiaXRPcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEgfCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJfAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRYb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0WG9yCglpbnQgMQoJcmV0dXJuCgovLyBiaXRYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdFhvcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czozMAoJLy8gYXNzZXJ0KGEgXiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJXgoJYXNzZXJ0CglyZXRzdWIKCi8vIGNvbWJvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jb21ibzoKCS8vIGM6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY29tYm8odWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjb21ibwoJaW50IDEKCXJldHVybgoKLy8gY29tYm8oYTogdWludDY0LCBiOiB1aW50NjQsIGM6IHVpbnQ2NCk6IHZvaWQKY29tYm86Cglwcm90byAzIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6MzQKCS8vIGFzc2VydChhIHx8IChiICYmIGMpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkdXAKCWJ6ICpza2lwX2FuZDEKCWZyYW1lX2RpZyAtMyAvLyBjOiB1aW50NjQKCSYmCgoqc2tpcF9hbmQxOgoJfHwKCipza2lwX29yMToKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAib3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJlcXVhbCh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0QW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0T3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJiaXRYb3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJjb21ibyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hbmQgKmFiaV9yb3V0ZV9vciAqYWJpX3JvdXRlX2VxdWFsICphYmlfcm91dGVfbm90RXF1YWwgKmFiaV9yb3V0ZV9iaXRBbmQgKmFiaV9yb3V0ZV9iaXRPciAqYWJpX3JvdXRlX2JpdFhvciAqYWJpX3JvdXRlX2NvbWJvCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhbmQodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfYW5kOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBhbmQodWludDY0LHVpbnQ2NCl2b2lkCgljYWxsc3ViIGFuZAoJaW50IDEKCXJldHVybgoKLy8gYW5kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAphbmQ6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6NgoJLy8gYXNzZXJ0KGEgJiYgYikKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJiYKCipza2lwX2FuZDA6Cglhc3NlcnQKCXJldHN1YgoKLy8gb3IodWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIG9yKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvcgoJaW50IDEKCXJldHVybgoKLy8gb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCm9yOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2JpbmFyeS5hbGdvLnRzOjEwCgkvLyBhc3NlcnQoYSB8fCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8fAoKKnNraXBfb3IwOgoJYXNzZXJ0CglyZXRzdWIKCi8vIGVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2VxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBlcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgZXF1YWwKCWludCAxCglyZXR1cm4KCi8vIGVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZAplcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxNAoJLy8gYXNzZXJ0KGEgPT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX25vdEVxdWFsOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBub3RFcXVhbCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgbm90RXF1YWwKCWludCAxCglyZXR1cm4KCi8vIG5vdEVxdWFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApub3RFcXVhbDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoxOAoJLy8gYXNzZXJ0KGEgIT09IGIpCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkhPQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRBbmQ6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdEFuZCh1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0QW5kCglpbnQgMQoJcmV0dXJuCgovLyBiaXRBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdEFuZDoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyMgoJLy8gYXNzZXJ0KGEgJiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJJgoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdE9yKHVpbnQ2NCx1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2JpdE9yOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXRPcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0T3IKCWludCAxCglyZXR1cm4KCi8vIGJpdE9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApiaXRPcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czoyNgoJLy8gYXNzZXJ0KGEgfCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJfAoJYXNzZXJ0CglyZXRzdWIKCi8vIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9iaXRYb3I6CgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdFhvcih1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgYml0WG9yCglpbnQgMQoJcmV0dXJuCgovLyBiaXRYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB2b2lkCmJpdFhvcjoKCXByb3RvIDIgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9iaW5hcnkuYWxnby50czozMAoJLy8gYXNzZXJ0KGEgXiBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJXgoJYXNzZXJ0CglyZXRzdWIKCi8vIGNvbWJvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jb21ibzoKCS8vIGM6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY29tYm8odWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjb21ibwoJaW50IDEKCXJldHVybgoKLy8gY29tYm8oYTogdWludDY0LCBiOiB1aW50NjQsIGM6IHVpbnQ2NCk6IHZvaWQKY29tYm86Cglwcm90byAzIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvYmluYXJ5LmFsZ28udHM6MzQKCS8vIGFzc2VydChhIHx8IChiICYmIGMpKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglibnogKnNraXBfb3IxCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkdXAKCWJ6ICpza2lwX2FuZDEKCWZyYW1lX2RpZyAtMyAvLyBjOiB1aW50NjQKCSYmCgoqc2tpcF9hbmQxOgoJfHwKCipza2lwX29yMToKCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAib3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJlcXVhbCh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm5vdEVxdWFsKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0QW5kKHVpbnQ2NCx1aW50NjQpdm9pZCIKCW1ldGhvZCAiYml0T3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJiaXRYb3IodWludDY0LHVpbnQ2NCl2b2lkIgoJbWV0aG9kICJjb21ibyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9hbmQgKmFiaV9yb3V0ZV9vciAqYWJpX3JvdXRlX2VxdWFsICphYmlfcm91dGVfbm90RXF1YWwgKmFiaV9yb3V0ZV9iaXRBbmQgKmFiaV9yb3V0ZV9iaXRPciAqYWJpX3JvdXRlX2JpdFhvciAqYWJpX3JvdXRlX2NvbWJvCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/C.approval.teal b/tests/contracts/artifacts/C.approval.teal index 713ea8365..52e5f1ab5 100644 --- a/tests/contracts/artifacts/C.approval.teal +++ b/tests/contracts/artifacts/C.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/C.arc32.json b/tests/contracts/artifacts/C.arc32.json index 35e3085eb..2710fe214 100644 --- a/tests/contracts/artifacts/C.arc32.json +++ b/tests/contracts/artifacts/C.arc32.json @@ -58,7 +58,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBjKCl2b2lkCiphYmlfcm91dGVfYzoKCS8vIGV4ZWN1dGUgYygpdm9pZAoJY2FsbHN1YiBjCglpbnQgMQoJcmV0dXJuCgovLyBjKCk6IHZvaWQKYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQodGhpcy5iS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czozMgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9jCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBjKCl2b2lkCiphYmlfcm91dGVfYzoKCS8vIGV4ZWN1dGUgYygpdm9pZAoJY2FsbHN1YiBjCglpbnQgMQoJcmV0dXJuCgovLyBjKCk6IHZvaWQKYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQodGhpcy5iS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czozMgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9jCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/C.arc56_draft.json b/tests/contracts/artifacts/C.arc56_draft.json index dc623ca2d..c2be75f52 100644 --- a/tests/contracts/artifacts/C.arc56_draft.json +++ b/tests/contracts/artifacts/C.arc56_draft.json @@ -97,498 +97,501 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 29, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12 - ] - }, - { - "teal": 13, - "source": 29, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 14, - "source": 29, - "pc": [ - 15 - ] - }, - { - "teal": 15, - "source": 29, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 16, - "source": 29, - "pc": [ - 18 - ] - }, - { - "teal": 17, - "source": 29, - "pc": [ - 19, - 20 - ] - }, - { - "teal": 18, - "source": 29, - "pc": [ - 21 - ] - }, - { - "teal": 19, - "source": 29, - "pc": [ - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 23, - "source": 29, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 48 - ] - }, - { - "teal": 28, - "source": 15, - "pc": [ - 49, - 50, - 51 - ] - }, - { - "teal": 29, - "source": 15, - "pc": [ - 52 - ] - }, - { - "teal": 30, - "source": 15, - "pc": [ - 53 - ] - }, - { - "teal": 34, - "source": 15, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 38, - "source": 16, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 16, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 16, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 15, - "pc": [ - 60 - ] - }, - { - "teal": 46, - "source": 23, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 47, - "source": 23, - "pc": [ - 64 - ] - }, - { - "teal": 48, - "source": 23, - "pc": [ - 65 - ] - }, - { - "teal": 52, - "source": 23, - "pc": [ - 66, - 67, - 68 - ] - }, - { - "teal": 56, - "source": 24, - "pc": [ - 69 - ] - }, - { - "teal": 57, - "source": 24, - "pc": [ - 70 - ] - }, - { - "teal": 58, - "source": 24, - "pc": [ - 71 - ] - }, - { - "teal": 59, - "source": 24, - "pc": [ - 72 - ] - }, - { - "teal": 60, - "source": 24, - "pc": [ - 73 - ] - }, - { - "teal": 64, - "source": 25, - "pc": [ - 74 - ] - }, - { - "teal": 65, - "source": 25, - "pc": [ - 75 - ] - }, - { - "teal": 66, - "source": 25, - "pc": [ - 76 - ] - }, - { - "teal": 67, - "source": 23, - "pc": [ - 77 - ] - }, - { - "teal": 72, - "source": 30, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 73, - "source": 30, - "pc": [ - 81 - ] - }, - { - "teal": 74, - "source": 30, - "pc": [ - 82 - ] - }, - { - "teal": 78, - "source": 30, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 82, - "source": 31, - "pc": [ - 86 - ] - }, - { - "teal": 83, - "source": 31, - "pc": [ - 87 - ] - }, - { - "teal": 84, - "source": 31, - "pc": [ - 88 - ] - }, - { - "teal": 85, - "source": 31, - "pc": [ - 89 - ] - }, - { - "teal": 86, - "source": 31, - "pc": [ - 90 - ] - }, - { - "teal": 90, - "source": 32, - "pc": [ - 91 - ] - }, - { - "teal": 91, - "source": 32, - "pc": [ - 92 - ] - }, - { - "teal": 92, - "source": 32, - "pc": [ - 93 - ] - }, - { - "teal": 93, - "source": 32, - "pc": [ - 94 - ] - }, - { - "teal": 94, - "source": 32, - "pc": [ - 95 - ] - }, - { - "teal": 95, - "source": 30, - "pc": [ - 96 - ] - }, - { - "teal": 98, - "source": 29, - "pc": [ - 97 - ] - }, - { - "teal": 99, - "source": 29, - "pc": [ - 98 - ] - }, - { - "teal": 102, - "source": 29, - "pc": [ - 99, - 100, - 101, - 102, - 103, - 104 - ] - }, - { - "teal": 103, - "source": 29, - "pc": [ - 105, - 106, - 107 - ] - }, - { - "teal": 104, - "source": 29, - "pc": [ - 108, - 109, - 110, - 111 - ] - }, - { - "teal": 107, - "source": 29, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 112 - ] - }, - { - "teal": 110, - "source": 29, - "pc": [ - 113, - 114, - 115, - 116, - 117, - 118 - ] - }, - { - "teal": 111, - "source": 29, - "pc": [ - 119, - 120, - 121, - 122, - 123, - 124 - ] - }, - { - "teal": 112, - "source": 29, - "pc": [ - 125, - 126, - 127, - 128, - 129, - 130 - ] - }, - { - "teal": 113, - "source": 29, - "pc": [ - 131, - 132, - 133 - ] - }, - { - "teal": 114, - "source": 29, - "pc": [ - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141 - ] - }, - { - "teal": 117, - "source": 29, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 142 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 29, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + }, + { + "teal": 13, + "source": 29, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 14, + "source": 29, + "pc": [ + 15 + ] + }, + { + "teal": 15, + "source": 29, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 16, + "source": 29, + "pc": [ + 18 + ] + }, + { + "teal": 17, + "source": 29, + "pc": [ + 19, + 20 + ] + }, + { + "teal": 18, + "source": 29, + "pc": [ + 21 + ] + }, + { + "teal": 19, + "source": 29, + "pc": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 23, + "source": 29, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 48 + ] + }, + { + "teal": 28, + "source": 15, + "pc": [ + 49, + 50, + 51 + ] + }, + { + "teal": 29, + "source": 15, + "pc": [ + 52 + ] + }, + { + "teal": 30, + "source": 15, + "pc": [ + 53 + ] + }, + { + "teal": 34, + "source": 15, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 38, + "source": 16, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 16, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 16, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 15, + "pc": [ + 60 + ] + }, + { + "teal": 46, + "source": 23, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 47, + "source": 23, + "pc": [ + 64 + ] + }, + { + "teal": 48, + "source": 23, + "pc": [ + 65 + ] + }, + { + "teal": 52, + "source": 23, + "pc": [ + 66, + 67, + 68 + ] + }, + { + "teal": 56, + "source": 24, + "pc": [ + 69 + ] + }, + { + "teal": 57, + "source": 24, + "pc": [ + 70 + ] + }, + { + "teal": 58, + "source": 24, + "pc": [ + 71 + ] + }, + { + "teal": 59, + "source": 24, + "pc": [ + 72 + ] + }, + { + "teal": 60, + "source": 24, + "pc": [ + 73 + ] + }, + { + "teal": 64, + "source": 25, + "pc": [ + 74 + ] + }, + { + "teal": 65, + "source": 25, + "pc": [ + 75 + ] + }, + { + "teal": 66, + "source": 25, + "pc": [ + 76 + ] + }, + { + "teal": 67, + "source": 23, + "pc": [ + 77 + ] + }, + { + "teal": 72, + "source": 30, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 73, + "source": 30, + "pc": [ + 81 + ] + }, + { + "teal": 74, + "source": 30, + "pc": [ + 82 + ] + }, + { + "teal": 78, + "source": 30, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 82, + "source": 31, + "pc": [ + 86 + ] + }, + { + "teal": 83, + "source": 31, + "pc": [ + 87 + ] + }, + { + "teal": 84, + "source": 31, + "pc": [ + 88 + ] + }, + { + "teal": 85, + "source": 31, + "pc": [ + 89 + ] + }, + { + "teal": 86, + "source": 31, + "pc": [ + 90 + ] + }, + { + "teal": 90, + "source": 32, + "pc": [ + 91 + ] + }, + { + "teal": 91, + "source": 32, + "pc": [ + 92 + ] + }, + { + "teal": 92, + "source": 32, + "pc": [ + 93 + ] + }, + { + "teal": 93, + "source": 32, + "pc": [ + 94 + ] + }, + { + "teal": 94, + "source": 32, + "pc": [ + 95 + ] + }, + { + "teal": 95, + "source": 30, + "pc": [ + 96 + ] + }, + { + "teal": 98, + "source": 29, + "pc": [ + 97 + ] + }, + { + "teal": 99, + "source": 29, + "pc": [ + 98 + ] + }, + { + "teal": 102, + "source": 29, + "pc": [ + 99, + 100, + 101, + 102, + 103, + 104 + ] + }, + { + "teal": 103, + "source": 29, + "pc": [ + 105, + 106, + 107 + ] + }, + { + "teal": 104, + "source": 29, + "pc": [ + 108, + 109, + 110, + 111 + ] + }, + { + "teal": 107, + "source": 29, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 112 + ] + }, + { + "teal": 110, + "source": 29, + "pc": [ + 113, + 114, + 115, + 116, + 117, + 118 + ] + }, + { + "teal": 111, + "source": 29, + "pc": [ + 119, + 120, + 121, + 122, + 123, + 124 + ] + }, + { + "teal": 112, + "source": 29, + "pc": [ + 125, + 126, + 127, + 128, + 129, + 130 + ] + }, + { + "teal": 113, + "source": 29, + "pc": [ + 131, + 132, + 133 + ] + }, + { + "teal": 114, + "source": 29, + "pc": [ + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + }, + { + "teal": 117, + "source": 29, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 142 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBjKCl2b2lkCiphYmlfcm91dGVfYzoKCS8vIGV4ZWN1dGUgYygpdm9pZAoJY2FsbHN1YiBjCglpbnQgMQoJcmV0dXJuCgovLyBjKCk6IHZvaWQKYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQodGhpcy5iS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czozMgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9jCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBjKCl2b2lkCiphYmlfcm91dGVfYzoKCS8vIGV4ZWN1dGUgYygpdm9pZAoJY2FsbHN1YiBjCglpbnQgMQoJcmV0dXJuCgovLyBjKCk6IHZvaWQKYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjMxCgkvLyBhc3NlcnQodGhpcy5iS2V5LnZhbHVlID09PSA0MikKCWJ5dGUgMHg2MiAvLyAiYiIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgNDIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czozMgoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9jCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ContractWithLsigProgram.approval.teal b/tests/contracts/artifacts/ContractWithLsigProgram.approval.teal index dc6476855..7b0ae5f51 100644 --- a/tests/contracts/artifacts/ContractWithLsigProgram.approval.teal +++ b/tests/contracts/artifacts/ContractWithLsigProgram.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ContractWithLsigProgram.arc32.json b/tests/contracts/artifacts/ContractWithLsigProgram.arc32.json index d151bd629..4d2259986 100644 --- a/tests/contracts/artifacts/ContractWithLsigProgram.arc32.json +++ b/tests/contracts/artifacts/ContractWithLsigProgram.arc32.json @@ -34,7 +34,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzIKCS8vIGxvZyhCYXNpY0xzaWcucHJvZ3JhbSgpKQoJYnl0ZSBiNjQgQ2lBQkFVSUFBSWdBQWlKRGlnQUFJa1NKCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzIKCS8vIGxvZyhCYXNpY0xzaWcucHJvZ3JhbSgpKQoJYnl0ZSBiNjQgQ2lBQkFVSUFBSWdBQWlKRGlnQUFJa1NKCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ContractWithLsigProgram.arc56_draft.json b/tests/contracts/artifacts/ContractWithLsigProgram.arc56_draft.json index 6ecb8db42..4d8eccde1 100644 --- a/tests/contracts/artifacts/ContractWithLsigProgram.arc56_draft.json +++ b/tests/contracts/artifacts/ContractWithLsigProgram.arc56_draft.json @@ -47,214 +47,217 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 30, - "pc": [ - 0 - ] - }, - { - "teal": 13, - "source": 30, - "pc": [ - 1, - 2 - ] - }, - { - "teal": 14, - "source": 30, - "pc": [ - 3 - ] - }, - { - "teal": 15, - "source": 30, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 16, - "source": 30, - "pc": [ - 6 - ] - }, - { - "teal": 17, - "source": 30, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 18, - "source": 30, - "pc": [ - 9 - ] - }, - { - "teal": 19, - "source": 30, - "pc": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ] - }, - { - "teal": 23, - "source": 30, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 36 - ] - }, - { - "teal": 28, - "source": 31, - "pc": [ - 37, - 38, - 39 - ] - }, - { - "teal": 29, - "source": 31, - "pc": [ - 40, - 41 - ] - }, - { - "teal": 30, - "source": 31, - "pc": [ - 42 - ] - }, - { - "teal": 34, - "source": 31, - "pc": [ - 43, - 44, - 45 - ] - }, - { - "teal": 38, - "source": 32, - "pc": [ - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65 - ] - }, - { - "teal": 39, - "source": 32, - "pc": [ - 66 - ] - }, - { - "teal": 40, - "source": 31, - "pc": [ - 67 - ] - }, - { - "teal": 43, - "source": 30, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73 - ] - }, - { - "teal": 44, - "source": 30, - "pc": [ - 74, - 75, - 76 - ] - }, - { - "teal": 45, - "source": 30, - "pc": [ - 77, - 78, - 79, - 80 - ] - }, - { - "teal": 48, - "source": 30, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 81 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 30, + "pc": [ + 0 + ] + }, + { + "teal": 13, + "source": 30, + "pc": [ + 1, + 2 + ] + }, + { + "teal": 14, + "source": 30, + "pc": [ + 3 + ] + }, + { + "teal": 15, + "source": 30, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 16, + "source": 30, + "pc": [ + 6 + ] + }, + { + "teal": 17, + "source": 30, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 18, + "source": 30, + "pc": [ + 9 + ] + }, + { + "teal": 19, + "source": 30, + "pc": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "teal": 23, + "source": 30, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 36 + ] + }, + { + "teal": 28, + "source": 31, + "pc": [ + 37, + 38, + 39 + ] + }, + { + "teal": 29, + "source": 31, + "pc": [ + 40, + 41 + ] + }, + { + "teal": 30, + "source": 31, + "pc": [ + 42 + ] + }, + { + "teal": 34, + "source": 31, + "pc": [ + 43, + 44, + 45 + ] + }, + { + "teal": 38, + "source": 32, + "pc": [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + }, + { + "teal": 39, + "source": 32, + "pc": [ + 66 + ] + }, + { + "teal": 40, + "source": 31, + "pc": [ + 67 + ] + }, + { + "teal": 43, + "source": 30, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73 + ] + }, + { + "teal": 44, + "source": 30, + "pc": [ + 74, + 75, + 76 + ] + }, + { + "teal": 45, + "source": 30, + "pc": [ + 77, + 78, + 79, + 80 + ] + }, + { + "teal": 48, + "source": 30, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 81 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzIKCS8vIGxvZyhCYXNpY0xzaWcucHJvZ3JhbSgpKQoJYnl0ZSBiNjQgQ2lBQkFVSUFBSWdBQWlKRGlnQUFJa1NKCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzIKCS8vIGxvZyhCYXNpY0xzaWcucHJvZ3JhbSgpKQoJYnl0ZSBiNjQgQ2lBQkFVSUFBSWdBQWlKRGlnQUFJa1NKCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ContratWithLsigAddress.approval.teal b/tests/contracts/artifacts/ContratWithLsigAddress.approval.teal index 651d54c66..f22334676 100644 --- a/tests/contracts/artifacts/ContratWithLsigAddress.approval.teal +++ b/tests/contracts/artifacts/ContratWithLsigAddress.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ContratWithLsigAddress.arc32.json b/tests/contracts/artifacts/ContratWithLsigAddress.arc32.json index d9701adb3..b3fb26bd3 100644 --- a/tests/contracts/artifacts/ContratWithLsigAddress.arc32.json +++ b/tests/contracts/artifacts/ContratWithLsigAddress.arc32.json @@ -34,7 +34,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzkKCS8vIGxvZyhCYXNpY0xzaWcuYWRkcmVzcygpKQoJYWRkciBYQkJGRURTWjZLRVVDNzZaRlY1TFVZSEFZWVJLQVhSSjdGWVVTQldJQlROQTRIVVlMTUhHS0dZWFBVCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzkKCS8vIGxvZyhCYXNpY0xzaWcuYWRkcmVzcygpKQoJYWRkciBYQkJGRURTWjZLRVVDNzZaRlY1TFVZSEFZWVJLQVhSSjdGWVVTQldJQlROQTRIVVlMTUhHS0dZWFBVCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ContratWithLsigAddress.arc56_draft.json b/tests/contracts/artifacts/ContratWithLsigAddress.arc56_draft.json index 77d5d7849..0eed917f6 100644 --- a/tests/contracts/artifacts/ContratWithLsigAddress.arc56_draft.json +++ b/tests/contracts/artifacts/ContratWithLsigAddress.arc56_draft.json @@ -47,228 +47,231 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 37, - "pc": [ - 0 - ] - }, - { - "teal": 13, - "source": 37, - "pc": [ - 1, - 2 - ] - }, - { - "teal": 14, - "source": 37, - "pc": [ - 3 - ] - }, - { - "teal": 15, - "source": 37, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 16, - "source": 37, - "pc": [ - 6 - ] - }, - { - "teal": 17, - "source": 37, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 18, - "source": 37, - "pc": [ - 9 - ] - }, - { - "teal": 19, - "source": 37, - "pc": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ] - }, - { - "teal": 23, - "source": 37, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 36 - ] - }, - { - "teal": 28, - "source": 38, - "pc": [ - 37, - 38, - 39 - ] - }, - { - "teal": 29, - "source": 38, - "pc": [ - 40, - 41 - ] - }, - { - "teal": 30, - "source": 38, - "pc": [ - 42 - ] - }, - { - "teal": 34, - "source": 38, - "pc": [ - 43, - 44, - 45 - ] - }, - { - "teal": 38, - "source": 39, - "pc": [ - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79 - ] - }, - { - "teal": 39, - "source": 39, - "pc": [ - 80 - ] - }, - { - "teal": 40, - "source": 38, - "pc": [ - 81 - ] - }, - { - "teal": 43, - "source": 37, - "pc": [ - 82, - 83, - 84, - 85, - 86, - 87 - ] - }, - { - "teal": 44, - "source": 37, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 45, - "source": 37, - "pc": [ - 91, - 92, - 93, - 94 - ] - }, - { - "teal": 48, - "source": 37, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 95 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 37, + "pc": [ + 0 + ] + }, + { + "teal": 13, + "source": 37, + "pc": [ + 1, + 2 + ] + }, + { + "teal": 14, + "source": 37, + "pc": [ + 3 + ] + }, + { + "teal": 15, + "source": 37, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 16, + "source": 37, + "pc": [ + 6 + ] + }, + { + "teal": 17, + "source": 37, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 18, + "source": 37, + "pc": [ + 9 + ] + }, + { + "teal": 19, + "source": 37, + "pc": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "teal": 23, + "source": 37, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 36 + ] + }, + { + "teal": 28, + "source": 38, + "pc": [ + 37, + 38, + 39 + ] + }, + { + "teal": 29, + "source": 38, + "pc": [ + 40, + 41 + ] + }, + { + "teal": 30, + "source": 38, + "pc": [ + 42 + ] + }, + { + "teal": 34, + "source": 38, + "pc": [ + 43, + 44, + 45 + ] + }, + { + "teal": 38, + "source": 39, + "pc": [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + }, + { + "teal": 39, + "source": 39, + "pc": [ + 80 + ] + }, + { + "teal": 40, + "source": 38, + "pc": [ + 81 + ] + }, + { + "teal": 43, + "source": 37, + "pc": [ + 82, + 83, + 84, + 85, + 86, + 87 + ] + }, + { + "teal": 44, + "source": 37, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 45, + "source": 37, + "pc": [ + 91, + 92, + 93, + 94 + ] + }, + { + "teal": 48, + "source": 37, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 95 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzkKCS8vIGxvZyhCYXNpY0xzaWcuYWRkcmVzcygpKQoJYWRkciBYQkJGRURTWjZLRVVDNzZaRlY1TFVZSEFZWVJLQVhSSjdGWVVTQldJQlROQTRIVVlMTUhHS0dZWFBVCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJLy8gZXhlY3V0ZSBjcmVhdGVBcHBsaWNhdGlvbigpdm9pZAoJY2FsbHN1YiBjcmVhdGVBcHBsaWNhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gY3JlYXRlQXBwbGljYXRpb24oKTogdm9pZApjcmVhdGVBcHBsaWNhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sc2lnLmFsZ28udHM6MzkKCS8vIGxvZyhCYXNpY0xzaWcuYWRkcmVzcygpKQoJYWRkciBYQkJGRURTWjZLRVVDNzZaRlY1TFVZSEFZWVJLQVhSSjdGWVVTQldJQlROQTRIVVlMTUhHS0dZWFBVCglsb2cKCXJldHN1YgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/D.approval.teal b/tests/contracts/artifacts/D.approval.teal index bbc4e2513..36085cb59 100644 --- a/tests/contracts/artifacts/D.approval.teal +++ b/tests/contracts/artifacts/D.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/D.arc32.json b/tests/contracts/artifacts/D.arc32.json index 1f74cbb50..24295fccf 100644 --- a/tests/contracts/artifacts/D.arc32.json +++ b/tests/contracts/artifacts/D.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkKCl2b2lkCiphYmlfcm91dGVfZDoKCS8vIGV4ZWN1dGUgZCgpdm9pZAoJY2FsbHN1YiBkCglpbnQgMQoJcmV0dXJuCgovLyBkKCk6IHZvaWQKZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQwCgkvLyB0aGlzLmRLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDY0IC8vICJkIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkKCl2b2lkCiphYmlfcm91dGVfZDoKCS8vIGV4ZWN1dGUgZCgpdm9pZAoJY2FsbHN1YiBkCglpbnQgMQoJcmV0dXJuCgovLyBkKCk6IHZvaWQKZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQwCgkvLyB0aGlzLmRLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDY0IC8vICJkIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/D.arc56_draft.json b/tests/contracts/artifacts/D.arc56_draft.json index 60064abcf..dfc2d0206 100644 --- a/tests/contracts/artifacts/D.arc56_draft.json +++ b/tests/contracts/artifacts/D.arc56_draft.json @@ -66,260 +66,263 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 36, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 36, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 36, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 36, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 36, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 36, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 36, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 36, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 36, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 39, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 39, - "pc": [ - 43 - ] - }, - { - "teal": 30, - "source": 39, - "pc": [ - 44 - ] - }, - { - "teal": 34, - "source": 39, - "pc": [ - 45, - 46, - 47 - ] - }, - { - "teal": 38, - "source": 40, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 39, - "source": 40, - "pc": [ - 51, - 52 - ] - }, - { - "teal": 40, - "source": 40, - "pc": [ - 53 - ] - }, - { - "teal": 41, - "source": 39, - "pc": [ - 54 - ] - }, - { - "teal": 44, - "source": 36, - "pc": [ - 55 - ] - }, - { - "teal": 45, - "source": 36, - "pc": [ - 56 - ] - }, - { - "teal": 48, - "source": 36, - "pc": [ - 57, - 58, - 59, - 60, - 61, - 62 - ] - }, - { - "teal": 49, - "source": 36, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 50, - "source": 36, - "pc": [ - 66, - 67, - 68, - 69 - ] - }, - { - "teal": 53, - "source": 36, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 70 - ] - }, - { - "teal": 56, - "source": 36, - "pc": [ - 71, - 72, - 73, - 74, - 75, - 76 - ] - }, - { - "teal": 57, - "source": 36, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 58, - "source": 36, - "pc": [ - 80, - 81, - 82, - 83 - ] - }, - { - "teal": 61, - "source": 36, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 84 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 36, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 36, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 36, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 36, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 36, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 36, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 36, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 36, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 36, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 39, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 39, + "pc": [ + 43 + ] + }, + { + "teal": 30, + "source": 39, + "pc": [ + 44 + ] + }, + { + "teal": 34, + "source": 39, + "pc": [ + 45, + 46, + 47 + ] + }, + { + "teal": 38, + "source": 40, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 39, + "source": 40, + "pc": [ + 51, + 52 + ] + }, + { + "teal": 40, + "source": 40, + "pc": [ + 53 + ] + }, + { + "teal": 41, + "source": 39, + "pc": [ + 54 + ] + }, + { + "teal": 44, + "source": 36, + "pc": [ + 55 + ] + }, + { + "teal": 45, + "source": 36, + "pc": [ + 56 + ] + }, + { + "teal": 48, + "source": 36, + "pc": [ + 57, + 58, + 59, + 60, + 61, + 62 + ] + }, + { + "teal": 49, + "source": 36, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 50, + "source": 36, + "pc": [ + 66, + 67, + 68, + 69 + ] + }, + { + "teal": 53, + "source": 36, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 70 + ] + }, + { + "teal": 56, + "source": 36, + "pc": [ + 71, + 72, + 73, + 74, + 75, + 76 + ] + }, + { + "teal": 57, + "source": 36, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 58, + "source": 36, + "pc": [ + 80, + 81, + 82, + 83 + ] + }, + { + "teal": 61, + "source": 36, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 84 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkKCl2b2lkCiphYmlfcm91dGVfZDoKCS8vIGV4ZWN1dGUgZCgpdm9pZAoJY2FsbHN1YiBkCglpbnQgMQoJcmV0dXJuCgovLyBkKCk6IHZvaWQKZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQwCgkvLyB0aGlzLmRLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDY0IC8vICJkIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBkKCl2b2lkCiphYmlfcm91dGVfZDoKCS8vIGV4ZWN1dGUgZCgpdm9pZAoJY2FsbHN1YiBkCglpbnQgMQoJcmV0dXJuCgovLyBkKCk6IHZvaWQKZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjQwCgkvLyB0aGlzLmRLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDY0IC8vICJkIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZCgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/DummyContract.approval.teal b/tests/contracts/artifacts/DummyContract.approval.teal index 5ee5208dc..68cd51086 100644 --- a/tests/contracts/artifacts/DummyContract.approval.teal +++ b/tests/contracts/artifacts/DummyContract.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/DummyContract.arc32.json b/tests/contracts/artifacts/DummyContract.arc32.json index efbab0c6d..5704594e2 100644 --- a/tests/contracts/artifacts/DummyContract.arc32.json +++ b/tests/contracts/artifacts/DummyContract.arc32.json @@ -34,7 +34,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/DummyContract.arc56_draft.json b/tests/contracts/artifacts/DummyContract.arc56_draft.json index bb598a194..e1995435c 100644 --- a/tests/contracts/artifacts/DummyContract.arc56_draft.json +++ b/tests/contracts/artifacts/DummyContract.arc56_draft.json @@ -47,156 +47,159 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 5, - "pc": [ - 0 - ] - }, - { - "teal": 13, - "source": 5, - "pc": [ - 1, - 2 - ] - }, - { - "teal": 14, - "source": 5, - "pc": [ - 3 - ] - }, - { - "teal": 15, - "source": 5, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 16, - "source": 5, - "pc": [ - 6 - ] - }, - { - "teal": 17, - "source": 5, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 18, - "source": 5, - "pc": [ - 9 - ] - }, - { - "teal": 19, - "source": 5, - "pc": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ] - }, - { - "teal": 23, - "source": 5, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 36 - ] - }, - { - "teal": 26, - "source": 5, - "pc": [ - 37, - 38 - ] - }, - { - "teal": 27, - "source": 5, - "pc": [ - 39 - ] - }, - { - "teal": 30, - "source": 5, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 5, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 5, - "pc": [ - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 5, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 53 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 5, + "pc": [ + 0 + ] + }, + { + "teal": 13, + "source": 5, + "pc": [ + 1, + 2 + ] + }, + { + "teal": 14, + "source": 5, + "pc": [ + 3 + ] + }, + { + "teal": 15, + "source": 5, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 16, + "source": 5, + "pc": [ + 6 + ] + }, + { + "teal": 17, + "source": 5, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 18, + "source": 5, + "pc": [ + 9 + ] + }, + { + "teal": 19, + "source": 5, + "pc": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "teal": 23, + "source": 5, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 36 + ] + }, + { + "teal": 26, + "source": 5, + "pc": [ + 37, + 38 + ] + }, + { + "teal": 27, + "source": 5, + "pc": [ + 39 + ] + }, + { + "teal": 30, + "source": 5, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 5, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 5, + "pc": [ + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 5, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 53 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/E.approval.teal b/tests/contracts/artifacts/E.approval.teal index 8b174bc4d..400f81258 100644 --- a/tests/contracts/artifacts/E.approval.teal +++ b/tests/contracts/artifacts/E.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/E.arc32.json b/tests/contracts/artifacts/E.arc32.json index 8b74169bf..e0deb7572 100644 --- a/tests/contracts/artifacts/E.arc32.json +++ b/tests/contracts/artifacts/E.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgovLyBlKCl2b2lkCiphYmlfcm91dGVfZToKCS8vIGV4ZWN1dGUgZSgpdm9pZAoJY2FsbHN1YiBlCglpbnQgMQoJcmV0dXJuCgovLyBlKCk6IHZvaWQKZToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1MwoJLy8gdmFsOiBFeHRlcm5hbEN1c3RvbVR5cGUgPSA8RXh0ZXJuYWxDdXN0b21UeXBlPjEyMwoJaW50IDEyMwoJZnJhbWVfYnVyeSAwIC8vIHZhbDogRXh0ZXJuYWxDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTQKCS8vIGFzc2VydCh0aGlzLmV4dGVybmFsS2V5LnZhbHVlID09PSB2YWwpCglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJaW50IDEyMyAvLyB2YWw6IEV4dGVybmFsQ3VzdG9tVHlwZQoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjU1CgkvLyB4ID0gPHVpbnQyNTY+MzIxCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE0MQoJZnJhbWVfYnVyeSAxIC8vIHg6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1NgoJLy8geSA9IDxDdXN0b21UeXBlPjMyMQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEKCWZyYW1lX2J1cnkgMiAvLyB5OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTgKCS8vIGFzc2VydCh4ID09PSB5KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geDogdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geTogdWludDI1NgoJYj09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MAoJLy8gYXNzZXJ0KE1ZX0NPTlNUID09PSA0NTYpCglpbnQgNDU2CglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MQoJLy8gYXNzZXJ0KEVYVEVSTkFMX0NPTlNUID09PSA2NTQpCglpbnQgNjU0CglkdXAKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImV4dGVybmFsTWV0aG9kKCl1aW50OCIKCW1ldGhvZCAiZSgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZXh0ZXJuYWxNZXRob2QgKmFiaV9yb3V0ZV9lCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgovLyBlKCl2b2lkCiphYmlfcm91dGVfZToKCS8vIGV4ZWN1dGUgZSgpdm9pZAoJY2FsbHN1YiBlCglpbnQgMQoJcmV0dXJuCgovLyBlKCk6IHZvaWQKZToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1MwoJLy8gdmFsOiBFeHRlcm5hbEN1c3RvbVR5cGUgPSA8RXh0ZXJuYWxDdXN0b21UeXBlPjEyMwoJaW50IDEyMwoJZnJhbWVfYnVyeSAwIC8vIHZhbDogRXh0ZXJuYWxDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTQKCS8vIGFzc2VydCh0aGlzLmV4dGVybmFsS2V5LnZhbHVlID09PSB2YWwpCglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJaW50IDEyMyAvLyB2YWw6IEV4dGVybmFsQ3VzdG9tVHlwZQoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjU1CgkvLyB4ID0gPHVpbnQyNTY+MzIxCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE0MQoJZnJhbWVfYnVyeSAxIC8vIHg6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1NgoJLy8geSA9IDxDdXN0b21UeXBlPjMyMQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEKCWZyYW1lX2J1cnkgMiAvLyB5OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTgKCS8vIGFzc2VydCh4ID09PSB5KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geDogdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geTogdWludDI1NgoJYj09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MAoJLy8gYXNzZXJ0KE1ZX0NPTlNUID09PSA0NTYpCglpbnQgNDU2CglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MQoJLy8gYXNzZXJ0KEVYVEVSTkFMX0NPTlNUID09PSA2NTQpCglpbnQgNjU0CglkdXAKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImV4dGVybmFsTWV0aG9kKCl1aW50OCIKCW1ldGhvZCAiZSgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZXh0ZXJuYWxNZXRob2QgKmFiaV9yb3V0ZV9lCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/E.arc56_draft.json b/tests/contracts/artifacts/E.arc56_draft.json index 46e0877e1..2ab65f022 100644 --- a/tests/contracts/artifacts/E.arc56_draft.json +++ b/tests/contracts/artifacts/E.arc56_draft.json @@ -79,651 +79,654 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 51, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 13, - "source": 51, - "pc": [ - 52, - 53 - ] - }, - { - "teal": 14, - "source": 51, - "pc": [ - 54 - ] - }, - { - "teal": 15, - "source": 51, - "pc": [ - 55, - 56 - ] - }, - { - "teal": 16, - "source": 51, - "pc": [ - 57 - ] - }, - { - "teal": 17, - "source": 51, - "pc": [ - 58, - 59 - ] - }, - { - "teal": 18, - "source": 51, - "pc": [ - 60 - ] - }, - { - "teal": 19, - "source": 51, - "pc": [ - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86 - ] - }, - { - "teal": 23, - "source": 51, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 87 - ] - }, - { - "teal": 28, - "source": 10, - "pc": [ - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 31, - "source": 10, - "pc": [ - 94, - 95, - 96 - ] - }, - { - "teal": 32, - "source": 10, - "pc": [ - 97 - ] - }, - { - "teal": 33, - "source": 10, - "pc": [ - 98 - ] - }, - { - "teal": 34, - "source": 10, - "pc": [ - 99 - ] - }, - { - "teal": 35, - "source": 10, - "pc": [ - 100, - 101 - ] - }, - { - "teal": 36, - "source": 10, - "pc": [ - 102 - ] - }, - { - "teal": 39, - "source": 10, - "errorMessage": "externalMethod return value overflowed 8 bits", - "pc": [ - 103 - ] - }, - { - "teal": 40, - "source": 10, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 41, - "source": 10, - "pc": [ - 107 - ] - }, - { - "teal": 42, - "source": 10, - "pc": [ - 108 - ] - }, - { - "teal": 43, - "source": 10, - "pc": [ - 109 - ] - }, - { - "teal": 44, - "source": 10, - "pc": [ - 110 - ] - }, - { - "teal": 48, - "source": 10, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 52, - "source": 12, - "pc": [ - 114 - ] - }, - { - "teal": 53, - "source": 13, - "pc": [ - 115, - 116, - 117 - ] - }, - { - "teal": 54, - "source": 12, - "pc": [ - 118 - ] - }, - { - "teal": 58, - "source": 13, - "pc": [ - 119 - ] - }, - { - "teal": 59, - "source": 13, - "pc": [ - 120 - ] - }, - { - "teal": 60, - "source": 13, - "pc": [ - 121 - ] - }, - { - "teal": 61, - "source": 10, - "pc": [ - 122 - ] - }, - { - "teal": 66, - "source": 52, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 67, - "source": 52, - "pc": [ - 126 - ] - }, - { - "teal": 68, - "source": 52, - "pc": [ - 127 - ] - }, - { - "teal": 72, - "source": 52, - "pc": [ - 128, - 129, - 130 - ] - }, - { - "teal": 75, - "source": 52, - "pc": [ - 131, - 132 - ] - }, - { - "teal": 76, - "source": 52, - "pc": [ - 133, - 134 - ] - }, - { - "teal": 80, - "source": 53, - "pc": [ - 135 - ] - }, - { - "teal": 81, - "source": 53, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 85, - "source": 54, - "pc": [ - 138 - ] - }, - { - "teal": 86, - "source": 54, - "pc": [ - 139 - ] - }, - { - "teal": 87, - "source": 54, - "pc": [ - 140 - ] - }, - { - "teal": 88, - "source": 54, - "pc": [ - 141 - ] - }, - { - "teal": 89, - "source": 54, - "pc": [ - 142 - ] - }, - { - "teal": 90, - "source": 54, - "pc": [ - 143 - ] - }, - { - "teal": 94, - "source": 55, - "pc": [ - 144 - ] - }, - { - "teal": 95, - "source": 55, - "pc": [ - 145, - 146 - ] - }, - { - "teal": 99, - "source": 56, - "pc": [ - 147 - ] - }, - { - "teal": 100, - "source": 56, - "pc": [ - 148, - 149 - ] - }, - { - "teal": 104, - "source": 58, - "pc": [ - 150 - ] - }, - { - "teal": 105, - "source": 58, - "pc": [ - 151 - ] - }, - { - "teal": 106, - "source": 58, - "pc": [ - 152 - ] - }, - { - "teal": 107, - "source": 58, - "pc": [ - 153 - ] - }, - { - "teal": 111, - "source": 60, - "pc": [ - 154, - 155, - 156 - ] - }, - { - "teal": 112, - "source": 60, - "pc": [ - 157 - ] - }, - { - "teal": 113, - "source": 60, - "pc": [ - 158 - ] - }, - { - "teal": 114, - "source": 60, - "pc": [ - 159 - ] - }, - { - "teal": 118, - "source": 61, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 119, - "source": 61, - "pc": [ - 163 - ] - }, - { - "teal": 120, - "source": 61, - "pc": [ - 164 - ] - }, - { - "teal": 121, - "source": 61, - "pc": [ - 165 - ] - }, - { - "teal": 122, - "source": 52, - "pc": [ - 166 - ] - }, - { - "teal": 125, - "source": 51, - "pc": [ - 167 - ] - }, - { - "teal": 126, - "source": 51, - "pc": [ - 168 - ] - }, - { - "teal": 129, - "source": 51, - "pc": [ - 169, - 170, - 171, - 172, - 173, - 174 - ] - }, - { - "teal": 130, - "source": 51, - "pc": [ - 175, - 176, - 177 - ] - }, - { - "teal": 131, - "source": 51, - "pc": [ - 178, - 179, - 180, - 181 - ] - }, - { - "teal": 134, - "source": 51, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 182 - ] - }, - { - "teal": 137, - "source": 51, - "pc": [ - 183, - 184, - 185, - 186, - 187, - 188 - ] - }, - { - "teal": 138, - "source": 51, - "pc": [ - 189, - 190, - 191, - 192, - 193, - 194 - ] - }, - { - "teal": 139, - "source": 51, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 140, - "source": 51, - "pc": [ - 198, - 199, - 200, - 201, - 202, - 203 - ] - }, - { - "teal": 143, - "source": 51, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 204 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 51, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 13, + "source": 51, + "pc": [ + 52, + 53 + ] + }, + { + "teal": 14, + "source": 51, + "pc": [ + 54 + ] + }, + { + "teal": 15, + "source": 51, + "pc": [ + 55, + 56 + ] + }, + { + "teal": 16, + "source": 51, + "pc": [ + 57 + ] + }, + { + "teal": 17, + "source": 51, + "pc": [ + 58, + 59 + ] + }, + { + "teal": 18, + "source": 51, + "pc": [ + 60 + ] + }, + { + "teal": 19, + "source": 51, + "pc": [ + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86 + ] + }, + { + "teal": 23, + "source": 51, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 87 + ] + }, + { + "teal": 28, + "source": 10, + "pc": [ + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 31, + "source": 10, + "pc": [ + 94, + 95, + 96 + ] + }, + { + "teal": 32, + "source": 10, + "pc": [ + 97 + ] + }, + { + "teal": 33, + "source": 10, + "pc": [ + 98 + ] + }, + { + "teal": 34, + "source": 10, + "pc": [ + 99 + ] + }, + { + "teal": 35, + "source": 10, + "pc": [ + 100, + 101 + ] + }, + { + "teal": 36, + "source": 10, + "pc": [ + 102 + ] + }, + { + "teal": 39, + "source": 10, + "errorMessage": "externalMethod return value overflowed 8 bits", + "pc": [ + 103 + ] + }, + { + "teal": 40, + "source": 10, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 41, + "source": 10, + "pc": [ + 107 + ] + }, + { + "teal": 42, + "source": 10, + "pc": [ + 108 + ] + }, + { + "teal": 43, + "source": 10, + "pc": [ + 109 + ] + }, + { + "teal": 44, + "source": 10, + "pc": [ + 110 + ] + }, + { + "teal": 48, + "source": 10, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 52, + "source": 12, + "pc": [ + 114 + ] + }, + { + "teal": 53, + "source": 13, + "pc": [ + 115, + 116, + 117 + ] + }, + { + "teal": 54, + "source": 12, + "pc": [ + 118 + ] + }, + { + "teal": 58, + "source": 13, + "pc": [ + 119 + ] + }, + { + "teal": 59, + "source": 13, + "pc": [ + 120 + ] + }, + { + "teal": 60, + "source": 13, + "pc": [ + 121 + ] + }, + { + "teal": 61, + "source": 10, + "pc": [ + 122 + ] + }, + { + "teal": 66, + "source": 52, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 67, + "source": 52, + "pc": [ + 126 + ] + }, + { + "teal": 68, + "source": 52, + "pc": [ + 127 + ] + }, + { + "teal": 72, + "source": 52, + "pc": [ + 128, + 129, + 130 + ] + }, + { + "teal": 75, + "source": 52, + "pc": [ + 131, + 132 + ] + }, + { + "teal": 76, + "source": 52, + "pc": [ + 133, + 134 + ] + }, + { + "teal": 80, + "source": 53, + "pc": [ + 135 + ] + }, + { + "teal": 81, + "source": 53, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 85, + "source": 54, + "pc": [ + 138 + ] + }, + { + "teal": 86, + "source": 54, + "pc": [ + 139 + ] + }, + { + "teal": 87, + "source": 54, + "pc": [ + 140 + ] + }, + { + "teal": 88, + "source": 54, + "pc": [ + 141 + ] + }, + { + "teal": 89, + "source": 54, + "pc": [ + 142 + ] + }, + { + "teal": 90, + "source": 54, + "pc": [ + 143 + ] + }, + { + "teal": 94, + "source": 55, + "pc": [ + 144 + ] + }, + { + "teal": 95, + "source": 55, + "pc": [ + 145, + 146 + ] + }, + { + "teal": 99, + "source": 56, + "pc": [ + 147 + ] + }, + { + "teal": 100, + "source": 56, + "pc": [ + 148, + 149 + ] + }, + { + "teal": 104, + "source": 58, + "pc": [ + 150 + ] + }, + { + "teal": 105, + "source": 58, + "pc": [ + 151 + ] + }, + { + "teal": 106, + "source": 58, + "pc": [ + 152 + ] + }, + { + "teal": 107, + "source": 58, + "pc": [ + 153 + ] + }, + { + "teal": 111, + "source": 60, + "pc": [ + 154, + 155, + 156 + ] + }, + { + "teal": 112, + "source": 60, + "pc": [ + 157 + ] + }, + { + "teal": 113, + "source": 60, + "pc": [ + 158 + ] + }, + { + "teal": 114, + "source": 60, + "pc": [ + 159 + ] + }, + { + "teal": 118, + "source": 61, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 119, + "source": 61, + "pc": [ + 163 + ] + }, + { + "teal": 120, + "source": 61, + "pc": [ + 164 + ] + }, + { + "teal": 121, + "source": 61, + "pc": [ + 165 + ] + }, + { + "teal": 122, + "source": 52, + "pc": [ + 166 + ] + }, + { + "teal": 125, + "source": 51, + "pc": [ + 167 + ] + }, + { + "teal": 126, + "source": 51, + "pc": [ + 168 + ] + }, + { + "teal": 129, + "source": 51, + "pc": [ + 169, + 170, + 171, + 172, + 173, + 174 + ] + }, + { + "teal": 130, + "source": 51, + "pc": [ + 175, + 176, + 177 + ] + }, + { + "teal": 131, + "source": 51, + "pc": [ + 178, + 179, + 180, + 181 + ] + }, + { + "teal": 134, + "source": 51, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 182 + ] + }, + { + "teal": 137, + "source": 51, + "pc": [ + 183, + 184, + 185, + 186, + 187, + 188 + ] + }, + { + "teal": 138, + "source": 51, + "pc": [ + 189, + 190, + 191, + 192, + 193, + 194 + ] + }, + { + "teal": 139, + "source": 51, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 140, + "source": 51, + "pc": [ + 198, + 199, + 200, + 201, + 202, + 203 + ] + }, + { + "teal": 143, + "source": 51, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 204 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgovLyBlKCl2b2lkCiphYmlfcm91dGVfZToKCS8vIGV4ZWN1dGUgZSgpdm9pZAoJY2FsbHN1YiBlCglpbnQgMQoJcmV0dXJuCgovLyBlKCk6IHZvaWQKZToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1MwoJLy8gdmFsOiBFeHRlcm5hbEN1c3RvbVR5cGUgPSA8RXh0ZXJuYWxDdXN0b21UeXBlPjEyMwoJaW50IDEyMwoJZnJhbWVfYnVyeSAwIC8vIHZhbDogRXh0ZXJuYWxDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTQKCS8vIGFzc2VydCh0aGlzLmV4dGVybmFsS2V5LnZhbHVlID09PSB2YWwpCglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJaW50IDEyMyAvLyB2YWw6IEV4dGVybmFsQ3VzdG9tVHlwZQoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjU1CgkvLyB4ID0gPHVpbnQyNTY+MzIxCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE0MQoJZnJhbWVfYnVyeSAxIC8vIHg6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1NgoJLy8geSA9IDxDdXN0b21UeXBlPjMyMQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEKCWZyYW1lX2J1cnkgMiAvLyB5OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTgKCS8vIGFzc2VydCh4ID09PSB5KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geDogdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geTogdWludDI1NgoJYj09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MAoJLy8gYXNzZXJ0KE1ZX0NPTlNUID09PSA0NTYpCglpbnQgNDU2CglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MQoJLy8gYXNzZXJ0KEVYVEVSTkFMX0NPTlNUID09PSA2NTQpCglpbnQgNjU0CglkdXAKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImV4dGVybmFsTWV0aG9kKCl1aW50OCIKCW1ldGhvZCAiZSgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZXh0ZXJuYWxNZXRob2QgKmFiaV9yb3V0ZV9lCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgovLyBlKCl2b2lkCiphYmlfcm91dGVfZToKCS8vIGV4ZWN1dGUgZSgpdm9pZAoJY2FsbHN1YiBlCglpbnQgMQoJcmV0dXJuCgovLyBlKCk6IHZvaWQKZToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1MwoJLy8gdmFsOiBFeHRlcm5hbEN1c3RvbVR5cGUgPSA8RXh0ZXJuYWxDdXN0b21UeXBlPjEyMwoJaW50IDEyMwoJZnJhbWVfYnVyeSAwIC8vIHZhbDogRXh0ZXJuYWxDdXN0b21UeXBlCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTQKCS8vIGFzc2VydCh0aGlzLmV4dGVybmFsS2V5LnZhbHVlID09PSB2YWwpCglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJaW50IDEyMyAvLyB2YWw6IEV4dGVybmFsQ3VzdG9tVHlwZQoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjU1CgkvLyB4ID0gPHVpbnQyNTY+MzIxCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE0MQoJZnJhbWVfYnVyeSAxIC8vIHg6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo1NgoJLy8geSA9IDxDdXN0b21UeXBlPjMyMQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEKCWZyYW1lX2J1cnkgMiAvLyB5OiB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NTgKCS8vIGFzc2VydCh4ID09PSB5KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geDogdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNDEgLy8geTogdWludDI1NgoJYj09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MAoJLy8gYXNzZXJ0KE1ZX0NPTlNUID09PSA0NTYpCglpbnQgNDU2CglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2MQoJLy8gYXNzZXJ0KEVYVEVSTkFMX0NPTlNUID09PSA2NTQpCglpbnQgNjU0CglkdXAKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImV4dGVybmFsTWV0aG9kKCl1aW50OCIKCW1ldGhvZCAiZSgpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfZXh0ZXJuYWxNZXRob2QgKmFiaV9yb3V0ZV9lCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ExternalContract.approval.teal b/tests/contracts/artifacts/ExternalContract.approval.teal index 419bde2a3..4fb70a846 100644 --- a/tests/contracts/artifacts/ExternalContract.approval.teal +++ b/tests/contracts/artifacts/ExternalContract.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ExternalContract.arc32.json b/tests/contracts/artifacts/ExternalContract.arc32.json index 15543ed9f..d9b28f7d4 100644 --- a/tests/contracts/artifacts/ExternalContract.arc32.json +++ b/tests/contracts/artifacts/ExternalContract.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0ZXJuYWxNZXRob2QoKXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0ZXJuYWxNZXRob2QoKXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ExternalContract.arc56_draft.json b/tests/contracts/artifacts/ExternalContract.arc56_draft.json index fdeba15ea..2c2a17174 100644 --- a/tests/contracts/artifacts/ExternalContract.arc56_draft.json +++ b/tests/contracts/artifacts/ExternalContract.arc56_draft.json @@ -66,373 +66,376 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 7, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17 - ] - }, - { - "teal": 13, - "source": 7, - "pc": [ - 18, - 19 - ] - }, - { - "teal": 14, - "source": 7, - "pc": [ - 20 - ] - }, - { - "teal": 15, - "source": 7, - "pc": [ - 21, - 22 - ] - }, - { - "teal": 16, - "source": 7, - "pc": [ - 23 - ] - }, - { - "teal": 17, - "source": 7, - "pc": [ - 24, - 25 - ] - }, - { - "teal": 18, - "source": 7, - "pc": [ - 26 - ] - }, - { - "teal": 19, - "source": 7, - "pc": [ - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 23, - "source": 7, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 53 - ] - }, - { - "teal": 28, - "source": 10, - "pc": [ - 54, - 55, - 56, - 57, - 58, - 59 - ] - }, - { - "teal": 31, - "source": 10, - "pc": [ - 60, - 61, - 62 - ] - }, - { - "teal": 32, - "source": 10, - "pc": [ - 63 - ] - }, - { - "teal": 33, - "source": 10, - "pc": [ - 64 - ] - }, - { - "teal": 34, - "source": 10, - "pc": [ - 65 - ] - }, - { - "teal": 35, - "source": 10, - "pc": [ - 66, - 67 - ] - }, - { - "teal": 36, - "source": 10, - "pc": [ - 68 - ] - }, - { - "teal": 39, - "source": 10, - "errorMessage": "externalMethod return value overflowed 8 bits", - "pc": [ - 69 - ] - }, - { - "teal": 40, - "source": 10, - "pc": [ - 70, - 71, - 72 - ] - }, - { - "teal": 41, - "source": 10, - "pc": [ - 73 - ] - }, - { - "teal": 42, - "source": 10, - "pc": [ - 74 - ] - }, - { - "teal": 43, - "source": 10, - "pc": [ - 75 - ] - }, - { - "teal": 44, - "source": 10, - "pc": [ - 76 - ] - }, - { - "teal": 48, - "source": 10, - "pc": [ - 77, - 78, - 79 - ] - }, - { - "teal": 52, - "source": 11, - "pc": [ - 80 - ] - }, - { - "teal": 53, - "source": 11, - "pc": [ - 81, - 82, - 83 - ] - }, - { - "teal": 54, - "source": 11, - "pc": [ - 84 - ] - }, - { - "teal": 58, - "source": 12, - "pc": [ - 85 - ] - }, - { - "teal": 59, - "source": 12, - "pc": [ - 86 - ] - }, - { - "teal": 60, - "source": 12, - "pc": [ - 87 - ] - }, - { - "teal": 61, - "source": 10, - "pc": [ - 88 - ] - }, - { - "teal": 64, - "source": 7, - "pc": [ - 89 - ] - }, - { - "teal": 65, - "source": 7, - "pc": [ - 90 - ] - }, - { - "teal": 68, - "source": 7, - "pc": [ - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 69, - "source": 7, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 70, - "source": 7, - "pc": [ - 100, - 101, - 102, - 103 - ] - }, - { - "teal": 73, - "source": 7, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 104 - ] - }, - { - "teal": 76, - "source": 7, - "pc": [ - 105, - 106, - 107, - 108, - 109, - 110 - ] - }, - { - "teal": 77, - "source": 7, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 78, - "source": 7, - "pc": [ - 114, - 115, - 116, - 117 - ] - }, - { - "teal": 81, - "source": 7, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 118 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 7, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17 + ] + }, + { + "teal": 13, + "source": 7, + "pc": [ + 18, + 19 + ] + }, + { + "teal": 14, + "source": 7, + "pc": [ + 20 + ] + }, + { + "teal": 15, + "source": 7, + "pc": [ + 21, + 22 + ] + }, + { + "teal": 16, + "source": 7, + "pc": [ + 23 + ] + }, + { + "teal": 17, + "source": 7, + "pc": [ + 24, + 25 + ] + }, + { + "teal": 18, + "source": 7, + "pc": [ + 26 + ] + }, + { + "teal": 19, + "source": 7, + "pc": [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 23, + "source": 7, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 53 + ] + }, + { + "teal": 28, + "source": 10, + "pc": [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + }, + { + "teal": 31, + "source": 10, + "pc": [ + 60, + 61, + 62 + ] + }, + { + "teal": 32, + "source": 10, + "pc": [ + 63 + ] + }, + { + "teal": 33, + "source": 10, + "pc": [ + 64 + ] + }, + { + "teal": 34, + "source": 10, + "pc": [ + 65 + ] + }, + { + "teal": 35, + "source": 10, + "pc": [ + 66, + 67 + ] + }, + { + "teal": 36, + "source": 10, + "pc": [ + 68 + ] + }, + { + "teal": 39, + "source": 10, + "errorMessage": "externalMethod return value overflowed 8 bits", + "pc": [ + 69 + ] + }, + { + "teal": 40, + "source": 10, + "pc": [ + 70, + 71, + 72 + ] + }, + { + "teal": 41, + "source": 10, + "pc": [ + 73 + ] + }, + { + "teal": 42, + "source": 10, + "pc": [ + 74 + ] + }, + { + "teal": 43, + "source": 10, + "pc": [ + 75 + ] + }, + { + "teal": 44, + "source": 10, + "pc": [ + 76 + ] + }, + { + "teal": 48, + "source": 10, + "pc": [ + 77, + 78, + 79 + ] + }, + { + "teal": 52, + "source": 11, + "pc": [ + 80 + ] + }, + { + "teal": 53, + "source": 11, + "pc": [ + 81, + 82, + 83 + ] + }, + { + "teal": 54, + "source": 11, + "pc": [ + 84 + ] + }, + { + "teal": 58, + "source": 12, + "pc": [ + 85 + ] + }, + { + "teal": 59, + "source": 12, + "pc": [ + 86 + ] + }, + { + "teal": 60, + "source": 12, + "pc": [ + 87 + ] + }, + { + "teal": 61, + "source": 10, + "pc": [ + 88 + ] + }, + { + "teal": 64, + "source": 7, + "pc": [ + 89 + ] + }, + { + "teal": 65, + "source": 7, + "pc": [ + 90 + ] + }, + { + "teal": 68, + "source": 7, + "pc": [ + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 69, + "source": 7, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 70, + "source": 7, + "pc": [ + 100, + 101, + 102, + 103 + ] + }, + { + "teal": 73, + "source": 7, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 104 + ] + }, + { + "teal": 76, + "source": 7, + "pc": [ + 105, + 106, + 107, + 108, + 109, + 110 + ] + }, + { + "teal": 77, + "source": 7, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 78, + "source": 7, + "pc": [ + 114, + 115, + 116, + 117 + ] + }, + { + "teal": 81, + "source": 7, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 118 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0ZXJuYWxNZXRob2QoKXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBleHRlcm5hbE1ldGhvZCgpdWludDgKKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBleHRlcm5hbE1ldGhvZCgpdWludDgKCWNhbGxzdWIgZXh0ZXJuYWxNZXRob2QKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyBleHRlcm5hbE1ldGhvZCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHRlcm5hbE1ldGhvZCgpOiBDdXN0b21UeXBlCmV4dGVybmFsTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLWV4dGVybmFsLmFsZ28udHM6MTEKCS8vIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWUgPSA8Q3VzdG9tVHlwZT4xMjMKCWJ5dGUgMHg2NTc4NzQ2NTcyNmU2MTZjNGI2NTc5IC8vICJleHRlcm5hbEtleSIKCWJ5dGUgMHg3YgoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UtZXh0ZXJuYWwuYWxnby50czoxMgoJLy8gcmV0dXJuIHRoaXMuZXh0ZXJuYWxLZXkudmFsdWU7CglieXRlIDB4NjU3ODc0NjU3MjZlNjE2YzRiNjU3OSAvLyAiZXh0ZXJuYWxLZXkiCglhcHBfZ2xvYmFsX2dldAoJYnRvaQoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiZXh0ZXJuYWxNZXRob2QoKXVpbnQ4IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9leHRlcm5hbE1ldGhvZAoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/F.approval.teal b/tests/contracts/artifacts/F.approval.teal index d96966161..988180429 100644 --- a/tests/contracts/artifacts/F.approval.teal +++ b/tests/contracts/artifacts/F.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/F.arc32.json b/tests/contracts/artifacts/F.arc32.json index 612985ede..0d573942a 100644 --- a/tests/contracts/artifacts/F.arc32.json +++ b/tests/contracts/artifacts/F.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/F.arc56_draft.json b/tests/contracts/artifacts/F.arc56_draft.json index ade637bfc..31fae64c8 100644 --- a/tests/contracts/artifacts/F.arc56_draft.json +++ b/tests/contracts/artifacts/F.arc56_draft.json @@ -60,384 +60,387 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 65, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 65, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 65, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 65, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 65, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 65, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 65, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 65, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 65, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 66, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 66, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 66, - "pc": [ - 49 - ] - }, - { - "teal": 33, - "source": 66, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 66, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 66, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 66, - "pc": [ - 55 - ] - }, - { - "teal": 37, - "source": 66, - "pc": [ - 56 - ] - }, - { - "teal": 38, - "source": 66, - "pc": [ - 57 - ] - }, - { - "teal": 39, - "source": 66, - "pc": [ - 58 - ] - }, - { - "teal": 40, - "source": 66, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 66, - "pc": [ - 60 - ] - }, - { - "teal": 45, - "source": 66, - "pc": [ - 61, - 62, - 63 - ] - }, - { - "teal": 49, - "source": 67, - "pc": [ - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71 - ] - }, - { - "teal": 50, - "source": 66, - "pc": [ - 72 - ] - }, - { - "teal": 54, - "source": 70, - "pc": [ - 73, - 74, - 75 - ] - }, - { - "teal": 58, - "source": 71, - "pc": [ - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84 - ] - }, - { - "teal": 59, - "source": 70, - "pc": [ - 85 - ] - }, - { - "teal": 63, - "source": 74, - "pc": [ - 86, - 87, - 88 - ] - }, - { - "teal": 67, - "source": 75, - "pc": [ - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99 - ] - }, - { - "teal": 68, - "source": 74, - "pc": [ - 100 - ] - }, - { - "teal": 71, - "source": 65, - "pc": [ - 101 - ] - }, - { - "teal": 72, - "source": 65, - "pc": [ - 102 - ] - }, - { - "teal": 75, - "source": 65, - "pc": [ - 103, - 104, - 105, - 106, - 107, - 108 - ] - }, - { - "teal": 76, - "source": 65, - "pc": [ - 109, - 110, - 111 - ] - }, - { - "teal": 77, - "source": 65, - "pc": [ - 112, - 113, - 114, - 115 - ] - }, - { - "teal": 80, - "source": 65, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 116 - ] - }, - { - "teal": 83, - "source": 65, - "pc": [ - 117, - 118, - 119, - 120, - 121, - 122 - ] - }, - { - "teal": 84, - "source": 65, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 85, - "source": 65, - "pc": [ - 126, - 127, - 128, - 129 - ] - }, - { - "teal": 88, - "source": 65, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 130 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 65, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 65, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 65, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 65, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 65, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 65, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 65, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 65, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 65, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 66, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 66, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 66, + "pc": [ + 49 + ] + }, + { + "teal": 33, + "source": 66, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 66, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 66, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 66, + "pc": [ + 55 + ] + }, + { + "teal": 37, + "source": 66, + "pc": [ + 56 + ] + }, + { + "teal": 38, + "source": 66, + "pc": [ + 57 + ] + }, + { + "teal": 39, + "source": 66, + "pc": [ + 58 + ] + }, + { + "teal": 40, + "source": 66, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 66, + "pc": [ + 60 + ] + }, + { + "teal": 45, + "source": 66, + "pc": [ + 61, + 62, + 63 + ] + }, + { + "teal": 49, + "source": 67, + "pc": [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + }, + { + "teal": 50, + "source": 66, + "pc": [ + 72 + ] + }, + { + "teal": 54, + "source": 70, + "pc": [ + 73, + 74, + 75 + ] + }, + { + "teal": 58, + "source": 71, + "pc": [ + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84 + ] + }, + { + "teal": 59, + "source": 70, + "pc": [ + 85 + ] + }, + { + "teal": 63, + "source": 74, + "pc": [ + 86, + 87, + 88 + ] + }, + { + "teal": 67, + "source": 75, + "pc": [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99 + ] + }, + { + "teal": 68, + "source": 74, + "pc": [ + 100 + ] + }, + { + "teal": 71, + "source": 65, + "pc": [ + 101 + ] + }, + { + "teal": 72, + "source": 65, + "pc": [ + 102 + ] + }, + { + "teal": 75, + "source": 65, + "pc": [ + 103, + 104, + 105, + 106, + 107, + 108 + ] + }, + { + "teal": 76, + "source": 65, + "pc": [ + 109, + 110, + 111 + ] + }, + { + "teal": 77, + "source": 65, + "pc": [ + 112, + 113, + 114, + 115 + ] + }, + { + "teal": 80, + "source": 65, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 116 + ] + }, + { + "teal": 83, + "source": 65, + "pc": [ + 117, + 118, + 119, + 120, + 121, + 122 + ] + }, + { + "teal": 84, + "source": 65, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 85, + "source": 65, + "pc": [ + 126, + 127, + 128, + 129 + ] + }, + { + "teal": 88, + "source": 65, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 130 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/FunctionsTest.approval.teal b/tests/contracts/artifacts/FunctionsTest.approval.teal index 23e2a6337..c2f506e74 100644 --- a/tests/contracts/artifacts/FunctionsTest.approval.teal +++ b/tests/contracts/artifacts/FunctionsTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/FunctionsTest.arc32.json b/tests/contracts/artifacts/FunctionsTest.arc32.json index a28e44a46..34a41bbe2 100644 --- a/tests/contracts/artifacts/FunctionsTest.arc32.json +++ b/tests/contracts/artifacts/FunctionsTest.arc32.json @@ -49,7 +49,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYWxsTm9uQ2xhc3NGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxOb25DbGFzc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGNhbGxOb25DbGFzc0Z1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbE5vbkNsYXNzRnVuY3Rpb24oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKY2FsbE5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6MTIKCS8vIHJldHVybiBub25DbGFzc0Z1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBub25DbGFzc0Z1bmN0aW9uCglyZXRzdWIKCi8vIGNhbGxFeHRlcm5hbEZ1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfY2FsbEV4dGVybmFsRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbEV4dGVybmFsRnVuY3Rpb24odWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgY2FsbEV4dGVybmFsRnVuY3Rpb24KCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsRXh0ZXJuYWxGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsRXh0ZXJuYWxGdW5jdGlvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9mdW5jdGlvbnMuYWxnby50czoxNgoJLy8gcmV0dXJuIGV4dGVybmFsRnVuY3Rpb24oYSwgYik7CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGV4dGVybmFsRnVuY3Rpb24KCXJldHN1YgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBjYWxsUGFja2FnZUZ1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsUGFja2FnZUZ1bmN0aW9uOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2Z1bmN0aW9ucy5hbGdvLnRzOjIwCgkvLyByZXR1cm4gcGFja2FnZUZ1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBwYWNrYWdlRnVuY3Rpb24KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJjYWxsRXh0ZXJuYWxGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2FsbE5vbkNsYXNzRnVuY3Rpb24gKmFiaV9yb3V0ZV9jYWxsRXh0ZXJuYWxGdW5jdGlvbiAqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCi8vIHBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwYWNrYWdlRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyBub2RlX21vZHVsZXMvdGVhbHNjcmlwdF90ZXN0X3BhY2thZ2UvaW5kZXgudHM6NAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBleHRlcm5hbEZ1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmV4dGVybmFsRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLWV4dGVybmFsLmFsZ28udHM6MgoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBub25DbGFzc0Z1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Cm5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6NwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYWxsTm9uQ2xhc3NGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxOb25DbGFzc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGNhbGxOb25DbGFzc0Z1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbE5vbkNsYXNzRnVuY3Rpb24oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKY2FsbE5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6MTIKCS8vIHJldHVybiBub25DbGFzc0Z1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBub25DbGFzc0Z1bmN0aW9uCglyZXRzdWIKCi8vIGNhbGxFeHRlcm5hbEZ1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfY2FsbEV4dGVybmFsRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbEV4dGVybmFsRnVuY3Rpb24odWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgY2FsbEV4dGVybmFsRnVuY3Rpb24KCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsRXh0ZXJuYWxGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsRXh0ZXJuYWxGdW5jdGlvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9mdW5jdGlvbnMuYWxnby50czoxNgoJLy8gcmV0dXJuIGV4dGVybmFsRnVuY3Rpb24oYSwgYik7CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGV4dGVybmFsRnVuY3Rpb24KCXJldHN1YgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBjYWxsUGFja2FnZUZ1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsUGFja2FnZUZ1bmN0aW9uOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2Z1bmN0aW9ucy5hbGdvLnRzOjIwCgkvLyByZXR1cm4gcGFja2FnZUZ1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBwYWNrYWdlRnVuY3Rpb24KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJjYWxsRXh0ZXJuYWxGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2FsbE5vbkNsYXNzRnVuY3Rpb24gKmFiaV9yb3V0ZV9jYWxsRXh0ZXJuYWxGdW5jdGlvbiAqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCi8vIHBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwYWNrYWdlRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyBub2RlX21vZHVsZXMvdGVhbHNjcmlwdF90ZXN0X3BhY2thZ2UvaW5kZXgudHM6NAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBleHRlcm5hbEZ1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmV4dGVybmFsRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLWV4dGVybmFsLmFsZ28udHM6MgoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBub25DbGFzc0Z1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Cm5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6NwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/FunctionsTest.arc56_draft.json b/tests/contracts/artifacts/FunctionsTest.arc56_draft.json index 67ee0c082..f8959eca8 100644 --- a/tests/contracts/artifacts/FunctionsTest.arc56_draft.json +++ b/tests/contracts/artifacts/FunctionsTest.arc56_draft.json @@ -113,721 +113,724 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 10, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10 - ] - }, - { - "teal": 13, - "source": 10, - "pc": [ - 11, - 12 - ] - }, - { - "teal": 14, - "source": 10, - "pc": [ - 13 - ] - }, - { - "teal": 15, - "source": 10, - "pc": [ - 14, - 15 - ] - }, - { - "teal": 16, - "source": 10, - "pc": [ - 16 - ] - }, - { - "teal": 17, - "source": 10, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 18, - "source": 10, - "pc": [ - 19 - ] - }, - { - "teal": 19, - "source": 10, - "pc": [ - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 23, - "source": 10, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 46 - ] - }, - { - "teal": 28, - "source": 11, - "pc": [ - 47 - ] - }, - { - "teal": 31, - "source": 11, - "pc": [ - 48, - 49, - 50 - ] - }, - { - "teal": 32, - "source": 11, - "pc": [ - 51 - ] - }, - { - "teal": 35, - "source": 11, - "pc": [ - 52, - 53, - 54 - ] - }, - { - "teal": 36, - "source": 11, - "pc": [ - 55 - ] - }, - { - "teal": 39, - "source": 11, - "pc": [ - 56, - 57, - 58 - ] - }, - { - "teal": 40, - "source": 11, - "pc": [ - 59 - ] - }, - { - "teal": 41, - "source": 11, - "pc": [ - 60 - ] - }, - { - "teal": 42, - "source": 11, - "pc": [ - 61 - ] - }, - { - "teal": 43, - "source": 11, - "pc": [ - 62 - ] - }, - { - "teal": 44, - "source": 11, - "pc": [ - 63 - ] - }, - { - "teal": 48, - "source": 11, - "pc": [ - 64, - 65, - 66 - ] - }, - { - "teal": 52, - "source": 12, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 53, - "source": 12, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 54, - "source": 12, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 55, - "source": 11, - "pc": [ - 74 - ] - }, - { - "teal": 60, - "source": 15, - "pc": [ - 75 - ] - }, - { - "teal": 63, - "source": 15, - "pc": [ - 76, - 77, - 78 - ] - }, - { - "teal": 64, - "source": 15, - "pc": [ - 79 - ] - }, - { - "teal": 67, - "source": 15, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 68, - "source": 15, - "pc": [ - 83 - ] - }, - { - "teal": 71, - "source": 15, - "pc": [ - 84, - 85, - 86 - ] - }, - { - "teal": 72, - "source": 15, - "pc": [ - 87 - ] - }, - { - "teal": 73, - "source": 15, - "pc": [ - 88 - ] - }, - { - "teal": 74, - "source": 15, - "pc": [ - 89 - ] - }, - { - "teal": 75, - "source": 15, - "pc": [ - 90 - ] - }, - { - "teal": 76, - "source": 15, - "pc": [ - 91 - ] - }, - { - "teal": 80, - "source": 15, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 84, - "source": 16, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 85, - "source": 16, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 86, - "source": 16, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 87, - "source": 15, - "pc": [ - 102 - ] - }, - { - "teal": 92, - "source": 19, - "pc": [ - 103 - ] - }, - { - "teal": 95, - "source": 19, - "pc": [ - 104, - 105, - 106 - ] - }, - { - "teal": 96, - "source": 19, - "pc": [ - 107 - ] - }, - { - "teal": 99, - "source": 19, - "pc": [ - 108, - 109, - 110 - ] - }, - { - "teal": 100, - "source": 19, - "pc": [ - 111 - ] - }, - { - "teal": 103, - "source": 19, - "pc": [ - 112, - 113, - 114 - ] - }, - { - "teal": 104, - "source": 19, - "pc": [ - 115 - ] - }, - { - "teal": 105, - "source": 19, - "pc": [ - 116 - ] - }, - { - "teal": 106, - "source": 19, - "pc": [ - 117 - ] - }, - { - "teal": 107, - "source": 19, - "pc": [ - 118 - ] - }, - { - "teal": 108, - "source": 19, - "pc": [ - 119 - ] - }, - { - "teal": 112, - "source": 19, - "pc": [ - 120, - 121, - 122 - ] - }, - { - "teal": 116, - "source": 20, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 117, - "source": 20, - "pc": [ - 125, - 126 - ] - }, - { - "teal": 118, - "source": 20, - "pc": [ - 127, - 128, - 129 - ] - }, - { - "teal": 119, - "source": 19, - "pc": [ - 130 - ] - }, - { - "teal": 122, - "source": 10, - "pc": [ - 131 - ] - }, - { - "teal": 123, - "source": 10, - "pc": [ - 132 - ] - }, - { - "teal": 126, - "source": 10, - "pc": [ - 133, - 134, - 135, - 136, - 137, - 138 - ] - }, - { - "teal": 127, - "source": 10, - "pc": [ - 139, - 140, - 141 - ] - }, - { - "teal": 128, - "source": 10, - "pc": [ - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 131, - "source": 10, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 146 - ] - }, - { - "teal": 134, - "source": 10, - "pc": [ - 147, - 148, - 149, - 150, - 151, - 152 - ] - }, - { - "teal": 135, - "source": 10, - "pc": [ - 153, - 154, - 155, - 156, - 157, - 158 - ] - }, - { - "teal": 136, - "source": 10, - "pc": [ - 159, - 160, - 161, - 162, - 163, - 164 - ] - }, - { - "teal": 137, - "source": 10, - "pc": [ - 165, - 166, - 167 - ] - }, - { - "teal": 138, - "source": 10, - "pc": [ - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175 - ] - }, - { - "teal": 141, - "source": 10, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 176 - ] - }, - { - "teal": 145, - "source": 2, - "pc": [ - 177, - 178, - 179 - ] - }, - { - "teal": 149, - "source": 4, - "pc": [ - 180, - 181 - ] - }, - { - "teal": 150, - "source": 4, - "pc": [ - 182, - 183 - ] - }, - { - "teal": 151, - "source": 4, - "pc": [ - 184 - ] - }, - { - "teal": 152, - "source": 2, - "pc": [ - 185 - ] - }, - { - "teal": 156, - "source": 1, - "pc": [ - 186, - 187, - 188 - ] - }, - { - "teal": 160, - "source": 2, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 161, - "source": 2, - "pc": [ - 191, - 192 - ] - }, - { - "teal": 162, - "source": 2, - "pc": [ - 193 - ] - }, - { - "teal": 163, - "source": 1, - "pc": [ - 194 - ] - }, - { - "teal": 167, - "source": 6, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 171, - "source": 7, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 172, - "source": 7, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 173, - "source": 7, - "pc": [ - 202 - ] - }, - { - "teal": 174, - "source": 6, - "pc": [ - 203 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 10, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10 + ] + }, + { + "teal": 13, + "source": 10, + "pc": [ + 11, + 12 + ] + }, + { + "teal": 14, + "source": 10, + "pc": [ + 13 + ] + }, + { + "teal": 15, + "source": 10, + "pc": [ + 14, + 15 + ] + }, + { + "teal": 16, + "source": 10, + "pc": [ + 16 + ] + }, + { + "teal": 17, + "source": 10, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 18, + "source": 10, + "pc": [ + 19 + ] + }, + { + "teal": 19, + "source": 10, + "pc": [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 23, + "source": 10, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 46 + ] + }, + { + "teal": 28, + "source": 11, + "pc": [ + 47 + ] + }, + { + "teal": 31, + "source": 11, + "pc": [ + 48, + 49, + 50 + ] + }, + { + "teal": 32, + "source": 11, + "pc": [ + 51 + ] + }, + { + "teal": 35, + "source": 11, + "pc": [ + 52, + 53, + 54 + ] + }, + { + "teal": 36, + "source": 11, + "pc": [ + 55 + ] + }, + { + "teal": 39, + "source": 11, + "pc": [ + 56, + 57, + 58 + ] + }, + { + "teal": 40, + "source": 11, + "pc": [ + 59 + ] + }, + { + "teal": 41, + "source": 11, + "pc": [ + 60 + ] + }, + { + "teal": 42, + "source": 11, + "pc": [ + 61 + ] + }, + { + "teal": 43, + "source": 11, + "pc": [ + 62 + ] + }, + { + "teal": 44, + "source": 11, + "pc": [ + 63 + ] + }, + { + "teal": 48, + "source": 11, + "pc": [ + 64, + 65, + 66 + ] + }, + { + "teal": 52, + "source": 12, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 53, + "source": 12, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 54, + "source": 12, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 55, + "source": 11, + "pc": [ + 74 + ] + }, + { + "teal": 60, + "source": 15, + "pc": [ + 75 + ] + }, + { + "teal": 63, + "source": 15, + "pc": [ + 76, + 77, + 78 + ] + }, + { + "teal": 64, + "source": 15, + "pc": [ + 79 + ] + }, + { + "teal": 67, + "source": 15, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 68, + "source": 15, + "pc": [ + 83 + ] + }, + { + "teal": 71, + "source": 15, + "pc": [ + 84, + 85, + 86 + ] + }, + { + "teal": 72, + "source": 15, + "pc": [ + 87 + ] + }, + { + "teal": 73, + "source": 15, + "pc": [ + 88 + ] + }, + { + "teal": 74, + "source": 15, + "pc": [ + 89 + ] + }, + { + "teal": 75, + "source": 15, + "pc": [ + 90 + ] + }, + { + "teal": 76, + "source": 15, + "pc": [ + 91 + ] + }, + { + "teal": 80, + "source": 15, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 84, + "source": 16, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 85, + "source": 16, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 86, + "source": 16, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 87, + "source": 15, + "pc": [ + 102 + ] + }, + { + "teal": 92, + "source": 19, + "pc": [ + 103 + ] + }, + { + "teal": 95, + "source": 19, + "pc": [ + 104, + 105, + 106 + ] + }, + { + "teal": 96, + "source": 19, + "pc": [ + 107 + ] + }, + { + "teal": 99, + "source": 19, + "pc": [ + 108, + 109, + 110 + ] + }, + { + "teal": 100, + "source": 19, + "pc": [ + 111 + ] + }, + { + "teal": 103, + "source": 19, + "pc": [ + 112, + 113, + 114 + ] + }, + { + "teal": 104, + "source": 19, + "pc": [ + 115 + ] + }, + { + "teal": 105, + "source": 19, + "pc": [ + 116 + ] + }, + { + "teal": 106, + "source": 19, + "pc": [ + 117 + ] + }, + { + "teal": 107, + "source": 19, + "pc": [ + 118 + ] + }, + { + "teal": 108, + "source": 19, + "pc": [ + 119 + ] + }, + { + "teal": 112, + "source": 19, + "pc": [ + 120, + 121, + 122 + ] + }, + { + "teal": 116, + "source": 20, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 117, + "source": 20, + "pc": [ + 125, + 126 + ] + }, + { + "teal": 118, + "source": 20, + "pc": [ + 127, + 128, + 129 + ] + }, + { + "teal": 119, + "source": 19, + "pc": [ + 130 + ] + }, + { + "teal": 122, + "source": 10, + "pc": [ + 131 + ] + }, + { + "teal": 123, + "source": 10, + "pc": [ + 132 + ] + }, + { + "teal": 126, + "source": 10, + "pc": [ + 133, + 134, + 135, + 136, + 137, + 138 + ] + }, + { + "teal": 127, + "source": 10, + "pc": [ + 139, + 140, + 141 + ] + }, + { + "teal": 128, + "source": 10, + "pc": [ + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 131, + "source": 10, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 146 + ] + }, + { + "teal": 134, + "source": 10, + "pc": [ + 147, + 148, + 149, + 150, + 151, + 152 + ] + }, + { + "teal": 135, + "source": 10, + "pc": [ + 153, + 154, + 155, + 156, + 157, + 158 + ] + }, + { + "teal": 136, + "source": 10, + "pc": [ + 159, + 160, + 161, + 162, + 163, + 164 + ] + }, + { + "teal": 137, + "source": 10, + "pc": [ + 165, + 166, + 167 + ] + }, + { + "teal": 138, + "source": 10, + "pc": [ + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175 + ] + }, + { + "teal": 141, + "source": 10, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 176 + ] + }, + { + "teal": 145, + "source": 2, + "pc": [ + 177, + 178, + 179 + ] + }, + { + "teal": 149, + "source": 4, + "pc": [ + 180, + 181 + ] + }, + { + "teal": 150, + "source": 4, + "pc": [ + 182, + 183 + ] + }, + { + "teal": 151, + "source": 4, + "pc": [ + 184 + ] + }, + { + "teal": 152, + "source": 2, + "pc": [ + 185 + ] + }, + { + "teal": 156, + "source": 1, + "pc": [ + 186, + 187, + 188 + ] + }, + { + "teal": 160, + "source": 2, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 161, + "source": 2, + "pc": [ + 191, + 192 + ] + }, + { + "teal": 162, + "source": 2, + "pc": [ + 193 + ] + }, + { + "teal": 163, + "source": 1, + "pc": [ + 194 + ] + }, + { + "teal": 167, + "source": 6, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 171, + "source": 7, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 172, + "source": 7, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 173, + "source": 7, + "pc": [ + 202 + ] + }, + { + "teal": 174, + "source": 6, + "pc": [ + 203 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYWxsTm9uQ2xhc3NGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxOb25DbGFzc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGNhbGxOb25DbGFzc0Z1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbE5vbkNsYXNzRnVuY3Rpb24oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKY2FsbE5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6MTIKCS8vIHJldHVybiBub25DbGFzc0Z1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBub25DbGFzc0Z1bmN0aW9uCglyZXRzdWIKCi8vIGNhbGxFeHRlcm5hbEZ1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfY2FsbEV4dGVybmFsRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbEV4dGVybmFsRnVuY3Rpb24odWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgY2FsbEV4dGVybmFsRnVuY3Rpb24KCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsRXh0ZXJuYWxGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsRXh0ZXJuYWxGdW5jdGlvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9mdW5jdGlvbnMuYWxnby50czoxNgoJLy8gcmV0dXJuIGV4dGVybmFsRnVuY3Rpb24oYSwgYik7CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGV4dGVybmFsRnVuY3Rpb24KCXJldHN1YgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBjYWxsUGFja2FnZUZ1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsUGFja2FnZUZ1bmN0aW9uOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2Z1bmN0aW9ucy5hbGdvLnRzOjIwCgkvLyByZXR1cm4gcGFja2FnZUZ1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBwYWNrYWdlRnVuY3Rpb24KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJjYWxsRXh0ZXJuYWxGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2FsbE5vbkNsYXNzRnVuY3Rpb24gKmFiaV9yb3V0ZV9jYWxsRXh0ZXJuYWxGdW5jdGlvbiAqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCi8vIHBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwYWNrYWdlRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyBub2RlX21vZHVsZXMvdGVhbHNjcmlwdF90ZXN0X3BhY2thZ2UvaW5kZXgudHM6NAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBleHRlcm5hbEZ1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmV4dGVybmFsRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLWV4dGVybmFsLmFsZ28udHM6MgoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBub25DbGFzc0Z1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Cm5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6NwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBjYWxsTm9uQ2xhc3NGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxOb25DbGFzc0Z1bmN0aW9uOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGNhbGxOb25DbGFzc0Z1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbE5vbkNsYXNzRnVuY3Rpb24oYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKY2FsbE5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6MTIKCS8vIHJldHVybiBub25DbGFzc0Z1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBub25DbGFzc0Z1bmN0aW9uCglyZXRzdWIKCi8vIGNhbGxFeHRlcm5hbEZ1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfY2FsbEV4dGVybmFsRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbEV4dGVybmFsRnVuY3Rpb24odWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgY2FsbEV4dGVybmFsRnVuY3Rpb24KCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsRXh0ZXJuYWxGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsRXh0ZXJuYWxGdW5jdGlvbjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9mdW5jdGlvbnMuYWxnby50czoxNgoJLy8gcmV0dXJuIGV4dGVybmFsRnVuY3Rpb24oYSwgYik7CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CgljYWxsc3ViIGV4dGVybmFsRnVuY3Rpb24KCXJldHN1YgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBjYWxsUGFja2FnZUZ1bmN0aW9uCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY2FsbFBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApjYWxsUGFja2FnZUZ1bmN0aW9uOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2Z1bmN0aW9ucy5hbGdvLnRzOjIwCgkvLyByZXR1cm4gcGFja2FnZUZ1bmN0aW9uKGEsIGIpOwoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJY2FsbHN1YiBwYWNrYWdlRnVuY3Rpb24KCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgImNhbGxOb25DbGFzc0Z1bmN0aW9uKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJjYWxsRXh0ZXJuYWxGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiY2FsbFBhY2thZ2VGdW5jdGlvbih1aW50NjQsdWludDY0KXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY2FsbE5vbkNsYXNzRnVuY3Rpb24gKmFiaV9yb3V0ZV9jYWxsRXh0ZXJuYWxGdW5jdGlvbiAqYWJpX3JvdXRlX2NhbGxQYWNrYWdlRnVuY3Rpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnIKCi8vIHBhY2thZ2VGdW5jdGlvbihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwYWNrYWdlRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyBub2RlX21vZHVsZXMvdGVhbHNjcmlwdF90ZXN0X3BhY2thZ2UvaW5kZXgudHM6NAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBleHRlcm5hbEZ1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmV4dGVybmFsRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLWV4dGVybmFsLmFsZ28udHM6MgoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBub25DbGFzc0Z1bmN0aW9uKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0Cm5vbkNsYXNzRnVuY3Rpb246Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZnVuY3Rpb25zLmFsZ28udHM6NwoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/G.approval.teal b/tests/contracts/artifacts/G.approval.teal index 96d3b2322..53eea3c92 100644 --- a/tests/contracts/artifacts/G.approval.teal +++ b/tests/contracts/artifacts/G.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/G.arc32.json b/tests/contracts/artifacts/G.arc32.json index 398606445..b8c257af5 100644 --- a/tests/contracts/artifacts/G.arc32.json +++ b/tests/contracts/artifacts/G.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKLy8gZygpdm9pZAoqYWJpX3JvdXRlX2c6CgkvLyBleGVjdXRlIGcoKXZvaWQKCWNhbGxzdWIgZwoJaW50IDEKCXJldHVybgoKLy8gZygpOiB2b2lkCmc6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MQoJLy8gYXNzZXJ0KHRoaXMucHJvdGVjdGVkTWV0aG9kKCkgPT09ICdwcm90ZWN0ZWQnKQoJY2FsbHN1YiBwcm90ZWN0ZWRNZXRob2QKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MgoJLy8gYXNzZXJ0KHRoaXMucHVibGljTWV0aG9kKCkgPT09ICdwdWJsaWMnKQoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWJ5dGUgMHg3MDc1NjI2YzY5NjMgLy8gInB1YmxpYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJbWV0aG9kICJnKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QgKmFiaV9yb3V0ZV9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKLy8gZygpdm9pZAoqYWJpX3JvdXRlX2c6CgkvLyBleGVjdXRlIGcoKXZvaWQKCWNhbGxzdWIgZwoJaW50IDEKCXJldHVybgoKLy8gZygpOiB2b2lkCmc6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MQoJLy8gYXNzZXJ0KHRoaXMucHJvdGVjdGVkTWV0aG9kKCkgPT09ICdwcm90ZWN0ZWQnKQoJY2FsbHN1YiBwcm90ZWN0ZWRNZXRob2QKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MgoJLy8gYXNzZXJ0KHRoaXMucHVibGljTWV0aG9kKCkgPT09ICdwdWJsaWMnKQoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWJ5dGUgMHg3MDc1NjI2YzY5NjMgLy8gInB1YmxpYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJbWV0aG9kICJnKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QgKmFiaV9yb3V0ZV9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/G.arc56_draft.json b/tests/contracts/artifacts/G.arc56_draft.json index e805db52d..417a1936e 100644 --- a/tests/contracts/artifacts/G.arc56_draft.json +++ b/tests/contracts/artifacts/G.arc56_draft.json @@ -73,499 +73,502 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 79, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22 - ] - }, - { - "teal": 13, - "source": 79, - "pc": [ - 23, - 24 - ] - }, - { - "teal": 14, - "source": 79, - "pc": [ - 25 - ] - }, - { - "teal": 15, - "source": 79, - "pc": [ - 26, - 27 - ] - }, - { - "teal": 16, - "source": 79, - "pc": [ - 28 - ] - }, - { - "teal": 17, - "source": 79, - "pc": [ - 29, - 30 - ] - }, - { - "teal": 18, - "source": 79, - "pc": [ - 31 - ] - }, - { - "teal": 19, - "source": 79, - "pc": [ - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57 - ] - }, - { - "teal": 23, - "source": 79, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 58 - ] - }, - { - "teal": 28, - "source": 66, - "pc": [ - 59, - 60, - 61, - 62, - 63, - 64 - ] - }, - { - "teal": 31, - "source": 66, - "pc": [ - 65, - 66, - 67 - ] - }, - { - "teal": 32, - "source": 66, - "pc": [ - 68 - ] - }, - { - "teal": 33, - "source": 66, - "pc": [ - 69 - ] - }, - { - "teal": 34, - "source": 66, - "pc": [ - 70 - ] - }, - { - "teal": 35, - "source": 66, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 36, - "source": 66, - "pc": [ - 74 - ] - }, - { - "teal": 37, - "source": 66, - "pc": [ - 75 - ] - }, - { - "teal": 38, - "source": 66, - "pc": [ - 76 - ] - }, - { - "teal": 39, - "source": 66, - "pc": [ - 77 - ] - }, - { - "teal": 40, - "source": 66, - "pc": [ - 78 - ] - }, - { - "teal": 41, - "source": 66, - "pc": [ - 79 - ] - }, - { - "teal": 45, - "source": 66, - "pc": [ - 80, - 81, - 82 - ] - }, - { - "teal": 49, - "source": 67, - "pc": [ - 83 - ] - }, - { - "teal": 50, - "source": 66, - "pc": [ - 84 - ] - }, - { - "teal": 54, - "source": 70, - "pc": [ - 85, - 86, - 87 - ] - }, - { - "teal": 58, - "source": 71, - "pc": [ - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96 - ] - }, - { - "teal": 59, - "source": 70, - "pc": [ - 97 - ] - }, - { - "teal": 63, - "source": 74, - "pc": [ - 98, - 99, - 100 - ] - }, - { - "teal": 67, - "source": 75, - "pc": [ - 101 - ] - }, - { - "teal": 68, - "source": 74, - "pc": [ - 102 - ] - }, - { - "teal": 73, - "source": 80, - "pc": [ - 103, - 104, - 105 - ] - }, - { - "teal": 74, - "source": 80, - "pc": [ - 106 - ] - }, - { - "teal": 75, - "source": 80, - "pc": [ - 107 - ] - }, - { - "teal": 79, - "source": 80, - "pc": [ - 108, - 109, - 110 - ] - }, - { - "teal": 83, - "source": 81, - "pc": [ - 111, - 112, - 113 - ] - }, - { - "teal": 84, - "source": 81, - "pc": [ - 114 - ] - }, - { - "teal": 85, - "source": 81, - "pc": [ - 115 - ] - }, - { - "teal": 86, - "source": 81, - "pc": [ - 116 - ] - }, - { - "teal": 90, - "source": 82, - "pc": [ - 117, - 118, - 119 - ] - }, - { - "teal": 91, - "source": 82, - "pc": [ - 120 - ] - }, - { - "teal": 92, - "source": 82, - "pc": [ - 121 - ] - }, - { - "teal": 93, - "source": 82, - "pc": [ - 122 - ] - }, - { - "teal": 94, - "source": 80, - "pc": [ - 123 - ] - }, - { - "teal": 97, - "source": 79, - "pc": [ - 124 - ] - }, - { - "teal": 98, - "source": 79, - "pc": [ - 125 - ] - }, - { - "teal": 101, - "source": 79, - "pc": [ - 126, - 127, - 128, - 129, - 130, - 131 - ] - }, - { - "teal": 102, - "source": 79, - "pc": [ - 132, - 133, - 134 - ] - }, - { - "teal": 103, - "source": 79, - "pc": [ - 135, - 136, - 137, - 138 - ] - }, - { - "teal": 106, - "source": 79, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 139 - ] - }, - { - "teal": 109, - "source": 79, - "pc": [ - 140, - 141, - 142, - 143, - 144, - 145 - ] - }, - { - "teal": 110, - "source": 79, - "pc": [ - 146, - 147, - 148, - 149, - 150, - 151 - ] - }, - { - "teal": 111, - "source": 79, - "pc": [ - 152, - 153, - 154 - ] - }, - { - "teal": 112, - "source": 79, - "pc": [ - 155, - 156, - 157, - 158, - 159, - 160 - ] - }, - { - "teal": 115, - "source": 79, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 161 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 79, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + }, + { + "teal": 13, + "source": 79, + "pc": [ + 23, + 24 + ] + }, + { + "teal": 14, + "source": 79, + "pc": [ + 25 + ] + }, + { + "teal": 15, + "source": 79, + "pc": [ + 26, + 27 + ] + }, + { + "teal": 16, + "source": 79, + "pc": [ + 28 + ] + }, + { + "teal": 17, + "source": 79, + "pc": [ + 29, + 30 + ] + }, + { + "teal": 18, + "source": 79, + "pc": [ + 31 + ] + }, + { + "teal": 19, + "source": 79, + "pc": [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + }, + { + "teal": 23, + "source": 79, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 58 + ] + }, + { + "teal": 28, + "source": 66, + "pc": [ + 59, + 60, + 61, + 62, + 63, + 64 + ] + }, + { + "teal": 31, + "source": 66, + "pc": [ + 65, + 66, + 67 + ] + }, + { + "teal": 32, + "source": 66, + "pc": [ + 68 + ] + }, + { + "teal": 33, + "source": 66, + "pc": [ + 69 + ] + }, + { + "teal": 34, + "source": 66, + "pc": [ + 70 + ] + }, + { + "teal": 35, + "source": 66, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 36, + "source": 66, + "pc": [ + 74 + ] + }, + { + "teal": 37, + "source": 66, + "pc": [ + 75 + ] + }, + { + "teal": 38, + "source": 66, + "pc": [ + 76 + ] + }, + { + "teal": 39, + "source": 66, + "pc": [ + 77 + ] + }, + { + "teal": 40, + "source": 66, + "pc": [ + 78 + ] + }, + { + "teal": 41, + "source": 66, + "pc": [ + 79 + ] + }, + { + "teal": 45, + "source": 66, + "pc": [ + 80, + 81, + 82 + ] + }, + { + "teal": 49, + "source": 67, + "pc": [ + 83 + ] + }, + { + "teal": 50, + "source": 66, + "pc": [ + 84 + ] + }, + { + "teal": 54, + "source": 70, + "pc": [ + 85, + 86, + 87 + ] + }, + { + "teal": 58, + "source": 71, + "pc": [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + }, + { + "teal": 59, + "source": 70, + "pc": [ + 97 + ] + }, + { + "teal": 63, + "source": 74, + "pc": [ + 98, + 99, + 100 + ] + }, + { + "teal": 67, + "source": 75, + "pc": [ + 101 + ] + }, + { + "teal": 68, + "source": 74, + "pc": [ + 102 + ] + }, + { + "teal": 73, + "source": 80, + "pc": [ + 103, + 104, + 105 + ] + }, + { + "teal": 74, + "source": 80, + "pc": [ + 106 + ] + }, + { + "teal": 75, + "source": 80, + "pc": [ + 107 + ] + }, + { + "teal": 79, + "source": 80, + "pc": [ + 108, + 109, + 110 + ] + }, + { + "teal": 83, + "source": 81, + "pc": [ + 111, + 112, + 113 + ] + }, + { + "teal": 84, + "source": 81, + "pc": [ + 114 + ] + }, + { + "teal": 85, + "source": 81, + "pc": [ + 115 + ] + }, + { + "teal": 86, + "source": 81, + "pc": [ + 116 + ] + }, + { + "teal": 90, + "source": 82, + "pc": [ + 117, + 118, + 119 + ] + }, + { + "teal": 91, + "source": 82, + "pc": [ + 120 + ] + }, + { + "teal": 92, + "source": 82, + "pc": [ + 121 + ] + }, + { + "teal": 93, + "source": 82, + "pc": [ + 122 + ] + }, + { + "teal": 94, + "source": 80, + "pc": [ + 123 + ] + }, + { + "teal": 97, + "source": 79, + "pc": [ + 124 + ] + }, + { + "teal": 98, + "source": 79, + "pc": [ + 125 + ] + }, + { + "teal": 101, + "source": 79, + "pc": [ + 126, + 127, + 128, + 129, + 130, + 131 + ] + }, + { + "teal": 102, + "source": 79, + "pc": [ + 132, + 133, + 134 + ] + }, + { + "teal": 103, + "source": 79, + "pc": [ + 135, + 136, + 137, + 138 + ] + }, + { + "teal": 106, + "source": 79, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 139 + ] + }, + { + "teal": 109, + "source": 79, + "pc": [ + 140, + 141, + 142, + 143, + 144, + 145 + ] + }, + { + "teal": 110, + "source": 79, + "pc": [ + 146, + 147, + 148, + 149, + 150, + 151 + ] + }, + { + "teal": 111, + "source": 79, + "pc": [ + 152, + 153, + 154 + ] + }, + { + "teal": 112, + "source": 79, + "pc": [ + 155, + 156, + 157, + 158, + 159, + 160 + ] + }, + { + "teal": 115, + "source": 79, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 161 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKLy8gZygpdm9pZAoqYWJpX3JvdXRlX2c6CgkvLyBleGVjdXRlIGcoKXZvaWQKCWNhbGxzdWIgZwoJaW50IDEKCXJldHVybgoKLy8gZygpOiB2b2lkCmc6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MQoJLy8gYXNzZXJ0KHRoaXMucHJvdGVjdGVkTWV0aG9kKCkgPT09ICdwcm90ZWN0ZWQnKQoJY2FsbHN1YiBwcm90ZWN0ZWRNZXRob2QKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MgoJLy8gYXNzZXJ0KHRoaXMucHVibGljTWV0aG9kKCkgPT09ICdwdWJsaWMnKQoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWJ5dGUgMHg3MDc1NjI2YzY5NjMgLy8gInB1YmxpYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJbWV0aG9kICJnKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QgKmFiaV9yb3V0ZV9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwdWJsaWNNZXRob2QoKXN0cmluZwoqYWJpX3JvdXRlX3B1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBwdWJsaWNNZXRob2QoKXN0cmluZwoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcHVibGljTWV0aG9kKCk6IHN0cmluZwpwdWJsaWNNZXRob2Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo2NwoJLy8gcmV0dXJuICdwdWJsaWMnOwoJYnl0ZSAweDcwNzU2MjZjNjk2MyAvLyAicHVibGljIgoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKCk6IHN0cmluZwpwcml2YXRlTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzEKCS8vIHJldHVybiAncHJpdmF0ZSc7CglieXRlIDB4NzA3MjY5NzY2MTc0NjUgLy8gInByaXZhdGUiCglyZXRzdWIKCi8vIHByb3RlY3RlZE1ldGhvZCgpOiBzdHJpbmcKcHJvdGVjdGVkTWV0aG9kOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2luaGVyaXRhbmNlLmFsZ28udHM6NzUKCS8vIHJldHVybiAncHJvdGVjdGVkJzsKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCXJldHN1YgoKLy8gZygpdm9pZAoqYWJpX3JvdXRlX2c6CgkvLyBleGVjdXRlIGcoKXZvaWQKCWNhbGxzdWIgZwoJaW50IDEKCXJldHVybgoKLy8gZygpOiB2b2lkCmc6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MQoJLy8gYXNzZXJ0KHRoaXMucHJvdGVjdGVkTWV0aG9kKCkgPT09ICdwcm90ZWN0ZWQnKQoJY2FsbHN1YiBwcm90ZWN0ZWRNZXRob2QKCWJ5dGUgMHg3MDcyNmY3NDY1NjM3NDY1NjQgLy8gInByb3RlY3RlZCIKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czo4MgoJLy8gYXNzZXJ0KHRoaXMucHVibGljTWV0aG9kKCkgPT09ICdwdWJsaWMnKQoJY2FsbHN1YiBwdWJsaWNNZXRob2QKCWJ5dGUgMHg3MDc1NjI2YzY5NjMgLy8gInB1YmxpYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInB1YmxpY01ldGhvZCgpc3RyaW5nIgoJbWV0aG9kICJnKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wdWJsaWNNZXRob2QgKmFiaV9yb3V0ZV9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/GeneralTest.approval.teal b/tests/contracts/artifacts/GeneralTest.approval.teal index 440ddff69..b2e8493c5 100644 --- a/tests/contracts/artifacts/GeneralTest.approval.teal +++ b/tests/contracts/artifacts/GeneralTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // !!!! WARNING: This contract is *NOT* ARC4 compliant. It may contain ABI methods, but it also allows app calls where the first argument does NOT match an ABI selector diff --git a/tests/contracts/artifacts/GeneralTest.arc32.json b/tests/contracts/artifacts/GeneralTest.arc32.json index dd2d9069d..759663f15 100644 --- a/tests/contracts/artifacts/GeneralTest.arc32.json +++ b/tests/contracts/artifacts/GeneralTest.arc32.json @@ -413,7 +413,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlRW51bSgpdm9pZAoqYWJpX3JvdXRlX3R4blR5cGVFbnVtOgoJLy8gZXhlY3V0ZSB0eG5UeXBlRW51bSgpdm9pZAoJY2FsbHN1YiB0eG5UeXBlRW51bQoJaW50IDEKCXJldHVybgoKLy8gdHhuVHlwZUVudW0oKTogdm9pZAp0eG5UeXBlRW51bToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjEKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwWzBdLnR5cGVFbnVtID09PSBUcmFuc2FjdGlvblR5cGUuQXBwbGljYXRpb25DYWxsKQoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyB0eG5Hcm91cExlbmd0aCgpdm9pZAoqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoOgoJLy8gZXhlY3V0ZSB0eG5Hcm91cExlbmd0aCgpdm9pZAoJY2FsbHN1YiB0eG5Hcm91cExlbmd0aAoJaW50IDEKCXJldHVybgoKLy8gdHhuR3JvdXBMZW5ndGgoKTogdm9pZAp0eG5Hcm91cExlbmd0aDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjUKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwLmxlbmd0aCA9PT0gMSkKCWdsb2JhbCBHcm91cFNpemUKCWludCAxCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydHMoYm9vbCxib29sKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRzOgoJLy8gYXJnMjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzIpIGZvciBhc3NlcnRzIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMSkgZm9yIGFzc2VydHMgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgYXNzZXJ0cyhib29sLGJvb2wpdm9pZAoJY2FsbHN1YiBhc3NlcnRzCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRzKGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiB2b2lkCmFzc2VydHM6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjY5CgkvLyBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglmcmFtZV9kaWcgLTEgLy8gYXJnMTogYm9vbGVhbgoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoYXJnMSwgYXJnMiwgYXJnMSA9PT0gYXJnMikKCWFzc2VydAoJZnJhbWVfZGlnIC0xIC8vIGFyZzE6IGJvb2xlYW4KCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgk9PQoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21Bcmc6CgkvLyBzb21lUGF5OiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChzb21lUGF5KSBmb3IgdmVyaWZ5VHhuRnJvbUFyZyBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHZlcmlmeVR4bkZyb21BcmcocGF5KXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuRnJvbUFyZwoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhzb21lUGF5OiBQYXlUeG4pOiB2b2lkCnZlcmlmeVR4bkZyb21Bcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjczCgkvLyB2ZXJpZnlUeG4oc29tZVBheSwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiAxMDBfMDAwIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNvbWVQYXkiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDEwMF8wMDAKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzb21lUGF5IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6IjEwMF8wMDAifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkZyb21UeG5Hcm91cCgpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21UeG5Hcm91cDoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkZyb21UeG5Hcm91cAoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCk6IHZvaWQKdmVyaWZ5VHhuRnJvbVR4bkdyb3VwOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo3NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWludCAwCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuQ29uZGl0aW9uKCl2b2lkCiphYmlfcm91dGVfdmVyaWZ5VHhuQ29uZGl0aW9uOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuQ29uZGl0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnlUeG5Db25kaXRpb24oKTogdm9pZAp2ZXJpZnlUeG5Db25kaXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjgxCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHsgZ3JlYXRlclRoYW46IDEgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uSUQKCXR4biBBcHBsaWNhdGlvbklECglpbnQgMQoJPgoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6ImFwcGxpY2F0aW9uSUQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjEifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5JbmNsdWRlZEluKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkluY2x1ZGVkSW4KCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKTogdm9pZAp2ZXJpZnlUeG5JbmNsdWRlZEluOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo4NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7CgkvLyAgICAgICBzZW5kZXI6IHsgaW5jbHVkZWRJbjogW3RoaXMudHhuLnNlbmRlcl0gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0IjoidGhpcy50eG4ifSwiZmllbGQiOiJzZW5kZXIiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbdGhpcy50eG4uc2VuZGVyXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bk5vdEluY2x1ZGVkSW46CgkvLyBleGVjdXRlIHZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuTm90SW5jbHVkZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpOiB2b2lkCnZlcmlmeVR4bk5vdEluY2x1ZGVkSW46Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjkzCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIHNlbmRlcjogeyBub3RJbmNsdWRlZEluOiBbZ2xvYmFscy56ZXJvQWRkcmVzc10gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4biJ9LCJmaWVsZCI6InNlbmRlciIsImNvbmRpdGlvbiI6Im5vdEluY2x1ZGVkSW4iLCJleHBlY3RlZCI6IltnbG9iYWxzLnplcm9BZGRyZXNzXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gc3VibWl0UGVuZGluZ0dyb3VwKCl2b2lkCiphYmlfcm91dGVfc3VibWl0UGVuZGluZ0dyb3VwOgoJLy8gZXhlY3V0ZSBzdWJtaXRQZW5kaW5nR3JvdXAoKXZvaWQKCWNhbGxzdWIgc3VibWl0UGVuZGluZ0dyb3VwCglpbnQgMQoJcmV0dXJuCgovLyBzdWJtaXRQZW5kaW5nR3JvdXAoKTogdm9pZApzdWJtaXRQZW5kaW5nR3JvdXA6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjk5CgkvLyB0aGlzLnBlbmRpbmdHcm91cC5hZGRQYXltZW50KHsgYW1vdW50OiAwLCByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgaXNGaXJzdFR4bjogdHJ1ZSB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6OTkKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo5OQoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHRoaXMucGVuZGluZ0dyb3VwLmFkZFBheW1lbnQoeyBhbW91bnQ6IDAsIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBub3RlOiAnZm9vJyB9KQoJaXR4bl9uZXh0CglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTAwCgkvLyBub3RlOiAnZm9vJwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDEKCS8vIHRoaXMucGVuZGluZ0dyb3VwLnN1Ym1pdCgpCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzOgoJLy8gZXhlY3V0ZSBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoJY2FsbHN1YiBtZXRob2RXaXRoVHhuQXJncwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kV2l0aFR4bkFyZ3MoKTogdm9pZAptZXRob2RXaXRoVHhuQXJnczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTA1CgkvLyBzZW5kTWV0aG9kQ2FsbDxbUGF5VHhuLCBNZXRob2RDYWxsPFt1aW50NjRdLCB2b2lkPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogWwoJLy8gICAgICAgICB7IGFtb3VudDogMTAwXzAwMCwgcmVjZWl2ZXI6IHRoaXMudHhuLnNlbmRlciB9LAoJLy8gICAgICAgICB7CgkvLyAgICAgICAgICAgbmFtZTogJ2JhcicsCgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbMV0sCgkvLyAgICAgICAgIH0sCgkvLyAgICAgICBdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIGFtb3VudDogMTAwXzAwMAoJaW50IDEwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYmFyKHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjExMQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KQoJaW50IDEzMzcKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTEyCgkvLyBtZXRob2RBcmdzOiBbMV0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJaXR4bl9uZXh0CglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJmb28ocGF5LGFwcGwpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDcKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBhbW91bnQ6IDEwMF8wMDAsIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIgfSwKCS8vICAgICAgICAgewoJLy8gICAgICAgICAgIG5hbWU6ICdiYXInLAoJLy8gICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQoMTMzNyksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogWzFdLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgXQoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBzaGlmdCgpdm9pZAoqYWJpX3JvdXRlX3NoaWZ0OgoJLy8gZXhlY3V0ZSBzaGlmdCgpdm9pZAoJY2FsbHN1YiBzaGlmdAoJaW50IDEKCXJldHVybgoKLy8gc2hpZnQoKTogdm9pZApzaGlmdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTE5CgkvLyBhc3NlcnQoMSA8PCAyID09PSA0KQoJaW50IDEKCWludCAyCglzaGwKCWludCA0Cgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMjAKCS8vIGFzc2VydCg0ID4+IDEgPT09IDIpCglpbnQgNAoJaW50IDEKCXNocgoJaW50IDIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gZnJvbUJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZnJvbUJ5dGVzOgoJLy8gZXhlY3V0ZSBmcm9tQnl0ZXMoKXZvaWQKCWNhbGxzdWIgZnJvbUJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQnl0ZXMoKTogdm9pZApmcm9tQnl0ZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KEFkZHJlc3MuZnJvbUJ5dGVzKCdhYmMnKS5taW5CYWxhbmNlKQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBmcm9tVWludDY0KCl2b2lkCiphYmlfcm91dGVfZnJvbVVpbnQ2NDoKCS8vIGV4ZWN1dGUgZnJvbVVpbnQ2NCgpdm9pZAoJY2FsbHN1YiBmcm9tVWludDY0CglpbnQgMQoJcmV0dXJuCgovLyBmcm9tVWludDY0KCk6IHZvaWQKZnJvbVVpbnQ2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI4CgkvLyBsb2coQXBwSUQuZnJvbVVpbnQ2NCgxMjMpLmNyZWF0b3IpCglpbnQgMTIzCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI5CgkvLyBsb2coQXNzZXRJRC5mcm9tVWludDY0KDEyMykuY3JlYXRvcikKCWludCAxMjMKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWxvZwoJcmV0c3ViCgovLyBiemVyb0Z1bmN0aW9uKCl2b2lkCiphYmlfcm91dGVfYnplcm9GdW5jdGlvbjoKCS8vIGV4ZWN1dGUgYnplcm9GdW5jdGlvbigpdm9pZAoJY2FsbHN1YiBiemVyb0Z1bmN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBiemVyb0Z1bmN0aW9uKCk6IHZvaWQKYnplcm9GdW5jdGlvbjoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNAoJLy8geDogYnl0ZXMgPSBiemVybygyKQoJYnl0ZSAweDAwMDAKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM1CgkvLyB5OiBieXRlcyA9IGJ6ZXJvKG4pCglpbnQgMQoJYnplcm8KCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM2CgkvLyB6OiBbdWludDY0LCB1aW50PDg+XSA9IGJ6ZXJvPFt1aW50NjQsIHVpbnQ8OD5dPigpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDIgLy8gejogW3VpbnQ2NCwgdWludDw4Pl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNwoJLy8gYXNzZXJ0KGxlbih4ICsgeSArIHopID09PSAxMikKCWJ5dGUgMHgwMDAwIC8vIHg6IGJ5dGVzCglmcmFtZV9kaWcgMSAvLyB5OiBieXRlcwoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwIC8vIHo6IFt1aW50NjQsIHVpbnQ8OD5dCgljb25jYXQKCWxlbgoJaW50IDEyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGV2ZW50cygpdm9pZAoqYWJpX3JvdXRlX2V2ZW50czoKCS8vIGV4ZWN1dGUgZXZlbnRzKCl2b2lkCgljYWxsc3ViIGV2ZW50cwoJaW50IDEKCXJldHVybgoKLy8gZXZlbnRzKCk6IHZvaWQKZXZlbnRzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTIKCS8vIHRoaXMubXlFdmVudC5sb2coeyBhcHA6IHRoaXMuYXBwLCBudW06IDEgfSkKCWJ5dGUgMHg4NzUyODE5NiAvLyBteUV2ZW50KHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY29uY2F0Cgljb25jYXQKCWxvZwoJcmV0c3ViCgovLyBsZXRPcHRpbWl6YXRpb24odWludDY0W10pdWludDY0W10KKmFiaV9yb3V0ZV9sZXRPcHRpbWl6YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgbGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdCgljYWxsc3ViIGxldE9wdGltaXphdGlvbgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbGV0T3B0aW1pemF0aW9uKGE6IHVpbnQ2NFtdKTogdWludDY0W10KbGV0T3B0aW1pemF0aW9uOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTYKCS8vIGFzc2VydChhWzBdKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTU4CgkvLyBiID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglmcmFtZV9idXJ5IC0xIC8vIGI6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglyZXRzdWIKCi8vIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcygpdm9pZAoqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllczoKCS8vIGV4ZWN1dGUgc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCl2b2lkCgljYWxsc3ViIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCk6IHZvaWQKc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IER1bW15Q29udHJhY3QuYXBwcm92YWxQcm9ncmFtKCksCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogRHVtbXlDb250cmFjdC5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiBEdW1teUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NQoJLy8gb25Db21wbGV0aW9uOiBPbkNvbXBsZXRpb24uTm9PcAoJaW50IDAgLy8gTm9PcAoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDakVZRklFR0N6RVpDSTBNQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUFBQUFBSUVCUTRBRXVFUjdOallhQUk0Qi8vQUEKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjcKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjgKCS8vIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UKCWludCAwCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjkKCS8vIGxvY2FsTnVtVWludDogRHVtbXlDb250cmFjdC5zY2hlbWEubG9jYWwubnVtVWludAoJaW50IDAKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogRHVtbXlDb250cmFjdC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZQoJaW50IDAKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzEKCS8vIGdsb2JhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMAoJaXR4bl9maWVsZCBHbG9iYWxOdW1VaW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBudW1iZXJUb1N0cmluZygpdm9pZAoqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nOgoJLy8gZXhlY3V0ZSBudW1iZXJUb1N0cmluZygpdm9pZAoJY2FsbHN1YiBudW1iZXJUb1N0cmluZwoJaW50IDEKCXJldHVybgoKLy8gbnVtYmVyVG9TdHJpbmcoKTogdm9pZApudW1iZXJUb1N0cmluZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTc4CgkvLyBhc3NlcnQobi50b1N0cmluZygpID09PSBzKQoJaW50IDEKCWNhbGxzdWIgKml0b2EKCWJ5dGUgIjEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG1ldGhvZE9uUGFyZW5zKCl2b2lkCiphYmlfcm91dGVfbWV0aG9kT25QYXJlbnM6CgkvLyBleGVjdXRlIG1ldGhvZE9uUGFyZW5zKCl2b2lkCgljYWxsc3ViIG1ldGhvZE9uUGFyZW5zCglpbnQgMQoJcmV0dXJuCgovLyBtZXRob2RPblBhcmVucygpOiB2b2lkCm1ldGhvZE9uUGFyZW5zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODIKCS8vIGFzc2VydCgoMSArIDIpLnRvU3RyaW5nKCkgPT09ICczJykKCWludCAzCgljYWxsc3ViICppdG9hCglieXRlIDB4MzMgLy8gIjMiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1N1YnN0cmluZygpdm9pZAoqYWJpX3JvdXRlX3N0cmluZ1N1YnN0cmluZzoKCS8vIGV4ZWN1dGUgc3RyaW5nU3Vic3RyaW5nKCl2b2lkCgljYWxsc3ViIHN0cmluZ1N1YnN0cmluZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nU3Vic3RyaW5nKCk6IHZvaWQKc3RyaW5nU3Vic3RyaW5nOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODcKCS8vIGFzc2VydChzLnN1YnN0cmluZygxLCAzKSA9PT0gJ2JjJykKCWJ5dGUgImFiY2RlZiIKCXN1YnN0cmluZyAxIDMKCWJ5dGUgMHg2MjYzIC8vICJiYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gaWRQcm9wZXJ0eSgpdm9pZAoqYWJpX3JvdXRlX2lkUHJvcGVydHk6CgkvLyBleGVjdXRlIGlkUHJvcGVydHkoKXZvaWQKCWNhbGxzdWIgaWRQcm9wZXJ0eQoJaW50IDEKCXJldHVybgoKLy8gaWRQcm9wZXJ0eSgpOiB2b2lkCmlkUHJvcGVydHk6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTEKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTkyCgkvLyBhc3NlcnQoQXBwSUQuZnJvbVVpbnQ2NChhcHAuaWQpID09PSBhcHApCglpbnQgMCAvLyBhcHA6IHVpbnQ2NAoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTQKCS8vIGFzYSA9IEFzc2V0SUQuemVyb0luZGV4CglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGFzYTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTUKCS8vIGFzc2VydChBc3NldElELmZyb21VaW50NjQoYXNhLmlkKSA9PT0gYXNhKQoJaW50IDAgLy8gYXNhOiB1aW50NjQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBzY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX3NjcmF0Y2hTbG90OgoJLy8gZXhlY3V0ZSBzY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBzY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gc2NyYXRjaFNsb3QoKTogdm9pZApzY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTk5CgkvLyB0aGlzLnNjcmF0Y2gudmFsdWUgPSAxMzM3CglpbnQgMTMzNwoJc3RvcmUgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjAwCgkvLyBhc3NlcnQodGhpcy5zY3JhdGNoLnZhbHVlID09PSAxMzM3KQoJbG9hZCAwCglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlY2RzYSgpdm9pZAoqYWJpX3JvdXRlX2VjZHNhOgoJLy8gZXhlY3V0ZSBlY2RzYSgpdm9pZAoJY2FsbHN1YiBlY2RzYQoJaW50IDEKCXJldHVybgoKLy8gZWNkc2EoKTogdm9pZAplY2RzYToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNAoJLy8gZWNkc2FWZXJpZnkoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZHVwbiA0CgllY2RzYV92ZXJpZnkgU2VjcDI1NmsxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDUKCS8vIGQgPSBlY2RzYVBrRGVjb21wcmVzcygnU2VjcDI1NmsxJywgJycgYXMgYnl0ZXM8MzM+KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZWNkc2FfcGtfZGVjb21wcmVzcyBTZWNwMjU2azEKCWZyYW1lX2J1cnkgMCAvLyBkIHkgY29tcG9uZW50OiBieXRlW10KCWZyYW1lX2J1cnkgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNgoJLy8gbG9nKGQueSkKCWZyYW1lX2RpZyAwIC8vIGQgeSBjb21wb25lbnQ6IGJ5dGVbXQoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDcKCS8vIGxvZyhkLngpCglmcmFtZV9kaWcgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjA5CgkvLyByID0gZWNkc2FQa1JlY292ZXIoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsIDEsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJaW50IDEKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIC8vICIiCglkdXAKCWVjZHNhX3BrX3JlY292ZXIgU2VjcDI1NmsxCglmcmFtZV9idXJ5IDIgLy8gciB5IGNvbXBvbmVudDogYnl0ZVtdCglmcmFtZV9idXJ5IDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTAKCS8vIGxvZyhyLnkpCglmcmFtZV9kaWcgMiAvLyByIHkgY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjExCgkvLyBsb2coci54KQoJZnJhbWVfZGlnIDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gdmVyaWZ5VHhuVHlwZXMoKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5UeXBlczoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuVHlwZXMoKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4blR5cGVzKCk6IHZvaWQKdmVyaWZ5VHhuVHlwZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIxNQoJLy8gdmVyaWZ5UGF5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgcGF5CglpbnQgMAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoicGF5In0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWludCAwCglndHhucyBBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTkKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG5Hcm91cFswXSwgewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogewoJLy8gICAgICAgICAwOiAnZm9vJywKCS8vICAgICAgICAgMTogewoJLy8gICAgICAgICAgIGluY2x1ZGVkSW46IFsnYmFyJywgJ2JheiddLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGwKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGFwcGwKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoiYXBwbCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25JRAoJaW50IDAKCWd0eG5zIEFwcGxpY2F0aW9uSUQKCWludCAwCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoiYXBwbGljYXRpb25JRCIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCgwKSJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzIDAKCWludCAwCglndHhucyBBcHBsaWNhdGlvbkFyZ3MgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImFwcGxpY2F0aW9uQXJncyIsImluZGV4IjoiMCIsImV4cGVjdGVkIjoiJ2ZvbycifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uQXJncyAxCglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCT09CglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxN2EgLy8gImJheiIKCT09Cgl8fAoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4bkdyb3VwWzBdIn0sImZpZWxkIjoiYXBwbGljYXRpb25BcmdzIDEiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbJ2JhcicsICdiYXonXSJ9Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIyOQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXhmZXIKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoidHlwZUVudW0iLCJleHBlY3RlZCI6ImF4ZmVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldFJlY2VpdmVyCglpbnQgMAoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjMzCgkvLyB2ZXJpZnlBc3NldENvbmZpZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBjb25maWdBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KDApLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYWNmZwoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYWNmZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJhY2ZnIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBjb25maWdBc3NldAoJaW50IDAKCWd0eG5zIENvbmZpZ0Fzc2V0CglpbnQgMAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImNvbmZpZ0Fzc2V0IiwiZXhwZWN0ZWQiOiJBc3NldElELmZyb21VaW50NjQoMCkifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMzcKCS8vIHZlcmlmeUtleVJlZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICB2b3RlRmlyc3Q6IDEzMzcsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBrZXlyZWcKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGtleXJlZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJrZXlyZWcifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IHZvdGVGaXJzdAoJaW50IDAKCWd0eG5zIFZvdGVGaXJzdAoJaW50IDEzMzcKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ2b3RlRmlyc3QiLCJleHBlY3RlZCI6IjEzMzcifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1BsdXNFcXVhbHMoKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdQbHVzRXF1YWxzOgoJLy8gZXhlY3V0ZSBzdHJpbmdQbHVzRXF1YWxzKCl2b2lkCgljYWxsc3ViIHN0cmluZ1BsdXNFcXVhbHMKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1BsdXNFcXVhbHMoKTogdm9pZApzdHJpbmdQbHVzRXF1YWxzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI0MwoJLy8gcyA9ICdmb28nCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDQKCS8vIHMgKz0gJ2JhcicKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDUKCS8vIGFzc2VydChzID09PSAnZm9vYmFyJykKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDY2NmY2ZjYyNjE3MiAvLyAiZm9vYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoJY2FsbHN1YiBpbXBvcnRlZFByb2dyYW0KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaW1wb3J0ZWRQcm9ncmFtKCk6IGJ5dGVzCmltcG9ydGVkUHJvZ3JhbToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjQ5CgkvLyByZXR1cm4gSWZUZXN0LmFwcHJvdmFsUHJvZ3JhbSgpOwoJYnl0ZSBiNjQgQ2lBRUFRQUNJQ1lKQkJVZmZIVUNhV1lFWld4elpRTmxibVFBQTJadmJ3ZGxiSE5sSUdsbUNXVnNjMlVnYVdZZ01RbGxiSE5sSUdsbUlESXhHQlNCQmdzeEdRaU5EQU1rQUFBQUFBQUFBQUFBQUFNV0FBQUFBQUFBQUFBQUFBQW9OaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0JBWXYvUVFBQ0tZa3JpU2cyR2dGSkZTSVNSQ05UaUFBTVNSVVdWd1lDVEZCUXNDSkRpZ0VCaS85QkFBVXBpVUlBQWlxSmlTZzJHZ0pKRlNJU1JDTlROaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0NBWXYvUVFBRktZbENBQWlML2tFQUF5Y0dpU3VKS0RZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdJQmkvOUJBQVVwaVVJQURZditRUUFHSndhSlFnQUNLb21KS0RZYUEwa1ZJaEpFSTFNMkdnSkpGU0lTUkNOVE5ob0JTUlVpRWtRalU0Z0FERWtWRmxjR0FreFFVTEFpUTRvREFZdi9RUUFGS1lsQ0FCT0wva0VBQmljSGlVSUFDSXY5UVFBREp3aUpLNGtvTmhvRFNSVWlFa1FqVXpZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdNQmkvOUJBQVVwaVVJQUdJditRUUFHSndlSlFnQU5pLzFCQUFZbkNJbENBQUlxaVlrb05ob0NTUlVpRWtRalV6WWFBVWtWSWhKRUkxT0lBQXhKRlJaWEJnSk1VRkN3SWtPS0FnR0wvMEVBRm92K1FRQU1nQWx1WlhOMFpXUWdhV2FKS1lsQ0FBSXFpWWtvTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9CQVl2L1FRQUZLWWxDQUFJcWlZa29OaG9DU1JVaUVrUWpVellhQVVrVkloSkVJMU9JQUFVV1VMQWlRNG9DQVl2L1FRQUVJa0lBQzR2K1FRQUVKRUlBQW9FRGlTZzJHZ0ZYQWdDSUFBVVdVTEFpUTRvQkFZdi9Kd1NwUVFBQ0lva2tpU2cyR2dGWEFnQ0lBQVVXVUxBaVE0b0JBWXYvSndTcFFRQUVJa0lBQVNTSk5ob0JTUlVrRWtRWGlBQUNJa09LQVFDTC95Y0VxVUVBQXljRnNJazJHZ0pKRlNRU1JCYzJHZ0ZKRlNRU1JCZUlBQUlpUTRvQ0FJdi9pLzRPUVFBREp3V3dpVFlhQWtrVkpSSkVOaG9CU1JVbEVrU0lBQUlpUTRvQ0FJdi9pLzZtUVFBREp3V3dpU2cyR2dKSkZTSVNSQ05UTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9DQVl2L1FRQVppLzVCQUEyQUIyRWdZVzVrSUdLSlFnQUVnQUZoaVVJQUZvditRUUFIZ0FGaWlVSUFDb0FIYm1WcGRHaGxjb21KSWtPQUJMaEVlelkyR2dDT0FmL3hBSUFFUTI3QndvQUVISG9OWG9BRVhnKzJ6NEFFWGh4c1VJQUVXTkM2a29BRVhTOVBBb0FFaEZjcDJZQUVqK2RzcUlBRUdqeDRlSUFFZEx6SWFJQUVRaEw1QllBRWxkMnV2NEFFTVVlNFpvQUVRb2wvWVlBRVUwdml0ellhQUk0UC9HRDhodnl3L092OUt2MTYvYzcrRS80OS9uTCtrUDZ3L3MzKzgvOFhBQT09CglyZXRzdWIKCi8vIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCiphYmlfcm91dGVfY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXI6CgkvLyBleGVjdXRlIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCgljYWxsc3ViIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsUHJpdmF0ZURlZmluZWRMYXRlcigpOiB2b2lkCmNhbGxQcml2YXRlRGVmaW5lZExhdGVyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNTMKCS8vIGxvZyh0aGlzLnByaXZhdGVNZXRob2QoJ2hlbGxvJykpCglieXRlIDB4Njg2NTZjNmM2ZiAvLyAiaGVsbG8iCgljYWxsc3ViIHByaXZhdGVNZXRob2QKCWxvZwoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKG1zZzogc3RyaW5nKTogc3RyaW5nCnByaXZhdGVNZXRob2Q6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI1NwoJLy8gcmV0dXJuIG1zZzsKCWZyYW1lX2RpZyAtMSAvLyBtc2c6IHN0cmluZwoJcmV0c3ViCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmludGVyYWxQdWJsaWNNZXRob2Q6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI2MQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QoKXZvaWQKKmFiaV9yb3V0ZV9jYWxsSW50ZXJuYWxQdWJsaWNNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZAoJY2FsbHN1YiBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QKCWludCAxCglyZXR1cm4KCi8vIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpOiB2b2lkCmNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjY1CgkvLyBhc3NlcnQodGhpcy5pbnRlcmFsUHVibGljTWV0aG9kKDEsIDIpID09PSAzKQoJaW50IDIKCWludCAxCgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWludCAzCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFwcExvYWRTY3JhdGNoKCl2b2lkCiphYmlfcm91dGVfYXBwTG9hZFNjcmF0Y2g6CgkvLyBleGVjdXRlIGFwcExvYWRTY3JhdGNoKCl2b2lkCgljYWxsc3ViIGFwcExvYWRTY3JhdGNoCglpbnQgMQoJcmV0dXJuCgovLyBhcHBMb2FkU2NyYXRjaCgpOiB2b2lkCmFwcExvYWRTY3JhdGNoOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNjkKCS8vIGxvZyh0aGlzLnR4bkdyb3VwWzFdLmxvYWRTY3JhdGNoKDIpIGFzIGJ5dGVzKQoJZ2xvYWQgMSAyCglsb2cKCXJldHN1YgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoqYWJpX3JvdXRlX3VpbnROV2l0aFVuZGVyc2NvcmU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoJY2FsbHN1YiB1aW50TldpdGhVbmRlcnNjb3JlCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50TldpdGhVbmRlcnNjb3JlIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpOiB1aW50MjU2CnVpbnROV2l0aFVuZGVyc2NvcmU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3MwoJLy8gcmV0dXJuIDx1aW50MjU2PjEyM180NTY7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZTI0MAoJcmV0c3ViCgovLyBvcFVwKCl2b2lkCiphYmlfcm91dGVfb3BVcDoKCS8vIGV4ZWN1dGUgb3BVcCgpdm9pZAoJY2FsbHN1YiBvcFVwCglpbnQgMQoJcmV0dXJuCgovLyBvcFVwKCk6IHZvaWQKb3BVcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3OAoJLy8gZm9yIChsZXQgaSA9IDE7IGkgPCA3NTsgaSArPSAxKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpIDwgNzUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDc1Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzkKCS8vIGFzc2VydChpKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0Cglhc3NlcnQKCipmb3JfMF9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJcmV0c3ViCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpc3RyaW5nCiphYmlfcm91dGVfcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQoKXN0cmluZwoJY2FsbHN1YiByZXR1cm5WYWx1ZU9uQXNzaWdubWVudAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpOiBzdHJpbmcKcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjg0CgkvLyBtZXNzYWdlID0gJ2hpJwoJYnl0ZSAweDY4NjkgLy8gImhpIgoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vICppZjBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLmFwcC5hZGRyZXNzCgl0eG4gU2VuZGVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NwoJLy8gbWVzc2FnZSA9ICdpbiBibG9jaycKCWJ5dGUgMHg2OTZlMjA2MjZjNmY2MzZiIC8vICJpbiBibG9jayIKCWZyYW1lX2J1cnkgMCAvLyBtZXNzYWdlOiBieXRlW10KCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTAKCS8vIHJldHVybiAobWVzc2FnZSA9ICdieWUnKTsKCWJ5dGUgMHg2Mjc5NjUgLy8gImJ5ZSIKCWR1cAoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudCgpOiB1aW50NjQKcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTYKCS8vIHJldHVybiAoYVswXSA9IDQpOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJaW50IDAKCWludCA0CglkdXAKCXN0b3JlIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCk6IHVpbnQ2NApyZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwMAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gMQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJaW50IDEKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMDIKCS8vIHJldHVybiAodGhpcy5nS2V5LnZhbHVlID0gMik7CglieXRlIDB4Njc0YjY1NzkgLy8gImdLZXkiCglpbnQgMgoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJYXBwX2dsb2JhbF9wdXQKCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCXJldHN1YgoKLy8gcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSgpOiB1aW50NjQKcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzA2CgkvLyBhID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwOAoJLy8gcmV0dXJuIChhICs9IDIpOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0CglpbnQgMgoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NAoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTQKCS8vIHJldHVybiAoYVswXSArPSA0KTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWludCAwCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDAgOAoJYnRvaQoJaW50IDQKCSsKCWR1cAoJc3RvcmUgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzE4CgkvLyB0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZSA9IFsxLCAyLCAzXQoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyMAoJLy8gcmV0dXJuICh0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZVswXSArPSA0KTsKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgMCA4CglidG9pCglpbnQgNAoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJaXRvYgoJcmVwbGFjZTMKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0Cglsb2FkIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglyZXRzdWIKCi8vIGNvbnN0cygpdm9pZAoqYWJpX3JvdXRlX2NvbnN0czoKCS8vIGV4ZWN1dGUgY29uc3RzKCl2b2lkCgljYWxsc3ViIGNvbnN0cwoJaW50IDEKCXJldHVybgoKLy8gY29uc3RzKCk6IHZvaWQKY29uc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMjQKCS8vIGFzc2VydChTVFJJTkdfQ09OU1QgPT09ICdmb28nKQoJYnl0ZSAiZm9vIgoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzI1CgkvLyBhc3NlcnQoTlVNX0NPTlNUID09PSAxMjMpCglpbnQgMTIzCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyNgoJLy8gYXNzZXJ0KE5FU1RFRF9DT05TVCA9PT0gMTIzKQoJaW50IDEyMwoJZHVwCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCiphYmlfcm91dGVfYXNzZXJ0V2l0aE1lc3NhZ2U6CgkvLyBleGVjdXRlIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCgljYWxsc3ViIGFzc2VydFdpdGhNZXNzYWdlCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRXaXRoTWVzc2FnZSgpOiB2b2lkCmFzc2VydFdpdGhNZXNzYWdlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzAKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gb3Bjb2RlQWxpYXNlcygpdm9pZAoqYWJpX3JvdXRlX29wY29kZUFsaWFzZXM6CgkvLyBleGVjdXRlIG9wY29kZUFsaWFzZXMoKXZvaWQKCWNhbGxzdWIgb3Bjb2RlQWxpYXNlcwoJaW50IDEKCXJldHVybgoKLy8gb3Bjb2RlQWxpYXNlcygpOiB2b2lkCm9wY29kZUFsaWFzZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNAoJLy8gZXh0cmFjdFVpbnQxNihiemVybyg2NCksIDApCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWludCAwCglleHRyYWN0X3VpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzM1CgkvLyBleHRyYWN0VWludDMyKGJ6ZXJvKDY0KSwgMCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJaW50IDAKCWV4dHJhY3RfdWludDMyCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzYKCS8vIGV4dHJhY3RVaW50NjQoYnplcm8oNjQpLCAwKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglpbnQgMAoJZXh0cmFjdF91aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNwoJLy8gZWQyNTUxOVZlcmlmeUJhcmUoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeV9iYXJlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzgKCS8vIGVkMjU1MTlWZXJpZnkoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeQoJcmV0c3ViCgovLyB2cmZWZXJpZnlPcCgpdm9pZAoqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wOgoJLy8gZXhlY3V0ZSB2cmZWZXJpZnlPcCgpdm9pZAoJY2FsbHN1YiB2cmZWZXJpZnlPcAoJaW50IDEKCXJldHVybgoKLy8gdnJmVmVyaWZ5T3AoKTogdm9pZAp2cmZWZXJpZnlPcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0MgoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQzCgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDQKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ2CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM1MgoJLy8gciA9IHZyZlZlZmlyeSgnVnJmQWxnb3JhbmQnLCBiemVybygzMikgYXMgYnl0ZXMsIGJ6ZXJvKDgwKSwgYnplcm8oMzIpKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJdnJmX3ZlcmlmeSBWcmZBbGdvcmFuZAoJZnJhbWVfYnVyeSAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCWZyYW1lX2J1cnkgMSAvLyByIG91dHB1dDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTMKCS8vIGFzc2VydCghci52ZXJpZmllZCkKCWZyYW1lX2RpZyAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCSEKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU0CgkvLyBsb2coci5vdXRwdXQpCglmcmFtZV9kaWcgMSAvLyByIG91dHB1dDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gZWNNYXRoKCl2b2lkCiphYmlfcm91dGVfZWNNYXRoOgoJLy8gZXhlY3V0ZSBlY01hdGgoKXZvaWQKCWNhbGxzdWIgZWNNYXRoCglpbnQgMQoJcmV0dXJuCgovLyBlY01hdGgoKTogdm9pZAplY01hdGg6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU4CgkvLyBlY1NjYWxhck11bCgnQk4yNTRnMScsICcnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWR1cAoJZWNfc2NhbGFyX211bCBCTjI1NGcxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTkKCS8vIGVjUGFpcmluZ0NoZWNrKCdCTjI1NGcxJywgJycsICcnKQoJYnl0ZSAweCAvLyAiIgoJZHVwCgllY19wYWlyaW5nX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MAoJLy8gc2NhbGFyczogYnl0ZXMzMltdID0gW2J6ZXJvKDMyKSwgYnplcm8oMzIpXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDAgLy8gc2NhbGFyczogYnl0ZXMzMltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNjEKCS8vIGVjTXVsdGlTY2FsYXJNdWwoJ0JOMjU0ZzEnLCAnJywgc2NhbGFycykKCWJ5dGUgMHggLy8gIiIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyBzY2FsYXJzOiBieXRlczMyW10KCWVjX211bHRpX3NjYWxhcl9tdWwgQk4yNTRnMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzYyCgkvLyBlY1N1Ymdyb3VwQ2hlY2soJ0JOMjU0ZzEnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWVjX3N1Ymdyb3VwX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MwoJLy8gZWNNYXBUbygnQk4yNTRnMScsICcnKQoJYnl0ZSAweCAvLyAiIgoJZWNfbWFwX3RvIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2NAoJLy8gZWNBZGQoJ0JOMjU0ZzEnLCAnJywgJycpCglieXRlIDB4IC8vICIiCglkdXAKCWVjX2FkZCBCTjI1NGcxCglyZXRzdWIKCi8vIGdpdHhuKCl2b2lkCiphYmlfcm91dGVfZ2l0eG46CgkvLyBleGVjdXRlIGdpdHhuKCl2b2lkCgljYWxsc3ViIGdpdHhuCglpbnQgMQoJcmV0dXJuCgovLyBnaXR4bigpOiB2b2lkCmdpdHhuOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2OAoJLy8gbG9nKHRoaXMubGFzdElubmVyR3JvdXBbMF0uc2VuZGVyKQoJZ2l0eG4gMCBTZW5kZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcwCgkvLyBhbm90aGVyVHhuID0gdGhpcy5sYXN0SW5uZXJHcm91cFsxXQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhbm90aGVyVHhuOiBnaXR4bgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcyCgkvLyBsb2coYW5vdGhlclR4bi5zZW5kZXIpCglnaXR4biAxIFNlbmRlcgoJbG9nCglyZXRzdWIKCi8vIGdldFNldEJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZ2V0U2V0Qnl0ZXM6CgkvLyBleGVjdXRlIGdldFNldEJ5dGVzKCl2b2lkCgljYWxsc3ViIGdldFNldEJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTZXRCeXRlcygpOiB2b2lkCmdldFNldEJ5dGVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzYKCS8vIGxvZyhzZXRiaXQoJ2ZvbycsIDAsIHRydWUpKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRiaXQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc3CgkvLyBnZXRiaXQoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Yml0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzgKCS8vIGdldGJ5dGUoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Ynl0ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc5CgkvLyBzZXRieXRlKCdmb28nLCAwLCAxKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRieXRlCglyZXRzdWIKCi8vIGdldFNldFVpbnQ2NCgpdm9pZAoqYWJpX3JvdXRlX2dldFNldFVpbnQ2NDoKCS8vIGV4ZWN1dGUgZ2V0U2V0VWludDY0KCl2b2lkCgljYWxsc3ViIGdldFNldFVpbnQ2NAoJaW50IDEKCXJldHVybgoKLy8gZ2V0U2V0VWludDY0KCk6IHZvaWQKZ2V0U2V0VWludDY0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozODMKCS8vIGFzc2VydChzZXRiaXQoMTIzLCAwLCB0cnVlKSkKCWludCAxMjMKCWludCAwCglpbnQgMQoJc2V0Yml0Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4NAoJLy8gZ2V0Yml0KDEyMywgMCkKCWludCAxMjMKCWludCAwCglnZXRiaXQKCXJldHN1YgoKLy8gYmxvY2tPcCgpdm9pZAoqYWJpX3JvdXRlX2Jsb2NrT3A6CgkvLyBleGVjdXRlIGJsb2NrT3AoKXZvaWQKCWNhbGxzdWIgYmxvY2tPcAoJaW50IDEKCXJldHVybgoKLy8gYmxvY2tPcCgpOiB2b2lkCmJsb2NrT3A6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4OAoJLy8gbG9nKGJsb2Nrc1tnbG9iYWxzLnJvdW5kIC0gMV0uc2VlZCkKCWdsb2JhbCBSb3VuZAoJaW50IDEKCS0KCWJsb2NrIEJsa1NlZWQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzg5CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50aW1lc3RhbXApCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtUaW1lc3RhbXAKCWFzc2VydAoJcmV0c3ViCgovLyBiNjQoKXZvaWQKKmFiaV9yb3V0ZV9iNjQ6CgkvLyBleGVjdXRlIGI2NCgpdm9pZAoJY2FsbHN1YiBiNjQKCWludCAxCglyZXR1cm4KCi8vIGI2NCgpOiB2b2lkCmI2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzkzCgkvLyBsb2coYmFzZTY0RGVjb2RlKCdTdGRFbmNvZGluZycsICcnKSkKCWJ5dGUgMHggLy8gIiIKCWJhc2U2NF9kZWNvZGUgU3RkRW5jb2RpbmcKCWxvZwoJcmV0c3ViCgovLyBqc29uKCl2b2lkCiphYmlfcm91dGVfanNvbjoKCS8vIGV4ZWN1dGUganNvbigpdm9pZAoJY2FsbHN1YiBqc29uCglpbnQgMQoJcmV0dXJuCgovLyBqc29uKCk6IHZvaWQKanNvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk3CgkvLyBsb2coanNvblJlZignSlNPTk9iamVjdCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05PYmplY3QKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk4CgkvLyBsb2coanNvblJlZignSlNPTlN0cmluZycsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05TdHJpbmcKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk5CgkvLyBhc3NlcnQoanNvblJlZignSlNPTlVpbnQ2NCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05VaW50NjQKCWFzc2VydAoJcmV0c3ViCgovLyBiaXRsZW5PcCgpdm9pZAoqYWJpX3JvdXRlX2JpdGxlbk9wOgoJLy8gZXhlY3V0ZSBiaXRsZW5PcCgpdm9pZAoJY2FsbHN1YiBiaXRsZW5PcAoJaW50IDEKCXJldHVybgoKLy8gYml0bGVuT3AoKTogdm9pZApiaXRsZW5PcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDAzCgkvLyBiaXRsZW4oMTIzKQoJaW50IDEyMwoJYml0bGVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MDQKCS8vIGJpdGxlbignZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJpdGxlbgoJcmV0c3ViCgovLyBjb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfY29tcHV0ZWRDb25zdDoKCS8vIGV4ZWN1dGUgY29tcHV0ZWRDb25zdCgpdm9pZAoJY2FsbHN1YiBjb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBjb21wdXRlZENvbnN0KCk6IHZvaWQKY29tcHV0ZWRDb25zdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDA4CgkvLyBhc3NlcnQoQ09NUFVURURfQ09OU1QpCglpbnQgMjQ2Cglhc3NlcnQKCXJldHN1YgoKLy8gbXVsdGlDb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0OgoJLy8gZXhlY3V0ZSBtdWx0aUNvbXB1dGVkQ29uc3QoKXZvaWQKCWNhbGxzdWIgbXVsdGlDb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUNvbXB1dGVkQ29uc3QoKTogdm9pZAptdWx0aUNvbXB1dGVkQ29uc3Q6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxMgoJLy8gYXNzZXJ0KE1VVExJX0NPTVBVVEVEX0NPTlNUKQoJaW50IDMwMzgxCglhc3NlcnQKCXJldHN1YgoKLy8gcmVhZFNjaGVtYSgpdm9pZAoqYWJpX3JvdXRlX3JlYWRTY2hlbWE6CgkvLyBleGVjdXRlIHJlYWRTY2hlbWEoKXZvaWQKCWNhbGxzdWIgcmVhZFNjaGVtYQoJaW50IDEKCXJldHVybgoKLy8gcmVhZFNjaGVtYSgpOiB2b2lkCnJlYWRTY2hlbWE6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNgoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCA9PT0gMSkKCWludCAxCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNwoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtQnl0ZVNsaWNlID09PSAyKQoJaW50IDIKCWR1cAoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDE4CgkvLyBhc3NlcnQoU2NoZW1hQ29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQgPT09IDMpCglpbnQgMwoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MTkKCS8vIGFzc2VydChTY2hlbWFDb250cmFjdC5zY2hlbWEubG9jYWwubnVtQnl0ZVNsaWNlID09PSA0KQoJaW50IDQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBjb21wYXJpc29uT3IoKWJvb2wKKmFiaV9yb3V0ZV9jb21wYXJpc29uT3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29tcGFyaXNvbk9yKClib29sCgljYWxsc3ViIGNvbXBhcmlzb25PcgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb21wYXJpc29uT3IoKTogYm9vbGVhbgpjb21wYXJpc29uT3I6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQyMwoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gZ2xvYmFscy56ZXJvQWRkcmVzcyB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IGdsb2JhbHMuemVyb0FkZHJlc3M7Cgl0eG4gU2VuZGVyCglnbG9iYWwgWmVyb0FkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCXx8Cgoqc2tpcF9vcjA6CglyZXRzdWIKCi8vIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKKmFiaV9yb3V0ZV90eG5BcmdzTWV0aG9kOgoJLy8gX3BheTE6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKF9wYXkxKSBmb3IgdHhuQXJnc01ldGhvZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKCWNhbGxzdWIgdHhuQXJnc01ldGhvZAoJaW50IDEKCXJldHVybgoKLy8gdHhuQXJnc01ldGhvZChfcGF5MTogUGF5VHhuKTogdm9pZAp0eG5BcmdzTWV0aG9kOgoJcHJvdG8gMSAwCglyZXRzdWIKCi8vIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCiphYmlfcm91dGVfY2FsbFR4bkFyZ3NNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCgljYWxsc3ViIGNhbGxUeG5BcmdzTWV0aG9kCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsVHhuQXJnc01ldGhvZCgpOiB2b2lkCmNhbGxUeG5BcmdzTWV0aG9kOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzAKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBHZW5lcmFsVGVzdC5wcm90b3R5cGUudHhuQXJnc01ldGhvZD4oewoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsIGFtb3VudDogMCB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDMxCgkvLyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQzMQoJLy8gYW1vdW50OiAwCglpbnQgMAoJaXR4bl9maWVsZCBBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAidHhuQXJnc01ldGhvZChwYXkpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzEKCS8vIG1ldGhvZEFyZ3M6IFt7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IDAgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gc3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkCiphYmlfcm91dGVfc3RhdGljVmFsdWVMZW46CgkvLyB4OiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBzdGF0aWNWYWx1ZUxlbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNWYWx1ZUxlbih1aW50MjU2KXZvaWQKCWNhbGxzdWIgc3RhdGljVmFsdWVMZW4KCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1ZhbHVlTGVuKHg6IHVpbnQyNTYpOiB2b2lkCnN0YXRpY1ZhbHVlTGVuOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzYKCS8vIGFzc2VydChsZW4oeCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBzdGF0aWNUeXBlTGVuKCl2b2lkCiphYmlfcm91dGVfc3RhdGljVHlwZUxlbjoKCS8vIGV4ZWN1dGUgc3RhdGljVHlwZUxlbigpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlTGVuCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNUeXBlTGVuKCk6IHZvaWQKc3RhdGljVHlwZUxlbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQwCgkvLyBhc3NlcnQobGVuPHVpbnQyNTY+KCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQKKmFiaV9yb3V0ZV9keW5hbWljU2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGR5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBkeW5hbWljU2NyYXRjaFNsb3QKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNTY3JhdGNoU2xvdCgpOiB2b2lkCmR5bmFtaWNTY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQ0CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDEpLnZhbHVlID0gMTMzNwoJaW50IDEKCWludCAxMzM3CglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ0NQoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMSkudmFsdWUgPT09IDEzMzcpCglpbnQgMQoJbG9hZHMKCWludCAxMzM3Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCiphYmlfcm91dGVfaW5jcmVtZW50U2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudFNjcmF0Y2hTbG90CglpbnQgMQoJcmV0dXJuCgovLyBpbmNyZW1lbnRTY3JhdGNoU2xvdCgpOiB2b2lkCmluY3JlbWVudFNjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NDkKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSA9IDEzMzcKCWludCAxMzM3CglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTAKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSArPSAxCglsb2FkIDAKCWludCAxCgkrCglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTEKCS8vIGFzc2VydCh0aGlzLnNjcmF0Y2gudmFsdWUgPT09IDEzMzgpCglsb2FkIDAKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX2luY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdDoKCS8vIGV4ZWN1dGUgaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCk6IHZvaWQKaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTUKCS8vIHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPSAxMzM3CglpbnQgMgoJaW50IDEzMzcKCXN0b3JlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDU2CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDIpLnZhbHVlICs9IDEKCWludCAyCglsb2FkcwoJaW50IDEKCSsKCWludCAyCglzd2FwCglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ1NwoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPT09IDEzMzgpCglpbnQgMgoJbG9hZHMKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGZyb21BZGRyZXNzKCl2b2lkCiphYmlfcm91dGVfZnJvbUFkZHJlc3M6CgkvLyBleGVjdXRlIGZyb21BZGRyZXNzKCl2b2lkCgljYWxsc3ViIGZyb21BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQWRkcmVzcygpOiB2b2lkCmZyb21BZGRyZXNzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2MQoJLy8gYSA9IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFZNUhGS1EnKQoJYWRkciBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWTVIRktRCglmcmFtZV9idXJ5IDAgLy8gYTogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDYyCgkvLyBhc3NlcnQoYSA9PT0gQWRkcmVzcy56ZXJvQWRkcmVzcykKCWZyYW1lX2RpZyAwIC8vIGE6IGFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlYXJseVJldHVybih1aW50NjQpdWludDY0CiphYmlfcm91dGVfZWFybHlSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZWFybHlSZXR1cm4odWludDY0KXVpbnQ2NAoJY2FsbHN1YiBlYXJseVJldHVybgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVhcmx5UmV0dXJuKGE6IHVpbnQ2NCk6IHVpbnQ2NAplYXJseVJldHVybjoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY2CgkvLyBhID09PSAxCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglpbnQgMQoJPT0KCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2NwoJLy8gcmV0dXJuIDI7CglpbnQgMgoJYiAqZWFybHlSZXR1cm4qcmV0dXJuCgoqaWYxX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY5CgkvLyBiID0gYSArIDEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIDAgLy8gYjogdWludDY0CgoqZWFybHlSZXR1cm4qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGFzc2V0TWV0aG9kQXJncygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJnczoKCS8vIGV4ZWN1dGUgYXNzZXRNZXRob2RBcmdzKCl2b2lkCgljYWxsc3ViIGFzc2V0TWV0aG9kQXJncwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRNZXRob2RBcmdzKCk6IHZvaWQKYXNzZXRNZXRob2RBcmdzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzQKCS8vIHNlbmRNZXRob2RDYWxsPFtBc3NldFJlZmVyZW5jZV0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbyhhc3NldCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ3NgoJLy8gbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0KCWludCAxCglpdHhuX2ZpZWxkIEFzc2V0cwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzOgoJLy8gZXhlY3V0ZSBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoJY2FsbHN1YiBtdWx0aXBsZVByb2dyYW1QYWdlcwoJaW50IDEKCXJldHVybgoKLy8gbXVsdGlwbGVQcm9ncmFtUGFnZXMoKTogdm9pZAptdWx0aXBsZVByb2dyYW1QYWdlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDg1CgkvLyBzZW5kQXBwQ2FsbCh7CgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0sCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogW3RoaXMucGFnZU9uZS52YWx1ZSwgdGhpcy5wYWdlVHdvLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBbdGhpcy5wYWdlT25lLnZhbHVlLCB0aGlzLnBhZ2VUd28udmFsdWVdCglieXRlIDB4NzA2MTY3NjU0ZjZlNjUgLy8gInBhZ2VPbmUiCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnBhZ2VPbmUudmFsdWUKCWFzc2VydAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW1QYWdlcwoJYnl0ZSAweDcwNjE2NzY1NTQ3NzZmIC8vICJwYWdlVHdvIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wYWdlVHdvLnZhbHVlCglhc3NlcnQKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NwoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0KCWJ5dGUgMHg3MDYxNjc2NTRmNmU2NSAvLyAicGFnZU9uZSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZU9uZS52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDYxNjc2NTU0Nzc2ZiAvLyAicGFnZVR3byIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZVR3by52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGFzc2VydENvbW1lbnQoKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRDb21tZW50OgoJLy8gZXhlY3V0ZSBhc3NlcnRDb21tZW50KCl2b2lkCgljYWxsc3ViIGFzc2VydENvbW1lbnQKCWludCAxCglyZXR1cm4KCi8vIGFzc2VydENvbW1lbnQoKTogdm9pZAphc3NlcnRDb21tZW50OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0OTIKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKKmFiaV9yb3V0ZV90aHJvd0Vycm9yTWVzc2FnZToKCS8vIGV4ZWN1dGUgdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKCWNhbGxzdWIgdGhyb3dFcnJvck1lc3NhZ2UKCWludCAxCglyZXR1cm4KCi8vIHRocm93RXJyb3JNZXNzYWdlKCk6IHZvaWQKdGhyb3dFcnJvck1lc3NhZ2U6Cglwcm90byAwIDAKCgkvLyB0aGlzIGlzIGFuIGVycm9yCgllcnIKCXJldHN1YgoKLy8gb3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vckxpdGVyYWxUeXBlOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvckxpdGVyYWxUeXBlKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvckxpdGVyYWxUeXBlCglpbnQgMQoJcmV0dXJuCgovLyBvckxpdGVyYWxUeXBlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApvckxpdGVyYWxUeXBlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAwCgkvLyBmb28gPSBhICYmIGIgPT09IDEgPyAyIDogMAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglpbnQgMQoJPT0KCSYmCgoqc2tpcF9hbmQwOgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMCAvLyBmb286IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAxCgkvLyBhc3NlcnQoZm9vKQoJZnJhbWVfZGlnIDAgLy8gZm9vOiB1aW50NjQKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAzCgkvLyBiYXIgPSBhICYmIGIgPT09IDAgPyAnMicgOiAnMCcKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJaW50IDAKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICp0ZXJuYXJ5MV9mYWxzZQoJYnl0ZSAweDMyIC8vICIyIgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglieXRlIDB4MzAgLy8gIjAiCgoqdGVybmFyeTFfZW5kOgoJZnJhbWVfYnVyeSAxIC8vIGJhcjogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDQKCS8vIGxvZyhiYXIpCglmcmFtZV9kaWcgMSAvLyBiYXI6IGJ5dGVbXQoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaSgpOiB2b2lkCm5vbkFiaToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDkKCS8vIGFzc2VydCh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aCkKCXR4biBOdW1BcHBBcmdzCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTExCgkvLyBpIDwgdGhpcy50eG4uYXBwbGljYXRpb25BcmdzIS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJdHhuIE51bUFwcEFyZ3MKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMgoJLy8gbG9nKHRoaXMudHhuLmFwcGxpY2F0aW9uQXJncyFbaV0pCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCXR4bmFzIEFwcGxpY2F0aW9uQXJncwoJbG9nCgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCXJldHN1YgoKLy8gbXVsdGlsaW5lRnVuY3Rpb25DYWxsKCl2b2lkCiphYmlfcm91dGVfbXVsdGlsaW5lRnVuY3Rpb25DYWxsOgoJLy8gZXhlY3V0ZSBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKXZvaWQKCWNhbGxzdWIgbXVsdGlsaW5lRnVuY3Rpb25DYWxsCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKTogdm9pZAptdWx0aWxpbmVGdW5jdGlvbkNhbGw6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MTcKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTE4CgkvLyBhZGRyID0gQWRkcmVzcy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglmcmFtZV9idXJ5IDEgLy8gYWRkcjogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTIwCgkvLyBhcHAubG9jYWxTdGF0ZSgKCS8vICAgICAgIGFkZHIsCgkvLyAgICAgICAna2V5JwoJLy8gICAgICkKCWZyYW1lX2RpZyAxIC8vIGFkZHI6IGFkZHJlc3MKCWludCAwIC8vIGFwcDogdWludDY0CglieXRlIDB4NmI2NTc5IC8vICJrZXkiCglhcHBfbG9jYWxfZ2V0X2V4CgoJLy8gbG9jYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IGFwcC5sb2NhbFN0YXRlKCBhZGRyLCAna2V5JyApCglhc3NlcnQKCXJldHN1YgoKLy8gYSgpdWludDY0CiphYmlfcm91dGVfYToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhKCl1aW50NjQKCWNhbGxzdWIgYQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGEoKTogdWludDY0CmE6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUyNwoJLy8gcmV0dXJuIDM7CglpbnQgMwoJcmV0c3ViCgovLyBiKCl1aW50NjQKKmFiaV9yb3V0ZV9iOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGIoKXVpbnQ2NAoJY2FsbHN1YiBiCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYigpOiB1aW50NjQKYjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTMxCgkvLyByZXR1cm4gNTsKCWludCA1CglyZXRzdWIKCi8vIHVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQKKmFiaV9yb3V0ZV91bnVzZWRNZXRob2RWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1bnVzZWRNZXRob2RWYWx1ZSgpdWludDY0CgljYWxsc3ViIHVudXNlZE1ldGhvZFZhbHVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW51c2VkTWV0aG9kVmFsdWUoKTogdWludDY0CnVudXNlZE1ldGhvZFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MzUKCS8vIHRoaXMuYSgpCgljYWxsc3ViIGEKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTM2CgkvLyByZXR1cm4gdGhpcy5iKCk7CgljYWxsc3ViIGIKCXJldHN1YgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKCWNhbGxzdWIgcmVhc3NpZ25lZE5vbkZpcnN0VmFyCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCk6IHVpbnQ2NApyZWFzc2lnbmVkTm9uRmlyc3RWYXI6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NDcKCS8vIGEgPSAxIGFzIHVpbnQ2NAoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU0OAoJLy8gYiA9IHRoaXMuYXBwLmlkCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTQ5CgkvLyBhCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjQKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1MAoJLy8gYiA9IDIKCWludCAyCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoqaWYyX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTUzCgkvLyByZXR1cm4gYjsKCWZyYW1lX2RpZyAxIC8vIGI6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZnZMdigpdm9pZAoqYWJpX3JvdXRlX2Z2THY6CgkvLyBleGVjdXRlIGZ2THYoKXZvaWQKCWNhbGxzdWIgZnZMdgoJaW50IDEKCXJldHVybgoKLy8gZnZMdigpOiB2b2lkCmZ2THY6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1NwoJLy8gYXNzZXJ0KHRoaXMudHhuLmZpcnN0VmFsaWQpCgl0eG4gRmlyc3RWYWxpZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NTgKCS8vIGFzc2VydCh0aGlzLnR4bi5sYXN0VmFsaWQpCgl0eG4gTGFzdFZhbGlkCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR4blR5cGVFbnVtKCl2b2lkIgoJbWV0aG9kICJ0eG5Hcm91cExlbmd0aCgpdm9pZCIKCW1ldGhvZCAiYXNzZXJ0cyhib29sLGJvb2wpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInN1Ym1pdFBlbmRpbmdHcm91cCgpdm9pZCIKCW1ldGhvZCAibWV0aG9kV2l0aFR4bkFyZ3MoKXZvaWQiCgltZXRob2QgInNoaWZ0KCl2b2lkIgoJbWV0aG9kICJmcm9tQnl0ZXMoKXZvaWQiCgltZXRob2QgImZyb21VaW50NjQoKXZvaWQiCgltZXRob2QgImJ6ZXJvRnVuY3Rpb24oKXZvaWQiCgltZXRob2QgImV2ZW50cygpdm9pZCIKCW1ldGhvZCAibGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdIgoJbWV0aG9kICJzdGF0aWNDb250cmFjdFByb3BlcnRpZXMoKXZvaWQiCgltZXRob2QgIm51bWJlclRvU3RyaW5nKCl2b2lkIgoJbWV0aG9kICJtZXRob2RPblBhcmVucygpdm9pZCIKCW1ldGhvZCAic3RyaW5nU3Vic3RyaW5nKCl2b2lkIgoJbWV0aG9kICJpZFByb3BlcnR5KCl2b2lkIgoJbWV0aG9kICJzY3JhdGNoU2xvdCgpdm9pZCIKCW1ldGhvZCAiZWNkc2EoKXZvaWQiCgltZXRob2QgInZlcmlmeVR4blR5cGVzKCl2b2lkIgoJbWV0aG9kICJzdHJpbmdQbHVzRXF1YWxzKCl2b2lkIgoJbWV0aG9kICJpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXSIKCW1ldGhvZCAiY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXIoKXZvaWQiCgltZXRob2QgImludGVyYWxQdWJsaWNNZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZCIKCW1ldGhvZCAiYXBwTG9hZFNjcmF0Y2goKXZvaWQiCgltZXRob2QgInVpbnROV2l0aFVuZGVyc2NvcmUoKXVpbnQyNTYiCgltZXRob2QgIm9wVXAoKXZvaWQiCgltZXRob2QgInJldHVyblZhbHVlT25Bc3NpZ25tZW50KClzdHJpbmciCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAicmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQiCgltZXRob2QgInJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCgpdWludDY0IgoJbWV0aG9kICJyZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAiY29uc3RzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRXaXRoTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3Bjb2RlQWxpYXNlcygpdm9pZCIKCW1ldGhvZCAidnJmVmVyaWZ5T3AoKXZvaWQiCgltZXRob2QgImVjTWF0aCgpdm9pZCIKCW1ldGhvZCAiZ2l0eG4oKXZvaWQiCgltZXRob2QgImdldFNldEJ5dGVzKCl2b2lkIgoJbWV0aG9kICJnZXRTZXRVaW50NjQoKXZvaWQiCgltZXRob2QgImJsb2NrT3AoKXZvaWQiCgltZXRob2QgImI2NCgpdm9pZCIKCW1ldGhvZCAianNvbigpdm9pZCIKCW1ldGhvZCAiYml0bGVuT3AoKXZvaWQiCgltZXRob2QgImNvbXB1dGVkQ29uc3QoKXZvaWQiCgltZXRob2QgIm11bHRpQ29tcHV0ZWRDb25zdCgpdm9pZCIKCW1ldGhvZCAicmVhZFNjaGVtYSgpdm9pZCIKCW1ldGhvZCAiY29tcGFyaXNvbk9yKClib29sIgoJbWV0aG9kICJ0eG5BcmdzTWV0aG9kKHBheSl2b2lkIgoJbWV0aG9kICJjYWxsVHhuQXJnc01ldGhvZCgpdm9pZCIKCW1ldGhvZCAic3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkIgoJbWV0aG9kICJzdGF0aWNUeXBlTGVuKCl2b2lkIgoJbWV0aG9kICJkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkIgoJbWV0aG9kICJpbmNyZW1lbnREeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImZyb21BZGRyZXNzKCl2b2lkIgoJbWV0aG9kICJlYXJseVJldHVybih1aW50NjQpdWludDY0IgoJbWV0aG9kICJhc3NldE1ldGhvZEFyZ3MoKXZvaWQiCgltZXRob2QgIm11bHRpcGxlUHJvZ3JhbVBhZ2VzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRDb21tZW50KCl2b2lkIgoJbWV0aG9kICJ0aHJvd0Vycm9yTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm11bHRpbGluZUZ1bmN0aW9uQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYSgpdWludDY0IgoJbWV0aG9kICJiKCl1aW50NjQiCgltZXRob2QgInVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJlYXNzaWduZWROb25GaXJzdFZhcigpdWludDY0IgoJbWV0aG9kICJmdkx2KCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlRW51bSAqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoICphYmlfcm91dGVfYXNzZXJ0cyAqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21BcmcgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Gcm9tVHhuR3JvdXAgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Db25kaXRpb24gKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluICphYmlfcm91dGVfdmVyaWZ5VHhuTm90SW5jbHVkZWRJbiAqYWJpX3JvdXRlX3N1Ym1pdFBlbmRpbmdHcm91cCAqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzICphYmlfcm91dGVfc2hpZnQgKmFiaV9yb3V0ZV9mcm9tQnl0ZXMgKmFiaV9yb3V0ZV9mcm9tVWludDY0ICphYmlfcm91dGVfYnplcm9GdW5jdGlvbiAqYWJpX3JvdXRlX2V2ZW50cyAqYWJpX3JvdXRlX2xldE9wdGltaXphdGlvbiAqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllcyAqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nICphYmlfcm91dGVfbWV0aG9kT25QYXJlbnMgKmFiaV9yb3V0ZV9zdHJpbmdTdWJzdHJpbmcgKmFiaV9yb3V0ZV9pZFByb3BlcnR5ICphYmlfcm91dGVfc2NyYXRjaFNsb3QgKmFiaV9yb3V0ZV9lY2RzYSAqYWJpX3JvdXRlX3ZlcmlmeVR4blR5cGVzICphYmlfcm91dGVfc3RyaW5nUGx1c0VxdWFscyAqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbSAqYWJpX3JvdXRlX2NhbGxQcml2YXRlRGVmaW5lZExhdGVyICphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2NhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2FwcExvYWRTY3JhdGNoICphYmlfcm91dGVfdWludE5XaXRoVW5kZXJzY29yZSAqYWJpX3JvdXRlX29wVXAgKmFiaV9yb3V0ZV9yZXR1cm5WYWx1ZU9uQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX2NvbnN0cyAqYWJpX3JvdXRlX2Fzc2VydFdpdGhNZXNzYWdlICphYmlfcm91dGVfb3Bjb2RlQWxpYXNlcyAqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wICphYmlfcm91dGVfZWNNYXRoICphYmlfcm91dGVfZ2l0eG4gKmFiaV9yb3V0ZV9nZXRTZXRCeXRlcyAqYWJpX3JvdXRlX2dldFNldFVpbnQ2NCAqYWJpX3JvdXRlX2Jsb2NrT3AgKmFiaV9yb3V0ZV9iNjQgKmFiaV9yb3V0ZV9qc29uICphYmlfcm91dGVfYml0bGVuT3AgKmFiaV9yb3V0ZV9jb21wdXRlZENvbnN0ICphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0ICphYmlfcm91dGVfcmVhZFNjaGVtYSAqYWJpX3JvdXRlX2NvbXBhcmlzb25PciAqYWJpX3JvdXRlX3R4bkFyZ3NNZXRob2QgKmFiaV9yb3V0ZV9jYWxsVHhuQXJnc01ldGhvZCAqYWJpX3JvdXRlX3N0YXRpY1ZhbHVlTGVuICphYmlfcm91dGVfc3RhdGljVHlwZUxlbiAqYWJpX3JvdXRlX2R5bmFtaWNTY3JhdGNoU2xvdCAqYWJpX3JvdXRlX2luY3JlbWVudFNjcmF0Y2hTbG90ICphYmlfcm91dGVfaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90ICphYmlfcm91dGVfZnJvbUFkZHJlc3MgKmFiaV9yb3V0ZV9lYXJseVJldHVybiAqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJncyAqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzICphYmlfcm91dGVfYXNzZXJ0Q29tbWVudCAqYWJpX3JvdXRlX3Rocm93RXJyb3JNZXNzYWdlICphYmlfcm91dGVfb3JMaXRlcmFsVHlwZSAqYWJpX3JvdXRlX211bHRpbGluZUZ1bmN0aW9uQ2FsbCAqYWJpX3JvdXRlX2EgKmFiaV9yb3V0ZV9iICphYmlfcm91dGVfdW51c2VkTWV0aG9kVmFsdWUgKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXIgKmFiaV9yb3V0ZV9mdkx2CgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpCglpbnQgMQoJcmV0dXJuCgoqaW50VG9Bc2NpaToKCXByb3RvIDEgMQoJYnl0ZSAweDMwMzEzMjMzMzQzNTM2MzczODM5IC8vICIwMTIzNDU2Nzg5IgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEKCWV4dHJhY3QzCglyZXRzdWIKCQoKKml0b2E6Cglwcm90byAxIDEKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCWludCAwCgk9PQoJYnogKml0b2FfaWZfZW5kCglieXRlIDB4MzAKCXJldHN1YgoKKml0b2FfaWZfZW5kOgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCglpbnQgMAoJPgoJYnogKml0b2FfdGVybmFyeV9mYWxzZQoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCgljYWxsc3ViICppdG9hCgliICppdG9hX3Rlcm5hcnlfZW5kCgoqaXRvYV90ZXJuYXJ5X2ZhbHNlOgoJYnl0ZSAweCAvLyAiIgoKKml0b2FfdGVybmFyeV9lbmQ6CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMTAKCSUKCWNhbGxzdWIgKmludFRvQXNjaWkKCWNvbmNhdAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlRW51bSgpdm9pZAoqYWJpX3JvdXRlX3R4blR5cGVFbnVtOgoJLy8gZXhlY3V0ZSB0eG5UeXBlRW51bSgpdm9pZAoJY2FsbHN1YiB0eG5UeXBlRW51bQoJaW50IDEKCXJldHVybgoKLy8gdHhuVHlwZUVudW0oKTogdm9pZAp0eG5UeXBlRW51bToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjEKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwWzBdLnR5cGVFbnVtID09PSBUcmFuc2FjdGlvblR5cGUuQXBwbGljYXRpb25DYWxsKQoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyB0eG5Hcm91cExlbmd0aCgpdm9pZAoqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoOgoJLy8gZXhlY3V0ZSB0eG5Hcm91cExlbmd0aCgpdm9pZAoJY2FsbHN1YiB0eG5Hcm91cExlbmd0aAoJaW50IDEKCXJldHVybgoKLy8gdHhuR3JvdXBMZW5ndGgoKTogdm9pZAp0eG5Hcm91cExlbmd0aDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjUKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwLmxlbmd0aCA9PT0gMSkKCWdsb2JhbCBHcm91cFNpemUKCWludCAxCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydHMoYm9vbCxib29sKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRzOgoJLy8gYXJnMjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzIpIGZvciBhc3NlcnRzIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMSkgZm9yIGFzc2VydHMgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgYXNzZXJ0cyhib29sLGJvb2wpdm9pZAoJY2FsbHN1YiBhc3NlcnRzCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRzKGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiB2b2lkCmFzc2VydHM6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjY5CgkvLyBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglmcmFtZV9kaWcgLTEgLy8gYXJnMTogYm9vbGVhbgoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoYXJnMSwgYXJnMiwgYXJnMSA9PT0gYXJnMikKCWFzc2VydAoJZnJhbWVfZGlnIC0xIC8vIGFyZzE6IGJvb2xlYW4KCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgk9PQoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21Bcmc6CgkvLyBzb21lUGF5OiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChzb21lUGF5KSBmb3IgdmVyaWZ5VHhuRnJvbUFyZyBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHZlcmlmeVR4bkZyb21BcmcocGF5KXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuRnJvbUFyZwoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhzb21lUGF5OiBQYXlUeG4pOiB2b2lkCnZlcmlmeVR4bkZyb21Bcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjczCgkvLyB2ZXJpZnlUeG4oc29tZVBheSwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiAxMDBfMDAwIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNvbWVQYXkiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDEwMF8wMDAKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzb21lUGF5IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6IjEwMF8wMDAifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkZyb21UeG5Hcm91cCgpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21UeG5Hcm91cDoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkZyb21UeG5Hcm91cAoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCk6IHZvaWQKdmVyaWZ5VHhuRnJvbVR4bkdyb3VwOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo3NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWludCAwCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuQ29uZGl0aW9uKCl2b2lkCiphYmlfcm91dGVfdmVyaWZ5VHhuQ29uZGl0aW9uOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuQ29uZGl0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnlUeG5Db25kaXRpb24oKTogdm9pZAp2ZXJpZnlUeG5Db25kaXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjgxCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHsgZ3JlYXRlclRoYW46IDEgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uSUQKCXR4biBBcHBsaWNhdGlvbklECglpbnQgMQoJPgoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6ImFwcGxpY2F0aW9uSUQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjEifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5JbmNsdWRlZEluKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkluY2x1ZGVkSW4KCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKTogdm9pZAp2ZXJpZnlUeG5JbmNsdWRlZEluOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo4NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7CgkvLyAgICAgICBzZW5kZXI6IHsgaW5jbHVkZWRJbjogW3RoaXMudHhuLnNlbmRlcl0gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0IjoidGhpcy50eG4ifSwiZmllbGQiOiJzZW5kZXIiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbdGhpcy50eG4uc2VuZGVyXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bk5vdEluY2x1ZGVkSW46CgkvLyBleGVjdXRlIHZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuTm90SW5jbHVkZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpOiB2b2lkCnZlcmlmeVR4bk5vdEluY2x1ZGVkSW46Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjkzCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIHNlbmRlcjogeyBub3RJbmNsdWRlZEluOiBbZ2xvYmFscy56ZXJvQWRkcmVzc10gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4biJ9LCJmaWVsZCI6InNlbmRlciIsImNvbmRpdGlvbiI6Im5vdEluY2x1ZGVkSW4iLCJleHBlY3RlZCI6IltnbG9iYWxzLnplcm9BZGRyZXNzXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gc3VibWl0UGVuZGluZ0dyb3VwKCl2b2lkCiphYmlfcm91dGVfc3VibWl0UGVuZGluZ0dyb3VwOgoJLy8gZXhlY3V0ZSBzdWJtaXRQZW5kaW5nR3JvdXAoKXZvaWQKCWNhbGxzdWIgc3VibWl0UGVuZGluZ0dyb3VwCglpbnQgMQoJcmV0dXJuCgovLyBzdWJtaXRQZW5kaW5nR3JvdXAoKTogdm9pZApzdWJtaXRQZW5kaW5nR3JvdXA6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjk5CgkvLyB0aGlzLnBlbmRpbmdHcm91cC5hZGRQYXltZW50KHsgYW1vdW50OiAwLCByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgaXNGaXJzdFR4bjogdHJ1ZSB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6OTkKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo5OQoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHRoaXMucGVuZGluZ0dyb3VwLmFkZFBheW1lbnQoeyBhbW91bnQ6IDAsIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBub3RlOiAnZm9vJyB9KQoJaXR4bl9uZXh0CglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTAwCgkvLyBub3RlOiAnZm9vJwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDEKCS8vIHRoaXMucGVuZGluZ0dyb3VwLnN1Ym1pdCgpCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzOgoJLy8gZXhlY3V0ZSBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoJY2FsbHN1YiBtZXRob2RXaXRoVHhuQXJncwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kV2l0aFR4bkFyZ3MoKTogdm9pZAptZXRob2RXaXRoVHhuQXJnczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTA1CgkvLyBzZW5kTWV0aG9kQ2FsbDxbUGF5VHhuLCBNZXRob2RDYWxsPFt1aW50NjRdLCB2b2lkPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogWwoJLy8gICAgICAgICB7IGFtb3VudDogMTAwXzAwMCwgcmVjZWl2ZXI6IHRoaXMudHhuLnNlbmRlciB9LAoJLy8gICAgICAgICB7CgkvLyAgICAgICAgICAgbmFtZTogJ2JhcicsCgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbMV0sCgkvLyAgICAgICAgIH0sCgkvLyAgICAgICBdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIGFtb3VudDogMTAwXzAwMAoJaW50IDEwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYmFyKHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjExMQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KQoJaW50IDEzMzcKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTEyCgkvLyBtZXRob2RBcmdzOiBbMV0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJaXR4bl9uZXh0CglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJmb28ocGF5LGFwcGwpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDcKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBhbW91bnQ6IDEwMF8wMDAsIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIgfSwKCS8vICAgICAgICAgewoJLy8gICAgICAgICAgIG5hbWU6ICdiYXInLAoJLy8gICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQoMTMzNyksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogWzFdLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgXQoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBzaGlmdCgpdm9pZAoqYWJpX3JvdXRlX3NoaWZ0OgoJLy8gZXhlY3V0ZSBzaGlmdCgpdm9pZAoJY2FsbHN1YiBzaGlmdAoJaW50IDEKCXJldHVybgoKLy8gc2hpZnQoKTogdm9pZApzaGlmdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTE5CgkvLyBhc3NlcnQoMSA8PCAyID09PSA0KQoJaW50IDEKCWludCAyCglzaGwKCWludCA0Cgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMjAKCS8vIGFzc2VydCg0ID4+IDEgPT09IDIpCglpbnQgNAoJaW50IDEKCXNocgoJaW50IDIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gZnJvbUJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZnJvbUJ5dGVzOgoJLy8gZXhlY3V0ZSBmcm9tQnl0ZXMoKXZvaWQKCWNhbGxzdWIgZnJvbUJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQnl0ZXMoKTogdm9pZApmcm9tQnl0ZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KEFkZHJlc3MuZnJvbUJ5dGVzKCdhYmMnKS5taW5CYWxhbmNlKQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBmcm9tVWludDY0KCl2b2lkCiphYmlfcm91dGVfZnJvbVVpbnQ2NDoKCS8vIGV4ZWN1dGUgZnJvbVVpbnQ2NCgpdm9pZAoJY2FsbHN1YiBmcm9tVWludDY0CglpbnQgMQoJcmV0dXJuCgovLyBmcm9tVWludDY0KCk6IHZvaWQKZnJvbVVpbnQ2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI4CgkvLyBsb2coQXBwSUQuZnJvbVVpbnQ2NCgxMjMpLmNyZWF0b3IpCglpbnQgMTIzCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI5CgkvLyBsb2coQXNzZXRJRC5mcm9tVWludDY0KDEyMykuY3JlYXRvcikKCWludCAxMjMKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWxvZwoJcmV0c3ViCgovLyBiemVyb0Z1bmN0aW9uKCl2b2lkCiphYmlfcm91dGVfYnplcm9GdW5jdGlvbjoKCS8vIGV4ZWN1dGUgYnplcm9GdW5jdGlvbigpdm9pZAoJY2FsbHN1YiBiemVyb0Z1bmN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBiemVyb0Z1bmN0aW9uKCk6IHZvaWQKYnplcm9GdW5jdGlvbjoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNAoJLy8geDogYnl0ZXMgPSBiemVybygyKQoJYnl0ZSAweDAwMDAKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM1CgkvLyB5OiBieXRlcyA9IGJ6ZXJvKG4pCglpbnQgMQoJYnplcm8KCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM2CgkvLyB6OiBbdWludDY0LCB1aW50PDg+XSA9IGJ6ZXJvPFt1aW50NjQsIHVpbnQ8OD5dPigpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDIgLy8gejogW3VpbnQ2NCwgdWludDw4Pl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNwoJLy8gYXNzZXJ0KGxlbih4ICsgeSArIHopID09PSAxMikKCWJ5dGUgMHgwMDAwIC8vIHg6IGJ5dGVzCglmcmFtZV9kaWcgMSAvLyB5OiBieXRlcwoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwIC8vIHo6IFt1aW50NjQsIHVpbnQ8OD5dCgljb25jYXQKCWxlbgoJaW50IDEyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGV2ZW50cygpdm9pZAoqYWJpX3JvdXRlX2V2ZW50czoKCS8vIGV4ZWN1dGUgZXZlbnRzKCl2b2lkCgljYWxsc3ViIGV2ZW50cwoJaW50IDEKCXJldHVybgoKLy8gZXZlbnRzKCk6IHZvaWQKZXZlbnRzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTIKCS8vIHRoaXMubXlFdmVudC5sb2coeyBhcHA6IHRoaXMuYXBwLCBudW06IDEgfSkKCWJ5dGUgMHg4NzUyODE5NiAvLyBteUV2ZW50KHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY29uY2F0Cgljb25jYXQKCWxvZwoJcmV0c3ViCgovLyBsZXRPcHRpbWl6YXRpb24odWludDY0W10pdWludDY0W10KKmFiaV9yb3V0ZV9sZXRPcHRpbWl6YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgbGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdCgljYWxsc3ViIGxldE9wdGltaXphdGlvbgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbGV0T3B0aW1pemF0aW9uKGE6IHVpbnQ2NFtdKTogdWludDY0W10KbGV0T3B0aW1pemF0aW9uOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTYKCS8vIGFzc2VydChhWzBdKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTU4CgkvLyBiID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglmcmFtZV9idXJ5IC0xIC8vIGI6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglyZXRzdWIKCi8vIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcygpdm9pZAoqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllczoKCS8vIGV4ZWN1dGUgc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCl2b2lkCgljYWxsc3ViIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCk6IHZvaWQKc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IER1bW15Q29udHJhY3QuYXBwcm92YWxQcm9ncmFtKCksCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogRHVtbXlDb250cmFjdC5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiBEdW1teUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NQoJLy8gb25Db21wbGV0aW9uOiBPbkNvbXBsZXRpb24uTm9PcAoJaW50IDAgLy8gTm9PcAoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDakVZRklFR0N6RVpDSTBNQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUFBQUFBSUVCUTRBRXVFUjdOallhQUk0Qi8vQUEKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjcKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjgKCS8vIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UKCWludCAwCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjkKCS8vIGxvY2FsTnVtVWludDogRHVtbXlDb250cmFjdC5zY2hlbWEubG9jYWwubnVtVWludAoJaW50IDAKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogRHVtbXlDb250cmFjdC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZQoJaW50IDAKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzEKCS8vIGdsb2JhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMAoJaXR4bl9maWVsZCBHbG9iYWxOdW1VaW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBudW1iZXJUb1N0cmluZygpdm9pZAoqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nOgoJLy8gZXhlY3V0ZSBudW1iZXJUb1N0cmluZygpdm9pZAoJY2FsbHN1YiBudW1iZXJUb1N0cmluZwoJaW50IDEKCXJldHVybgoKLy8gbnVtYmVyVG9TdHJpbmcoKTogdm9pZApudW1iZXJUb1N0cmluZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTc4CgkvLyBhc3NlcnQobi50b1N0cmluZygpID09PSBzKQoJaW50IDEKCWNhbGxzdWIgKml0b2EKCWJ5dGUgIjEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG1ldGhvZE9uUGFyZW5zKCl2b2lkCiphYmlfcm91dGVfbWV0aG9kT25QYXJlbnM6CgkvLyBleGVjdXRlIG1ldGhvZE9uUGFyZW5zKCl2b2lkCgljYWxsc3ViIG1ldGhvZE9uUGFyZW5zCglpbnQgMQoJcmV0dXJuCgovLyBtZXRob2RPblBhcmVucygpOiB2b2lkCm1ldGhvZE9uUGFyZW5zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODIKCS8vIGFzc2VydCgoMSArIDIpLnRvU3RyaW5nKCkgPT09ICczJykKCWludCAzCgljYWxsc3ViICppdG9hCglieXRlIDB4MzMgLy8gIjMiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1N1YnN0cmluZygpdm9pZAoqYWJpX3JvdXRlX3N0cmluZ1N1YnN0cmluZzoKCS8vIGV4ZWN1dGUgc3RyaW5nU3Vic3RyaW5nKCl2b2lkCgljYWxsc3ViIHN0cmluZ1N1YnN0cmluZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nU3Vic3RyaW5nKCk6IHZvaWQKc3RyaW5nU3Vic3RyaW5nOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODcKCS8vIGFzc2VydChzLnN1YnN0cmluZygxLCAzKSA9PT0gJ2JjJykKCWJ5dGUgImFiY2RlZiIKCXN1YnN0cmluZyAxIDMKCWJ5dGUgMHg2MjYzIC8vICJiYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gaWRQcm9wZXJ0eSgpdm9pZAoqYWJpX3JvdXRlX2lkUHJvcGVydHk6CgkvLyBleGVjdXRlIGlkUHJvcGVydHkoKXZvaWQKCWNhbGxzdWIgaWRQcm9wZXJ0eQoJaW50IDEKCXJldHVybgoKLy8gaWRQcm9wZXJ0eSgpOiB2b2lkCmlkUHJvcGVydHk6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTEKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTkyCgkvLyBhc3NlcnQoQXBwSUQuZnJvbVVpbnQ2NChhcHAuaWQpID09PSBhcHApCglpbnQgMCAvLyBhcHA6IHVpbnQ2NAoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTQKCS8vIGFzYSA9IEFzc2V0SUQuemVyb0luZGV4CglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGFzYTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTUKCS8vIGFzc2VydChBc3NldElELmZyb21VaW50NjQoYXNhLmlkKSA9PT0gYXNhKQoJaW50IDAgLy8gYXNhOiB1aW50NjQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBzY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX3NjcmF0Y2hTbG90OgoJLy8gZXhlY3V0ZSBzY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBzY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gc2NyYXRjaFNsb3QoKTogdm9pZApzY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTk5CgkvLyB0aGlzLnNjcmF0Y2gudmFsdWUgPSAxMzM3CglpbnQgMTMzNwoJc3RvcmUgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjAwCgkvLyBhc3NlcnQodGhpcy5zY3JhdGNoLnZhbHVlID09PSAxMzM3KQoJbG9hZCAwCglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlY2RzYSgpdm9pZAoqYWJpX3JvdXRlX2VjZHNhOgoJLy8gZXhlY3V0ZSBlY2RzYSgpdm9pZAoJY2FsbHN1YiBlY2RzYQoJaW50IDEKCXJldHVybgoKLy8gZWNkc2EoKTogdm9pZAplY2RzYToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNAoJLy8gZWNkc2FWZXJpZnkoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZHVwbiA0CgllY2RzYV92ZXJpZnkgU2VjcDI1NmsxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDUKCS8vIGQgPSBlY2RzYVBrRGVjb21wcmVzcygnU2VjcDI1NmsxJywgJycgYXMgYnl0ZXM8MzM+KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZWNkc2FfcGtfZGVjb21wcmVzcyBTZWNwMjU2azEKCWZyYW1lX2J1cnkgMCAvLyBkIHkgY29tcG9uZW50OiBieXRlW10KCWZyYW1lX2J1cnkgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNgoJLy8gbG9nKGQueSkKCWZyYW1lX2RpZyAwIC8vIGQgeSBjb21wb25lbnQ6IGJ5dGVbXQoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDcKCS8vIGxvZyhkLngpCglmcmFtZV9kaWcgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjA5CgkvLyByID0gZWNkc2FQa1JlY292ZXIoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsIDEsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJaW50IDEKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIC8vICIiCglkdXAKCWVjZHNhX3BrX3JlY292ZXIgU2VjcDI1NmsxCglmcmFtZV9idXJ5IDIgLy8gciB5IGNvbXBvbmVudDogYnl0ZVtdCglmcmFtZV9idXJ5IDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTAKCS8vIGxvZyhyLnkpCglmcmFtZV9kaWcgMiAvLyByIHkgY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjExCgkvLyBsb2coci54KQoJZnJhbWVfZGlnIDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gdmVyaWZ5VHhuVHlwZXMoKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5UeXBlczoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuVHlwZXMoKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4blR5cGVzKCk6IHZvaWQKdmVyaWZ5VHhuVHlwZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIxNQoJLy8gdmVyaWZ5UGF5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgcGF5CglpbnQgMAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoicGF5In0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWludCAwCglndHhucyBBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTkKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG5Hcm91cFswXSwgewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogewoJLy8gICAgICAgICAwOiAnZm9vJywKCS8vICAgICAgICAgMTogewoJLy8gICAgICAgICAgIGluY2x1ZGVkSW46IFsnYmFyJywgJ2JheiddLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGwKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGFwcGwKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoiYXBwbCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25JRAoJaW50IDAKCWd0eG5zIEFwcGxpY2F0aW9uSUQKCWludCAwCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoiYXBwbGljYXRpb25JRCIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCgwKSJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzIDAKCWludCAwCglndHhucyBBcHBsaWNhdGlvbkFyZ3MgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImFwcGxpY2F0aW9uQXJncyIsImluZGV4IjoiMCIsImV4cGVjdGVkIjoiJ2ZvbycifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uQXJncyAxCglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCT09CglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxN2EgLy8gImJheiIKCT09Cgl8fAoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4bkdyb3VwWzBdIn0sImZpZWxkIjoiYXBwbGljYXRpb25BcmdzIDEiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbJ2JhcicsICdiYXonXSJ9Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIyOQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXhmZXIKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoidHlwZUVudW0iLCJleHBlY3RlZCI6ImF4ZmVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldFJlY2VpdmVyCglpbnQgMAoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjMzCgkvLyB2ZXJpZnlBc3NldENvbmZpZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBjb25maWdBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KDApLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYWNmZwoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYWNmZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJhY2ZnIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBjb25maWdBc3NldAoJaW50IDAKCWd0eG5zIENvbmZpZ0Fzc2V0CglpbnQgMAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImNvbmZpZ0Fzc2V0IiwiZXhwZWN0ZWQiOiJBc3NldElELmZyb21VaW50NjQoMCkifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMzcKCS8vIHZlcmlmeUtleVJlZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICB2b3RlRmlyc3Q6IDEzMzcsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBrZXlyZWcKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGtleXJlZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJrZXlyZWcifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IHZvdGVGaXJzdAoJaW50IDAKCWd0eG5zIFZvdGVGaXJzdAoJaW50IDEzMzcKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ2b3RlRmlyc3QiLCJleHBlY3RlZCI6IjEzMzcifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1BsdXNFcXVhbHMoKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdQbHVzRXF1YWxzOgoJLy8gZXhlY3V0ZSBzdHJpbmdQbHVzRXF1YWxzKCl2b2lkCgljYWxsc3ViIHN0cmluZ1BsdXNFcXVhbHMKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1BsdXNFcXVhbHMoKTogdm9pZApzdHJpbmdQbHVzRXF1YWxzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI0MwoJLy8gcyA9ICdmb28nCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDQKCS8vIHMgKz0gJ2JhcicKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDUKCS8vIGFzc2VydChzID09PSAnZm9vYmFyJykKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDY2NmY2ZjYyNjE3MiAvLyAiZm9vYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoJY2FsbHN1YiBpbXBvcnRlZFByb2dyYW0KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaW1wb3J0ZWRQcm9ncmFtKCk6IGJ5dGVzCmltcG9ydGVkUHJvZ3JhbToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjQ5CgkvLyByZXR1cm4gSWZUZXN0LmFwcHJvdmFsUHJvZ3JhbSgpOwoJYnl0ZSBiNjQgQ2lBRUFRQUNJQ1lKQkJVZmZIVUNhV1lFWld4elpRTmxibVFBQTJadmJ3ZGxiSE5sSUdsbUNXVnNjMlVnYVdZZ01RbGxiSE5sSUdsbUlESXhHQlNCQmdzeEdRaU5EQU1rQUFBQUFBQUFBQUFBQUFNV0FBQUFBQUFBQUFBQUFBQW9OaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0JBWXYvUVFBQ0tZa3JpU2cyR2dGSkZTSVNSQ05UaUFBTVNSVVdWd1lDVEZCUXNDSkRpZ0VCaS85QkFBVXBpVUlBQWlxSmlTZzJHZ0pKRlNJU1JDTlROaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0NBWXYvUVFBRktZbENBQWlML2tFQUF5Y0dpU3VKS0RZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdJQmkvOUJBQVVwaVVJQURZditRUUFHSndhSlFnQUNLb21KS0RZYUEwa1ZJaEpFSTFNMkdnSkpGU0lTUkNOVE5ob0JTUlVpRWtRalU0Z0FERWtWRmxjR0FreFFVTEFpUTRvREFZdi9RUUFGS1lsQ0FCT0wva0VBQmljSGlVSUFDSXY5UVFBREp3aUpLNGtvTmhvRFNSVWlFa1FqVXpZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdNQmkvOUJBQVVwaVVJQUdJditRUUFHSndlSlFnQU5pLzFCQUFZbkNJbENBQUlxaVlrb05ob0NTUlVpRWtRalV6WWFBVWtWSWhKRUkxT0lBQXhKRlJaWEJnSk1VRkN3SWtPS0FnR0wvMEVBRm92K1FRQU1nQWx1WlhOMFpXUWdhV2FKS1lsQ0FBSXFpWWtvTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9CQVl2L1FRQUZLWWxDQUFJcWlZa29OaG9DU1JVaUVrUWpVellhQVVrVkloSkVJMU9JQUFVV1VMQWlRNG9DQVl2L1FRQUVJa0lBQzR2K1FRQUVKRUlBQW9FRGlTZzJHZ0ZYQWdDSUFBVVdVTEFpUTRvQkFZdi9Kd1NwUVFBQ0lva2tpU2cyR2dGWEFnQ0lBQVVXVUxBaVE0b0JBWXYvSndTcFFRQUVJa0lBQVNTSk5ob0JTUlVrRWtRWGlBQUNJa09LQVFDTC95Y0VxVUVBQXljRnNJazJHZ0pKRlNRU1JCYzJHZ0ZKRlNRU1JCZUlBQUlpUTRvQ0FJdi9pLzRPUVFBREp3V3dpVFlhQWtrVkpSSkVOaG9CU1JVbEVrU0lBQUlpUTRvQ0FJdi9pLzZtUVFBREp3V3dpU2cyR2dKSkZTSVNSQ05UTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9DQVl2L1FRQVppLzVCQUEyQUIyRWdZVzVrSUdLSlFnQUVnQUZoaVVJQUZvditRUUFIZ0FGaWlVSUFDb0FIYm1WcGRHaGxjb21KSWtPQUJMaEVlelkyR2dDT0FmL3hBSUFFUTI3QndvQUVISG9OWG9BRVhnKzJ6NEFFWGh4c1VJQUVXTkM2a29BRVhTOVBBb0FFaEZjcDJZQUVqK2RzcUlBRUdqeDRlSUFFZEx6SWFJQUVRaEw1QllBRWxkMnV2NEFFTVVlNFpvQUVRb2wvWVlBRVUwdml0ellhQUk0UC9HRDhodnl3L092OUt2MTYvYzcrRS80OS9uTCtrUDZ3L3MzKzgvOFhBQT09CglyZXRzdWIKCi8vIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCiphYmlfcm91dGVfY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXI6CgkvLyBleGVjdXRlIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCgljYWxsc3ViIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsUHJpdmF0ZURlZmluZWRMYXRlcigpOiB2b2lkCmNhbGxQcml2YXRlRGVmaW5lZExhdGVyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNTMKCS8vIGxvZyh0aGlzLnByaXZhdGVNZXRob2QoJ2hlbGxvJykpCglieXRlIDB4Njg2NTZjNmM2ZiAvLyAiaGVsbG8iCgljYWxsc3ViIHByaXZhdGVNZXRob2QKCWxvZwoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKG1zZzogc3RyaW5nKTogc3RyaW5nCnByaXZhdGVNZXRob2Q6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI1NwoJLy8gcmV0dXJuIG1zZzsKCWZyYW1lX2RpZyAtMSAvLyBtc2c6IHN0cmluZwoJcmV0c3ViCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmludGVyYWxQdWJsaWNNZXRob2Q6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI2MQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QoKXZvaWQKKmFiaV9yb3V0ZV9jYWxsSW50ZXJuYWxQdWJsaWNNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZAoJY2FsbHN1YiBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QKCWludCAxCglyZXR1cm4KCi8vIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpOiB2b2lkCmNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjY1CgkvLyBhc3NlcnQodGhpcy5pbnRlcmFsUHVibGljTWV0aG9kKDEsIDIpID09PSAzKQoJaW50IDIKCWludCAxCgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWludCAzCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFwcExvYWRTY3JhdGNoKCl2b2lkCiphYmlfcm91dGVfYXBwTG9hZFNjcmF0Y2g6CgkvLyBleGVjdXRlIGFwcExvYWRTY3JhdGNoKCl2b2lkCgljYWxsc3ViIGFwcExvYWRTY3JhdGNoCglpbnQgMQoJcmV0dXJuCgovLyBhcHBMb2FkU2NyYXRjaCgpOiB2b2lkCmFwcExvYWRTY3JhdGNoOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNjkKCS8vIGxvZyh0aGlzLnR4bkdyb3VwWzFdLmxvYWRTY3JhdGNoKDIpIGFzIGJ5dGVzKQoJZ2xvYWQgMSAyCglsb2cKCXJldHN1YgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoqYWJpX3JvdXRlX3VpbnROV2l0aFVuZGVyc2NvcmU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoJY2FsbHN1YiB1aW50TldpdGhVbmRlcnNjb3JlCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50TldpdGhVbmRlcnNjb3JlIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpOiB1aW50MjU2CnVpbnROV2l0aFVuZGVyc2NvcmU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3MwoJLy8gcmV0dXJuIDx1aW50MjU2PjEyM180NTY7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZTI0MAoJcmV0c3ViCgovLyBvcFVwKCl2b2lkCiphYmlfcm91dGVfb3BVcDoKCS8vIGV4ZWN1dGUgb3BVcCgpdm9pZAoJY2FsbHN1YiBvcFVwCglpbnQgMQoJcmV0dXJuCgovLyBvcFVwKCk6IHZvaWQKb3BVcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3OAoJLy8gZm9yIChsZXQgaSA9IDE7IGkgPCA3NTsgaSArPSAxKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpIDwgNzUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDc1Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzkKCS8vIGFzc2VydChpKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0Cglhc3NlcnQKCipmb3JfMF9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJcmV0c3ViCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpc3RyaW5nCiphYmlfcm91dGVfcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQoKXN0cmluZwoJY2FsbHN1YiByZXR1cm5WYWx1ZU9uQXNzaWdubWVudAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpOiBzdHJpbmcKcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjg0CgkvLyBtZXNzYWdlID0gJ2hpJwoJYnl0ZSAweDY4NjkgLy8gImhpIgoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vICppZjBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLmFwcC5hZGRyZXNzCgl0eG4gU2VuZGVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NwoJLy8gbWVzc2FnZSA9ICdpbiBibG9jaycKCWJ5dGUgMHg2OTZlMjA2MjZjNmY2MzZiIC8vICJpbiBibG9jayIKCWZyYW1lX2J1cnkgMCAvLyBtZXNzYWdlOiBieXRlW10KCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTAKCS8vIHJldHVybiAobWVzc2FnZSA9ICdieWUnKTsKCWJ5dGUgMHg2Mjc5NjUgLy8gImJ5ZSIKCWR1cAoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudCgpOiB1aW50NjQKcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTYKCS8vIHJldHVybiAoYVswXSA9IDQpOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJaW50IDAKCWludCA0CglkdXAKCXN0b3JlIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCk6IHVpbnQ2NApyZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwMAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gMQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJaW50IDEKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMDIKCS8vIHJldHVybiAodGhpcy5nS2V5LnZhbHVlID0gMik7CglieXRlIDB4Njc0YjY1NzkgLy8gImdLZXkiCglpbnQgMgoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJYXBwX2dsb2JhbF9wdXQKCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCXJldHN1YgoKLy8gcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSgpOiB1aW50NjQKcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzA2CgkvLyBhID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwOAoJLy8gcmV0dXJuIChhICs9IDIpOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0CglpbnQgMgoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NAoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTQKCS8vIHJldHVybiAoYVswXSArPSA0KTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWludCAwCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDAgOAoJYnRvaQoJaW50IDQKCSsKCWR1cAoJc3RvcmUgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzE4CgkvLyB0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZSA9IFsxLCAyLCAzXQoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyMAoJLy8gcmV0dXJuICh0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZVswXSArPSA0KTsKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgMCA4CglidG9pCglpbnQgNAoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJaXRvYgoJcmVwbGFjZTMKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0Cglsb2FkIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglyZXRzdWIKCi8vIGNvbnN0cygpdm9pZAoqYWJpX3JvdXRlX2NvbnN0czoKCS8vIGV4ZWN1dGUgY29uc3RzKCl2b2lkCgljYWxsc3ViIGNvbnN0cwoJaW50IDEKCXJldHVybgoKLy8gY29uc3RzKCk6IHZvaWQKY29uc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMjQKCS8vIGFzc2VydChTVFJJTkdfQ09OU1QgPT09ICdmb28nKQoJYnl0ZSAiZm9vIgoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzI1CgkvLyBhc3NlcnQoTlVNX0NPTlNUID09PSAxMjMpCglpbnQgMTIzCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyNgoJLy8gYXNzZXJ0KE5FU1RFRF9DT05TVCA9PT0gMTIzKQoJaW50IDEyMwoJZHVwCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCiphYmlfcm91dGVfYXNzZXJ0V2l0aE1lc3NhZ2U6CgkvLyBleGVjdXRlIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCgljYWxsc3ViIGFzc2VydFdpdGhNZXNzYWdlCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRXaXRoTWVzc2FnZSgpOiB2b2lkCmFzc2VydFdpdGhNZXNzYWdlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzAKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gb3Bjb2RlQWxpYXNlcygpdm9pZAoqYWJpX3JvdXRlX29wY29kZUFsaWFzZXM6CgkvLyBleGVjdXRlIG9wY29kZUFsaWFzZXMoKXZvaWQKCWNhbGxzdWIgb3Bjb2RlQWxpYXNlcwoJaW50IDEKCXJldHVybgoKLy8gb3Bjb2RlQWxpYXNlcygpOiB2b2lkCm9wY29kZUFsaWFzZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNAoJLy8gZXh0cmFjdFVpbnQxNihiemVybyg2NCksIDApCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWludCAwCglleHRyYWN0X3VpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzM1CgkvLyBleHRyYWN0VWludDMyKGJ6ZXJvKDY0KSwgMCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJaW50IDAKCWV4dHJhY3RfdWludDMyCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzYKCS8vIGV4dHJhY3RVaW50NjQoYnplcm8oNjQpLCAwKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglpbnQgMAoJZXh0cmFjdF91aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNwoJLy8gZWQyNTUxOVZlcmlmeUJhcmUoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeV9iYXJlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzgKCS8vIGVkMjU1MTlWZXJpZnkoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeQoJcmV0c3ViCgovLyB2cmZWZXJpZnlPcCgpdm9pZAoqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wOgoJLy8gZXhlY3V0ZSB2cmZWZXJpZnlPcCgpdm9pZAoJY2FsbHN1YiB2cmZWZXJpZnlPcAoJaW50IDEKCXJldHVybgoKLy8gdnJmVmVyaWZ5T3AoKTogdm9pZAp2cmZWZXJpZnlPcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0MgoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQzCgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDQKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ2CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM1MgoJLy8gciA9IHZyZlZlZmlyeSgnVnJmQWxnb3JhbmQnLCBiemVybygzMikgYXMgYnl0ZXMsIGJ6ZXJvKDgwKSwgYnplcm8oMzIpKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJdnJmX3ZlcmlmeSBWcmZBbGdvcmFuZAoJZnJhbWVfYnVyeSAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCWZyYW1lX2J1cnkgMSAvLyByIG91dHB1dDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTMKCS8vIGFzc2VydCghci52ZXJpZmllZCkKCWZyYW1lX2RpZyAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCSEKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU0CgkvLyBsb2coci5vdXRwdXQpCglmcmFtZV9kaWcgMSAvLyByIG91dHB1dDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gZWNNYXRoKCl2b2lkCiphYmlfcm91dGVfZWNNYXRoOgoJLy8gZXhlY3V0ZSBlY01hdGgoKXZvaWQKCWNhbGxzdWIgZWNNYXRoCglpbnQgMQoJcmV0dXJuCgovLyBlY01hdGgoKTogdm9pZAplY01hdGg6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU4CgkvLyBlY1NjYWxhck11bCgnQk4yNTRnMScsICcnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWR1cAoJZWNfc2NhbGFyX211bCBCTjI1NGcxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTkKCS8vIGVjUGFpcmluZ0NoZWNrKCdCTjI1NGcxJywgJycsICcnKQoJYnl0ZSAweCAvLyAiIgoJZHVwCgllY19wYWlyaW5nX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MAoJLy8gc2NhbGFyczogYnl0ZXMzMltdID0gW2J6ZXJvKDMyKSwgYnplcm8oMzIpXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDAgLy8gc2NhbGFyczogYnl0ZXMzMltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNjEKCS8vIGVjTXVsdGlTY2FsYXJNdWwoJ0JOMjU0ZzEnLCAnJywgc2NhbGFycykKCWJ5dGUgMHggLy8gIiIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyBzY2FsYXJzOiBieXRlczMyW10KCWVjX211bHRpX3NjYWxhcl9tdWwgQk4yNTRnMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzYyCgkvLyBlY1N1Ymdyb3VwQ2hlY2soJ0JOMjU0ZzEnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWVjX3N1Ymdyb3VwX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MwoJLy8gZWNNYXBUbygnQk4yNTRnMScsICcnKQoJYnl0ZSAweCAvLyAiIgoJZWNfbWFwX3RvIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2NAoJLy8gZWNBZGQoJ0JOMjU0ZzEnLCAnJywgJycpCglieXRlIDB4IC8vICIiCglkdXAKCWVjX2FkZCBCTjI1NGcxCglyZXRzdWIKCi8vIGdpdHhuKCl2b2lkCiphYmlfcm91dGVfZ2l0eG46CgkvLyBleGVjdXRlIGdpdHhuKCl2b2lkCgljYWxsc3ViIGdpdHhuCglpbnQgMQoJcmV0dXJuCgovLyBnaXR4bigpOiB2b2lkCmdpdHhuOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2OAoJLy8gbG9nKHRoaXMubGFzdElubmVyR3JvdXBbMF0uc2VuZGVyKQoJZ2l0eG4gMCBTZW5kZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcwCgkvLyBhbm90aGVyVHhuID0gdGhpcy5sYXN0SW5uZXJHcm91cFsxXQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhbm90aGVyVHhuOiBnaXR4bgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcyCgkvLyBsb2coYW5vdGhlclR4bi5zZW5kZXIpCglnaXR4biAxIFNlbmRlcgoJbG9nCglyZXRzdWIKCi8vIGdldFNldEJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZ2V0U2V0Qnl0ZXM6CgkvLyBleGVjdXRlIGdldFNldEJ5dGVzKCl2b2lkCgljYWxsc3ViIGdldFNldEJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTZXRCeXRlcygpOiB2b2lkCmdldFNldEJ5dGVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzYKCS8vIGxvZyhzZXRiaXQoJ2ZvbycsIDAsIHRydWUpKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRiaXQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc3CgkvLyBnZXRiaXQoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Yml0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzgKCS8vIGdldGJ5dGUoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Ynl0ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc5CgkvLyBzZXRieXRlKCdmb28nLCAwLCAxKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRieXRlCglyZXRzdWIKCi8vIGdldFNldFVpbnQ2NCgpdm9pZAoqYWJpX3JvdXRlX2dldFNldFVpbnQ2NDoKCS8vIGV4ZWN1dGUgZ2V0U2V0VWludDY0KCl2b2lkCgljYWxsc3ViIGdldFNldFVpbnQ2NAoJaW50IDEKCXJldHVybgoKLy8gZ2V0U2V0VWludDY0KCk6IHZvaWQKZ2V0U2V0VWludDY0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozODMKCS8vIGFzc2VydChzZXRiaXQoMTIzLCAwLCB0cnVlKSkKCWludCAxMjMKCWludCAwCglpbnQgMQoJc2V0Yml0Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4NAoJLy8gZ2V0Yml0KDEyMywgMCkKCWludCAxMjMKCWludCAwCglnZXRiaXQKCXJldHN1YgoKLy8gYmxvY2tPcCgpdm9pZAoqYWJpX3JvdXRlX2Jsb2NrT3A6CgkvLyBleGVjdXRlIGJsb2NrT3AoKXZvaWQKCWNhbGxzdWIgYmxvY2tPcAoJaW50IDEKCXJldHVybgoKLy8gYmxvY2tPcCgpOiB2b2lkCmJsb2NrT3A6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4OAoJLy8gbG9nKGJsb2Nrc1tnbG9iYWxzLnJvdW5kIC0gMV0uc2VlZCkKCWdsb2JhbCBSb3VuZAoJaW50IDEKCS0KCWJsb2NrIEJsa1NlZWQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzg5CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50aW1lc3RhbXApCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtUaW1lc3RhbXAKCWFzc2VydAoJcmV0c3ViCgovLyBiNjQoKXZvaWQKKmFiaV9yb3V0ZV9iNjQ6CgkvLyBleGVjdXRlIGI2NCgpdm9pZAoJY2FsbHN1YiBiNjQKCWludCAxCglyZXR1cm4KCi8vIGI2NCgpOiB2b2lkCmI2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzkzCgkvLyBsb2coYmFzZTY0RGVjb2RlKCdTdGRFbmNvZGluZycsICcnKSkKCWJ5dGUgMHggLy8gIiIKCWJhc2U2NF9kZWNvZGUgU3RkRW5jb2RpbmcKCWxvZwoJcmV0c3ViCgovLyBqc29uKCl2b2lkCiphYmlfcm91dGVfanNvbjoKCS8vIGV4ZWN1dGUganNvbigpdm9pZAoJY2FsbHN1YiBqc29uCglpbnQgMQoJcmV0dXJuCgovLyBqc29uKCk6IHZvaWQKanNvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk3CgkvLyBsb2coanNvblJlZignSlNPTk9iamVjdCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05PYmplY3QKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk4CgkvLyBsb2coanNvblJlZignSlNPTlN0cmluZycsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05TdHJpbmcKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk5CgkvLyBhc3NlcnQoanNvblJlZignSlNPTlVpbnQ2NCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05VaW50NjQKCWFzc2VydAoJcmV0c3ViCgovLyBiaXRsZW5PcCgpdm9pZAoqYWJpX3JvdXRlX2JpdGxlbk9wOgoJLy8gZXhlY3V0ZSBiaXRsZW5PcCgpdm9pZAoJY2FsbHN1YiBiaXRsZW5PcAoJaW50IDEKCXJldHVybgoKLy8gYml0bGVuT3AoKTogdm9pZApiaXRsZW5PcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDAzCgkvLyBiaXRsZW4oMTIzKQoJaW50IDEyMwoJYml0bGVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MDQKCS8vIGJpdGxlbignZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJpdGxlbgoJcmV0c3ViCgovLyBjb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfY29tcHV0ZWRDb25zdDoKCS8vIGV4ZWN1dGUgY29tcHV0ZWRDb25zdCgpdm9pZAoJY2FsbHN1YiBjb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBjb21wdXRlZENvbnN0KCk6IHZvaWQKY29tcHV0ZWRDb25zdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDA4CgkvLyBhc3NlcnQoQ09NUFVURURfQ09OU1QpCglpbnQgMjQ2Cglhc3NlcnQKCXJldHN1YgoKLy8gbXVsdGlDb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0OgoJLy8gZXhlY3V0ZSBtdWx0aUNvbXB1dGVkQ29uc3QoKXZvaWQKCWNhbGxzdWIgbXVsdGlDb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUNvbXB1dGVkQ29uc3QoKTogdm9pZAptdWx0aUNvbXB1dGVkQ29uc3Q6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxMgoJLy8gYXNzZXJ0KE1VVExJX0NPTVBVVEVEX0NPTlNUKQoJaW50IDMwMzgxCglhc3NlcnQKCXJldHN1YgoKLy8gcmVhZFNjaGVtYSgpdm9pZAoqYWJpX3JvdXRlX3JlYWRTY2hlbWE6CgkvLyBleGVjdXRlIHJlYWRTY2hlbWEoKXZvaWQKCWNhbGxzdWIgcmVhZFNjaGVtYQoJaW50IDEKCXJldHVybgoKLy8gcmVhZFNjaGVtYSgpOiB2b2lkCnJlYWRTY2hlbWE6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNgoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCA9PT0gMSkKCWludCAxCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNwoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtQnl0ZVNsaWNlID09PSAyKQoJaW50IDIKCWR1cAoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDE4CgkvLyBhc3NlcnQoU2NoZW1hQ29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQgPT09IDMpCglpbnQgMwoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MTkKCS8vIGFzc2VydChTY2hlbWFDb250cmFjdC5zY2hlbWEubG9jYWwubnVtQnl0ZVNsaWNlID09PSA0KQoJaW50IDQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBjb21wYXJpc29uT3IoKWJvb2wKKmFiaV9yb3V0ZV9jb21wYXJpc29uT3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29tcGFyaXNvbk9yKClib29sCgljYWxsc3ViIGNvbXBhcmlzb25PcgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb21wYXJpc29uT3IoKTogYm9vbGVhbgpjb21wYXJpc29uT3I6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQyMwoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gZ2xvYmFscy56ZXJvQWRkcmVzcyB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IGdsb2JhbHMuemVyb0FkZHJlc3M7Cgl0eG4gU2VuZGVyCglnbG9iYWwgWmVyb0FkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCXx8Cgoqc2tpcF9vcjA6CglyZXRzdWIKCi8vIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKKmFiaV9yb3V0ZV90eG5BcmdzTWV0aG9kOgoJLy8gX3BheTE6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKF9wYXkxKSBmb3IgdHhuQXJnc01ldGhvZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKCWNhbGxzdWIgdHhuQXJnc01ldGhvZAoJaW50IDEKCXJldHVybgoKLy8gdHhuQXJnc01ldGhvZChfcGF5MTogUGF5VHhuKTogdm9pZAp0eG5BcmdzTWV0aG9kOgoJcHJvdG8gMSAwCglyZXRzdWIKCi8vIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCiphYmlfcm91dGVfY2FsbFR4bkFyZ3NNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCgljYWxsc3ViIGNhbGxUeG5BcmdzTWV0aG9kCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsVHhuQXJnc01ldGhvZCgpOiB2b2lkCmNhbGxUeG5BcmdzTWV0aG9kOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzAKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBHZW5lcmFsVGVzdC5wcm90b3R5cGUudHhuQXJnc01ldGhvZD4oewoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsIGFtb3VudDogMCB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDMxCgkvLyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQzMQoJLy8gYW1vdW50OiAwCglpbnQgMAoJaXR4bl9maWVsZCBBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAidHhuQXJnc01ldGhvZChwYXkpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzEKCS8vIG1ldGhvZEFyZ3M6IFt7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IDAgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gc3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkCiphYmlfcm91dGVfc3RhdGljVmFsdWVMZW46CgkvLyB4OiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBzdGF0aWNWYWx1ZUxlbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNWYWx1ZUxlbih1aW50MjU2KXZvaWQKCWNhbGxzdWIgc3RhdGljVmFsdWVMZW4KCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1ZhbHVlTGVuKHg6IHVpbnQyNTYpOiB2b2lkCnN0YXRpY1ZhbHVlTGVuOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzYKCS8vIGFzc2VydChsZW4oeCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBzdGF0aWNUeXBlTGVuKCl2b2lkCiphYmlfcm91dGVfc3RhdGljVHlwZUxlbjoKCS8vIGV4ZWN1dGUgc3RhdGljVHlwZUxlbigpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlTGVuCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNUeXBlTGVuKCk6IHZvaWQKc3RhdGljVHlwZUxlbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQwCgkvLyBhc3NlcnQobGVuPHVpbnQyNTY+KCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQKKmFiaV9yb3V0ZV9keW5hbWljU2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGR5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBkeW5hbWljU2NyYXRjaFNsb3QKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNTY3JhdGNoU2xvdCgpOiB2b2lkCmR5bmFtaWNTY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQ0CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDEpLnZhbHVlID0gMTMzNwoJaW50IDEKCWludCAxMzM3CglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ0NQoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMSkudmFsdWUgPT09IDEzMzcpCglpbnQgMQoJbG9hZHMKCWludCAxMzM3Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCiphYmlfcm91dGVfaW5jcmVtZW50U2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudFNjcmF0Y2hTbG90CglpbnQgMQoJcmV0dXJuCgovLyBpbmNyZW1lbnRTY3JhdGNoU2xvdCgpOiB2b2lkCmluY3JlbWVudFNjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NDkKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSA9IDEzMzcKCWludCAxMzM3CglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTAKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSArPSAxCglsb2FkIDAKCWludCAxCgkrCglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTEKCS8vIGFzc2VydCh0aGlzLnNjcmF0Y2gudmFsdWUgPT09IDEzMzgpCglsb2FkIDAKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX2luY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdDoKCS8vIGV4ZWN1dGUgaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCk6IHZvaWQKaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTUKCS8vIHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPSAxMzM3CglpbnQgMgoJaW50IDEzMzcKCXN0b3JlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDU2CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDIpLnZhbHVlICs9IDEKCWludCAyCglsb2FkcwoJaW50IDEKCSsKCWludCAyCglzd2FwCglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ1NwoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPT09IDEzMzgpCglpbnQgMgoJbG9hZHMKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGZyb21BZGRyZXNzKCl2b2lkCiphYmlfcm91dGVfZnJvbUFkZHJlc3M6CgkvLyBleGVjdXRlIGZyb21BZGRyZXNzKCl2b2lkCgljYWxsc3ViIGZyb21BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQWRkcmVzcygpOiB2b2lkCmZyb21BZGRyZXNzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2MQoJLy8gYSA9IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFZNUhGS1EnKQoJYWRkciBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWTVIRktRCglmcmFtZV9idXJ5IDAgLy8gYTogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDYyCgkvLyBhc3NlcnQoYSA9PT0gQWRkcmVzcy56ZXJvQWRkcmVzcykKCWZyYW1lX2RpZyAwIC8vIGE6IGFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlYXJseVJldHVybih1aW50NjQpdWludDY0CiphYmlfcm91dGVfZWFybHlSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZWFybHlSZXR1cm4odWludDY0KXVpbnQ2NAoJY2FsbHN1YiBlYXJseVJldHVybgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVhcmx5UmV0dXJuKGE6IHVpbnQ2NCk6IHVpbnQ2NAplYXJseVJldHVybjoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY2CgkvLyBhID09PSAxCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglpbnQgMQoJPT0KCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2NwoJLy8gcmV0dXJuIDI7CglpbnQgMgoJYiAqZWFybHlSZXR1cm4qcmV0dXJuCgoqaWYxX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY5CgkvLyBiID0gYSArIDEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIDAgLy8gYjogdWludDY0CgoqZWFybHlSZXR1cm4qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGFzc2V0TWV0aG9kQXJncygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJnczoKCS8vIGV4ZWN1dGUgYXNzZXRNZXRob2RBcmdzKCl2b2lkCgljYWxsc3ViIGFzc2V0TWV0aG9kQXJncwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRNZXRob2RBcmdzKCk6IHZvaWQKYXNzZXRNZXRob2RBcmdzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzQKCS8vIHNlbmRNZXRob2RDYWxsPFtBc3NldFJlZmVyZW5jZV0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbyhhc3NldCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ3NgoJLy8gbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0KCWludCAxCglpdHhuX2ZpZWxkIEFzc2V0cwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzOgoJLy8gZXhlY3V0ZSBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoJY2FsbHN1YiBtdWx0aXBsZVByb2dyYW1QYWdlcwoJaW50IDEKCXJldHVybgoKLy8gbXVsdGlwbGVQcm9ncmFtUGFnZXMoKTogdm9pZAptdWx0aXBsZVByb2dyYW1QYWdlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDg1CgkvLyBzZW5kQXBwQ2FsbCh7CgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0sCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogW3RoaXMucGFnZU9uZS52YWx1ZSwgdGhpcy5wYWdlVHdvLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBbdGhpcy5wYWdlT25lLnZhbHVlLCB0aGlzLnBhZ2VUd28udmFsdWVdCglieXRlIDB4NzA2MTY3NjU0ZjZlNjUgLy8gInBhZ2VPbmUiCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnBhZ2VPbmUudmFsdWUKCWFzc2VydAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW1QYWdlcwoJYnl0ZSAweDcwNjE2NzY1NTQ3NzZmIC8vICJwYWdlVHdvIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wYWdlVHdvLnZhbHVlCglhc3NlcnQKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NwoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0KCWJ5dGUgMHg3MDYxNjc2NTRmNmU2NSAvLyAicGFnZU9uZSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZU9uZS52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDYxNjc2NTU0Nzc2ZiAvLyAicGFnZVR3byIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZVR3by52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGFzc2VydENvbW1lbnQoKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRDb21tZW50OgoJLy8gZXhlY3V0ZSBhc3NlcnRDb21tZW50KCl2b2lkCgljYWxsc3ViIGFzc2VydENvbW1lbnQKCWludCAxCglyZXR1cm4KCi8vIGFzc2VydENvbW1lbnQoKTogdm9pZAphc3NlcnRDb21tZW50OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0OTIKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKKmFiaV9yb3V0ZV90aHJvd0Vycm9yTWVzc2FnZToKCS8vIGV4ZWN1dGUgdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKCWNhbGxzdWIgdGhyb3dFcnJvck1lc3NhZ2UKCWludCAxCglyZXR1cm4KCi8vIHRocm93RXJyb3JNZXNzYWdlKCk6IHZvaWQKdGhyb3dFcnJvck1lc3NhZ2U6Cglwcm90byAwIDAKCgkvLyB0aGlzIGlzIGFuIGVycm9yCgllcnIKCXJldHN1YgoKLy8gb3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vckxpdGVyYWxUeXBlOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvckxpdGVyYWxUeXBlKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvckxpdGVyYWxUeXBlCglpbnQgMQoJcmV0dXJuCgovLyBvckxpdGVyYWxUeXBlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApvckxpdGVyYWxUeXBlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAwCgkvLyBmb28gPSBhICYmIGIgPT09IDEgPyAyIDogMAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglpbnQgMQoJPT0KCSYmCgoqc2tpcF9hbmQwOgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMCAvLyBmb286IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAxCgkvLyBhc3NlcnQoZm9vKQoJZnJhbWVfZGlnIDAgLy8gZm9vOiB1aW50NjQKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAzCgkvLyBiYXIgPSBhICYmIGIgPT09IDAgPyAnMicgOiAnMCcKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJaW50IDAKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICp0ZXJuYXJ5MV9mYWxzZQoJYnl0ZSAweDMyIC8vICIyIgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglieXRlIDB4MzAgLy8gIjAiCgoqdGVybmFyeTFfZW5kOgoJZnJhbWVfYnVyeSAxIC8vIGJhcjogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDQKCS8vIGxvZyhiYXIpCglmcmFtZV9kaWcgMSAvLyBiYXI6IGJ5dGVbXQoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaSgpOiB2b2lkCm5vbkFiaToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDkKCS8vIGFzc2VydCh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aCkKCXR4biBOdW1BcHBBcmdzCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTExCgkvLyBpIDwgdGhpcy50eG4uYXBwbGljYXRpb25BcmdzIS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJdHhuIE51bUFwcEFyZ3MKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMgoJLy8gbG9nKHRoaXMudHhuLmFwcGxpY2F0aW9uQXJncyFbaV0pCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCXR4bmFzIEFwcGxpY2F0aW9uQXJncwoJbG9nCgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCXJldHN1YgoKLy8gbXVsdGlsaW5lRnVuY3Rpb25DYWxsKCl2b2lkCiphYmlfcm91dGVfbXVsdGlsaW5lRnVuY3Rpb25DYWxsOgoJLy8gZXhlY3V0ZSBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKXZvaWQKCWNhbGxzdWIgbXVsdGlsaW5lRnVuY3Rpb25DYWxsCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKTogdm9pZAptdWx0aWxpbmVGdW5jdGlvbkNhbGw6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MTcKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTE4CgkvLyBhZGRyID0gQWRkcmVzcy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglmcmFtZV9idXJ5IDEgLy8gYWRkcjogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTIwCgkvLyBhcHAubG9jYWxTdGF0ZSgKCS8vICAgICAgIGFkZHIsCgkvLyAgICAgICAna2V5JwoJLy8gICAgICkKCWZyYW1lX2RpZyAxIC8vIGFkZHI6IGFkZHJlc3MKCWludCAwIC8vIGFwcDogdWludDY0CglieXRlIDB4NmI2NTc5IC8vICJrZXkiCglhcHBfbG9jYWxfZ2V0X2V4CgoJLy8gbG9jYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IGFwcC5sb2NhbFN0YXRlKCBhZGRyLCAna2V5JyApCglhc3NlcnQKCXJldHN1YgoKLy8gYSgpdWludDY0CiphYmlfcm91dGVfYToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhKCl1aW50NjQKCWNhbGxzdWIgYQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGEoKTogdWludDY0CmE6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUyNwoJLy8gcmV0dXJuIDM7CglpbnQgMwoJcmV0c3ViCgovLyBiKCl1aW50NjQKKmFiaV9yb3V0ZV9iOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGIoKXVpbnQ2NAoJY2FsbHN1YiBiCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYigpOiB1aW50NjQKYjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTMxCgkvLyByZXR1cm4gNTsKCWludCA1CglyZXRzdWIKCi8vIHVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQKKmFiaV9yb3V0ZV91bnVzZWRNZXRob2RWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1bnVzZWRNZXRob2RWYWx1ZSgpdWludDY0CgljYWxsc3ViIHVudXNlZE1ldGhvZFZhbHVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW51c2VkTWV0aG9kVmFsdWUoKTogdWludDY0CnVudXNlZE1ldGhvZFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MzUKCS8vIHRoaXMuYSgpCgljYWxsc3ViIGEKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTM2CgkvLyByZXR1cm4gdGhpcy5iKCk7CgljYWxsc3ViIGIKCXJldHN1YgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKCWNhbGxzdWIgcmVhc3NpZ25lZE5vbkZpcnN0VmFyCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCk6IHVpbnQ2NApyZWFzc2lnbmVkTm9uRmlyc3RWYXI6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NDcKCS8vIGEgPSAxIGFzIHVpbnQ2NAoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU0OAoJLy8gYiA9IHRoaXMuYXBwLmlkCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTQ5CgkvLyBhCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjQKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1MAoJLy8gYiA9IDIKCWludCAyCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoqaWYyX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTUzCgkvLyByZXR1cm4gYjsKCWZyYW1lX2RpZyAxIC8vIGI6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZnZMdigpdm9pZAoqYWJpX3JvdXRlX2Z2THY6CgkvLyBleGVjdXRlIGZ2THYoKXZvaWQKCWNhbGxzdWIgZnZMdgoJaW50IDEKCXJldHVybgoKLy8gZnZMdigpOiB2b2lkCmZ2THY6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1NwoJLy8gYXNzZXJ0KHRoaXMudHhuLmZpcnN0VmFsaWQpCgl0eG4gRmlyc3RWYWxpZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NTgKCS8vIGFzc2VydCh0aGlzLnR4bi5sYXN0VmFsaWQpCgl0eG4gTGFzdFZhbGlkCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR4blR5cGVFbnVtKCl2b2lkIgoJbWV0aG9kICJ0eG5Hcm91cExlbmd0aCgpdm9pZCIKCW1ldGhvZCAiYXNzZXJ0cyhib29sLGJvb2wpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInN1Ym1pdFBlbmRpbmdHcm91cCgpdm9pZCIKCW1ldGhvZCAibWV0aG9kV2l0aFR4bkFyZ3MoKXZvaWQiCgltZXRob2QgInNoaWZ0KCl2b2lkIgoJbWV0aG9kICJmcm9tQnl0ZXMoKXZvaWQiCgltZXRob2QgImZyb21VaW50NjQoKXZvaWQiCgltZXRob2QgImJ6ZXJvRnVuY3Rpb24oKXZvaWQiCgltZXRob2QgImV2ZW50cygpdm9pZCIKCW1ldGhvZCAibGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdIgoJbWV0aG9kICJzdGF0aWNDb250cmFjdFByb3BlcnRpZXMoKXZvaWQiCgltZXRob2QgIm51bWJlclRvU3RyaW5nKCl2b2lkIgoJbWV0aG9kICJtZXRob2RPblBhcmVucygpdm9pZCIKCW1ldGhvZCAic3RyaW5nU3Vic3RyaW5nKCl2b2lkIgoJbWV0aG9kICJpZFByb3BlcnR5KCl2b2lkIgoJbWV0aG9kICJzY3JhdGNoU2xvdCgpdm9pZCIKCW1ldGhvZCAiZWNkc2EoKXZvaWQiCgltZXRob2QgInZlcmlmeVR4blR5cGVzKCl2b2lkIgoJbWV0aG9kICJzdHJpbmdQbHVzRXF1YWxzKCl2b2lkIgoJbWV0aG9kICJpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXSIKCW1ldGhvZCAiY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXIoKXZvaWQiCgltZXRob2QgImludGVyYWxQdWJsaWNNZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZCIKCW1ldGhvZCAiYXBwTG9hZFNjcmF0Y2goKXZvaWQiCgltZXRob2QgInVpbnROV2l0aFVuZGVyc2NvcmUoKXVpbnQyNTYiCgltZXRob2QgIm9wVXAoKXZvaWQiCgltZXRob2QgInJldHVyblZhbHVlT25Bc3NpZ25tZW50KClzdHJpbmciCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAicmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQiCgltZXRob2QgInJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCgpdWludDY0IgoJbWV0aG9kICJyZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAiY29uc3RzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRXaXRoTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3Bjb2RlQWxpYXNlcygpdm9pZCIKCW1ldGhvZCAidnJmVmVyaWZ5T3AoKXZvaWQiCgltZXRob2QgImVjTWF0aCgpdm9pZCIKCW1ldGhvZCAiZ2l0eG4oKXZvaWQiCgltZXRob2QgImdldFNldEJ5dGVzKCl2b2lkIgoJbWV0aG9kICJnZXRTZXRVaW50NjQoKXZvaWQiCgltZXRob2QgImJsb2NrT3AoKXZvaWQiCgltZXRob2QgImI2NCgpdm9pZCIKCW1ldGhvZCAianNvbigpdm9pZCIKCW1ldGhvZCAiYml0bGVuT3AoKXZvaWQiCgltZXRob2QgImNvbXB1dGVkQ29uc3QoKXZvaWQiCgltZXRob2QgIm11bHRpQ29tcHV0ZWRDb25zdCgpdm9pZCIKCW1ldGhvZCAicmVhZFNjaGVtYSgpdm9pZCIKCW1ldGhvZCAiY29tcGFyaXNvbk9yKClib29sIgoJbWV0aG9kICJ0eG5BcmdzTWV0aG9kKHBheSl2b2lkIgoJbWV0aG9kICJjYWxsVHhuQXJnc01ldGhvZCgpdm9pZCIKCW1ldGhvZCAic3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkIgoJbWV0aG9kICJzdGF0aWNUeXBlTGVuKCl2b2lkIgoJbWV0aG9kICJkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkIgoJbWV0aG9kICJpbmNyZW1lbnREeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImZyb21BZGRyZXNzKCl2b2lkIgoJbWV0aG9kICJlYXJseVJldHVybih1aW50NjQpdWludDY0IgoJbWV0aG9kICJhc3NldE1ldGhvZEFyZ3MoKXZvaWQiCgltZXRob2QgIm11bHRpcGxlUHJvZ3JhbVBhZ2VzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRDb21tZW50KCl2b2lkIgoJbWV0aG9kICJ0aHJvd0Vycm9yTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm11bHRpbGluZUZ1bmN0aW9uQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYSgpdWludDY0IgoJbWV0aG9kICJiKCl1aW50NjQiCgltZXRob2QgInVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJlYXNzaWduZWROb25GaXJzdFZhcigpdWludDY0IgoJbWV0aG9kICJmdkx2KCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlRW51bSAqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoICphYmlfcm91dGVfYXNzZXJ0cyAqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21BcmcgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Gcm9tVHhuR3JvdXAgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Db25kaXRpb24gKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluICphYmlfcm91dGVfdmVyaWZ5VHhuTm90SW5jbHVkZWRJbiAqYWJpX3JvdXRlX3N1Ym1pdFBlbmRpbmdHcm91cCAqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzICphYmlfcm91dGVfc2hpZnQgKmFiaV9yb3V0ZV9mcm9tQnl0ZXMgKmFiaV9yb3V0ZV9mcm9tVWludDY0ICphYmlfcm91dGVfYnplcm9GdW5jdGlvbiAqYWJpX3JvdXRlX2V2ZW50cyAqYWJpX3JvdXRlX2xldE9wdGltaXphdGlvbiAqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllcyAqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nICphYmlfcm91dGVfbWV0aG9kT25QYXJlbnMgKmFiaV9yb3V0ZV9zdHJpbmdTdWJzdHJpbmcgKmFiaV9yb3V0ZV9pZFByb3BlcnR5ICphYmlfcm91dGVfc2NyYXRjaFNsb3QgKmFiaV9yb3V0ZV9lY2RzYSAqYWJpX3JvdXRlX3ZlcmlmeVR4blR5cGVzICphYmlfcm91dGVfc3RyaW5nUGx1c0VxdWFscyAqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbSAqYWJpX3JvdXRlX2NhbGxQcml2YXRlRGVmaW5lZExhdGVyICphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2NhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2FwcExvYWRTY3JhdGNoICphYmlfcm91dGVfdWludE5XaXRoVW5kZXJzY29yZSAqYWJpX3JvdXRlX29wVXAgKmFiaV9yb3V0ZV9yZXR1cm5WYWx1ZU9uQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX2NvbnN0cyAqYWJpX3JvdXRlX2Fzc2VydFdpdGhNZXNzYWdlICphYmlfcm91dGVfb3Bjb2RlQWxpYXNlcyAqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wICphYmlfcm91dGVfZWNNYXRoICphYmlfcm91dGVfZ2l0eG4gKmFiaV9yb3V0ZV9nZXRTZXRCeXRlcyAqYWJpX3JvdXRlX2dldFNldFVpbnQ2NCAqYWJpX3JvdXRlX2Jsb2NrT3AgKmFiaV9yb3V0ZV9iNjQgKmFiaV9yb3V0ZV9qc29uICphYmlfcm91dGVfYml0bGVuT3AgKmFiaV9yb3V0ZV9jb21wdXRlZENvbnN0ICphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0ICphYmlfcm91dGVfcmVhZFNjaGVtYSAqYWJpX3JvdXRlX2NvbXBhcmlzb25PciAqYWJpX3JvdXRlX3R4bkFyZ3NNZXRob2QgKmFiaV9yb3V0ZV9jYWxsVHhuQXJnc01ldGhvZCAqYWJpX3JvdXRlX3N0YXRpY1ZhbHVlTGVuICphYmlfcm91dGVfc3RhdGljVHlwZUxlbiAqYWJpX3JvdXRlX2R5bmFtaWNTY3JhdGNoU2xvdCAqYWJpX3JvdXRlX2luY3JlbWVudFNjcmF0Y2hTbG90ICphYmlfcm91dGVfaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90ICphYmlfcm91dGVfZnJvbUFkZHJlc3MgKmFiaV9yb3V0ZV9lYXJseVJldHVybiAqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJncyAqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzICphYmlfcm91dGVfYXNzZXJ0Q29tbWVudCAqYWJpX3JvdXRlX3Rocm93RXJyb3JNZXNzYWdlICphYmlfcm91dGVfb3JMaXRlcmFsVHlwZSAqYWJpX3JvdXRlX211bHRpbGluZUZ1bmN0aW9uQ2FsbCAqYWJpX3JvdXRlX2EgKmFiaV9yb3V0ZV9iICphYmlfcm91dGVfdW51c2VkTWV0aG9kVmFsdWUgKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXIgKmFiaV9yb3V0ZV9mdkx2CgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpCglpbnQgMQoJcmV0dXJuCgoqaW50VG9Bc2NpaToKCXByb3RvIDEgMQoJYnl0ZSAweDMwMzEzMjMzMzQzNTM2MzczODM5IC8vICIwMTIzNDU2Nzg5IgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEKCWV4dHJhY3QzCglyZXRzdWIKCQoKKml0b2E6Cglwcm90byAxIDEKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCWludCAwCgk9PQoJYnogKml0b2FfaWZfZW5kCglieXRlIDB4MzAKCXJldHN1YgoKKml0b2FfaWZfZW5kOgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCglpbnQgMAoJPgoJYnogKml0b2FfdGVybmFyeV9mYWxzZQoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCgljYWxsc3ViICppdG9hCgliICppdG9hX3Rlcm5hcnlfZW5kCgoqaXRvYV90ZXJuYXJ5X2ZhbHNlOgoJYnl0ZSAweCAvLyAiIgoKKml0b2FfdGVybmFyeV9lbmQ6CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMTAKCSUKCWNhbGxzdWIgKmludFRvQXNjaWkKCWNvbmNhdAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/GeneralTest.arc56_draft.json b/tests/contracts/artifacts/GeneralTest.arc56_draft.json index 11d8d651a..553e8e020 100644 --- a/tests/contracts/artifacts/GeneralTest.arc56_draft.json +++ b/tests/contracts/artifacts/GeneralTest.arc56_draft.json @@ -1119,13674 +1119,13677 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 49, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192, - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223, - 224, - 225 - ] - }, - { - "teal": 13, - "source": 49, - "pc": [ - 226, - 227 - ] - }, - { - "teal": 14, - "source": 49, - "pc": [ - 228 - ] - }, - { - "teal": 15, - "source": 49, - "pc": [ - 229 - ] - }, - { - "teal": 16, - "source": 49, - "pc": [ - 230 - ] - }, - { - "teal": 17, - "source": 49, - "pc": [ - 231, - 232 - ] - }, - { - "teal": 18, - "source": 49, - "pc": [ - 233 - ] - }, - { - "teal": 19, - "source": 49, - "pc": [ - 234, - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258, - 259 - ] - }, - { - "teal": 23, - "source": 49, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 260 - ] - }, - { - "teal": 28, - "source": 60, - "pc": [ - 261, - 262, - 263 - ] - }, - { - "teal": 29, - "source": 60, - "pc": [ - 264 - ] - }, - { - "teal": 30, - "source": 60, - "pc": [ - 265 - ] - }, - { - "teal": 34, - "source": 60, - "pc": [ - 266, - 267, - 268 - ] - }, - { - "teal": 38, - "source": 61, - "pc": [ - 269 - ] - }, - { - "teal": 39, - "source": 61, - "pc": [ - 270, - 271 - ] - }, - { - "teal": 40, - "source": 61, - "pc": [ - 272 - ] - }, - { - "teal": 41, - "source": 61, - "pc": [ - 273 - ] - }, - { - "teal": 42, - "source": 61, - "pc": [ - 274 - ] - }, - { - "teal": 43, - "source": 60, - "pc": [ - 275 - ] - }, - { - "teal": 48, - "source": 64, - "pc": [ - 276, - 277, - 278 - ] - }, - { - "teal": 49, - "source": 64, - "pc": [ - 279 - ] - }, - { - "teal": 50, - "source": 64, - "pc": [ - 280 - ] - }, - { - "teal": 54, - "source": 64, - "pc": [ - 281, - 282, - 283 - ] - }, - { - "teal": 58, - "source": 65, - "pc": [ - 284, - 285 - ] - }, - { - "teal": 59, - "source": 65, - "pc": [ - 286 - ] - }, - { - "teal": 60, - "source": 65, - "pc": [ - 287 - ] - }, - { - "teal": 61, - "source": 65, - "pc": [ - 288 - ] - }, - { - "teal": 62, - "source": 64, - "pc": [ - 289 - ] - }, - { - "teal": 67, - "source": 68, - "pc": [ - 290, - 291, - 292 - ] - }, - { - "teal": 68, - "source": 68, - "pc": [ - 293 - ] - }, - { - "teal": 69, - "source": 68, - "pc": [ - 294 - ] - }, - { - "teal": 70, - "source": 68, - "pc": [ - 295 - ] - }, - { - "teal": 71, - "source": 68, - "pc": [ - 296 - ] - }, - { - "teal": 74, - "source": 68, - "errorMessage": "argument 0 (arg2) for asserts must be a bool", - "pc": [ - 297 - ] - }, - { - "teal": 75, - "source": 68, - "pc": [ - 298 - ] - }, - { - "teal": 76, - "source": 68, - "pc": [ - 299 - ] - }, - { - "teal": 79, - "source": 68, - "pc": [ - 300, - 301, - 302 - ] - }, - { - "teal": 80, - "source": 68, - "pc": [ - 303 - ] - }, - { - "teal": 81, - "source": 68, - "pc": [ - 304 - ] - }, - { - "teal": 82, - "source": 68, - "pc": [ - 305 - ] - }, - { - "teal": 83, - "source": 68, - "pc": [ - 306 - ] - }, - { - "teal": 86, - "source": 68, - "errorMessage": "argument 1 (arg1) for asserts must be a bool", - "pc": [ - 307 - ] - }, - { - "teal": 87, - "source": 68, - "pc": [ - 308 - ] - }, - { - "teal": 88, - "source": 68, - "pc": [ - 309 - ] - }, - { - "teal": 91, - "source": 68, - "pc": [ - 310, - 311, - 312 - ] - }, - { - "teal": 92, - "source": 68, - "pc": [ - 313 - ] - }, - { - "teal": 93, - "source": 68, - "pc": [ - 314 - ] - }, - { - "teal": 97, - "source": 68, - "pc": [ - 315, - 316, - 317 - ] - }, - { - "teal": 101, - "source": 69, - "pc": [ - 318, - 319 - ] - }, - { - "teal": 104, - "source": 69, - "errorMessage": "asserts failed: asserts(arg1, arg2, arg1 === arg2)", - "pc": [ - 320 - ] - }, - { - "teal": 105, - "source": 69, - "pc": [ - 321, - 322 - ] - }, - { - "teal": 108, - "source": 69, - "errorMessage": "asserts failed: asserts(arg1, arg2, arg1 === arg2)", - "pc": [ - 323 - ] - }, - { - "teal": 109, - "source": 69, - "pc": [ - 324, - 325 - ] - }, - { - "teal": 110, - "source": 69, - "pc": [ - 326, - 327 - ] - }, - { - "teal": 111, - "source": 69, - "pc": [ - 328 - ] - }, - { - "teal": 114, - "source": 69, - "errorMessage": "asserts failed: asserts(arg1, arg2, arg1 === arg2)", - "pc": [ - 329 - ] - }, - { - "teal": 115, - "source": 68, - "pc": [ - 330 - ] - }, - { - "teal": 120, - "source": 72, - "pc": [ - 331, - 332 - ] - }, - { - "teal": 121, - "source": 72, - "pc": [ - 333 - ] - }, - { - "teal": 122, - "source": 72, - "pc": [ - 334 - ] - }, - { - "teal": 123, - "source": 72, - "pc": [ - 335 - ] - }, - { - "teal": 124, - "source": 72, - "pc": [ - 336, - 337 - ] - }, - { - "teal": 125, - "source": 72, - "pc": [ - 338 - ] - }, - { - "teal": 126, - "source": 72, - "pc": [ - 339 - ] - }, - { - "teal": 129, - "source": 72, - "errorMessage": "argument 0 (somePay) for verifyTxnFromArg must be a pay transaction", - "pc": [ - 340 - ] - }, - { - "teal": 132, - "source": 72, - "pc": [ - 341, - 342, - 343 - ] - }, - { - "teal": 133, - "source": 72, - "pc": [ - 344 - ] - }, - { - "teal": 134, - "source": 72, - "pc": [ - 345 - ] - }, - { - "teal": 138, - "source": 72, - "pc": [ - 346, - 347, - 348 - ] - }, - { - "teal": 143, - "source": 73, - "pc": [ - 349, - 350 - ] - }, - { - "teal": 144, - "source": 73, - "pc": [ - 351, - 352 - ] - }, - { - "teal": 145, - "source": 73, - "pc": [ - 353, - 354 - ] - }, - { - "teal": 146, - "source": 73, - "pc": [ - 355 - ] - }, - { - "teal": 149, - "source": 73, - "errorMessage": "transaction verification failed: {\"txn\":\"somePay\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 356 - ] - }, - { - "teal": 152, - "source": 73, - "pc": [ - 357, - 358 - ] - }, - { - "teal": 153, - "source": 73, - "pc": [ - 359, - 360 - ] - }, - { - "teal": 154, - "source": 73, - "pc": [ - 361, - 362 - ] - }, - { - "teal": 155, - "source": 73, - "pc": [ - 363 - ] - }, - { - "teal": 158, - "source": 73, - "errorMessage": "transaction verification failed: {\"txn\":\"somePay\",\"field\":\"amount\",\"expected\":\"100_000\"}", - "pc": [ - 364 - ] - }, - { - "teal": 159, - "source": 72, - "pc": [ - 365 - ] - }, - { - "teal": 164, - "source": 76, - "pc": [ - 366, - 367, - 368 - ] - }, - { - "teal": 165, - "source": 76, - "pc": [ - 369 - ] - }, - { - "teal": 166, - "source": 76, - "pc": [ - 370 - ] - }, - { - "teal": 170, - "source": 76, - "pc": [ - 371, - 372, - 373 - ] - }, - { - "teal": 175, - "source": 77, - "pc": [ - 374 - ] - }, - { - "teal": 176, - "source": 77, - "pc": [ - 375, - 376 - ] - }, - { - "teal": 177, - "source": 77, - "pc": [ - 377, - 378 - ] - }, - { - "teal": 178, - "source": 77, - "pc": [ - 379 - ] - }, - { - "teal": 181, - "source": 77, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", - "pc": [ - 380 - ] - }, - { - "teal": 182, - "source": 76, - "pc": [ - 381 - ] - }, - { - "teal": 187, - "source": 80, - "pc": [ - 382, - 383, - 384 - ] - }, - { - "teal": 188, - "source": 80, - "pc": [ - 385 - ] - }, - { - "teal": 189, - "source": 80, - "pc": [ - 386 - ] - }, - { - "teal": 193, - "source": 80, - "pc": [ - 387, - 388, - 389 - ] - }, - { - "teal": 200, - "source": 82, - "pc": [ - 390, - 391 - ] - }, - { - "teal": 201, - "source": 82, - "pc": [ - 392 - ] - }, - { - "teal": 202, - "source": 82, - "pc": [ - 393 - ] - }, - { - "teal": 205, - "source": 82, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"applicationID\",\"condition\":\"greaterThan\",\"expected\":\">1\"}", - "pc": [ - 394 - ] - }, - { - "teal": 206, - "source": 80, - "pc": [ - 395 - ] - }, - { - "teal": 211, - "source": 86, - "pc": [ - 396, - 397, - 398 - ] - }, - { - "teal": 212, - "source": 86, - "pc": [ - 399 - ] - }, - { - "teal": 213, - "source": 86, - "pc": [ - 400 - ] - }, - { - "teal": 217, - "source": 86, - "pc": [ - 401, - 402, - 403 - ] - }, - { - "teal": 224, - "source": 88, - "pc": [ - 404, - 405 - ] - }, - { - "teal": 225, - "source": 88, - "pc": [ - 406, - 407 - ] - }, - { - "teal": 226, - "source": 88, - "pc": [ - 408 - ] - }, - { - "teal": 229, - "source": 88, - "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txn\"},\"field\":\"sender\",\"condition\":\"includedIn\",\"expected\":\"[this.txn.sender]\"}", - "pc": [ - 409 - ] - }, - { - "teal": 230, - "source": 86, - "pc": [ - 410 - ] - }, - { - "teal": 235, - "source": 92, - "pc": [ - 411, - 412, - 413 - ] - }, - { - "teal": 236, - "source": 92, - "pc": [ - 414 - ] - }, - { - "teal": 237, - "source": 92, - "pc": [ - 415 - ] - }, - { - "teal": 241, - "source": 92, - "pc": [ - 416, - 417, - 418 - ] - }, - { - "teal": 248, - "source": 94, - "pc": [ - 419, - 420 - ] - }, - { - "teal": 249, - "source": 94, - "pc": [ - 421, - 422 - ] - }, - { - "teal": 250, - "source": 94, - "pc": [ - 423 - ] - }, - { - "teal": 253, - "source": 94, - "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txn\"},\"field\":\"sender\",\"condition\":\"notIncludedIn\",\"expected\":\"[globals.zeroAddress]\"}", - "pc": [ - 424 - ] - }, - { - "teal": 254, - "source": 92, - "pc": [ - 425 - ] - }, - { - "teal": 259, - "source": 98, - "pc": [ - 426, - 427, - 428 - ] - }, - { - "teal": 260, - "source": 98, - "pc": [ - 429 - ] - }, - { - "teal": 261, - "source": 98, - "pc": [ - 430 - ] - }, - { - "teal": 265, - "source": 98, - "pc": [ - 431, - 432, - 433 - ] - }, - { - "teal": 269, - "source": 99, - "pc": [ - 434 - ] - }, - { - "teal": 270, - "source": 99, - "pc": [ - 435 - ] - }, - { - "teal": 271, - "source": 99, - "pc": [ - 436, - 437 - ] - }, - { - "teal": 275, - "source": 99, - "pc": [ - 438 - ] - }, - { - "teal": 276, - "source": 99, - "pc": [ - 439, - 440 - ] - }, - { - "teal": 280, - "source": 99, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 281, - "source": 99, - "pc": [ - 443, - 444 - ] - }, - { - "teal": 284, - "source": 99, - "pc": [ - 445 - ] - }, - { - "teal": 285, - "source": 99, - "pc": [ - 446, - 447 - ] - }, - { - "teal": 289, - "source": 100, - "pc": [ - 448 - ] - }, - { - "teal": 290, - "source": 100, - "pc": [ - 449 - ] - }, - { - "teal": 291, - "source": 100, - "pc": [ - 450, - 451 - ] - }, - { - "teal": 295, - "source": 100, - "pc": [ - 452 - ] - }, - { - "teal": 296, - "source": 100, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 300, - "source": 100, - "pc": [ - 455, - 456 - ] - }, - { - "teal": 301, - "source": 100, - "pc": [ - 457, - 458 - ] - }, - { - "teal": 305, - "source": 100, - "pc": [ - 459 - ] - }, - { - "teal": 306, - "source": 100, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 309, - "source": 100, - "pc": [ - 462 - ] - }, - { - "teal": 310, - "source": 100, - "pc": [ - 463, - 464 - ] - }, - { - "teal": 314, - "source": 101, - "pc": [ - 465 - ] - }, - { - "teal": 315, - "source": 98, - "pc": [ - 466 - ] - }, - { - "teal": 320, - "source": 104, - "pc": [ - 467, - 468, - 469 - ] - }, - { - "teal": 321, - "source": 104, - "pc": [ - 470 - ] - }, - { - "teal": 322, - "source": 104, - "pc": [ - 471 - ] - }, - { - "teal": 326, - "source": 104, - "pc": [ - 472, - 473, - 474 - ] - }, - { - "teal": 340, - "source": 108, - "pc": [ - 475 - ] - }, - { - "teal": 341, - "source": 108, - "pc": [ - 476 - ] - }, - { - "teal": 342, - "source": 108, - "pc": [ - 477, - 478 - ] - }, - { - "teal": 346, - "source": 108, - "pc": [ - 479, - 480 - ] - }, - { - "teal": 347, - "source": 108, - "pc": [ - 481, - 482 - ] - }, - { - "teal": 351, - "source": 108, - "pc": [ - 483, - 484 - ] - }, - { - "teal": 352, - "source": 108, - "pc": [ - 485, - 486 - ] - }, - { - "teal": 355, - "source": 108, - "pc": [ - 487 - ] - }, - { - "teal": 356, - "source": 108, - "pc": [ - 488, - 489 - ] - }, - { - "teal": 357, - "source": 109, - "pc": [ - 490 - ] - }, - { - "teal": 358, - "source": 109, - "pc": [ - 491 - ] - }, - { - "teal": 359, - "source": 109, - "pc": [ - 492, - 493 - ] - }, - { - "teal": 360, - "source": 110, - "pc": [ - 494, - 495, - 496, - 497, - 498, - 499 - ] - }, - { - "teal": 361, - "source": 110, - "pc": [ - 500, - 501 - ] - }, - { - "teal": 365, - "source": 111, - "pc": [ - 502, - 503 - ] - }, - { - "teal": 366, - "source": 111, - "pc": [ - 504, - 505 - ] - }, - { - "teal": 370, - "source": 112, - "pc": [ - 506, - 507 - ] - }, - { - "teal": 371, - "source": 112, - "pc": [ - 508, - 509 - ] - }, - { - "teal": 374, - "source": 109, - "pc": [ - 510 - ] - }, - { - "teal": 375, - "source": 109, - "pc": [ - 511, - 512 - ] - }, - { - "teal": 376, - "source": 105, - "pc": [ - 513 - ] - }, - { - "teal": 377, - "source": 105, - "pc": [ - 514 - ] - }, - { - "teal": 378, - "source": 105, - "pc": [ - 515, - 516 - ] - }, - { - "teal": 379, - "source": 106, - "pc": [ - 517, - 518, - 519, - 520, - 521, - 522 - ] - }, - { - "teal": 380, - "source": 106, - "pc": [ - 523, - 524 - ] - }, - { - "teal": 392, - "source": 105, - "pc": [ - 525 - ] - }, - { - "teal": 393, - "source": 105, - "pc": [ - 526, - 527 - ] - }, - { - "teal": 396, - "source": 105, - "pc": [ - 528 - ] - }, - { - "teal": 397, - "source": 104, - "pc": [ - 529 - ] - }, - { - "teal": 402, - "source": 118, - "pc": [ - 530, - 531, - 532 - ] - }, - { - "teal": 403, - "source": 118, - "pc": [ - 533 - ] - }, - { - "teal": 404, - "source": 118, - "pc": [ - 534 - ] - }, - { - "teal": 408, - "source": 118, - "pc": [ - 535, - 536, - 537 - ] - }, - { - "teal": 412, - "source": 119, - "pc": [ - 538 - ] - }, - { - "teal": 413, - "source": 119, - "pc": [ - 539 - ] - }, - { - "teal": 414, - "source": 119, - "pc": [ - 540 - ] - }, - { - "teal": 415, - "source": 119, - "pc": [ - 541, - 542 - ] - }, - { - "teal": 416, - "source": 119, - "pc": [ - 543 - ] - }, - { - "teal": 417, - "source": 119, - "pc": [ - 544 - ] - }, - { - "teal": 421, - "source": 120, - "pc": [ - 545, - 546 - ] - }, - { - "teal": 422, - "source": 120, - "pc": [ - 547 - ] - }, - { - "teal": 423, - "source": 120, - "pc": [ - 548 - ] - }, - { - "teal": 424, - "source": 120, - "pc": [ - 549 - ] - }, - { - "teal": 425, - "source": 120, - "pc": [ - 550 - ] - }, - { - "teal": 426, - "source": 120, - "pc": [ - 551 - ] - }, - { - "teal": 427, - "source": 118, - "pc": [ - 552 - ] - }, - { - "teal": 432, - "source": 123, - "pc": [ - 553, - 554, - 555 - ] - }, - { - "teal": 433, - "source": 123, - "pc": [ - 556 - ] - }, - { - "teal": 434, - "source": 123, - "pc": [ - 557 - ] - }, - { - "teal": 438, - "source": 123, - "pc": [ - 558, - 559, - 560 - ] - }, - { - "teal": 442, - "source": 124, - "pc": [ - 561, - 562, - 563, - 564, - 565 - ] - }, - { - "teal": 443, - "source": 124, - "pc": [ - 566, - 567 - ] - }, - { - "teal": 444, - "source": 124, - "pc": [ - 568 - ] - }, - { - "teal": 445, - "source": 124, - "pc": [ - 569 - ] - }, - { - "teal": 446, - "source": 123, - "pc": [ - 570 - ] - }, - { - "teal": 451, - "source": 127, - "pc": [ - 571, - 572, - 573 - ] - }, - { - "teal": 452, - "source": 127, - "pc": [ - 574 - ] - }, - { - "teal": 453, - "source": 127, - "pc": [ - 575 - ] - }, - { - "teal": 457, - "source": 127, - "pc": [ - 576, - 577, - 578 - ] - }, - { - "teal": 461, - "source": 128, - "pc": [ - 579, - 580 - ] - }, - { - "teal": 462, - "source": 128, - "pc": [ - 581, - 582 - ] - }, - { - "teal": 463, - "source": 128, - "pc": [ - 583 - ] - }, - { - "teal": 464, - "source": 128, - "pc": [ - 584 - ] - }, - { - "teal": 468, - "source": 129, - "pc": [ - 585, - 586 - ] - }, - { - "teal": 469, - "source": 129, - "pc": [ - 587, - 588 - ] - }, - { - "teal": 470, - "source": 129, - "pc": [ - 589 - ] - }, - { - "teal": 471, - "source": 129, - "pc": [ - 590 - ] - }, - { - "teal": 472, - "source": 127, - "pc": [ - 591 - ] - }, - { - "teal": 477, - "source": 132, - "pc": [ - 592, - 593, - 594 - ] - }, - { - "teal": 478, - "source": 132, - "pc": [ - 595 - ] - }, - { - "teal": 479, - "source": 132, - "pc": [ - 596 - ] - }, - { - "teal": 483, - "source": 132, - "pc": [ - 597, - 598, - 599 - ] - }, - { - "teal": 486, - "source": 132, - "pc": [ - 600 - ] - }, - { - "teal": 487, - "source": 132, - "pc": [ - 601, - 602 - ] - }, - { - "teal": 491, - "source": 134, - "pc": [ - 603, - 604 - ] - }, - { - "teal": 492, - "source": 134, - "pc": [ - 605, - 606 - ] - }, - { - "teal": 496, - "source": 135, - "pc": [ - 607 - ] - }, - { - "teal": 497, - "source": 135, - "pc": [ - 608 - ] - }, - { - "teal": 498, - "source": 135, - "pc": [ - 609, - 610 - ] - }, - { - "teal": 502, - "source": 136, - "pc": [ - 611, - 612 - ] - }, - { - "teal": 503, - "source": 136, - "pc": [ - 613, - 614 - ] - }, - { - "teal": 507, - "source": 137, - "pc": [ - 615, - 616 - ] - }, - { - "teal": 508, - "source": 137, - "pc": [ - 617, - 618 - ] - }, - { - "teal": 509, - "source": 137, - "pc": [ - 619 - ] - }, - { - "teal": 510, - "source": 137, - "pc": [ - 620, - 621 - ] - }, - { - "teal": 511, - "source": 137, - "pc": [ - 622 - ] - }, - { - "teal": 512, - "source": 137, - "pc": [ - 623 - ] - }, - { - "teal": 513, - "source": 137, - "pc": [ - 624, - 625 - ] - }, - { - "teal": 514, - "source": 137, - "pc": [ - 626 - ] - }, - { - "teal": 515, - "source": 137, - "pc": [ - 627 - ] - }, - { - "teal": 516, - "source": 132, - "pc": [ - 628 - ] - }, - { - "teal": 521, - "source": 151, - "pc": [ - 629, - 630, - 631 - ] - }, - { - "teal": 522, - "source": 151, - "pc": [ - 632 - ] - }, - { - "teal": 523, - "source": 151, - "pc": [ - 633 - ] - }, - { - "teal": 527, - "source": 151, - "pc": [ - 634, - 635, - 636 - ] - }, - { - "teal": 531, - "source": 152, - "pc": [ - 637, - 638, - 639, - 640, - 641, - 642 - ] - }, - { - "teal": 532, - "source": 152, - "pc": [ - 643, - 644, - 645 - ] - }, - { - "teal": 533, - "source": 152, - "pc": [ - 646 - ] - }, - { - "teal": 534, - "source": 152, - "pc": [ - 647, - 648 - ] - }, - { - "teal": 535, - "source": 152, - "pc": [ - 649 - ] - }, - { - "teal": 536, - "source": 152, - "pc": [ - 650 - ] - }, - { - "teal": 537, - "source": 152, - "pc": [ - 651 - ] - }, - { - "teal": 538, - "source": 151, - "pc": [ - 652 - ] - }, - { - "teal": 543, - "source": 155, - "pc": [ - 653 - ] - }, - { - "teal": 546, - "source": 155, - "pc": [ - 654, - 655, - 656 - ] - }, - { - "teal": 547, - "source": 155, - "pc": [ - 657, - 658, - 659 - ] - }, - { - "teal": 550, - "source": 155, - "pc": [ - 660, - 661, - 662 - ] - }, - { - "teal": 551, - "source": 155, - "pc": [ - 663 - ] - }, - { - "teal": 552, - "source": 155, - "pc": [ - 664 - ] - }, - { - "teal": 553, - "source": 155, - "pc": [ - 665, - 666 - ] - }, - { - "teal": 554, - "source": 155, - "pc": [ - 667 - ] - }, - { - "teal": 555, - "source": 155, - "pc": [ - 668 - ] - }, - { - "teal": 556, - "source": 155, - "pc": [ - 669, - 670, - 671 - ] - }, - { - "teal": 557, - "source": 155, - "pc": [ - 672 - ] - }, - { - "teal": 558, - "source": 155, - "pc": [ - 673 - ] - }, - { - "teal": 559, - "source": 155, - "pc": [ - 674 - ] - }, - { - "teal": 560, - "source": 155, - "pc": [ - 675 - ] - }, - { - "teal": 561, - "source": 155, - "pc": [ - 676 - ] - }, - { - "teal": 562, - "source": 155, - "pc": [ - 677 - ] - }, - { - "teal": 566, - "source": 155, - "pc": [ - 678, - 679, - 680 - ] - }, - { - "teal": 570, - "source": 156, - "pc": [ - 681, - 682 - ] - }, - { - "teal": 571, - "source": 156, - "pc": [ - 683, - 684 - ] - }, - { - "teal": 572, - "source": 156, - "pc": [ - 685, - 686 - ] - }, - { - "teal": 573, - "source": 156, - "pc": [ - 687, - 688, - 689 - ] - }, - { - "teal": 574, - "source": 156, - "pc": [ - 690 - ] - }, - { - "teal": 575, - "source": 156, - "pc": [ - 691 - ] - }, - { - "teal": 579, - "source": 158, - "pc": [ - 692, - 693 - ] - }, - { - "teal": 580, - "source": 158, - "pc": [ - 694, - 695 - ] - }, - { - "teal": 584, - "source": 160, - "pc": [ - 696, - 697 - ] - }, - { - "teal": 585, - "source": 155, - "pc": [ - 698 - ] - }, - { - "teal": 590, - "source": 163, - "pc": [ - 699, - 700, - 701 - ] - }, - { - "teal": 591, - "source": 163, - "pc": [ - 702 - ] - }, - { - "teal": 592, - "source": 163, - "pc": [ - 703 - ] - }, - { - "teal": 596, - "source": 163, - "pc": [ - 704, - 705, - 706 - ] - }, - { - "teal": 608, - "source": 164, - "pc": [ - 707 - ] - }, - { - "teal": 609, - "source": 164, - "pc": [ - 708 - ] - }, - { - "teal": 610, - "source": 164, - "pc": [ - 709, - 710 - ] - }, - { - "teal": 614, - "source": 165, - "pc": [ - 711 - ] - }, - { - "teal": 615, - "source": 165, - "pc": [ - 712, - 713 - ] - }, - { - "teal": 619, - "source": 166, - "pc": [ - 714, - 715, - 716, - 717, - 718, - 719, - 720, - 721, - 722, - 723, - 724, - 725, - 726, - 727, - 728, - 729, - 730, - 731, - 732, - 733, - 734, - 735, - 736, - 737, - 738, - 739, - 740, - 741, - 742, - 743, - 744, - 745, - 746, - 747, - 748, - 749, - 750, - 751, - 752, - 753, - 754, - 755, - 756, - 757, - 758, - 759, - 760, - 761, - 762, - 763, - 764, - 765, - 766, - 767, - 768, - 769 - ] - }, - { - "teal": 620, - "source": 166, - "pc": [ - 770, - 771 - ] - }, - { - "teal": 624, - "source": 167, - "pc": [ - 772, - 773, - 774 - ] - }, - { - "teal": 625, - "source": 167, - "pc": [ - 775, - 776 - ] - }, - { - "teal": 629, - "source": 168, - "pc": [ - 777 - ] - }, - { - "teal": 630, - "source": 168, - "pc": [ - 778, - 779 - ] - }, - { - "teal": 634, - "source": 169, - "pc": [ - 780 - ] - }, - { - "teal": 635, - "source": 169, - "pc": [ - 781, - 782 - ] - }, - { - "teal": 639, - "source": 170, - "pc": [ - 783 - ] - }, - { - "teal": 640, - "source": 170, - "pc": [ - 784, - 785 - ] - }, - { - "teal": 644, - "source": 171, - "pc": [ - 786 - ] - }, - { - "teal": 645, - "source": 171, - "pc": [ - 787, - 788 - ] - }, - { - "teal": 648, - "source": 164, - "pc": [ - 789 - ] - }, - { - "teal": 649, - "source": 164, - "pc": [ - 790, - 791 - ] - }, - { - "teal": 652, - "source": 164, - "pc": [ - 792 - ] - }, - { - "teal": 653, - "source": 163, - "pc": [ - 793 - ] - }, - { - "teal": 658, - "source": 175, - "pc": [ - 794, - 795, - 796 - ] - }, - { - "teal": 659, - "source": 175, - "pc": [ - 797 - ] - }, - { - "teal": 660, - "source": 175, - "pc": [ - 798 - ] - }, - { - "teal": 664, - "source": 175, - "pc": [ - 799, - 800, - 801 - ] - }, - { - "teal": 668, - "source": 178, - "pc": [ - 802 - ] - }, - { - "teal": 669, - "source": 178, - "pc": [ - 803, - 804, - 805 - ] - }, - { - "teal": 670, - "source": 178, - "pc": [ - 806, - 807, - 808 - ] - }, - { - "teal": 671, - "source": 178, - "pc": [ - 809 - ] - }, - { - "teal": 672, - "source": 178, - "pc": [ - 810 - ] - }, - { - "teal": 673, - "source": 175, - "pc": [ - 811 - ] - }, - { - "teal": 678, - "source": 181, - "pc": [ - 812, - 813, - 814 - ] - }, - { - "teal": 679, - "source": 181, - "pc": [ - 815 - ] - }, - { - "teal": 680, - "source": 181, - "pc": [ - 816 - ] - }, - { - "teal": 684, - "source": 181, - "pc": [ - 817, - 818, - 819 - ] - }, - { - "teal": 688, - "source": 182, - "pc": [ - 820, - 821 - ] - }, - { - "teal": 689, - "source": 182, - "pc": [ - 822, - 823, - 824 - ] - }, - { - "teal": 690, - "source": 182, - "pc": [ - 825, - 826, - 827 - ] - }, - { - "teal": 691, - "source": 182, - "pc": [ - 828 - ] - }, - { - "teal": 692, - "source": 182, - "pc": [ - 829 - ] - }, - { - "teal": 693, - "source": 181, - "pc": [ - 830 - ] - }, - { - "teal": 698, - "source": 185, - "pc": [ - 831, - 832, - 833 - ] - }, - { - "teal": 699, - "source": 185, - "pc": [ - 834 - ] - }, - { - "teal": 700, - "source": 185, - "pc": [ - 835 - ] - }, - { - "teal": 704, - "source": 185, - "pc": [ - 836, - 837, - 838 - ] - }, - { - "teal": 708, - "source": 187, - "pc": [ - 839, - 840, - 841, - 842, - 843, - 844, - 845, - 846 - ] - }, - { - "teal": 709, - "source": 187, - "pc": [ - 847, - 848, - 849 - ] - }, - { - "teal": 710, - "source": 187, - "pc": [ - 850, - 851, - 852, - 853 - ] - }, - { - "teal": 711, - "source": 187, - "pc": [ - 854 - ] - }, - { - "teal": 712, - "source": 187, - "pc": [ - 855 - ] - }, - { - "teal": 713, - "source": 185, - "pc": [ - 856 - ] - }, - { - "teal": 718, - "source": 190, - "pc": [ - 857, - 858, - 859 - ] - }, - { - "teal": 719, - "source": 190, - "pc": [ - 860 - ] - }, - { - "teal": 720, - "source": 190, - "pc": [ - 861 - ] - }, - { - "teal": 724, - "source": 190, - "pc": [ - 862, - 863, - 864 - ] - }, - { - "teal": 727, - "source": 190, - "pc": [ - 865 - ] - }, - { - "teal": 728, - "source": 190, - "pc": [ - 866 - ] - }, - { - "teal": 732, - "source": 191, - "pc": [ - 867 - ] - }, - { - "teal": 733, - "source": 191, - "pc": [ - 868, - 869 - ] - }, - { - "teal": 737, - "source": 192, - "pc": [ - 870 - ] - }, - { - "teal": 738, - "source": 192, - "pc": [ - 871 - ] - }, - { - "teal": 739, - "source": 192, - "pc": [ - 872 - ] - }, - { - "teal": 740, - "source": 192, - "pc": [ - 873 - ] - }, - { - "teal": 744, - "source": 194, - "pc": [ - 874 - ] - }, - { - "teal": 745, - "source": 194, - "pc": [ - 875, - 876 - ] - }, - { - "teal": 749, - "source": 195, - "pc": [ - 877 - ] - }, - { - "teal": 750, - "source": 195, - "pc": [ - 878 - ] - }, - { - "teal": 751, - "source": 195, - "pc": [ - 879 - ] - }, - { - "teal": 752, - "source": 195, - "pc": [ - 880 - ] - }, - { - "teal": 753, - "source": 190, - "pc": [ - 881 - ] - }, - { - "teal": 758, - "source": 198, - "pc": [ - 882, - 883, - 884 - ] - }, - { - "teal": 759, - "source": 198, - "pc": [ - 885 - ] - }, - { - "teal": 760, - "source": 198, - "pc": [ - 886 - ] - }, - { - "teal": 764, - "source": 198, - "pc": [ - 887, - 888, - 889 - ] - }, - { - "teal": 768, - "source": 199, - "pc": [ - 890, - 891 - ] - }, - { - "teal": 769, - "source": 199, - "pc": [ - 892, - 893 - ] - }, - { - "teal": 773, - "source": 200, - "pc": [ - 894, - 895 - ] - }, - { - "teal": 774, - "source": 200, - "pc": [ - 896, - 897 - ] - }, - { - "teal": 775, - "source": 200, - "pc": [ - 898 - ] - }, - { - "teal": 776, - "source": 200, - "pc": [ - 899 - ] - }, - { - "teal": 777, - "source": 198, - "pc": [ - 900 - ] - }, - { - "teal": 782, - "source": 203, - "pc": [ - 901, - 902, - 903 - ] - }, - { - "teal": 783, - "source": 203, - "pc": [ - 904 - ] - }, - { - "teal": 784, - "source": 203, - "pc": [ - 905 - ] - }, - { - "teal": 788, - "source": 203, - "pc": [ - 906, - 907, - 908 - ] - }, - { - "teal": 791, - "source": 203, - "pc": [ - 909 - ] - }, - { - "teal": 792, - "source": 203, - "pc": [ - 910, - 911 - ] - }, - { - "teal": 796, - "source": 204, - "pc": [ - 912, - 913 - ] - }, - { - "teal": 797, - "source": 204, - "pc": [ - 914, - 915 - ] - }, - { - "teal": 798, - "source": 204, - "pc": [ - 916, - 917 - ] - }, - { - "teal": 802, - "source": 205, - "pc": [ - 918, - 919, - 920, - 921, - 922, - 923, - 924, - 925, - 926, - 927, - 928, - 929, - 930, - 931, - 932, - 933, - 934, - 935, - 936, - 937, - 938, - 939, - 940, - 941, - 942, - 943, - 944, - 945, - 946, - 947, - 948, - 949, - 950, - 951, - 952 - ] - }, - { - "teal": 803, - "source": 205, - "pc": [ - 953, - 954 - ] - }, - { - "teal": 804, - "source": 205, - "pc": [ - 955, - 956 - ] - }, - { - "teal": 805, - "source": 205, - "pc": [ - 957, - 958 - ] - }, - { - "teal": 809, - "source": 206, - "pc": [ - 959, - 960 - ] - }, - { - "teal": 810, - "source": 206, - "pc": [ - 961 - ] - }, - { - "teal": 814, - "source": 207, - "pc": [ - 962, - 963 - ] - }, - { - "teal": 815, - "source": 207, - "pc": [ - 964 - ] - }, - { - "teal": 819, - "source": 209, - "pc": [ - 965, - 966 - ] - }, - { - "teal": 820, - "source": 209, - "pc": [ - 967 - ] - }, - { - "teal": 821, - "source": 209, - "pc": [ - 968, - 969 - ] - }, - { - "teal": 822, - "source": 209, - "pc": [ - 970 - ] - }, - { - "teal": 823, - "source": 209, - "pc": [ - 971, - 972 - ] - }, - { - "teal": 824, - "source": 209, - "pc": [ - 973, - 974 - ] - }, - { - "teal": 825, - "source": 209, - "pc": [ - 975, - 976 - ] - }, - { - "teal": 829, - "source": 210, - "pc": [ - 977, - 978 - ] - }, - { - "teal": 830, - "source": 210, - "pc": [ - 979 - ] - }, - { - "teal": 834, - "source": 211, - "pc": [ - 980, - 981 - ] - }, - { - "teal": 835, - "source": 211, - "pc": [ - 982 - ] - }, - { - "teal": 836, - "source": 203, - "pc": [ - 983 - ] - }, - { - "teal": 841, - "source": 214, - "pc": [ - 984, - 985, - 986 - ] - }, - { - "teal": 842, - "source": 214, - "pc": [ - 987 - ] - }, - { - "teal": 843, - "source": 214, - "pc": [ - 988 - ] - }, - { - "teal": 847, - "source": 214, - "pc": [ - 989, - 990, - 991 - ] - }, - { - "teal": 854, - "source": 215, - "pc": [ - 992 - ] - }, - { - "teal": 855, - "source": 215, - "pc": [ - 993, - 994 - ] - }, - { - "teal": 856, - "source": 215, - "pc": [ - 995 - ] - }, - { - "teal": 857, - "source": 215, - "pc": [ - 996 - ] - }, - { - "teal": 860, - "source": 215, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"pay\"}", - "pc": [ - 997 - ] - }, - { - "teal": 863, - "source": 215, - "pc": [ - 998 - ] - }, - { - "teal": 864, - "source": 216, - "pc": [ - 999, - 1000 - ] - }, - { - "teal": 865, - "source": 216, - "pc": [ - 1001 - ] - }, - { - "teal": 866, - "source": 216, - "pc": [ - 1002 - ] - }, - { - "teal": 869, - "source": 216, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"amount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", - "pc": [ - 1003 - ] - }, - { - "teal": 882, - "source": 219, - "pc": [ - 1004 - ] - }, - { - "teal": 883, - "source": 219, - "pc": [ - 1005, - 1006 - ] - }, - { - "teal": 884, - "source": 219, - "pc": [ - 1007 - ] - }, - { - "teal": 885, - "source": 219, - "pc": [ - 1008 - ] - }, - { - "teal": 888, - "source": 219, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"appl\"}", - "pc": [ - 1009 - ] - }, - { - "teal": 891, - "source": 219, - "pc": [ - 1010 - ] - }, - { - "teal": 892, - "source": 220, - "pc": [ - 1011, - 1012 - ] - }, - { - "teal": 893, - "source": 220, - "pc": [ - 1013 - ] - }, - { - "teal": 894, - "source": 220, - "pc": [ - 1014 - ] - }, - { - "teal": 897, - "source": 220, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"applicationID\",\"expected\":\"AppID.fromUint64(0)\"}", - "pc": [ - 1015 - ] - }, - { - "teal": 901, - "source": 219, - "pc": [ - 1016 - ] - }, - { - "teal": 902, - "source": 222, - "pc": [ - 1017, - 1018, - 1019 - ] - }, - { - "teal": 903, - "source": 222, - "pc": [ - 1020 - ] - }, - { - "teal": 904, - "source": 222, - "pc": [ - 1021 - ] - }, - { - "teal": 907, - "source": 222, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"applicationArgs\",\"index\":\"0\",\"expected\":\"'foo'\"}", - "pc": [ - 1022 - ] - }, - { - "teal": 910, - "source": 219, - "pc": [ - 1023 - ] - }, - { - "teal": 911, - "source": 221, - "pc": [ - 1024, - 1025, - 1026 - ] - }, - { - "teal": 912, - "source": 224, - "pc": [ - 1027, - 1028 - ] - }, - { - "teal": 913, - "source": 224, - "pc": [ - 1029 - ] - }, - { - "teal": 914, - "source": 219, - "pc": [ - 1030 - ] - }, - { - "teal": 915, - "source": 221, - "pc": [ - 1031, - 1032, - 1033 - ] - }, - { - "teal": 916, - "source": 224, - "pc": [ - 1034, - 1035, - 1036, - 1037, - 1038 - ] - }, - { - "teal": 917, - "source": 224, - "pc": [ - 1039 - ] - }, - { - "teal": 918, - "source": 224, - "pc": [ - 1040 - ] - }, - { - "teal": 921, - "source": 224, - "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txnGroup[0]\"},\"field\":\"applicationArgs 1\",\"condition\":\"includedIn\",\"expected\":\"['bar', 'baz']\"}", - "pc": [ - 1041 - ] - }, - { - "teal": 928, - "source": 229, - "pc": [ - 1042 - ] - }, - { - "teal": 929, - "source": 229, - "pc": [ - 1043, - 1044 - ] - }, - { - "teal": 930, - "source": 229, - "pc": [ - 1045, - 1046 - ] - }, - { - "teal": 931, - "source": 229, - "pc": [ - 1047 - ] - }, - { - "teal": 934, - "source": 229, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"axfer\"}", - "pc": [ - 1048 - ] - }, - { - "teal": 937, - "source": 229, - "pc": [ - 1049 - ] - }, - { - "teal": 938, - "source": 230, - "pc": [ - 1050, - 1051 - ] - }, - { - "teal": 939, - "source": 230, - "pc": [ - 1052, - 1053 - ] - }, - { - "teal": 940, - "source": 230, - "pc": [ - 1054 - ] - }, - { - "teal": 943, - "source": 230, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", - "pc": [ - 1055 - ] - }, - { - "teal": 950, - "source": 233, - "pc": [ - 1056 - ] - }, - { - "teal": 951, - "source": 233, - "pc": [ - 1057, - 1058 - ] - }, - { - "teal": 952, - "source": 233, - "pc": [ - 1059, - 1060 - ] - }, - { - "teal": 953, - "source": 233, - "pc": [ - 1061 - ] - }, - { - "teal": 956, - "source": 233, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"acfg\"}", - "pc": [ - 1062 - ] - }, - { - "teal": 959, - "source": 233, - "pc": [ - 1063 - ] - }, - { - "teal": 960, - "source": 234, - "pc": [ - 1064, - 1065 - ] - }, - { - "teal": 961, - "source": 234, - "pc": [ - 1066 - ] - }, - { - "teal": 962, - "source": 234, - "pc": [ - 1067 - ] - }, - { - "teal": 965, - "source": 234, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"configAsset\",\"expected\":\"AssetID.fromUint64(0)\"}", - "pc": [ - 1068 - ] - }, - { - "teal": 972, - "source": 237, - "pc": [ - 1069 - ] - }, - { - "teal": 973, - "source": 237, - "pc": [ - 1070, - 1071 - ] - }, - { - "teal": 974, - "source": 237, - "pc": [ - 1072 - ] - }, - { - "teal": 975, - "source": 237, - "pc": [ - 1073 - ] - }, - { - "teal": 978, - "source": 237, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"keyreg\"}", - "pc": [ - 1074 - ] - }, - { - "teal": 981, - "source": 237, - "pc": [ - 1075 - ] - }, - { - "teal": 982, - "source": 238, - "pc": [ - 1076, - 1077 - ] - }, - { - "teal": 983, - "source": 238, - "pc": [ - 1078, - 1079 - ] - }, - { - "teal": 984, - "source": 238, - "pc": [ - 1080 - ] - }, - { - "teal": 987, - "source": 238, - "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"voteFirst\",\"expected\":\"1337\"}", - "pc": [ - 1081 - ] - }, - { - "teal": 988, - "source": 214, - "pc": [ - 1082 - ] - }, - { - "teal": 993, - "source": 242, - "pc": [ - 1083, - 1084, - 1085 - ] - }, - { - "teal": 994, - "source": 242, - "pc": [ - 1086 - ] - }, - { - "teal": 995, - "source": 242, - "pc": [ - 1087 - ] - }, - { - "teal": 999, - "source": 242, - "pc": [ - 1088, - 1089, - 1090 - ] - }, - { - "teal": 1002, - "source": 242, - "pc": [ - 1091 - ] - }, - { - "teal": 1006, - "source": 243, - "pc": [ - 1092 - ] - }, - { - "teal": 1007, - "source": 243, - "pc": [ - 1093, - 1094 - ] - }, - { - "teal": 1011, - "source": 244, - "pc": [ - 1095, - 1096 - ] - }, - { - "teal": 1012, - "source": 244, - "pc": [ - 1097, - 1098 - ] - }, - { - "teal": 1013, - "source": 244, - "pc": [ - 1099 - ] - }, - { - "teal": 1014, - "source": 244, - "pc": [ - 1100, - 1101 - ] - }, - { - "teal": 1018, - "source": 245, - "pc": [ - 1102, - 1103 - ] - }, - { - "teal": 1019, - "source": 245, - "pc": [ - 1104, - 1105, - 1106, - 1107, - 1108, - 1109, - 1110, - 1111 - ] - }, - { - "teal": 1020, - "source": 245, - "pc": [ - 1112 - ] - }, - { - "teal": 1021, - "source": 245, - "pc": [ - 1113 - ] - }, - { - "teal": 1022, - "source": 242, - "pc": [ - 1114 - ] - }, - { - "teal": 1027, - "source": 248, - "pc": [ - 1115 - ] - }, - { - "teal": 1030, - "source": 248, - "pc": [ - 1116, - 1117, - 1118 - ] - }, - { - "teal": 1031, - "source": 248, - "pc": [ - 1119 - ] - }, - { - "teal": 1032, - "source": 248, - "pc": [ - 1120 - ] - }, - { - "teal": 1033, - "source": 248, - "pc": [ - 1121 - ] - }, - { - "teal": 1034, - "source": 248, - "pc": [ - 1122, - 1123, - 1124 - ] - }, - { - "teal": 1035, - "source": 248, - "pc": [ - 1125 - ] - }, - { - "teal": 1036, - "source": 248, - "pc": [ - 1126 - ] - }, - { - "teal": 1037, - "source": 248, - "pc": [ - 1127 - ] - }, - { - "teal": 1038, - "source": 248, - "pc": [ - 1128 - ] - }, - { - "teal": 1039, - "source": 248, - "pc": [ - 1129 - ] - }, - { - "teal": 1040, - "source": 248, - "pc": [ - 1130 - ] - }, - { - "teal": 1044, - "source": 248, - "pc": [ - 1131, - 1132, - 1133 - ] - }, - { - "teal": 1048, - "source": 249, - "pc": [ - 1134, - 1135, - 1136, - 1137, - 1138, - 1139, - 1140, - 1141, - 1142, - 1143, - 1144, - 1145, - 1146, - 1147, - 1148, - 1149, - 1150, - 1151, - 1152, - 1153, - 1154, - 1155, - 1156, - 1157, - 1158, - 1159, - 1160, - 1161, - 1162, - 1163, - 1164, - 1165, - 1166, - 1167, - 1168, - 1169, - 1170, - 1171, - 1172, - 1173, - 1174, - 1175, - 1176, - 1177, - 1178, - 1179, - 1180, - 1181, - 1182, - 1183, - 1184, - 1185, - 1186, - 1187, - 1188, - 1189, - 1190, - 1191, - 1192, - 1193, - 1194, - 1195, - 1196, - 1197, - 1198, - 1199, - 1200, - 1201, - 1202, - 1203, - 1204, - 1205, - 1206, - 1207, - 1208, - 1209, - 1210, - 1211, - 1212, - 1213, - 1214, - 1215, - 1216, - 1217, - 1218, - 1219, - 1220, - 1221, - 1222, - 1223, - 1224, - 1225, - 1226, - 1227, - 1228, - 1229, - 1230, - 1231, - 1232, - 1233, - 1234, - 1235, - 1236, - 1237, - 1238, - 1239, - 1240, - 1241, - 1242, - 1243, - 1244, - 1245, - 1246, - 1247, - 1248, - 1249, - 1250, - 1251, - 1252, - 1253, - 1254, - 1255, - 1256, - 1257, - 1258, - 1259, - 1260, - 1261, - 1262, - 1263, - 1264, - 1265, - 1266, - 1267, - 1268, - 1269, - 1270, - 1271, - 1272, - 1273, - 1274, - 1275, - 1276, - 1277, - 1278, - 1279, - 1280, - 1281, - 1282, - 1283, - 1284, - 1285, - 1286, - 1287, - 1288, - 1289, - 1290, - 1291, - 1292, - 1293, - 1294, - 1295, - 1296, - 1297, - 1298, - 1299, - 1300, - 1301, - 1302, - 1303, - 1304, - 1305, - 1306, - 1307, - 1308, - 1309, - 1310, - 1311, - 1312, - 1313, - 1314, - 1315, - 1316, - 1317, - 1318, - 1319, - 1320, - 1321, - 1322, - 1323, - 1324, - 1325, - 1326, - 1327, - 1328, - 1329, - 1330, - 1331, - 1332, - 1333, - 1334, - 1335, - 1336, - 1337, - 1338, - 1339, - 1340, - 1341, - 1342, - 1343, - 1344, - 1345, - 1346, - 1347, - 1348, - 1349, - 1350, - 1351, - 1352, - 1353, - 1354, - 1355, - 1356, - 1357, - 1358, - 1359, - 1360, - 1361, - 1362, - 1363, - 1364, - 1365, - 1366, - 1367, - 1368, - 1369, - 1370, - 1371, - 1372, - 1373, - 1374, - 1375, - 1376, - 1377, - 1378, - 1379, - 1380, - 1381, - 1382, - 1383, - 1384, - 1385, - 1386, - 1387, - 1388, - 1389, - 1390, - 1391, - 1392, - 1393, - 1394, - 1395, - 1396, - 1397, - 1398, - 1399, - 1400, - 1401, - 1402, - 1403, - 1404, - 1405, - 1406, - 1407, - 1408, - 1409, - 1410, - 1411, - 1412, - 1413, - 1414, - 1415, - 1416, - 1417, - 1418, - 1419, - 1420, - 1421, - 1422, - 1423, - 1424, - 1425, - 1426, - 1427, - 1428, - 1429, - 1430, - 1431, - 1432, - 1433, - 1434, - 1435, - 1436, - 1437, - 1438, - 1439, - 1440, - 1441, - 1442, - 1443, - 1444, - 1445, - 1446, - 1447, - 1448, - 1449, - 1450, - 1451, - 1452, - 1453, - 1454, - 1455, - 1456, - 1457, - 1458, - 1459, - 1460, - 1461, - 1462, - 1463, - 1464, - 1465, - 1466, - 1467, - 1468, - 1469, - 1470, - 1471, - 1472, - 1473, - 1474, - 1475, - 1476, - 1477, - 1478, - 1479, - 1480, - 1481, - 1482, - 1483, - 1484, - 1485, - 1486, - 1487, - 1488, - 1489, - 1490, - 1491, - 1492, - 1493, - 1494, - 1495, - 1496, - 1497, - 1498, - 1499, - 1500, - 1501, - 1502, - 1503, - 1504, - 1505, - 1506, - 1507, - 1508, - 1509, - 1510, - 1511, - 1512, - 1513, - 1514, - 1515, - 1516, - 1517, - 1518, - 1519, - 1520, - 1521, - 1522, - 1523, - 1524, - 1525, - 1526, - 1527, - 1528, - 1529, - 1530, - 1531, - 1532, - 1533, - 1534, - 1535, - 1536, - 1537, - 1538, - 1539, - 1540, - 1541, - 1542, - 1543, - 1544, - 1545, - 1546, - 1547, - 1548, - 1549, - 1550, - 1551, - 1552, - 1553, - 1554, - 1555, - 1556, - 1557, - 1558, - 1559, - 1560, - 1561, - 1562, - 1563, - 1564, - 1565, - 1566, - 1567, - 1568, - 1569, - 1570, - 1571, - 1572, - 1573, - 1574, - 1575, - 1576, - 1577, - 1578, - 1579, - 1580, - 1581, - 1582, - 1583, - 1584, - 1585, - 1586, - 1587, - 1588, - 1589, - 1590, - 1591, - 1592, - 1593, - 1594, - 1595, - 1596, - 1597, - 1598, - 1599, - 1600, - 1601, - 1602, - 1603, - 1604, - 1605, - 1606, - 1607, - 1608, - 1609, - 1610, - 1611, - 1612, - 1613, - 1614, - 1615, - 1616, - 1617, - 1618, - 1619, - 1620, - 1621, - 1622, - 1623, - 1624, - 1625, - 1626, - 1627, - 1628, - 1629, - 1630, - 1631, - 1632, - 1633, - 1634, - 1635, - 1636, - 1637, - 1638, - 1639, - 1640, - 1641, - 1642, - 1643, - 1644, - 1645, - 1646, - 1647, - 1648, - 1649, - 1650, - 1651, - 1652, - 1653, - 1654, - 1655, - 1656, - 1657, - 1658, - 1659, - 1660, - 1661, - 1662, - 1663, - 1664, - 1665, - 1666, - 1667, - 1668, - 1669, - 1670, - 1671, - 1672, - 1673, - 1674, - 1675, - 1676, - 1677, - 1678, - 1679, - 1680, - 1681, - 1682, - 1683, - 1684, - 1685, - 1686, - 1687, - 1688, - 1689, - 1690, - 1691, - 1692, - 1693, - 1694, - 1695, - 1696, - 1697, - 1698, - 1699, - 1700, - 1701, - 1702, - 1703, - 1704, - 1705, - 1706, - 1707, - 1708, - 1709, - 1710, - 1711, - 1712, - 1713, - 1714, - 1715, - 1716, - 1717, - 1718, - 1719, - 1720, - 1721, - 1722, - 1723, - 1724, - 1725, - 1726, - 1727, - 1728, - 1729, - 1730, - 1731, - 1732, - 1733, - 1734, - 1735, - 1736, - 1737, - 1738, - 1739, - 1740, - 1741, - 1742, - 1743, - 1744, - 1745, - 1746, - 1747, - 1748, - 1749, - 1750, - 1751, - 1752, - 1753, - 1754, - 1755, - 1756, - 1757, - 1758, - 1759, - 1760, - 1761, - 1762, - 1763, - 1764, - 1765, - 1766, - 1767, - 1768, - 1769, - 1770, - 1771, - 1772, - 1773, - 1774, - 1775, - 1776, - 1777, - 1778, - 1779, - 1780, - 1781, - 1782, - 1783, - 1784, - 1785, - 1786, - 1787, - 1788, - 1789, - 1790, - 1791, - 1792, - 1793, - 1794, - 1795, - 1796, - 1797, - 1798, - 1799, - 1800, - 1801, - 1802, - 1803, - 1804, - 1805, - 1806, - 1807, - 1808, - 1809, - 1810, - 1811, - 1812, - 1813, - 1814, - 1815, - 1816, - 1817, - 1818, - 1819, - 1820, - 1821, - 1822, - 1823, - 1824, - 1825, - 1826, - 1827, - 1828, - 1829, - 1830, - 1831, - 1832, - 1833, - 1834, - 1835, - 1836, - 1837, - 1838, - 1839, - 1840, - 1841, - 1842, - 1843, - 1844, - 1845, - 1846, - 1847, - 1848, - 1849, - 1850, - 1851, - 1852, - 1853, - 1854, - 1855, - 1856, - 1857, - 1858, - 1859, - 1860, - 1861, - 1862, - 1863, - 1864, - 1865, - 1866, - 1867, - 1868, - 1869, - 1870, - 1871, - 1872, - 1873, - 1874, - 1875, - 1876, - 1877, - 1878, - 1879, - 1880, - 1881, - 1882, - 1883, - 1884, - 1885, - 1886, - 1887, - 1888, - 1889, - 1890, - 1891, - 1892, - 1893, - 1894, - 1895, - 1896, - 1897, - 1898, - 1899, - 1900, - 1901, - 1902, - 1903, - 1904, - 1905, - 1906, - 1907, - 1908, - 1909, - 1910, - 1911, - 1912, - 1913, - 1914, - 1915, - 1916, - 1917, - 1918, - 1919, - 1920, - 1921, - 1922, - 1923, - 1924, - 1925, - 1926, - 1927, - 1928, - 1929, - 1930, - 1931, - 1932, - 1933, - 1934, - 1935, - 1936, - 1937, - 1938, - 1939, - 1940, - 1941, - 1942, - 1943, - 1944, - 1945, - 1946, - 1947, - 1948, - 1949, - 1950, - 1951, - 1952, - 1953, - 1954, - 1955, - 1956, - 1957, - 1958, - 1959, - 1960, - 1961, - 1962, - 1963, - 1964, - 1965, - 1966, - 1967, - 1968, - 1969, - 1970, - 1971, - 1972, - 1973, - 1974, - 1975, - 1976, - 1977, - 1978, - 1979, - 1980, - 1981, - 1982, - 1983, - 1984, - 1985, - 1986, - 1987, - 1988, - 1989, - 1990, - 1991, - 1992, - 1993, - 1994, - 1995, - 1996, - 1997, - 1998, - 1999, - 2000, - 2001, - 2002, - 2003, - 2004, - 2005, - 2006, - 2007, - 2008, - 2009, - 2010, - 2011, - 2012, - 2013, - 2014, - 2015, - 2016, - 2017, - 2018, - 2019, - 2020, - 2021, - 2022, - 2023, - 2024, - 2025, - 2026, - 2027, - 2028, - 2029, - 2030, - 2031, - 2032, - 2033, - 2034, - 2035, - 2036, - 2037, - 2038, - 2039, - 2040, - 2041, - 2042, - 2043, - 2044, - 2045, - 2046, - 2047, - 2048, - 2049, - 2050, - 2051, - 2052, - 2053, - 2054, - 2055, - 2056, - 2057, - 2058, - 2059, - 2060, - 2061, - 2062, - 2063, - 2064, - 2065, - 2066, - 2067, - 2068, - 2069, - 2070, - 2071, - 2072, - 2073, - 2074, - 2075, - 2076, - 2077, - 2078, - 2079, - 2080, - 2081, - 2082, - 2083, - 2084, - 2085, - 2086, - 2087, - 2088, - 2089, - 2090, - 2091, - 2092, - 2093, - 2094, - 2095, - 2096, - 2097, - 2098, - 2099, - 2100, - 2101, - 2102, - 2103, - 2104, - 2105, - 2106, - 2107, - 2108, - 2109, - 2110, - 2111, - 2112, - 2113, - 2114, - 2115, - 2116, - 2117, - 2118, - 2119, - 2120, - 2121, - 2122, - 2123, - 2124, - 2125, - 2126, - 2127, - 2128, - 2129, - 2130, - 2131, - 2132, - 2133, - 2134, - 2135, - 2136, - 2137, - 2138, - 2139, - 2140, - 2141, - 2142, - 2143, - 2144, - 2145, - 2146, - 2147, - 2148, - 2149, - 2150, - 2151, - 2152, - 2153, - 2154, - 2155, - 2156, - 2157, - 2158, - 2159, - 2160 - ] - }, - { - "teal": 1049, - "source": 248, - "pc": [ - 2161 - ] - }, - { - "teal": 1054, - "source": 252, - "pc": [ - 2162, - 2163, - 2164 - ] - }, - { - "teal": 1055, - "source": 252, - "pc": [ - 2165 - ] - }, - { - "teal": 1056, - "source": 252, - "pc": [ - 2166 - ] - }, - { - "teal": 1060, - "source": 252, - "pc": [ - 2167, - 2168, - 2169 - ] - }, - { - "teal": 1064, - "source": 253, - "pc": [ - 2170, - 2171, - 2172, - 2173, - 2174, - 2175, - 2176 - ] - }, - { - "teal": 1065, - "source": 253, - "pc": [ - 2177, - 2178, - 2179 - ] - }, - { - "teal": 1066, - "source": 253, - "pc": [ - 2180 - ] - }, - { - "teal": 1067, - "source": 252, - "pc": [ - 2181 - ] - }, - { - "teal": 1071, - "source": 256, - "pc": [ - 2182, - 2183, - 2184 - ] - }, - { - "teal": 1075, - "source": 257, - "pc": [ - 2185, - 2186 - ] - }, - { - "teal": 1076, - "source": 256, - "pc": [ - 2187 - ] - }, - { - "teal": 1081, - "source": 260, - "pc": [ - 2188 - ] - }, - { - "teal": 1084, - "source": 260, - "pc": [ - 2189, - 2190, - 2191 - ] - }, - { - "teal": 1085, - "source": 260, - "pc": [ - 2192 - ] - }, - { - "teal": 1088, - "source": 260, - "pc": [ - 2193, - 2194, - 2195 - ] - }, - { - "teal": 1089, - "source": 260, - "pc": [ - 2196 - ] - }, - { - "teal": 1092, - "source": 260, - "pc": [ - 2197, - 2198, - 2199 - ] - }, - { - "teal": 1093, - "source": 260, - "pc": [ - 2200 - ] - }, - { - "teal": 1094, - "source": 260, - "pc": [ - 2201 - ] - }, - { - "teal": 1095, - "source": 260, - "pc": [ - 2202 - ] - }, - { - "teal": 1096, - "source": 260, - "pc": [ - 2203 - ] - }, - { - "teal": 1097, - "source": 260, - "pc": [ - 2204 - ] - }, - { - "teal": 1101, - "source": 260, - "pc": [ - 2205, - 2206, - 2207 - ] - }, - { - "teal": 1105, - "source": 261, - "pc": [ - 2208, - 2209 - ] - }, - { - "teal": 1106, - "source": 261, - "pc": [ - 2210, - 2211 - ] - }, - { - "teal": 1107, - "source": 261, - "pc": [ - 2212 - ] - }, - { - "teal": 1108, - "source": 260, - "pc": [ - 2213 - ] - }, - { - "teal": 1113, - "source": 264, - "pc": [ - 2214, - 2215, - 2216 - ] - }, - { - "teal": 1114, - "source": 264, - "pc": [ - 2217 - ] - }, - { - "teal": 1115, - "source": 264, - "pc": [ - 2218 - ] - }, - { - "teal": 1119, - "source": 264, - "pc": [ - 2219, - 2220, - 2221 - ] - }, - { - "teal": 1123, - "source": 265, - "pc": [ - 2222 - ] - }, - { - "teal": 1124, - "source": 265, - "pc": [ - 2223 - ] - }, - { - "teal": 1125, - "source": 265, - "pc": [ - 2224, - 2225, - 2226 - ] - }, - { - "teal": 1126, - "source": 265, - "pc": [ - 2227, - 2228 - ] - }, - { - "teal": 1127, - "source": 265, - "pc": [ - 2229 - ] - }, - { - "teal": 1128, - "source": 265, - "pc": [ - 2230 - ] - }, - { - "teal": 1129, - "source": 264, - "pc": [ - 2231 - ] - }, - { - "teal": 1134, - "source": 268, - "pc": [ - 2232, - 2233, - 2234 - ] - }, - { - "teal": 1135, - "source": 268, - "pc": [ - 2235 - ] - }, - { - "teal": 1136, - "source": 268, - "pc": [ - 2236 - ] - }, - { - "teal": 1140, - "source": 268, - "pc": [ - 2237, - 2238, - 2239 - ] - }, - { - "teal": 1144, - "source": 269, - "pc": [ - 2240, - 2241, - 2242 - ] - }, - { - "teal": 1145, - "source": 269, - "pc": [ - 2243 - ] - }, - { - "teal": 1146, - "source": 268, - "pc": [ - 2244 - ] - }, - { - "teal": 1151, - "source": 272, - "pc": [ - 2245 - ] - }, - { - "teal": 1154, - "source": 272, - "pc": [ - 2246, - 2247, - 2248 - ] - }, - { - "teal": 1155, - "source": 272, - "pc": [ - 2249 - ] - }, - { - "teal": 1156, - "source": 272, - "pc": [ - 2250 - ] - }, - { - "teal": 1157, - "source": 272, - "pc": [ - 2251, - 2252, - 2253 - ] - }, - { - "teal": 1158, - "source": 272, - "pc": [ - 2254 - ] - }, - { - "teal": 1161, - "source": 272, - "errorMessage": "uintNWithUnderscore return value overflowed 256 bits", - "pc": [ - 2255 - ] - }, - { - "teal": 1162, - "source": 272, - "pc": [ - 2256, - 2257, - 2258, - 2259, - 2260, - 2261, - 2262, - 2263, - 2264, - 2265, - 2266, - 2267, - 2268, - 2269, - 2270, - 2271, - 2272, - 2273, - 2274, - 2275, - 2276, - 2277, - 2278, - 2279, - 2280, - 2281, - 2282, - 2283, - 2284, - 2285, - 2286, - 2287, - 2288, - 2289 - ] - }, - { - "teal": 1163, - "source": 272, - "pc": [ - 2290 - ] - }, - { - "teal": 1164, - "source": 272, - "pc": [ - 2291 - ] - }, - { - "teal": 1165, - "source": 272, - "pc": [ - 2292 - ] - }, - { - "teal": 1166, - "source": 272, - "pc": [ - 2293 - ] - }, - { - "teal": 1167, - "source": 272, - "pc": [ - 2294, - 2295 - ] - }, - { - "teal": 1168, - "source": 272, - "pc": [ - 2296 - ] - }, - { - "teal": 1169, - "source": 272, - "pc": [ - 2297 - ] - }, - { - "teal": 1170, - "source": 272, - "pc": [ - 2298 - ] - }, - { - "teal": 1171, - "source": 272, - "pc": [ - 2299 - ] - }, - { - "teal": 1172, - "source": 272, - "pc": [ - 2300 - ] - }, - { - "teal": 1173, - "source": 272, - "pc": [ - 2301 - ] - }, - { - "teal": 1174, - "source": 272, - "pc": [ - 2302 - ] - }, - { - "teal": 1178, - "source": 272, - "pc": [ - 2303, - 2304, - 2305 - ] - }, - { - "teal": 1182, - "source": 273, - "pc": [ - 2306, - 2307, - 2308, - 2309, - 2310, - 2311, - 2312, - 2313, - 2314, - 2315, - 2316, - 2317, - 2318, - 2319, - 2320, - 2321, - 2322, - 2323, - 2324, - 2325, - 2326, - 2327, - 2328, - 2329, - 2330, - 2331, - 2332, - 2333, - 2334, - 2335, - 2336, - 2337, - 2338, - 2339 - ] - }, - { - "teal": 1183, - "source": 272, - "pc": [ - 2340 - ] - }, - { - "teal": 1188, - "source": 276, - "pc": [ - 2341, - 2342, - 2343 - ] - }, - { - "teal": 1189, - "source": 276, - "pc": [ - 2344 - ] - }, - { - "teal": 1190, - "source": 276, - "pc": [ - 2345 - ] - }, - { - "teal": 1194, - "source": 276, - "pc": [ - 2346, - 2347, - 2348 - ] - }, - { - "teal": 1197, - "source": 276, - "pc": [ - 2349 - ] - }, - { - "teal": 1201, - "source": 277, - "pc": [ - 2350 - ] - }, - { - "teal": 1202, - "source": 277, - "pc": [ - 2351 - ] - }, - { - "teal": 1203, - "source": 277, - "pc": [ - 2352, - 2353 - ] - }, - { - "teal": 1204, - "source": 277, - "pc": [ - 2354 - ] - }, - { - "teal": 1205, - "source": 277, - "pc": [ - 2355, - 2356 - ] - }, - { - "teal": 1206, - "source": 277, - "pc": [ - 2357 - ] - }, - { - "teal": 1207, - "source": 277, - "pc": [ - 2358 - ] - }, - { - "teal": 1208, - "source": 277, - "pc": [ - 2359, - 2360 - ] - }, - { - "teal": 1209, - "source": 277, - "pc": [ - 2361, - 2362 - ] - }, - { - "teal": 1210, - "source": 277, - "pc": [ - 2363, - 2364 - ] - }, - { - "teal": 1211, - "source": 277, - "pc": [ - 2365, - 2366 - ] - }, - { - "teal": 1212, - "source": 277, - "pc": [ - 2367 - ] - }, - { - "teal": 1216, - "source": 278, - "pc": [ - 2368 - ] - }, - { - "teal": 1217, - "source": 278, - "pc": [ - 2369, - 2370 - ] - }, - { - "teal": 1222, - "source": 278, - "pc": [ - 2371, - 2372 - ] - }, - { - "teal": 1223, - "source": 278, - "pc": [ - 2373, - 2374 - ] - }, - { - "teal": 1224, - "source": 278, - "pc": [ - 2375 - ] - }, - { - "teal": 1225, - "source": 278, - "pc": [ - 2376, - 2377, - 2378 - ] - }, - { - "teal": 1229, - "source": 279, - "pc": [ - 2379, - 2380 - ] - }, - { - "teal": 1230, - "source": 279, - "pc": [ - 2381 - ] - }, - { - "teal": 1235, - "source": 278, - "pc": [ - 2382, - 2383 - ] - }, - { - "teal": 1236, - "source": 278, - "pc": [ - 2384 - ] - }, - { - "teal": 1237, - "source": 278, - "pc": [ - 2385 - ] - }, - { - "teal": 1238, - "source": 278, - "pc": [ - 2386, - 2387 - ] - }, - { - "teal": 1239, - "source": 278, - "pc": [ - 2388, - 2389, - 2390 - ] - }, - { - "teal": 1242, - "source": 276, - "pc": [ - 2391 - ] - }, - { - "teal": 1247, - "source": 283, - "pc": [ - 2392 - ] - }, - { - "teal": 1250, - "source": 283, - "pc": [ - 2393, - 2394, - 2395 - ] - }, - { - "teal": 1251, - "source": 283, - "pc": [ - 2396 - ] - }, - { - "teal": 1252, - "source": 283, - "pc": [ - 2397 - ] - }, - { - "teal": 1253, - "source": 283, - "pc": [ - 2398 - ] - }, - { - "teal": 1254, - "source": 283, - "pc": [ - 2399, - 2400, - 2401 - ] - }, - { - "teal": 1255, - "source": 283, - "pc": [ - 2402 - ] - }, - { - "teal": 1256, - "source": 283, - "pc": [ - 2403 - ] - }, - { - "teal": 1257, - "source": 283, - "pc": [ - 2404 - ] - }, - { - "teal": 1258, - "source": 283, - "pc": [ - 2405 - ] - }, - { - "teal": 1259, - "source": 283, - "pc": [ - 2406 - ] - }, - { - "teal": 1260, - "source": 283, - "pc": [ - 2407 - ] - }, - { - "teal": 1264, - "source": 283, - "pc": [ - 2408, - 2409, - 2410 - ] - }, - { - "teal": 1267, - "source": 283, - "pc": [ - 2411 - ] - }, - { - "teal": 1271, - "source": 284, - "pc": [ - 2412, - 2413, - 2414, - 2415 - ] - }, - { - "teal": 1272, - "source": 284, - "pc": [ - 2416, - 2417 - ] - }, - { - "teal": 1277, - "source": 286, - "pc": [ - 2418, - 2419 - ] - }, - { - "teal": 1278, - "source": 286, - "pc": [ - 2420, - 2421 - ] - }, - { - "teal": 1279, - "source": 286, - "pc": [ - 2422 - ] - }, - { - "teal": 1280, - "source": 286, - "pc": [ - 2423, - 2424, - 2425 - ] - }, - { - "teal": 1285, - "source": 287, - "pc": [ - 2426, - 2427, - 2428, - 2429, - 2430, - 2431, - 2432, - 2433, - 2434, - 2435 - ] - }, - { - "teal": 1286, - "source": 287, - "pc": [ - 2436, - 2437 - ] - }, - { - "teal": 1291, - "source": 290, - "pc": [ - 2438, - 2439, - 2440, - 2441, - 2442 - ] - }, - { - "teal": 1292, - "source": 290, - "pc": [ - 2443 - ] - }, - { - "teal": 1293, - "source": 290, - "pc": [ - 2444, - 2445 - ] - }, - { - "teal": 1296, - "source": 283, - "pc": [ - 2446, - 2447 - ] - }, - { - "teal": 1297, - "source": 283, - "pc": [ - 2448 - ] - }, - { - "teal": 1302, - "source": 293, - "pc": [ - 2449 - ] - }, - { - "teal": 1305, - "source": 293, - "pc": [ - 2450, - 2451, - 2452 - ] - }, - { - "teal": 1306, - "source": 293, - "pc": [ - 2453 - ] - }, - { - "teal": 1307, - "source": 293, - "pc": [ - 2454 - ] - }, - { - "teal": 1308, - "source": 293, - "pc": [ - 2455 - ] - }, - { - "teal": 1309, - "source": 293, - "pc": [ - 2456 - ] - }, - { - "teal": 1310, - "source": 293, - "pc": [ - 2457 - ] - }, - { - "teal": 1314, - "source": 293, - "pc": [ - 2458, - 2459, - 2460 - ] - }, - { - "teal": 1317, - "source": 293, - "pc": [ - 2461 - ] - }, - { - "teal": 1321, - "source": 294, - "pc": [ - 2462, - 2463 - ] - }, - { - "teal": 1322, - "source": 294, - "pc": [ - 2464, - 2465 - ] - }, - { - "teal": 1326, - "source": 296, - "pc": [ - 2466, - 2467 - ] - }, - { - "teal": 1327, - "source": 296, - "pc": [ - 2468 - ] - }, - { - "teal": 1328, - "source": 296, - "pc": [ - 2469, - 2470 - ] - }, - { - "teal": 1329, - "source": 296, - "pc": [ - 2471 - ] - }, - { - "teal": 1330, - "source": 296, - "pc": [ - 2472, - 2473 - ] - }, - { - "teal": 1331, - "source": 296, - "pc": [ - 2474 - ] - }, - { - "teal": 1332, - "source": 296, - "pc": [ - 2475 - ] - }, - { - "teal": 1333, - "source": 296, - "pc": [ - 2476, - 2477 - ] - }, - { - "teal": 1334, - "source": 296, - "pc": [ - 2478, - 2479 - ] - }, - { - "teal": 1337, - "source": 293, - "pc": [ - 2480, - 2481 - ] - }, - { - "teal": 1338, - "source": 293, - "pc": [ - 2482 - ] - }, - { - "teal": 1343, - "source": 299, - "pc": [ - 2483 - ] - }, - { - "teal": 1346, - "source": 299, - "pc": [ - 2484, - 2485, - 2486 - ] - }, - { - "teal": 1347, - "source": 299, - "pc": [ - 2487 - ] - }, - { - "teal": 1348, - "source": 299, - "pc": [ - 2488 - ] - }, - { - "teal": 1349, - "source": 299, - "pc": [ - 2489 - ] - }, - { - "teal": 1350, - "source": 299, - "pc": [ - 2490 - ] - }, - { - "teal": 1351, - "source": 299, - "pc": [ - 2491 - ] - }, - { - "teal": 1355, - "source": 299, - "pc": [ - 2492, - 2493, - 2494 - ] - }, - { - "teal": 1359, - "source": 300, - "pc": [ - 2495, - 2496 - ] - }, - { - "teal": 1360, - "source": 300, - "pc": [ - 2497 - ] - }, - { - "teal": 1361, - "source": 300, - "pc": [ - 2498 - ] - }, - { - "teal": 1365, - "source": 302, - "pc": [ - 2499, - 2500 - ] - }, - { - "teal": 1366, - "source": 302, - "pc": [ - 2501 - ] - }, - { - "teal": 1367, - "source": 302, - "pc": [ - 2502 - ] - }, - { - "teal": 1368, - "source": 302, - "pc": [ - 2503, - 2504 - ] - }, - { - "teal": 1369, - "source": 302, - "pc": [ - 2505 - ] - }, - { - "teal": 1370, - "source": 302, - "pc": [ - 2506, - 2507 - ] - }, - { - "teal": 1371, - "source": 299, - "pc": [ - 2508 - ] - }, - { - "teal": 1376, - "source": 305, - "pc": [ - 2509 - ] - }, - { - "teal": 1379, - "source": 305, - "pc": [ - 2510, - 2511, - 2512 - ] - }, - { - "teal": 1380, - "source": 305, - "pc": [ - 2513 - ] - }, - { - "teal": 1381, - "source": 305, - "pc": [ - 2514 - ] - }, - { - "teal": 1382, - "source": 305, - "pc": [ - 2515 - ] - }, - { - "teal": 1383, - "source": 305, - "pc": [ - 2516 - ] - }, - { - "teal": 1384, - "source": 305, - "pc": [ - 2517 - ] - }, - { - "teal": 1388, - "source": 305, - "pc": [ - 2518, - 2519, - 2520 - ] - }, - { - "teal": 1391, - "source": 305, - "pc": [ - 2521 - ] - }, - { - "teal": 1395, - "source": 306, - "pc": [ - 2522 - ] - }, - { - "teal": 1396, - "source": 306, - "pc": [ - 2523, - 2524 - ] - }, - { - "teal": 1400, - "source": 308, - "pc": [ - 2525, - 2526 - ] - }, - { - "teal": 1401, - "source": 308, - "pc": [ - 2527 - ] - }, - { - "teal": 1402, - "source": 308, - "pc": [ - 2528 - ] - }, - { - "teal": 1403, - "source": 308, - "pc": [ - 2529 - ] - }, - { - "teal": 1404, - "source": 308, - "pc": [ - 2530, - 2531 - ] - }, - { - "teal": 1405, - "source": 308, - "pc": [ - 2532, - 2533 - ] - }, - { - "teal": 1406, - "source": 308, - "pc": [ - 2534, - 2535 - ] - }, - { - "teal": 1409, - "source": 305, - "pc": [ - 2536, - 2537 - ] - }, - { - "teal": 1410, - "source": 305, - "pc": [ - 2538 - ] - }, - { - "teal": 1415, - "source": 311, - "pc": [ - 2539 - ] - }, - { - "teal": 1418, - "source": 311, - "pc": [ - 2540, - 2541, - 2542 - ] - }, - { - "teal": 1419, - "source": 311, - "pc": [ - 2543 - ] - }, - { - "teal": 1420, - "source": 311, - "pc": [ - 2544 - ] - }, - { - "teal": 1421, - "source": 311, - "pc": [ - 2545 - ] - }, - { - "teal": 1422, - "source": 311, - "pc": [ - 2546 - ] - }, - { - "teal": 1423, - "source": 311, - "pc": [ - 2547 - ] - }, - { - "teal": 1427, - "source": 311, - "pc": [ - 2548, - 2549, - 2550 - ] - }, - { - "teal": 1430, - "source": 311, - "pc": [ - 2551 - ] - }, - { - "teal": 1434, - "source": 312, - "pc": [ - 2552, - 2553 - ] - }, - { - "teal": 1435, - "source": 312, - "pc": [ - 2554, - 2555 - ] - }, - { - "teal": 1439, - "source": 314, - "pc": [ - 2556, - 2557 - ] - }, - { - "teal": 1440, - "source": 314, - "pc": [ - 2558 - ] - }, - { - "teal": 1441, - "source": 314, - "pc": [ - 2559, - 2560 - ] - }, - { - "teal": 1442, - "source": 314, - "pc": [ - 2561, - 2562, - 2563 - ] - }, - { - "teal": 1443, - "source": 314, - "pc": [ - 2564 - ] - }, - { - "teal": 1444, - "source": 314, - "pc": [ - 2565, - 2566 - ] - }, - { - "teal": 1445, - "source": 314, - "pc": [ - 2567 - ] - }, - { - "teal": 1446, - "source": 314, - "pc": [ - 2568 - ] - }, - { - "teal": 1447, - "source": 314, - "pc": [ - 2569, - 2570 - ] - }, - { - "teal": 1448, - "source": 314, - "pc": [ - 2571 - ] - }, - { - "teal": 1449, - "source": 314, - "pc": [ - 2572 - ] - }, - { - "teal": 1450, - "source": 314, - "pc": [ - 2573, - 2574 - ] - }, - { - "teal": 1451, - "source": 314, - "pc": [ - 2575, - 2576 - ] - }, - { - "teal": 1454, - "source": 311, - "pc": [ - 2577, - 2578 - ] - }, - { - "teal": 1455, - "source": 311, - "pc": [ - 2579 - ] - }, - { - "teal": 1460, - "source": 317, - "pc": [ - 2580 - ] - }, - { - "teal": 1463, - "source": 317, - "pc": [ - 2581, - 2582, - 2583 - ] - }, - { - "teal": 1464, - "source": 317, - "pc": [ - 2584 - ] - }, - { - "teal": 1465, - "source": 317, - "pc": [ - 2585 - ] - }, - { - "teal": 1466, - "source": 317, - "pc": [ - 2586 - ] - }, - { - "teal": 1467, - "source": 317, - "pc": [ - 2587 - ] - }, - { - "teal": 1468, - "source": 317, - "pc": [ - 2588 - ] - }, - { - "teal": 1472, - "source": 317, - "pc": [ - 2589, - 2590, - 2591 - ] - }, - { - "teal": 1476, - "source": 318, - "pc": [ - 2592, - 2593 - ] - }, - { - "teal": 1477, - "source": 318, - "pc": [ - 2594, - 2595 - ] - }, - { - "teal": 1478, - "source": 318, - "pc": [ - 2596 - ] - }, - { - "teal": 1482, - "source": 320, - "pc": [ - 2597, - 2598 - ] - }, - { - "teal": 1483, - "source": 320, - "pc": [ - 2599 - ] - }, - { - "teal": 1484, - "source": 320, - "pc": [ - 2600 - ] - }, - { - "teal": 1485, - "source": 320, - "pc": [ - 2601, - 2602 - ] - }, - { - "teal": 1486, - "source": 320, - "pc": [ - 2603 - ] - }, - { - "teal": 1487, - "source": 320, - "pc": [ - 2604, - 2605, - 2606 - ] - }, - { - "teal": 1488, - "source": 320, - "pc": [ - 2607 - ] - }, - { - "teal": 1489, - "source": 320, - "pc": [ - 2608, - 2609 - ] - }, - { - "teal": 1490, - "source": 320, - "pc": [ - 2610 - ] - }, - { - "teal": 1491, - "source": 320, - "pc": [ - 2611 - ] - }, - { - "teal": 1492, - "source": 320, - "pc": [ - 2612, - 2613 - ] - }, - { - "teal": 1493, - "source": 320, - "pc": [ - 2614 - ] - }, - { - "teal": 1494, - "source": 320, - "pc": [ - 2615 - ] - }, - { - "teal": 1495, - "source": 320, - "pc": [ - 2616, - 2617 - ] - }, - { - "teal": 1496, - "source": 320, - "pc": [ - 2618 - ] - }, - { - "teal": 1497, - "source": 320, - "pc": [ - 2619 - ] - }, - { - "teal": 1498, - "source": 320, - "pc": [ - 2620, - 2621 - ] - }, - { - "teal": 1499, - "source": 317, - "pc": [ - 2622 - ] - }, - { - "teal": 1504, - "source": 323, - "pc": [ - 2623, - 2624, - 2625 - ] - }, - { - "teal": 1505, - "source": 323, - "pc": [ - 2626 - ] - }, - { - "teal": 1506, - "source": 323, - "pc": [ - 2627 - ] - }, - { - "teal": 1510, - "source": 323, - "pc": [ - 2628, - 2629, - 2630 - ] - }, - { - "teal": 1514, - "source": 324, - "pc": [ - 2631 - ] - }, - { - "teal": 1515, - "source": 324, - "pc": [ - 2632 - ] - }, - { - "teal": 1516, - "source": 324, - "pc": [ - 2633 - ] - }, - { - "teal": 1517, - "source": 324, - "pc": [ - 2634 - ] - }, - { - "teal": 1521, - "source": 325, - "pc": [ - 2635, - 2636 - ] - }, - { - "teal": 1522, - "source": 325, - "pc": [ - 2637 - ] - }, - { - "teal": 1523, - "source": 325, - "pc": [ - 2638 - ] - }, - { - "teal": 1524, - "source": 325, - "pc": [ - 2639 - ] - }, - { - "teal": 1528, - "source": 326, - "pc": [ - 2640, - 2641 - ] - }, - { - "teal": 1529, - "source": 326, - "pc": [ - 2642 - ] - }, - { - "teal": 1530, - "source": 326, - "pc": [ - 2643 - ] - }, - { - "teal": 1531, - "source": 326, - "pc": [ - 2644 - ] - }, - { - "teal": 1532, - "source": 323, - "pc": [ - 2645 - ] - }, - { - "teal": 1537, - "source": 329, - "pc": [ - 2646, - 2647, - 2648 - ] - }, - { - "teal": 1538, - "source": 329, - "pc": [ - 2649 - ] - }, - { - "teal": 1539, - "source": 329, - "pc": [ - 2650 - ] - }, - { - "teal": 1543, - "source": 329, - "pc": [ - 2651, - 2652, - 2653 - ] - }, - { - "teal": 1547, - "source": 330, - "pc": [ - 2654 - ] - }, - { - "teal": 1550, - "source": 330, - "errorMessage": "this is false", - "pc": [ - 2655 - ] - }, - { - "teal": 1551, - "source": 329, - "pc": [ - 2656 - ] - }, - { - "teal": 1556, - "source": 333, - "pc": [ - 2657, - 2658, - 2659 - ] - }, - { - "teal": 1557, - "source": 333, - "pc": [ - 2660 - ] - }, - { - "teal": 1558, - "source": 333, - "pc": [ - 2661 - ] - }, - { - "teal": 1562, - "source": 333, - "pc": [ - 2662, - 2663, - 2664 - ] - }, - { - "teal": 1566, - "source": 334, - "pc": [ - 2665, - 2666 - ] - }, - { - "teal": 1567, - "source": 334, - "pc": [ - 2667 - ] - }, - { - "teal": 1568, - "source": 334, - "pc": [ - 2668 - ] - }, - { - "teal": 1572, - "source": 335, - "pc": [ - 2669, - 2670 - ] - }, - { - "teal": 1573, - "source": 335, - "pc": [ - 2671 - ] - }, - { - "teal": 1574, - "source": 335, - "pc": [ - 2672 - ] - }, - { - "teal": 1578, - "source": 336, - "pc": [ - 2673, - 2674 - ] - }, - { - "teal": 1579, - "source": 336, - "pc": [ - 2675 - ] - }, - { - "teal": 1580, - "source": 336, - "pc": [ - 2676 - ] - }, - { - "teal": 1584, - "source": 337, - "pc": [ - 2677, - 2678 - ] - }, - { - "teal": 1585, - "source": 337, - "pc": [ - 2679 - ] - }, - { - "teal": 1586, - "source": 337, - "pc": [ - 2680, - 2681 - ] - }, - { - "teal": 1587, - "source": 337, - "pc": [ - 2682 - ] - }, - { - "teal": 1591, - "source": 338, - "pc": [ - 2683, - 2684 - ] - }, - { - "teal": 1592, - "source": 338, - "pc": [ - 2685 - ] - }, - { - "teal": 1593, - "source": 338, - "pc": [ - 2686, - 2687 - ] - }, - { - "teal": 1594, - "source": 338, - "pc": [ - 2688 - ] - }, - { - "teal": 1595, - "source": 333, - "pc": [ - 2689 - ] - }, - { - "teal": 1600, - "source": 341, - "pc": [ - 2690, - 2691, - 2692 - ] - }, - { - "teal": 1601, - "source": 341, - "pc": [ - 2693 - ] - }, - { - "teal": 1602, - "source": 341, - "pc": [ - 2694 - ] - }, - { - "teal": 1606, - "source": 341, - "pc": [ - 2695, - 2696, - 2697 - ] - }, - { - "teal": 1609, - "source": 341, - "pc": [ - 2698 - ] - }, - { - "teal": 1610, - "source": 341, - "pc": [ - 2699 - ] - }, - { - "teal": 1614, - "source": 342, - "pc": [ - 2700 - ] - }, - { - "teal": 1615, - "source": 342, - "pc": [ - 2701 - ] - }, - { - "teal": 1616, - "source": 342, - "pc": [ - 2702, - 2703 - ] - }, - { - "teal": 1617, - "source": 342, - "pc": [ - 2704 - ] - }, - { - "teal": 1618, - "source": 342, - "pc": [ - 2705, - 2706 - ] - }, - { - "teal": 1619, - "source": 342, - "pc": [ - 2707 - ] - }, - { - "teal": 1620, - "source": 342, - "pc": [ - 2708 - ] - }, - { - "teal": 1621, - "source": 342, - "pc": [ - 2709, - 2710 - ] - }, - { - "teal": 1622, - "source": 342, - "pc": [ - 2711, - 2712 - ] - }, - { - "teal": 1623, - "source": 342, - "pc": [ - 2713, - 2714 - ] - }, - { - "teal": 1624, - "source": 342, - "pc": [ - 2715, - 2716 - ] - }, - { - "teal": 1625, - "source": 342, - "pc": [ - 2717 - ] - }, - { - "teal": 1629, - "source": 343, - "pc": [ - 2718 - ] - }, - { - "teal": 1630, - "source": 343, - "pc": [ - 2719 - ] - }, - { - "teal": 1631, - "source": 343, - "pc": [ - 2720, - 2721 - ] - }, - { - "teal": 1632, - "source": 343, - "pc": [ - 2722 - ] - }, - { - "teal": 1633, - "source": 343, - "pc": [ - 2723, - 2724 - ] - }, - { - "teal": 1634, - "source": 343, - "pc": [ - 2725 - ] - }, - { - "teal": 1635, - "source": 343, - "pc": [ - 2726 - ] - }, - { - "teal": 1636, - "source": 343, - "pc": [ - 2727, - 2728 - ] - }, - { - "teal": 1637, - "source": 343, - "pc": [ - 2729, - 2730 - ] - }, - { - "teal": 1638, - "source": 343, - "pc": [ - 2731, - 2732 - ] - }, - { - "teal": 1639, - "source": 343, - "pc": [ - 2733, - 2734 - ] - }, - { - "teal": 1640, - "source": 343, - "pc": [ - 2735 - ] - }, - { - "teal": 1644, - "source": 344, - "pc": [ - 2736 - ] - }, - { - "teal": 1645, - "source": 344, - "pc": [ - 2737 - ] - }, - { - "teal": 1646, - "source": 344, - "pc": [ - 2738, - 2739 - ] - }, - { - "teal": 1647, - "source": 344, - "pc": [ - 2740 - ] - }, - { - "teal": 1648, - "source": 344, - "pc": [ - 2741, - 2742 - ] - }, - { - "teal": 1649, - "source": 344, - "pc": [ - 2743 - ] - }, - { - "teal": 1650, - "source": 344, - "pc": [ - 2744 - ] - }, - { - "teal": 1651, - "source": 344, - "pc": [ - 2745, - 2746 - ] - }, - { - "teal": 1652, - "source": 344, - "pc": [ - 2747, - 2748 - ] - }, - { - "teal": 1653, - "source": 344, - "pc": [ - 2749, - 2750 - ] - }, - { - "teal": 1654, - "source": 344, - "pc": [ - 2751, - 2752 - ] - }, - { - "teal": 1655, - "source": 344, - "pc": [ - 2753 - ] - }, - { - "teal": 1659, - "source": 345, - "pc": [ - 2754 - ] - }, - { - "teal": 1660, - "source": 345, - "pc": [ - 2755 - ] - }, - { - "teal": 1661, - "source": 345, - "pc": [ - 2756, - 2757 - ] - }, - { - "teal": 1662, - "source": 345, - "pc": [ - 2758 - ] - }, - { - "teal": 1663, - "source": 345, - "pc": [ - 2759, - 2760 - ] - }, - { - "teal": 1664, - "source": 345, - "pc": [ - 2761 - ] - }, - { - "teal": 1665, - "source": 345, - "pc": [ - 2762 - ] - }, - { - "teal": 1666, - "source": 345, - "pc": [ - 2763, - 2764 - ] - }, - { - "teal": 1667, - "source": 345, - "pc": [ - 2765, - 2766 - ] - }, - { - "teal": 1668, - "source": 345, - "pc": [ - 2767, - 2768 - ] - }, - { - "teal": 1669, - "source": 345, - "pc": [ - 2769, - 2770 - ] - }, - { - "teal": 1670, - "source": 345, - "pc": [ - 2771 - ] - }, - { - "teal": 1674, - "source": 346, - "pc": [ - 2772 - ] - }, - { - "teal": 1675, - "source": 346, - "pc": [ - 2773 - ] - }, - { - "teal": 1676, - "source": 346, - "pc": [ - 2774, - 2775 - ] - }, - { - "teal": 1677, - "source": 346, - "pc": [ - 2776 - ] - }, - { - "teal": 1678, - "source": 346, - "pc": [ - 2777, - 2778 - ] - }, - { - "teal": 1679, - "source": 346, - "pc": [ - 2779 - ] - }, - { - "teal": 1680, - "source": 346, - "pc": [ - 2780 - ] - }, - { - "teal": 1681, - "source": 346, - "pc": [ - 2781, - 2782 - ] - }, - { - "teal": 1682, - "source": 346, - "pc": [ - 2783, - 2784 - ] - }, - { - "teal": 1683, - "source": 346, - "pc": [ - 2785, - 2786 - ] - }, - { - "teal": 1684, - "source": 346, - "pc": [ - 2787, - 2788 - ] - }, - { - "teal": 1685, - "source": 346, - "pc": [ - 2789 - ] - }, - { - "teal": 1689, - "source": 347, - "pc": [ - 2790 - ] - }, - { - "teal": 1690, - "source": 347, - "pc": [ - 2791 - ] - }, - { - "teal": 1691, - "source": 347, - "pc": [ - 2792, - 2793 - ] - }, - { - "teal": 1692, - "source": 347, - "pc": [ - 2794 - ] - }, - { - "teal": 1693, - "source": 347, - "pc": [ - 2795, - 2796 - ] - }, - { - "teal": 1694, - "source": 347, - "pc": [ - 2797 - ] - }, - { - "teal": 1695, - "source": 347, - "pc": [ - 2798 - ] - }, - { - "teal": 1696, - "source": 347, - "pc": [ - 2799, - 2800 - ] - }, - { - "teal": 1697, - "source": 347, - "pc": [ - 2801, - 2802 - ] - }, - { - "teal": 1698, - "source": 347, - "pc": [ - 2803, - 2804 - ] - }, - { - "teal": 1699, - "source": 347, - "pc": [ - 2805, - 2806 - ] - }, - { - "teal": 1700, - "source": 347, - "pc": [ - 2807 - ] - }, - { - "teal": 1704, - "source": 348, - "pc": [ - 2808 - ] - }, - { - "teal": 1705, - "source": 348, - "pc": [ - 2809 - ] - }, - { - "teal": 1706, - "source": 348, - "pc": [ - 2810, - 2811 - ] - }, - { - "teal": 1707, - "source": 348, - "pc": [ - 2812 - ] - }, - { - "teal": 1708, - "source": 348, - "pc": [ - 2813, - 2814 - ] - }, - { - "teal": 1709, - "source": 348, - "pc": [ - 2815 - ] - }, - { - "teal": 1710, - "source": 348, - "pc": [ - 2816 - ] - }, - { - "teal": 1711, - "source": 348, - "pc": [ - 2817, - 2818 - ] - }, - { - "teal": 1712, - "source": 348, - "pc": [ - 2819, - 2820 - ] - }, - { - "teal": 1713, - "source": 348, - "pc": [ - 2821, - 2822 - ] - }, - { - "teal": 1714, - "source": 348, - "pc": [ - 2823, - 2824 - ] - }, - { - "teal": 1715, - "source": 348, - "pc": [ - 2825 - ] - }, - { - "teal": 1719, - "source": 349, - "pc": [ - 2826 - ] - }, - { - "teal": 1720, - "source": 349, - "pc": [ - 2827 - ] - }, - { - "teal": 1721, - "source": 349, - "pc": [ - 2828, - 2829 - ] - }, - { - "teal": 1722, - "source": 349, - "pc": [ - 2830 - ] - }, - { - "teal": 1723, - "source": 349, - "pc": [ - 2831, - 2832 - ] - }, - { - "teal": 1724, - "source": 349, - "pc": [ - 2833 - ] - }, - { - "teal": 1725, - "source": 349, - "pc": [ - 2834 - ] - }, - { - "teal": 1726, - "source": 349, - "pc": [ - 2835, - 2836 - ] - }, - { - "teal": 1727, - "source": 349, - "pc": [ - 2837, - 2838 - ] - }, - { - "teal": 1728, - "source": 349, - "pc": [ - 2839, - 2840 - ] - }, - { - "teal": 1729, - "source": 349, - "pc": [ - 2841, - 2842 - ] - }, - { - "teal": 1730, - "source": 349, - "pc": [ - 2843 - ] - }, - { - "teal": 1734, - "source": 350, - "pc": [ - 2844 - ] - }, - { - "teal": 1735, - "source": 350, - "pc": [ - 2845 - ] - }, - { - "teal": 1736, - "source": 350, - "pc": [ - 2846, - 2847 - ] - }, - { - "teal": 1737, - "source": 350, - "pc": [ - 2848 - ] - }, - { - "teal": 1738, - "source": 350, - "pc": [ - 2849, - 2850 - ] - }, - { - "teal": 1739, - "source": 350, - "pc": [ - 2851 - ] - }, - { - "teal": 1740, - "source": 350, - "pc": [ - 2852 - ] - }, - { - "teal": 1741, - "source": 350, - "pc": [ - 2853, - 2854 - ] - }, - { - "teal": 1742, - "source": 350, - "pc": [ - 2855, - 2856 - ] - }, - { - "teal": 1743, - "source": 350, - "pc": [ - 2857, - 2858 - ] - }, - { - "teal": 1744, - "source": 350, - "pc": [ - 2859, - 2860 - ] - }, - { - "teal": 1745, - "source": 350, - "pc": [ - 2861 - ] - }, - { - "teal": 1749, - "source": 352, - "pc": [ - 2862, - 2863 - ] - }, - { - "teal": 1750, - "source": 352, - "pc": [ - 2864, - 2865, - 2866, - 2867, - 2868, - 2869, - 2870, - 2871, - 2872, - 2873, - 2874, - 2875, - 2876, - 2877, - 2878, - 2879, - 2880, - 2881, - 2882, - 2883, - 2884, - 2885, - 2886, - 2887, - 2888, - 2889, - 2890, - 2891, - 2892, - 2893, - 2894, - 2895, - 2896, - 2897, - 2898, - 2899, - 2900, - 2901, - 2902, - 2903, - 2904, - 2905, - 2906, - 2907, - 2908, - 2909, - 2910, - 2911, - 2912, - 2913, - 2914, - 2915, - 2916, - 2917, - 2918, - 2919, - 2920, - 2921, - 2922, - 2923, - 2924, - 2925, - 2926, - 2927, - 2928, - 2929, - 2930, - 2931, - 2932, - 2933, - 2934, - 2935, - 2936, - 2937, - 2938, - 2939, - 2940, - 2941, - 2942, - 2943, - 2944, - 2945 - ] - }, - { - "teal": 1751, - "source": 352, - "pc": [ - 2946, - 2947 - ] - }, - { - "teal": 1752, - "source": 352, - "pc": [ - 2948, - 2949 - ] - }, - { - "teal": 1753, - "source": 352, - "pc": [ - 2950, - 2951 - ] - }, - { - "teal": 1754, - "source": 352, - "pc": [ - 2952, - 2953 - ] - }, - { - "teal": 1758, - "source": 353, - "pc": [ - 2954, - 2955 - ] - }, - { - "teal": 1759, - "source": 353, - "pc": [ - 2956 - ] - }, - { - "teal": 1760, - "source": 353, - "pc": [ - 2957 - ] - }, - { - "teal": 1764, - "source": 354, - "pc": [ - 2958, - 2959 - ] - }, - { - "teal": 1765, - "source": 354, - "pc": [ - 2960 - ] - }, - { - "teal": 1766, - "source": 341, - "pc": [ - 2961 - ] - }, - { - "teal": 1771, - "source": 357, - "pc": [ - 2962, - 2963, - 2964 - ] - }, - { - "teal": 1772, - "source": 357, - "pc": [ - 2965 - ] - }, - { - "teal": 1773, - "source": 357, - "pc": [ - 2966 - ] - }, - { - "teal": 1777, - "source": 357, - "pc": [ - 2967, - 2968, - 2969 - ] - }, - { - "teal": 1780, - "source": 357, - "pc": [ - 2970 - ] - }, - { - "teal": 1784, - "source": 358, - "pc": [ - 2971 - ] - }, - { - "teal": 1785, - "source": 358, - "pc": [ - 2972 - ] - }, - { - "teal": 1786, - "source": 358, - "pc": [ - 2973, - 2974 - ] - }, - { - "teal": 1790, - "source": 359, - "pc": [ - 2975 - ] - }, - { - "teal": 1791, - "source": 359, - "pc": [ - 2976 - ] - }, - { - "teal": 1792, - "source": 359, - "pc": [ - 2977, - 2978 - ] - }, - { - "teal": 1796, - "source": 360, - "pc": [ - 2979, - 2980 - ] - }, - { - "teal": 1797, - "source": 360, - "pc": [ - 2981, - 2982 - ] - }, - { - "teal": 1801, - "source": 361, - "pc": [ - 2983 - ] - }, - { - "teal": 1802, - "source": 361, - "pc": [ - 2984, - 2985 - ] - }, - { - "teal": 1803, - "source": 361, - "pc": [ - 2986, - 2987 - ] - }, - { - "teal": 1807, - "source": 362, - "pc": [ - 2988 - ] - }, - { - "teal": 1808, - "source": 362, - "pc": [ - 2989, - 2990 - ] - }, - { - "teal": 1812, - "source": 363, - "pc": [ - 2991 - ] - }, - { - "teal": 1813, - "source": 363, - "pc": [ - 2992, - 2993 - ] - }, - { - "teal": 1817, - "source": 364, - "pc": [ - 2994 - ] - }, - { - "teal": 1818, - "source": 364, - "pc": [ - 2995 - ] - }, - { - "teal": 1819, - "source": 364, - "pc": [ - 2996, - 2997 - ] - }, - { - "teal": 1820, - "source": 357, - "pc": [ - 2998 - ] - }, - { - "teal": 1825, - "source": 367, - "pc": [ - 2999, - 3000, - 3001 - ] - }, - { - "teal": 1826, - "source": 367, - "pc": [ - 3002 - ] - }, - { - "teal": 1827, - "source": 367, - "pc": [ - 3003 - ] - }, - { - "teal": 1831, - "source": 367, - "pc": [ - 3004, - 3005, - 3006 - ] - }, - { - "teal": 1834, - "source": 367, - "pc": [ - 3007 - ] - }, - { - "teal": 1838, - "source": 368, - "pc": [ - 3008, - 3009, - 3010 - ] - }, - { - "teal": 1839, - "source": 368, - "pc": [ - 3011 - ] - }, - { - "teal": 1843, - "source": 370, - "pc": [ - 3012 - ] - }, - { - "teal": 1844, - "source": 370, - "pc": [ - 3013, - 3014 - ] - }, - { - "teal": 1848, - "source": 372, - "pc": [ - 3015, - 3016, - 3017 - ] - }, - { - "teal": 1849, - "source": 372, - "pc": [ - 3018 - ] - }, - { - "teal": 1850, - "source": 367, - "pc": [ - 3019 - ] - }, - { - "teal": 1855, - "source": 375, - "pc": [ - 3020, - 3021, - 3022 - ] - }, - { - "teal": 1856, - "source": 375, - "pc": [ - 3023 - ] - }, - { - "teal": 1857, - "source": 375, - "pc": [ - 3024 - ] - }, - { - "teal": 1861, - "source": 375, - "pc": [ - 3025, - 3026, - 3027 - ] - }, - { - "teal": 1865, - "source": 376, - "pc": [ - 3028 - ] - }, - { - "teal": 1866, - "source": 376, - "pc": [ - 3029 - ] - }, - { - "teal": 1867, - "source": 376, - "pc": [ - 3030 - ] - }, - { - "teal": 1868, - "source": 376, - "pc": [ - 3031 - ] - }, - { - "teal": 1869, - "source": 376, - "pc": [ - 3032 - ] - }, - { - "teal": 1873, - "source": 377, - "pc": [ - 3033 - ] - }, - { - "teal": 1874, - "source": 377, - "pc": [ - 3034 - ] - }, - { - "teal": 1875, - "source": 377, - "pc": [ - 3035 - ] - }, - { - "teal": 1879, - "source": 378, - "pc": [ - 3036 - ] - }, - { - "teal": 1880, - "source": 378, - "pc": [ - 3037 - ] - }, - { - "teal": 1881, - "source": 378, - "pc": [ - 3038 - ] - }, - { - "teal": 1885, - "source": 379, - "pc": [ - 3039 - ] - }, - { - "teal": 1886, - "source": 379, - "pc": [ - 3040 - ] - }, - { - "teal": 1887, - "source": 379, - "pc": [ - 3041 - ] - }, - { - "teal": 1888, - "source": 379, - "pc": [ - 3042 - ] - }, - { - "teal": 1889, - "source": 375, - "pc": [ - 3043 - ] - }, - { - "teal": 1894, - "source": 382, - "pc": [ - 3044, - 3045, - 3046 - ] - }, - { - "teal": 1895, - "source": 382, - "pc": [ - 3047 - ] - }, - { - "teal": 1896, - "source": 382, - "pc": [ - 3048 - ] - }, - { - "teal": 1900, - "source": 382, - "pc": [ - 3049, - 3050, - 3051 - ] - }, - { - "teal": 1904, - "source": 383, - "pc": [ - 3052, - 3053 - ] - }, - { - "teal": 1905, - "source": 383, - "pc": [ - 3054 - ] - }, - { - "teal": 1906, - "source": 383, - "pc": [ - 3055 - ] - }, - { - "teal": 1907, - "source": 383, - "pc": [ - 3056 - ] - }, - { - "teal": 1908, - "source": 383, - "pc": [ - 3057 - ] - }, - { - "teal": 1912, - "source": 384, - "pc": [ - 3058, - 3059 - ] - }, - { - "teal": 1913, - "source": 384, - "pc": [ - 3060 - ] - }, - { - "teal": 1914, - "source": 384, - "pc": [ - 3061 - ] - }, - { - "teal": 1915, - "source": 382, - "pc": [ - 3062 - ] - }, - { - "teal": 1920, - "source": 387, - "pc": [ - 3063, - 3064, - 3065 - ] - }, - { - "teal": 1921, - "source": 387, - "pc": [ - 3066 - ] - }, - { - "teal": 1922, - "source": 387, - "pc": [ - 3067 - ] - }, - { - "teal": 1926, - "source": 387, - "pc": [ - 3068, - 3069, - 3070 - ] - }, - { - "teal": 1930, - "source": 388, - "pc": [ - 3071, - 3072 - ] - }, - { - "teal": 1931, - "source": 388, - "pc": [ - 3073 - ] - }, - { - "teal": 1932, - "source": 388, - "pc": [ - 3074 - ] - }, - { - "teal": 1933, - "source": 388, - "pc": [ - 3075, - 3076 - ] - }, - { - "teal": 1934, - "source": 388, - "pc": [ - 3077 - ] - }, - { - "teal": 1938, - "source": 389, - "pc": [ - 3078, - 3079 - ] - }, - { - "teal": 1939, - "source": 389, - "pc": [ - 3080 - ] - }, - { - "teal": 1940, - "source": 389, - "pc": [ - 3081 - ] - }, - { - "teal": 1941, - "source": 389, - "pc": [ - 3082, - 3083 - ] - }, - { - "teal": 1942, - "source": 389, - "pc": [ - 3084 - ] - }, - { - "teal": 1943, - "source": 387, - "pc": [ - 3085 - ] - }, - { - "teal": 1948, - "source": 392, - "pc": [ - 3086, - 3087, - 3088 - ] - }, - { - "teal": 1949, - "source": 392, - "pc": [ - 3089 - ] - }, - { - "teal": 1950, - "source": 392, - "pc": [ - 3090 - ] - }, - { - "teal": 1954, - "source": 392, - "pc": [ - 3091, - 3092, - 3093 - ] - }, - { - "teal": 1958, - "source": 393, - "pc": [ - 3094 - ] - }, - { - "teal": 1959, - "source": 393, - "pc": [ - 3095, - 3096 - ] - }, - { - "teal": 1960, - "source": 393, - "pc": [ - 3097 - ] - }, - { - "teal": 1961, - "source": 392, - "pc": [ - 3098 - ] - }, - { - "teal": 1966, - "source": 396, - "pc": [ - 3099, - 3100, - 3101 - ] - }, - { - "teal": 1967, - "source": 396, - "pc": [ - 3102 - ] - }, - { - "teal": 1968, - "source": 396, - "pc": [ - 3103 - ] - }, - { - "teal": 1972, - "source": 396, - "pc": [ - 3104, - 3105, - 3106 - ] - }, - { - "teal": 1976, - "source": 397, - "pc": [ - 3107 - ] - }, - { - "teal": 1977, - "source": 397, - "pc": [ - 3108 - ] - }, - { - "teal": 1978, - "source": 397, - "pc": [ - 3109, - 3110 - ] - }, - { - "teal": 1979, - "source": 397, - "pc": [ - 3111 - ] - }, - { - "teal": 1983, - "source": 398, - "pc": [ - 3112 - ] - }, - { - "teal": 1984, - "source": 398, - "pc": [ - 3113 - ] - }, - { - "teal": 1985, - "source": 398, - "pc": [ - 3114, - 3115 - ] - }, - { - "teal": 1986, - "source": 398, - "pc": [ - 3116 - ] - }, - { - "teal": 1990, - "source": 399, - "pc": [ - 3117 - ] - }, - { - "teal": 1991, - "source": 399, - "pc": [ - 3118 - ] - }, - { - "teal": 1992, - "source": 399, - "pc": [ - 3119, - 3120 - ] - }, - { - "teal": 1993, - "source": 399, - "pc": [ - 3121 - ] - }, - { - "teal": 1994, - "source": 396, - "pc": [ - 3122 - ] - }, - { - "teal": 1999, - "source": 402, - "pc": [ - 3123, - 3124, - 3125 - ] - }, - { - "teal": 2000, - "source": 402, - "pc": [ - 3126 - ] - }, - { - "teal": 2001, - "source": 402, - "pc": [ - 3127 - ] - }, - { - "teal": 2005, - "source": 402, - "pc": [ - 3128, - 3129, - 3130 - ] - }, - { - "teal": 2009, - "source": 403, - "pc": [ - 3131, - 3132 - ] - }, - { - "teal": 2010, - "source": 403, - "pc": [ - 3133 - ] - }, - { - "teal": 2014, - "source": 404, - "pc": [ - 3134 - ] - }, - { - "teal": 2015, - "source": 404, - "pc": [ - 3135 - ] - }, - { - "teal": 2016, - "source": 402, - "pc": [ - 3136 - ] - }, - { - "teal": 2021, - "source": 407, - "pc": [ - 3137, - 3138, - 3139 - ] - }, - { - "teal": 2022, - "source": 407, - "pc": [ - 3140 - ] - }, - { - "teal": 2023, - "source": 407, - "pc": [ - 3141 - ] - }, - { - "teal": 2027, - "source": 407, - "pc": [ - 3142, - 3143, - 3144 - ] - }, - { - "teal": 2031, - "source": 10, - "pc": [ - 3145, - 3146, - 3147 - ] - }, - { - "teal": 2032, - "source": 408, - "pc": [ - 3148 - ] - }, - { - "teal": 2033, - "source": 407, - "pc": [ - 3149 - ] - }, - { - "teal": 2038, - "source": 411, - "pc": [ - 3150, - 3151, - 3152 - ] - }, - { - "teal": 2039, - "source": 411, - "pc": [ - 3153 - ] - }, - { - "teal": 2040, - "source": 411, - "pc": [ - 3154 - ] - }, - { - "teal": 2044, - "source": 411, - "pc": [ - 3155, - 3156, - 3157 - ] - }, - { - "teal": 2048, - "source": 11, - "pc": [ - 3158, - 3159, - 3160, - 3161 - ] - }, - { - "teal": 2049, - "source": 412, - "pc": [ - 3162 - ] - }, - { - "teal": 2050, - "source": 411, - "pc": [ - 3163 - ] - }, - { - "teal": 2055, - "source": 415, - "pc": [ - 3164, - 3165, - 3166 - ] - }, - { - "teal": 2056, - "source": 415, - "pc": [ - 3167 - ] - }, - { - "teal": 2057, - "source": 415, - "pc": [ - 3168 - ] - }, - { - "teal": 2061, - "source": 415, - "pc": [ - 3169, - 3170, - 3171 - ] - }, - { - "teal": 2065, - "source": 416, - "pc": [ - 3172 - ] - }, - { - "teal": 2066, - "source": 416, - "pc": [ - 3173 - ] - }, - { - "teal": 2067, - "source": 416, - "pc": [ - 3174 - ] - }, - { - "teal": 2068, - "source": 416, - "pc": [ - 3175 - ] - }, - { - "teal": 2072, - "source": 417, - "pc": [ - 3176 - ] - }, - { - "teal": 2073, - "source": 417, - "pc": [ - 3177 - ] - }, - { - "teal": 2074, - "source": 417, - "pc": [ - 3178 - ] - }, - { - "teal": 2075, - "source": 417, - "pc": [ - 3179 - ] - }, - { - "teal": 2079, - "source": 418, - "pc": [ - 3180, - 3181 - ] - }, - { - "teal": 2080, - "source": 418, - "pc": [ - 3182 - ] - }, - { - "teal": 2081, - "source": 418, - "pc": [ - 3183 - ] - }, - { - "teal": 2082, - "source": 418, - "pc": [ - 3184 - ] - }, - { - "teal": 2086, - "source": 419, - "pc": [ - 3185, - 3186 - ] - }, - { - "teal": 2087, - "source": 419, - "pc": [ - 3187 - ] - }, - { - "teal": 2088, - "source": 419, - "pc": [ - 3188 - ] - }, - { - "teal": 2089, - "source": 419, - "pc": [ - 3189 - ] - }, - { - "teal": 2090, - "source": 415, - "pc": [ - 3190 - ] - }, - { - "teal": 2095, - "source": 422, - "pc": [ - 3191 - ] - }, - { - "teal": 2098, - "source": 422, - "pc": [ - 3192, - 3193, - 3194 - ] - }, - { - "teal": 2099, - "source": 422, - "pc": [ - 3195, - 3196, - 3197 - ] - }, - { - "teal": 2100, - "source": 422, - "pc": [ - 3198 - ] - }, - { - "teal": 2101, - "source": 422, - "pc": [ - 3199, - 3200 - ] - }, - { - "teal": 2102, - "source": 422, - "pc": [ - 3201 - ] - }, - { - "teal": 2103, - "source": 422, - "pc": [ - 3202 - ] - }, - { - "teal": 2104, - "source": 422, - "pc": [ - 3203 - ] - }, - { - "teal": 2105, - "source": 422, - "pc": [ - 3204 - ] - }, - { - "teal": 2106, - "source": 422, - "pc": [ - 3205 - ] - }, - { - "teal": 2110, - "source": 422, - "pc": [ - 3206, - 3207, - 3208 - ] - }, - { - "teal": 2114, - "source": 423, - "pc": [ - 3209, - 3210 - ] - }, - { - "teal": 2115, - "source": 423, - "pc": [ - 3211, - 3212 - ] - }, - { - "teal": 2116, - "source": 423, - "pc": [ - 3213 - ] - }, - { - "teal": 2117, - "source": 423, - "pc": [ - 3214 - ] - }, - { - "teal": 2118, - "source": 423, - "pc": [ - 3215, - 3216, - 3217 - ] - }, - { - "teal": 2119, - "source": 423, - "pc": [ - 3218, - 3219 - ] - }, - { - "teal": 2120, - "source": 423, - "pc": [ - 3220, - 3221 - ] - }, - { - "teal": 2121, - "source": 423, - "pc": [ - 3222 - ] - }, - { - "teal": 2122, - "source": 423, - "pc": [ - 3223 - ] - }, - { - "teal": 2125, - "source": 422, - "pc": [ - 3224 - ] - }, - { - "teal": 2130, - "source": 427, - "pc": [ - 3225, - 3226 - ] - }, - { - "teal": 2131, - "source": 427, - "pc": [ - 3227 - ] - }, - { - "teal": 2132, - "source": 427, - "pc": [ - 3228 - ] - }, - { - "teal": 2133, - "source": 427, - "pc": [ - 3229 - ] - }, - { - "teal": 2134, - "source": 427, - "pc": [ - 3230, - 3231 - ] - }, - { - "teal": 2135, - "source": 427, - "pc": [ - 3232 - ] - }, - { - "teal": 2136, - "source": 427, - "pc": [ - 3233 - ] - }, - { - "teal": 2139, - "source": 427, - "errorMessage": "argument 0 (_pay1) for txnArgsMethod must be a pay transaction", - "pc": [ - 3234 - ] - }, - { - "teal": 2142, - "source": 427, - "pc": [ - 3235, - 3236, - 3237 - ] - }, - { - "teal": 2143, - "source": 427, - "pc": [ - 3238 - ] - }, - { - "teal": 2144, - "source": 427, - "pc": [ - 3239 - ] - }, - { - "teal": 2148, - "source": 427, - "pc": [ - 3240, - 3241, - 3242 - ] - }, - { - "teal": 2149, - "source": 427, - "pc": [ - 3243 - ] - }, - { - "teal": 2154, - "source": 429, - "pc": [ - 3244, - 3245, - 3246 - ] - }, - { - "teal": 2155, - "source": 429, - "pc": [ - 3247 - ] - }, - { - "teal": 2156, - "source": 429, - "pc": [ - 3248 - ] - }, - { - "teal": 2160, - "source": 429, - "pc": [ - 3249, - 3250, - 3251 - ] - }, - { - "teal": 2166, - "source": 431, - "pc": [ - 3252 - ] - }, - { - "teal": 2167, - "source": 431, - "pc": [ - 3253 - ] - }, - { - "teal": 2168, - "source": 431, - "pc": [ - 3254, - 3255 - ] - }, - { - "teal": 2172, - "source": 431, - "pc": [ - 3256, - 3257 - ] - }, - { - "teal": 2173, - "source": 431, - "pc": [ - 3258, - 3259 - ] - }, - { - "teal": 2177, - "source": 431, - "pc": [ - 3260 - ] - }, - { - "teal": 2178, - "source": 431, - "pc": [ - 3261, - 3262 - ] - }, - { - "teal": 2181, - "source": 431, - "pc": [ - 3263 - ] - }, - { - "teal": 2182, - "source": 431, - "pc": [ - 3264, - 3265 - ] - }, - { - "teal": 2183, - "source": 430, - "pc": [ - 3266 - ] - }, - { - "teal": 2184, - "source": 430, - "pc": [ - 3267 - ] - }, - { - "teal": 2185, - "source": 430, - "pc": [ - 3268, - 3269 - ] - }, - { - "teal": 2186, - "source": 430, - "pc": [ - 3270, - 3271 - ] - }, - { - "teal": 2187, - "source": 430, - "pc": [ - 3272, - 3273 - ] - }, - { - "teal": 2192, - "source": 430, - "pc": [ - 3274 - ] - }, - { - "teal": 2193, - "source": 430, - "pc": [ - 3275, - 3276 - ] - }, - { - "teal": 2196, - "source": 430, - "pc": [ - 3277 - ] - }, - { - "teal": 2197, - "source": 429, - "pc": [ - 3278 - ] - }, - { - "teal": 2202, - "source": 435, - "pc": [ - 3279, - 3280, - 3281 - ] - }, - { - "teal": 2203, - "source": 435, - "pc": [ - 3282 - ] - }, - { - "teal": 2204, - "source": 435, - "pc": [ - 3283 - ] - }, - { - "teal": 2205, - "source": 435, - "pc": [ - 3284, - 3285 - ] - }, - { - "teal": 2206, - "source": 435, - "pc": [ - 3286 - ] - }, - { - "teal": 2209, - "source": 435, - "errorMessage": "argument 0 (x) for staticValueLen must be a uint256", - "pc": [ - 3287 - ] - }, - { - "teal": 2212, - "source": 435, - "pc": [ - 3288, - 3289, - 3290 - ] - }, - { - "teal": 2213, - "source": 435, - "pc": [ - 3291 - ] - }, - { - "teal": 2214, - "source": 435, - "pc": [ - 3292 - ] - }, - { - "teal": 2218, - "source": 435, - "pc": [ - 3293, - 3294, - 3295 - ] - }, - { - "teal": 2222, - "source": 436, - "pc": [ - 3296, - 3297 - ] - }, - { - "teal": 2223, - "source": 436, - "pc": [ - 3298 - ] - }, - { - "teal": 2224, - "source": 435, - "pc": [ - 3299 - ] - }, - { - "teal": 2229, - "source": 439, - "pc": [ - 3300, - 3301, - 3302 - ] - }, - { - "teal": 2230, - "source": 439, - "pc": [ - 3303 - ] - }, - { - "teal": 2231, - "source": 439, - "pc": [ - 3304 - ] - }, - { - "teal": 2235, - "source": 439, - "pc": [ - 3305, - 3306, - 3307 - ] - }, - { - "teal": 2239, - "source": 440, - "pc": [ - 3308, - 3309 - ] - }, - { - "teal": 2240, - "source": 440, - "pc": [ - 3310 - ] - }, - { - "teal": 2241, - "source": 439, - "pc": [ - 3311 - ] - }, - { - "teal": 2246, - "source": 443, - "pc": [ - 3312, - 3313, - 3314 - ] - }, - { - "teal": 2247, - "source": 443, - "pc": [ - 3315 - ] - }, - { - "teal": 2248, - "source": 443, - "pc": [ - 3316 - ] - }, - { - "teal": 2252, - "source": 443, - "pc": [ - 3317, - 3318, - 3319 - ] - }, - { - "teal": 2256, - "source": 444, - "pc": [ - 3320 - ] - }, - { - "teal": 2257, - "source": 444, - "pc": [ - 3321, - 3322 - ] - }, - { - "teal": 2258, - "source": 444, - "pc": [ - 3323 - ] - }, - { - "teal": 2262, - "source": 445, - "pc": [ - 3324 - ] - }, - { - "teal": 2263, - "source": 445, - "pc": [ - 3325 - ] - }, - { - "teal": 2264, - "source": 445, - "pc": [ - 3326, - 3327 - ] - }, - { - "teal": 2265, - "source": 445, - "pc": [ - 3328 - ] - }, - { - "teal": 2266, - "source": 445, - "pc": [ - 3329 - ] - }, - { - "teal": 2267, - "source": 443, - "pc": [ - 3330 - ] - }, - { - "teal": 2272, - "source": 448, - "pc": [ - 3331, - 3332, - 3333 - ] - }, - { - "teal": 2273, - "source": 448, - "pc": [ - 3334 - ] - }, - { - "teal": 2274, - "source": 448, - "pc": [ - 3335 - ] - }, - { - "teal": 2278, - "source": 448, - "pc": [ - 3336, - 3337, - 3338 - ] - }, - { - "teal": 2282, - "source": 449, - "pc": [ - 3339, - 3340 - ] - }, - { - "teal": 2283, - "source": 449, - "pc": [ - 3341, - 3342 - ] - }, - { - "teal": 2287, - "source": 450, - "pc": [ - 3343, - 3344 - ] - }, - { - "teal": 2288, - "source": 450, - "pc": [ - 3345 - ] - }, - { - "teal": 2289, - "source": 450, - "pc": [ - 3346 - ] - }, - { - "teal": 2290, - "source": 450, - "pc": [ - 3347, - 3348 - ] - }, - { - "teal": 2294, - "source": 451, - "pc": [ - 3349, - 3350 - ] - }, - { - "teal": 2295, - "source": 451, - "pc": [ - 3351, - 3352 - ] - }, - { - "teal": 2296, - "source": 451, - "pc": [ - 3353 - ] - }, - { - "teal": 2297, - "source": 451, - "pc": [ - 3354 - ] - }, - { - "teal": 2298, - "source": 448, - "pc": [ - 3355 - ] - }, - { - "teal": 2303, - "source": 454, - "pc": [ - 3356, - 3357, - 3358 - ] - }, - { - "teal": 2304, - "source": 454, - "pc": [ - 3359 - ] - }, - { - "teal": 2305, - "source": 454, - "pc": [ - 3360 - ] - }, - { - "teal": 2309, - "source": 454, - "pc": [ - 3361, - 3362, - 3363 - ] - }, - { - "teal": 2313, - "source": 455, - "pc": [ - 3364 - ] - }, - { - "teal": 2314, - "source": 455, - "pc": [ - 3365, - 3366 - ] - }, - { - "teal": 2315, - "source": 455, - "pc": [ - 3367 - ] - }, - { - "teal": 2319, - "source": 456, - "pc": [ - 3368 - ] - }, - { - "teal": 2320, - "source": 456, - "pc": [ - 3369 - ] - }, - { - "teal": 2321, - "source": 456, - "pc": [ - 3370 - ] - }, - { - "teal": 2322, - "source": 456, - "pc": [ - 3371 - ] - }, - { - "teal": 2323, - "source": 456, - "pc": [ - 3372 - ] - }, - { - "teal": 2324, - "source": 456, - "pc": [ - 3373 - ] - }, - { - "teal": 2325, - "source": 456, - "pc": [ - 3374 - ] - }, - { - "teal": 2329, - "source": 457, - "pc": [ - 3375 - ] - }, - { - "teal": 2330, - "source": 457, - "pc": [ - 3376 - ] - }, - { - "teal": 2331, - "source": 457, - "pc": [ - 3377, - 3378 - ] - }, - { - "teal": 2332, - "source": 457, - "pc": [ - 3379 - ] - }, - { - "teal": 2333, - "source": 457, - "pc": [ - 3380 - ] - }, - { - "teal": 2334, - "source": 454, - "pc": [ - 3381 - ] - }, - { - "teal": 2339, - "source": 460, - "pc": [ - 3382, - 3383, - 3384 - ] - }, - { - "teal": 2340, - "source": 460, - "pc": [ - 3385 - ] - }, - { - "teal": 2341, - "source": 460, - "pc": [ - 3386 - ] - }, - { - "teal": 2345, - "source": 460, - "pc": [ - 3387, - 3388, - 3389 - ] - }, - { - "teal": 2348, - "source": 460, - "pc": [ - 3390 - ] - }, - { - "teal": 2352, - "source": 461, - "pc": [ - 3391, - 3392 - ] - }, - { - "teal": 2353, - "source": 461, - "pc": [ - 3393, - 3394 - ] - }, - { - "teal": 2357, - "source": 462, - "pc": [ - 3395, - 3396 - ] - }, - { - "teal": 2358, - "source": 462, - "pc": [ - 3397, - 3398 - ] - }, - { - "teal": 2359, - "source": 462, - "pc": [ - 3399 - ] - }, - { - "teal": 2360, - "source": 462, - "pc": [ - 3400 - ] - }, - { - "teal": 2361, - "source": 460, - "pc": [ - 3401 - ] - }, - { - "teal": 2366, - "source": 465, - "pc": [ - 3402 - ] - }, - { - "teal": 2369, - "source": 465, - "pc": [ - 3403, - 3404, - 3405 - ] - }, - { - "teal": 2370, - "source": 465, - "pc": [ - 3406 - ] - }, - { - "teal": 2373, - "source": 465, - "pc": [ - 3407, - 3408, - 3409 - ] - }, - { - "teal": 2374, - "source": 465, - "pc": [ - 3410 - ] - }, - { - "teal": 2375, - "source": 465, - "pc": [ - 3411 - ] - }, - { - "teal": 2376, - "source": 465, - "pc": [ - 3412 - ] - }, - { - "teal": 2377, - "source": 465, - "pc": [ - 3413 - ] - }, - { - "teal": 2378, - "source": 465, - "pc": [ - 3414 - ] - }, - { - "teal": 2382, - "source": 465, - "pc": [ - 3415, - 3416, - 3417 - ] - }, - { - "teal": 2385, - "source": 465, - "pc": [ - 3418 - ] - }, - { - "teal": 2390, - "source": 466, - "pc": [ - 3419, - 3420 - ] - }, - { - "teal": 2391, - "source": 466, - "pc": [ - 3421 - ] - }, - { - "teal": 2392, - "source": 466, - "pc": [ - 3422 - ] - }, - { - "teal": 2393, - "source": 466, - "pc": [ - 3423, - 3424, - 3425 - ] - }, - { - "teal": 2398, - "source": 467, - "pc": [ - 3426 - ] - }, - { - "teal": 2399, - "source": 467, - "pc": [ - 3427, - 3428, - 3429 - ] - }, - { - "teal": 2404, - "source": 469, - "pc": [ - 3430, - 3431 - ] - }, - { - "teal": 2405, - "source": 469, - "pc": [ - 3432 - ] - }, - { - "teal": 2406, - "source": 469, - "pc": [ - 3433 - ] - }, - { - "teal": 2407, - "source": 469, - "pc": [ - 3434, - 3435 - ] - }, - { - "teal": 2411, - "source": 470, - "pc": [ - 3436, - 3437 - ] - }, - { - "teal": 2415, - "source": 465, - "pc": [ - 3438, - 3439 - ] - }, - { - "teal": 2416, - "source": 465, - "pc": [ - 3440 - ] - }, - { - "teal": 2421, - "source": 473, - "pc": [ - 3441, - 3442, - 3443 - ] - }, - { - "teal": 2422, - "source": 473, - "pc": [ - 3444 - ] - }, - { - "teal": 2423, - "source": 473, - "pc": [ - 3445 - ] - }, - { - "teal": 2427, - "source": 473, - "pc": [ - 3446, - 3447, - 3448 - ] - }, - { - "teal": 2434, - "source": 474, - "pc": [ - 3449 - ] - }, - { - "teal": 2435, - "source": 474, - "pc": [ - 3450 - ] - }, - { - "teal": 2436, - "source": 474, - "pc": [ - 3451, - 3452 - ] - }, - { - "teal": 2437, - "source": 475, - "pc": [ - 3453, - 3454, - 3455, - 3456, - 3457, - 3458 - ] - }, - { - "teal": 2438, - "source": 475, - "pc": [ - 3459, - 3460 - ] - }, - { - "teal": 2442, - "source": 476, - "pc": [ - 3461 - ] - }, - { - "teal": 2443, - "source": 476, - "pc": [ - 3462, - 3463 - ] - }, - { - "teal": 2444, - "source": 476, - "pc": [ - 3464, - 3465, - 3466, - 3467, - 3468, - 3469, - 3470, - 3471, - 3472, - 3473 - ] - }, - { - "teal": 2445, - "source": 476, - "pc": [ - 3474, - 3475 - ] - }, - { - "teal": 2448, - "source": 474, - "pc": [ - 3476 - ] - }, - { - "teal": 2449, - "source": 474, - "pc": [ - 3477, - 3478 - ] - }, - { - "teal": 2452, - "source": 474, - "pc": [ - 3479 - ] - }, - { - "teal": 2453, - "source": 473, - "pc": [ - 3480 - ] - }, - { - "teal": 2458, - "source": 484, - "pc": [ - 3481, - 3482, - 3483 - ] - }, - { - "teal": 2459, - "source": 484, - "pc": [ - 3484 - ] - }, - { - "teal": 2460, - "source": 484, - "pc": [ - 3485 - ] - }, - { - "teal": 2464, - "source": 484, - "pc": [ - 3486, - 3487, - 3488 - ] - }, - { - "teal": 2471, - "source": 485, - "pc": [ - 3489 - ] - }, - { - "teal": 2472, - "source": 485, - "pc": [ - 3490 - ] - }, - { - "teal": 2473, - "source": 485, - "pc": [ - 3491, - 3492 - ] - }, - { - "teal": 2477, - "source": 486, - "pc": [ - 3493, - 3494 - ] - }, - { - "teal": 2478, - "source": 486, - "pc": [ - 3495 - ] - }, - { - "teal": 2481, - "source": 486, - "errorMessage": "box value does not exist: this.pageOne.value", - "pc": [ - 3496 - ] - }, - { - "teal": 2482, - "source": 486, - "pc": [ - 3497, - 3498 - ] - }, - { - "teal": 2483, - "source": 486, - "pc": [ - 3499, - 3500 - ] - }, - { - "teal": 2484, - "source": 486, - "pc": [ - 3501 - ] - }, - { - "teal": 2487, - "source": 486, - "errorMessage": "box value does not exist: this.pageTwo.value", - "pc": [ - 3502 - ] - }, - { - "teal": 2488, - "source": 486, - "pc": [ - 3503, - 3504 - ] - }, - { - "teal": 2492, - "source": 487, - "pc": [ - 3505, - 3506 - ] - }, - { - "teal": 2493, - "source": 487, - "pc": [ - 3507 - ] - }, - { - "teal": 2496, - "source": 487, - "errorMessage": "box value does not exist: this.pageOne.value", - "pc": [ - 3508 - ] - }, - { - "teal": 2497, - "source": 487, - "pc": [ - 3509, - 3510 - ] - }, - { - "teal": 2498, - "source": 487, - "pc": [ - 3511, - 3512 - ] - }, - { - "teal": 2499, - "source": 487, - "pc": [ - 3513 - ] - }, - { - "teal": 2502, - "source": 487, - "errorMessage": "box value does not exist: this.pageTwo.value", - "pc": [ - 3514 - ] - }, - { - "teal": 2503, - "source": 487, - "pc": [ - 3515, - 3516 - ] - }, - { - "teal": 2506, - "source": 485, - "pc": [ - 3517 - ] - }, - { - "teal": 2507, - "source": 485, - "pc": [ - 3518, - 3519 - ] - }, - { - "teal": 2510, - "source": 485, - "pc": [ - 3520 - ] - }, - { - "teal": 2511, - "source": 484, - "pc": [ - 3521 - ] - }, - { - "teal": 2516, - "source": 491, - "pc": [ - 3522, - 3523, - 3524 - ] - }, - { - "teal": 2517, - "source": 491, - "pc": [ - 3525 - ] - }, - { - "teal": 2518, - "source": 491, - "pc": [ - 3526 - ] - }, - { - "teal": 2522, - "source": 491, - "pc": [ - 3527, - 3528, - 3529 - ] - }, - { - "teal": 2526, - "source": 492, - "pc": [ - 3530 - ] - }, - { - "teal": 2529, - "source": 492, - "errorMessage": "this is false", - "pc": [ - 3531 - ] - }, - { - "teal": 2530, - "source": 491, - "pc": [ - 3532 - ] - }, - { - "teal": 2535, - "source": 495, - "pc": [ - 3533, - 3534, - 3535 - ] - }, - { - "teal": 2536, - "source": 495, - "pc": [ - 3536 - ] - }, - { - "teal": 2537, - "source": 495, - "pc": [ - 3537 - ] - }, - { - "teal": 2541, - "source": 495, - "pc": [ - 3538, - 3539, - 3540 - ] - }, - { - "teal": 2544, - "source": 496, - "errorMessage": "this is an error", - "pc": [ - 3541 - ] - }, - { - "teal": 2545, - "source": 495, - "pc": [ - 3542 - ] - }, - { - "teal": 2550, - "source": 499, - "pc": [ - 3543, - 3544, - 3545 - ] - }, - { - "teal": 2551, - "source": 499, - "pc": [ - 3546 - ] - }, - { - "teal": 2554, - "source": 499, - "pc": [ - 3547, - 3548, - 3549 - ] - }, - { - "teal": 2555, - "source": 499, - "pc": [ - 3550 - ] - }, - { - "teal": 2558, - "source": 499, - "pc": [ - 3551, - 3552, - 3553 - ] - }, - { - "teal": 2559, - "source": 499, - "pc": [ - 3554 - ] - }, - { - "teal": 2560, - "source": 499, - "pc": [ - 3555 - ] - }, - { - "teal": 2564, - "source": 499, - "pc": [ - 3556, - 3557, - 3558 - ] - }, - { - "teal": 2567, - "source": 499, - "pc": [ - 3559 - ] - }, - { - "teal": 2568, - "source": 499, - "pc": [ - 3560 - ] - }, - { - "teal": 2572, - "source": 500, - "pc": [ - 3561, - 3562 - ] - }, - { - "teal": 2573, - "source": 500, - "pc": [ - 3563 - ] - }, - { - "teal": 2574, - "source": 500, - "pc": [ - 3564, - 3565, - 3566 - ] - }, - { - "teal": 2575, - "source": 500, - "pc": [ - 3567, - 3568 - ] - }, - { - "teal": 2576, - "source": 500, - "pc": [ - 3569 - ] - }, - { - "teal": 2577, - "source": 500, - "pc": [ - 3570 - ] - }, - { - "teal": 2578, - "source": 500, - "pc": [ - 3571 - ] - }, - { - "teal": 2581, - "source": 500, - "pc": [ - 3572, - 3573, - 3574 - ] - }, - { - "teal": 2582, - "source": 500, - "pc": [ - 3575 - ] - }, - { - "teal": 2583, - "source": 500, - "pc": [ - 3576, - 3577, - 3578 - ] - }, - { - "teal": 2586, - "source": 500, - "pc": [ - 3579 - ] - }, - { - "teal": 2589, - "source": 500, - "pc": [ - 3580, - 3581 - ] - }, - { - "teal": 2593, - "source": 501, - "pc": [ - 3582, - 3583 - ] - }, - { - "teal": 2594, - "source": 501, - "pc": [ - 3584 - ] - }, - { - "teal": 2598, - "source": 503, - "pc": [ - 3585, - 3586 - ] - }, - { - "teal": 2599, - "source": 503, - "pc": [ - 3587 - ] - }, - { - "teal": 2600, - "source": 503, - "pc": [ - 3588, - 3589, - 3590 - ] - }, - { - "teal": 2601, - "source": 503, - "pc": [ - 3591, - 3592 - ] - }, - { - "teal": 2602, - "source": 503, - "pc": [ - 3593 - ] - }, - { - "teal": 2603, - "source": 503, - "pc": [ - 3594 - ] - }, - { - "teal": 2604, - "source": 503, - "pc": [ - 3595 - ] - }, - { - "teal": 2607, - "source": 503, - "pc": [ - 3596, - 3597, - 3598 - ] - }, - { - "teal": 2608, - "source": 503, - "pc": [ - 3599, - 3600, - 3601 - ] - }, - { - "teal": 2609, - "source": 503, - "pc": [ - 3602, - 3603, - 3604 - ] - }, - { - "teal": 2612, - "source": 503, - "pc": [ - 3605, - 3606 - ] - }, - { - "teal": 2615, - "source": 503, - "pc": [ - 3607, - 3608 - ] - }, - { - "teal": 2619, - "source": 504, - "pc": [ - 3609, - 3610 - ] - }, - { - "teal": 2620, - "source": 504, - "pc": [ - 3611 - ] - }, - { - "teal": 2621, - "source": 499, - "pc": [ - 3612 - ] - }, - { - "teal": 2625, - "source": 507, - "pc": [ - 3613, - 3614, - 3615 - ] - }, - { - "teal": 2628, - "source": 507, - "pc": [ - 3616 - ] - }, - { - "teal": 2632, - "source": 509, - "pc": [ - 3617, - 3618 - ] - }, - { - "teal": 2633, - "source": 509, - "pc": [ - 3619 - ] - }, - { - "teal": 2637, - "source": 511, - "pc": [ - 3620 - ] - }, - { - "teal": 2638, - "source": 511, - "pc": [ - 3621, - 3622 - ] - }, - { - "teal": 2643, - "source": 511, - "pc": [ - 3623, - 3624 - ] - }, - { - "teal": 2644, - "source": 511, - "pc": [ - 3625, - 3626 - ] - }, - { - "teal": 2645, - "source": 511, - "pc": [ - 3627 - ] - }, - { - "teal": 2646, - "source": 511, - "pc": [ - 3628, - 3629, - 3630 - ] - }, - { - "teal": 2650, - "source": 512, - "pc": [ - 3631, - 3632 - ] - }, - { - "teal": 2651, - "source": 512, - "pc": [ - 3633, - 3634 - ] - }, - { - "teal": 2652, - "source": 512, - "pc": [ - 3635 - ] - }, - { - "teal": 2657, - "source": 511, - "pc": [ - 3636, - 3637 - ] - }, - { - "teal": 2658, - "source": 511, - "pc": [ - 3638 - ] - }, - { - "teal": 2659, - "source": 511, - "pc": [ - 3639 - ] - }, - { - "teal": 2660, - "source": 511, - "pc": [ - 3640, - 3641 - ] - }, - { - "teal": 2661, - "source": 511, - "pc": [ - 3642, - 3643, - 3644 - ] - }, - { - "teal": 2664, - "source": 507, - "pc": [ - 3645 - ] - }, - { - "teal": 2669, - "source": 516, - "pc": [ - 3646, - 3647, - 3648 - ] - }, - { - "teal": 2670, - "source": 516, - "pc": [ - 3649 - ] - }, - { - "teal": 2671, - "source": 516, - "pc": [ - 3650 - ] - }, - { - "teal": 2675, - "source": 516, - "pc": [ - 3651, - 3652, - 3653 - ] - }, - { - "teal": 2678, - "source": 516, - "pc": [ - 3654 - ] - }, - { - "teal": 2679, - "source": 516, - "pc": [ - 3655 - ] - }, - { - "teal": 2683, - "source": 517, - "pc": [ - 3656 - ] - }, - { - "teal": 2684, - "source": 517, - "pc": [ - 3657, - 3658 - ] - }, - { - "teal": 2688, - "source": 518, - "pc": [ - 3659, - 3660 - ] - }, - { - "teal": 2689, - "source": 518, - "pc": [ - 3661, - 3662 - ] - }, - { - "teal": 2696, - "source": 520, - "pc": [ - 3663, - 3664 - ] - }, - { - "teal": 2697, - "source": 520, - "pc": [ - 3665 - ] - }, - { - "teal": 2698, - "source": 520, - "pc": [ - 3666, - 3667, - 3668, - 3669, - 3670 - ] - }, - { - "teal": 2699, - "source": 520, - "pc": [ - 3671 - ] - }, - { - "teal": 2702, - "source": 520, - "errorMessage": "local state value does not exist: app.localState( addr, 'key' )", - "pc": [ - 3672 - ] - }, - { - "teal": 2703, - "source": 516, - "pc": [ - 3673 - ] - }, - { - "teal": 2708, - "source": 526, - "pc": [ - 3674 - ] - }, - { - "teal": 2711, - "source": 526, - "pc": [ - 3675, - 3676, - 3677 - ] - }, - { - "teal": 2712, - "source": 526, - "pc": [ - 3678 - ] - }, - { - "teal": 2713, - "source": 526, - "pc": [ - 3679 - ] - }, - { - "teal": 2714, - "source": 526, - "pc": [ - 3680 - ] - }, - { - "teal": 2715, - "source": 526, - "pc": [ - 3681 - ] - }, - { - "teal": 2716, - "source": 526, - "pc": [ - 3682 - ] - }, - { - "teal": 2720, - "source": 526, - "pc": [ - 3683, - 3684, - 3685 - ] - }, - { - "teal": 2724, - "source": 527, - "pc": [ - 3686, - 3687 - ] - }, - { - "teal": 2725, - "source": 526, - "pc": [ - 3688 - ] - }, - { - "teal": 2730, - "source": 530, - "pc": [ - 3689 - ] - }, - { - "teal": 2733, - "source": 530, - "pc": [ - 3690, - 3691, - 3692 - ] - }, - { - "teal": 2734, - "source": 530, - "pc": [ - 3693 - ] - }, - { - "teal": 2735, - "source": 530, - "pc": [ - 3694 - ] - }, - { - "teal": 2736, - "source": 530, - "pc": [ - 3695 - ] - }, - { - "teal": 2737, - "source": 530, - "pc": [ - 3696 - ] - }, - { - "teal": 2738, - "source": 530, - "pc": [ - 3697 - ] - }, - { - "teal": 2742, - "source": 530, - "pc": [ - 3698, - 3699, - 3700 - ] - }, - { - "teal": 2746, - "source": 531, - "pc": [ - 3701, - 3702 - ] - }, - { - "teal": 2747, - "source": 530, - "pc": [ - 3703 - ] - }, - { - "teal": 2752, - "source": 534, - "pc": [ - 3704 - ] - }, - { - "teal": 2755, - "source": 534, - "pc": [ - 3705, - 3706, - 3707 - ] - }, - { - "teal": 2756, - "source": 534, - "pc": [ - 3708 - ] - }, - { - "teal": 2757, - "source": 534, - "pc": [ - 3709 - ] - }, - { - "teal": 2758, - "source": 534, - "pc": [ - 3710 - ] - }, - { - "teal": 2759, - "source": 534, - "pc": [ - 3711 - ] - }, - { - "teal": 2760, - "source": 534, - "pc": [ - 3712 - ] - }, - { - "teal": 2764, - "source": 534, - "pc": [ - 3713, - 3714, - 3715 - ] - }, - { - "teal": 2768, - "source": 535, - "pc": [ - 3716, - 3717, - 3718 - ] - }, - { - "teal": 2769, - "source": 535, - "pc": [ - 3719 - ] - }, - { - "teal": 2773, - "source": 536, - "pc": [ - 3720, - 3721, - 3722 - ] - }, - { - "teal": 2774, - "source": 534, - "pc": [ - 3723 - ] - }, - { - "teal": 2779, - "source": 546, - "pc": [ - 3724 - ] - }, - { - "teal": 2782, - "source": 546, - "pc": [ - 3725, - 3726, - 3727 - ] - }, - { - "teal": 2783, - "source": 546, - "pc": [ - 3728 - ] - }, - { - "teal": 2784, - "source": 546, - "pc": [ - 3729 - ] - }, - { - "teal": 2785, - "source": 546, - "pc": [ - 3730 - ] - }, - { - "teal": 2786, - "source": 546, - "pc": [ - 3731 - ] - }, - { - "teal": 2787, - "source": 546, - "pc": [ - 3732 - ] - }, - { - "teal": 2791, - "source": 546, - "pc": [ - 3733, - 3734, - 3735 - ] - }, - { - "teal": 2794, - "source": 546, - "pc": [ - 3736 - ] - }, - { - "teal": 2795, - "source": 546, - "pc": [ - 3737 - ] - }, - { - "teal": 2799, - "source": 547, - "pc": [ - 3738 - ] - }, - { - "teal": 2800, - "source": 547, - "pc": [ - 3739, - 3740 - ] - }, - { - "teal": 2804, - "source": 548, - "pc": [ - 3741, - 3742, - 3743 - ] - }, - { - "teal": 2805, - "source": 548, - "pc": [ - 3744, - 3745 - ] - }, - { - "teal": 2810, - "source": 549, - "pc": [ - 3746, - 3747 - ] - }, - { - "teal": 2811, - "source": 549, - "pc": [ - 3748, - 3749, - 3750 - ] - }, - { - "teal": 2816, - "source": 550, - "pc": [ - 3751 - ] - }, - { - "teal": 2817, - "source": 550, - "pc": [ - 3752, - 3753 - ] - }, - { - "teal": 2822, - "source": 553, - "pc": [ - 3754, - 3755 - ] - }, - { - "teal": 2825, - "source": 546, - "pc": [ - 3756, - 3757 - ] - }, - { - "teal": 2828, - "source": 546, - "pc": [ - 3758, - 3759 - ] - }, - { - "teal": 2829, - "source": 546, - "pc": [ - 3760 - ] - }, - { - "teal": 2834, - "source": 556, - "pc": [ - 3761, - 3762, - 3763 - ] - }, - { - "teal": 2835, - "source": 556, - "pc": [ - 3764 - ] - }, - { - "teal": 2836, - "source": 556, - "pc": [ - 3765 - ] - }, - { - "teal": 2840, - "source": 556, - "pc": [ - 3766, - 3767, - 3768 - ] - }, - { - "teal": 2844, - "source": 557, - "pc": [ - 3769, - 3770 - ] - }, - { - "teal": 2845, - "source": 557, - "pc": [ - 3771 - ] - }, - { - "teal": 2849, - "source": 558, - "pc": [ - 3772, - 3773 - ] - }, - { - "teal": 2850, - "source": 558, - "pc": [ - 3774 - ] - }, - { - "teal": 2851, - "source": 556, - "pc": [ - 3775 - ] - }, - { - "teal": 2854, - "source": 49, - "pc": [ - 3776 - ] - }, - { - "teal": 2855, - "source": 49, - "pc": [ - 3777 - ] - }, - { - "teal": 2858, - "source": 49, - "pc": [ - 3778, - 3779, - 3780, - 3781, - 3782, - 3783 - ] - }, - { - "teal": 2859, - "source": 49, - "pc": [ - 3784, - 3785, - 3786 - ] - }, - { - "teal": 2860, - "source": 49, - "pc": [ - 3787, - 3788, - 3789, - 3790 - ] - }, - { - "teal": 2863, - "source": 49, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 3791 - ] - }, - { - "teal": 2866, - "source": 49, - "pc": [ - 3792, - 3793, - 3794, - 3795, - 3796, - 3797 - ] - }, - { - "teal": 2867, - "source": 49, - "pc": [ - 3798, - 3799, - 3800, - 3801, - 3802, - 3803 - ] - }, - { - "teal": 2868, - "source": 49, - "pc": [ - 3804, - 3805, - 3806, - 3807, - 3808, - 3809 - ] - }, - { - "teal": 2869, - "source": 49, - "pc": [ - 3810, - 3811, - 3812, - 3813, - 3814, - 3815 - ] - }, - { - "teal": 2870, - "source": 49, - "pc": [ - 3816, - 3817, - 3818, - 3819, - 3820, - 3821 - ] - }, - { - "teal": 2871, - "source": 49, - "pc": [ - 3822, - 3823, - 3824, - 3825, - 3826, - 3827 - ] - }, - { - "teal": 2872, - "source": 49, - "pc": [ - 3828, - 3829, - 3830, - 3831, - 3832, - 3833 - ] - }, - { - "teal": 2873, - "source": 49, - "pc": [ - 3834, - 3835, - 3836, - 3837, - 3838, - 3839 - ] - }, - { - "teal": 2874, - "source": 49, - "pc": [ - 3840, - 3841, - 3842, - 3843, - 3844, - 3845 - ] - }, - { - "teal": 2875, - "source": 49, - "pc": [ - 3846, - 3847, - 3848, - 3849, - 3850, - 3851 - ] - }, - { - "teal": 2876, - "source": 49, - "pc": [ - 3852, - 3853, - 3854, - 3855, - 3856, - 3857 - ] - }, - { - "teal": 2877, - "source": 49, - "pc": [ - 3858, - 3859, - 3860, - 3861, - 3862, - 3863 - ] - }, - { - "teal": 2878, - "source": 49, - "pc": [ - 3864, - 3865, - 3866, - 3867, - 3868, - 3869 - ] - }, - { - "teal": 2879, - "source": 49, - "pc": [ - 3870, - 3871, - 3872, - 3873, - 3874, - 3875 - ] - }, - { - "teal": 2880, - "source": 49, - "pc": [ - 3876, - 3877, - 3878, - 3879, - 3880, - 3881 - ] - }, - { - "teal": 2881, - "source": 49, - "pc": [ - 3882, - 3883, - 3884, - 3885, - 3886, - 3887 - ] - }, - { - "teal": 2882, - "source": 49, - "pc": [ - 3888, - 3889, - 3890, - 3891, - 3892, - 3893 - ] - }, - { - "teal": 2883, - "source": 49, - "pc": [ - 3894, - 3895, - 3896, - 3897, - 3898, - 3899 - ] - }, - { - "teal": 2884, - "source": 49, - "pc": [ - 3900, - 3901, - 3902, - 3903, - 3904, - 3905 - ] - }, - { - "teal": 2885, - "source": 49, - "pc": [ - 3906, - 3907, - 3908, - 3909, - 3910, - 3911 - ] - }, - { - "teal": 2886, - "source": 49, - "pc": [ - 3912, - 3913, - 3914, - 3915, - 3916, - 3917 - ] - }, - { - "teal": 2887, - "source": 49, - "pc": [ - 3918, - 3919, - 3920, - 3921, - 3922, - 3923 - ] - }, - { - "teal": 2888, - "source": 49, - "pc": [ - 3924, - 3925, - 3926, - 3927, - 3928, - 3929 - ] - }, - { - "teal": 2889, - "source": 49, - "pc": [ - 3930, - 3931, - 3932, - 3933, - 3934, - 3935 - ] - }, - { - "teal": 2890, - "source": 49, - "pc": [ - 3936, - 3937, - 3938, - 3939, - 3940, - 3941 - ] - }, - { - "teal": 2891, - "source": 49, - "pc": [ - 3942, - 3943, - 3944, - 3945, - 3946, - 3947 - ] - }, - { - "teal": 2892, - "source": 49, - "pc": [ - 3948, - 3949, - 3950, - 3951, - 3952, - 3953 - ] - }, - { - "teal": 2893, - "source": 49, - "pc": [ - 3954, - 3955, - 3956, - 3957, - 3958, - 3959 - ] - }, - { - "teal": 2894, - "source": 49, - "pc": [ - 3960, - 3961, - 3962, - 3963, - 3964, - 3965 - ] - }, - { - "teal": 2895, - "source": 49, - "pc": [ - 3966, - 3967, - 3968, - 3969, - 3970, - 3971 - ] - }, - { - "teal": 2896, - "source": 49, - "pc": [ - 3972, - 3973, - 3974, - 3975, - 3976, - 3977 - ] - }, - { - "teal": 2897, - "source": 49, - "pc": [ - 3978, - 3979, - 3980, - 3981, - 3982, - 3983 - ] - }, - { - "teal": 2898, - "source": 49, - "pc": [ - 3984, - 3985, - 3986, - 3987, - 3988, - 3989 - ] - }, - { - "teal": 2899, - "source": 49, - "pc": [ - 3990, - 3991, - 3992, - 3993, - 3994, - 3995 - ] - }, - { - "teal": 2900, - "source": 49, - "pc": [ - 3996, - 3997, - 3998, - 3999, - 4000, - 4001 - ] - }, - { - "teal": 2901, - "source": 49, - "pc": [ - 4002, - 4003, - 4004, - 4005, - 4006, - 4007 - ] - }, - { - "teal": 2902, - "source": 49, - "pc": [ - 4008, - 4009, - 4010, - 4011, - 4012, - 4013 - ] - }, - { - "teal": 2903, - "source": 49, - "pc": [ - 4014, - 4015, - 4016, - 4017, - 4018, - 4019 - ] - }, - { - "teal": 2904, - "source": 49, - "pc": [ - 4020, - 4021, - 4022, - 4023, - 4024, - 4025 - ] - }, - { - "teal": 2905, - "source": 49, - "pc": [ - 4026, - 4027, - 4028, - 4029, - 4030, - 4031 - ] - }, - { - "teal": 2906, - "source": 49, - "pc": [ - 4032, - 4033, - 4034, - 4035, - 4036, - 4037 - ] - }, - { - "teal": 2907, - "source": 49, - "pc": [ - 4038, - 4039, - 4040, - 4041, - 4042, - 4043 - ] - }, - { - "teal": 2908, - "source": 49, - "pc": [ - 4044, - 4045, - 4046, - 4047, - 4048, - 4049 - ] - }, - { - "teal": 2909, - "source": 49, - "pc": [ - 4050, - 4051, - 4052, - 4053, - 4054, - 4055 - ] - }, - { - "teal": 2910, - "source": 49, - "pc": [ - 4056, - 4057, - 4058, - 4059, - 4060, - 4061 - ] - }, - { - "teal": 2911, - "source": 49, - "pc": [ - 4062, - 4063, - 4064, - 4065, - 4066, - 4067 - ] - }, - { - "teal": 2912, - "source": 49, - "pc": [ - 4068, - 4069, - 4070, - 4071, - 4072, - 4073 - ] - }, - { - "teal": 2913, - "source": 49, - "pc": [ - 4074, - 4075, - 4076, - 4077, - 4078, - 4079 - ] - }, - { - "teal": 2914, - "source": 49, - "pc": [ - 4080, - 4081, - 4082, - 4083, - 4084, - 4085 - ] - }, - { - "teal": 2915, - "source": 49, - "pc": [ - 4086, - 4087, - 4088, - 4089, - 4090, - 4091 - ] - }, - { - "teal": 2916, - "source": 49, - "pc": [ - 4092, - 4093, - 4094, - 4095, - 4096, - 4097 - ] - }, - { - "teal": 2917, - "source": 49, - "pc": [ - 4098, - 4099, - 4100, - 4101, - 4102, - 4103 - ] - }, - { - "teal": 2918, - "source": 49, - "pc": [ - 4104, - 4105, - 4106, - 4107, - 4108, - 4109 - ] - }, - { - "teal": 2919, - "source": 49, - "pc": [ - 4110, - 4111, - 4112, - 4113, - 4114, - 4115 - ] - }, - { - "teal": 2920, - "source": 49, - "pc": [ - 4116, - 4117 - ] - }, - { - "teal": 2921, - "source": 49, - "pc": [ - 4118, - 4119, - 4120, - 4121, - 4122, - 4123 - ] - }, - { - "teal": 2922, - "source": 49, - "pc": [ - 4124, - 4125, - 4126, - 4127, - 4128, - 4129 - ] - }, - { - "teal": 2923, - "source": 49, - "pc": [ - 4130, - 4131, - 4132, - 4133, - 4134, - 4135 - ] - }, - { - "teal": 2924, - "source": 49, - "pc": [ - 4136, - 4137, - 4138, - 4139, - 4140, - 4141 - ] - }, - { - "teal": 2925, - "source": 49, - "pc": [ - 4142, - 4143, - 4144, - 4145, - 4146, - 4147 - ] - }, - { - "teal": 2926, - "source": 49, - "pc": [ - 4148, - 4149, - 4150, - 4151, - 4152, - 4153 - ] - }, - { - "teal": 2927, - "source": 49, - "pc": [ - 4154, - 4155, - 4156, - 4157, - 4158, - 4159 - ] - }, - { - "teal": 2928, - "source": 49, - "pc": [ - 4160, - 4161, - 4162, - 4163, - 4164, - 4165 - ] - }, - { - "teal": 2929, - "source": 49, - "pc": [ - 4166, - 4167, - 4168, - 4169, - 4170, - 4171 - ] - }, - { - "teal": 2930, - "source": 49, - "pc": [ - 4172, - 4173, - 4174, - 4175, - 4176, - 4177 - ] - }, - { - "teal": 2931, - "source": 49, - "pc": [ - 4178, - 4179, - 4180, - 4181, - 4182, - 4183 - ] - }, - { - "teal": 2932, - "source": 49, - "pc": [ - 4184, - 4185, - 4186, - 4187, - 4188, - 4189 - ] - }, - { - "teal": 2933, - "source": 49, - "pc": [ - 4190, - 4191, - 4192, - 4193, - 4194, - 4195 - ] - }, - { - "teal": 2934, - "source": 49, - "pc": [ - 4196, - 4197, - 4198, - 4199, - 4200, - 4201 - ] - }, - { - "teal": 2935, - "source": 49, - "pc": [ - 4202, - 4203, - 4204, - 4205, - 4206, - 4207 - ] - }, - { - "teal": 2936, - "source": 49, - "pc": [ - 4208, - 4209, - 4210, - 4211, - 4212, - 4213 - ] - }, - { - "teal": 2937, - "source": 49, - "pc": [ - 4214, - 4215, - 4216, - 4217, - 4218, - 4219 - ] - }, - { - "teal": 2938, - "source": 49, - "pc": [ - 4220, - 4221, - 4222, - 4223, - 4224, - 4225 - ] - }, - { - "teal": 2939, - "source": 49, - "pc": [ - 4226, - 4227, - 4228, - 4229, - 4230, - 4231 - ] - }, - { - "teal": 2940, - "source": 49, - "pc": [ - 4232, - 4233, - 4234 - ] - }, - { - "teal": 2941, - "source": 49, - "pc": [ - 4235, - 4236, - 4237, - 4238, - 4239, - 4240, - 4241, - 4242, - 4243, - 4244, - 4245, - 4246, - 4247, - 4248, - 4249, - 4250, - 4251, - 4252, - 4253, - 4254, - 4255, - 4256, - 4257, - 4258, - 4259, - 4260, - 4261, - 4262, - 4263, - 4264, - 4265, - 4266, - 4267, - 4268, - 4269, - 4270, - 4271, - 4272, - 4273, - 4274, - 4275, - 4276, - 4277, - 4278, - 4279, - 4280, - 4281, - 4282, - 4283, - 4284, - 4285, - 4286, - 4287, - 4288, - 4289, - 4290, - 4291, - 4292, - 4293, - 4294, - 4295, - 4296, - 4297, - 4298, - 4299, - 4300, - 4301, - 4302, - 4303, - 4304, - 4305, - 4306, - 4307, - 4308, - 4309, - 4310, - 4311, - 4312, - 4313, - 4314, - 4315, - 4316, - 4317, - 4318, - 4319, - 4320, - 4321, - 4322, - 4323, - 4324, - 4325, - 4326, - 4327, - 4328, - 4329, - 4330, - 4331, - 4332, - 4333, - 4334, - 4335, - 4336, - 4337, - 4338, - 4339, - 4340, - 4341, - 4342, - 4343, - 4344, - 4345, - 4346, - 4347, - 4348, - 4349, - 4350, - 4351, - 4352, - 4353, - 4354, - 4355, - 4356, - 4357, - 4358, - 4359, - 4360, - 4361, - 4362, - 4363, - 4364, - 4365, - 4366, - 4367, - 4368, - 4369, - 4370, - 4371, - 4372, - 4373, - 4374, - 4375, - 4376, - 4377, - 4378, - 4379, - 4380, - 4381, - 4382, - 4383, - 4384 - ] - }, - { - "teal": 2944, - "source": 49, - "pc": [ - 4385, - 4386, - 4387 - ] - }, - { - "teal": 2945, - "source": 49, - "pc": [ - 4388 - ] - }, - { - "teal": 2946, - "source": 49, - "pc": [ - 4389 - ] - }, - { - "teal": 2949, - "source": 49, - "pc": [ - 4390, - 4391, - 4392 - ] - }, - { - "teal": 2950, - "source": 49, - "pc": [ - 4393, - 4394, - 4395, - 4396, - 4397, - 4398, - 4399, - 4400, - 4401, - 4402, - 4403, - 4404 - ] - }, - { - "teal": 2951, - "source": 49, - "pc": [ - 4405, - 4406 - ] - }, - { - "teal": 2952, - "source": 49, - "pc": [ - 4407 - ] - }, - { - "teal": 2953, - "source": 49, - "pc": [ - 4408 - ] - }, - { - "teal": 2954, - "source": 49, - "pc": [ - 4409 - ] - }, - { - "teal": 2955, - "source": 49 - }, - { - "teal": 2958, - "source": 49, - "pc": [ - 4410, - 4411, - 4412 - ] - }, - { - "teal": 2959, - "source": 49, - "pc": [ - 4413, - 4414 - ] - }, - { - "teal": 2960, - "source": 49, - "pc": [ - 4415 - ] - }, - { - "teal": 2961, - "source": 49, - "pc": [ - 4416 - ] - }, - { - "teal": 2962, - "source": 49, - "pc": [ - 4417, - 4418, - 4419 - ] - }, - { - "teal": 2963, - "source": 49, - "pc": [ - 4420, - 4421 - ] - }, - { - "teal": 2964, - "source": 49, - "pc": [ - 4422 - ] - }, - { - "teal": 2967, - "source": 49, - "pc": [ - 4423, - 4424 - ] - }, - { - "teal": 2968, - "source": 49, - "pc": [ - 4425, - 4426 - ] - }, - { - "teal": 2969, - "source": 49, - "pc": [ - 4427 - ] - }, - { - "teal": 2970, - "source": 49, - "pc": [ - 4428 - ] - }, - { - "teal": 2971, - "source": 49, - "pc": [ - 4429 - ] - }, - { - "teal": 2972, - "source": 49, - "pc": [ - 4430, - 4431, - 4432 - ] - }, - { - "teal": 2973, - "source": 49, - "pc": [ - 4433, - 4434 - ] - }, - { - "teal": 2974, - "source": 49, - "pc": [ - 4435, - 4436 - ] - }, - { - "teal": 2975, - "source": 49, - "pc": [ - 4437 - ] - }, - { - "teal": 2976, - "source": 49, - "pc": [ - 4438, - 4439, - 4440 - ] - }, - { - "teal": 2977, - "source": 49, - "pc": [ - 4441, - 4442, - 4443 - ] - }, - { - "teal": 2980, - "source": 49, - "pc": [ - 4444 - ] - }, - { - "teal": 2983, - "source": 49, - "pc": [ - 4445, - 4446 - ] - }, - { - "teal": 2984, - "source": 49, - "pc": [ - 4447, - 4448 - ] - }, - { - "teal": 2985, - "source": 49, - "pc": [ - 4449 - ] - }, - { - "teal": 2986, - "source": 49, - "pc": [ - 4450, - 4451, - 4452 - ] - }, - { - "teal": 2987, - "source": 49, - "pc": [ - 4453 - ] - }, - { - "teal": 2988, - "source": 49, - "pc": [ - 4454 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 49, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225 + ] + }, + { + "teal": 13, + "source": 49, + "pc": [ + 226, + 227 + ] + }, + { + "teal": 14, + "source": 49, + "pc": [ + 228 + ] + }, + { + "teal": 15, + "source": 49, + "pc": [ + 229 + ] + }, + { + "teal": 16, + "source": 49, + "pc": [ + 230 + ] + }, + { + "teal": 17, + "source": 49, + "pc": [ + 231, + 232 + ] + }, + { + "teal": 18, + "source": 49, + "pc": [ + 233 + ] + }, + { + "teal": 19, + "source": 49, + "pc": [ + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259 + ] + }, + { + "teal": 23, + "source": 49, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 260 + ] + }, + { + "teal": 28, + "source": 60, + "pc": [ + 261, + 262, + 263 + ] + }, + { + "teal": 29, + "source": 60, + "pc": [ + 264 + ] + }, + { + "teal": 30, + "source": 60, + "pc": [ + 265 + ] + }, + { + "teal": 34, + "source": 60, + "pc": [ + 266, + 267, + 268 + ] + }, + { + "teal": 38, + "source": 61, + "pc": [ + 269 + ] + }, + { + "teal": 39, + "source": 61, + "pc": [ + 270, + 271 + ] + }, + { + "teal": 40, + "source": 61, + "pc": [ + 272 + ] + }, + { + "teal": 41, + "source": 61, + "pc": [ + 273 + ] + }, + { + "teal": 42, + "source": 61, + "pc": [ + 274 + ] + }, + { + "teal": 43, + "source": 60, + "pc": [ + 275 + ] + }, + { + "teal": 48, + "source": 64, + "pc": [ + 276, + 277, + 278 + ] + }, + { + "teal": 49, + "source": 64, + "pc": [ + 279 + ] + }, + { + "teal": 50, + "source": 64, + "pc": [ + 280 + ] + }, + { + "teal": 54, + "source": 64, + "pc": [ + 281, + 282, + 283 + ] + }, + { + "teal": 58, + "source": 65, + "pc": [ + 284, + 285 + ] + }, + { + "teal": 59, + "source": 65, + "pc": [ + 286 + ] + }, + { + "teal": 60, + "source": 65, + "pc": [ + 287 + ] + }, + { + "teal": 61, + "source": 65, + "pc": [ + 288 + ] + }, + { + "teal": 62, + "source": 64, + "pc": [ + 289 + ] + }, + { + "teal": 67, + "source": 68, + "pc": [ + 290, + 291, + 292 + ] + }, + { + "teal": 68, + "source": 68, + "pc": [ + 293 + ] + }, + { + "teal": 69, + "source": 68, + "pc": [ + 294 + ] + }, + { + "teal": 70, + "source": 68, + "pc": [ + 295 + ] + }, + { + "teal": 71, + "source": 68, + "pc": [ + 296 + ] + }, + { + "teal": 74, + "source": 68, + "errorMessage": "argument 0 (arg2) for asserts must be a bool", + "pc": [ + 297 + ] + }, + { + "teal": 75, + "source": 68, + "pc": [ + 298 + ] + }, + { + "teal": 76, + "source": 68, + "pc": [ + 299 + ] + }, + { + "teal": 79, + "source": 68, + "pc": [ + 300, + 301, + 302 + ] + }, + { + "teal": 80, + "source": 68, + "pc": [ + 303 + ] + }, + { + "teal": 81, + "source": 68, + "pc": [ + 304 + ] + }, + { + "teal": 82, + "source": 68, + "pc": [ + 305 + ] + }, + { + "teal": 83, + "source": 68, + "pc": [ + 306 + ] + }, + { + "teal": 86, + "source": 68, + "errorMessage": "argument 1 (arg1) for asserts must be a bool", + "pc": [ + 307 + ] + }, + { + "teal": 87, + "source": 68, + "pc": [ + 308 + ] + }, + { + "teal": 88, + "source": 68, + "pc": [ + 309 + ] + }, + { + "teal": 91, + "source": 68, + "pc": [ + 310, + 311, + 312 + ] + }, + { + "teal": 92, + "source": 68, + "pc": [ + 313 + ] + }, + { + "teal": 93, + "source": 68, + "pc": [ + 314 + ] + }, + { + "teal": 97, + "source": 68, + "pc": [ + 315, + 316, + 317 + ] + }, + { + "teal": 101, + "source": 69, + "pc": [ + 318, + 319 + ] + }, + { + "teal": 104, + "source": 69, + "errorMessage": "asserts failed: asserts(arg1, arg2, arg1 === arg2)", + "pc": [ + 320 + ] + }, + { + "teal": 105, + "source": 69, + "pc": [ + 321, + 322 + ] + }, + { + "teal": 108, + "source": 69, + "errorMessage": "asserts failed: asserts(arg1, arg2, arg1 === arg2)", + "pc": [ + 323 + ] + }, + { + "teal": 109, + "source": 69, + "pc": [ + 324, + 325 + ] + }, + { + "teal": 110, + "source": 69, + "pc": [ + 326, + 327 + ] + }, + { + "teal": 111, + "source": 69, + "pc": [ + 328 + ] + }, + { + "teal": 114, + "source": 69, + "errorMessage": "asserts failed: asserts(arg1, arg2, arg1 === arg2)", + "pc": [ + 329 + ] + }, + { + "teal": 115, + "source": 68, + "pc": [ + 330 + ] + }, + { + "teal": 120, + "source": 72, + "pc": [ + 331, + 332 + ] + }, + { + "teal": 121, + "source": 72, + "pc": [ + 333 + ] + }, + { + "teal": 122, + "source": 72, + "pc": [ + 334 + ] + }, + { + "teal": 123, + "source": 72, + "pc": [ + 335 + ] + }, + { + "teal": 124, + "source": 72, + "pc": [ + 336, + 337 + ] + }, + { + "teal": 125, + "source": 72, + "pc": [ + 338 + ] + }, + { + "teal": 126, + "source": 72, + "pc": [ + 339 + ] + }, + { + "teal": 129, + "source": 72, + "errorMessage": "argument 0 (somePay) for verifyTxnFromArg must be a pay transaction", + "pc": [ + 340 + ] + }, + { + "teal": 132, + "source": 72, + "pc": [ + 341, + 342, + 343 + ] + }, + { + "teal": 133, + "source": 72, + "pc": [ + 344 + ] + }, + { + "teal": 134, + "source": 72, + "pc": [ + 345 + ] + }, + { + "teal": 138, + "source": 72, + "pc": [ + 346, + 347, + 348 + ] + }, + { + "teal": 143, + "source": 73, + "pc": [ + 349, + 350 + ] + }, + { + "teal": 144, + "source": 73, + "pc": [ + 351, + 352 + ] + }, + { + "teal": 145, + "source": 73, + "pc": [ + 353, + 354 + ] + }, + { + "teal": 146, + "source": 73, + "pc": [ + 355 + ] + }, + { + "teal": 149, + "source": 73, + "errorMessage": "transaction verification failed: {\"txn\":\"somePay\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 356 + ] + }, + { + "teal": 152, + "source": 73, + "pc": [ + 357, + 358 + ] + }, + { + "teal": 153, + "source": 73, + "pc": [ + 359, + 360 + ] + }, + { + "teal": 154, + "source": 73, + "pc": [ + 361, + 362 + ] + }, + { + "teal": 155, + "source": 73, + "pc": [ + 363 + ] + }, + { + "teal": 158, + "source": 73, + "errorMessage": "transaction verification failed: {\"txn\":\"somePay\",\"field\":\"amount\",\"expected\":\"100_000\"}", + "pc": [ + 364 + ] + }, + { + "teal": 159, + "source": 72, + "pc": [ + 365 + ] + }, + { + "teal": 164, + "source": 76, + "pc": [ + 366, + 367, + 368 + ] + }, + { + "teal": 165, + "source": 76, + "pc": [ + 369 + ] + }, + { + "teal": 166, + "source": 76, + "pc": [ + 370 + ] + }, + { + "teal": 170, + "source": 76, + "pc": [ + 371, + 372, + 373 + ] + }, + { + "teal": 175, + "source": 77, + "pc": [ + 374 + ] + }, + { + "teal": 176, + "source": 77, + "pc": [ + 375, + 376 + ] + }, + { + "teal": 177, + "source": 77, + "pc": [ + 377, + 378 + ] + }, + { + "teal": 178, + "source": 77, + "pc": [ + 379 + ] + }, + { + "teal": 181, + "source": 77, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"sender\",\"expected\":\"this.txn.sender\"}", + "pc": [ + 380 + ] + }, + { + "teal": 182, + "source": 76, + "pc": [ + 381 + ] + }, + { + "teal": 187, + "source": 80, + "pc": [ + 382, + 383, + 384 + ] + }, + { + "teal": 188, + "source": 80, + "pc": [ + 385 + ] + }, + { + "teal": 189, + "source": 80, + "pc": [ + 386 + ] + }, + { + "teal": 193, + "source": 80, + "pc": [ + 387, + 388, + 389 + ] + }, + { + "teal": 200, + "source": 82, + "pc": [ + 390, + 391 + ] + }, + { + "teal": 201, + "source": 82, + "pc": [ + 392 + ] + }, + { + "teal": 202, + "source": 82, + "pc": [ + 393 + ] + }, + { + "teal": 205, + "source": 82, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txn\",\"field\":\"applicationID\",\"condition\":\"greaterThan\",\"expected\":\">1\"}", + "pc": [ + 394 + ] + }, + { + "teal": 206, + "source": 80, + "pc": [ + 395 + ] + }, + { + "teal": 211, + "source": 86, + "pc": [ + 396, + 397, + 398 + ] + }, + { + "teal": 212, + "source": 86, + "pc": [ + 399 + ] + }, + { + "teal": 213, + "source": 86, + "pc": [ + 400 + ] + }, + { + "teal": 217, + "source": 86, + "pc": [ + 401, + 402, + 403 + ] + }, + { + "teal": 224, + "source": 88, + "pc": [ + 404, + 405 + ] + }, + { + "teal": 225, + "source": 88, + "pc": [ + 406, + 407 + ] + }, + { + "teal": 226, + "source": 88, + "pc": [ + 408 + ] + }, + { + "teal": 229, + "source": 88, + "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txn\"},\"field\":\"sender\",\"condition\":\"includedIn\",\"expected\":\"[this.txn.sender]\"}", + "pc": [ + 409 + ] + }, + { + "teal": 230, + "source": 86, + "pc": [ + 410 + ] + }, + { + "teal": 235, + "source": 92, + "pc": [ + 411, + 412, + 413 + ] + }, + { + "teal": 236, + "source": 92, + "pc": [ + 414 + ] + }, + { + "teal": 237, + "source": 92, + "pc": [ + 415 + ] + }, + { + "teal": 241, + "source": 92, + "pc": [ + 416, + 417, + 418 + ] + }, + { + "teal": 248, + "source": 94, + "pc": [ + 419, + 420 + ] + }, + { + "teal": 249, + "source": 94, + "pc": [ + 421, + 422 + ] + }, + { + "teal": 250, + "source": 94, + "pc": [ + 423 + ] + }, + { + "teal": 253, + "source": 94, + "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txn\"},\"field\":\"sender\",\"condition\":\"notIncludedIn\",\"expected\":\"[globals.zeroAddress]\"}", + "pc": [ + 424 + ] + }, + { + "teal": 254, + "source": 92, + "pc": [ + 425 + ] + }, + { + "teal": 259, + "source": 98, + "pc": [ + 426, + 427, + 428 + ] + }, + { + "teal": 260, + "source": 98, + "pc": [ + 429 + ] + }, + { + "teal": 261, + "source": 98, + "pc": [ + 430 + ] + }, + { + "teal": 265, + "source": 98, + "pc": [ + 431, + 432, + 433 + ] + }, + { + "teal": 269, + "source": 99, + "pc": [ + 434 + ] + }, + { + "teal": 270, + "source": 99, + "pc": [ + 435 + ] + }, + { + "teal": 271, + "source": 99, + "pc": [ + 436, + 437 + ] + }, + { + "teal": 275, + "source": 99, + "pc": [ + 438 + ] + }, + { + "teal": 276, + "source": 99, + "pc": [ + 439, + 440 + ] + }, + { + "teal": 280, + "source": 99, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 281, + "source": 99, + "pc": [ + 443, + 444 + ] + }, + { + "teal": 284, + "source": 99, + "pc": [ + 445 + ] + }, + { + "teal": 285, + "source": 99, + "pc": [ + 446, + 447 + ] + }, + { + "teal": 289, + "source": 100, + "pc": [ + 448 + ] + }, + { + "teal": 290, + "source": 100, + "pc": [ + 449 + ] + }, + { + "teal": 291, + "source": 100, + "pc": [ + 450, + 451 + ] + }, + { + "teal": 295, + "source": 100, + "pc": [ + 452 + ] + }, + { + "teal": 296, + "source": 100, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 300, + "source": 100, + "pc": [ + 455, + 456 + ] + }, + { + "teal": 301, + "source": 100, + "pc": [ + 457, + 458 + ] + }, + { + "teal": 305, + "source": 100, + "pc": [ + 459 + ] + }, + { + "teal": 306, + "source": 100, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 309, + "source": 100, + "pc": [ + 462 + ] + }, + { + "teal": 310, + "source": 100, + "pc": [ + 463, + 464 + ] + }, + { + "teal": 314, + "source": 101, + "pc": [ + 465 + ] + }, + { + "teal": 315, + "source": 98, + "pc": [ + 466 + ] + }, + { + "teal": 320, + "source": 104, + "pc": [ + 467, + 468, + 469 + ] + }, + { + "teal": 321, + "source": 104, + "pc": [ + 470 + ] + }, + { + "teal": 322, + "source": 104, + "pc": [ + 471 + ] + }, + { + "teal": 326, + "source": 104, + "pc": [ + 472, + 473, + 474 + ] + }, + { + "teal": 340, + "source": 108, + "pc": [ + 475 + ] + }, + { + "teal": 341, + "source": 108, + "pc": [ + 476 + ] + }, + { + "teal": 342, + "source": 108, + "pc": [ + 477, + 478 + ] + }, + { + "teal": 346, + "source": 108, + "pc": [ + 479, + 480 + ] + }, + { + "teal": 347, + "source": 108, + "pc": [ + 481, + 482 + ] + }, + { + "teal": 351, + "source": 108, + "pc": [ + 483, + 484 + ] + }, + { + "teal": 352, + "source": 108, + "pc": [ + 485, + 486 + ] + }, + { + "teal": 355, + "source": 108, + "pc": [ + 487 + ] + }, + { + "teal": 356, + "source": 108, + "pc": [ + 488, + 489 + ] + }, + { + "teal": 357, + "source": 109, + "pc": [ + 490 + ] + }, + { + "teal": 358, + "source": 109, + "pc": [ + 491 + ] + }, + { + "teal": 359, + "source": 109, + "pc": [ + 492, + 493 + ] + }, + { + "teal": 360, + "source": 110, + "pc": [ + 494, + 495, + 496, + 497, + 498, + 499 + ] + }, + { + "teal": 361, + "source": 110, + "pc": [ + 500, + 501 + ] + }, + { + "teal": 365, + "source": 111, + "pc": [ + 502, + 503 + ] + }, + { + "teal": 366, + "source": 111, + "pc": [ + 504, + 505 + ] + }, + { + "teal": 370, + "source": 112, + "pc": [ + 506, + 507 + ] + }, + { + "teal": 371, + "source": 112, + "pc": [ + 508, + 509 + ] + }, + { + "teal": 374, + "source": 109, + "pc": [ + 510 + ] + }, + { + "teal": 375, + "source": 109, + "pc": [ + 511, + 512 + ] + }, + { + "teal": 376, + "source": 105, + "pc": [ + 513 + ] + }, + { + "teal": 377, + "source": 105, + "pc": [ + 514 + ] + }, + { + "teal": 378, + "source": 105, + "pc": [ + 515, + 516 + ] + }, + { + "teal": 379, + "source": 106, + "pc": [ + 517, + 518, + 519, + 520, + 521, + 522 + ] + }, + { + "teal": 380, + "source": 106, + "pc": [ + 523, + 524 + ] + }, + { + "teal": 392, + "source": 105, + "pc": [ + 525 + ] + }, + { + "teal": 393, + "source": 105, + "pc": [ + 526, + 527 + ] + }, + { + "teal": 396, + "source": 105, + "pc": [ + 528 + ] + }, + { + "teal": 397, + "source": 104, + "pc": [ + 529 + ] + }, + { + "teal": 402, + "source": 118, + "pc": [ + 530, + 531, + 532 + ] + }, + { + "teal": 403, + "source": 118, + "pc": [ + 533 + ] + }, + { + "teal": 404, + "source": 118, + "pc": [ + 534 + ] + }, + { + "teal": 408, + "source": 118, + "pc": [ + 535, + 536, + 537 + ] + }, + { + "teal": 412, + "source": 119, + "pc": [ + 538 + ] + }, + { + "teal": 413, + "source": 119, + "pc": [ + 539 + ] + }, + { + "teal": 414, + "source": 119, + "pc": [ + 540 + ] + }, + { + "teal": 415, + "source": 119, + "pc": [ + 541, + 542 + ] + }, + { + "teal": 416, + "source": 119, + "pc": [ + 543 + ] + }, + { + "teal": 417, + "source": 119, + "pc": [ + 544 + ] + }, + { + "teal": 421, + "source": 120, + "pc": [ + 545, + 546 + ] + }, + { + "teal": 422, + "source": 120, + "pc": [ + 547 + ] + }, + { + "teal": 423, + "source": 120, + "pc": [ + 548 + ] + }, + { + "teal": 424, + "source": 120, + "pc": [ + 549 + ] + }, + { + "teal": 425, + "source": 120, + "pc": [ + 550 + ] + }, + { + "teal": 426, + "source": 120, + "pc": [ + 551 + ] + }, + { + "teal": 427, + "source": 118, + "pc": [ + 552 + ] + }, + { + "teal": 432, + "source": 123, + "pc": [ + 553, + 554, + 555 + ] + }, + { + "teal": 433, + "source": 123, + "pc": [ + 556 + ] + }, + { + "teal": 434, + "source": 123, + "pc": [ + 557 + ] + }, + { + "teal": 438, + "source": 123, + "pc": [ + 558, + 559, + 560 + ] + }, + { + "teal": 442, + "source": 124, + "pc": [ + 561, + 562, + 563, + 564, + 565 + ] + }, + { + "teal": 443, + "source": 124, + "pc": [ + 566, + 567 + ] + }, + { + "teal": 444, + "source": 124, + "pc": [ + 568 + ] + }, + { + "teal": 445, + "source": 124, + "pc": [ + 569 + ] + }, + { + "teal": 446, + "source": 123, + "pc": [ + 570 + ] + }, + { + "teal": 451, + "source": 127, + "pc": [ + 571, + 572, + 573 + ] + }, + { + "teal": 452, + "source": 127, + "pc": [ + 574 + ] + }, + { + "teal": 453, + "source": 127, + "pc": [ + 575 + ] + }, + { + "teal": 457, + "source": 127, + "pc": [ + 576, + 577, + 578 + ] + }, + { + "teal": 461, + "source": 128, + "pc": [ + 579, + 580 + ] + }, + { + "teal": 462, + "source": 128, + "pc": [ + 581, + 582 + ] + }, + { + "teal": 463, + "source": 128, + "pc": [ + 583 + ] + }, + { + "teal": 464, + "source": 128, + "pc": [ + 584 + ] + }, + { + "teal": 468, + "source": 129, + "pc": [ + 585, + 586 + ] + }, + { + "teal": 469, + "source": 129, + "pc": [ + 587, + 588 + ] + }, + { + "teal": 470, + "source": 129, + "pc": [ + 589 + ] + }, + { + "teal": 471, + "source": 129, + "pc": [ + 590 + ] + }, + { + "teal": 472, + "source": 127, + "pc": [ + 591 + ] + }, + { + "teal": 477, + "source": 132, + "pc": [ + 592, + 593, + 594 + ] + }, + { + "teal": 478, + "source": 132, + "pc": [ + 595 + ] + }, + { + "teal": 479, + "source": 132, + "pc": [ + 596 + ] + }, + { + "teal": 483, + "source": 132, + "pc": [ + 597, + 598, + 599 + ] + }, + { + "teal": 486, + "source": 132, + "pc": [ + 600 + ] + }, + { + "teal": 487, + "source": 132, + "pc": [ + 601, + 602 + ] + }, + { + "teal": 491, + "source": 134, + "pc": [ + 603, + 604 + ] + }, + { + "teal": 492, + "source": 134, + "pc": [ + 605, + 606 + ] + }, + { + "teal": 496, + "source": 135, + "pc": [ + 607 + ] + }, + { + "teal": 497, + "source": 135, + "pc": [ + 608 + ] + }, + { + "teal": 498, + "source": 135, + "pc": [ + 609, + 610 + ] + }, + { + "teal": 502, + "source": 136, + "pc": [ + 611, + 612 + ] + }, + { + "teal": 503, + "source": 136, + "pc": [ + 613, + 614 + ] + }, + { + "teal": 507, + "source": 137, + "pc": [ + 615, + 616 + ] + }, + { + "teal": 508, + "source": 137, + "pc": [ + 617, + 618 + ] + }, + { + "teal": 509, + "source": 137, + "pc": [ + 619 + ] + }, + { + "teal": 510, + "source": 137, + "pc": [ + 620, + 621 + ] + }, + { + "teal": 511, + "source": 137, + "pc": [ + 622 + ] + }, + { + "teal": 512, + "source": 137, + "pc": [ + 623 + ] + }, + { + "teal": 513, + "source": 137, + "pc": [ + 624, + 625 + ] + }, + { + "teal": 514, + "source": 137, + "pc": [ + 626 + ] + }, + { + "teal": 515, + "source": 137, + "pc": [ + 627 + ] + }, + { + "teal": 516, + "source": 132, + "pc": [ + 628 + ] + }, + { + "teal": 521, + "source": 151, + "pc": [ + 629, + 630, + 631 + ] + }, + { + "teal": 522, + "source": 151, + "pc": [ + 632 + ] + }, + { + "teal": 523, + "source": 151, + "pc": [ + 633 + ] + }, + { + "teal": 527, + "source": 151, + "pc": [ + 634, + 635, + 636 + ] + }, + { + "teal": 531, + "source": 152, + "pc": [ + 637, + 638, + 639, + 640, + 641, + 642 + ] + }, + { + "teal": 532, + "source": 152, + "pc": [ + 643, + 644, + 645 + ] + }, + { + "teal": 533, + "source": 152, + "pc": [ + 646 + ] + }, + { + "teal": 534, + "source": 152, + "pc": [ + 647, + 648 + ] + }, + { + "teal": 535, + "source": 152, + "pc": [ + 649 + ] + }, + { + "teal": 536, + "source": 152, + "pc": [ + 650 + ] + }, + { + "teal": 537, + "source": 152, + "pc": [ + 651 + ] + }, + { + "teal": 538, + "source": 151, + "pc": [ + 652 + ] + }, + { + "teal": 543, + "source": 155, + "pc": [ + 653 + ] + }, + { + "teal": 546, + "source": 155, + "pc": [ + 654, + 655, + 656 + ] + }, + { + "teal": 547, + "source": 155, + "pc": [ + 657, + 658, + 659 + ] + }, + { + "teal": 550, + "source": 155, + "pc": [ + 660, + 661, + 662 + ] + }, + { + "teal": 551, + "source": 155, + "pc": [ + 663 + ] + }, + { + "teal": 552, + "source": 155, + "pc": [ + 664 + ] + }, + { + "teal": 553, + "source": 155, + "pc": [ + 665, + 666 + ] + }, + { + "teal": 554, + "source": 155, + "pc": [ + 667 + ] + }, + { + "teal": 555, + "source": 155, + "pc": [ + 668 + ] + }, + { + "teal": 556, + "source": 155, + "pc": [ + 669, + 670, + 671 + ] + }, + { + "teal": 557, + "source": 155, + "pc": [ + 672 + ] + }, + { + "teal": 558, + "source": 155, + "pc": [ + 673 + ] + }, + { + "teal": 559, + "source": 155, + "pc": [ + 674 + ] + }, + { + "teal": 560, + "source": 155, + "pc": [ + 675 + ] + }, + { + "teal": 561, + "source": 155, + "pc": [ + 676 + ] + }, + { + "teal": 562, + "source": 155, + "pc": [ + 677 + ] + }, + { + "teal": 566, + "source": 155, + "pc": [ + 678, + 679, + 680 + ] + }, + { + "teal": 570, + "source": 156, + "pc": [ + 681, + 682 + ] + }, + { + "teal": 571, + "source": 156, + "pc": [ + 683, + 684 + ] + }, + { + "teal": 572, + "source": 156, + "pc": [ + 685, + 686 + ] + }, + { + "teal": 573, + "source": 156, + "pc": [ + 687, + 688, + 689 + ] + }, + { + "teal": 574, + "source": 156, + "pc": [ + 690 + ] + }, + { + "teal": 575, + "source": 156, + "pc": [ + 691 + ] + }, + { + "teal": 579, + "source": 158, + "pc": [ + 692, + 693 + ] + }, + { + "teal": 580, + "source": 158, + "pc": [ + 694, + 695 + ] + }, + { + "teal": 584, + "source": 160, + "pc": [ + 696, + 697 + ] + }, + { + "teal": 585, + "source": 155, + "pc": [ + 698 + ] + }, + { + "teal": 590, + "source": 163, + "pc": [ + 699, + 700, + 701 + ] + }, + { + "teal": 591, + "source": 163, + "pc": [ + 702 + ] + }, + { + "teal": 592, + "source": 163, + "pc": [ + 703 + ] + }, + { + "teal": 596, + "source": 163, + "pc": [ + 704, + 705, + 706 + ] + }, + { + "teal": 608, + "source": 164, + "pc": [ + 707 + ] + }, + { + "teal": 609, + "source": 164, + "pc": [ + 708 + ] + }, + { + "teal": 610, + "source": 164, + "pc": [ + 709, + 710 + ] + }, + { + "teal": 614, + "source": 165, + "pc": [ + 711 + ] + }, + { + "teal": 615, + "source": 165, + "pc": [ + 712, + 713 + ] + }, + { + "teal": 619, + "source": 166, + "pc": [ + 714, + 715, + 716, + 717, + 718, + 719, + 720, + 721, + 722, + 723, + 724, + 725, + 726, + 727, + 728, + 729, + 730, + 731, + 732, + 733, + 734, + 735, + 736, + 737, + 738, + 739, + 740, + 741, + 742, + 743, + 744, + 745, + 746, + 747, + 748, + 749, + 750, + 751, + 752, + 753, + 754, + 755, + 756, + 757, + 758, + 759, + 760, + 761, + 762, + 763, + 764, + 765, + 766, + 767, + 768, + 769 + ] + }, + { + "teal": 620, + "source": 166, + "pc": [ + 770, + 771 + ] + }, + { + "teal": 624, + "source": 167, + "pc": [ + 772, + 773, + 774 + ] + }, + { + "teal": 625, + "source": 167, + "pc": [ + 775, + 776 + ] + }, + { + "teal": 629, + "source": 168, + "pc": [ + 777 + ] + }, + { + "teal": 630, + "source": 168, + "pc": [ + 778, + 779 + ] + }, + { + "teal": 634, + "source": 169, + "pc": [ + 780 + ] + }, + { + "teal": 635, + "source": 169, + "pc": [ + 781, + 782 + ] + }, + { + "teal": 639, + "source": 170, + "pc": [ + 783 + ] + }, + { + "teal": 640, + "source": 170, + "pc": [ + 784, + 785 + ] + }, + { + "teal": 644, + "source": 171, + "pc": [ + 786 + ] + }, + { + "teal": 645, + "source": 171, + "pc": [ + 787, + 788 + ] + }, + { + "teal": 648, + "source": 164, + "pc": [ + 789 + ] + }, + { + "teal": 649, + "source": 164, + "pc": [ + 790, + 791 + ] + }, + { + "teal": 652, + "source": 164, + "pc": [ + 792 + ] + }, + { + "teal": 653, + "source": 163, + "pc": [ + 793 + ] + }, + { + "teal": 658, + "source": 175, + "pc": [ + 794, + 795, + 796 + ] + }, + { + "teal": 659, + "source": 175, + "pc": [ + 797 + ] + }, + { + "teal": 660, + "source": 175, + "pc": [ + 798 + ] + }, + { + "teal": 664, + "source": 175, + "pc": [ + 799, + 800, + 801 + ] + }, + { + "teal": 668, + "source": 178, + "pc": [ + 802 + ] + }, + { + "teal": 669, + "source": 178, + "pc": [ + 803, + 804, + 805 + ] + }, + { + "teal": 670, + "source": 178, + "pc": [ + 806, + 807, + 808 + ] + }, + { + "teal": 671, + "source": 178, + "pc": [ + 809 + ] + }, + { + "teal": 672, + "source": 178, + "pc": [ + 810 + ] + }, + { + "teal": 673, + "source": 175, + "pc": [ + 811 + ] + }, + { + "teal": 678, + "source": 181, + "pc": [ + 812, + 813, + 814 + ] + }, + { + "teal": 679, + "source": 181, + "pc": [ + 815 + ] + }, + { + "teal": 680, + "source": 181, + "pc": [ + 816 + ] + }, + { + "teal": 684, + "source": 181, + "pc": [ + 817, + 818, + 819 + ] + }, + { + "teal": 688, + "source": 182, + "pc": [ + 820, + 821 + ] + }, + { + "teal": 689, + "source": 182, + "pc": [ + 822, + 823, + 824 + ] + }, + { + "teal": 690, + "source": 182, + "pc": [ + 825, + 826, + 827 + ] + }, + { + "teal": 691, + "source": 182, + "pc": [ + 828 + ] + }, + { + "teal": 692, + "source": 182, + "pc": [ + 829 + ] + }, + { + "teal": 693, + "source": 181, + "pc": [ + 830 + ] + }, + { + "teal": 698, + "source": 185, + "pc": [ + 831, + 832, + 833 + ] + }, + { + "teal": 699, + "source": 185, + "pc": [ + 834 + ] + }, + { + "teal": 700, + "source": 185, + "pc": [ + 835 + ] + }, + { + "teal": 704, + "source": 185, + "pc": [ + 836, + 837, + 838 + ] + }, + { + "teal": 708, + "source": 187, + "pc": [ + 839, + 840, + 841, + 842, + 843, + 844, + 845, + 846 + ] + }, + { + "teal": 709, + "source": 187, + "pc": [ + 847, + 848, + 849 + ] + }, + { + "teal": 710, + "source": 187, + "pc": [ + 850, + 851, + 852, + 853 + ] + }, + { + "teal": 711, + "source": 187, + "pc": [ + 854 + ] + }, + { + "teal": 712, + "source": 187, + "pc": [ + 855 + ] + }, + { + "teal": 713, + "source": 185, + "pc": [ + 856 + ] + }, + { + "teal": 718, + "source": 190, + "pc": [ + 857, + 858, + 859 + ] + }, + { + "teal": 719, + "source": 190, + "pc": [ + 860 + ] + }, + { + "teal": 720, + "source": 190, + "pc": [ + 861 + ] + }, + { + "teal": 724, + "source": 190, + "pc": [ + 862, + 863, + 864 + ] + }, + { + "teal": 727, + "source": 190, + "pc": [ + 865 + ] + }, + { + "teal": 728, + "source": 190, + "pc": [ + 866 + ] + }, + { + "teal": 732, + "source": 191, + "pc": [ + 867 + ] + }, + { + "teal": 733, + "source": 191, + "pc": [ + 868, + 869 + ] + }, + { + "teal": 737, + "source": 192, + "pc": [ + 870 + ] + }, + { + "teal": 738, + "source": 192, + "pc": [ + 871 + ] + }, + { + "teal": 739, + "source": 192, + "pc": [ + 872 + ] + }, + { + "teal": 740, + "source": 192, + "pc": [ + 873 + ] + }, + { + "teal": 744, + "source": 194, + "pc": [ + 874 + ] + }, + { + "teal": 745, + "source": 194, + "pc": [ + 875, + 876 + ] + }, + { + "teal": 749, + "source": 195, + "pc": [ + 877 + ] + }, + { + "teal": 750, + "source": 195, + "pc": [ + 878 + ] + }, + { + "teal": 751, + "source": 195, + "pc": [ + 879 + ] + }, + { + "teal": 752, + "source": 195, + "pc": [ + 880 + ] + }, + { + "teal": 753, + "source": 190, + "pc": [ + 881 + ] + }, + { + "teal": 758, + "source": 198, + "pc": [ + 882, + 883, + 884 + ] + }, + { + "teal": 759, + "source": 198, + "pc": [ + 885 + ] + }, + { + "teal": 760, + "source": 198, + "pc": [ + 886 + ] + }, + { + "teal": 764, + "source": 198, + "pc": [ + 887, + 888, + 889 + ] + }, + { + "teal": 768, + "source": 199, + "pc": [ + 890, + 891 + ] + }, + { + "teal": 769, + "source": 199, + "pc": [ + 892, + 893 + ] + }, + { + "teal": 773, + "source": 200, + "pc": [ + 894, + 895 + ] + }, + { + "teal": 774, + "source": 200, + "pc": [ + 896, + 897 + ] + }, + { + "teal": 775, + "source": 200, + "pc": [ + 898 + ] + }, + { + "teal": 776, + "source": 200, + "pc": [ + 899 + ] + }, + { + "teal": 777, + "source": 198, + "pc": [ + 900 + ] + }, + { + "teal": 782, + "source": 203, + "pc": [ + 901, + 902, + 903 + ] + }, + { + "teal": 783, + "source": 203, + "pc": [ + 904 + ] + }, + { + "teal": 784, + "source": 203, + "pc": [ + 905 + ] + }, + { + "teal": 788, + "source": 203, + "pc": [ + 906, + 907, + 908 + ] + }, + { + "teal": 791, + "source": 203, + "pc": [ + 909 + ] + }, + { + "teal": 792, + "source": 203, + "pc": [ + 910, + 911 + ] + }, + { + "teal": 796, + "source": 204, + "pc": [ + 912, + 913 + ] + }, + { + "teal": 797, + "source": 204, + "pc": [ + 914, + 915 + ] + }, + { + "teal": 798, + "source": 204, + "pc": [ + 916, + 917 + ] + }, + { + "teal": 802, + "source": 205, + "pc": [ + 918, + 919, + 920, + 921, + 922, + 923, + 924, + 925, + 926, + 927, + 928, + 929, + 930, + 931, + 932, + 933, + 934, + 935, + 936, + 937, + 938, + 939, + 940, + 941, + 942, + 943, + 944, + 945, + 946, + 947, + 948, + 949, + 950, + 951, + 952 + ] + }, + { + "teal": 803, + "source": 205, + "pc": [ + 953, + 954 + ] + }, + { + "teal": 804, + "source": 205, + "pc": [ + 955, + 956 + ] + }, + { + "teal": 805, + "source": 205, + "pc": [ + 957, + 958 + ] + }, + { + "teal": 809, + "source": 206, + "pc": [ + 959, + 960 + ] + }, + { + "teal": 810, + "source": 206, + "pc": [ + 961 + ] + }, + { + "teal": 814, + "source": 207, + "pc": [ + 962, + 963 + ] + }, + { + "teal": 815, + "source": 207, + "pc": [ + 964 + ] + }, + { + "teal": 819, + "source": 209, + "pc": [ + 965, + 966 + ] + }, + { + "teal": 820, + "source": 209, + "pc": [ + 967 + ] + }, + { + "teal": 821, + "source": 209, + "pc": [ + 968, + 969 + ] + }, + { + "teal": 822, + "source": 209, + "pc": [ + 970 + ] + }, + { + "teal": 823, + "source": 209, + "pc": [ + 971, + 972 + ] + }, + { + "teal": 824, + "source": 209, + "pc": [ + 973, + 974 + ] + }, + { + "teal": 825, + "source": 209, + "pc": [ + 975, + 976 + ] + }, + { + "teal": 829, + "source": 210, + "pc": [ + 977, + 978 + ] + }, + { + "teal": 830, + "source": 210, + "pc": [ + 979 + ] + }, + { + "teal": 834, + "source": 211, + "pc": [ + 980, + 981 + ] + }, + { + "teal": 835, + "source": 211, + "pc": [ + 982 + ] + }, + { + "teal": 836, + "source": 203, + "pc": [ + 983 + ] + }, + { + "teal": 841, + "source": 214, + "pc": [ + 984, + 985, + 986 + ] + }, + { + "teal": 842, + "source": 214, + "pc": [ + 987 + ] + }, + { + "teal": 843, + "source": 214, + "pc": [ + 988 + ] + }, + { + "teal": 847, + "source": 214, + "pc": [ + 989, + 990, + 991 + ] + }, + { + "teal": 854, + "source": 215, + "pc": [ + 992 + ] + }, + { + "teal": 855, + "source": 215, + "pc": [ + 993, + 994 + ] + }, + { + "teal": 856, + "source": 215, + "pc": [ + 995 + ] + }, + { + "teal": 857, + "source": 215, + "pc": [ + 996 + ] + }, + { + "teal": 860, + "source": 215, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"pay\"}", + "pc": [ + 997 + ] + }, + { + "teal": 863, + "source": 215, + "pc": [ + 998 + ] + }, + { + "teal": 864, + "source": 216, + "pc": [ + 999, + 1000 + ] + }, + { + "teal": 865, + "source": 216, + "pc": [ + 1001 + ] + }, + { + "teal": 866, + "source": 216, + "pc": [ + 1002 + ] + }, + { + "teal": 869, + "source": 216, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"amount\",\"condition\":\"greaterThan\",\"expected\":\">0\"}", + "pc": [ + 1003 + ] + }, + { + "teal": 882, + "source": 219, + "pc": [ + 1004 + ] + }, + { + "teal": 883, + "source": 219, + "pc": [ + 1005, + 1006 + ] + }, + { + "teal": 884, + "source": 219, + "pc": [ + 1007 + ] + }, + { + "teal": 885, + "source": 219, + "pc": [ + 1008 + ] + }, + { + "teal": 888, + "source": 219, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"appl\"}", + "pc": [ + 1009 + ] + }, + { + "teal": 891, + "source": 219, + "pc": [ + 1010 + ] + }, + { + "teal": 892, + "source": 220, + "pc": [ + 1011, + 1012 + ] + }, + { + "teal": 893, + "source": 220, + "pc": [ + 1013 + ] + }, + { + "teal": 894, + "source": 220, + "pc": [ + 1014 + ] + }, + { + "teal": 897, + "source": 220, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"applicationID\",\"expected\":\"AppID.fromUint64(0)\"}", + "pc": [ + 1015 + ] + }, + { + "teal": 901, + "source": 219, + "pc": [ + 1016 + ] + }, + { + "teal": 902, + "source": 222, + "pc": [ + 1017, + 1018, + 1019 + ] + }, + { + "teal": 903, + "source": 222, + "pc": [ + 1020 + ] + }, + { + "teal": 904, + "source": 222, + "pc": [ + 1021 + ] + }, + { + "teal": 907, + "source": 222, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"applicationArgs\",\"index\":\"0\",\"expected\":\"'foo'\"}", + "pc": [ + 1022 + ] + }, + { + "teal": 910, + "source": 219, + "pc": [ + 1023 + ] + }, + { + "teal": 911, + "source": 221, + "pc": [ + 1024, + 1025, + 1026 + ] + }, + { + "teal": 912, + "source": 224, + "pc": [ + 1027, + 1028 + ] + }, + { + "teal": 913, + "source": 224, + "pc": [ + 1029 + ] + }, + { + "teal": 914, + "source": 219, + "pc": [ + 1030 + ] + }, + { + "teal": 915, + "source": 221, + "pc": [ + 1031, + 1032, + 1033 + ] + }, + { + "teal": 916, + "source": 224, + "pc": [ + 1034, + 1035, + 1036, + 1037, + 1038 + ] + }, + { + "teal": 917, + "source": 224, + "pc": [ + 1039 + ] + }, + { + "teal": 918, + "source": 224, + "pc": [ + 1040 + ] + }, + { + "teal": 921, + "source": 224, + "errorMessage": "transaction verification failed: {\"txn\":{\"txnText\":\"this.txnGroup[0]\"},\"field\":\"applicationArgs 1\",\"condition\":\"includedIn\",\"expected\":\"['bar', 'baz']\"}", + "pc": [ + 1041 + ] + }, + { + "teal": 928, + "source": 229, + "pc": [ + 1042 + ] + }, + { + "teal": 929, + "source": 229, + "pc": [ + 1043, + 1044 + ] + }, + { + "teal": 930, + "source": 229, + "pc": [ + 1045, + 1046 + ] + }, + { + "teal": 931, + "source": 229, + "pc": [ + 1047 + ] + }, + { + "teal": 934, + "source": 229, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"axfer\"}", + "pc": [ + 1048 + ] + }, + { + "teal": 937, + "source": 229, + "pc": [ + 1049 + ] + }, + { + "teal": 938, + "source": 230, + "pc": [ + 1050, + 1051 + ] + }, + { + "teal": 939, + "source": 230, + "pc": [ + 1052, + 1053 + ] + }, + { + "teal": 940, + "source": 230, + "pc": [ + 1054 + ] + }, + { + "teal": 943, + "source": 230, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"assetReceiver\",\"expected\":\"this.app.address\"}", + "pc": [ + 1055 + ] + }, + { + "teal": 950, + "source": 233, + "pc": [ + 1056 + ] + }, + { + "teal": 951, + "source": 233, + "pc": [ + 1057, + 1058 + ] + }, + { + "teal": 952, + "source": 233, + "pc": [ + 1059, + 1060 + ] + }, + { + "teal": 953, + "source": 233, + "pc": [ + 1061 + ] + }, + { + "teal": 956, + "source": 233, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"acfg\"}", + "pc": [ + 1062 + ] + }, + { + "teal": 959, + "source": 233, + "pc": [ + 1063 + ] + }, + { + "teal": 960, + "source": 234, + "pc": [ + 1064, + 1065 + ] + }, + { + "teal": 961, + "source": 234, + "pc": [ + 1066 + ] + }, + { + "teal": 962, + "source": 234, + "pc": [ + 1067 + ] + }, + { + "teal": 965, + "source": 234, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"configAsset\",\"expected\":\"AssetID.fromUint64(0)\"}", + "pc": [ + 1068 + ] + }, + { + "teal": 972, + "source": 237, + "pc": [ + 1069 + ] + }, + { + "teal": 973, + "source": 237, + "pc": [ + 1070, + 1071 + ] + }, + { + "teal": 974, + "source": 237, + "pc": [ + 1072 + ] + }, + { + "teal": 975, + "source": 237, + "pc": [ + 1073 + ] + }, + { + "teal": 978, + "source": 237, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"typeEnum\",\"expected\":\"keyreg\"}", + "pc": [ + 1074 + ] + }, + { + "teal": 981, + "source": 237, + "pc": [ + 1075 + ] + }, + { + "teal": 982, + "source": 238, + "pc": [ + 1076, + 1077 + ] + }, + { + "teal": 983, + "source": 238, + "pc": [ + 1078, + 1079 + ] + }, + { + "teal": 984, + "source": 238, + "pc": [ + 1080 + ] + }, + { + "teal": 987, + "source": 238, + "errorMessage": "transaction verification failed: {\"txn\":\"this.txnGroup[0]\",\"field\":\"voteFirst\",\"expected\":\"1337\"}", + "pc": [ + 1081 + ] + }, + { + "teal": 988, + "source": 214, + "pc": [ + 1082 + ] + }, + { + "teal": 993, + "source": 242, + "pc": [ + 1083, + 1084, + 1085 + ] + }, + { + "teal": 994, + "source": 242, + "pc": [ + 1086 + ] + }, + { + "teal": 995, + "source": 242, + "pc": [ + 1087 + ] + }, + { + "teal": 999, + "source": 242, + "pc": [ + 1088, + 1089, + 1090 + ] + }, + { + "teal": 1002, + "source": 242, + "pc": [ + 1091 + ] + }, + { + "teal": 1006, + "source": 243, + "pc": [ + 1092 + ] + }, + { + "teal": 1007, + "source": 243, + "pc": [ + 1093, + 1094 + ] + }, + { + "teal": 1011, + "source": 244, + "pc": [ + 1095, + 1096 + ] + }, + { + "teal": 1012, + "source": 244, + "pc": [ + 1097, + 1098 + ] + }, + { + "teal": 1013, + "source": 244, + "pc": [ + 1099 + ] + }, + { + "teal": 1014, + "source": 244, + "pc": [ + 1100, + 1101 + ] + }, + { + "teal": 1018, + "source": 245, + "pc": [ + 1102, + 1103 + ] + }, + { + "teal": 1019, + "source": 245, + "pc": [ + 1104, + 1105, + 1106, + 1107, + 1108, + 1109, + 1110, + 1111 + ] + }, + { + "teal": 1020, + "source": 245, + "pc": [ + 1112 + ] + }, + { + "teal": 1021, + "source": 245, + "pc": [ + 1113 + ] + }, + { + "teal": 1022, + "source": 242, + "pc": [ + 1114 + ] + }, + { + "teal": 1027, + "source": 248, + "pc": [ + 1115 + ] + }, + { + "teal": 1030, + "source": 248, + "pc": [ + 1116, + 1117, + 1118 + ] + }, + { + "teal": 1031, + "source": 248, + "pc": [ + 1119 + ] + }, + { + "teal": 1032, + "source": 248, + "pc": [ + 1120 + ] + }, + { + "teal": 1033, + "source": 248, + "pc": [ + 1121 + ] + }, + { + "teal": 1034, + "source": 248, + "pc": [ + 1122, + 1123, + 1124 + ] + }, + { + "teal": 1035, + "source": 248, + "pc": [ + 1125 + ] + }, + { + "teal": 1036, + "source": 248, + "pc": [ + 1126 + ] + }, + { + "teal": 1037, + "source": 248, + "pc": [ + 1127 + ] + }, + { + "teal": 1038, + "source": 248, + "pc": [ + 1128 + ] + }, + { + "teal": 1039, + "source": 248, + "pc": [ + 1129 + ] + }, + { + "teal": 1040, + "source": 248, + "pc": [ + 1130 + ] + }, + { + "teal": 1044, + "source": 248, + "pc": [ + 1131, + 1132, + 1133 + ] + }, + { + "teal": 1048, + "source": 249, + "pc": [ + 1134, + 1135, + 1136, + 1137, + 1138, + 1139, + 1140, + 1141, + 1142, + 1143, + 1144, + 1145, + 1146, + 1147, + 1148, + 1149, + 1150, + 1151, + 1152, + 1153, + 1154, + 1155, + 1156, + 1157, + 1158, + 1159, + 1160, + 1161, + 1162, + 1163, + 1164, + 1165, + 1166, + 1167, + 1168, + 1169, + 1170, + 1171, + 1172, + 1173, + 1174, + 1175, + 1176, + 1177, + 1178, + 1179, + 1180, + 1181, + 1182, + 1183, + 1184, + 1185, + 1186, + 1187, + 1188, + 1189, + 1190, + 1191, + 1192, + 1193, + 1194, + 1195, + 1196, + 1197, + 1198, + 1199, + 1200, + 1201, + 1202, + 1203, + 1204, + 1205, + 1206, + 1207, + 1208, + 1209, + 1210, + 1211, + 1212, + 1213, + 1214, + 1215, + 1216, + 1217, + 1218, + 1219, + 1220, + 1221, + 1222, + 1223, + 1224, + 1225, + 1226, + 1227, + 1228, + 1229, + 1230, + 1231, + 1232, + 1233, + 1234, + 1235, + 1236, + 1237, + 1238, + 1239, + 1240, + 1241, + 1242, + 1243, + 1244, + 1245, + 1246, + 1247, + 1248, + 1249, + 1250, + 1251, + 1252, + 1253, + 1254, + 1255, + 1256, + 1257, + 1258, + 1259, + 1260, + 1261, + 1262, + 1263, + 1264, + 1265, + 1266, + 1267, + 1268, + 1269, + 1270, + 1271, + 1272, + 1273, + 1274, + 1275, + 1276, + 1277, + 1278, + 1279, + 1280, + 1281, + 1282, + 1283, + 1284, + 1285, + 1286, + 1287, + 1288, + 1289, + 1290, + 1291, + 1292, + 1293, + 1294, + 1295, + 1296, + 1297, + 1298, + 1299, + 1300, + 1301, + 1302, + 1303, + 1304, + 1305, + 1306, + 1307, + 1308, + 1309, + 1310, + 1311, + 1312, + 1313, + 1314, + 1315, + 1316, + 1317, + 1318, + 1319, + 1320, + 1321, + 1322, + 1323, + 1324, + 1325, + 1326, + 1327, + 1328, + 1329, + 1330, + 1331, + 1332, + 1333, + 1334, + 1335, + 1336, + 1337, + 1338, + 1339, + 1340, + 1341, + 1342, + 1343, + 1344, + 1345, + 1346, + 1347, + 1348, + 1349, + 1350, + 1351, + 1352, + 1353, + 1354, + 1355, + 1356, + 1357, + 1358, + 1359, + 1360, + 1361, + 1362, + 1363, + 1364, + 1365, + 1366, + 1367, + 1368, + 1369, + 1370, + 1371, + 1372, + 1373, + 1374, + 1375, + 1376, + 1377, + 1378, + 1379, + 1380, + 1381, + 1382, + 1383, + 1384, + 1385, + 1386, + 1387, + 1388, + 1389, + 1390, + 1391, + 1392, + 1393, + 1394, + 1395, + 1396, + 1397, + 1398, + 1399, + 1400, + 1401, + 1402, + 1403, + 1404, + 1405, + 1406, + 1407, + 1408, + 1409, + 1410, + 1411, + 1412, + 1413, + 1414, + 1415, + 1416, + 1417, + 1418, + 1419, + 1420, + 1421, + 1422, + 1423, + 1424, + 1425, + 1426, + 1427, + 1428, + 1429, + 1430, + 1431, + 1432, + 1433, + 1434, + 1435, + 1436, + 1437, + 1438, + 1439, + 1440, + 1441, + 1442, + 1443, + 1444, + 1445, + 1446, + 1447, + 1448, + 1449, + 1450, + 1451, + 1452, + 1453, + 1454, + 1455, + 1456, + 1457, + 1458, + 1459, + 1460, + 1461, + 1462, + 1463, + 1464, + 1465, + 1466, + 1467, + 1468, + 1469, + 1470, + 1471, + 1472, + 1473, + 1474, + 1475, + 1476, + 1477, + 1478, + 1479, + 1480, + 1481, + 1482, + 1483, + 1484, + 1485, + 1486, + 1487, + 1488, + 1489, + 1490, + 1491, + 1492, + 1493, + 1494, + 1495, + 1496, + 1497, + 1498, + 1499, + 1500, + 1501, + 1502, + 1503, + 1504, + 1505, + 1506, + 1507, + 1508, + 1509, + 1510, + 1511, + 1512, + 1513, + 1514, + 1515, + 1516, + 1517, + 1518, + 1519, + 1520, + 1521, + 1522, + 1523, + 1524, + 1525, + 1526, + 1527, + 1528, + 1529, + 1530, + 1531, + 1532, + 1533, + 1534, + 1535, + 1536, + 1537, + 1538, + 1539, + 1540, + 1541, + 1542, + 1543, + 1544, + 1545, + 1546, + 1547, + 1548, + 1549, + 1550, + 1551, + 1552, + 1553, + 1554, + 1555, + 1556, + 1557, + 1558, + 1559, + 1560, + 1561, + 1562, + 1563, + 1564, + 1565, + 1566, + 1567, + 1568, + 1569, + 1570, + 1571, + 1572, + 1573, + 1574, + 1575, + 1576, + 1577, + 1578, + 1579, + 1580, + 1581, + 1582, + 1583, + 1584, + 1585, + 1586, + 1587, + 1588, + 1589, + 1590, + 1591, + 1592, + 1593, + 1594, + 1595, + 1596, + 1597, + 1598, + 1599, + 1600, + 1601, + 1602, + 1603, + 1604, + 1605, + 1606, + 1607, + 1608, + 1609, + 1610, + 1611, + 1612, + 1613, + 1614, + 1615, + 1616, + 1617, + 1618, + 1619, + 1620, + 1621, + 1622, + 1623, + 1624, + 1625, + 1626, + 1627, + 1628, + 1629, + 1630, + 1631, + 1632, + 1633, + 1634, + 1635, + 1636, + 1637, + 1638, + 1639, + 1640, + 1641, + 1642, + 1643, + 1644, + 1645, + 1646, + 1647, + 1648, + 1649, + 1650, + 1651, + 1652, + 1653, + 1654, + 1655, + 1656, + 1657, + 1658, + 1659, + 1660, + 1661, + 1662, + 1663, + 1664, + 1665, + 1666, + 1667, + 1668, + 1669, + 1670, + 1671, + 1672, + 1673, + 1674, + 1675, + 1676, + 1677, + 1678, + 1679, + 1680, + 1681, + 1682, + 1683, + 1684, + 1685, + 1686, + 1687, + 1688, + 1689, + 1690, + 1691, + 1692, + 1693, + 1694, + 1695, + 1696, + 1697, + 1698, + 1699, + 1700, + 1701, + 1702, + 1703, + 1704, + 1705, + 1706, + 1707, + 1708, + 1709, + 1710, + 1711, + 1712, + 1713, + 1714, + 1715, + 1716, + 1717, + 1718, + 1719, + 1720, + 1721, + 1722, + 1723, + 1724, + 1725, + 1726, + 1727, + 1728, + 1729, + 1730, + 1731, + 1732, + 1733, + 1734, + 1735, + 1736, + 1737, + 1738, + 1739, + 1740, + 1741, + 1742, + 1743, + 1744, + 1745, + 1746, + 1747, + 1748, + 1749, + 1750, + 1751, + 1752, + 1753, + 1754, + 1755, + 1756, + 1757, + 1758, + 1759, + 1760, + 1761, + 1762, + 1763, + 1764, + 1765, + 1766, + 1767, + 1768, + 1769, + 1770, + 1771, + 1772, + 1773, + 1774, + 1775, + 1776, + 1777, + 1778, + 1779, + 1780, + 1781, + 1782, + 1783, + 1784, + 1785, + 1786, + 1787, + 1788, + 1789, + 1790, + 1791, + 1792, + 1793, + 1794, + 1795, + 1796, + 1797, + 1798, + 1799, + 1800, + 1801, + 1802, + 1803, + 1804, + 1805, + 1806, + 1807, + 1808, + 1809, + 1810, + 1811, + 1812, + 1813, + 1814, + 1815, + 1816, + 1817, + 1818, + 1819, + 1820, + 1821, + 1822, + 1823, + 1824, + 1825, + 1826, + 1827, + 1828, + 1829, + 1830, + 1831, + 1832, + 1833, + 1834, + 1835, + 1836, + 1837, + 1838, + 1839, + 1840, + 1841, + 1842, + 1843, + 1844, + 1845, + 1846, + 1847, + 1848, + 1849, + 1850, + 1851, + 1852, + 1853, + 1854, + 1855, + 1856, + 1857, + 1858, + 1859, + 1860, + 1861, + 1862, + 1863, + 1864, + 1865, + 1866, + 1867, + 1868, + 1869, + 1870, + 1871, + 1872, + 1873, + 1874, + 1875, + 1876, + 1877, + 1878, + 1879, + 1880, + 1881, + 1882, + 1883, + 1884, + 1885, + 1886, + 1887, + 1888, + 1889, + 1890, + 1891, + 1892, + 1893, + 1894, + 1895, + 1896, + 1897, + 1898, + 1899, + 1900, + 1901, + 1902, + 1903, + 1904, + 1905, + 1906, + 1907, + 1908, + 1909, + 1910, + 1911, + 1912, + 1913, + 1914, + 1915, + 1916, + 1917, + 1918, + 1919, + 1920, + 1921, + 1922, + 1923, + 1924, + 1925, + 1926, + 1927, + 1928, + 1929, + 1930, + 1931, + 1932, + 1933, + 1934, + 1935, + 1936, + 1937, + 1938, + 1939, + 1940, + 1941, + 1942, + 1943, + 1944, + 1945, + 1946, + 1947, + 1948, + 1949, + 1950, + 1951, + 1952, + 1953, + 1954, + 1955, + 1956, + 1957, + 1958, + 1959, + 1960, + 1961, + 1962, + 1963, + 1964, + 1965, + 1966, + 1967, + 1968, + 1969, + 1970, + 1971, + 1972, + 1973, + 1974, + 1975, + 1976, + 1977, + 1978, + 1979, + 1980, + 1981, + 1982, + 1983, + 1984, + 1985, + 1986, + 1987, + 1988, + 1989, + 1990, + 1991, + 1992, + 1993, + 1994, + 1995, + 1996, + 1997, + 1998, + 1999, + 2000, + 2001, + 2002, + 2003, + 2004, + 2005, + 2006, + 2007, + 2008, + 2009, + 2010, + 2011, + 2012, + 2013, + 2014, + 2015, + 2016, + 2017, + 2018, + 2019, + 2020, + 2021, + 2022, + 2023, + 2024, + 2025, + 2026, + 2027, + 2028, + 2029, + 2030, + 2031, + 2032, + 2033, + 2034, + 2035, + 2036, + 2037, + 2038, + 2039, + 2040, + 2041, + 2042, + 2043, + 2044, + 2045, + 2046, + 2047, + 2048, + 2049, + 2050, + 2051, + 2052, + 2053, + 2054, + 2055, + 2056, + 2057, + 2058, + 2059, + 2060, + 2061, + 2062, + 2063, + 2064, + 2065, + 2066, + 2067, + 2068, + 2069, + 2070, + 2071, + 2072, + 2073, + 2074, + 2075, + 2076, + 2077, + 2078, + 2079, + 2080, + 2081, + 2082, + 2083, + 2084, + 2085, + 2086, + 2087, + 2088, + 2089, + 2090, + 2091, + 2092, + 2093, + 2094, + 2095, + 2096, + 2097, + 2098, + 2099, + 2100, + 2101, + 2102, + 2103, + 2104, + 2105, + 2106, + 2107, + 2108, + 2109, + 2110, + 2111, + 2112, + 2113, + 2114, + 2115, + 2116, + 2117, + 2118, + 2119, + 2120, + 2121, + 2122, + 2123, + 2124, + 2125, + 2126, + 2127, + 2128, + 2129, + 2130, + 2131, + 2132, + 2133, + 2134, + 2135, + 2136, + 2137, + 2138, + 2139, + 2140, + 2141, + 2142, + 2143, + 2144, + 2145, + 2146, + 2147, + 2148, + 2149, + 2150, + 2151, + 2152, + 2153, + 2154, + 2155, + 2156, + 2157, + 2158, + 2159, + 2160 + ] + }, + { + "teal": 1049, + "source": 248, + "pc": [ + 2161 + ] + }, + { + "teal": 1054, + "source": 252, + "pc": [ + 2162, + 2163, + 2164 + ] + }, + { + "teal": 1055, + "source": 252, + "pc": [ + 2165 + ] + }, + { + "teal": 1056, + "source": 252, + "pc": [ + 2166 + ] + }, + { + "teal": 1060, + "source": 252, + "pc": [ + 2167, + 2168, + 2169 + ] + }, + { + "teal": 1064, + "source": 253, + "pc": [ + 2170, + 2171, + 2172, + 2173, + 2174, + 2175, + 2176 + ] + }, + { + "teal": 1065, + "source": 253, + "pc": [ + 2177, + 2178, + 2179 + ] + }, + { + "teal": 1066, + "source": 253, + "pc": [ + 2180 + ] + }, + { + "teal": 1067, + "source": 252, + "pc": [ + 2181 + ] + }, + { + "teal": 1071, + "source": 256, + "pc": [ + 2182, + 2183, + 2184 + ] + }, + { + "teal": 1075, + "source": 257, + "pc": [ + 2185, + 2186 + ] + }, + { + "teal": 1076, + "source": 256, + "pc": [ + 2187 + ] + }, + { + "teal": 1081, + "source": 260, + "pc": [ + 2188 + ] + }, + { + "teal": 1084, + "source": 260, + "pc": [ + 2189, + 2190, + 2191 + ] + }, + { + "teal": 1085, + "source": 260, + "pc": [ + 2192 + ] + }, + { + "teal": 1088, + "source": 260, + "pc": [ + 2193, + 2194, + 2195 + ] + }, + { + "teal": 1089, + "source": 260, + "pc": [ + 2196 + ] + }, + { + "teal": 1092, + "source": 260, + "pc": [ + 2197, + 2198, + 2199 + ] + }, + { + "teal": 1093, + "source": 260, + "pc": [ + 2200 + ] + }, + { + "teal": 1094, + "source": 260, + "pc": [ + 2201 + ] + }, + { + "teal": 1095, + "source": 260, + "pc": [ + 2202 + ] + }, + { + "teal": 1096, + "source": 260, + "pc": [ + 2203 + ] + }, + { + "teal": 1097, + "source": 260, + "pc": [ + 2204 + ] + }, + { + "teal": 1101, + "source": 260, + "pc": [ + 2205, + 2206, + 2207 + ] + }, + { + "teal": 1105, + "source": 261, + "pc": [ + 2208, + 2209 + ] + }, + { + "teal": 1106, + "source": 261, + "pc": [ + 2210, + 2211 + ] + }, + { + "teal": 1107, + "source": 261, + "pc": [ + 2212 + ] + }, + { + "teal": 1108, + "source": 260, + "pc": [ + 2213 + ] + }, + { + "teal": 1113, + "source": 264, + "pc": [ + 2214, + 2215, + 2216 + ] + }, + { + "teal": 1114, + "source": 264, + "pc": [ + 2217 + ] + }, + { + "teal": 1115, + "source": 264, + "pc": [ + 2218 + ] + }, + { + "teal": 1119, + "source": 264, + "pc": [ + 2219, + 2220, + 2221 + ] + }, + { + "teal": 1123, + "source": 265, + "pc": [ + 2222 + ] + }, + { + "teal": 1124, + "source": 265, + "pc": [ + 2223 + ] + }, + { + "teal": 1125, + "source": 265, + "pc": [ + 2224, + 2225, + 2226 + ] + }, + { + "teal": 1126, + "source": 265, + "pc": [ + 2227, + 2228 + ] + }, + { + "teal": 1127, + "source": 265, + "pc": [ + 2229 + ] + }, + { + "teal": 1128, + "source": 265, + "pc": [ + 2230 + ] + }, + { + "teal": 1129, + "source": 264, + "pc": [ + 2231 + ] + }, + { + "teal": 1134, + "source": 268, + "pc": [ + 2232, + 2233, + 2234 + ] + }, + { + "teal": 1135, + "source": 268, + "pc": [ + 2235 + ] + }, + { + "teal": 1136, + "source": 268, + "pc": [ + 2236 + ] + }, + { + "teal": 1140, + "source": 268, + "pc": [ + 2237, + 2238, + 2239 + ] + }, + { + "teal": 1144, + "source": 269, + "pc": [ + 2240, + 2241, + 2242 + ] + }, + { + "teal": 1145, + "source": 269, + "pc": [ + 2243 + ] + }, + { + "teal": 1146, + "source": 268, + "pc": [ + 2244 + ] + }, + { + "teal": 1151, + "source": 272, + "pc": [ + 2245 + ] + }, + { + "teal": 1154, + "source": 272, + "pc": [ + 2246, + 2247, + 2248 + ] + }, + { + "teal": 1155, + "source": 272, + "pc": [ + 2249 + ] + }, + { + "teal": 1156, + "source": 272, + "pc": [ + 2250 + ] + }, + { + "teal": 1157, + "source": 272, + "pc": [ + 2251, + 2252, + 2253 + ] + }, + { + "teal": 1158, + "source": 272, + "pc": [ + 2254 + ] + }, + { + "teal": 1161, + "source": 272, + "errorMessage": "uintNWithUnderscore return value overflowed 256 bits", + "pc": [ + 2255 + ] + }, + { + "teal": 1162, + "source": 272, + "pc": [ + 2256, + 2257, + 2258, + 2259, + 2260, + 2261, + 2262, + 2263, + 2264, + 2265, + 2266, + 2267, + 2268, + 2269, + 2270, + 2271, + 2272, + 2273, + 2274, + 2275, + 2276, + 2277, + 2278, + 2279, + 2280, + 2281, + 2282, + 2283, + 2284, + 2285, + 2286, + 2287, + 2288, + 2289 + ] + }, + { + "teal": 1163, + "source": 272, + "pc": [ + 2290 + ] + }, + { + "teal": 1164, + "source": 272, + "pc": [ + 2291 + ] + }, + { + "teal": 1165, + "source": 272, + "pc": [ + 2292 + ] + }, + { + "teal": 1166, + "source": 272, + "pc": [ + 2293 + ] + }, + { + "teal": 1167, + "source": 272, + "pc": [ + 2294, + 2295 + ] + }, + { + "teal": 1168, + "source": 272, + "pc": [ + 2296 + ] + }, + { + "teal": 1169, + "source": 272, + "pc": [ + 2297 + ] + }, + { + "teal": 1170, + "source": 272, + "pc": [ + 2298 + ] + }, + { + "teal": 1171, + "source": 272, + "pc": [ + 2299 + ] + }, + { + "teal": 1172, + "source": 272, + "pc": [ + 2300 + ] + }, + { + "teal": 1173, + "source": 272, + "pc": [ + 2301 + ] + }, + { + "teal": 1174, + "source": 272, + "pc": [ + 2302 + ] + }, + { + "teal": 1178, + "source": 272, + "pc": [ + 2303, + 2304, + 2305 + ] + }, + { + "teal": 1182, + "source": 273, + "pc": [ + 2306, + 2307, + 2308, + 2309, + 2310, + 2311, + 2312, + 2313, + 2314, + 2315, + 2316, + 2317, + 2318, + 2319, + 2320, + 2321, + 2322, + 2323, + 2324, + 2325, + 2326, + 2327, + 2328, + 2329, + 2330, + 2331, + 2332, + 2333, + 2334, + 2335, + 2336, + 2337, + 2338, + 2339 + ] + }, + { + "teal": 1183, + "source": 272, + "pc": [ + 2340 + ] + }, + { + "teal": 1188, + "source": 276, + "pc": [ + 2341, + 2342, + 2343 + ] + }, + { + "teal": 1189, + "source": 276, + "pc": [ + 2344 + ] + }, + { + "teal": 1190, + "source": 276, + "pc": [ + 2345 + ] + }, + { + "teal": 1194, + "source": 276, + "pc": [ + 2346, + 2347, + 2348 + ] + }, + { + "teal": 1197, + "source": 276, + "pc": [ + 2349 + ] + }, + { + "teal": 1201, + "source": 277, + "pc": [ + 2350 + ] + }, + { + "teal": 1202, + "source": 277, + "pc": [ + 2351 + ] + }, + { + "teal": 1203, + "source": 277, + "pc": [ + 2352, + 2353 + ] + }, + { + "teal": 1204, + "source": 277, + "pc": [ + 2354 + ] + }, + { + "teal": 1205, + "source": 277, + "pc": [ + 2355, + 2356 + ] + }, + { + "teal": 1206, + "source": 277, + "pc": [ + 2357 + ] + }, + { + "teal": 1207, + "source": 277, + "pc": [ + 2358 + ] + }, + { + "teal": 1208, + "source": 277, + "pc": [ + 2359, + 2360 + ] + }, + { + "teal": 1209, + "source": 277, + "pc": [ + 2361, + 2362 + ] + }, + { + "teal": 1210, + "source": 277, + "pc": [ + 2363, + 2364 + ] + }, + { + "teal": 1211, + "source": 277, + "pc": [ + 2365, + 2366 + ] + }, + { + "teal": 1212, + "source": 277, + "pc": [ + 2367 + ] + }, + { + "teal": 1216, + "source": 278, + "pc": [ + 2368 + ] + }, + { + "teal": 1217, + "source": 278, + "pc": [ + 2369, + 2370 + ] + }, + { + "teal": 1222, + "source": 278, + "pc": [ + 2371, + 2372 + ] + }, + { + "teal": 1223, + "source": 278, + "pc": [ + 2373, + 2374 + ] + }, + { + "teal": 1224, + "source": 278, + "pc": [ + 2375 + ] + }, + { + "teal": 1225, + "source": 278, + "pc": [ + 2376, + 2377, + 2378 + ] + }, + { + "teal": 1229, + "source": 279, + "pc": [ + 2379, + 2380 + ] + }, + { + "teal": 1230, + "source": 279, + "pc": [ + 2381 + ] + }, + { + "teal": 1235, + "source": 278, + "pc": [ + 2382, + 2383 + ] + }, + { + "teal": 1236, + "source": 278, + "pc": [ + 2384 + ] + }, + { + "teal": 1237, + "source": 278, + "pc": [ + 2385 + ] + }, + { + "teal": 1238, + "source": 278, + "pc": [ + 2386, + 2387 + ] + }, + { + "teal": 1239, + "source": 278, + "pc": [ + 2388, + 2389, + 2390 + ] + }, + { + "teal": 1242, + "source": 276, + "pc": [ + 2391 + ] + }, + { + "teal": 1247, + "source": 283, + "pc": [ + 2392 + ] + }, + { + "teal": 1250, + "source": 283, + "pc": [ + 2393, + 2394, + 2395 + ] + }, + { + "teal": 1251, + "source": 283, + "pc": [ + 2396 + ] + }, + { + "teal": 1252, + "source": 283, + "pc": [ + 2397 + ] + }, + { + "teal": 1253, + "source": 283, + "pc": [ + 2398 + ] + }, + { + "teal": 1254, + "source": 283, + "pc": [ + 2399, + 2400, + 2401 + ] + }, + { + "teal": 1255, + "source": 283, + "pc": [ + 2402 + ] + }, + { + "teal": 1256, + "source": 283, + "pc": [ + 2403 + ] + }, + { + "teal": 1257, + "source": 283, + "pc": [ + 2404 + ] + }, + { + "teal": 1258, + "source": 283, + "pc": [ + 2405 + ] + }, + { + "teal": 1259, + "source": 283, + "pc": [ + 2406 + ] + }, + { + "teal": 1260, + "source": 283, + "pc": [ + 2407 + ] + }, + { + "teal": 1264, + "source": 283, + "pc": [ + 2408, + 2409, + 2410 + ] + }, + { + "teal": 1267, + "source": 283, + "pc": [ + 2411 + ] + }, + { + "teal": 1271, + "source": 284, + "pc": [ + 2412, + 2413, + 2414, + 2415 + ] + }, + { + "teal": 1272, + "source": 284, + "pc": [ + 2416, + 2417 + ] + }, + { + "teal": 1277, + "source": 286, + "pc": [ + 2418, + 2419 + ] + }, + { + "teal": 1278, + "source": 286, + "pc": [ + 2420, + 2421 + ] + }, + { + "teal": 1279, + "source": 286, + "pc": [ + 2422 + ] + }, + { + "teal": 1280, + "source": 286, + "pc": [ + 2423, + 2424, + 2425 + ] + }, + { + "teal": 1285, + "source": 287, + "pc": [ + 2426, + 2427, + 2428, + 2429, + 2430, + 2431, + 2432, + 2433, + 2434, + 2435 + ] + }, + { + "teal": 1286, + "source": 287, + "pc": [ + 2436, + 2437 + ] + }, + { + "teal": 1291, + "source": 290, + "pc": [ + 2438, + 2439, + 2440, + 2441, + 2442 + ] + }, + { + "teal": 1292, + "source": 290, + "pc": [ + 2443 + ] + }, + { + "teal": 1293, + "source": 290, + "pc": [ + 2444, + 2445 + ] + }, + { + "teal": 1296, + "source": 283, + "pc": [ + 2446, + 2447 + ] + }, + { + "teal": 1297, + "source": 283, + "pc": [ + 2448 + ] + }, + { + "teal": 1302, + "source": 293, + "pc": [ + 2449 + ] + }, + { + "teal": 1305, + "source": 293, + "pc": [ + 2450, + 2451, + 2452 + ] + }, + { + "teal": 1306, + "source": 293, + "pc": [ + 2453 + ] + }, + { + "teal": 1307, + "source": 293, + "pc": [ + 2454 + ] + }, + { + "teal": 1308, + "source": 293, + "pc": [ + 2455 + ] + }, + { + "teal": 1309, + "source": 293, + "pc": [ + 2456 + ] + }, + { + "teal": 1310, + "source": 293, + "pc": [ + 2457 + ] + }, + { + "teal": 1314, + "source": 293, + "pc": [ + 2458, + 2459, + 2460 + ] + }, + { + "teal": 1317, + "source": 293, + "pc": [ + 2461 + ] + }, + { + "teal": 1321, + "source": 294, + "pc": [ + 2462, + 2463 + ] + }, + { + "teal": 1322, + "source": 294, + "pc": [ + 2464, + 2465 + ] + }, + { + "teal": 1326, + "source": 296, + "pc": [ + 2466, + 2467 + ] + }, + { + "teal": 1327, + "source": 296, + "pc": [ + 2468 + ] + }, + { + "teal": 1328, + "source": 296, + "pc": [ + 2469, + 2470 + ] + }, + { + "teal": 1329, + "source": 296, + "pc": [ + 2471 + ] + }, + { + "teal": 1330, + "source": 296, + "pc": [ + 2472, + 2473 + ] + }, + { + "teal": 1331, + "source": 296, + "pc": [ + 2474 + ] + }, + { + "teal": 1332, + "source": 296, + "pc": [ + 2475 + ] + }, + { + "teal": 1333, + "source": 296, + "pc": [ + 2476, + 2477 + ] + }, + { + "teal": 1334, + "source": 296, + "pc": [ + 2478, + 2479 + ] + }, + { + "teal": 1337, + "source": 293, + "pc": [ + 2480, + 2481 + ] + }, + { + "teal": 1338, + "source": 293, + "pc": [ + 2482 + ] + }, + { + "teal": 1343, + "source": 299, + "pc": [ + 2483 + ] + }, + { + "teal": 1346, + "source": 299, + "pc": [ + 2484, + 2485, + 2486 + ] + }, + { + "teal": 1347, + "source": 299, + "pc": [ + 2487 + ] + }, + { + "teal": 1348, + "source": 299, + "pc": [ + 2488 + ] + }, + { + "teal": 1349, + "source": 299, + "pc": [ + 2489 + ] + }, + { + "teal": 1350, + "source": 299, + "pc": [ + 2490 + ] + }, + { + "teal": 1351, + "source": 299, + "pc": [ + 2491 + ] + }, + { + "teal": 1355, + "source": 299, + "pc": [ + 2492, + 2493, + 2494 + ] + }, + { + "teal": 1359, + "source": 300, + "pc": [ + 2495, + 2496 + ] + }, + { + "teal": 1360, + "source": 300, + "pc": [ + 2497 + ] + }, + { + "teal": 1361, + "source": 300, + "pc": [ + 2498 + ] + }, + { + "teal": 1365, + "source": 302, + "pc": [ + 2499, + 2500 + ] + }, + { + "teal": 1366, + "source": 302, + "pc": [ + 2501 + ] + }, + { + "teal": 1367, + "source": 302, + "pc": [ + 2502 + ] + }, + { + "teal": 1368, + "source": 302, + "pc": [ + 2503, + 2504 + ] + }, + { + "teal": 1369, + "source": 302, + "pc": [ + 2505 + ] + }, + { + "teal": 1370, + "source": 302, + "pc": [ + 2506, + 2507 + ] + }, + { + "teal": 1371, + "source": 299, + "pc": [ + 2508 + ] + }, + { + "teal": 1376, + "source": 305, + "pc": [ + 2509 + ] + }, + { + "teal": 1379, + "source": 305, + "pc": [ + 2510, + 2511, + 2512 + ] + }, + { + "teal": 1380, + "source": 305, + "pc": [ + 2513 + ] + }, + { + "teal": 1381, + "source": 305, + "pc": [ + 2514 + ] + }, + { + "teal": 1382, + "source": 305, + "pc": [ + 2515 + ] + }, + { + "teal": 1383, + "source": 305, + "pc": [ + 2516 + ] + }, + { + "teal": 1384, + "source": 305, + "pc": [ + 2517 + ] + }, + { + "teal": 1388, + "source": 305, + "pc": [ + 2518, + 2519, + 2520 + ] + }, + { + "teal": 1391, + "source": 305, + "pc": [ + 2521 + ] + }, + { + "teal": 1395, + "source": 306, + "pc": [ + 2522 + ] + }, + { + "teal": 1396, + "source": 306, + "pc": [ + 2523, + 2524 + ] + }, + { + "teal": 1400, + "source": 308, + "pc": [ + 2525, + 2526 + ] + }, + { + "teal": 1401, + "source": 308, + "pc": [ + 2527 + ] + }, + { + "teal": 1402, + "source": 308, + "pc": [ + 2528 + ] + }, + { + "teal": 1403, + "source": 308, + "pc": [ + 2529 + ] + }, + { + "teal": 1404, + "source": 308, + "pc": [ + 2530, + 2531 + ] + }, + { + "teal": 1405, + "source": 308, + "pc": [ + 2532, + 2533 + ] + }, + { + "teal": 1406, + "source": 308, + "pc": [ + 2534, + 2535 + ] + }, + { + "teal": 1409, + "source": 305, + "pc": [ + 2536, + 2537 + ] + }, + { + "teal": 1410, + "source": 305, + "pc": [ + 2538 + ] + }, + { + "teal": 1415, + "source": 311, + "pc": [ + 2539 + ] + }, + { + "teal": 1418, + "source": 311, + "pc": [ + 2540, + 2541, + 2542 + ] + }, + { + "teal": 1419, + "source": 311, + "pc": [ + 2543 + ] + }, + { + "teal": 1420, + "source": 311, + "pc": [ + 2544 + ] + }, + { + "teal": 1421, + "source": 311, + "pc": [ + 2545 + ] + }, + { + "teal": 1422, + "source": 311, + "pc": [ + 2546 + ] + }, + { + "teal": 1423, + "source": 311, + "pc": [ + 2547 + ] + }, + { + "teal": 1427, + "source": 311, + "pc": [ + 2548, + 2549, + 2550 + ] + }, + { + "teal": 1430, + "source": 311, + "pc": [ + 2551 + ] + }, + { + "teal": 1434, + "source": 312, + "pc": [ + 2552, + 2553 + ] + }, + { + "teal": 1435, + "source": 312, + "pc": [ + 2554, + 2555 + ] + }, + { + "teal": 1439, + "source": 314, + "pc": [ + 2556, + 2557 + ] + }, + { + "teal": 1440, + "source": 314, + "pc": [ + 2558 + ] + }, + { + "teal": 1441, + "source": 314, + "pc": [ + 2559, + 2560 + ] + }, + { + "teal": 1442, + "source": 314, + "pc": [ + 2561, + 2562, + 2563 + ] + }, + { + "teal": 1443, + "source": 314, + "pc": [ + 2564 + ] + }, + { + "teal": 1444, + "source": 314, + "pc": [ + 2565, + 2566 + ] + }, + { + "teal": 1445, + "source": 314, + "pc": [ + 2567 + ] + }, + { + "teal": 1446, + "source": 314, + "pc": [ + 2568 + ] + }, + { + "teal": 1447, + "source": 314, + "pc": [ + 2569, + 2570 + ] + }, + { + "teal": 1448, + "source": 314, + "pc": [ + 2571 + ] + }, + { + "teal": 1449, + "source": 314, + "pc": [ + 2572 + ] + }, + { + "teal": 1450, + "source": 314, + "pc": [ + 2573, + 2574 + ] + }, + { + "teal": 1451, + "source": 314, + "pc": [ + 2575, + 2576 + ] + }, + { + "teal": 1454, + "source": 311, + "pc": [ + 2577, + 2578 + ] + }, + { + "teal": 1455, + "source": 311, + "pc": [ + 2579 + ] + }, + { + "teal": 1460, + "source": 317, + "pc": [ + 2580 + ] + }, + { + "teal": 1463, + "source": 317, + "pc": [ + 2581, + 2582, + 2583 + ] + }, + { + "teal": 1464, + "source": 317, + "pc": [ + 2584 + ] + }, + { + "teal": 1465, + "source": 317, + "pc": [ + 2585 + ] + }, + { + "teal": 1466, + "source": 317, + "pc": [ + 2586 + ] + }, + { + "teal": 1467, + "source": 317, + "pc": [ + 2587 + ] + }, + { + "teal": 1468, + "source": 317, + "pc": [ + 2588 + ] + }, + { + "teal": 1472, + "source": 317, + "pc": [ + 2589, + 2590, + 2591 + ] + }, + { + "teal": 1476, + "source": 318, + "pc": [ + 2592, + 2593 + ] + }, + { + "teal": 1477, + "source": 318, + "pc": [ + 2594, + 2595 + ] + }, + { + "teal": 1478, + "source": 318, + "pc": [ + 2596 + ] + }, + { + "teal": 1482, + "source": 320, + "pc": [ + 2597, + 2598 + ] + }, + { + "teal": 1483, + "source": 320, + "pc": [ + 2599 + ] + }, + { + "teal": 1484, + "source": 320, + "pc": [ + 2600 + ] + }, + { + "teal": 1485, + "source": 320, + "pc": [ + 2601, + 2602 + ] + }, + { + "teal": 1486, + "source": 320, + "pc": [ + 2603 + ] + }, + { + "teal": 1487, + "source": 320, + "pc": [ + 2604, + 2605, + 2606 + ] + }, + { + "teal": 1488, + "source": 320, + "pc": [ + 2607 + ] + }, + { + "teal": 1489, + "source": 320, + "pc": [ + 2608, + 2609 + ] + }, + { + "teal": 1490, + "source": 320, + "pc": [ + 2610 + ] + }, + { + "teal": 1491, + "source": 320, + "pc": [ + 2611 + ] + }, + { + "teal": 1492, + "source": 320, + "pc": [ + 2612, + 2613 + ] + }, + { + "teal": 1493, + "source": 320, + "pc": [ + 2614 + ] + }, + { + "teal": 1494, + "source": 320, + "pc": [ + 2615 + ] + }, + { + "teal": 1495, + "source": 320, + "pc": [ + 2616, + 2617 + ] + }, + { + "teal": 1496, + "source": 320, + "pc": [ + 2618 + ] + }, + { + "teal": 1497, + "source": 320, + "pc": [ + 2619 + ] + }, + { + "teal": 1498, + "source": 320, + "pc": [ + 2620, + 2621 + ] + }, + { + "teal": 1499, + "source": 317, + "pc": [ + 2622 + ] + }, + { + "teal": 1504, + "source": 323, + "pc": [ + 2623, + 2624, + 2625 + ] + }, + { + "teal": 1505, + "source": 323, + "pc": [ + 2626 + ] + }, + { + "teal": 1506, + "source": 323, + "pc": [ + 2627 + ] + }, + { + "teal": 1510, + "source": 323, + "pc": [ + 2628, + 2629, + 2630 + ] + }, + { + "teal": 1514, + "source": 324, + "pc": [ + 2631 + ] + }, + { + "teal": 1515, + "source": 324, + "pc": [ + 2632 + ] + }, + { + "teal": 1516, + "source": 324, + "pc": [ + 2633 + ] + }, + { + "teal": 1517, + "source": 324, + "pc": [ + 2634 + ] + }, + { + "teal": 1521, + "source": 325, + "pc": [ + 2635, + 2636 + ] + }, + { + "teal": 1522, + "source": 325, + "pc": [ + 2637 + ] + }, + { + "teal": 1523, + "source": 325, + "pc": [ + 2638 + ] + }, + { + "teal": 1524, + "source": 325, + "pc": [ + 2639 + ] + }, + { + "teal": 1528, + "source": 326, + "pc": [ + 2640, + 2641 + ] + }, + { + "teal": 1529, + "source": 326, + "pc": [ + 2642 + ] + }, + { + "teal": 1530, + "source": 326, + "pc": [ + 2643 + ] + }, + { + "teal": 1531, + "source": 326, + "pc": [ + 2644 + ] + }, + { + "teal": 1532, + "source": 323, + "pc": [ + 2645 + ] + }, + { + "teal": 1537, + "source": 329, + "pc": [ + 2646, + 2647, + 2648 + ] + }, + { + "teal": 1538, + "source": 329, + "pc": [ + 2649 + ] + }, + { + "teal": 1539, + "source": 329, + "pc": [ + 2650 + ] + }, + { + "teal": 1543, + "source": 329, + "pc": [ + 2651, + 2652, + 2653 + ] + }, + { + "teal": 1547, + "source": 330, + "pc": [ + 2654 + ] + }, + { + "teal": 1550, + "source": 330, + "errorMessage": "this is false", + "pc": [ + 2655 + ] + }, + { + "teal": 1551, + "source": 329, + "pc": [ + 2656 + ] + }, + { + "teal": 1556, + "source": 333, + "pc": [ + 2657, + 2658, + 2659 + ] + }, + { + "teal": 1557, + "source": 333, + "pc": [ + 2660 + ] + }, + { + "teal": 1558, + "source": 333, + "pc": [ + 2661 + ] + }, + { + "teal": 1562, + "source": 333, + "pc": [ + 2662, + 2663, + 2664 + ] + }, + { + "teal": 1566, + "source": 334, + "pc": [ + 2665, + 2666 + ] + }, + { + "teal": 1567, + "source": 334, + "pc": [ + 2667 + ] + }, + { + "teal": 1568, + "source": 334, + "pc": [ + 2668 + ] + }, + { + "teal": 1572, + "source": 335, + "pc": [ + 2669, + 2670 + ] + }, + { + "teal": 1573, + "source": 335, + "pc": [ + 2671 + ] + }, + { + "teal": 1574, + "source": 335, + "pc": [ + 2672 + ] + }, + { + "teal": 1578, + "source": 336, + "pc": [ + 2673, + 2674 + ] + }, + { + "teal": 1579, + "source": 336, + "pc": [ + 2675 + ] + }, + { + "teal": 1580, + "source": 336, + "pc": [ + 2676 + ] + }, + { + "teal": 1584, + "source": 337, + "pc": [ + 2677, + 2678 + ] + }, + { + "teal": 1585, + "source": 337, + "pc": [ + 2679 + ] + }, + { + "teal": 1586, + "source": 337, + "pc": [ + 2680, + 2681 + ] + }, + { + "teal": 1587, + "source": 337, + "pc": [ + 2682 + ] + }, + { + "teal": 1591, + "source": 338, + "pc": [ + 2683, + 2684 + ] + }, + { + "teal": 1592, + "source": 338, + "pc": [ + 2685 + ] + }, + { + "teal": 1593, + "source": 338, + "pc": [ + 2686, + 2687 + ] + }, + { + "teal": 1594, + "source": 338, + "pc": [ + 2688 + ] + }, + { + "teal": 1595, + "source": 333, + "pc": [ + 2689 + ] + }, + { + "teal": 1600, + "source": 341, + "pc": [ + 2690, + 2691, + 2692 + ] + }, + { + "teal": 1601, + "source": 341, + "pc": [ + 2693 + ] + }, + { + "teal": 1602, + "source": 341, + "pc": [ + 2694 + ] + }, + { + "teal": 1606, + "source": 341, + "pc": [ + 2695, + 2696, + 2697 + ] + }, + { + "teal": 1609, + "source": 341, + "pc": [ + 2698 + ] + }, + { + "teal": 1610, + "source": 341, + "pc": [ + 2699 + ] + }, + { + "teal": 1614, + "source": 342, + "pc": [ + 2700 + ] + }, + { + "teal": 1615, + "source": 342, + "pc": [ + 2701 + ] + }, + { + "teal": 1616, + "source": 342, + "pc": [ + 2702, + 2703 + ] + }, + { + "teal": 1617, + "source": 342, + "pc": [ + 2704 + ] + }, + { + "teal": 1618, + "source": 342, + "pc": [ + 2705, + 2706 + ] + }, + { + "teal": 1619, + "source": 342, + "pc": [ + 2707 + ] + }, + { + "teal": 1620, + "source": 342, + "pc": [ + 2708 + ] + }, + { + "teal": 1621, + "source": 342, + "pc": [ + 2709, + 2710 + ] + }, + { + "teal": 1622, + "source": 342, + "pc": [ + 2711, + 2712 + ] + }, + { + "teal": 1623, + "source": 342, + "pc": [ + 2713, + 2714 + ] + }, + { + "teal": 1624, + "source": 342, + "pc": [ + 2715, + 2716 + ] + }, + { + "teal": 1625, + "source": 342, + "pc": [ + 2717 + ] + }, + { + "teal": 1629, + "source": 343, + "pc": [ + 2718 + ] + }, + { + "teal": 1630, + "source": 343, + "pc": [ + 2719 + ] + }, + { + "teal": 1631, + "source": 343, + "pc": [ + 2720, + 2721 + ] + }, + { + "teal": 1632, + "source": 343, + "pc": [ + 2722 + ] + }, + { + "teal": 1633, + "source": 343, + "pc": [ + 2723, + 2724 + ] + }, + { + "teal": 1634, + "source": 343, + "pc": [ + 2725 + ] + }, + { + "teal": 1635, + "source": 343, + "pc": [ + 2726 + ] + }, + { + "teal": 1636, + "source": 343, + "pc": [ + 2727, + 2728 + ] + }, + { + "teal": 1637, + "source": 343, + "pc": [ + 2729, + 2730 + ] + }, + { + "teal": 1638, + "source": 343, + "pc": [ + 2731, + 2732 + ] + }, + { + "teal": 1639, + "source": 343, + "pc": [ + 2733, + 2734 + ] + }, + { + "teal": 1640, + "source": 343, + "pc": [ + 2735 + ] + }, + { + "teal": 1644, + "source": 344, + "pc": [ + 2736 + ] + }, + { + "teal": 1645, + "source": 344, + "pc": [ + 2737 + ] + }, + { + "teal": 1646, + "source": 344, + "pc": [ + 2738, + 2739 + ] + }, + { + "teal": 1647, + "source": 344, + "pc": [ + 2740 + ] + }, + { + "teal": 1648, + "source": 344, + "pc": [ + 2741, + 2742 + ] + }, + { + "teal": 1649, + "source": 344, + "pc": [ + 2743 + ] + }, + { + "teal": 1650, + "source": 344, + "pc": [ + 2744 + ] + }, + { + "teal": 1651, + "source": 344, + "pc": [ + 2745, + 2746 + ] + }, + { + "teal": 1652, + "source": 344, + "pc": [ + 2747, + 2748 + ] + }, + { + "teal": 1653, + "source": 344, + "pc": [ + 2749, + 2750 + ] + }, + { + "teal": 1654, + "source": 344, + "pc": [ + 2751, + 2752 + ] + }, + { + "teal": 1655, + "source": 344, + "pc": [ + 2753 + ] + }, + { + "teal": 1659, + "source": 345, + "pc": [ + 2754 + ] + }, + { + "teal": 1660, + "source": 345, + "pc": [ + 2755 + ] + }, + { + "teal": 1661, + "source": 345, + "pc": [ + 2756, + 2757 + ] + }, + { + "teal": 1662, + "source": 345, + "pc": [ + 2758 + ] + }, + { + "teal": 1663, + "source": 345, + "pc": [ + 2759, + 2760 + ] + }, + { + "teal": 1664, + "source": 345, + "pc": [ + 2761 + ] + }, + { + "teal": 1665, + "source": 345, + "pc": [ + 2762 + ] + }, + { + "teal": 1666, + "source": 345, + "pc": [ + 2763, + 2764 + ] + }, + { + "teal": 1667, + "source": 345, + "pc": [ + 2765, + 2766 + ] + }, + { + "teal": 1668, + "source": 345, + "pc": [ + 2767, + 2768 + ] + }, + { + "teal": 1669, + "source": 345, + "pc": [ + 2769, + 2770 + ] + }, + { + "teal": 1670, + "source": 345, + "pc": [ + 2771 + ] + }, + { + "teal": 1674, + "source": 346, + "pc": [ + 2772 + ] + }, + { + "teal": 1675, + "source": 346, + "pc": [ + 2773 + ] + }, + { + "teal": 1676, + "source": 346, + "pc": [ + 2774, + 2775 + ] + }, + { + "teal": 1677, + "source": 346, + "pc": [ + 2776 + ] + }, + { + "teal": 1678, + "source": 346, + "pc": [ + 2777, + 2778 + ] + }, + { + "teal": 1679, + "source": 346, + "pc": [ + 2779 + ] + }, + { + "teal": 1680, + "source": 346, + "pc": [ + 2780 + ] + }, + { + "teal": 1681, + "source": 346, + "pc": [ + 2781, + 2782 + ] + }, + { + "teal": 1682, + "source": 346, + "pc": [ + 2783, + 2784 + ] + }, + { + "teal": 1683, + "source": 346, + "pc": [ + 2785, + 2786 + ] + }, + { + "teal": 1684, + "source": 346, + "pc": [ + 2787, + 2788 + ] + }, + { + "teal": 1685, + "source": 346, + "pc": [ + 2789 + ] + }, + { + "teal": 1689, + "source": 347, + "pc": [ + 2790 + ] + }, + { + "teal": 1690, + "source": 347, + "pc": [ + 2791 + ] + }, + { + "teal": 1691, + "source": 347, + "pc": [ + 2792, + 2793 + ] + }, + { + "teal": 1692, + "source": 347, + "pc": [ + 2794 + ] + }, + { + "teal": 1693, + "source": 347, + "pc": [ + 2795, + 2796 + ] + }, + { + "teal": 1694, + "source": 347, + "pc": [ + 2797 + ] + }, + { + "teal": 1695, + "source": 347, + "pc": [ + 2798 + ] + }, + { + "teal": 1696, + "source": 347, + "pc": [ + 2799, + 2800 + ] + }, + { + "teal": 1697, + "source": 347, + "pc": [ + 2801, + 2802 + ] + }, + { + "teal": 1698, + "source": 347, + "pc": [ + 2803, + 2804 + ] + }, + { + "teal": 1699, + "source": 347, + "pc": [ + 2805, + 2806 + ] + }, + { + "teal": 1700, + "source": 347, + "pc": [ + 2807 + ] + }, + { + "teal": 1704, + "source": 348, + "pc": [ + 2808 + ] + }, + { + "teal": 1705, + "source": 348, + "pc": [ + 2809 + ] + }, + { + "teal": 1706, + "source": 348, + "pc": [ + 2810, + 2811 + ] + }, + { + "teal": 1707, + "source": 348, + "pc": [ + 2812 + ] + }, + { + "teal": 1708, + "source": 348, + "pc": [ + 2813, + 2814 + ] + }, + { + "teal": 1709, + "source": 348, + "pc": [ + 2815 + ] + }, + { + "teal": 1710, + "source": 348, + "pc": [ + 2816 + ] + }, + { + "teal": 1711, + "source": 348, + "pc": [ + 2817, + 2818 + ] + }, + { + "teal": 1712, + "source": 348, + "pc": [ + 2819, + 2820 + ] + }, + { + "teal": 1713, + "source": 348, + "pc": [ + 2821, + 2822 + ] + }, + { + "teal": 1714, + "source": 348, + "pc": [ + 2823, + 2824 + ] + }, + { + "teal": 1715, + "source": 348, + "pc": [ + 2825 + ] + }, + { + "teal": 1719, + "source": 349, + "pc": [ + 2826 + ] + }, + { + "teal": 1720, + "source": 349, + "pc": [ + 2827 + ] + }, + { + "teal": 1721, + "source": 349, + "pc": [ + 2828, + 2829 + ] + }, + { + "teal": 1722, + "source": 349, + "pc": [ + 2830 + ] + }, + { + "teal": 1723, + "source": 349, + "pc": [ + 2831, + 2832 + ] + }, + { + "teal": 1724, + "source": 349, + "pc": [ + 2833 + ] + }, + { + "teal": 1725, + "source": 349, + "pc": [ + 2834 + ] + }, + { + "teal": 1726, + "source": 349, + "pc": [ + 2835, + 2836 + ] + }, + { + "teal": 1727, + "source": 349, + "pc": [ + 2837, + 2838 + ] + }, + { + "teal": 1728, + "source": 349, + "pc": [ + 2839, + 2840 + ] + }, + { + "teal": 1729, + "source": 349, + "pc": [ + 2841, + 2842 + ] + }, + { + "teal": 1730, + "source": 349, + "pc": [ + 2843 + ] + }, + { + "teal": 1734, + "source": 350, + "pc": [ + 2844 + ] + }, + { + "teal": 1735, + "source": 350, + "pc": [ + 2845 + ] + }, + { + "teal": 1736, + "source": 350, + "pc": [ + 2846, + 2847 + ] + }, + { + "teal": 1737, + "source": 350, + "pc": [ + 2848 + ] + }, + { + "teal": 1738, + "source": 350, + "pc": [ + 2849, + 2850 + ] + }, + { + "teal": 1739, + "source": 350, + "pc": [ + 2851 + ] + }, + { + "teal": 1740, + "source": 350, + "pc": [ + 2852 + ] + }, + { + "teal": 1741, + "source": 350, + "pc": [ + 2853, + 2854 + ] + }, + { + "teal": 1742, + "source": 350, + "pc": [ + 2855, + 2856 + ] + }, + { + "teal": 1743, + "source": 350, + "pc": [ + 2857, + 2858 + ] + }, + { + "teal": 1744, + "source": 350, + "pc": [ + 2859, + 2860 + ] + }, + { + "teal": 1745, + "source": 350, + "pc": [ + 2861 + ] + }, + { + "teal": 1749, + "source": 352, + "pc": [ + 2862, + 2863 + ] + }, + { + "teal": 1750, + "source": 352, + "pc": [ + 2864, + 2865, + 2866, + 2867, + 2868, + 2869, + 2870, + 2871, + 2872, + 2873, + 2874, + 2875, + 2876, + 2877, + 2878, + 2879, + 2880, + 2881, + 2882, + 2883, + 2884, + 2885, + 2886, + 2887, + 2888, + 2889, + 2890, + 2891, + 2892, + 2893, + 2894, + 2895, + 2896, + 2897, + 2898, + 2899, + 2900, + 2901, + 2902, + 2903, + 2904, + 2905, + 2906, + 2907, + 2908, + 2909, + 2910, + 2911, + 2912, + 2913, + 2914, + 2915, + 2916, + 2917, + 2918, + 2919, + 2920, + 2921, + 2922, + 2923, + 2924, + 2925, + 2926, + 2927, + 2928, + 2929, + 2930, + 2931, + 2932, + 2933, + 2934, + 2935, + 2936, + 2937, + 2938, + 2939, + 2940, + 2941, + 2942, + 2943, + 2944, + 2945 + ] + }, + { + "teal": 1751, + "source": 352, + "pc": [ + 2946, + 2947 + ] + }, + { + "teal": 1752, + "source": 352, + "pc": [ + 2948, + 2949 + ] + }, + { + "teal": 1753, + "source": 352, + "pc": [ + 2950, + 2951 + ] + }, + { + "teal": 1754, + "source": 352, + "pc": [ + 2952, + 2953 + ] + }, + { + "teal": 1758, + "source": 353, + "pc": [ + 2954, + 2955 + ] + }, + { + "teal": 1759, + "source": 353, + "pc": [ + 2956 + ] + }, + { + "teal": 1760, + "source": 353, + "pc": [ + 2957 + ] + }, + { + "teal": 1764, + "source": 354, + "pc": [ + 2958, + 2959 + ] + }, + { + "teal": 1765, + "source": 354, + "pc": [ + 2960 + ] + }, + { + "teal": 1766, + "source": 341, + "pc": [ + 2961 + ] + }, + { + "teal": 1771, + "source": 357, + "pc": [ + 2962, + 2963, + 2964 + ] + }, + { + "teal": 1772, + "source": 357, + "pc": [ + 2965 + ] + }, + { + "teal": 1773, + "source": 357, + "pc": [ + 2966 + ] + }, + { + "teal": 1777, + "source": 357, + "pc": [ + 2967, + 2968, + 2969 + ] + }, + { + "teal": 1780, + "source": 357, + "pc": [ + 2970 + ] + }, + { + "teal": 1784, + "source": 358, + "pc": [ + 2971 + ] + }, + { + "teal": 1785, + "source": 358, + "pc": [ + 2972 + ] + }, + { + "teal": 1786, + "source": 358, + "pc": [ + 2973, + 2974 + ] + }, + { + "teal": 1790, + "source": 359, + "pc": [ + 2975 + ] + }, + { + "teal": 1791, + "source": 359, + "pc": [ + 2976 + ] + }, + { + "teal": 1792, + "source": 359, + "pc": [ + 2977, + 2978 + ] + }, + { + "teal": 1796, + "source": 360, + "pc": [ + 2979, + 2980 + ] + }, + { + "teal": 1797, + "source": 360, + "pc": [ + 2981, + 2982 + ] + }, + { + "teal": 1801, + "source": 361, + "pc": [ + 2983 + ] + }, + { + "teal": 1802, + "source": 361, + "pc": [ + 2984, + 2985 + ] + }, + { + "teal": 1803, + "source": 361, + "pc": [ + 2986, + 2987 + ] + }, + { + "teal": 1807, + "source": 362, + "pc": [ + 2988 + ] + }, + { + "teal": 1808, + "source": 362, + "pc": [ + 2989, + 2990 + ] + }, + { + "teal": 1812, + "source": 363, + "pc": [ + 2991 + ] + }, + { + "teal": 1813, + "source": 363, + "pc": [ + 2992, + 2993 + ] + }, + { + "teal": 1817, + "source": 364, + "pc": [ + 2994 + ] + }, + { + "teal": 1818, + "source": 364, + "pc": [ + 2995 + ] + }, + { + "teal": 1819, + "source": 364, + "pc": [ + 2996, + 2997 + ] + }, + { + "teal": 1820, + "source": 357, + "pc": [ + 2998 + ] + }, + { + "teal": 1825, + "source": 367, + "pc": [ + 2999, + 3000, + 3001 + ] + }, + { + "teal": 1826, + "source": 367, + "pc": [ + 3002 + ] + }, + { + "teal": 1827, + "source": 367, + "pc": [ + 3003 + ] + }, + { + "teal": 1831, + "source": 367, + "pc": [ + 3004, + 3005, + 3006 + ] + }, + { + "teal": 1834, + "source": 367, + "pc": [ + 3007 + ] + }, + { + "teal": 1838, + "source": 368, + "pc": [ + 3008, + 3009, + 3010 + ] + }, + { + "teal": 1839, + "source": 368, + "pc": [ + 3011 + ] + }, + { + "teal": 1843, + "source": 370, + "pc": [ + 3012 + ] + }, + { + "teal": 1844, + "source": 370, + "pc": [ + 3013, + 3014 + ] + }, + { + "teal": 1848, + "source": 372, + "pc": [ + 3015, + 3016, + 3017 + ] + }, + { + "teal": 1849, + "source": 372, + "pc": [ + 3018 + ] + }, + { + "teal": 1850, + "source": 367, + "pc": [ + 3019 + ] + }, + { + "teal": 1855, + "source": 375, + "pc": [ + 3020, + 3021, + 3022 + ] + }, + { + "teal": 1856, + "source": 375, + "pc": [ + 3023 + ] + }, + { + "teal": 1857, + "source": 375, + "pc": [ + 3024 + ] + }, + { + "teal": 1861, + "source": 375, + "pc": [ + 3025, + 3026, + 3027 + ] + }, + { + "teal": 1865, + "source": 376, + "pc": [ + 3028 + ] + }, + { + "teal": 1866, + "source": 376, + "pc": [ + 3029 + ] + }, + { + "teal": 1867, + "source": 376, + "pc": [ + 3030 + ] + }, + { + "teal": 1868, + "source": 376, + "pc": [ + 3031 + ] + }, + { + "teal": 1869, + "source": 376, + "pc": [ + 3032 + ] + }, + { + "teal": 1873, + "source": 377, + "pc": [ + 3033 + ] + }, + { + "teal": 1874, + "source": 377, + "pc": [ + 3034 + ] + }, + { + "teal": 1875, + "source": 377, + "pc": [ + 3035 + ] + }, + { + "teal": 1879, + "source": 378, + "pc": [ + 3036 + ] + }, + { + "teal": 1880, + "source": 378, + "pc": [ + 3037 + ] + }, + { + "teal": 1881, + "source": 378, + "pc": [ + 3038 + ] + }, + { + "teal": 1885, + "source": 379, + "pc": [ + 3039 + ] + }, + { + "teal": 1886, + "source": 379, + "pc": [ + 3040 + ] + }, + { + "teal": 1887, + "source": 379, + "pc": [ + 3041 + ] + }, + { + "teal": 1888, + "source": 379, + "pc": [ + 3042 + ] + }, + { + "teal": 1889, + "source": 375, + "pc": [ + 3043 + ] + }, + { + "teal": 1894, + "source": 382, + "pc": [ + 3044, + 3045, + 3046 + ] + }, + { + "teal": 1895, + "source": 382, + "pc": [ + 3047 + ] + }, + { + "teal": 1896, + "source": 382, + "pc": [ + 3048 + ] + }, + { + "teal": 1900, + "source": 382, + "pc": [ + 3049, + 3050, + 3051 + ] + }, + { + "teal": 1904, + "source": 383, + "pc": [ + 3052, + 3053 + ] + }, + { + "teal": 1905, + "source": 383, + "pc": [ + 3054 + ] + }, + { + "teal": 1906, + "source": 383, + "pc": [ + 3055 + ] + }, + { + "teal": 1907, + "source": 383, + "pc": [ + 3056 + ] + }, + { + "teal": 1908, + "source": 383, + "pc": [ + 3057 + ] + }, + { + "teal": 1912, + "source": 384, + "pc": [ + 3058, + 3059 + ] + }, + { + "teal": 1913, + "source": 384, + "pc": [ + 3060 + ] + }, + { + "teal": 1914, + "source": 384, + "pc": [ + 3061 + ] + }, + { + "teal": 1915, + "source": 382, + "pc": [ + 3062 + ] + }, + { + "teal": 1920, + "source": 387, + "pc": [ + 3063, + 3064, + 3065 + ] + }, + { + "teal": 1921, + "source": 387, + "pc": [ + 3066 + ] + }, + { + "teal": 1922, + "source": 387, + "pc": [ + 3067 + ] + }, + { + "teal": 1926, + "source": 387, + "pc": [ + 3068, + 3069, + 3070 + ] + }, + { + "teal": 1930, + "source": 388, + "pc": [ + 3071, + 3072 + ] + }, + { + "teal": 1931, + "source": 388, + "pc": [ + 3073 + ] + }, + { + "teal": 1932, + "source": 388, + "pc": [ + 3074 + ] + }, + { + "teal": 1933, + "source": 388, + "pc": [ + 3075, + 3076 + ] + }, + { + "teal": 1934, + "source": 388, + "pc": [ + 3077 + ] + }, + { + "teal": 1938, + "source": 389, + "pc": [ + 3078, + 3079 + ] + }, + { + "teal": 1939, + "source": 389, + "pc": [ + 3080 + ] + }, + { + "teal": 1940, + "source": 389, + "pc": [ + 3081 + ] + }, + { + "teal": 1941, + "source": 389, + "pc": [ + 3082, + 3083 + ] + }, + { + "teal": 1942, + "source": 389, + "pc": [ + 3084 + ] + }, + { + "teal": 1943, + "source": 387, + "pc": [ + 3085 + ] + }, + { + "teal": 1948, + "source": 392, + "pc": [ + 3086, + 3087, + 3088 + ] + }, + { + "teal": 1949, + "source": 392, + "pc": [ + 3089 + ] + }, + { + "teal": 1950, + "source": 392, + "pc": [ + 3090 + ] + }, + { + "teal": 1954, + "source": 392, + "pc": [ + 3091, + 3092, + 3093 + ] + }, + { + "teal": 1958, + "source": 393, + "pc": [ + 3094 + ] + }, + { + "teal": 1959, + "source": 393, + "pc": [ + 3095, + 3096 + ] + }, + { + "teal": 1960, + "source": 393, + "pc": [ + 3097 + ] + }, + { + "teal": 1961, + "source": 392, + "pc": [ + 3098 + ] + }, + { + "teal": 1966, + "source": 396, + "pc": [ + 3099, + 3100, + 3101 + ] + }, + { + "teal": 1967, + "source": 396, + "pc": [ + 3102 + ] + }, + { + "teal": 1968, + "source": 396, + "pc": [ + 3103 + ] + }, + { + "teal": 1972, + "source": 396, + "pc": [ + 3104, + 3105, + 3106 + ] + }, + { + "teal": 1976, + "source": 397, + "pc": [ + 3107 + ] + }, + { + "teal": 1977, + "source": 397, + "pc": [ + 3108 + ] + }, + { + "teal": 1978, + "source": 397, + "pc": [ + 3109, + 3110 + ] + }, + { + "teal": 1979, + "source": 397, + "pc": [ + 3111 + ] + }, + { + "teal": 1983, + "source": 398, + "pc": [ + 3112 + ] + }, + { + "teal": 1984, + "source": 398, + "pc": [ + 3113 + ] + }, + { + "teal": 1985, + "source": 398, + "pc": [ + 3114, + 3115 + ] + }, + { + "teal": 1986, + "source": 398, + "pc": [ + 3116 + ] + }, + { + "teal": 1990, + "source": 399, + "pc": [ + 3117 + ] + }, + { + "teal": 1991, + "source": 399, + "pc": [ + 3118 + ] + }, + { + "teal": 1992, + "source": 399, + "pc": [ + 3119, + 3120 + ] + }, + { + "teal": 1993, + "source": 399, + "pc": [ + 3121 + ] + }, + { + "teal": 1994, + "source": 396, + "pc": [ + 3122 + ] + }, + { + "teal": 1999, + "source": 402, + "pc": [ + 3123, + 3124, + 3125 + ] + }, + { + "teal": 2000, + "source": 402, + "pc": [ + 3126 + ] + }, + { + "teal": 2001, + "source": 402, + "pc": [ + 3127 + ] + }, + { + "teal": 2005, + "source": 402, + "pc": [ + 3128, + 3129, + 3130 + ] + }, + { + "teal": 2009, + "source": 403, + "pc": [ + 3131, + 3132 + ] + }, + { + "teal": 2010, + "source": 403, + "pc": [ + 3133 + ] + }, + { + "teal": 2014, + "source": 404, + "pc": [ + 3134 + ] + }, + { + "teal": 2015, + "source": 404, + "pc": [ + 3135 + ] + }, + { + "teal": 2016, + "source": 402, + "pc": [ + 3136 + ] + }, + { + "teal": 2021, + "source": 407, + "pc": [ + 3137, + 3138, + 3139 + ] + }, + { + "teal": 2022, + "source": 407, + "pc": [ + 3140 + ] + }, + { + "teal": 2023, + "source": 407, + "pc": [ + 3141 + ] + }, + { + "teal": 2027, + "source": 407, + "pc": [ + 3142, + 3143, + 3144 + ] + }, + { + "teal": 2031, + "source": 10, + "pc": [ + 3145, + 3146, + 3147 + ] + }, + { + "teal": 2032, + "source": 408, + "pc": [ + 3148 + ] + }, + { + "teal": 2033, + "source": 407, + "pc": [ + 3149 + ] + }, + { + "teal": 2038, + "source": 411, + "pc": [ + 3150, + 3151, + 3152 + ] + }, + { + "teal": 2039, + "source": 411, + "pc": [ + 3153 + ] + }, + { + "teal": 2040, + "source": 411, + "pc": [ + 3154 + ] + }, + { + "teal": 2044, + "source": 411, + "pc": [ + 3155, + 3156, + 3157 + ] + }, + { + "teal": 2048, + "source": 11, + "pc": [ + 3158, + 3159, + 3160, + 3161 + ] + }, + { + "teal": 2049, + "source": 412, + "pc": [ + 3162 + ] + }, + { + "teal": 2050, + "source": 411, + "pc": [ + 3163 + ] + }, + { + "teal": 2055, + "source": 415, + "pc": [ + 3164, + 3165, + 3166 + ] + }, + { + "teal": 2056, + "source": 415, + "pc": [ + 3167 + ] + }, + { + "teal": 2057, + "source": 415, + "pc": [ + 3168 + ] + }, + { + "teal": 2061, + "source": 415, + "pc": [ + 3169, + 3170, + 3171 + ] + }, + { + "teal": 2065, + "source": 416, + "pc": [ + 3172 + ] + }, + { + "teal": 2066, + "source": 416, + "pc": [ + 3173 + ] + }, + { + "teal": 2067, + "source": 416, + "pc": [ + 3174 + ] + }, + { + "teal": 2068, + "source": 416, + "pc": [ + 3175 + ] + }, + { + "teal": 2072, + "source": 417, + "pc": [ + 3176 + ] + }, + { + "teal": 2073, + "source": 417, + "pc": [ + 3177 + ] + }, + { + "teal": 2074, + "source": 417, + "pc": [ + 3178 + ] + }, + { + "teal": 2075, + "source": 417, + "pc": [ + 3179 + ] + }, + { + "teal": 2079, + "source": 418, + "pc": [ + 3180, + 3181 + ] + }, + { + "teal": 2080, + "source": 418, + "pc": [ + 3182 + ] + }, + { + "teal": 2081, + "source": 418, + "pc": [ + 3183 + ] + }, + { + "teal": 2082, + "source": 418, + "pc": [ + 3184 + ] + }, + { + "teal": 2086, + "source": 419, + "pc": [ + 3185, + 3186 + ] + }, + { + "teal": 2087, + "source": 419, + "pc": [ + 3187 + ] + }, + { + "teal": 2088, + "source": 419, + "pc": [ + 3188 + ] + }, + { + "teal": 2089, + "source": 419, + "pc": [ + 3189 + ] + }, + { + "teal": 2090, + "source": 415, + "pc": [ + 3190 + ] + }, + { + "teal": 2095, + "source": 422, + "pc": [ + 3191 + ] + }, + { + "teal": 2098, + "source": 422, + "pc": [ + 3192, + 3193, + 3194 + ] + }, + { + "teal": 2099, + "source": 422, + "pc": [ + 3195, + 3196, + 3197 + ] + }, + { + "teal": 2100, + "source": 422, + "pc": [ + 3198 + ] + }, + { + "teal": 2101, + "source": 422, + "pc": [ + 3199, + 3200 + ] + }, + { + "teal": 2102, + "source": 422, + "pc": [ + 3201 + ] + }, + { + "teal": 2103, + "source": 422, + "pc": [ + 3202 + ] + }, + { + "teal": 2104, + "source": 422, + "pc": [ + 3203 + ] + }, + { + "teal": 2105, + "source": 422, + "pc": [ + 3204 + ] + }, + { + "teal": 2106, + "source": 422, + "pc": [ + 3205 + ] + }, + { + "teal": 2110, + "source": 422, + "pc": [ + 3206, + 3207, + 3208 + ] + }, + { + "teal": 2114, + "source": 423, + "pc": [ + 3209, + 3210 + ] + }, + { + "teal": 2115, + "source": 423, + "pc": [ + 3211, + 3212 + ] + }, + { + "teal": 2116, + "source": 423, + "pc": [ + 3213 + ] + }, + { + "teal": 2117, + "source": 423, + "pc": [ + 3214 + ] + }, + { + "teal": 2118, + "source": 423, + "pc": [ + 3215, + 3216, + 3217 + ] + }, + { + "teal": 2119, + "source": 423, + "pc": [ + 3218, + 3219 + ] + }, + { + "teal": 2120, + "source": 423, + "pc": [ + 3220, + 3221 + ] + }, + { + "teal": 2121, + "source": 423, + "pc": [ + 3222 + ] + }, + { + "teal": 2122, + "source": 423, + "pc": [ + 3223 + ] + }, + { + "teal": 2125, + "source": 422, + "pc": [ + 3224 + ] + }, + { + "teal": 2130, + "source": 427, + "pc": [ + 3225, + 3226 + ] + }, + { + "teal": 2131, + "source": 427, + "pc": [ + 3227 + ] + }, + { + "teal": 2132, + "source": 427, + "pc": [ + 3228 + ] + }, + { + "teal": 2133, + "source": 427, + "pc": [ + 3229 + ] + }, + { + "teal": 2134, + "source": 427, + "pc": [ + 3230, + 3231 + ] + }, + { + "teal": 2135, + "source": 427, + "pc": [ + 3232 + ] + }, + { + "teal": 2136, + "source": 427, + "pc": [ + 3233 + ] + }, + { + "teal": 2139, + "source": 427, + "errorMessage": "argument 0 (_pay1) for txnArgsMethod must be a pay transaction", + "pc": [ + 3234 + ] + }, + { + "teal": 2142, + "source": 427, + "pc": [ + 3235, + 3236, + 3237 + ] + }, + { + "teal": 2143, + "source": 427, + "pc": [ + 3238 + ] + }, + { + "teal": 2144, + "source": 427, + "pc": [ + 3239 + ] + }, + { + "teal": 2148, + "source": 427, + "pc": [ + 3240, + 3241, + 3242 + ] + }, + { + "teal": 2149, + "source": 427, + "pc": [ + 3243 + ] + }, + { + "teal": 2154, + "source": 429, + "pc": [ + 3244, + 3245, + 3246 + ] + }, + { + "teal": 2155, + "source": 429, + "pc": [ + 3247 + ] + }, + { + "teal": 2156, + "source": 429, + "pc": [ + 3248 + ] + }, + { + "teal": 2160, + "source": 429, + "pc": [ + 3249, + 3250, + 3251 + ] + }, + { + "teal": 2166, + "source": 431, + "pc": [ + 3252 + ] + }, + { + "teal": 2167, + "source": 431, + "pc": [ + 3253 + ] + }, + { + "teal": 2168, + "source": 431, + "pc": [ + 3254, + 3255 + ] + }, + { + "teal": 2172, + "source": 431, + "pc": [ + 3256, + 3257 + ] + }, + { + "teal": 2173, + "source": 431, + "pc": [ + 3258, + 3259 + ] + }, + { + "teal": 2177, + "source": 431, + "pc": [ + 3260 + ] + }, + { + "teal": 2178, + "source": 431, + "pc": [ + 3261, + 3262 + ] + }, + { + "teal": 2181, + "source": 431, + "pc": [ + 3263 + ] + }, + { + "teal": 2182, + "source": 431, + "pc": [ + 3264, + 3265 + ] + }, + { + "teal": 2183, + "source": 430, + "pc": [ + 3266 + ] + }, + { + "teal": 2184, + "source": 430, + "pc": [ + 3267 + ] + }, + { + "teal": 2185, + "source": 430, + "pc": [ + 3268, + 3269 + ] + }, + { + "teal": 2186, + "source": 430, + "pc": [ + 3270, + 3271 + ] + }, + { + "teal": 2187, + "source": 430, + "pc": [ + 3272, + 3273 + ] + }, + { + "teal": 2192, + "source": 430, + "pc": [ + 3274 + ] + }, + { + "teal": 2193, + "source": 430, + "pc": [ + 3275, + 3276 + ] + }, + { + "teal": 2196, + "source": 430, + "pc": [ + 3277 + ] + }, + { + "teal": 2197, + "source": 429, + "pc": [ + 3278 + ] + }, + { + "teal": 2202, + "source": 435, + "pc": [ + 3279, + 3280, + 3281 + ] + }, + { + "teal": 2203, + "source": 435, + "pc": [ + 3282 + ] + }, + { + "teal": 2204, + "source": 435, + "pc": [ + 3283 + ] + }, + { + "teal": 2205, + "source": 435, + "pc": [ + 3284, + 3285 + ] + }, + { + "teal": 2206, + "source": 435, + "pc": [ + 3286 + ] + }, + { + "teal": 2209, + "source": 435, + "errorMessage": "argument 0 (x) for staticValueLen must be a uint256", + "pc": [ + 3287 + ] + }, + { + "teal": 2212, + "source": 435, + "pc": [ + 3288, + 3289, + 3290 + ] + }, + { + "teal": 2213, + "source": 435, + "pc": [ + 3291 + ] + }, + { + "teal": 2214, + "source": 435, + "pc": [ + 3292 + ] + }, + { + "teal": 2218, + "source": 435, + "pc": [ + 3293, + 3294, + 3295 + ] + }, + { + "teal": 2222, + "source": 436, + "pc": [ + 3296, + 3297 + ] + }, + { + "teal": 2223, + "source": 436, + "pc": [ + 3298 + ] + }, + { + "teal": 2224, + "source": 435, + "pc": [ + 3299 + ] + }, + { + "teal": 2229, + "source": 439, + "pc": [ + 3300, + 3301, + 3302 + ] + }, + { + "teal": 2230, + "source": 439, + "pc": [ + 3303 + ] + }, + { + "teal": 2231, + "source": 439, + "pc": [ + 3304 + ] + }, + { + "teal": 2235, + "source": 439, + "pc": [ + 3305, + 3306, + 3307 + ] + }, + { + "teal": 2239, + "source": 440, + "pc": [ + 3308, + 3309 + ] + }, + { + "teal": 2240, + "source": 440, + "pc": [ + 3310 + ] + }, + { + "teal": 2241, + "source": 439, + "pc": [ + 3311 + ] + }, + { + "teal": 2246, + "source": 443, + "pc": [ + 3312, + 3313, + 3314 + ] + }, + { + "teal": 2247, + "source": 443, + "pc": [ + 3315 + ] + }, + { + "teal": 2248, + "source": 443, + "pc": [ + 3316 + ] + }, + { + "teal": 2252, + "source": 443, + "pc": [ + 3317, + 3318, + 3319 + ] + }, + { + "teal": 2256, + "source": 444, + "pc": [ + 3320 + ] + }, + { + "teal": 2257, + "source": 444, + "pc": [ + 3321, + 3322 + ] + }, + { + "teal": 2258, + "source": 444, + "pc": [ + 3323 + ] + }, + { + "teal": 2262, + "source": 445, + "pc": [ + 3324 + ] + }, + { + "teal": 2263, + "source": 445, + "pc": [ + 3325 + ] + }, + { + "teal": 2264, + "source": 445, + "pc": [ + 3326, + 3327 + ] + }, + { + "teal": 2265, + "source": 445, + "pc": [ + 3328 + ] + }, + { + "teal": 2266, + "source": 445, + "pc": [ + 3329 + ] + }, + { + "teal": 2267, + "source": 443, + "pc": [ + 3330 + ] + }, + { + "teal": 2272, + "source": 448, + "pc": [ + 3331, + 3332, + 3333 + ] + }, + { + "teal": 2273, + "source": 448, + "pc": [ + 3334 + ] + }, + { + "teal": 2274, + "source": 448, + "pc": [ + 3335 + ] + }, + { + "teal": 2278, + "source": 448, + "pc": [ + 3336, + 3337, + 3338 + ] + }, + { + "teal": 2282, + "source": 449, + "pc": [ + 3339, + 3340 + ] + }, + { + "teal": 2283, + "source": 449, + "pc": [ + 3341, + 3342 + ] + }, + { + "teal": 2287, + "source": 450, + "pc": [ + 3343, + 3344 + ] + }, + { + "teal": 2288, + "source": 450, + "pc": [ + 3345 + ] + }, + { + "teal": 2289, + "source": 450, + "pc": [ + 3346 + ] + }, + { + "teal": 2290, + "source": 450, + "pc": [ + 3347, + 3348 + ] + }, + { + "teal": 2294, + "source": 451, + "pc": [ + 3349, + 3350 + ] + }, + { + "teal": 2295, + "source": 451, + "pc": [ + 3351, + 3352 + ] + }, + { + "teal": 2296, + "source": 451, + "pc": [ + 3353 + ] + }, + { + "teal": 2297, + "source": 451, + "pc": [ + 3354 + ] + }, + { + "teal": 2298, + "source": 448, + "pc": [ + 3355 + ] + }, + { + "teal": 2303, + "source": 454, + "pc": [ + 3356, + 3357, + 3358 + ] + }, + { + "teal": 2304, + "source": 454, + "pc": [ + 3359 + ] + }, + { + "teal": 2305, + "source": 454, + "pc": [ + 3360 + ] + }, + { + "teal": 2309, + "source": 454, + "pc": [ + 3361, + 3362, + 3363 + ] + }, + { + "teal": 2313, + "source": 455, + "pc": [ + 3364 + ] + }, + { + "teal": 2314, + "source": 455, + "pc": [ + 3365, + 3366 + ] + }, + { + "teal": 2315, + "source": 455, + "pc": [ + 3367 + ] + }, + { + "teal": 2319, + "source": 456, + "pc": [ + 3368 + ] + }, + { + "teal": 2320, + "source": 456, + "pc": [ + 3369 + ] + }, + { + "teal": 2321, + "source": 456, + "pc": [ + 3370 + ] + }, + { + "teal": 2322, + "source": 456, + "pc": [ + 3371 + ] + }, + { + "teal": 2323, + "source": 456, + "pc": [ + 3372 + ] + }, + { + "teal": 2324, + "source": 456, + "pc": [ + 3373 + ] + }, + { + "teal": 2325, + "source": 456, + "pc": [ + 3374 + ] + }, + { + "teal": 2329, + "source": 457, + "pc": [ + 3375 + ] + }, + { + "teal": 2330, + "source": 457, + "pc": [ + 3376 + ] + }, + { + "teal": 2331, + "source": 457, + "pc": [ + 3377, + 3378 + ] + }, + { + "teal": 2332, + "source": 457, + "pc": [ + 3379 + ] + }, + { + "teal": 2333, + "source": 457, + "pc": [ + 3380 + ] + }, + { + "teal": 2334, + "source": 454, + "pc": [ + 3381 + ] + }, + { + "teal": 2339, + "source": 460, + "pc": [ + 3382, + 3383, + 3384 + ] + }, + { + "teal": 2340, + "source": 460, + "pc": [ + 3385 + ] + }, + { + "teal": 2341, + "source": 460, + "pc": [ + 3386 + ] + }, + { + "teal": 2345, + "source": 460, + "pc": [ + 3387, + 3388, + 3389 + ] + }, + { + "teal": 2348, + "source": 460, + "pc": [ + 3390 + ] + }, + { + "teal": 2352, + "source": 461, + "pc": [ + 3391, + 3392 + ] + }, + { + "teal": 2353, + "source": 461, + "pc": [ + 3393, + 3394 + ] + }, + { + "teal": 2357, + "source": 462, + "pc": [ + 3395, + 3396 + ] + }, + { + "teal": 2358, + "source": 462, + "pc": [ + 3397, + 3398 + ] + }, + { + "teal": 2359, + "source": 462, + "pc": [ + 3399 + ] + }, + { + "teal": 2360, + "source": 462, + "pc": [ + 3400 + ] + }, + { + "teal": 2361, + "source": 460, + "pc": [ + 3401 + ] + }, + { + "teal": 2366, + "source": 465, + "pc": [ + 3402 + ] + }, + { + "teal": 2369, + "source": 465, + "pc": [ + 3403, + 3404, + 3405 + ] + }, + { + "teal": 2370, + "source": 465, + "pc": [ + 3406 + ] + }, + { + "teal": 2373, + "source": 465, + "pc": [ + 3407, + 3408, + 3409 + ] + }, + { + "teal": 2374, + "source": 465, + "pc": [ + 3410 + ] + }, + { + "teal": 2375, + "source": 465, + "pc": [ + 3411 + ] + }, + { + "teal": 2376, + "source": 465, + "pc": [ + 3412 + ] + }, + { + "teal": 2377, + "source": 465, + "pc": [ + 3413 + ] + }, + { + "teal": 2378, + "source": 465, + "pc": [ + 3414 + ] + }, + { + "teal": 2382, + "source": 465, + "pc": [ + 3415, + 3416, + 3417 + ] + }, + { + "teal": 2385, + "source": 465, + "pc": [ + 3418 + ] + }, + { + "teal": 2390, + "source": 466, + "pc": [ + 3419, + 3420 + ] + }, + { + "teal": 2391, + "source": 466, + "pc": [ + 3421 + ] + }, + { + "teal": 2392, + "source": 466, + "pc": [ + 3422 + ] + }, + { + "teal": 2393, + "source": 466, + "pc": [ + 3423, + 3424, + 3425 + ] + }, + { + "teal": 2398, + "source": 467, + "pc": [ + 3426 + ] + }, + { + "teal": 2399, + "source": 467, + "pc": [ + 3427, + 3428, + 3429 + ] + }, + { + "teal": 2404, + "source": 469, + "pc": [ + 3430, + 3431 + ] + }, + { + "teal": 2405, + "source": 469, + "pc": [ + 3432 + ] + }, + { + "teal": 2406, + "source": 469, + "pc": [ + 3433 + ] + }, + { + "teal": 2407, + "source": 469, + "pc": [ + 3434, + 3435 + ] + }, + { + "teal": 2411, + "source": 470, + "pc": [ + 3436, + 3437 + ] + }, + { + "teal": 2415, + "source": 465, + "pc": [ + 3438, + 3439 + ] + }, + { + "teal": 2416, + "source": 465, + "pc": [ + 3440 + ] + }, + { + "teal": 2421, + "source": 473, + "pc": [ + 3441, + 3442, + 3443 + ] + }, + { + "teal": 2422, + "source": 473, + "pc": [ + 3444 + ] + }, + { + "teal": 2423, + "source": 473, + "pc": [ + 3445 + ] + }, + { + "teal": 2427, + "source": 473, + "pc": [ + 3446, + 3447, + 3448 + ] + }, + { + "teal": 2434, + "source": 474, + "pc": [ + 3449 + ] + }, + { + "teal": 2435, + "source": 474, + "pc": [ + 3450 + ] + }, + { + "teal": 2436, + "source": 474, + "pc": [ + 3451, + 3452 + ] + }, + { + "teal": 2437, + "source": 475, + "pc": [ + 3453, + 3454, + 3455, + 3456, + 3457, + 3458 + ] + }, + { + "teal": 2438, + "source": 475, + "pc": [ + 3459, + 3460 + ] + }, + { + "teal": 2442, + "source": 476, + "pc": [ + 3461 + ] + }, + { + "teal": 2443, + "source": 476, + "pc": [ + 3462, + 3463 + ] + }, + { + "teal": 2444, + "source": 476, + "pc": [ + 3464, + 3465, + 3466, + 3467, + 3468, + 3469, + 3470, + 3471, + 3472, + 3473 + ] + }, + { + "teal": 2445, + "source": 476, + "pc": [ + 3474, + 3475 + ] + }, + { + "teal": 2448, + "source": 474, + "pc": [ + 3476 + ] + }, + { + "teal": 2449, + "source": 474, + "pc": [ + 3477, + 3478 + ] + }, + { + "teal": 2452, + "source": 474, + "pc": [ + 3479 + ] + }, + { + "teal": 2453, + "source": 473, + "pc": [ + 3480 + ] + }, + { + "teal": 2458, + "source": 484, + "pc": [ + 3481, + 3482, + 3483 + ] + }, + { + "teal": 2459, + "source": 484, + "pc": [ + 3484 + ] + }, + { + "teal": 2460, + "source": 484, + "pc": [ + 3485 + ] + }, + { + "teal": 2464, + "source": 484, + "pc": [ + 3486, + 3487, + 3488 + ] + }, + { + "teal": 2471, + "source": 485, + "pc": [ + 3489 + ] + }, + { + "teal": 2472, + "source": 485, + "pc": [ + 3490 + ] + }, + { + "teal": 2473, + "source": 485, + "pc": [ + 3491, + 3492 + ] + }, + { + "teal": 2477, + "source": 486, + "pc": [ + 3493, + 3494 + ] + }, + { + "teal": 2478, + "source": 486, + "pc": [ + 3495 + ] + }, + { + "teal": 2481, + "source": 486, + "errorMessage": "box value does not exist: this.pageOne.value", + "pc": [ + 3496 + ] + }, + { + "teal": 2482, + "source": 486, + "pc": [ + 3497, + 3498 + ] + }, + { + "teal": 2483, + "source": 486, + "pc": [ + 3499, + 3500 + ] + }, + { + "teal": 2484, + "source": 486, + "pc": [ + 3501 + ] + }, + { + "teal": 2487, + "source": 486, + "errorMessage": "box value does not exist: this.pageTwo.value", + "pc": [ + 3502 + ] + }, + { + "teal": 2488, + "source": 486, + "pc": [ + 3503, + 3504 + ] + }, + { + "teal": 2492, + "source": 487, + "pc": [ + 3505, + 3506 + ] + }, + { + "teal": 2493, + "source": 487, + "pc": [ + 3507 + ] + }, + { + "teal": 2496, + "source": 487, + "errorMessage": "box value does not exist: this.pageOne.value", + "pc": [ + 3508 + ] + }, + { + "teal": 2497, + "source": 487, + "pc": [ + 3509, + 3510 + ] + }, + { + "teal": 2498, + "source": 487, + "pc": [ + 3511, + 3512 + ] + }, + { + "teal": 2499, + "source": 487, + "pc": [ + 3513 + ] + }, + { + "teal": 2502, + "source": 487, + "errorMessage": "box value does not exist: this.pageTwo.value", + "pc": [ + 3514 + ] + }, + { + "teal": 2503, + "source": 487, + "pc": [ + 3515, + 3516 + ] + }, + { + "teal": 2506, + "source": 485, + "pc": [ + 3517 + ] + }, + { + "teal": 2507, + "source": 485, + "pc": [ + 3518, + 3519 + ] + }, + { + "teal": 2510, + "source": 485, + "pc": [ + 3520 + ] + }, + { + "teal": 2511, + "source": 484, + "pc": [ + 3521 + ] + }, + { + "teal": 2516, + "source": 491, + "pc": [ + 3522, + 3523, + 3524 + ] + }, + { + "teal": 2517, + "source": 491, + "pc": [ + 3525 + ] + }, + { + "teal": 2518, + "source": 491, + "pc": [ + 3526 + ] + }, + { + "teal": 2522, + "source": 491, + "pc": [ + 3527, + 3528, + 3529 + ] + }, + { + "teal": 2526, + "source": 492, + "pc": [ + 3530 + ] + }, + { + "teal": 2529, + "source": 492, + "errorMessage": "this is false", + "pc": [ + 3531 + ] + }, + { + "teal": 2530, + "source": 491, + "pc": [ + 3532 + ] + }, + { + "teal": 2535, + "source": 495, + "pc": [ + 3533, + 3534, + 3535 + ] + }, + { + "teal": 2536, + "source": 495, + "pc": [ + 3536 + ] + }, + { + "teal": 2537, + "source": 495, + "pc": [ + 3537 + ] + }, + { + "teal": 2541, + "source": 495, + "pc": [ + 3538, + 3539, + 3540 + ] + }, + { + "teal": 2544, + "source": 496, + "errorMessage": "this is an error", + "pc": [ + 3541 + ] + }, + { + "teal": 2545, + "source": 495, + "pc": [ + 3542 + ] + }, + { + "teal": 2550, + "source": 499, + "pc": [ + 3543, + 3544, + 3545 + ] + }, + { + "teal": 2551, + "source": 499, + "pc": [ + 3546 + ] + }, + { + "teal": 2554, + "source": 499, + "pc": [ + 3547, + 3548, + 3549 + ] + }, + { + "teal": 2555, + "source": 499, + "pc": [ + 3550 + ] + }, + { + "teal": 2558, + "source": 499, + "pc": [ + 3551, + 3552, + 3553 + ] + }, + { + "teal": 2559, + "source": 499, + "pc": [ + 3554 + ] + }, + { + "teal": 2560, + "source": 499, + "pc": [ + 3555 + ] + }, + { + "teal": 2564, + "source": 499, + "pc": [ + 3556, + 3557, + 3558 + ] + }, + { + "teal": 2567, + "source": 499, + "pc": [ + 3559 + ] + }, + { + "teal": 2568, + "source": 499, + "pc": [ + 3560 + ] + }, + { + "teal": 2572, + "source": 500, + "pc": [ + 3561, + 3562 + ] + }, + { + "teal": 2573, + "source": 500, + "pc": [ + 3563 + ] + }, + { + "teal": 2574, + "source": 500, + "pc": [ + 3564, + 3565, + 3566 + ] + }, + { + "teal": 2575, + "source": 500, + "pc": [ + 3567, + 3568 + ] + }, + { + "teal": 2576, + "source": 500, + "pc": [ + 3569 + ] + }, + { + "teal": 2577, + "source": 500, + "pc": [ + 3570 + ] + }, + { + "teal": 2578, + "source": 500, + "pc": [ + 3571 + ] + }, + { + "teal": 2581, + "source": 500, + "pc": [ + 3572, + 3573, + 3574 + ] + }, + { + "teal": 2582, + "source": 500, + "pc": [ + 3575 + ] + }, + { + "teal": 2583, + "source": 500, + "pc": [ + 3576, + 3577, + 3578 + ] + }, + { + "teal": 2586, + "source": 500, + "pc": [ + 3579 + ] + }, + { + "teal": 2589, + "source": 500, + "pc": [ + 3580, + 3581 + ] + }, + { + "teal": 2593, + "source": 501, + "pc": [ + 3582, + 3583 + ] + }, + { + "teal": 2594, + "source": 501, + "pc": [ + 3584 + ] + }, + { + "teal": 2598, + "source": 503, + "pc": [ + 3585, + 3586 + ] + }, + { + "teal": 2599, + "source": 503, + "pc": [ + 3587 + ] + }, + { + "teal": 2600, + "source": 503, + "pc": [ + 3588, + 3589, + 3590 + ] + }, + { + "teal": 2601, + "source": 503, + "pc": [ + 3591, + 3592 + ] + }, + { + "teal": 2602, + "source": 503, + "pc": [ + 3593 + ] + }, + { + "teal": 2603, + "source": 503, + "pc": [ + 3594 + ] + }, + { + "teal": 2604, + "source": 503, + "pc": [ + 3595 + ] + }, + { + "teal": 2607, + "source": 503, + "pc": [ + 3596, + 3597, + 3598 + ] + }, + { + "teal": 2608, + "source": 503, + "pc": [ + 3599, + 3600, + 3601 + ] + }, + { + "teal": 2609, + "source": 503, + "pc": [ + 3602, + 3603, + 3604 + ] + }, + { + "teal": 2612, + "source": 503, + "pc": [ + 3605, + 3606 + ] + }, + { + "teal": 2615, + "source": 503, + "pc": [ + 3607, + 3608 + ] + }, + { + "teal": 2619, + "source": 504, + "pc": [ + 3609, + 3610 + ] + }, + { + "teal": 2620, + "source": 504, + "pc": [ + 3611 + ] + }, + { + "teal": 2621, + "source": 499, + "pc": [ + 3612 + ] + }, + { + "teal": 2625, + "source": 507, + "pc": [ + 3613, + 3614, + 3615 + ] + }, + { + "teal": 2628, + "source": 507, + "pc": [ + 3616 + ] + }, + { + "teal": 2632, + "source": 509, + "pc": [ + 3617, + 3618 + ] + }, + { + "teal": 2633, + "source": 509, + "pc": [ + 3619 + ] + }, + { + "teal": 2637, + "source": 511, + "pc": [ + 3620 + ] + }, + { + "teal": 2638, + "source": 511, + "pc": [ + 3621, + 3622 + ] + }, + { + "teal": 2643, + "source": 511, + "pc": [ + 3623, + 3624 + ] + }, + { + "teal": 2644, + "source": 511, + "pc": [ + 3625, + 3626 + ] + }, + { + "teal": 2645, + "source": 511, + "pc": [ + 3627 + ] + }, + { + "teal": 2646, + "source": 511, + "pc": [ + 3628, + 3629, + 3630 + ] + }, + { + "teal": 2650, + "source": 512, + "pc": [ + 3631, + 3632 + ] + }, + { + "teal": 2651, + "source": 512, + "pc": [ + 3633, + 3634 + ] + }, + { + "teal": 2652, + "source": 512, + "pc": [ + 3635 + ] + }, + { + "teal": 2657, + "source": 511, + "pc": [ + 3636, + 3637 + ] + }, + { + "teal": 2658, + "source": 511, + "pc": [ + 3638 + ] + }, + { + "teal": 2659, + "source": 511, + "pc": [ + 3639 + ] + }, + { + "teal": 2660, + "source": 511, + "pc": [ + 3640, + 3641 + ] + }, + { + "teal": 2661, + "source": 511, + "pc": [ + 3642, + 3643, + 3644 + ] + }, + { + "teal": 2664, + "source": 507, + "pc": [ + 3645 + ] + }, + { + "teal": 2669, + "source": 516, + "pc": [ + 3646, + 3647, + 3648 + ] + }, + { + "teal": 2670, + "source": 516, + "pc": [ + 3649 + ] + }, + { + "teal": 2671, + "source": 516, + "pc": [ + 3650 + ] + }, + { + "teal": 2675, + "source": 516, + "pc": [ + 3651, + 3652, + 3653 + ] + }, + { + "teal": 2678, + "source": 516, + "pc": [ + 3654 + ] + }, + { + "teal": 2679, + "source": 516, + "pc": [ + 3655 + ] + }, + { + "teal": 2683, + "source": 517, + "pc": [ + 3656 + ] + }, + { + "teal": 2684, + "source": 517, + "pc": [ + 3657, + 3658 + ] + }, + { + "teal": 2688, + "source": 518, + "pc": [ + 3659, + 3660 + ] + }, + { + "teal": 2689, + "source": 518, + "pc": [ + 3661, + 3662 + ] + }, + { + "teal": 2696, + "source": 520, + "pc": [ + 3663, + 3664 + ] + }, + { + "teal": 2697, + "source": 520, + "pc": [ + 3665 + ] + }, + { + "teal": 2698, + "source": 520, + "pc": [ + 3666, + 3667, + 3668, + 3669, + 3670 + ] + }, + { + "teal": 2699, + "source": 520, + "pc": [ + 3671 + ] + }, + { + "teal": 2702, + "source": 520, + "errorMessage": "local state value does not exist: app.localState( addr, 'key' )", + "pc": [ + 3672 + ] + }, + { + "teal": 2703, + "source": 516, + "pc": [ + 3673 + ] + }, + { + "teal": 2708, + "source": 526, + "pc": [ + 3674 + ] + }, + { + "teal": 2711, + "source": 526, + "pc": [ + 3675, + 3676, + 3677 + ] + }, + { + "teal": 2712, + "source": 526, + "pc": [ + 3678 + ] + }, + { + "teal": 2713, + "source": 526, + "pc": [ + 3679 + ] + }, + { + "teal": 2714, + "source": 526, + "pc": [ + 3680 + ] + }, + { + "teal": 2715, + "source": 526, + "pc": [ + 3681 + ] + }, + { + "teal": 2716, + "source": 526, + "pc": [ + 3682 + ] + }, + { + "teal": 2720, + "source": 526, + "pc": [ + 3683, + 3684, + 3685 + ] + }, + { + "teal": 2724, + "source": 527, + "pc": [ + 3686, + 3687 + ] + }, + { + "teal": 2725, + "source": 526, + "pc": [ + 3688 + ] + }, + { + "teal": 2730, + "source": 530, + "pc": [ + 3689 + ] + }, + { + "teal": 2733, + "source": 530, + "pc": [ + 3690, + 3691, + 3692 + ] + }, + { + "teal": 2734, + "source": 530, + "pc": [ + 3693 + ] + }, + { + "teal": 2735, + "source": 530, + "pc": [ + 3694 + ] + }, + { + "teal": 2736, + "source": 530, + "pc": [ + 3695 + ] + }, + { + "teal": 2737, + "source": 530, + "pc": [ + 3696 + ] + }, + { + "teal": 2738, + "source": 530, + "pc": [ + 3697 + ] + }, + { + "teal": 2742, + "source": 530, + "pc": [ + 3698, + 3699, + 3700 + ] + }, + { + "teal": 2746, + "source": 531, + "pc": [ + 3701, + 3702 + ] + }, + { + "teal": 2747, + "source": 530, + "pc": [ + 3703 + ] + }, + { + "teal": 2752, + "source": 534, + "pc": [ + 3704 + ] + }, + { + "teal": 2755, + "source": 534, + "pc": [ + 3705, + 3706, + 3707 + ] + }, + { + "teal": 2756, + "source": 534, + "pc": [ + 3708 + ] + }, + { + "teal": 2757, + "source": 534, + "pc": [ + 3709 + ] + }, + { + "teal": 2758, + "source": 534, + "pc": [ + 3710 + ] + }, + { + "teal": 2759, + "source": 534, + "pc": [ + 3711 + ] + }, + { + "teal": 2760, + "source": 534, + "pc": [ + 3712 + ] + }, + { + "teal": 2764, + "source": 534, + "pc": [ + 3713, + 3714, + 3715 + ] + }, + { + "teal": 2768, + "source": 535, + "pc": [ + 3716, + 3717, + 3718 + ] + }, + { + "teal": 2769, + "source": 535, + "pc": [ + 3719 + ] + }, + { + "teal": 2773, + "source": 536, + "pc": [ + 3720, + 3721, + 3722 + ] + }, + { + "teal": 2774, + "source": 534, + "pc": [ + 3723 + ] + }, + { + "teal": 2779, + "source": 546, + "pc": [ + 3724 + ] + }, + { + "teal": 2782, + "source": 546, + "pc": [ + 3725, + 3726, + 3727 + ] + }, + { + "teal": 2783, + "source": 546, + "pc": [ + 3728 + ] + }, + { + "teal": 2784, + "source": 546, + "pc": [ + 3729 + ] + }, + { + "teal": 2785, + "source": 546, + "pc": [ + 3730 + ] + }, + { + "teal": 2786, + "source": 546, + "pc": [ + 3731 + ] + }, + { + "teal": 2787, + "source": 546, + "pc": [ + 3732 + ] + }, + { + "teal": 2791, + "source": 546, + "pc": [ + 3733, + 3734, + 3735 + ] + }, + { + "teal": 2794, + "source": 546, + "pc": [ + 3736 + ] + }, + { + "teal": 2795, + "source": 546, + "pc": [ + 3737 + ] + }, + { + "teal": 2799, + "source": 547, + "pc": [ + 3738 + ] + }, + { + "teal": 2800, + "source": 547, + "pc": [ + 3739, + 3740 + ] + }, + { + "teal": 2804, + "source": 548, + "pc": [ + 3741, + 3742, + 3743 + ] + }, + { + "teal": 2805, + "source": 548, + "pc": [ + 3744, + 3745 + ] + }, + { + "teal": 2810, + "source": 549, + "pc": [ + 3746, + 3747 + ] + }, + { + "teal": 2811, + "source": 549, + "pc": [ + 3748, + 3749, + 3750 + ] + }, + { + "teal": 2816, + "source": 550, + "pc": [ + 3751 + ] + }, + { + "teal": 2817, + "source": 550, + "pc": [ + 3752, + 3753 + ] + }, + { + "teal": 2822, + "source": 553, + "pc": [ + 3754, + 3755 + ] + }, + { + "teal": 2825, + "source": 546, + "pc": [ + 3756, + 3757 + ] + }, + { + "teal": 2828, + "source": 546, + "pc": [ + 3758, + 3759 + ] + }, + { + "teal": 2829, + "source": 546, + "pc": [ + 3760 + ] + }, + { + "teal": 2834, + "source": 556, + "pc": [ + 3761, + 3762, + 3763 + ] + }, + { + "teal": 2835, + "source": 556, + "pc": [ + 3764 + ] + }, + { + "teal": 2836, + "source": 556, + "pc": [ + 3765 + ] + }, + { + "teal": 2840, + "source": 556, + "pc": [ + 3766, + 3767, + 3768 + ] + }, + { + "teal": 2844, + "source": 557, + "pc": [ + 3769, + 3770 + ] + }, + { + "teal": 2845, + "source": 557, + "pc": [ + 3771 + ] + }, + { + "teal": 2849, + "source": 558, + "pc": [ + 3772, + 3773 + ] + }, + { + "teal": 2850, + "source": 558, + "pc": [ + 3774 + ] + }, + { + "teal": 2851, + "source": 556, + "pc": [ + 3775 + ] + }, + { + "teal": 2854, + "source": 49, + "pc": [ + 3776 + ] + }, + { + "teal": 2855, + "source": 49, + "pc": [ + 3777 + ] + }, + { + "teal": 2858, + "source": 49, + "pc": [ + 3778, + 3779, + 3780, + 3781, + 3782, + 3783 + ] + }, + { + "teal": 2859, + "source": 49, + "pc": [ + 3784, + 3785, + 3786 + ] + }, + { + "teal": 2860, + "source": 49, + "pc": [ + 3787, + 3788, + 3789, + 3790 + ] + }, + { + "teal": 2863, + "source": 49, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 3791 + ] + }, + { + "teal": 2866, + "source": 49, + "pc": [ + 3792, + 3793, + 3794, + 3795, + 3796, + 3797 + ] + }, + { + "teal": 2867, + "source": 49, + "pc": [ + 3798, + 3799, + 3800, + 3801, + 3802, + 3803 + ] + }, + { + "teal": 2868, + "source": 49, + "pc": [ + 3804, + 3805, + 3806, + 3807, + 3808, + 3809 + ] + }, + { + "teal": 2869, + "source": 49, + "pc": [ + 3810, + 3811, + 3812, + 3813, + 3814, + 3815 + ] + }, + { + "teal": 2870, + "source": 49, + "pc": [ + 3816, + 3817, + 3818, + 3819, + 3820, + 3821 + ] + }, + { + "teal": 2871, + "source": 49, + "pc": [ + 3822, + 3823, + 3824, + 3825, + 3826, + 3827 + ] + }, + { + "teal": 2872, + "source": 49, + "pc": [ + 3828, + 3829, + 3830, + 3831, + 3832, + 3833 + ] + }, + { + "teal": 2873, + "source": 49, + "pc": [ + 3834, + 3835, + 3836, + 3837, + 3838, + 3839 + ] + }, + { + "teal": 2874, + "source": 49, + "pc": [ + 3840, + 3841, + 3842, + 3843, + 3844, + 3845 + ] + }, + { + "teal": 2875, + "source": 49, + "pc": [ + 3846, + 3847, + 3848, + 3849, + 3850, + 3851 + ] + }, + { + "teal": 2876, + "source": 49, + "pc": [ + 3852, + 3853, + 3854, + 3855, + 3856, + 3857 + ] + }, + { + "teal": 2877, + "source": 49, + "pc": [ + 3858, + 3859, + 3860, + 3861, + 3862, + 3863 + ] + }, + { + "teal": 2878, + "source": 49, + "pc": [ + 3864, + 3865, + 3866, + 3867, + 3868, + 3869 + ] + }, + { + "teal": 2879, + "source": 49, + "pc": [ + 3870, + 3871, + 3872, + 3873, + 3874, + 3875 + ] + }, + { + "teal": 2880, + "source": 49, + "pc": [ + 3876, + 3877, + 3878, + 3879, + 3880, + 3881 + ] + }, + { + "teal": 2881, + "source": 49, + "pc": [ + 3882, + 3883, + 3884, + 3885, + 3886, + 3887 + ] + }, + { + "teal": 2882, + "source": 49, + "pc": [ + 3888, + 3889, + 3890, + 3891, + 3892, + 3893 + ] + }, + { + "teal": 2883, + "source": 49, + "pc": [ + 3894, + 3895, + 3896, + 3897, + 3898, + 3899 + ] + }, + { + "teal": 2884, + "source": 49, + "pc": [ + 3900, + 3901, + 3902, + 3903, + 3904, + 3905 + ] + }, + { + "teal": 2885, + "source": 49, + "pc": [ + 3906, + 3907, + 3908, + 3909, + 3910, + 3911 + ] + }, + { + "teal": 2886, + "source": 49, + "pc": [ + 3912, + 3913, + 3914, + 3915, + 3916, + 3917 + ] + }, + { + "teal": 2887, + "source": 49, + "pc": [ + 3918, + 3919, + 3920, + 3921, + 3922, + 3923 + ] + }, + { + "teal": 2888, + "source": 49, + "pc": [ + 3924, + 3925, + 3926, + 3927, + 3928, + 3929 + ] + }, + { + "teal": 2889, + "source": 49, + "pc": [ + 3930, + 3931, + 3932, + 3933, + 3934, + 3935 + ] + }, + { + "teal": 2890, + "source": 49, + "pc": [ + 3936, + 3937, + 3938, + 3939, + 3940, + 3941 + ] + }, + { + "teal": 2891, + "source": 49, + "pc": [ + 3942, + 3943, + 3944, + 3945, + 3946, + 3947 + ] + }, + { + "teal": 2892, + "source": 49, + "pc": [ + 3948, + 3949, + 3950, + 3951, + 3952, + 3953 + ] + }, + { + "teal": 2893, + "source": 49, + "pc": [ + 3954, + 3955, + 3956, + 3957, + 3958, + 3959 + ] + }, + { + "teal": 2894, + "source": 49, + "pc": [ + 3960, + 3961, + 3962, + 3963, + 3964, + 3965 + ] + }, + { + "teal": 2895, + "source": 49, + "pc": [ + 3966, + 3967, + 3968, + 3969, + 3970, + 3971 + ] + }, + { + "teal": 2896, + "source": 49, + "pc": [ + 3972, + 3973, + 3974, + 3975, + 3976, + 3977 + ] + }, + { + "teal": 2897, + "source": 49, + "pc": [ + 3978, + 3979, + 3980, + 3981, + 3982, + 3983 + ] + }, + { + "teal": 2898, + "source": 49, + "pc": [ + 3984, + 3985, + 3986, + 3987, + 3988, + 3989 + ] + }, + { + "teal": 2899, + "source": 49, + "pc": [ + 3990, + 3991, + 3992, + 3993, + 3994, + 3995 + ] + }, + { + "teal": 2900, + "source": 49, + "pc": [ + 3996, + 3997, + 3998, + 3999, + 4000, + 4001 + ] + }, + { + "teal": 2901, + "source": 49, + "pc": [ + 4002, + 4003, + 4004, + 4005, + 4006, + 4007 + ] + }, + { + "teal": 2902, + "source": 49, + "pc": [ + 4008, + 4009, + 4010, + 4011, + 4012, + 4013 + ] + }, + { + "teal": 2903, + "source": 49, + "pc": [ + 4014, + 4015, + 4016, + 4017, + 4018, + 4019 + ] + }, + { + "teal": 2904, + "source": 49, + "pc": [ + 4020, + 4021, + 4022, + 4023, + 4024, + 4025 + ] + }, + { + "teal": 2905, + "source": 49, + "pc": [ + 4026, + 4027, + 4028, + 4029, + 4030, + 4031 + ] + }, + { + "teal": 2906, + "source": 49, + "pc": [ + 4032, + 4033, + 4034, + 4035, + 4036, + 4037 + ] + }, + { + "teal": 2907, + "source": 49, + "pc": [ + 4038, + 4039, + 4040, + 4041, + 4042, + 4043 + ] + }, + { + "teal": 2908, + "source": 49, + "pc": [ + 4044, + 4045, + 4046, + 4047, + 4048, + 4049 + ] + }, + { + "teal": 2909, + "source": 49, + "pc": [ + 4050, + 4051, + 4052, + 4053, + 4054, + 4055 + ] + }, + { + "teal": 2910, + "source": 49, + "pc": [ + 4056, + 4057, + 4058, + 4059, + 4060, + 4061 + ] + }, + { + "teal": 2911, + "source": 49, + "pc": [ + 4062, + 4063, + 4064, + 4065, + 4066, + 4067 + ] + }, + { + "teal": 2912, + "source": 49, + "pc": [ + 4068, + 4069, + 4070, + 4071, + 4072, + 4073 + ] + }, + { + "teal": 2913, + "source": 49, + "pc": [ + 4074, + 4075, + 4076, + 4077, + 4078, + 4079 + ] + }, + { + "teal": 2914, + "source": 49, + "pc": [ + 4080, + 4081, + 4082, + 4083, + 4084, + 4085 + ] + }, + { + "teal": 2915, + "source": 49, + "pc": [ + 4086, + 4087, + 4088, + 4089, + 4090, + 4091 + ] + }, + { + "teal": 2916, + "source": 49, + "pc": [ + 4092, + 4093, + 4094, + 4095, + 4096, + 4097 + ] + }, + { + "teal": 2917, + "source": 49, + "pc": [ + 4098, + 4099, + 4100, + 4101, + 4102, + 4103 + ] + }, + { + "teal": 2918, + "source": 49, + "pc": [ + 4104, + 4105, + 4106, + 4107, + 4108, + 4109 + ] + }, + { + "teal": 2919, + "source": 49, + "pc": [ + 4110, + 4111, + 4112, + 4113, + 4114, + 4115 + ] + }, + { + "teal": 2920, + "source": 49, + "pc": [ + 4116, + 4117 + ] + }, + { + "teal": 2921, + "source": 49, + "pc": [ + 4118, + 4119, + 4120, + 4121, + 4122, + 4123 + ] + }, + { + "teal": 2922, + "source": 49, + "pc": [ + 4124, + 4125, + 4126, + 4127, + 4128, + 4129 + ] + }, + { + "teal": 2923, + "source": 49, + "pc": [ + 4130, + 4131, + 4132, + 4133, + 4134, + 4135 + ] + }, + { + "teal": 2924, + "source": 49, + "pc": [ + 4136, + 4137, + 4138, + 4139, + 4140, + 4141 + ] + }, + { + "teal": 2925, + "source": 49, + "pc": [ + 4142, + 4143, + 4144, + 4145, + 4146, + 4147 + ] + }, + { + "teal": 2926, + "source": 49, + "pc": [ + 4148, + 4149, + 4150, + 4151, + 4152, + 4153 + ] + }, + { + "teal": 2927, + "source": 49, + "pc": [ + 4154, + 4155, + 4156, + 4157, + 4158, + 4159 + ] + }, + { + "teal": 2928, + "source": 49, + "pc": [ + 4160, + 4161, + 4162, + 4163, + 4164, + 4165 + ] + }, + { + "teal": 2929, + "source": 49, + "pc": [ + 4166, + 4167, + 4168, + 4169, + 4170, + 4171 + ] + }, + { + "teal": 2930, + "source": 49, + "pc": [ + 4172, + 4173, + 4174, + 4175, + 4176, + 4177 + ] + }, + { + "teal": 2931, + "source": 49, + "pc": [ + 4178, + 4179, + 4180, + 4181, + 4182, + 4183 + ] + }, + { + "teal": 2932, + "source": 49, + "pc": [ + 4184, + 4185, + 4186, + 4187, + 4188, + 4189 + ] + }, + { + "teal": 2933, + "source": 49, + "pc": [ + 4190, + 4191, + 4192, + 4193, + 4194, + 4195 + ] + }, + { + "teal": 2934, + "source": 49, + "pc": [ + 4196, + 4197, + 4198, + 4199, + 4200, + 4201 + ] + }, + { + "teal": 2935, + "source": 49, + "pc": [ + 4202, + 4203, + 4204, + 4205, + 4206, + 4207 + ] + }, + { + "teal": 2936, + "source": 49, + "pc": [ + 4208, + 4209, + 4210, + 4211, + 4212, + 4213 + ] + }, + { + "teal": 2937, + "source": 49, + "pc": [ + 4214, + 4215, + 4216, + 4217, + 4218, + 4219 + ] + }, + { + "teal": 2938, + "source": 49, + "pc": [ + 4220, + 4221, + 4222, + 4223, + 4224, + 4225 + ] + }, + { + "teal": 2939, + "source": 49, + "pc": [ + 4226, + 4227, + 4228, + 4229, + 4230, + 4231 + ] + }, + { + "teal": 2940, + "source": 49, + "pc": [ + 4232, + 4233, + 4234 + ] + }, + { + "teal": 2941, + "source": 49, + "pc": [ + 4235, + 4236, + 4237, + 4238, + 4239, + 4240, + 4241, + 4242, + 4243, + 4244, + 4245, + 4246, + 4247, + 4248, + 4249, + 4250, + 4251, + 4252, + 4253, + 4254, + 4255, + 4256, + 4257, + 4258, + 4259, + 4260, + 4261, + 4262, + 4263, + 4264, + 4265, + 4266, + 4267, + 4268, + 4269, + 4270, + 4271, + 4272, + 4273, + 4274, + 4275, + 4276, + 4277, + 4278, + 4279, + 4280, + 4281, + 4282, + 4283, + 4284, + 4285, + 4286, + 4287, + 4288, + 4289, + 4290, + 4291, + 4292, + 4293, + 4294, + 4295, + 4296, + 4297, + 4298, + 4299, + 4300, + 4301, + 4302, + 4303, + 4304, + 4305, + 4306, + 4307, + 4308, + 4309, + 4310, + 4311, + 4312, + 4313, + 4314, + 4315, + 4316, + 4317, + 4318, + 4319, + 4320, + 4321, + 4322, + 4323, + 4324, + 4325, + 4326, + 4327, + 4328, + 4329, + 4330, + 4331, + 4332, + 4333, + 4334, + 4335, + 4336, + 4337, + 4338, + 4339, + 4340, + 4341, + 4342, + 4343, + 4344, + 4345, + 4346, + 4347, + 4348, + 4349, + 4350, + 4351, + 4352, + 4353, + 4354, + 4355, + 4356, + 4357, + 4358, + 4359, + 4360, + 4361, + 4362, + 4363, + 4364, + 4365, + 4366, + 4367, + 4368, + 4369, + 4370, + 4371, + 4372, + 4373, + 4374, + 4375, + 4376, + 4377, + 4378, + 4379, + 4380, + 4381, + 4382, + 4383, + 4384 + ] + }, + { + "teal": 2944, + "source": 49, + "pc": [ + 4385, + 4386, + 4387 + ] + }, + { + "teal": 2945, + "source": 49, + "pc": [ + 4388 + ] + }, + { + "teal": 2946, + "source": 49, + "pc": [ + 4389 + ] + }, + { + "teal": 2949, + "source": 49, + "pc": [ + 4390, + 4391, + 4392 + ] + }, + { + "teal": 2950, + "source": 49, + "pc": [ + 4393, + 4394, + 4395, + 4396, + 4397, + 4398, + 4399, + 4400, + 4401, + 4402, + 4403, + 4404 + ] + }, + { + "teal": 2951, + "source": 49, + "pc": [ + 4405, + 4406 + ] + }, + { + "teal": 2952, + "source": 49, + "pc": [ + 4407 + ] + }, + { + "teal": 2953, + "source": 49, + "pc": [ + 4408 + ] + }, + { + "teal": 2954, + "source": 49, + "pc": [ + 4409 + ] + }, + { + "teal": 2955, + "source": 49 + }, + { + "teal": 2958, + "source": 49, + "pc": [ + 4410, + 4411, + 4412 + ] + }, + { + "teal": 2959, + "source": 49, + "pc": [ + 4413, + 4414 + ] + }, + { + "teal": 2960, + "source": 49, + "pc": [ + 4415 + ] + }, + { + "teal": 2961, + "source": 49, + "pc": [ + 4416 + ] + }, + { + "teal": 2962, + "source": 49, + "pc": [ + 4417, + 4418, + 4419 + ] + }, + { + "teal": 2963, + "source": 49, + "pc": [ + 4420, + 4421 + ] + }, + { + "teal": 2964, + "source": 49, + "pc": [ + 4422 + ] + }, + { + "teal": 2967, + "source": 49, + "pc": [ + 4423, + 4424 + ] + }, + { + "teal": 2968, + "source": 49, + "pc": [ + 4425, + 4426 + ] + }, + { + "teal": 2969, + "source": 49, + "pc": [ + 4427 + ] + }, + { + "teal": 2970, + "source": 49, + "pc": [ + 4428 + ] + }, + { + "teal": 2971, + "source": 49, + "pc": [ + 4429 + ] + }, + { + "teal": 2972, + "source": 49, + "pc": [ + 4430, + 4431, + 4432 + ] + }, + { + "teal": 2973, + "source": 49, + "pc": [ + 4433, + 4434 + ] + }, + { + "teal": 2974, + "source": 49, + "pc": [ + 4435, + 4436 + ] + }, + { + "teal": 2975, + "source": 49, + "pc": [ + 4437 + ] + }, + { + "teal": 2976, + "source": 49, + "pc": [ + 4438, + 4439, + 4440 + ] + }, + { + "teal": 2977, + "source": 49, + "pc": [ + 4441, + 4442, + 4443 + ] + }, + { + "teal": 2980, + "source": 49, + "pc": [ + 4444 + ] + }, + { + "teal": 2983, + "source": 49, + "pc": [ + 4445, + 4446 + ] + }, + { + "teal": 2984, + "source": 49, + "pc": [ + 4447, + 4448 + ] + }, + { + "teal": 2985, + "source": 49, + "pc": [ + 4449 + ] + }, + { + "teal": 2986, + "source": 49, + "pc": [ + 4450, + 4451, + 4452 + ] + }, + { + "teal": 2987, + "source": 49, + "pc": [ + 4453 + ] + }, + { + "teal": 2988, + "source": 49, + "pc": [ + 4454 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlRW51bSgpdm9pZAoqYWJpX3JvdXRlX3R4blR5cGVFbnVtOgoJLy8gZXhlY3V0ZSB0eG5UeXBlRW51bSgpdm9pZAoJY2FsbHN1YiB0eG5UeXBlRW51bQoJaW50IDEKCXJldHVybgoKLy8gdHhuVHlwZUVudW0oKTogdm9pZAp0eG5UeXBlRW51bToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjEKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwWzBdLnR5cGVFbnVtID09PSBUcmFuc2FjdGlvblR5cGUuQXBwbGljYXRpb25DYWxsKQoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyB0eG5Hcm91cExlbmd0aCgpdm9pZAoqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoOgoJLy8gZXhlY3V0ZSB0eG5Hcm91cExlbmd0aCgpdm9pZAoJY2FsbHN1YiB0eG5Hcm91cExlbmd0aAoJaW50IDEKCXJldHVybgoKLy8gdHhuR3JvdXBMZW5ndGgoKTogdm9pZAp0eG5Hcm91cExlbmd0aDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjUKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwLmxlbmd0aCA9PT0gMSkKCWdsb2JhbCBHcm91cFNpemUKCWludCAxCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydHMoYm9vbCxib29sKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRzOgoJLy8gYXJnMjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzIpIGZvciBhc3NlcnRzIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMSkgZm9yIGFzc2VydHMgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgYXNzZXJ0cyhib29sLGJvb2wpdm9pZAoJY2FsbHN1YiBhc3NlcnRzCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRzKGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiB2b2lkCmFzc2VydHM6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjY5CgkvLyBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglmcmFtZV9kaWcgLTEgLy8gYXJnMTogYm9vbGVhbgoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoYXJnMSwgYXJnMiwgYXJnMSA9PT0gYXJnMikKCWFzc2VydAoJZnJhbWVfZGlnIC0xIC8vIGFyZzE6IGJvb2xlYW4KCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgk9PQoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21Bcmc6CgkvLyBzb21lUGF5OiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChzb21lUGF5KSBmb3IgdmVyaWZ5VHhuRnJvbUFyZyBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHZlcmlmeVR4bkZyb21BcmcocGF5KXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuRnJvbUFyZwoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhzb21lUGF5OiBQYXlUeG4pOiB2b2lkCnZlcmlmeVR4bkZyb21Bcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjczCgkvLyB2ZXJpZnlUeG4oc29tZVBheSwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiAxMDBfMDAwIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNvbWVQYXkiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDEwMF8wMDAKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzb21lUGF5IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6IjEwMF8wMDAifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkZyb21UeG5Hcm91cCgpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21UeG5Hcm91cDoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkZyb21UeG5Hcm91cAoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCk6IHZvaWQKdmVyaWZ5VHhuRnJvbVR4bkdyb3VwOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo3NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWludCAwCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuQ29uZGl0aW9uKCl2b2lkCiphYmlfcm91dGVfdmVyaWZ5VHhuQ29uZGl0aW9uOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuQ29uZGl0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnlUeG5Db25kaXRpb24oKTogdm9pZAp2ZXJpZnlUeG5Db25kaXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjgxCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHsgZ3JlYXRlclRoYW46IDEgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uSUQKCXR4biBBcHBsaWNhdGlvbklECglpbnQgMQoJPgoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6ImFwcGxpY2F0aW9uSUQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjEifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5JbmNsdWRlZEluKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkluY2x1ZGVkSW4KCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKTogdm9pZAp2ZXJpZnlUeG5JbmNsdWRlZEluOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo4NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7CgkvLyAgICAgICBzZW5kZXI6IHsgaW5jbHVkZWRJbjogW3RoaXMudHhuLnNlbmRlcl0gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0IjoidGhpcy50eG4ifSwiZmllbGQiOiJzZW5kZXIiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbdGhpcy50eG4uc2VuZGVyXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bk5vdEluY2x1ZGVkSW46CgkvLyBleGVjdXRlIHZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuTm90SW5jbHVkZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpOiB2b2lkCnZlcmlmeVR4bk5vdEluY2x1ZGVkSW46Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjkzCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIHNlbmRlcjogeyBub3RJbmNsdWRlZEluOiBbZ2xvYmFscy56ZXJvQWRkcmVzc10gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4biJ9LCJmaWVsZCI6InNlbmRlciIsImNvbmRpdGlvbiI6Im5vdEluY2x1ZGVkSW4iLCJleHBlY3RlZCI6IltnbG9iYWxzLnplcm9BZGRyZXNzXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gc3VibWl0UGVuZGluZ0dyb3VwKCl2b2lkCiphYmlfcm91dGVfc3VibWl0UGVuZGluZ0dyb3VwOgoJLy8gZXhlY3V0ZSBzdWJtaXRQZW5kaW5nR3JvdXAoKXZvaWQKCWNhbGxzdWIgc3VibWl0UGVuZGluZ0dyb3VwCglpbnQgMQoJcmV0dXJuCgovLyBzdWJtaXRQZW5kaW5nR3JvdXAoKTogdm9pZApzdWJtaXRQZW5kaW5nR3JvdXA6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjk5CgkvLyB0aGlzLnBlbmRpbmdHcm91cC5hZGRQYXltZW50KHsgYW1vdW50OiAwLCByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgaXNGaXJzdFR4bjogdHJ1ZSB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6OTkKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo5OQoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHRoaXMucGVuZGluZ0dyb3VwLmFkZFBheW1lbnQoeyBhbW91bnQ6IDAsIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBub3RlOiAnZm9vJyB9KQoJaXR4bl9uZXh0CglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTAwCgkvLyBub3RlOiAnZm9vJwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDEKCS8vIHRoaXMucGVuZGluZ0dyb3VwLnN1Ym1pdCgpCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzOgoJLy8gZXhlY3V0ZSBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoJY2FsbHN1YiBtZXRob2RXaXRoVHhuQXJncwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kV2l0aFR4bkFyZ3MoKTogdm9pZAptZXRob2RXaXRoVHhuQXJnczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTA1CgkvLyBzZW5kTWV0aG9kQ2FsbDxbUGF5VHhuLCBNZXRob2RDYWxsPFt1aW50NjRdLCB2b2lkPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogWwoJLy8gICAgICAgICB7IGFtb3VudDogMTAwXzAwMCwgcmVjZWl2ZXI6IHRoaXMudHhuLnNlbmRlciB9LAoJLy8gICAgICAgICB7CgkvLyAgICAgICAgICAgbmFtZTogJ2JhcicsCgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbMV0sCgkvLyAgICAgICAgIH0sCgkvLyAgICAgICBdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIGFtb3VudDogMTAwXzAwMAoJaW50IDEwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYmFyKHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjExMQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KQoJaW50IDEzMzcKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTEyCgkvLyBtZXRob2RBcmdzOiBbMV0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJaXR4bl9uZXh0CglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJmb28ocGF5LGFwcGwpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDcKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBhbW91bnQ6IDEwMF8wMDAsIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIgfSwKCS8vICAgICAgICAgewoJLy8gICAgICAgICAgIG5hbWU6ICdiYXInLAoJLy8gICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQoMTMzNyksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogWzFdLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgXQoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBzaGlmdCgpdm9pZAoqYWJpX3JvdXRlX3NoaWZ0OgoJLy8gZXhlY3V0ZSBzaGlmdCgpdm9pZAoJY2FsbHN1YiBzaGlmdAoJaW50IDEKCXJldHVybgoKLy8gc2hpZnQoKTogdm9pZApzaGlmdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTE5CgkvLyBhc3NlcnQoMSA8PCAyID09PSA0KQoJaW50IDEKCWludCAyCglzaGwKCWludCA0Cgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMjAKCS8vIGFzc2VydCg0ID4+IDEgPT09IDIpCglpbnQgNAoJaW50IDEKCXNocgoJaW50IDIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gZnJvbUJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZnJvbUJ5dGVzOgoJLy8gZXhlY3V0ZSBmcm9tQnl0ZXMoKXZvaWQKCWNhbGxzdWIgZnJvbUJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQnl0ZXMoKTogdm9pZApmcm9tQnl0ZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KEFkZHJlc3MuZnJvbUJ5dGVzKCdhYmMnKS5taW5CYWxhbmNlKQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBmcm9tVWludDY0KCl2b2lkCiphYmlfcm91dGVfZnJvbVVpbnQ2NDoKCS8vIGV4ZWN1dGUgZnJvbVVpbnQ2NCgpdm9pZAoJY2FsbHN1YiBmcm9tVWludDY0CglpbnQgMQoJcmV0dXJuCgovLyBmcm9tVWludDY0KCk6IHZvaWQKZnJvbVVpbnQ2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI4CgkvLyBsb2coQXBwSUQuZnJvbVVpbnQ2NCgxMjMpLmNyZWF0b3IpCglpbnQgMTIzCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI5CgkvLyBsb2coQXNzZXRJRC5mcm9tVWludDY0KDEyMykuY3JlYXRvcikKCWludCAxMjMKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWxvZwoJcmV0c3ViCgovLyBiemVyb0Z1bmN0aW9uKCl2b2lkCiphYmlfcm91dGVfYnplcm9GdW5jdGlvbjoKCS8vIGV4ZWN1dGUgYnplcm9GdW5jdGlvbigpdm9pZAoJY2FsbHN1YiBiemVyb0Z1bmN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBiemVyb0Z1bmN0aW9uKCk6IHZvaWQKYnplcm9GdW5jdGlvbjoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNAoJLy8geDogYnl0ZXMgPSBiemVybygyKQoJYnl0ZSAweDAwMDAKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM1CgkvLyB5OiBieXRlcyA9IGJ6ZXJvKG4pCglpbnQgMQoJYnplcm8KCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM2CgkvLyB6OiBbdWludDY0LCB1aW50PDg+XSA9IGJ6ZXJvPFt1aW50NjQsIHVpbnQ8OD5dPigpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDIgLy8gejogW3VpbnQ2NCwgdWludDw4Pl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNwoJLy8gYXNzZXJ0KGxlbih4ICsgeSArIHopID09PSAxMikKCWJ5dGUgMHgwMDAwIC8vIHg6IGJ5dGVzCglmcmFtZV9kaWcgMSAvLyB5OiBieXRlcwoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwIC8vIHo6IFt1aW50NjQsIHVpbnQ8OD5dCgljb25jYXQKCWxlbgoJaW50IDEyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGV2ZW50cygpdm9pZAoqYWJpX3JvdXRlX2V2ZW50czoKCS8vIGV4ZWN1dGUgZXZlbnRzKCl2b2lkCgljYWxsc3ViIGV2ZW50cwoJaW50IDEKCXJldHVybgoKLy8gZXZlbnRzKCk6IHZvaWQKZXZlbnRzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTIKCS8vIHRoaXMubXlFdmVudC5sb2coeyBhcHA6IHRoaXMuYXBwLCBudW06IDEgfSkKCWJ5dGUgMHg4NzUyODE5NiAvLyBteUV2ZW50KHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY29uY2F0Cgljb25jYXQKCWxvZwoJcmV0c3ViCgovLyBsZXRPcHRpbWl6YXRpb24odWludDY0W10pdWludDY0W10KKmFiaV9yb3V0ZV9sZXRPcHRpbWl6YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgbGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdCgljYWxsc3ViIGxldE9wdGltaXphdGlvbgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbGV0T3B0aW1pemF0aW9uKGE6IHVpbnQ2NFtdKTogdWludDY0W10KbGV0T3B0aW1pemF0aW9uOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTYKCS8vIGFzc2VydChhWzBdKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTU4CgkvLyBiID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglmcmFtZV9idXJ5IC0xIC8vIGI6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglyZXRzdWIKCi8vIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcygpdm9pZAoqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllczoKCS8vIGV4ZWN1dGUgc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCl2b2lkCgljYWxsc3ViIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCk6IHZvaWQKc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IER1bW15Q29udHJhY3QuYXBwcm92YWxQcm9ncmFtKCksCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogRHVtbXlDb250cmFjdC5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiBEdW1teUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NQoJLy8gb25Db21wbGV0aW9uOiBPbkNvbXBsZXRpb24uTm9PcAoJaW50IDAgLy8gTm9PcAoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDakVZRklFR0N6RVpDSTBNQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUFBQUFBSUVCUTRBRXVFUjdOallhQUk0Qi8vQUEKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjcKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjgKCS8vIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UKCWludCAwCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjkKCS8vIGxvY2FsTnVtVWludDogRHVtbXlDb250cmFjdC5zY2hlbWEubG9jYWwubnVtVWludAoJaW50IDAKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogRHVtbXlDb250cmFjdC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZQoJaW50IDAKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzEKCS8vIGdsb2JhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMAoJaXR4bl9maWVsZCBHbG9iYWxOdW1VaW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBudW1iZXJUb1N0cmluZygpdm9pZAoqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nOgoJLy8gZXhlY3V0ZSBudW1iZXJUb1N0cmluZygpdm9pZAoJY2FsbHN1YiBudW1iZXJUb1N0cmluZwoJaW50IDEKCXJldHVybgoKLy8gbnVtYmVyVG9TdHJpbmcoKTogdm9pZApudW1iZXJUb1N0cmluZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTc4CgkvLyBhc3NlcnQobi50b1N0cmluZygpID09PSBzKQoJaW50IDEKCWNhbGxzdWIgKml0b2EKCWJ5dGUgIjEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG1ldGhvZE9uUGFyZW5zKCl2b2lkCiphYmlfcm91dGVfbWV0aG9kT25QYXJlbnM6CgkvLyBleGVjdXRlIG1ldGhvZE9uUGFyZW5zKCl2b2lkCgljYWxsc3ViIG1ldGhvZE9uUGFyZW5zCglpbnQgMQoJcmV0dXJuCgovLyBtZXRob2RPblBhcmVucygpOiB2b2lkCm1ldGhvZE9uUGFyZW5zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODIKCS8vIGFzc2VydCgoMSArIDIpLnRvU3RyaW5nKCkgPT09ICczJykKCWludCAzCgljYWxsc3ViICppdG9hCglieXRlIDB4MzMgLy8gIjMiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1N1YnN0cmluZygpdm9pZAoqYWJpX3JvdXRlX3N0cmluZ1N1YnN0cmluZzoKCS8vIGV4ZWN1dGUgc3RyaW5nU3Vic3RyaW5nKCl2b2lkCgljYWxsc3ViIHN0cmluZ1N1YnN0cmluZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nU3Vic3RyaW5nKCk6IHZvaWQKc3RyaW5nU3Vic3RyaW5nOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODcKCS8vIGFzc2VydChzLnN1YnN0cmluZygxLCAzKSA9PT0gJ2JjJykKCWJ5dGUgImFiY2RlZiIKCXN1YnN0cmluZyAxIDMKCWJ5dGUgMHg2MjYzIC8vICJiYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gaWRQcm9wZXJ0eSgpdm9pZAoqYWJpX3JvdXRlX2lkUHJvcGVydHk6CgkvLyBleGVjdXRlIGlkUHJvcGVydHkoKXZvaWQKCWNhbGxzdWIgaWRQcm9wZXJ0eQoJaW50IDEKCXJldHVybgoKLy8gaWRQcm9wZXJ0eSgpOiB2b2lkCmlkUHJvcGVydHk6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTEKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTkyCgkvLyBhc3NlcnQoQXBwSUQuZnJvbVVpbnQ2NChhcHAuaWQpID09PSBhcHApCglpbnQgMCAvLyBhcHA6IHVpbnQ2NAoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTQKCS8vIGFzYSA9IEFzc2V0SUQuemVyb0luZGV4CglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGFzYTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTUKCS8vIGFzc2VydChBc3NldElELmZyb21VaW50NjQoYXNhLmlkKSA9PT0gYXNhKQoJaW50IDAgLy8gYXNhOiB1aW50NjQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBzY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX3NjcmF0Y2hTbG90OgoJLy8gZXhlY3V0ZSBzY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBzY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gc2NyYXRjaFNsb3QoKTogdm9pZApzY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTk5CgkvLyB0aGlzLnNjcmF0Y2gudmFsdWUgPSAxMzM3CglpbnQgMTMzNwoJc3RvcmUgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjAwCgkvLyBhc3NlcnQodGhpcy5zY3JhdGNoLnZhbHVlID09PSAxMzM3KQoJbG9hZCAwCglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlY2RzYSgpdm9pZAoqYWJpX3JvdXRlX2VjZHNhOgoJLy8gZXhlY3V0ZSBlY2RzYSgpdm9pZAoJY2FsbHN1YiBlY2RzYQoJaW50IDEKCXJldHVybgoKLy8gZWNkc2EoKTogdm9pZAplY2RzYToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNAoJLy8gZWNkc2FWZXJpZnkoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZHVwbiA0CgllY2RzYV92ZXJpZnkgU2VjcDI1NmsxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDUKCS8vIGQgPSBlY2RzYVBrRGVjb21wcmVzcygnU2VjcDI1NmsxJywgJycgYXMgYnl0ZXM8MzM+KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZWNkc2FfcGtfZGVjb21wcmVzcyBTZWNwMjU2azEKCWZyYW1lX2J1cnkgMCAvLyBkIHkgY29tcG9uZW50OiBieXRlW10KCWZyYW1lX2J1cnkgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNgoJLy8gbG9nKGQueSkKCWZyYW1lX2RpZyAwIC8vIGQgeSBjb21wb25lbnQ6IGJ5dGVbXQoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDcKCS8vIGxvZyhkLngpCglmcmFtZV9kaWcgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjA5CgkvLyByID0gZWNkc2FQa1JlY292ZXIoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsIDEsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJaW50IDEKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIC8vICIiCglkdXAKCWVjZHNhX3BrX3JlY292ZXIgU2VjcDI1NmsxCglmcmFtZV9idXJ5IDIgLy8gciB5IGNvbXBvbmVudDogYnl0ZVtdCglmcmFtZV9idXJ5IDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTAKCS8vIGxvZyhyLnkpCglmcmFtZV9kaWcgMiAvLyByIHkgY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjExCgkvLyBsb2coci54KQoJZnJhbWVfZGlnIDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gdmVyaWZ5VHhuVHlwZXMoKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5UeXBlczoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuVHlwZXMoKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4blR5cGVzKCk6IHZvaWQKdmVyaWZ5VHhuVHlwZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIxNQoJLy8gdmVyaWZ5UGF5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgcGF5CglpbnQgMAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoicGF5In0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWludCAwCglndHhucyBBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTkKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG5Hcm91cFswXSwgewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogewoJLy8gICAgICAgICAwOiAnZm9vJywKCS8vICAgICAgICAgMTogewoJLy8gICAgICAgICAgIGluY2x1ZGVkSW46IFsnYmFyJywgJ2JheiddLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGwKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGFwcGwKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoiYXBwbCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25JRAoJaW50IDAKCWd0eG5zIEFwcGxpY2F0aW9uSUQKCWludCAwCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoiYXBwbGljYXRpb25JRCIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCgwKSJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzIDAKCWludCAwCglndHhucyBBcHBsaWNhdGlvbkFyZ3MgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImFwcGxpY2F0aW9uQXJncyIsImluZGV4IjoiMCIsImV4cGVjdGVkIjoiJ2ZvbycifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uQXJncyAxCglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCT09CglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxN2EgLy8gImJheiIKCT09Cgl8fAoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4bkdyb3VwWzBdIn0sImZpZWxkIjoiYXBwbGljYXRpb25BcmdzIDEiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbJ2JhcicsICdiYXonXSJ9Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIyOQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXhmZXIKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoidHlwZUVudW0iLCJleHBlY3RlZCI6ImF4ZmVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldFJlY2VpdmVyCglpbnQgMAoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjMzCgkvLyB2ZXJpZnlBc3NldENvbmZpZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBjb25maWdBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KDApLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYWNmZwoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYWNmZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJhY2ZnIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBjb25maWdBc3NldAoJaW50IDAKCWd0eG5zIENvbmZpZ0Fzc2V0CglpbnQgMAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImNvbmZpZ0Fzc2V0IiwiZXhwZWN0ZWQiOiJBc3NldElELmZyb21VaW50NjQoMCkifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMzcKCS8vIHZlcmlmeUtleVJlZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICB2b3RlRmlyc3Q6IDEzMzcsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBrZXlyZWcKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGtleXJlZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJrZXlyZWcifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IHZvdGVGaXJzdAoJaW50IDAKCWd0eG5zIFZvdGVGaXJzdAoJaW50IDEzMzcKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ2b3RlRmlyc3QiLCJleHBlY3RlZCI6IjEzMzcifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1BsdXNFcXVhbHMoKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdQbHVzRXF1YWxzOgoJLy8gZXhlY3V0ZSBzdHJpbmdQbHVzRXF1YWxzKCl2b2lkCgljYWxsc3ViIHN0cmluZ1BsdXNFcXVhbHMKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1BsdXNFcXVhbHMoKTogdm9pZApzdHJpbmdQbHVzRXF1YWxzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI0MwoJLy8gcyA9ICdmb28nCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDQKCS8vIHMgKz0gJ2JhcicKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDUKCS8vIGFzc2VydChzID09PSAnZm9vYmFyJykKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDY2NmY2ZjYyNjE3MiAvLyAiZm9vYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoJY2FsbHN1YiBpbXBvcnRlZFByb2dyYW0KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaW1wb3J0ZWRQcm9ncmFtKCk6IGJ5dGVzCmltcG9ydGVkUHJvZ3JhbToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjQ5CgkvLyByZXR1cm4gSWZUZXN0LmFwcHJvdmFsUHJvZ3JhbSgpOwoJYnl0ZSBiNjQgQ2lBRUFRQUNJQ1lKQkJVZmZIVUNhV1lFWld4elpRTmxibVFBQTJadmJ3ZGxiSE5sSUdsbUNXVnNjMlVnYVdZZ01RbGxiSE5sSUdsbUlESXhHQlNCQmdzeEdRaU5EQU1rQUFBQUFBQUFBQUFBQUFNV0FBQUFBQUFBQUFBQUFBQW9OaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0JBWXYvUVFBQ0tZa3JpU2cyR2dGSkZTSVNSQ05UaUFBTVNSVVdWd1lDVEZCUXNDSkRpZ0VCaS85QkFBVXBpVUlBQWlxSmlTZzJHZ0pKRlNJU1JDTlROaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0NBWXYvUVFBRktZbENBQWlML2tFQUF5Y0dpU3VKS0RZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdJQmkvOUJBQVVwaVVJQURZditRUUFHSndhSlFnQUNLb21KS0RZYUEwa1ZJaEpFSTFNMkdnSkpGU0lTUkNOVE5ob0JTUlVpRWtRalU0Z0FERWtWRmxjR0FreFFVTEFpUTRvREFZdi9RUUFGS1lsQ0FCT0wva0VBQmljSGlVSUFDSXY5UVFBREp3aUpLNGtvTmhvRFNSVWlFa1FqVXpZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdNQmkvOUJBQVVwaVVJQUdJditRUUFHSndlSlFnQU5pLzFCQUFZbkNJbENBQUlxaVlrb05ob0NTUlVpRWtRalV6WWFBVWtWSWhKRUkxT0lBQXhKRlJaWEJnSk1VRkN3SWtPS0FnR0wvMEVBRm92K1FRQU1nQWx1WlhOMFpXUWdhV2FKS1lsQ0FBSXFpWWtvTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9CQVl2L1FRQUZLWWxDQUFJcWlZa29OaG9DU1JVaUVrUWpVellhQVVrVkloSkVJMU9JQUFVV1VMQWlRNG9DQVl2L1FRQUVJa0lBQzR2K1FRQUVKRUlBQW9FRGlTZzJHZ0ZYQWdDSUFBVVdVTEFpUTRvQkFZdi9Kd1NwUVFBQ0lva2tpU2cyR2dGWEFnQ0lBQVVXVUxBaVE0b0JBWXYvSndTcFFRQUVJa0lBQVNTSk5ob0JTUlVrRWtRWGlBQUNJa09LQVFDTC95Y0VxVUVBQXljRnNJazJHZ0pKRlNRU1JCYzJHZ0ZKRlNRU1JCZUlBQUlpUTRvQ0FJdi9pLzRPUVFBREp3V3dpVFlhQWtrVkpSSkVOaG9CU1JVbEVrU0lBQUlpUTRvQ0FJdi9pLzZtUVFBREp3V3dpU2cyR2dKSkZTSVNSQ05UTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9DQVl2L1FRQVppLzVCQUEyQUIyRWdZVzVrSUdLSlFnQUVnQUZoaVVJQUZvditRUUFIZ0FGaWlVSUFDb0FIYm1WcGRHaGxjb21KSWtPQUJMaEVlelkyR2dDT0FmL3hBSUFFUTI3QndvQUVISG9OWG9BRVhnKzJ6NEFFWGh4c1VJQUVXTkM2a29BRVhTOVBBb0FFaEZjcDJZQUVqK2RzcUlBRUdqeDRlSUFFZEx6SWFJQUVRaEw1QllBRWxkMnV2NEFFTVVlNFpvQUVRb2wvWVlBRVUwdml0ellhQUk0UC9HRDhodnl3L092OUt2MTYvYzcrRS80OS9uTCtrUDZ3L3MzKzgvOFhBQT09CglyZXRzdWIKCi8vIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCiphYmlfcm91dGVfY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXI6CgkvLyBleGVjdXRlIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCgljYWxsc3ViIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsUHJpdmF0ZURlZmluZWRMYXRlcigpOiB2b2lkCmNhbGxQcml2YXRlRGVmaW5lZExhdGVyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNTMKCS8vIGxvZyh0aGlzLnByaXZhdGVNZXRob2QoJ2hlbGxvJykpCglieXRlIDB4Njg2NTZjNmM2ZiAvLyAiaGVsbG8iCgljYWxsc3ViIHByaXZhdGVNZXRob2QKCWxvZwoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKG1zZzogc3RyaW5nKTogc3RyaW5nCnByaXZhdGVNZXRob2Q6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI1NwoJLy8gcmV0dXJuIG1zZzsKCWZyYW1lX2RpZyAtMSAvLyBtc2c6IHN0cmluZwoJcmV0c3ViCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmludGVyYWxQdWJsaWNNZXRob2Q6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI2MQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QoKXZvaWQKKmFiaV9yb3V0ZV9jYWxsSW50ZXJuYWxQdWJsaWNNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZAoJY2FsbHN1YiBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QKCWludCAxCglyZXR1cm4KCi8vIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpOiB2b2lkCmNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjY1CgkvLyBhc3NlcnQodGhpcy5pbnRlcmFsUHVibGljTWV0aG9kKDEsIDIpID09PSAzKQoJaW50IDIKCWludCAxCgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWludCAzCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFwcExvYWRTY3JhdGNoKCl2b2lkCiphYmlfcm91dGVfYXBwTG9hZFNjcmF0Y2g6CgkvLyBleGVjdXRlIGFwcExvYWRTY3JhdGNoKCl2b2lkCgljYWxsc3ViIGFwcExvYWRTY3JhdGNoCglpbnQgMQoJcmV0dXJuCgovLyBhcHBMb2FkU2NyYXRjaCgpOiB2b2lkCmFwcExvYWRTY3JhdGNoOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNjkKCS8vIGxvZyh0aGlzLnR4bkdyb3VwWzFdLmxvYWRTY3JhdGNoKDIpIGFzIGJ5dGVzKQoJZ2xvYWQgMSAyCglsb2cKCXJldHN1YgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoqYWJpX3JvdXRlX3VpbnROV2l0aFVuZGVyc2NvcmU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoJY2FsbHN1YiB1aW50TldpdGhVbmRlcnNjb3JlCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50TldpdGhVbmRlcnNjb3JlIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpOiB1aW50MjU2CnVpbnROV2l0aFVuZGVyc2NvcmU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3MwoJLy8gcmV0dXJuIDx1aW50MjU2PjEyM180NTY7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZTI0MAoJcmV0c3ViCgovLyBvcFVwKCl2b2lkCiphYmlfcm91dGVfb3BVcDoKCS8vIGV4ZWN1dGUgb3BVcCgpdm9pZAoJY2FsbHN1YiBvcFVwCglpbnQgMQoJcmV0dXJuCgovLyBvcFVwKCk6IHZvaWQKb3BVcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3OAoJLy8gZm9yIChsZXQgaSA9IDE7IGkgPCA3NTsgaSArPSAxKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpIDwgNzUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDc1Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzkKCS8vIGFzc2VydChpKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0Cglhc3NlcnQKCipmb3JfMF9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJcmV0c3ViCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpc3RyaW5nCiphYmlfcm91dGVfcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQoKXN0cmluZwoJY2FsbHN1YiByZXR1cm5WYWx1ZU9uQXNzaWdubWVudAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpOiBzdHJpbmcKcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjg0CgkvLyBtZXNzYWdlID0gJ2hpJwoJYnl0ZSAweDY4NjkgLy8gImhpIgoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vICppZjBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLmFwcC5hZGRyZXNzCgl0eG4gU2VuZGVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NwoJLy8gbWVzc2FnZSA9ICdpbiBibG9jaycKCWJ5dGUgMHg2OTZlMjA2MjZjNmY2MzZiIC8vICJpbiBibG9jayIKCWZyYW1lX2J1cnkgMCAvLyBtZXNzYWdlOiBieXRlW10KCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTAKCS8vIHJldHVybiAobWVzc2FnZSA9ICdieWUnKTsKCWJ5dGUgMHg2Mjc5NjUgLy8gImJ5ZSIKCWR1cAoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudCgpOiB1aW50NjQKcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTYKCS8vIHJldHVybiAoYVswXSA9IDQpOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJaW50IDAKCWludCA0CglkdXAKCXN0b3JlIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCk6IHVpbnQ2NApyZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwMAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gMQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJaW50IDEKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMDIKCS8vIHJldHVybiAodGhpcy5nS2V5LnZhbHVlID0gMik7CglieXRlIDB4Njc0YjY1NzkgLy8gImdLZXkiCglpbnQgMgoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJYXBwX2dsb2JhbF9wdXQKCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCXJldHN1YgoKLy8gcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSgpOiB1aW50NjQKcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzA2CgkvLyBhID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwOAoJLy8gcmV0dXJuIChhICs9IDIpOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0CglpbnQgMgoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NAoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTQKCS8vIHJldHVybiAoYVswXSArPSA0KTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWludCAwCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDAgOAoJYnRvaQoJaW50IDQKCSsKCWR1cAoJc3RvcmUgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzE4CgkvLyB0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZSA9IFsxLCAyLCAzXQoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyMAoJLy8gcmV0dXJuICh0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZVswXSArPSA0KTsKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgMCA4CglidG9pCglpbnQgNAoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJaXRvYgoJcmVwbGFjZTMKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0Cglsb2FkIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglyZXRzdWIKCi8vIGNvbnN0cygpdm9pZAoqYWJpX3JvdXRlX2NvbnN0czoKCS8vIGV4ZWN1dGUgY29uc3RzKCl2b2lkCgljYWxsc3ViIGNvbnN0cwoJaW50IDEKCXJldHVybgoKLy8gY29uc3RzKCk6IHZvaWQKY29uc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMjQKCS8vIGFzc2VydChTVFJJTkdfQ09OU1QgPT09ICdmb28nKQoJYnl0ZSAiZm9vIgoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzI1CgkvLyBhc3NlcnQoTlVNX0NPTlNUID09PSAxMjMpCglpbnQgMTIzCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyNgoJLy8gYXNzZXJ0KE5FU1RFRF9DT05TVCA9PT0gMTIzKQoJaW50IDEyMwoJZHVwCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCiphYmlfcm91dGVfYXNzZXJ0V2l0aE1lc3NhZ2U6CgkvLyBleGVjdXRlIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCgljYWxsc3ViIGFzc2VydFdpdGhNZXNzYWdlCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRXaXRoTWVzc2FnZSgpOiB2b2lkCmFzc2VydFdpdGhNZXNzYWdlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzAKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gb3Bjb2RlQWxpYXNlcygpdm9pZAoqYWJpX3JvdXRlX29wY29kZUFsaWFzZXM6CgkvLyBleGVjdXRlIG9wY29kZUFsaWFzZXMoKXZvaWQKCWNhbGxzdWIgb3Bjb2RlQWxpYXNlcwoJaW50IDEKCXJldHVybgoKLy8gb3Bjb2RlQWxpYXNlcygpOiB2b2lkCm9wY29kZUFsaWFzZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNAoJLy8gZXh0cmFjdFVpbnQxNihiemVybyg2NCksIDApCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWludCAwCglleHRyYWN0X3VpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzM1CgkvLyBleHRyYWN0VWludDMyKGJ6ZXJvKDY0KSwgMCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJaW50IDAKCWV4dHJhY3RfdWludDMyCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzYKCS8vIGV4dHJhY3RVaW50NjQoYnplcm8oNjQpLCAwKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglpbnQgMAoJZXh0cmFjdF91aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNwoJLy8gZWQyNTUxOVZlcmlmeUJhcmUoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeV9iYXJlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzgKCS8vIGVkMjU1MTlWZXJpZnkoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeQoJcmV0c3ViCgovLyB2cmZWZXJpZnlPcCgpdm9pZAoqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wOgoJLy8gZXhlY3V0ZSB2cmZWZXJpZnlPcCgpdm9pZAoJY2FsbHN1YiB2cmZWZXJpZnlPcAoJaW50IDEKCXJldHVybgoKLy8gdnJmVmVyaWZ5T3AoKTogdm9pZAp2cmZWZXJpZnlPcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0MgoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQzCgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDQKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ2CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM1MgoJLy8gciA9IHZyZlZlZmlyeSgnVnJmQWxnb3JhbmQnLCBiemVybygzMikgYXMgYnl0ZXMsIGJ6ZXJvKDgwKSwgYnplcm8oMzIpKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJdnJmX3ZlcmlmeSBWcmZBbGdvcmFuZAoJZnJhbWVfYnVyeSAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCWZyYW1lX2J1cnkgMSAvLyByIG91dHB1dDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTMKCS8vIGFzc2VydCghci52ZXJpZmllZCkKCWZyYW1lX2RpZyAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCSEKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU0CgkvLyBsb2coci5vdXRwdXQpCglmcmFtZV9kaWcgMSAvLyByIG91dHB1dDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gZWNNYXRoKCl2b2lkCiphYmlfcm91dGVfZWNNYXRoOgoJLy8gZXhlY3V0ZSBlY01hdGgoKXZvaWQKCWNhbGxzdWIgZWNNYXRoCglpbnQgMQoJcmV0dXJuCgovLyBlY01hdGgoKTogdm9pZAplY01hdGg6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU4CgkvLyBlY1NjYWxhck11bCgnQk4yNTRnMScsICcnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWR1cAoJZWNfc2NhbGFyX211bCBCTjI1NGcxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTkKCS8vIGVjUGFpcmluZ0NoZWNrKCdCTjI1NGcxJywgJycsICcnKQoJYnl0ZSAweCAvLyAiIgoJZHVwCgllY19wYWlyaW5nX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MAoJLy8gc2NhbGFyczogYnl0ZXMzMltdID0gW2J6ZXJvKDMyKSwgYnplcm8oMzIpXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDAgLy8gc2NhbGFyczogYnl0ZXMzMltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNjEKCS8vIGVjTXVsdGlTY2FsYXJNdWwoJ0JOMjU0ZzEnLCAnJywgc2NhbGFycykKCWJ5dGUgMHggLy8gIiIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyBzY2FsYXJzOiBieXRlczMyW10KCWVjX211bHRpX3NjYWxhcl9tdWwgQk4yNTRnMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzYyCgkvLyBlY1N1Ymdyb3VwQ2hlY2soJ0JOMjU0ZzEnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWVjX3N1Ymdyb3VwX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MwoJLy8gZWNNYXBUbygnQk4yNTRnMScsICcnKQoJYnl0ZSAweCAvLyAiIgoJZWNfbWFwX3RvIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2NAoJLy8gZWNBZGQoJ0JOMjU0ZzEnLCAnJywgJycpCglieXRlIDB4IC8vICIiCglkdXAKCWVjX2FkZCBCTjI1NGcxCglyZXRzdWIKCi8vIGdpdHhuKCl2b2lkCiphYmlfcm91dGVfZ2l0eG46CgkvLyBleGVjdXRlIGdpdHhuKCl2b2lkCgljYWxsc3ViIGdpdHhuCglpbnQgMQoJcmV0dXJuCgovLyBnaXR4bigpOiB2b2lkCmdpdHhuOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2OAoJLy8gbG9nKHRoaXMubGFzdElubmVyR3JvdXBbMF0uc2VuZGVyKQoJZ2l0eG4gMCBTZW5kZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcwCgkvLyBhbm90aGVyVHhuID0gdGhpcy5sYXN0SW5uZXJHcm91cFsxXQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhbm90aGVyVHhuOiBnaXR4bgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcyCgkvLyBsb2coYW5vdGhlclR4bi5zZW5kZXIpCglnaXR4biAxIFNlbmRlcgoJbG9nCglyZXRzdWIKCi8vIGdldFNldEJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZ2V0U2V0Qnl0ZXM6CgkvLyBleGVjdXRlIGdldFNldEJ5dGVzKCl2b2lkCgljYWxsc3ViIGdldFNldEJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTZXRCeXRlcygpOiB2b2lkCmdldFNldEJ5dGVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzYKCS8vIGxvZyhzZXRiaXQoJ2ZvbycsIDAsIHRydWUpKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRiaXQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc3CgkvLyBnZXRiaXQoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Yml0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzgKCS8vIGdldGJ5dGUoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Ynl0ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc5CgkvLyBzZXRieXRlKCdmb28nLCAwLCAxKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRieXRlCglyZXRzdWIKCi8vIGdldFNldFVpbnQ2NCgpdm9pZAoqYWJpX3JvdXRlX2dldFNldFVpbnQ2NDoKCS8vIGV4ZWN1dGUgZ2V0U2V0VWludDY0KCl2b2lkCgljYWxsc3ViIGdldFNldFVpbnQ2NAoJaW50IDEKCXJldHVybgoKLy8gZ2V0U2V0VWludDY0KCk6IHZvaWQKZ2V0U2V0VWludDY0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozODMKCS8vIGFzc2VydChzZXRiaXQoMTIzLCAwLCB0cnVlKSkKCWludCAxMjMKCWludCAwCglpbnQgMQoJc2V0Yml0Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4NAoJLy8gZ2V0Yml0KDEyMywgMCkKCWludCAxMjMKCWludCAwCglnZXRiaXQKCXJldHN1YgoKLy8gYmxvY2tPcCgpdm9pZAoqYWJpX3JvdXRlX2Jsb2NrT3A6CgkvLyBleGVjdXRlIGJsb2NrT3AoKXZvaWQKCWNhbGxzdWIgYmxvY2tPcAoJaW50IDEKCXJldHVybgoKLy8gYmxvY2tPcCgpOiB2b2lkCmJsb2NrT3A6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4OAoJLy8gbG9nKGJsb2Nrc1tnbG9iYWxzLnJvdW5kIC0gMV0uc2VlZCkKCWdsb2JhbCBSb3VuZAoJaW50IDEKCS0KCWJsb2NrIEJsa1NlZWQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzg5CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50aW1lc3RhbXApCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtUaW1lc3RhbXAKCWFzc2VydAoJcmV0c3ViCgovLyBiNjQoKXZvaWQKKmFiaV9yb3V0ZV9iNjQ6CgkvLyBleGVjdXRlIGI2NCgpdm9pZAoJY2FsbHN1YiBiNjQKCWludCAxCglyZXR1cm4KCi8vIGI2NCgpOiB2b2lkCmI2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzkzCgkvLyBsb2coYmFzZTY0RGVjb2RlKCdTdGRFbmNvZGluZycsICcnKSkKCWJ5dGUgMHggLy8gIiIKCWJhc2U2NF9kZWNvZGUgU3RkRW5jb2RpbmcKCWxvZwoJcmV0c3ViCgovLyBqc29uKCl2b2lkCiphYmlfcm91dGVfanNvbjoKCS8vIGV4ZWN1dGUganNvbigpdm9pZAoJY2FsbHN1YiBqc29uCglpbnQgMQoJcmV0dXJuCgovLyBqc29uKCk6IHZvaWQKanNvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk3CgkvLyBsb2coanNvblJlZignSlNPTk9iamVjdCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05PYmplY3QKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk4CgkvLyBsb2coanNvblJlZignSlNPTlN0cmluZycsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05TdHJpbmcKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk5CgkvLyBhc3NlcnQoanNvblJlZignSlNPTlVpbnQ2NCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05VaW50NjQKCWFzc2VydAoJcmV0c3ViCgovLyBiaXRsZW5PcCgpdm9pZAoqYWJpX3JvdXRlX2JpdGxlbk9wOgoJLy8gZXhlY3V0ZSBiaXRsZW5PcCgpdm9pZAoJY2FsbHN1YiBiaXRsZW5PcAoJaW50IDEKCXJldHVybgoKLy8gYml0bGVuT3AoKTogdm9pZApiaXRsZW5PcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDAzCgkvLyBiaXRsZW4oMTIzKQoJaW50IDEyMwoJYml0bGVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MDQKCS8vIGJpdGxlbignZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJpdGxlbgoJcmV0c3ViCgovLyBjb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfY29tcHV0ZWRDb25zdDoKCS8vIGV4ZWN1dGUgY29tcHV0ZWRDb25zdCgpdm9pZAoJY2FsbHN1YiBjb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBjb21wdXRlZENvbnN0KCk6IHZvaWQKY29tcHV0ZWRDb25zdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDA4CgkvLyBhc3NlcnQoQ09NUFVURURfQ09OU1QpCglpbnQgMjQ2Cglhc3NlcnQKCXJldHN1YgoKLy8gbXVsdGlDb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0OgoJLy8gZXhlY3V0ZSBtdWx0aUNvbXB1dGVkQ29uc3QoKXZvaWQKCWNhbGxzdWIgbXVsdGlDb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUNvbXB1dGVkQ29uc3QoKTogdm9pZAptdWx0aUNvbXB1dGVkQ29uc3Q6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxMgoJLy8gYXNzZXJ0KE1VVExJX0NPTVBVVEVEX0NPTlNUKQoJaW50IDMwMzgxCglhc3NlcnQKCXJldHN1YgoKLy8gcmVhZFNjaGVtYSgpdm9pZAoqYWJpX3JvdXRlX3JlYWRTY2hlbWE6CgkvLyBleGVjdXRlIHJlYWRTY2hlbWEoKXZvaWQKCWNhbGxzdWIgcmVhZFNjaGVtYQoJaW50IDEKCXJldHVybgoKLy8gcmVhZFNjaGVtYSgpOiB2b2lkCnJlYWRTY2hlbWE6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNgoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCA9PT0gMSkKCWludCAxCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNwoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtQnl0ZVNsaWNlID09PSAyKQoJaW50IDIKCWR1cAoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDE4CgkvLyBhc3NlcnQoU2NoZW1hQ29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQgPT09IDMpCglpbnQgMwoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MTkKCS8vIGFzc2VydChTY2hlbWFDb250cmFjdC5zY2hlbWEubG9jYWwubnVtQnl0ZVNsaWNlID09PSA0KQoJaW50IDQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBjb21wYXJpc29uT3IoKWJvb2wKKmFiaV9yb3V0ZV9jb21wYXJpc29uT3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29tcGFyaXNvbk9yKClib29sCgljYWxsc3ViIGNvbXBhcmlzb25PcgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb21wYXJpc29uT3IoKTogYm9vbGVhbgpjb21wYXJpc29uT3I6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQyMwoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gZ2xvYmFscy56ZXJvQWRkcmVzcyB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IGdsb2JhbHMuemVyb0FkZHJlc3M7Cgl0eG4gU2VuZGVyCglnbG9iYWwgWmVyb0FkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCXx8Cgoqc2tpcF9vcjA6CglyZXRzdWIKCi8vIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKKmFiaV9yb3V0ZV90eG5BcmdzTWV0aG9kOgoJLy8gX3BheTE6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKF9wYXkxKSBmb3IgdHhuQXJnc01ldGhvZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKCWNhbGxzdWIgdHhuQXJnc01ldGhvZAoJaW50IDEKCXJldHVybgoKLy8gdHhuQXJnc01ldGhvZChfcGF5MTogUGF5VHhuKTogdm9pZAp0eG5BcmdzTWV0aG9kOgoJcHJvdG8gMSAwCglyZXRzdWIKCi8vIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCiphYmlfcm91dGVfY2FsbFR4bkFyZ3NNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCgljYWxsc3ViIGNhbGxUeG5BcmdzTWV0aG9kCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsVHhuQXJnc01ldGhvZCgpOiB2b2lkCmNhbGxUeG5BcmdzTWV0aG9kOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzAKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBHZW5lcmFsVGVzdC5wcm90b3R5cGUudHhuQXJnc01ldGhvZD4oewoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsIGFtb3VudDogMCB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDMxCgkvLyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQzMQoJLy8gYW1vdW50OiAwCglpbnQgMAoJaXR4bl9maWVsZCBBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAidHhuQXJnc01ldGhvZChwYXkpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzEKCS8vIG1ldGhvZEFyZ3M6IFt7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IDAgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gc3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkCiphYmlfcm91dGVfc3RhdGljVmFsdWVMZW46CgkvLyB4OiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBzdGF0aWNWYWx1ZUxlbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNWYWx1ZUxlbih1aW50MjU2KXZvaWQKCWNhbGxzdWIgc3RhdGljVmFsdWVMZW4KCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1ZhbHVlTGVuKHg6IHVpbnQyNTYpOiB2b2lkCnN0YXRpY1ZhbHVlTGVuOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzYKCS8vIGFzc2VydChsZW4oeCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBzdGF0aWNUeXBlTGVuKCl2b2lkCiphYmlfcm91dGVfc3RhdGljVHlwZUxlbjoKCS8vIGV4ZWN1dGUgc3RhdGljVHlwZUxlbigpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlTGVuCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNUeXBlTGVuKCk6IHZvaWQKc3RhdGljVHlwZUxlbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQwCgkvLyBhc3NlcnQobGVuPHVpbnQyNTY+KCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQKKmFiaV9yb3V0ZV9keW5hbWljU2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGR5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBkeW5hbWljU2NyYXRjaFNsb3QKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNTY3JhdGNoU2xvdCgpOiB2b2lkCmR5bmFtaWNTY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQ0CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDEpLnZhbHVlID0gMTMzNwoJaW50IDEKCWludCAxMzM3CglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ0NQoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMSkudmFsdWUgPT09IDEzMzcpCglpbnQgMQoJbG9hZHMKCWludCAxMzM3Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCiphYmlfcm91dGVfaW5jcmVtZW50U2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudFNjcmF0Y2hTbG90CglpbnQgMQoJcmV0dXJuCgovLyBpbmNyZW1lbnRTY3JhdGNoU2xvdCgpOiB2b2lkCmluY3JlbWVudFNjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NDkKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSA9IDEzMzcKCWludCAxMzM3CglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTAKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSArPSAxCglsb2FkIDAKCWludCAxCgkrCglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTEKCS8vIGFzc2VydCh0aGlzLnNjcmF0Y2gudmFsdWUgPT09IDEzMzgpCglsb2FkIDAKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX2luY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdDoKCS8vIGV4ZWN1dGUgaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCk6IHZvaWQKaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTUKCS8vIHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPSAxMzM3CglpbnQgMgoJaW50IDEzMzcKCXN0b3JlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDU2CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDIpLnZhbHVlICs9IDEKCWludCAyCglsb2FkcwoJaW50IDEKCSsKCWludCAyCglzd2FwCglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ1NwoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPT09IDEzMzgpCglpbnQgMgoJbG9hZHMKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGZyb21BZGRyZXNzKCl2b2lkCiphYmlfcm91dGVfZnJvbUFkZHJlc3M6CgkvLyBleGVjdXRlIGZyb21BZGRyZXNzKCl2b2lkCgljYWxsc3ViIGZyb21BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQWRkcmVzcygpOiB2b2lkCmZyb21BZGRyZXNzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2MQoJLy8gYSA9IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFZNUhGS1EnKQoJYWRkciBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWTVIRktRCglmcmFtZV9idXJ5IDAgLy8gYTogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDYyCgkvLyBhc3NlcnQoYSA9PT0gQWRkcmVzcy56ZXJvQWRkcmVzcykKCWZyYW1lX2RpZyAwIC8vIGE6IGFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlYXJseVJldHVybih1aW50NjQpdWludDY0CiphYmlfcm91dGVfZWFybHlSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZWFybHlSZXR1cm4odWludDY0KXVpbnQ2NAoJY2FsbHN1YiBlYXJseVJldHVybgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVhcmx5UmV0dXJuKGE6IHVpbnQ2NCk6IHVpbnQ2NAplYXJseVJldHVybjoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY2CgkvLyBhID09PSAxCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglpbnQgMQoJPT0KCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2NwoJLy8gcmV0dXJuIDI7CglpbnQgMgoJYiAqZWFybHlSZXR1cm4qcmV0dXJuCgoqaWYxX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY5CgkvLyBiID0gYSArIDEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIDAgLy8gYjogdWludDY0CgoqZWFybHlSZXR1cm4qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGFzc2V0TWV0aG9kQXJncygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJnczoKCS8vIGV4ZWN1dGUgYXNzZXRNZXRob2RBcmdzKCl2b2lkCgljYWxsc3ViIGFzc2V0TWV0aG9kQXJncwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRNZXRob2RBcmdzKCk6IHZvaWQKYXNzZXRNZXRob2RBcmdzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzQKCS8vIHNlbmRNZXRob2RDYWxsPFtBc3NldFJlZmVyZW5jZV0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbyhhc3NldCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ3NgoJLy8gbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0KCWludCAxCglpdHhuX2ZpZWxkIEFzc2V0cwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzOgoJLy8gZXhlY3V0ZSBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoJY2FsbHN1YiBtdWx0aXBsZVByb2dyYW1QYWdlcwoJaW50IDEKCXJldHVybgoKLy8gbXVsdGlwbGVQcm9ncmFtUGFnZXMoKTogdm9pZAptdWx0aXBsZVByb2dyYW1QYWdlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDg1CgkvLyBzZW5kQXBwQ2FsbCh7CgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0sCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogW3RoaXMucGFnZU9uZS52YWx1ZSwgdGhpcy5wYWdlVHdvLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBbdGhpcy5wYWdlT25lLnZhbHVlLCB0aGlzLnBhZ2VUd28udmFsdWVdCglieXRlIDB4NzA2MTY3NjU0ZjZlNjUgLy8gInBhZ2VPbmUiCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnBhZ2VPbmUudmFsdWUKCWFzc2VydAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW1QYWdlcwoJYnl0ZSAweDcwNjE2NzY1NTQ3NzZmIC8vICJwYWdlVHdvIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wYWdlVHdvLnZhbHVlCglhc3NlcnQKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NwoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0KCWJ5dGUgMHg3MDYxNjc2NTRmNmU2NSAvLyAicGFnZU9uZSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZU9uZS52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDYxNjc2NTU0Nzc2ZiAvLyAicGFnZVR3byIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZVR3by52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGFzc2VydENvbW1lbnQoKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRDb21tZW50OgoJLy8gZXhlY3V0ZSBhc3NlcnRDb21tZW50KCl2b2lkCgljYWxsc3ViIGFzc2VydENvbW1lbnQKCWludCAxCglyZXR1cm4KCi8vIGFzc2VydENvbW1lbnQoKTogdm9pZAphc3NlcnRDb21tZW50OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0OTIKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKKmFiaV9yb3V0ZV90aHJvd0Vycm9yTWVzc2FnZToKCS8vIGV4ZWN1dGUgdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKCWNhbGxzdWIgdGhyb3dFcnJvck1lc3NhZ2UKCWludCAxCglyZXR1cm4KCi8vIHRocm93RXJyb3JNZXNzYWdlKCk6IHZvaWQKdGhyb3dFcnJvck1lc3NhZ2U6Cglwcm90byAwIDAKCgkvLyB0aGlzIGlzIGFuIGVycm9yCgllcnIKCXJldHN1YgoKLy8gb3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vckxpdGVyYWxUeXBlOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvckxpdGVyYWxUeXBlKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvckxpdGVyYWxUeXBlCglpbnQgMQoJcmV0dXJuCgovLyBvckxpdGVyYWxUeXBlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApvckxpdGVyYWxUeXBlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAwCgkvLyBmb28gPSBhICYmIGIgPT09IDEgPyAyIDogMAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglpbnQgMQoJPT0KCSYmCgoqc2tpcF9hbmQwOgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMCAvLyBmb286IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAxCgkvLyBhc3NlcnQoZm9vKQoJZnJhbWVfZGlnIDAgLy8gZm9vOiB1aW50NjQKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAzCgkvLyBiYXIgPSBhICYmIGIgPT09IDAgPyAnMicgOiAnMCcKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJaW50IDAKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICp0ZXJuYXJ5MV9mYWxzZQoJYnl0ZSAweDMyIC8vICIyIgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglieXRlIDB4MzAgLy8gIjAiCgoqdGVybmFyeTFfZW5kOgoJZnJhbWVfYnVyeSAxIC8vIGJhcjogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDQKCS8vIGxvZyhiYXIpCglmcmFtZV9kaWcgMSAvLyBiYXI6IGJ5dGVbXQoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaSgpOiB2b2lkCm5vbkFiaToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDkKCS8vIGFzc2VydCh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aCkKCXR4biBOdW1BcHBBcmdzCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTExCgkvLyBpIDwgdGhpcy50eG4uYXBwbGljYXRpb25BcmdzIS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJdHhuIE51bUFwcEFyZ3MKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMgoJLy8gbG9nKHRoaXMudHhuLmFwcGxpY2F0aW9uQXJncyFbaV0pCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCXR4bmFzIEFwcGxpY2F0aW9uQXJncwoJbG9nCgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCXJldHN1YgoKLy8gbXVsdGlsaW5lRnVuY3Rpb25DYWxsKCl2b2lkCiphYmlfcm91dGVfbXVsdGlsaW5lRnVuY3Rpb25DYWxsOgoJLy8gZXhlY3V0ZSBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKXZvaWQKCWNhbGxzdWIgbXVsdGlsaW5lRnVuY3Rpb25DYWxsCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKTogdm9pZAptdWx0aWxpbmVGdW5jdGlvbkNhbGw6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MTcKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTE4CgkvLyBhZGRyID0gQWRkcmVzcy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglmcmFtZV9idXJ5IDEgLy8gYWRkcjogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTIwCgkvLyBhcHAubG9jYWxTdGF0ZSgKCS8vICAgICAgIGFkZHIsCgkvLyAgICAgICAna2V5JwoJLy8gICAgICkKCWZyYW1lX2RpZyAxIC8vIGFkZHI6IGFkZHJlc3MKCWludCAwIC8vIGFwcDogdWludDY0CglieXRlIDB4NmI2NTc5IC8vICJrZXkiCglhcHBfbG9jYWxfZ2V0X2V4CgoJLy8gbG9jYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IGFwcC5sb2NhbFN0YXRlKCBhZGRyLCAna2V5JyApCglhc3NlcnQKCXJldHN1YgoKLy8gYSgpdWludDY0CiphYmlfcm91dGVfYToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhKCl1aW50NjQKCWNhbGxzdWIgYQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGEoKTogdWludDY0CmE6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUyNwoJLy8gcmV0dXJuIDM7CglpbnQgMwoJcmV0c3ViCgovLyBiKCl1aW50NjQKKmFiaV9yb3V0ZV9iOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGIoKXVpbnQ2NAoJY2FsbHN1YiBiCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYigpOiB1aW50NjQKYjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTMxCgkvLyByZXR1cm4gNTsKCWludCA1CglyZXRzdWIKCi8vIHVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQKKmFiaV9yb3V0ZV91bnVzZWRNZXRob2RWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1bnVzZWRNZXRob2RWYWx1ZSgpdWludDY0CgljYWxsc3ViIHVudXNlZE1ldGhvZFZhbHVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW51c2VkTWV0aG9kVmFsdWUoKTogdWludDY0CnVudXNlZE1ldGhvZFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MzUKCS8vIHRoaXMuYSgpCgljYWxsc3ViIGEKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTM2CgkvLyByZXR1cm4gdGhpcy5iKCk7CgljYWxsc3ViIGIKCXJldHN1YgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKCWNhbGxzdWIgcmVhc3NpZ25lZE5vbkZpcnN0VmFyCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCk6IHVpbnQ2NApyZWFzc2lnbmVkTm9uRmlyc3RWYXI6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NDcKCS8vIGEgPSAxIGFzIHVpbnQ2NAoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU0OAoJLy8gYiA9IHRoaXMuYXBwLmlkCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTQ5CgkvLyBhCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjQKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1MAoJLy8gYiA9IDIKCWludCAyCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoqaWYyX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTUzCgkvLyByZXR1cm4gYjsKCWZyYW1lX2RpZyAxIC8vIGI6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZnZMdigpdm9pZAoqYWJpX3JvdXRlX2Z2THY6CgkvLyBleGVjdXRlIGZ2THYoKXZvaWQKCWNhbGxzdWIgZnZMdgoJaW50IDEKCXJldHVybgoKLy8gZnZMdigpOiB2b2lkCmZ2THY6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1NwoJLy8gYXNzZXJ0KHRoaXMudHhuLmZpcnN0VmFsaWQpCgl0eG4gRmlyc3RWYWxpZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NTgKCS8vIGFzc2VydCh0aGlzLnR4bi5sYXN0VmFsaWQpCgl0eG4gTGFzdFZhbGlkCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR4blR5cGVFbnVtKCl2b2lkIgoJbWV0aG9kICJ0eG5Hcm91cExlbmd0aCgpdm9pZCIKCW1ldGhvZCAiYXNzZXJ0cyhib29sLGJvb2wpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInN1Ym1pdFBlbmRpbmdHcm91cCgpdm9pZCIKCW1ldGhvZCAibWV0aG9kV2l0aFR4bkFyZ3MoKXZvaWQiCgltZXRob2QgInNoaWZ0KCl2b2lkIgoJbWV0aG9kICJmcm9tQnl0ZXMoKXZvaWQiCgltZXRob2QgImZyb21VaW50NjQoKXZvaWQiCgltZXRob2QgImJ6ZXJvRnVuY3Rpb24oKXZvaWQiCgltZXRob2QgImV2ZW50cygpdm9pZCIKCW1ldGhvZCAibGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdIgoJbWV0aG9kICJzdGF0aWNDb250cmFjdFByb3BlcnRpZXMoKXZvaWQiCgltZXRob2QgIm51bWJlclRvU3RyaW5nKCl2b2lkIgoJbWV0aG9kICJtZXRob2RPblBhcmVucygpdm9pZCIKCW1ldGhvZCAic3RyaW5nU3Vic3RyaW5nKCl2b2lkIgoJbWV0aG9kICJpZFByb3BlcnR5KCl2b2lkIgoJbWV0aG9kICJzY3JhdGNoU2xvdCgpdm9pZCIKCW1ldGhvZCAiZWNkc2EoKXZvaWQiCgltZXRob2QgInZlcmlmeVR4blR5cGVzKCl2b2lkIgoJbWV0aG9kICJzdHJpbmdQbHVzRXF1YWxzKCl2b2lkIgoJbWV0aG9kICJpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXSIKCW1ldGhvZCAiY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXIoKXZvaWQiCgltZXRob2QgImludGVyYWxQdWJsaWNNZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZCIKCW1ldGhvZCAiYXBwTG9hZFNjcmF0Y2goKXZvaWQiCgltZXRob2QgInVpbnROV2l0aFVuZGVyc2NvcmUoKXVpbnQyNTYiCgltZXRob2QgIm9wVXAoKXZvaWQiCgltZXRob2QgInJldHVyblZhbHVlT25Bc3NpZ25tZW50KClzdHJpbmciCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAicmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQiCgltZXRob2QgInJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCgpdWludDY0IgoJbWV0aG9kICJyZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAiY29uc3RzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRXaXRoTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3Bjb2RlQWxpYXNlcygpdm9pZCIKCW1ldGhvZCAidnJmVmVyaWZ5T3AoKXZvaWQiCgltZXRob2QgImVjTWF0aCgpdm9pZCIKCW1ldGhvZCAiZ2l0eG4oKXZvaWQiCgltZXRob2QgImdldFNldEJ5dGVzKCl2b2lkIgoJbWV0aG9kICJnZXRTZXRVaW50NjQoKXZvaWQiCgltZXRob2QgImJsb2NrT3AoKXZvaWQiCgltZXRob2QgImI2NCgpdm9pZCIKCW1ldGhvZCAianNvbigpdm9pZCIKCW1ldGhvZCAiYml0bGVuT3AoKXZvaWQiCgltZXRob2QgImNvbXB1dGVkQ29uc3QoKXZvaWQiCgltZXRob2QgIm11bHRpQ29tcHV0ZWRDb25zdCgpdm9pZCIKCW1ldGhvZCAicmVhZFNjaGVtYSgpdm9pZCIKCW1ldGhvZCAiY29tcGFyaXNvbk9yKClib29sIgoJbWV0aG9kICJ0eG5BcmdzTWV0aG9kKHBheSl2b2lkIgoJbWV0aG9kICJjYWxsVHhuQXJnc01ldGhvZCgpdm9pZCIKCW1ldGhvZCAic3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkIgoJbWV0aG9kICJzdGF0aWNUeXBlTGVuKCl2b2lkIgoJbWV0aG9kICJkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkIgoJbWV0aG9kICJpbmNyZW1lbnREeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImZyb21BZGRyZXNzKCl2b2lkIgoJbWV0aG9kICJlYXJseVJldHVybih1aW50NjQpdWludDY0IgoJbWV0aG9kICJhc3NldE1ldGhvZEFyZ3MoKXZvaWQiCgltZXRob2QgIm11bHRpcGxlUHJvZ3JhbVBhZ2VzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRDb21tZW50KCl2b2lkIgoJbWV0aG9kICJ0aHJvd0Vycm9yTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm11bHRpbGluZUZ1bmN0aW9uQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYSgpdWludDY0IgoJbWV0aG9kICJiKCl1aW50NjQiCgltZXRob2QgInVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJlYXNzaWduZWROb25GaXJzdFZhcigpdWludDY0IgoJbWV0aG9kICJmdkx2KCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlRW51bSAqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoICphYmlfcm91dGVfYXNzZXJ0cyAqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21BcmcgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Gcm9tVHhuR3JvdXAgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Db25kaXRpb24gKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluICphYmlfcm91dGVfdmVyaWZ5VHhuTm90SW5jbHVkZWRJbiAqYWJpX3JvdXRlX3N1Ym1pdFBlbmRpbmdHcm91cCAqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzICphYmlfcm91dGVfc2hpZnQgKmFiaV9yb3V0ZV9mcm9tQnl0ZXMgKmFiaV9yb3V0ZV9mcm9tVWludDY0ICphYmlfcm91dGVfYnplcm9GdW5jdGlvbiAqYWJpX3JvdXRlX2V2ZW50cyAqYWJpX3JvdXRlX2xldE9wdGltaXphdGlvbiAqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllcyAqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nICphYmlfcm91dGVfbWV0aG9kT25QYXJlbnMgKmFiaV9yb3V0ZV9zdHJpbmdTdWJzdHJpbmcgKmFiaV9yb3V0ZV9pZFByb3BlcnR5ICphYmlfcm91dGVfc2NyYXRjaFNsb3QgKmFiaV9yb3V0ZV9lY2RzYSAqYWJpX3JvdXRlX3ZlcmlmeVR4blR5cGVzICphYmlfcm91dGVfc3RyaW5nUGx1c0VxdWFscyAqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbSAqYWJpX3JvdXRlX2NhbGxQcml2YXRlRGVmaW5lZExhdGVyICphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2NhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2FwcExvYWRTY3JhdGNoICphYmlfcm91dGVfdWludE5XaXRoVW5kZXJzY29yZSAqYWJpX3JvdXRlX29wVXAgKmFiaV9yb3V0ZV9yZXR1cm5WYWx1ZU9uQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX2NvbnN0cyAqYWJpX3JvdXRlX2Fzc2VydFdpdGhNZXNzYWdlICphYmlfcm91dGVfb3Bjb2RlQWxpYXNlcyAqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wICphYmlfcm91dGVfZWNNYXRoICphYmlfcm91dGVfZ2l0eG4gKmFiaV9yb3V0ZV9nZXRTZXRCeXRlcyAqYWJpX3JvdXRlX2dldFNldFVpbnQ2NCAqYWJpX3JvdXRlX2Jsb2NrT3AgKmFiaV9yb3V0ZV9iNjQgKmFiaV9yb3V0ZV9qc29uICphYmlfcm91dGVfYml0bGVuT3AgKmFiaV9yb3V0ZV9jb21wdXRlZENvbnN0ICphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0ICphYmlfcm91dGVfcmVhZFNjaGVtYSAqYWJpX3JvdXRlX2NvbXBhcmlzb25PciAqYWJpX3JvdXRlX3R4bkFyZ3NNZXRob2QgKmFiaV9yb3V0ZV9jYWxsVHhuQXJnc01ldGhvZCAqYWJpX3JvdXRlX3N0YXRpY1ZhbHVlTGVuICphYmlfcm91dGVfc3RhdGljVHlwZUxlbiAqYWJpX3JvdXRlX2R5bmFtaWNTY3JhdGNoU2xvdCAqYWJpX3JvdXRlX2luY3JlbWVudFNjcmF0Y2hTbG90ICphYmlfcm91dGVfaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90ICphYmlfcm91dGVfZnJvbUFkZHJlc3MgKmFiaV9yb3V0ZV9lYXJseVJldHVybiAqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJncyAqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzICphYmlfcm91dGVfYXNzZXJ0Q29tbWVudCAqYWJpX3JvdXRlX3Rocm93RXJyb3JNZXNzYWdlICphYmlfcm91dGVfb3JMaXRlcmFsVHlwZSAqYWJpX3JvdXRlX211bHRpbGluZUZ1bmN0aW9uQ2FsbCAqYWJpX3JvdXRlX2EgKmFiaV9yb3V0ZV9iICphYmlfcm91dGVfdW51c2VkTWV0aG9kVmFsdWUgKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXIgKmFiaV9yb3V0ZV9mdkx2CgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpCglpbnQgMQoJcmV0dXJuCgoqaW50VG9Bc2NpaToKCXByb3RvIDEgMQoJYnl0ZSAweDMwMzEzMjMzMzQzNTM2MzczODM5IC8vICIwMTIzNDU2Nzg5IgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEKCWV4dHJhY3QzCglyZXRzdWIKCQoKKml0b2E6Cglwcm90byAxIDEKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCWludCAwCgk9PQoJYnogKml0b2FfaWZfZW5kCglieXRlIDB4MzAKCXJldHN1YgoKKml0b2FfaWZfZW5kOgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCglpbnQgMAoJPgoJYnogKml0b2FfdGVybmFyeV9mYWxzZQoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCgljYWxsc3ViICppdG9hCgliICppdG9hX3Rlcm5hcnlfZW5kCgoqaXRvYV90ZXJuYXJ5X2ZhbHNlOgoJYnl0ZSAweCAvLyAiIgoKKml0b2FfdGVybmFyeV9lbmQ6CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMTAKCSUKCWNhbGxzdWIgKmludFRvQXNjaWkKCWNvbmNhdAoJcmV0c3Vi", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gISEhISBXQVJOSU5HOiBUaGlzIGNvbnRyYWN0IGlzICpOT1QqIEFSQzQgY29tcGxpYW50LiBJdCBtYXkgY29udGFpbiBBQkkgbWV0aG9kcywgYnV0IGl0IGFsc28gYWxsb3dzIGFwcCBjYWxscyB3aGVyZSB0aGUgZmlyc3QgYXJndW1lbnQgZG9lcyBOT1QgbWF0Y2ggYW4gQUJJIHNlbGVjdG9yCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB0eG5UeXBlRW51bSgpdm9pZAoqYWJpX3JvdXRlX3R4blR5cGVFbnVtOgoJLy8gZXhlY3V0ZSB0eG5UeXBlRW51bSgpdm9pZAoJY2FsbHN1YiB0eG5UeXBlRW51bQoJaW50IDEKCXJldHVybgoKLy8gdHhuVHlwZUVudW0oKTogdm9pZAp0eG5UeXBlRW51bToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjEKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwWzBdLnR5cGVFbnVtID09PSBUcmFuc2FjdGlvblR5cGUuQXBwbGljYXRpb25DYWxsKQoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYXBwbAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyB0eG5Hcm91cExlbmd0aCgpdm9pZAoqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoOgoJLy8gZXhlY3V0ZSB0eG5Hcm91cExlbmd0aCgpdm9pZAoJY2FsbHN1YiB0eG5Hcm91cExlbmd0aAoJaW50IDEKCXJldHVybgoKLy8gdHhuR3JvdXBMZW5ndGgoKTogdm9pZAp0eG5Hcm91cExlbmd0aDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NjUKCS8vIGFzc2VydCh0aGlzLnR4bkdyb3VwLmxlbmd0aCA9PT0gMSkKCWdsb2JhbCBHcm91cFNpemUKCWludCAxCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydHMoYm9vbCxib29sKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRzOgoJLy8gYXJnMjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzIpIGZvciBhc3NlcnRzIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMSkgZm9yIGFzc2VydHMgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgYXNzZXJ0cyhib29sLGJvb2wpdm9pZAoJY2FsbHN1YiBhc3NlcnRzCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRzKGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiB2b2lkCmFzc2VydHM6Cglwcm90byAyIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjY5CgkvLyBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglmcmFtZV9kaWcgLTEgLy8gYXJnMTogYm9vbGVhbgoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgoJLy8gYXNzZXJ0cyBmYWlsZWQ6IGFzc2VydHMoYXJnMSwgYXJnMiwgYXJnMSA9PT0gYXJnMikKCWFzc2VydAoJZnJhbWVfZGlnIC0xIC8vIGFyZzE6IGJvb2xlYW4KCWZyYW1lX2RpZyAtMiAvLyBhcmcyOiBib29sZWFuCgk9PQoKCS8vIGFzc2VydHMgZmFpbGVkOiBhc3NlcnRzKGFyZzEsIGFyZzIsIGFyZzEgPT09IGFyZzIpCglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21Bcmc6CgkvLyBzb21lUGF5OiBwYXkKCXR4biBHcm91cEluZGV4CglpbnQgMQoJLQoJZHVwCglndHhucyBUeXBlRW51bQoJaW50IHBheQoJPT0KCgkvLyBhcmd1bWVudCAwIChzb21lUGF5KSBmb3IgdmVyaWZ5VHhuRnJvbUFyZyBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHZlcmlmeVR4bkZyb21BcmcocGF5KXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuRnJvbUFyZwoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbUFyZyhzb21lUGF5OiBQYXlUeG4pOiB2b2lkCnZlcmlmeVR4bkZyb21Bcmc6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjczCgkvLyB2ZXJpZnlUeG4oc29tZVBheSwgeyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgYW1vdW50OiAxMDBfMDAwIH0pCgkvLyB2ZXJpZnkgcmVjZWl2ZXIKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIFJlY2VpdmVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InNvbWVQYXkiLCJmaWVsZCI6InJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWZyYW1lX2RpZyAtMSAvLyBzb21lUGF5OiBQYXlUeG4KCWd0eG5zIEFtb3VudAoJaW50IDEwMF8wMDAKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzb21lUGF5IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6IjEwMF8wMDAifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkZyb21UeG5Hcm91cCgpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21UeG5Hcm91cDoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkZyb21UeG5Hcm91cAoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCk6IHZvaWQKdmVyaWZ5VHhuRnJvbVR4bkdyb3VwOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo3NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsgc2VuZGVyOiB0aGlzLnR4bi5zZW5kZXIgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWludCAwCglndHhucyBTZW5kZXIKCXR4biBTZW5kZXIKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJzZW5kZXIiLCJleHBlY3RlZCI6InRoaXMudHhuLnNlbmRlciJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuQ29uZGl0aW9uKCl2b2lkCiphYmlfcm91dGVfdmVyaWZ5VHhuQ29uZGl0aW9uOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuQ29uZGl0aW9uCglpbnQgMQoJcmV0dXJuCgovLyB2ZXJpZnlUeG5Db25kaXRpb24oKTogdm9pZAp2ZXJpZnlUeG5Db25kaXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjgxCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHsgZ3JlYXRlclRoYW46IDEgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uSUQKCXR4biBBcHBsaWNhdGlvbklECglpbnQgMQoJPgoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG4iLCJmaWVsZCI6ImFwcGxpY2F0aW9uSUQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjEifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluOgoJLy8gZXhlY3V0ZSB2ZXJpZnlUeG5JbmNsdWRlZEluKCl2b2lkCgljYWxsc3ViIHZlcmlmeVR4bkluY2x1ZGVkSW4KCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4bkluY2x1ZGVkSW4oKTogdm9pZAp2ZXJpZnlUeG5JbmNsdWRlZEluOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo4NwoJLy8gdmVyaWZ5VHhuKHRoaXMudHhuLCB7CgkvLyAgICAgICBzZW5kZXI6IHsgaW5jbHVkZWRJbjogW3RoaXMudHhuLnNlbmRlcl0gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJdHhuIFNlbmRlcgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6eyJ0eG5UZXh0IjoidGhpcy50eG4ifSwiZmllbGQiOiJzZW5kZXIiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbdGhpcy50eG4uc2VuZGVyXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpdm9pZAoqYWJpX3JvdXRlX3ZlcmlmeVR4bk5vdEluY2x1ZGVkSW46CgkvLyBleGVjdXRlIHZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuTm90SW5jbHVkZWRJbgoJaW50IDEKCXJldHVybgoKLy8gdmVyaWZ5VHhuTm90SW5jbHVkZWRJbigpOiB2b2lkCnZlcmlmeVR4bk5vdEluY2x1ZGVkSW46Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjkzCgkvLyB2ZXJpZnlUeG4odGhpcy50eG4sIHsKCS8vICAgICAgIHNlbmRlcjogeyBub3RJbmNsdWRlZEluOiBbZ2xvYmFscy56ZXJvQWRkcmVzc10gfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IHNlbmRlcgoJdHhuIFNlbmRlcgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4biJ9LCJmaWVsZCI6InNlbmRlciIsImNvbmRpdGlvbiI6Im5vdEluY2x1ZGVkSW4iLCJleHBlY3RlZCI6IltnbG9iYWxzLnplcm9BZGRyZXNzXSJ9Cglhc3NlcnQKCXJldHN1YgoKLy8gc3VibWl0UGVuZGluZ0dyb3VwKCl2b2lkCiphYmlfcm91dGVfc3VibWl0UGVuZGluZ0dyb3VwOgoJLy8gZXhlY3V0ZSBzdWJtaXRQZW5kaW5nR3JvdXAoKXZvaWQKCWNhbGxzdWIgc3VibWl0UGVuZGluZ0dyb3VwCglpbnQgMQoJcmV0dXJuCgovLyBzdWJtaXRQZW5kaW5nR3JvdXAoKTogdm9pZApzdWJtaXRQZW5kaW5nR3JvdXA6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjk5CgkvLyB0aGlzLnBlbmRpbmdHcm91cC5hZGRQYXltZW50KHsgYW1vdW50OiAwLCByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywgaXNGaXJzdFR4bjogdHJ1ZSB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6OTkKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo5OQoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHRoaXMucGVuZGluZ0dyb3VwLmFkZFBheW1lbnQoeyBhbW91bnQ6IDAsIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBub3RlOiAnZm9vJyB9KQoJaXR4bl9uZXh0CglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIGFtb3VudDogMAoJaW50IDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDAKCS8vIHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTAwCgkvLyBub3RlOiAnZm9vJwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDEKCS8vIHRoaXMucGVuZGluZ0dyb3VwLnN1Ym1pdCgpCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzOgoJLy8gZXhlY3V0ZSBtZXRob2RXaXRoVHhuQXJncygpdm9pZAoJY2FsbHN1YiBtZXRob2RXaXRoVHhuQXJncwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kV2l0aFR4bkFyZ3MoKTogdm9pZAptZXRob2RXaXRoVHhuQXJnczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTA1CgkvLyBzZW5kTWV0aG9kQ2FsbDxbUGF5VHhuLCBNZXRob2RDYWxsPFt1aW50NjRdLCB2b2lkPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogWwoJLy8gICAgICAgICB7IGFtb3VudDogMTAwXzAwMCwgcmVjZWl2ZXI6IHRoaXMudHhuLnNlbmRlciB9LAoJLy8gICAgICAgICB7CgkvLyAgICAgICAgICAgbmFtZTogJ2JhcicsCgkvLyAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KSwKCS8vICAgICAgICAgICBtZXRob2RBcmdzOiBbMV0sCgkvLyAgICAgICAgIH0sCgkvLyAgICAgICBdLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIGFtb3VudDogMTAwXzAwMAoJaW50IDEwMF8wMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDgKCS8vIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIKCXR4biBTZW5kZXIKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiYmFyKHVpbnQ2NCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjExMQoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgxMzM3KQoJaW50IDEzMzcKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTEyCgkvLyBtZXRob2RBcmdzOiBbMV0KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJaXR4bl9uZXh0CglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJmb28ocGF5LGFwcGwpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMDcKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgeyBhbW91bnQ6IDEwMF8wMDAsIHJlY2VpdmVyOiB0aGlzLnR4bi5zZW5kZXIgfSwKCS8vICAgICAgICAgewoJLy8gICAgICAgICAgIG5hbWU6ICdiYXInLAoJLy8gICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQoMTMzNyksCgkvLyAgICAgICAgICAgbWV0aG9kQXJnczogWzFdLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgXQoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBzaGlmdCgpdm9pZAoqYWJpX3JvdXRlX3NoaWZ0OgoJLy8gZXhlY3V0ZSBzaGlmdCgpdm9pZAoJY2FsbHN1YiBzaGlmdAoJaW50IDEKCXJldHVybgoKLy8gc2hpZnQoKTogdm9pZApzaGlmdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTE5CgkvLyBhc3NlcnQoMSA8PCAyID09PSA0KQoJaW50IDEKCWludCAyCglzaGwKCWludCA0Cgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxMjAKCS8vIGFzc2VydCg0ID4+IDEgPT09IDIpCglpbnQgNAoJaW50IDEKCXNocgoJaW50IDIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gZnJvbUJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZnJvbUJ5dGVzOgoJLy8gZXhlY3V0ZSBmcm9tQnl0ZXMoKXZvaWQKCWNhbGxzdWIgZnJvbUJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQnl0ZXMoKTogdm9pZApmcm9tQnl0ZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KEFkZHJlc3MuZnJvbUJ5dGVzKCdhYmMnKS5taW5CYWxhbmNlKQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYWNjdF9wYXJhbXNfZ2V0IEFjY3RNaW5CYWxhbmNlCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBmcm9tVWludDY0KCl2b2lkCiphYmlfcm91dGVfZnJvbVVpbnQ2NDoKCS8vIGV4ZWN1dGUgZnJvbVVpbnQ2NCgpdm9pZAoJY2FsbHN1YiBmcm9tVWludDY0CglpbnQgMQoJcmV0dXJuCgovLyBmcm9tVWludDY0KCk6IHZvaWQKZnJvbVVpbnQ2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI4CgkvLyBsb2coQXBwSUQuZnJvbVVpbnQ2NCgxMjMpLmNyZWF0b3IpCglpbnQgMTIzCglhcHBfcGFyYW1zX2dldCBBcHBDcmVhdG9yCglwb3AKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTI5CgkvLyBsb2coQXNzZXRJRC5mcm9tVWludDY0KDEyMykuY3JlYXRvcikKCWludCAxMjMKCWFzc2V0X3BhcmFtc19nZXQgQXNzZXRDcmVhdG9yCglwb3AKCWxvZwoJcmV0c3ViCgovLyBiemVyb0Z1bmN0aW9uKCl2b2lkCiphYmlfcm91dGVfYnplcm9GdW5jdGlvbjoKCS8vIGV4ZWN1dGUgYnplcm9GdW5jdGlvbigpdm9pZAoJY2FsbHN1YiBiemVyb0Z1bmN0aW9uCglpbnQgMQoJcmV0dXJuCgovLyBiemVyb0Z1bmN0aW9uKCk6IHZvaWQKYnplcm9GdW5jdGlvbjoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNAoJLy8geDogYnl0ZXMgPSBiemVybygyKQoJYnl0ZSAweDAwMDAKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM1CgkvLyB5OiBieXRlcyA9IGJ6ZXJvKG4pCglpbnQgMQoJYnplcm8KCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTM2CgkvLyB6OiBbdWludDY0LCB1aW50PDg+XSA9IGJ6ZXJvPFt1aW50NjQsIHVpbnQ8OD5dPigpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDIgLy8gejogW3VpbnQ2NCwgdWludDw4Pl0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjEzNwoJLy8gYXNzZXJ0KGxlbih4ICsgeSArIHopID09PSAxMikKCWJ5dGUgMHgwMDAwIC8vIHg6IGJ5dGVzCglmcmFtZV9kaWcgMSAvLyB5OiBieXRlcwoJY29uY2F0CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwIC8vIHo6IFt1aW50NjQsIHVpbnQ8OD5dCgljb25jYXQKCWxlbgoJaW50IDEyCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGV2ZW50cygpdm9pZAoqYWJpX3JvdXRlX2V2ZW50czoKCS8vIGV4ZWN1dGUgZXZlbnRzKCl2b2lkCgljYWxsc3ViIGV2ZW50cwoJaW50IDEKCXJldHVybgoKLy8gZXZlbnRzKCk6IHZvaWQKZXZlbnRzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTIKCS8vIHRoaXMubXlFdmVudC5sb2coeyBhcHA6IHRoaXMuYXBwLCBudW06IDEgfSkKCWJ5dGUgMHg4NzUyODE5NiAvLyBteUV2ZW50KHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdG9iCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMQoJY29uY2F0Cgljb25jYXQKCWxvZwoJcmV0c3ViCgovLyBsZXRPcHRpbWl6YXRpb24odWludDY0W10pdWludDY0W10KKmFiaV9yb3V0ZV9sZXRPcHRpbWl6YXRpb246CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NFtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgbGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdCgljYWxsc3ViIGxldE9wdGltaXphdGlvbgoJZHVwCglsZW4KCWludCA4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbGV0T3B0aW1pemF0aW9uKGE6IHVpbnQ2NFtdKTogdWludDY0W10KbGV0T3B0aW1pemF0aW9uOgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNTYKCS8vIGFzc2VydChhWzBdKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTU4CgkvLyBiID0gWzEsIDIsIDNdCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDIwMDAwMDAwMDAwMDAwMDAzCglmcmFtZV9idXJ5IC0xIC8vIGI6IHVpbnQ2NFtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NFtdCglyZXRzdWIKCi8vIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcygpdm9pZAoqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllczoKCS8vIGV4ZWN1dGUgc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCl2b2lkCgljYWxsc3ViIHN0YXRpY0NvbnRyYWN0UHJvcGVydGllcwoJaW50IDEKCXJldHVybgoKLy8gc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzKCk6IHZvaWQKc3RhdGljQ29udHJhY3RQcm9wZXJ0aWVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjQKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgIG9uQ29tcGxldGlvbjogT25Db21wbGV0aW9uLk5vT3AsCgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IER1bW15Q29udHJhY3QuYXBwcm92YWxQcm9ncmFtKCksCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogRHVtbXlDb250cmFjdC5jbGVhclByb2dyYW0oKSwKCS8vICAgICAgIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiBEdW1teUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NQoJLy8gb25Db21wbGV0aW9uOiBPbkNvbXBsZXRpb24uTm9PcAoJaW50IDAgLy8gTm9PcAoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjE2NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmFwcHJvdmFsUHJvZ3JhbSgpCglieXRlIGI2NCBDakVZRklFR0N6RVpDSTBNQUFBQUFBQUFBQUFBQUFBQUFBUUFBQUFBQUFBQUFBQUFBSUVCUTRBRXVFUjdOallhQUk0Qi8vQUEKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjcKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiBEdW1teUNvbnRyYWN0LmNsZWFyUHJvZ3JhbSgpCglieXRlIGI2NCBDZz09CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjgKCS8vIGxvY2FsTnVtQnl0ZVNsaWNlOiBEdW1teUNvbnRyYWN0LnNjaGVtYS5sb2NhbC5udW1CeXRlU2xpY2UKCWludCAwCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNjkKCS8vIGxvY2FsTnVtVWludDogRHVtbXlDb250cmFjdC5zY2hlbWEubG9jYWwubnVtVWludAoJaW50IDAKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogRHVtbXlDb250cmFjdC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZQoJaW50IDAKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxNzEKCS8vIGdsb2JhbE51bVVpbnQ6IER1bW15Q29udHJhY3Quc2NoZW1hLmdsb2JhbC5udW1VaW50CglpbnQgMAoJaXR4bl9maWVsZCBHbG9iYWxOdW1VaW50CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBudW1iZXJUb1N0cmluZygpdm9pZAoqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nOgoJLy8gZXhlY3V0ZSBudW1iZXJUb1N0cmluZygpdm9pZAoJY2FsbHN1YiBudW1iZXJUb1N0cmluZwoJaW50IDEKCXJldHVybgoKLy8gbnVtYmVyVG9TdHJpbmcoKTogdm9pZApudW1iZXJUb1N0cmluZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTc4CgkvLyBhc3NlcnQobi50b1N0cmluZygpID09PSBzKQoJaW50IDEKCWNhbGxzdWIgKml0b2EKCWJ5dGUgIjEiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIG1ldGhvZE9uUGFyZW5zKCl2b2lkCiphYmlfcm91dGVfbWV0aG9kT25QYXJlbnM6CgkvLyBleGVjdXRlIG1ldGhvZE9uUGFyZW5zKCl2b2lkCgljYWxsc3ViIG1ldGhvZE9uUGFyZW5zCglpbnQgMQoJcmV0dXJuCgovLyBtZXRob2RPblBhcmVucygpOiB2b2lkCm1ldGhvZE9uUGFyZW5zOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODIKCS8vIGFzc2VydCgoMSArIDIpLnRvU3RyaW5nKCkgPT09ICczJykKCWludCAzCgljYWxsc3ViICppdG9hCglieXRlIDB4MzMgLy8gIjMiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1N1YnN0cmluZygpdm9pZAoqYWJpX3JvdXRlX3N0cmluZ1N1YnN0cmluZzoKCS8vIGV4ZWN1dGUgc3RyaW5nU3Vic3RyaW5nKCl2b2lkCgljYWxsc3ViIHN0cmluZ1N1YnN0cmluZwoJaW50IDEKCXJldHVybgoKLy8gc3RyaW5nU3Vic3RyaW5nKCk6IHZvaWQKc3RyaW5nU3Vic3RyaW5nOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxODcKCS8vIGFzc2VydChzLnN1YnN0cmluZygxLCAzKSA9PT0gJ2JjJykKCWJ5dGUgImFiY2RlZiIKCXN1YnN0cmluZyAxIDMKCWJ5dGUgMHg2MjYzIC8vICJiYyIKCT09Cglhc3NlcnQKCXJldHN1YgoKLy8gaWRQcm9wZXJ0eSgpdm9pZAoqYWJpX3JvdXRlX2lkUHJvcGVydHk6CgkvLyBleGVjdXRlIGlkUHJvcGVydHkoKXZvaWQKCWNhbGxzdWIgaWRQcm9wZXJ0eQoJaW50IDEKCXJldHVybgoKLy8gaWRQcm9wZXJ0eSgpOiB2b2lkCmlkUHJvcGVydHk6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTEKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTkyCgkvLyBhc3NlcnQoQXBwSUQuZnJvbVVpbnQ2NChhcHAuaWQpID09PSBhcHApCglpbnQgMCAvLyBhcHA6IHVpbnQ2NAoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTQKCS8vIGFzYSA9IEFzc2V0SUQuemVyb0luZGV4CglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGFzYTogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoxOTUKCS8vIGFzc2VydChBc3NldElELmZyb21VaW50NjQoYXNhLmlkKSA9PT0gYXNhKQoJaW50IDAgLy8gYXNhOiB1aW50NjQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBzY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX3NjcmF0Y2hTbG90OgoJLy8gZXhlY3V0ZSBzY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBzY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gc2NyYXRjaFNsb3QoKTogdm9pZApzY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MTk5CgkvLyB0aGlzLnNjcmF0Y2gudmFsdWUgPSAxMzM3CglpbnQgMTMzNwoJc3RvcmUgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjAwCgkvLyBhc3NlcnQodGhpcy5zY3JhdGNoLnZhbHVlID09PSAxMzM3KQoJbG9hZCAwCglpbnQgMTMzNwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlY2RzYSgpdm9pZAoqYWJpX3JvdXRlX2VjZHNhOgoJLy8gZXhlY3V0ZSBlY2RzYSgpdm9pZAoJY2FsbHN1YiBlY2RzYQoJaW50IDEKCXJldHVybgoKLy8gZWNkc2EoKTogdm9pZAplY2RzYToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXBuIDMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNAoJLy8gZWNkc2FWZXJpZnkoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZHVwbiA0CgllY2RzYV92ZXJpZnkgU2VjcDI1NmsxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDUKCS8vIGQgPSBlY2RzYVBrRGVjb21wcmVzcygnU2VjcDI1NmsxJywgJycgYXMgYnl0ZXM8MzM+KQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJZWNkc2FfcGtfZGVjb21wcmVzcyBTZWNwMjU2azEKCWZyYW1lX2J1cnkgMCAvLyBkIHkgY29tcG9uZW50OiBieXRlW10KCWZyYW1lX2J1cnkgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIwNgoJLy8gbG9nKGQueSkKCWZyYW1lX2RpZyAwIC8vIGQgeSBjb21wb25lbnQ6IGJ5dGVbXQoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMDcKCS8vIGxvZyhkLngpCglmcmFtZV9kaWcgMSAvLyBkIHggY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjA5CgkvLyByID0gZWNkc2FQa1JlY292ZXIoJ1NlY3AyNTZrMScsICcnIGFzIGJ5dGVzMzIsIDEsICcnIGFzIGJ5dGVzMzIsICcnIGFzIGJ5dGVzMzIpCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyAiIgoJaW50IDEKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIC8vICIiCglkdXAKCWVjZHNhX3BrX3JlY292ZXIgU2VjcDI1NmsxCglmcmFtZV9idXJ5IDIgLy8gciB5IGNvbXBvbmVudDogYnl0ZVtdCglmcmFtZV9idXJ5IDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTAKCS8vIGxvZyhyLnkpCglmcmFtZV9kaWcgMiAvLyByIHkgY29tcG9uZW50OiBieXRlW10KCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjExCgkvLyBsb2coci54KQoJZnJhbWVfZGlnIDMgLy8gciB4IGNvbXBvbmVudDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gdmVyaWZ5VHhuVHlwZXMoKXZvaWQKKmFiaV9yb3V0ZV92ZXJpZnlUeG5UeXBlczoKCS8vIGV4ZWN1dGUgdmVyaWZ5VHhuVHlwZXMoKXZvaWQKCWNhbGxzdWIgdmVyaWZ5VHhuVHlwZXMKCWludCAxCglyZXR1cm4KCi8vIHZlcmlmeVR4blR5cGVzKCk6IHZvaWQKdmVyaWZ5VHhuVHlwZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIxNQoJLy8gdmVyaWZ5UGF5VHhuKHRoaXMudHhuR3JvdXBbMF0sIHsKCS8vICAgICAgIGFtb3VudDogeyBncmVhdGVyVGhhbjogMCB9LAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgcGF5CglpbnQgMAoJZ3R4bnMgVHlwZUVudW0KCWludCBwYXkKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoicGF5In0KCWFzc2VydAoKCS8vIHZlcmlmeSBhbW91bnQKCWludCAwCglndHhucyBBbW91bnQKCWludCAwCgk+CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhbW91bnQiLCJjb25kaXRpb24iOiJncmVhdGVyVGhhbiIsImV4cGVjdGVkIjoiPjAifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMTkKCS8vIHZlcmlmeUFwcENhbGxUeG4odGhpcy50eG5Hcm91cFswXSwgewoJLy8gICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCgwKSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogewoJLy8gICAgICAgICAwOiAnZm9vJywKCS8vICAgICAgICAgMTogewoJLy8gICAgICAgICAgIGluY2x1ZGVkSW46IFsnYmFyJywgJ2JheiddLAoJLy8gICAgICAgICB9LAoJLy8gICAgICAgfSwKCS8vICAgICB9KQoJLy8gdmVyaWZ5IGFwcGwKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGFwcGwKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ0eXBlRW51bSIsImV4cGVjdGVkIjoiYXBwbCJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25JRAoJaW50IDAKCWd0eG5zIEFwcGxpY2F0aW9uSUQKCWludCAwCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoiYXBwbGljYXRpb25JRCIsImV4cGVjdGVkIjoiQXBwSUQuZnJvbVVpbnQ2NCgwKSJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzCgkvLyB2ZXJpZnkgYXBwbGljYXRpb25BcmdzIDAKCWludCAwCglndHhucyBBcHBsaWNhdGlvbkFyZ3MgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImFwcGxpY2F0aW9uQXJncyIsImluZGV4IjoiMCIsImV4cGVjdGVkIjoiJ2ZvbycifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IGFwcGxpY2F0aW9uQXJncyAxCglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCT09CglpbnQgMAoJZ3R4bnMgQXBwbGljYXRpb25BcmdzIDEKCWJ5dGUgMHg2MjYxN2EgLy8gImJheiIKCT09Cgl8fAoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjp7InR4blRleHQiOiJ0aGlzLnR4bkdyb3VwWzBdIn0sImZpZWxkIjoiYXBwbGljYXRpb25BcmdzIDEiLCJjb25kaXRpb24iOiJpbmNsdWRlZEluIiwiZXhwZWN0ZWQiOiJbJ2JhcicsICdiYXonXSJ9Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjIyOQoJLy8gdmVyaWZ5QXNzZXRUcmFuc2ZlclR4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBhc3NldFJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYXhmZXIKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGF4ZmVyCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoidGhpcy50eG5Hcm91cFswXSIsImZpZWxkIjoidHlwZUVudW0iLCJleHBlY3RlZCI6ImF4ZmVyIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBhc3NldFJlY2VpdmVyCglpbnQgMAoJZ3R4bnMgQXNzZXRSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJhc3NldFJlY2VpdmVyIiwiZXhwZWN0ZWQiOiJ0aGlzLmFwcC5hZGRyZXNzIn0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjMzCgkvLyB2ZXJpZnlBc3NldENvbmZpZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICBjb25maWdBc3NldDogQXNzZXRJRC5mcm9tVWludDY0KDApLAoJLy8gICAgIH0pCgkvLyB2ZXJpZnkgYWNmZwoJaW50IDAKCWd0eG5zIFR5cGVFbnVtCglpbnQgYWNmZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJhY2ZnIn0KCWFzc2VydAoKCS8vIHZlcmlmeSBjb25maWdBc3NldAoJaW50IDAKCWd0eG5zIENvbmZpZ0Fzc2V0CglpbnQgMAoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6ImNvbmZpZ0Fzc2V0IiwiZXhwZWN0ZWQiOiJBc3NldElELmZyb21VaW50NjQoMCkifQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyMzcKCS8vIHZlcmlmeUtleVJlZ1R4bih0aGlzLnR4bkdyb3VwWzBdLCB7CgkvLyAgICAgICB2b3RlRmlyc3Q6IDEzMzcsCgkvLyAgICAgfSkKCS8vIHZlcmlmeSBrZXlyZWcKCWludCAwCglndHhucyBUeXBlRW51bQoJaW50IGtleXJlZwoJPT0KCgkvLyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb24gZmFpbGVkOiB7InR4biI6InRoaXMudHhuR3JvdXBbMF0iLCJmaWVsZCI6InR5cGVFbnVtIiwiZXhwZWN0ZWQiOiJrZXlyZWcifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IHZvdGVGaXJzdAoJaW50IDAKCWd0eG5zIFZvdGVGaXJzdAoJaW50IDEzMzcKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJ0aGlzLnR4bkdyb3VwWzBdIiwiZmllbGQiOiJ2b3RlRmlyc3QiLCJleHBlY3RlZCI6IjEzMzcifQoJYXNzZXJ0CglyZXRzdWIKCi8vIHN0cmluZ1BsdXNFcXVhbHMoKXZvaWQKKmFiaV9yb3V0ZV9zdHJpbmdQbHVzRXF1YWxzOgoJLy8gZXhlY3V0ZSBzdHJpbmdQbHVzRXF1YWxzKCl2b2lkCgljYWxsc3ViIHN0cmluZ1BsdXNFcXVhbHMKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1BsdXNFcXVhbHMoKTogdm9pZApzdHJpbmdQbHVzRXF1YWxzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI0MwoJLy8gcyA9ICdmb28nCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDQKCS8vIHMgKz0gJ2JhcicKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gczogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNDUKCS8vIGFzc2VydChzID09PSAnZm9vYmFyJykKCWZyYW1lX2RpZyAwIC8vIHM6IGJ5dGVbXQoJYnl0ZSAweDY2NmY2ZjYyNjE3MiAvLyAiZm9vYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXQoJY2FsbHN1YiBpbXBvcnRlZFByb2dyYW0KCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaW1wb3J0ZWRQcm9ncmFtKCk6IGJ5dGVzCmltcG9ydGVkUHJvZ3JhbToKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjQ5CgkvLyByZXR1cm4gSWZUZXN0LmFwcHJvdmFsUHJvZ3JhbSgpOwoJYnl0ZSBiNjQgQ2lBRUFRQUNJQ1lKQkJVZmZIVUNhV1lFWld4elpRTmxibVFBQTJadmJ3ZGxiSE5sSUdsbUNXVnNjMlVnYVdZZ01RbGxiSE5sSUdsbUlESXhHQlNCQmdzeEdRaU5EQU1rQUFBQUFBQUFBQUFBQUFNV0FBQUFBQUFBQUFBQUFBQW9OaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0JBWXYvUVFBQ0tZa3JpU2cyR2dGSkZTSVNSQ05UaUFBTVNSVVdWd1lDVEZCUXNDSkRpZ0VCaS85QkFBVXBpVUlBQWlxSmlTZzJHZ0pKRlNJU1JDTlROaG9CU1JVaUVrUWpVNGdBREVrVkZsY0dBa3hRVUxBaVE0b0NBWXYvUVFBRktZbENBQWlML2tFQUF5Y0dpU3VKS0RZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdJQmkvOUJBQVVwaVVJQURZditRUUFHSndhSlFnQUNLb21KS0RZYUEwa1ZJaEpFSTFNMkdnSkpGU0lTUkNOVE5ob0JTUlVpRWtRalU0Z0FERWtWRmxjR0FreFFVTEFpUTRvREFZdi9RUUFGS1lsQ0FCT0wva0VBQmljSGlVSUFDSXY5UVFBREp3aUpLNGtvTmhvRFNSVWlFa1FqVXpZYUFra1ZJaEpFSTFNMkdnRkpGU0lTUkNOVGlBQU1TUlVXVndZQ1RGQlFzQ0pEaWdNQmkvOUJBQVVwaVVJQUdJditRUUFHSndlSlFnQU5pLzFCQUFZbkNJbENBQUlxaVlrb05ob0NTUlVpRWtRalV6WWFBVWtWSWhKRUkxT0lBQXhKRlJaWEJnSk1VRkN3SWtPS0FnR0wvMEVBRm92K1FRQU1nQWx1WlhOMFpXUWdhV2FKS1lsQ0FBSXFpWWtvTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9CQVl2L1FRQUZLWWxDQUFJcWlZa29OaG9DU1JVaUVrUWpVellhQVVrVkloSkVJMU9JQUFVV1VMQWlRNG9DQVl2L1FRQUVJa0lBQzR2K1FRQUVKRUlBQW9FRGlTZzJHZ0ZYQWdDSUFBVVdVTEFpUTRvQkFZdi9Kd1NwUVFBQ0lva2tpU2cyR2dGWEFnQ0lBQVVXVUxBaVE0b0JBWXYvSndTcFFRQUVJa0lBQVNTSk5ob0JTUlVrRWtRWGlBQUNJa09LQVFDTC95Y0VxVUVBQXljRnNJazJHZ0pKRlNRU1JCYzJHZ0ZKRlNRU1JCZUlBQUlpUTRvQ0FJdi9pLzRPUVFBREp3V3dpVFlhQWtrVkpSSkVOaG9CU1JVbEVrU0lBQUlpUTRvQ0FJdi9pLzZtUVFBREp3V3dpU2cyR2dKSkZTSVNSQ05UTmhvQlNSVWlFa1FqVTRnQURFa1ZGbGNHQWt4UVVMQWlRNG9DQVl2L1FRQVppLzVCQUEyQUIyRWdZVzVrSUdLSlFnQUVnQUZoaVVJQUZvditRUUFIZ0FGaWlVSUFDb0FIYm1WcGRHaGxjb21KSWtPQUJMaEVlelkyR2dDT0FmL3hBSUFFUTI3QndvQUVISG9OWG9BRVhnKzJ6NEFFWGh4c1VJQUVXTkM2a29BRVhTOVBBb0FFaEZjcDJZQUVqK2RzcUlBRUdqeDRlSUFFZEx6SWFJQUVRaEw1QllBRWxkMnV2NEFFTVVlNFpvQUVRb2wvWVlBRVUwdml0ellhQUk0UC9HRDhodnl3L092OUt2MTYvYzcrRS80OS9uTCtrUDZ3L3MzKzgvOFhBQT09CglyZXRzdWIKCi8vIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCiphYmlfcm91dGVfY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXI6CgkvLyBleGVjdXRlIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyKCl2b2lkCgljYWxsc3ViIGNhbGxQcml2YXRlRGVmaW5lZExhdGVyCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsUHJpdmF0ZURlZmluZWRMYXRlcigpOiB2b2lkCmNhbGxQcml2YXRlRGVmaW5lZExhdGVyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNTMKCS8vIGxvZyh0aGlzLnByaXZhdGVNZXRob2QoJ2hlbGxvJykpCglieXRlIDB4Njg2NTZjNmM2ZiAvLyAiaGVsbG8iCgljYWxsc3ViIHByaXZhdGVNZXRob2QKCWxvZwoJcmV0c3ViCgovLyBwcml2YXRlTWV0aG9kKG1zZzogc3RyaW5nKTogc3RyaW5nCnByaXZhdGVNZXRob2Q6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI1NwoJLy8gcmV0dXJuIG1zZzsKCWZyYW1lX2RpZyAtMSAvLyBtc2c6IHN0cmluZwoJcmV0c3ViCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBpbnRlcmFsUHVibGljTWV0aG9kKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpbnRlcmFsUHVibGljTWV0aG9kKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmludGVyYWxQdWJsaWNNZXRob2Q6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI2MQoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJKwoJcmV0c3ViCgovLyBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QoKXZvaWQKKmFiaV9yb3V0ZV9jYWxsSW50ZXJuYWxQdWJsaWNNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZAoJY2FsbHN1YiBjYWxsSW50ZXJuYWxQdWJsaWNNZXRob2QKCWludCAxCglyZXR1cm4KCi8vIGNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpOiB2b2lkCmNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MjY1CgkvLyBhc3NlcnQodGhpcy5pbnRlcmFsUHVibGljTWV0aG9kKDEsIDIpID09PSAzKQoJaW50IDIKCWludCAxCgljYWxsc3ViIGludGVyYWxQdWJsaWNNZXRob2QKCWludCAzCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFwcExvYWRTY3JhdGNoKCl2b2lkCiphYmlfcm91dGVfYXBwTG9hZFNjcmF0Y2g6CgkvLyBleGVjdXRlIGFwcExvYWRTY3JhdGNoKCl2b2lkCgljYWxsc3ViIGFwcExvYWRTY3JhdGNoCglpbnQgMQoJcmV0dXJuCgovLyBhcHBMb2FkU2NyYXRjaCgpOiB2b2lkCmFwcExvYWRTY3JhdGNoOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNjkKCS8vIGxvZyh0aGlzLnR4bkdyb3VwWzFdLmxvYWRTY3JhdGNoKDIpIGFzIGJ5dGVzKQoJZ2xvYWQgMSAyCglsb2cKCXJldHN1YgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoqYWJpX3JvdXRlX3VpbnROV2l0aFVuZGVyc2NvcmU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludE5XaXRoVW5kZXJzY29yZSgpdWludDI1NgoJY2FsbHN1YiB1aW50TldpdGhVbmRlcnNjb3JlCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1aW50TldpdGhVbmRlcnNjb3JlIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludE5XaXRoVW5kZXJzY29yZSgpOiB1aW50MjU2CnVpbnROV2l0aFVuZGVyc2NvcmU6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3MwoJLy8gcmV0dXJuIDx1aW50MjU2PjEyM180NTY7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxZTI0MAoJcmV0c3ViCgovLyBvcFVwKCl2b2lkCiphYmlfcm91dGVfb3BVcDoKCS8vIGV4ZWN1dGUgb3BVcCgpdm9pZAoJY2FsbHN1YiBvcFVwCglpbnQgMQoJcmV0dXJuCgovLyBvcFVwKCk6IHZvaWQKb3BVcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI3OAoJLy8gZm9yIChsZXQgaSA9IDE7IGkgPCA3NTsgaSArPSAxKQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpIDwgNzUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDc1Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyNzkKCS8vIGFzc2VydChpKQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0Cglhc3NlcnQKCipmb3JfMF9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjc4CgkvLyBpICs9IDEKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCWIgKmZvcl8wCgoqZm9yXzBfZW5kOgoJcmV0c3ViCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpc3RyaW5nCiphYmlfcm91dGVfcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQoKXN0cmluZwoJY2FsbHN1YiByZXR1cm5WYWx1ZU9uQXNzaWdubWVudAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5WYWx1ZU9uQXNzaWdubWVudCgpOiBzdHJpbmcKcmV0dXJuVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mjg0CgkvLyBtZXNzYWdlID0gJ2hpJwoJYnl0ZSAweDY4NjkgLy8gImhpIgoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vICppZjBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NgoJLy8gdGhpcy50eG4uc2VuZGVyID09PSB0aGlzLmFwcC5hZGRyZXNzCgl0eG4gU2VuZGVyCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJPT0KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjI4NwoJLy8gbWVzc2FnZSA9ICdpbiBibG9jaycKCWJ5dGUgMHg2OTZlMjA2MjZjNmY2MzZiIC8vICJpbiBibG9jayIKCWZyYW1lX2J1cnkgMCAvLyBtZXNzYWdlOiBieXRlW10KCippZjBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTAKCS8vIHJldHVybiAobWVzc2FnZSA9ICdieWUnKTsKCWJ5dGUgMHg2Mjc5NjUgLy8gImJ5ZSIKCWR1cAoJZnJhbWVfYnVyeSAwIC8vIG1lc3NhZ2U6IGJ5dGVbXQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudCgpOiB1aW50NjQKcmV0dXJuQXJyYXlWYWx1ZU9uQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTQKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czoyOTYKCS8vIHJldHVybiAoYVswXSA9IDQpOwoJZnJhbWVfZGlnIDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJaW50IDAKCWludCA0CglkdXAKCXN0b3JlIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglpdG9iCglyZXBsYWNlMwoJZnJhbWVfYnVyeSAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCk6IHVpbnQ2NApyZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQ6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwMAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gMQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJaW50IDEKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMDIKCS8vIHJldHVybiAodGhpcy5nS2V5LnZhbHVlID0gMik7CglieXRlIDB4Njc0YjY1NzkgLy8gImdLZXkiCglpbnQgMgoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJYXBwX2dsb2JhbF9wdXQKCWxvYWQgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCXJldHN1YgoKLy8gcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQKCWNhbGxzdWIgcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWUKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSgpOiB1aW50NjQKcmV0dXJuT3BlcmF0b3JBc3NpZ25tZW50VmFsdWU6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzA2CgkvLyBhID0gMQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMwOAoJLy8gcmV0dXJuIChhICs9IDIpOwoJZnJhbWVfZGlnIDAgLy8gYTogdWludDY0CglpbnQgMgoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJZnJhbWVfYnVyeSAwIC8vIGE6IHVpbnQ2NAoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTIKCS8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4gPSBbMSwgMiwgM10KCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDAwMDAwMDAwMjAwMDAwMDAwMDAwMDAwMDMKCWZyYW1lX2J1cnkgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMTQKCS8vIHJldHVybiAoYVswXSArPSA0KTsKCWZyYW1lX2RpZyAwIC8vIGE6IFN0YXRpY0FycmF5PHVpbnQ2NCwgMz4KCWludCAwCglmcmFtZV9kaWcgMCAvLyBhOiBTdGF0aWNBcnJheTx1aW50NjQsIDM+CglleHRyYWN0IDAgOAoJYnRvaQoJaW50IDQKCSsKCWR1cAoJc3RvcmUgMjQ1IC8vIGFzc2lnbm1lbnQgdmFsdWUKCWl0b2IKCXJlcGxhY2UzCglmcmFtZV9idXJ5IDAgLy8gYTogU3RhdGljQXJyYXk8dWludDY0LCAzPgoJbG9hZCAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NAoJY2FsbHN1YiByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyByZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKTogdWludDY0CnJldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzE4CgkvLyB0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZSA9IFsxLCAyLCAzXQoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMwoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyMAoJLy8gcmV0dXJuICh0aGlzLnN0b3JhZ2VBcnJheS52YWx1ZVswXSArPSA0KTsKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMAoJYnl0ZSAweDczNzQ2ZjcyNjE2NzY1NDE3MjcyNjE3OSAvLyAic3RvcmFnZUFycmF5IgoJYXBwX2dsb2JhbF9nZXQKCWV4dHJhY3QgMCA4CglidG9pCglpbnQgNAoJKwoJZHVwCglzdG9yZSAyNDUgLy8gYXNzaWdubWVudCB2YWx1ZQoJaXRvYgoJcmVwbGFjZTMKCWJ5dGUgMHg3Mzc0NmY3MjYxNjc2NTQxNzI3MjYxNzkgLy8gInN0b3JhZ2VBcnJheSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0Cglsb2FkIDI0NSAvLyBhc3NpZ25tZW50IHZhbHVlCglyZXRzdWIKCi8vIGNvbnN0cygpdm9pZAoqYWJpX3JvdXRlX2NvbnN0czoKCS8vIGV4ZWN1dGUgY29uc3RzKCl2b2lkCgljYWxsc3ViIGNvbnN0cwoJaW50IDEKCXJldHVybgoKLy8gY29uc3RzKCk6IHZvaWQKY29uc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMjQKCS8vIGFzc2VydChTVFJJTkdfQ09OU1QgPT09ICdmb28nKQoJYnl0ZSAiZm9vIgoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzI1CgkvLyBhc3NlcnQoTlVNX0NPTlNUID09PSAxMjMpCglpbnQgMTIzCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMyNgoJLy8gYXNzZXJ0KE5FU1RFRF9DT05TVCA9PT0gMTIzKQoJaW50IDEyMwoJZHVwCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCiphYmlfcm91dGVfYXNzZXJ0V2l0aE1lc3NhZ2U6CgkvLyBleGVjdXRlIGFzc2VydFdpdGhNZXNzYWdlKCl2b2lkCgljYWxsc3ViIGFzc2VydFdpdGhNZXNzYWdlCglpbnQgMQoJcmV0dXJuCgovLyBhc3NlcnRXaXRoTWVzc2FnZSgpOiB2b2lkCmFzc2VydFdpdGhNZXNzYWdlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzAKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gb3Bjb2RlQWxpYXNlcygpdm9pZAoqYWJpX3JvdXRlX29wY29kZUFsaWFzZXM6CgkvLyBleGVjdXRlIG9wY29kZUFsaWFzZXMoKXZvaWQKCWNhbGxzdWIgb3Bjb2RlQWxpYXNlcwoJaW50IDEKCXJldHVybgoKLy8gb3Bjb2RlQWxpYXNlcygpOiB2b2lkCm9wY29kZUFsaWFzZXM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNAoJLy8gZXh0cmFjdFVpbnQxNihiemVybyg2NCksIDApCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWludCAwCglleHRyYWN0X3VpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzM1CgkvLyBleHRyYWN0VWludDMyKGJ6ZXJvKDY0KSwgMCkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJaW50IDAKCWV4dHJhY3RfdWludDMyCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzYKCS8vIGV4dHJhY3RVaW50NjQoYnplcm8oNjQpLCAwKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglpbnQgMAoJZXh0cmFjdF91aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjMzNwoJLy8gZWQyNTUxOVZlcmlmeUJhcmUoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeV9iYXJlCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozMzgKCS8vIGVkMjU1MTlWZXJpZnkoYnplcm8oNjQpLCBiemVybyg2NCksIGJ6ZXJvKDMyKSkKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZHVwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJZWQyNTUxOXZlcmlmeQoJcmV0c3ViCgovLyB2cmZWZXJpZnlPcCgpdm9pZAoqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wOgoJLy8gZXhlY3V0ZSB2cmZWZXJpZnlPcCgpdm9pZAoJY2FsbHN1YiB2cmZWZXJpZnlPcAoJaW50IDEKCXJldHVybgoKLy8gdnJmVmVyaWZ5T3AoKTogdm9pZAp2cmZWZXJpZnlPcDoKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0MgoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQzCgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDQKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0NQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ2CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNDcKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0OAoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludCAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZSBiNjQgQ29FQiAvLyAjcHJhZ21hIHZlcnNpb24gMTA7IGludCAxCglkdXAKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCglpbnQgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzQ5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJaW50IDAKCWl0eG5fZmllbGQgRmVlCglieXRlIGI2NCBDb0VCIC8vICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludCBEZWxldGVBcHBsaWNhdGlvbgoJaXR4bl9maWVsZCBPbkNvbXBsZXRpb24KCWl0eG5fc3VibWl0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTAKCS8vIGluY3JlYXNlT3Bjb2RlQnVkZ2V0KCkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGUgYjY0IENvRUIgLy8gI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50IERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM1MgoJLy8gciA9IHZyZlZlZmlyeSgnVnJmQWxnb3JhbmQnLCBiemVybygzMikgYXMgYnl0ZXMsIGJ6ZXJvKDgwKSwgYnplcm8oMzIpKQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAoJdnJmX3ZlcmlmeSBWcmZBbGdvcmFuZAoJZnJhbWVfYnVyeSAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCWZyYW1lX2J1cnkgMSAvLyByIG91dHB1dDogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTMKCS8vIGFzc2VydCghci52ZXJpZmllZCkKCWZyYW1lX2RpZyAwIC8vIHIgdmVyaWZpZWQ6IGJvb2wKCSEKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU0CgkvLyBsb2coci5vdXRwdXQpCglmcmFtZV9kaWcgMSAvLyByIG91dHB1dDogYnl0ZVtdCglsb2cKCXJldHN1YgoKLy8gZWNNYXRoKCl2b2lkCiphYmlfcm91dGVfZWNNYXRoOgoJLy8gZXhlY3V0ZSBlY01hdGgoKXZvaWQKCWNhbGxzdWIgZWNNYXRoCglpbnQgMQoJcmV0dXJuCgovLyBlY01hdGgoKTogdm9pZAplY01hdGg6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzU4CgkvLyBlY1NjYWxhck11bCgnQk4yNTRnMScsICcnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWR1cAoJZWNfc2NhbGFyX211bCBCTjI1NGcxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNTkKCS8vIGVjUGFpcmluZ0NoZWNrKCdCTjI1NGcxJywgJycsICcnKQoJYnl0ZSAweCAvLyAiIgoJZHVwCgllY19wYWlyaW5nX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MAoJLy8gc2NhbGFyczogYnl0ZXMzMltdID0gW2J6ZXJvKDMyKSwgYnplcm8oMzIpXQoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCglmcmFtZV9idXJ5IDAgLy8gc2NhbGFyczogYnl0ZXMzMltdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNjEKCS8vIGVjTXVsdGlTY2FsYXJNdWwoJ0JOMjU0ZzEnLCAnJywgc2NhbGFycykKCWJ5dGUgMHggLy8gIiIKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAvLyBzY2FsYXJzOiBieXRlczMyW10KCWVjX211bHRpX3NjYWxhcl9tdWwgQk4yNTRnMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzYyCgkvLyBlY1N1Ymdyb3VwQ2hlY2soJ0JOMjU0ZzEnLCAnJykKCWJ5dGUgMHggLy8gIiIKCWVjX3N1Ymdyb3VwX2NoZWNrIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2MwoJLy8gZWNNYXBUbygnQk4yNTRnMScsICcnKQoJYnl0ZSAweCAvLyAiIgoJZWNfbWFwX3RvIEJOMjU0ZzEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2NAoJLy8gZWNBZGQoJ0JOMjU0ZzEnLCAnJywgJycpCglieXRlIDB4IC8vICIiCglkdXAKCWVjX2FkZCBCTjI1NGcxCglyZXRzdWIKCi8vIGdpdHhuKCl2b2lkCiphYmlfcm91dGVfZ2l0eG46CgkvLyBleGVjdXRlIGdpdHhuKCl2b2lkCgljYWxsc3ViIGdpdHhuCglpbnQgMQoJcmV0dXJuCgovLyBnaXR4bigpOiB2b2lkCmdpdHhuOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM2OAoJLy8gbG9nKHRoaXMubGFzdElubmVyR3JvdXBbMF0uc2VuZGVyKQoJZ2l0eG4gMCBTZW5kZXIKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcwCgkvLyBhbm90aGVyVHhuID0gdGhpcy5sYXN0SW5uZXJHcm91cFsxXQoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhbm90aGVyVHhuOiBnaXR4bgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzcyCgkvLyBsb2coYW5vdGhlclR4bi5zZW5kZXIpCglnaXR4biAxIFNlbmRlcgoJbG9nCglyZXRzdWIKCi8vIGdldFNldEJ5dGVzKCl2b2lkCiphYmlfcm91dGVfZ2V0U2V0Qnl0ZXM6CgkvLyBleGVjdXRlIGdldFNldEJ5dGVzKCl2b2lkCgljYWxsc3ViIGdldFNldEJ5dGVzCglpbnQgMQoJcmV0dXJuCgovLyBnZXRTZXRCeXRlcygpOiB2b2lkCmdldFNldEJ5dGVzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzYKCS8vIGxvZyhzZXRiaXQoJ2ZvbycsIDAsIHRydWUpKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRiaXQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc3CgkvLyBnZXRiaXQoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Yml0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNzgKCS8vIGdldGJ5dGUoJ2ZvbycsIDApCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJZ2V0Ynl0ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzc5CgkvLyBzZXRieXRlKCdmb28nLCAwLCAxKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAxCglzZXRieXRlCglyZXRzdWIKCi8vIGdldFNldFVpbnQ2NCgpdm9pZAoqYWJpX3JvdXRlX2dldFNldFVpbnQ2NDoKCS8vIGV4ZWN1dGUgZ2V0U2V0VWludDY0KCl2b2lkCgljYWxsc3ViIGdldFNldFVpbnQ2NAoJaW50IDEKCXJldHVybgoKLy8gZ2V0U2V0VWludDY0KCk6IHZvaWQKZ2V0U2V0VWludDY0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozODMKCS8vIGFzc2VydChzZXRiaXQoMTIzLCAwLCB0cnVlKSkKCWludCAxMjMKCWludCAwCglpbnQgMQoJc2V0Yml0Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4NAoJLy8gZ2V0Yml0KDEyMywgMCkKCWludCAxMjMKCWludCAwCglnZXRiaXQKCXJldHN1YgoKLy8gYmxvY2tPcCgpdm9pZAoqYWJpX3JvdXRlX2Jsb2NrT3A6CgkvLyBleGVjdXRlIGJsb2NrT3AoKXZvaWQKCWNhbGxzdWIgYmxvY2tPcAoJaW50IDEKCXJldHVybgoKLy8gYmxvY2tPcCgpOiB2b2lkCmJsb2NrT3A6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM4OAoJLy8gbG9nKGJsb2Nrc1tnbG9iYWxzLnJvdW5kIC0gMV0uc2VlZCkKCWdsb2JhbCBSb3VuZAoJaW50IDEKCS0KCWJsb2NrIEJsa1NlZWQKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzg5CgkvLyBhc3NlcnQoYmxvY2tzW2dsb2JhbHMucm91bmQgLSAxXS50aW1lc3RhbXApCglnbG9iYWwgUm91bmQKCWludCAxCgktCglibG9jayBCbGtUaW1lc3RhbXAKCWFzc2VydAoJcmV0c3ViCgovLyBiNjQoKXZvaWQKKmFiaV9yb3V0ZV9iNjQ6CgkvLyBleGVjdXRlIGI2NCgpdm9pZAoJY2FsbHN1YiBiNjQKCWludCAxCglyZXR1cm4KCi8vIGI2NCgpOiB2b2lkCmI2NDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6MzkzCgkvLyBsb2coYmFzZTY0RGVjb2RlKCdTdGRFbmNvZGluZycsICcnKSkKCWJ5dGUgMHggLy8gIiIKCWJhc2U2NF9kZWNvZGUgU3RkRW5jb2RpbmcKCWxvZwoJcmV0c3ViCgovLyBqc29uKCl2b2lkCiphYmlfcm91dGVfanNvbjoKCS8vIGV4ZWN1dGUganNvbigpdm9pZAoJY2FsbHN1YiBqc29uCglpbnQgMQoJcmV0dXJuCgovLyBqc29uKCk6IHZvaWQKanNvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk3CgkvLyBsb2coanNvblJlZignSlNPTk9iamVjdCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05PYmplY3QKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk4CgkvLyBsb2coanNvblJlZignSlNPTlN0cmluZycsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05TdHJpbmcKCWxvZwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6Mzk5CgkvLyBhc3NlcnQoanNvblJlZignSlNPTlVpbnQ2NCcsICcnLCAnJykpCglieXRlIDB4IC8vICIiCglkdXAKCWpzb25fcmVmIEpTT05VaW50NjQKCWFzc2VydAoJcmV0c3ViCgovLyBiaXRsZW5PcCgpdm9pZAoqYWJpX3JvdXRlX2JpdGxlbk9wOgoJLy8gZXhlY3V0ZSBiaXRsZW5PcCgpdm9pZAoJY2FsbHN1YiBiaXRsZW5PcAoJaW50IDEKCXJldHVybgoKLy8gYml0bGVuT3AoKTogdm9pZApiaXRsZW5PcDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDAzCgkvLyBiaXRsZW4oMTIzKQoJaW50IDEyMwoJYml0bGVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MDQKCS8vIGJpdGxlbignZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJpdGxlbgoJcmV0c3ViCgovLyBjb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfY29tcHV0ZWRDb25zdDoKCS8vIGV4ZWN1dGUgY29tcHV0ZWRDb25zdCgpdm9pZAoJY2FsbHN1YiBjb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBjb21wdXRlZENvbnN0KCk6IHZvaWQKY29tcHV0ZWRDb25zdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDA4CgkvLyBhc3NlcnQoQ09NUFVURURfQ09OU1QpCglpbnQgMjQ2Cglhc3NlcnQKCXJldHN1YgoKLy8gbXVsdGlDb21wdXRlZENvbnN0KCl2b2lkCiphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0OgoJLy8gZXhlY3V0ZSBtdWx0aUNvbXB1dGVkQ29uc3QoKXZvaWQKCWNhbGxzdWIgbXVsdGlDb21wdXRlZENvbnN0CglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aUNvbXB1dGVkQ29uc3QoKTogdm9pZAptdWx0aUNvbXB1dGVkQ29uc3Q6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxMgoJLy8gYXNzZXJ0KE1VVExJX0NPTVBVVEVEX0NPTlNUKQoJaW50IDMwMzgxCglhc3NlcnQKCXJldHN1YgoKLy8gcmVhZFNjaGVtYSgpdm9pZAoqYWJpX3JvdXRlX3JlYWRTY2hlbWE6CgkvLyBleGVjdXRlIHJlYWRTY2hlbWEoKXZvaWQKCWNhbGxzdWIgcmVhZFNjaGVtYQoJaW50IDEKCXJldHVybgoKLy8gcmVhZFNjaGVtYSgpOiB2b2lkCnJlYWRTY2hlbWE6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNgoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtVWludCA9PT0gMSkKCWludCAxCglkdXAKCT09Cglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQxNwoJLy8gYXNzZXJ0KFNjaGVtYUNvbnRyYWN0LnNjaGVtYS5nbG9iYWwubnVtQnl0ZVNsaWNlID09PSAyKQoJaW50IDIKCWR1cAoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDE4CgkvLyBhc3NlcnQoU2NoZW1hQ29udHJhY3Quc2NoZW1hLmxvY2FsLm51bVVpbnQgPT09IDMpCglpbnQgMwoJZHVwCgk9PQoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MTkKCS8vIGFzc2VydChTY2hlbWFDb250cmFjdC5zY2hlbWEubG9jYWwubnVtQnl0ZVNsaWNlID09PSA0KQoJaW50IDQKCWR1cAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBjb21wYXJpc29uT3IoKWJvb2wKKmFiaV9yb3V0ZV9jb21wYXJpc29uT3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29tcGFyaXNvbk9yKClib29sCgljYWxsc3ViIGNvbXBhcmlzb25PcgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb21wYXJpc29uT3IoKTogYm9vbGVhbgpjb21wYXJpc29uT3I6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQyMwoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlciA9PT0gZ2xvYmFscy56ZXJvQWRkcmVzcyB8fCB0aGlzLnR4bi5zZW5kZXIgPT09IGdsb2JhbHMuemVyb0FkZHJlc3M7Cgl0eG4gU2VuZGVyCglnbG9iYWwgWmVyb0FkZHJlc3MKCT09CglkdXAKCWJueiAqc2tpcF9vcjAKCXR4biBTZW5kZXIKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCXx8Cgoqc2tpcF9vcjA6CglyZXRzdWIKCi8vIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKKmFiaV9yb3V0ZV90eG5BcmdzTWV0aG9kOgoJLy8gX3BheTE6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludCAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnQgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKF9wYXkxKSBmb3IgdHhuQXJnc01ldGhvZCBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIHR4bkFyZ3NNZXRob2QocGF5KXZvaWQKCWNhbGxzdWIgdHhuQXJnc01ldGhvZAoJaW50IDEKCXJldHVybgoKLy8gdHhuQXJnc01ldGhvZChfcGF5MTogUGF5VHhuKTogdm9pZAp0eG5BcmdzTWV0aG9kOgoJcHJvdG8gMSAwCglyZXRzdWIKCi8vIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCiphYmlfcm91dGVfY2FsbFR4bkFyZ3NNZXRob2Q6CgkvLyBleGVjdXRlIGNhbGxUeG5BcmdzTWV0aG9kKCl2b2lkCgljYWxsc3ViIGNhbGxUeG5BcmdzTWV0aG9kCglpbnQgMQoJcmV0dXJuCgovLyBjYWxsVHhuQXJnc01ldGhvZCgpOiB2b2lkCmNhbGxUeG5BcmdzTWV0aG9kOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzAKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBHZW5lcmFsVGVzdC5wcm90b3R5cGUudHhuQXJnc01ldGhvZD4oewoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsIGFtb3VudDogMCB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDMxCgkvLyByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgUmVjZWl2ZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQzMQoJLy8gYW1vdW50OiAwCglpbnQgMAoJaXR4bl9maWVsZCBBbW91bnQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAidHhuQXJnc01ldGhvZChwYXkpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzEKCS8vIG1ldGhvZEFyZ3M6IFt7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IDAgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gc3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkCiphYmlfcm91dGVfc3RhdGljVmFsdWVMZW46CgkvLyB4OiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBzdGF0aWNWYWx1ZUxlbiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGF0aWNWYWx1ZUxlbih1aW50MjU2KXZvaWQKCWNhbGxzdWIgc3RhdGljVmFsdWVMZW4KCWludCAxCglyZXR1cm4KCi8vIHN0YXRpY1ZhbHVlTGVuKHg6IHVpbnQyNTYpOiB2b2lkCnN0YXRpY1ZhbHVlTGVuOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0MzYKCS8vIGFzc2VydChsZW4oeCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBzdGF0aWNUeXBlTGVuKCl2b2lkCiphYmlfcm91dGVfc3RhdGljVHlwZUxlbjoKCS8vIGV4ZWN1dGUgc3RhdGljVHlwZUxlbigpdm9pZAoJY2FsbHN1YiBzdGF0aWNUeXBlTGVuCglpbnQgMQoJcmV0dXJuCgovLyBzdGF0aWNUeXBlTGVuKCk6IHZvaWQKc3RhdGljVHlwZUxlbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQwCgkvLyBhc3NlcnQobGVuPHVpbnQyNTY+KCkpCglpbnQgMzIKCWFzc2VydAoJcmV0c3ViCgovLyBkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQKKmFiaV9yb3V0ZV9keW5hbWljU2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGR5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoJY2FsbHN1YiBkeW5hbWljU2NyYXRjaFNsb3QKCWludCAxCglyZXR1cm4KCi8vIGR5bmFtaWNTY3JhdGNoU2xvdCgpOiB2b2lkCmR5bmFtaWNTY3JhdGNoU2xvdDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDQ0CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDEpLnZhbHVlID0gMTMzNwoJaW50IDEKCWludCAxMzM3CglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ0NQoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMSkudmFsdWUgPT09IDEzMzcpCglpbnQgMQoJbG9hZHMKCWludCAxMzM3Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCiphYmlfcm91dGVfaW5jcmVtZW50U2NyYXRjaFNsb3Q6CgkvLyBleGVjdXRlIGluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudFNjcmF0Y2hTbG90CglpbnQgMQoJcmV0dXJuCgovLyBpbmNyZW1lbnRTY3JhdGNoU2xvdCgpOiB2b2lkCmluY3JlbWVudFNjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NDkKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSA9IDEzMzcKCWludCAxMzM3CglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTAKCS8vIHRoaXMuc2NyYXRjaC52YWx1ZSArPSAxCglsb2FkIDAKCWludCAxCgkrCglzdG9yZSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTEKCS8vIGFzc2VydCh0aGlzLnNjcmF0Y2gudmFsdWUgPT09IDEzMzgpCglsb2FkIDAKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdCgpdm9pZAoqYWJpX3JvdXRlX2luY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdDoKCS8vIGV4ZWN1dGUgaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCl2b2lkCgljYWxsc3ViIGluY3JlbWVudER5bmFtaWNTY3JhdGNoU2xvdAoJaW50IDEKCXJldHVybgoKLy8gaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90KCk6IHZvaWQKaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NTUKCS8vIHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPSAxMzM3CglpbnQgMgoJaW50IDEzMzcKCXN0b3JlcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDU2CgkvLyB0aGlzLmR5bmFtaWNTY3JhdGNoKDIpLnZhbHVlICs9IDEKCWludCAyCglsb2FkcwoJaW50IDEKCSsKCWludCAyCglzd2FwCglzdG9yZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ1NwoJLy8gYXNzZXJ0KHRoaXMuZHluYW1pY1NjcmF0Y2goMikudmFsdWUgPT09IDEzMzgpCglpbnQgMgoJbG9hZHMKCWludCAxMzM4Cgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGZyb21BZGRyZXNzKCl2b2lkCiphYmlfcm91dGVfZnJvbUFkZHJlc3M6CgkvLyBleGVjdXRlIGZyb21BZGRyZXNzKCl2b2lkCgljYWxsc3ViIGZyb21BZGRyZXNzCglpbnQgMQoJcmV0dXJuCgovLyBmcm9tQWRkcmVzcygpOiB2b2lkCmZyb21BZGRyZXNzOgoJcHJvdG8gMCAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2MQoJLy8gYSA9IEFkZHJlc3MuZnJvbUFkZHJlc3MoJ0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFZNUhGS1EnKQoJYWRkciBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWTVIRktRCglmcmFtZV9idXJ5IDAgLy8gYTogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDYyCgkvLyBhc3NlcnQoYSA9PT0gQWRkcmVzcy56ZXJvQWRkcmVzcykKCWZyYW1lX2RpZyAwIC8vIGE6IGFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBlYXJseVJldHVybih1aW50NjQpdWludDY0CiphYmlfcm91dGVfZWFybHlSZXR1cm46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZWFybHlSZXR1cm4odWludDY0KXVpbnQ2NAoJY2FsbHN1YiBlYXJseVJldHVybgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGVhcmx5UmV0dXJuKGE6IHVpbnQ2NCk6IHVpbnQ2NAplYXJseVJldHVybjoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY2CgkvLyBhID09PSAxCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglpbnQgMQoJPT0KCWJ6ICppZjFfZW5kCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ2NwoJLy8gcmV0dXJuIDI7CglpbnQgMgoJYiAqZWFybHlSZXR1cm4qcmV0dXJuCgoqaWYxX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDY5CgkvLyBiID0gYSArIDEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gYjogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzAKCS8vIHJldHVybiBiOwoJZnJhbWVfZGlnIDAgLy8gYjogdWludDY0CgoqZWFybHlSZXR1cm4qcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGFzc2V0TWV0aG9kQXJncygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJnczoKCS8vIGV4ZWN1dGUgYXNzZXRNZXRob2RBcmdzKCl2b2lkCgljYWxsc3ViIGFzc2V0TWV0aG9kQXJncwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRNZXRob2RBcmdzKCk6IHZvaWQKYXNzZXRNZXRob2RBcmdzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0NzQKCS8vIHNlbmRNZXRob2RDYWxsPFtBc3NldFJlZmVyZW5jZV0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0sCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgltZXRob2QgImZvbyhhc3NldCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ3NgoJLy8gbWV0aG9kQXJnczogW0Fzc2V0SUQuZnJvbVVpbnQ2NCgxKV0KCWludCAxCglpdHhuX2ZpZWxkIEFzc2V0cwoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzOgoJLy8gZXhlY3V0ZSBtdWx0aXBsZVByb2dyYW1QYWdlcygpdm9pZAoJY2FsbHN1YiBtdWx0aXBsZVByb2dyYW1QYWdlcwoJaW50IDEKCXJldHVybgoKLy8gbXVsdGlwbGVQcm9ncmFtUGFnZXMoKTogdm9pZAptdWx0aXBsZVByb2dyYW1QYWdlczoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NDg1CgkvLyBzZW5kQXBwQ2FsbCh7CgkvLyAgICAgICBhcHByb3ZhbFByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0sCgkvLyAgICAgICBjbGVhclN0YXRlUHJvZ3JhbTogW3RoaXMucGFnZU9uZS52YWx1ZSwgdGhpcy5wYWdlVHdvLnZhbHVlXSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NgoJLy8gYXBwcm92YWxQcm9ncmFtOiBbdGhpcy5wYWdlT25lLnZhbHVlLCB0aGlzLnBhZ2VUd28udmFsdWVdCglieXRlIDB4NzA2MTY3NjU0ZjZlNjUgLy8gInBhZ2VPbmUiCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnBhZ2VPbmUudmFsdWUKCWFzc2VydAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW1QYWdlcwoJYnl0ZSAweDcwNjE2NzY1NTQ3NzZmIC8vICJwYWdlVHdvIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5wYWdlVHdvLnZhbHVlCglhc3NlcnQKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjQ4NwoJLy8gY2xlYXJTdGF0ZVByb2dyYW06IFt0aGlzLnBhZ2VPbmUudmFsdWUsIHRoaXMucGFnZVR3by52YWx1ZV0KCWJ5dGUgMHg3MDYxNjc2NTRmNmU2NSAvLyAicGFnZU9uZSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZU9uZS52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCWJ5dGUgMHg3MDYxNjc2NTU0Nzc2ZiAvLyAicGFnZVR3byIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMucGFnZVR3by52YWx1ZQoJYXNzZXJ0CglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtUGFnZXMKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CglyZXRzdWIKCi8vIGFzc2VydENvbW1lbnQoKXZvaWQKKmFiaV9yb3V0ZV9hc3NlcnRDb21tZW50OgoJLy8gZXhlY3V0ZSBhc3NlcnRDb21tZW50KCl2b2lkCgljYWxsc3ViIGFzc2VydENvbW1lbnQKCWludCAxCglyZXR1cm4KCi8vIGFzc2VydENvbW1lbnQoKTogdm9pZAphc3NlcnRDb21tZW50OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo0OTIKCS8vIGFzc2VydChmYWxzZSwgJ3RoaXMgaXMgZmFsc2UnKQoJaW50IDAKCgkvLyB0aGlzIGlzIGZhbHNlCglhc3NlcnQKCXJldHN1YgoKLy8gdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKKmFiaV9yb3V0ZV90aHJvd0Vycm9yTWVzc2FnZToKCS8vIGV4ZWN1dGUgdGhyb3dFcnJvck1lc3NhZ2UoKXZvaWQKCWNhbGxzdWIgdGhyb3dFcnJvck1lc3NhZ2UKCWludCAxCglyZXR1cm4KCi8vIHRocm93RXJyb3JNZXNzYWdlKCk6IHZvaWQKdGhyb3dFcnJvck1lc3NhZ2U6Cglwcm90byAwIDAKCgkvLyB0aGlzIGlzIGFuIGVycm9yCgllcnIKCXJldHN1YgoKLy8gb3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9vckxpdGVyYWxUeXBlOgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBvckxpdGVyYWxUeXBlKHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBvckxpdGVyYWxUeXBlCglpbnQgMQoJcmV0dXJuCgovLyBvckxpdGVyYWxUeXBlKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdm9pZApvckxpdGVyYWxUeXBlOgoJcHJvdG8gMiAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAwCgkvLyBmb28gPSBhICYmIGIgPT09IDEgPyAyIDogMAoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZHVwCglieiAqc2tpcF9hbmQwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglpbnQgMQoJPT0KCSYmCgoqc2tpcF9hbmQwOgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglpbnQgMAoKKnRlcm5hcnkwX2VuZDoKCWZyYW1lX2J1cnkgMCAvLyBmb286IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAxCgkvLyBhc3NlcnQoZm9vKQoJZnJhbWVfZGlnIDAgLy8gZm9vOiB1aW50NjQKCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTAzCgkvLyBiYXIgPSBhICYmIGIgPT09IDAgPyAnMicgOiAnMCcKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWR1cAoJYnogKnNraXBfYW5kMQoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJaW50IDAKCT09CgkmJgoKKnNraXBfYW5kMToKCWJ6ICp0ZXJuYXJ5MV9mYWxzZQoJYnl0ZSAweDMyIC8vICIyIgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglieXRlIDB4MzAgLy8gIjAiCgoqdGVybmFyeTFfZW5kOgoJZnJhbWVfYnVyeSAxIC8vIGJhcjogYnl0ZVtdCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDQKCS8vIGxvZyhiYXIpCglmcmFtZV9kaWcgMSAvLyBiYXI6IGJ5dGVbXQoJbG9nCglyZXRzdWIKCi8vIG5vbkFiaSgpOiB2b2lkCm5vbkFiaToKCXByb3RvIDAgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MDkKCS8vIGFzc2VydCh0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aCkKCXR4biBOdW1BcHBBcmdzCglhc3NlcnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnR4bi5hcHBsaWNhdGlvbkFyZ3MhLmxlbmd0aDsgaSArPSAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCipmb3JfMToKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTExCgkvLyBpIDwgdGhpcy50eG4uYXBwbGljYXRpb25BcmdzIS5sZW5ndGgKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJdHhuIE51bUFwcEFyZ3MKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMgoJLy8gbG9nKHRoaXMudHhuLmFwcGxpY2F0aW9uQXJncyFbaV0pCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCXR4bmFzIEFwcGxpY2F0aW9uQXJncwoJbG9nCgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUxMQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCXJldHN1YgoKLy8gbXVsdGlsaW5lRnVuY3Rpb25DYWxsKCl2b2lkCiphYmlfcm91dGVfbXVsdGlsaW5lRnVuY3Rpb25DYWxsOgoJLy8gZXhlY3V0ZSBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKXZvaWQKCWNhbGxzdWIgbXVsdGlsaW5lRnVuY3Rpb25DYWxsCglpbnQgMQoJcmV0dXJuCgovLyBtdWx0aWxpbmVGdW5jdGlvbkNhbGwoKTogdm9pZAptdWx0aWxpbmVGdW5jdGlvbkNhbGw6Cglwcm90byAwIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MTcKCS8vIGFwcCA9IEFwcElELnplcm9JbmRleAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBhcHA6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTE4CgkvLyBhZGRyID0gQWRkcmVzcy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglmcmFtZV9idXJ5IDEgLy8gYWRkcjogYWRkcmVzcwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTIwCgkvLyBhcHAubG9jYWxTdGF0ZSgKCS8vICAgICAgIGFkZHIsCgkvLyAgICAgICAna2V5JwoJLy8gICAgICkKCWZyYW1lX2RpZyAxIC8vIGFkZHI6IGFkZHJlc3MKCWludCAwIC8vIGFwcDogdWludDY0CglieXRlIDB4NmI2NTc5IC8vICJrZXkiCglhcHBfbG9jYWxfZ2V0X2V4CgoJLy8gbG9jYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IGFwcC5sb2NhbFN0YXRlKCBhZGRyLCAna2V5JyApCglhc3NlcnQKCXJldHN1YgoKLy8gYSgpdWludDY0CiphYmlfcm91dGVfYToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhKCl1aW50NjQKCWNhbGxzdWIgYQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGEoKTogdWludDY0CmE6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjUyNwoJLy8gcmV0dXJuIDM7CglpbnQgMwoJcmV0c3ViCgovLyBiKCl1aW50NjQKKmFiaV9yb3V0ZV9iOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGIoKXVpbnQ2NAoJY2FsbHN1YiBiCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYigpOiB1aW50NjQKYjoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTMxCgkvLyByZXR1cm4gNTsKCWludCA1CglyZXRzdWIKCi8vIHVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQKKmFiaV9yb3V0ZV91bnVzZWRNZXRob2RWYWx1ZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB1bnVzZWRNZXRob2RWYWx1ZSgpdWludDY0CgljYWxsc3ViIHVudXNlZE1ldGhvZFZhbHVlCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW51c2VkTWV0aG9kVmFsdWUoKTogdWludDY0CnVudXNlZE1ldGhvZFZhbHVlOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1MzUKCS8vIHRoaXMuYSgpCgljYWxsc3ViIGEKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTM2CgkvLyByZXR1cm4gdGhpcy5iKCk7CgljYWxsc3ViIGIKCXJldHN1YgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCl1aW50NjQKCWNhbGxzdWIgcmVhc3NpZ25lZE5vbkZpcnN0VmFyCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcmVhc3NpZ25lZE5vbkZpcnN0VmFyKCk6IHVpbnQ2NApyZWFzc2lnbmVkTm9uRmlyc3RWYXI6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NDcKCS8vIGEgPSAxIGFzIHVpbnQ2NAoJaW50IDEKCWZyYW1lX2J1cnkgMCAvLyBhOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU0OAoJLy8gYiA9IHRoaXMuYXBwLmlkCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTQ5CgkvLyBhCglmcmFtZV9kaWcgMCAvLyBhOiB1aW50NjQKCWJ6ICppZjJfZW5kCgoJLy8gKmlmMl9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1MAoJLy8gYiA9IDIKCWludCAyCglmcmFtZV9idXJ5IDEgLy8gYjogdWludDY0CgoqaWYyX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9nZW5lcmFsLmFsZ28udHM6NTUzCgkvLyByZXR1cm4gYjsKCWZyYW1lX2RpZyAxIC8vIGI6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZnZMdigpdm9pZAoqYWJpX3JvdXRlX2Z2THY6CgkvLyBleGVjdXRlIGZ2THYoKXZvaWQKCWNhbGxzdWIgZnZMdgoJaW50IDEKCXJldHVybgoKLy8gZnZMdigpOiB2b2lkCmZ2THY6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjU1NwoJLy8gYXNzZXJ0KHRoaXMudHhuLmZpcnN0VmFsaWQpCgl0eG4gRmlyc3RWYWxpZAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czo1NTgKCS8vIGFzc2VydCh0aGlzLnR4bi5sYXN0VmFsaWQpCgl0eG4gTGFzdFZhbGlkCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInR4blR5cGVFbnVtKCl2b2lkIgoJbWV0aG9kICJ0eG5Hcm91cExlbmd0aCgpdm9pZCIKCW1ldGhvZCAiYXNzZXJ0cyhib29sLGJvb2wpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbUFyZyhwYXkpdm9pZCIKCW1ldGhvZCAidmVyaWZ5VHhuRnJvbVR4bkdyb3VwKCl2b2lkIgoJbWV0aG9kICJ2ZXJpZnlUeG5Db25kaXRpb24oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bkluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInZlcmlmeVR4bk5vdEluY2x1ZGVkSW4oKXZvaWQiCgltZXRob2QgInN1Ym1pdFBlbmRpbmdHcm91cCgpdm9pZCIKCW1ldGhvZCAibWV0aG9kV2l0aFR4bkFyZ3MoKXZvaWQiCgltZXRob2QgInNoaWZ0KCl2b2lkIgoJbWV0aG9kICJmcm9tQnl0ZXMoKXZvaWQiCgltZXRob2QgImZyb21VaW50NjQoKXZvaWQiCgltZXRob2QgImJ6ZXJvRnVuY3Rpb24oKXZvaWQiCgltZXRob2QgImV2ZW50cygpdm9pZCIKCW1ldGhvZCAibGV0T3B0aW1pemF0aW9uKHVpbnQ2NFtdKXVpbnQ2NFtdIgoJbWV0aG9kICJzdGF0aWNDb250cmFjdFByb3BlcnRpZXMoKXZvaWQiCgltZXRob2QgIm51bWJlclRvU3RyaW5nKCl2b2lkIgoJbWV0aG9kICJtZXRob2RPblBhcmVucygpdm9pZCIKCW1ldGhvZCAic3RyaW5nU3Vic3RyaW5nKCl2b2lkIgoJbWV0aG9kICJpZFByb3BlcnR5KCl2b2lkIgoJbWV0aG9kICJzY3JhdGNoU2xvdCgpdm9pZCIKCW1ldGhvZCAiZWNkc2EoKXZvaWQiCgltZXRob2QgInZlcmlmeVR4blR5cGVzKCl2b2lkIgoJbWV0aG9kICJzdHJpbmdQbHVzRXF1YWxzKCl2b2lkIgoJbWV0aG9kICJpbXBvcnRlZFByb2dyYW0oKWJ5dGVbXSIKCW1ldGhvZCAiY2FsbFByaXZhdGVEZWZpbmVkTGF0ZXIoKXZvaWQiCgltZXRob2QgImludGVyYWxQdWJsaWNNZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImNhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCgpdm9pZCIKCW1ldGhvZCAiYXBwTG9hZFNjcmF0Y2goKXZvaWQiCgltZXRob2QgInVpbnROV2l0aFVuZGVyc2NvcmUoKXVpbnQyNTYiCgltZXRob2QgIm9wVXAoKXZvaWQiCgltZXRob2QgInJldHVyblZhbHVlT25Bc3NpZ25tZW50KClzdHJpbmciCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAicmV0dXJuU3RvcmFnZVZhbHVlT25Bc3NpZ25tZW50KCl1aW50NjQiCgltZXRob2QgInJldHVybk9wZXJhdG9yQXNzaWdubWVudFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCgpdWludDY0IgoJbWV0aG9kICJyZXR1cm5BcnJheUluU3RvcmFnZVZhbHVlT25PcGVyYXRvckFzc2lnbm1lbnQoKXVpbnQ2NCIKCW1ldGhvZCAiY29uc3RzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRXaXRoTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3Bjb2RlQWxpYXNlcygpdm9pZCIKCW1ldGhvZCAidnJmVmVyaWZ5T3AoKXZvaWQiCgltZXRob2QgImVjTWF0aCgpdm9pZCIKCW1ldGhvZCAiZ2l0eG4oKXZvaWQiCgltZXRob2QgImdldFNldEJ5dGVzKCl2b2lkIgoJbWV0aG9kICJnZXRTZXRVaW50NjQoKXZvaWQiCgltZXRob2QgImJsb2NrT3AoKXZvaWQiCgltZXRob2QgImI2NCgpdm9pZCIKCW1ldGhvZCAianNvbigpdm9pZCIKCW1ldGhvZCAiYml0bGVuT3AoKXZvaWQiCgltZXRob2QgImNvbXB1dGVkQ29uc3QoKXZvaWQiCgltZXRob2QgIm11bHRpQ29tcHV0ZWRDb25zdCgpdm9pZCIKCW1ldGhvZCAicmVhZFNjaGVtYSgpdm9pZCIKCW1ldGhvZCAiY29tcGFyaXNvbk9yKClib29sIgoJbWV0aG9kICJ0eG5BcmdzTWV0aG9kKHBheSl2b2lkIgoJbWV0aG9kICJjYWxsVHhuQXJnc01ldGhvZCgpdm9pZCIKCW1ldGhvZCAic3RhdGljVmFsdWVMZW4odWludDI1Nil2b2lkIgoJbWV0aG9kICJzdGF0aWNUeXBlTGVuKCl2b2lkIgoJbWV0aG9kICJkeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImluY3JlbWVudFNjcmF0Y2hTbG90KCl2b2lkIgoJbWV0aG9kICJpbmNyZW1lbnREeW5hbWljU2NyYXRjaFNsb3QoKXZvaWQiCgltZXRob2QgImZyb21BZGRyZXNzKCl2b2lkIgoJbWV0aG9kICJlYXJseVJldHVybih1aW50NjQpdWludDY0IgoJbWV0aG9kICJhc3NldE1ldGhvZEFyZ3MoKXZvaWQiCgltZXRob2QgIm11bHRpcGxlUHJvZ3JhbVBhZ2VzKCl2b2lkIgoJbWV0aG9kICJhc3NlcnRDb21tZW50KCl2b2lkIgoJbWV0aG9kICJ0aHJvd0Vycm9yTWVzc2FnZSgpdm9pZCIKCW1ldGhvZCAib3JMaXRlcmFsVHlwZSh1aW50NjQsdWludDY0KXZvaWQiCgltZXRob2QgIm11bHRpbGluZUZ1bmN0aW9uQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYSgpdWludDY0IgoJbWV0aG9kICJiKCl1aW50NjQiCgltZXRob2QgInVudXNlZE1ldGhvZFZhbHVlKCl1aW50NjQiCgltZXRob2QgInJlYXNzaWduZWROb25GaXJzdFZhcigpdWludDY0IgoJbWV0aG9kICJmdkx2KCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90eG5UeXBlRW51bSAqYWJpX3JvdXRlX3R4bkdyb3VwTGVuZ3RoICphYmlfcm91dGVfYXNzZXJ0cyAqYWJpX3JvdXRlX3ZlcmlmeVR4bkZyb21BcmcgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Gcm9tVHhuR3JvdXAgKmFiaV9yb3V0ZV92ZXJpZnlUeG5Db25kaXRpb24gKmFiaV9yb3V0ZV92ZXJpZnlUeG5JbmNsdWRlZEluICphYmlfcm91dGVfdmVyaWZ5VHhuTm90SW5jbHVkZWRJbiAqYWJpX3JvdXRlX3N1Ym1pdFBlbmRpbmdHcm91cCAqYWJpX3JvdXRlX21ldGhvZFdpdGhUeG5BcmdzICphYmlfcm91dGVfc2hpZnQgKmFiaV9yb3V0ZV9mcm9tQnl0ZXMgKmFiaV9yb3V0ZV9mcm9tVWludDY0ICphYmlfcm91dGVfYnplcm9GdW5jdGlvbiAqYWJpX3JvdXRlX2V2ZW50cyAqYWJpX3JvdXRlX2xldE9wdGltaXphdGlvbiAqYWJpX3JvdXRlX3N0YXRpY0NvbnRyYWN0UHJvcGVydGllcyAqYWJpX3JvdXRlX251bWJlclRvU3RyaW5nICphYmlfcm91dGVfbWV0aG9kT25QYXJlbnMgKmFiaV9yb3V0ZV9zdHJpbmdTdWJzdHJpbmcgKmFiaV9yb3V0ZV9pZFByb3BlcnR5ICphYmlfcm91dGVfc2NyYXRjaFNsb3QgKmFiaV9yb3V0ZV9lY2RzYSAqYWJpX3JvdXRlX3ZlcmlmeVR4blR5cGVzICphYmlfcm91dGVfc3RyaW5nUGx1c0VxdWFscyAqYWJpX3JvdXRlX2ltcG9ydGVkUHJvZ3JhbSAqYWJpX3JvdXRlX2NhbGxQcml2YXRlRGVmaW5lZExhdGVyICphYmlfcm91dGVfaW50ZXJhbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2NhbGxJbnRlcm5hbFB1YmxpY01ldGhvZCAqYWJpX3JvdXRlX2FwcExvYWRTY3JhdGNoICphYmlfcm91dGVfdWludE5XaXRoVW5kZXJzY29yZSAqYWJpX3JvdXRlX29wVXAgKmFiaV9yb3V0ZV9yZXR1cm5WYWx1ZU9uQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5TdG9yYWdlVmFsdWVPbkFzc2lnbm1lbnQgKmFiaV9yb3V0ZV9yZXR1cm5PcGVyYXRvckFzc2lnbm1lbnRWYWx1ZSAqYWJpX3JvdXRlX3JldHVybkFycmF5VmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX3JldHVybkFycmF5SW5TdG9yYWdlVmFsdWVPbk9wZXJhdG9yQXNzaWdubWVudCAqYWJpX3JvdXRlX2NvbnN0cyAqYWJpX3JvdXRlX2Fzc2VydFdpdGhNZXNzYWdlICphYmlfcm91dGVfb3Bjb2RlQWxpYXNlcyAqYWJpX3JvdXRlX3ZyZlZlcmlmeU9wICphYmlfcm91dGVfZWNNYXRoICphYmlfcm91dGVfZ2l0eG4gKmFiaV9yb3V0ZV9nZXRTZXRCeXRlcyAqYWJpX3JvdXRlX2dldFNldFVpbnQ2NCAqYWJpX3JvdXRlX2Jsb2NrT3AgKmFiaV9yb3V0ZV9iNjQgKmFiaV9yb3V0ZV9qc29uICphYmlfcm91dGVfYml0bGVuT3AgKmFiaV9yb3V0ZV9jb21wdXRlZENvbnN0ICphYmlfcm91dGVfbXVsdGlDb21wdXRlZENvbnN0ICphYmlfcm91dGVfcmVhZFNjaGVtYSAqYWJpX3JvdXRlX2NvbXBhcmlzb25PciAqYWJpX3JvdXRlX3R4bkFyZ3NNZXRob2QgKmFiaV9yb3V0ZV9jYWxsVHhuQXJnc01ldGhvZCAqYWJpX3JvdXRlX3N0YXRpY1ZhbHVlTGVuICphYmlfcm91dGVfc3RhdGljVHlwZUxlbiAqYWJpX3JvdXRlX2R5bmFtaWNTY3JhdGNoU2xvdCAqYWJpX3JvdXRlX2luY3JlbWVudFNjcmF0Y2hTbG90ICphYmlfcm91dGVfaW5jcmVtZW50RHluYW1pY1NjcmF0Y2hTbG90ICphYmlfcm91dGVfZnJvbUFkZHJlc3MgKmFiaV9yb3V0ZV9lYXJseVJldHVybiAqYWJpX3JvdXRlX2Fzc2V0TWV0aG9kQXJncyAqYWJpX3JvdXRlX211bHRpcGxlUHJvZ3JhbVBhZ2VzICphYmlfcm91dGVfYXNzZXJ0Q29tbWVudCAqYWJpX3JvdXRlX3Rocm93RXJyb3JNZXNzYWdlICphYmlfcm91dGVfb3JMaXRlcmFsVHlwZSAqYWJpX3JvdXRlX211bHRpbGluZUZ1bmN0aW9uQ2FsbCAqYWJpX3JvdXRlX2EgKmFiaV9yb3V0ZV9iICphYmlfcm91dGVfdW51c2VkTWV0aG9kVmFsdWUgKmFiaV9yb3V0ZV9yZWFzc2lnbmVkTm9uRmlyc3RWYXIgKmFiaV9yb3V0ZV9mdkx2CgoJLy8gISEhISBXQVJOSU5HOiBub24tQUJJIHJvdXRpbmcKCWNhbGxzdWIgbm9uQWJpCglpbnQgMQoJcmV0dXJuCgoqaW50VG9Bc2NpaToKCXByb3RvIDEgMQoJYnl0ZSAweDMwMzEzMjMzMzQzNTM2MzczODM5IC8vICIwMTIzNDU2Nzg5IgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEKCWV4dHJhY3QzCglyZXRzdWIKCQoKKml0b2E6Cglwcm90byAxIDEKCWZyYW1lX2RpZyAtMSAvLyBpOiB1aW50NjQKCWludCAwCgk9PQoJYnogKml0b2FfaWZfZW5kCglieXRlIDB4MzAKCXJldHN1YgoKKml0b2FfaWZfZW5kOgoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCglpbnQgMAoJPgoJYnogKml0b2FfdGVybmFyeV9mYWxzZQoJZnJhbWVfZGlnIC0xIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgkvCgljYWxsc3ViICppdG9hCgliICppdG9hX3Rlcm5hcnlfZW5kCgoqaXRvYV90ZXJuYXJ5X2ZhbHNlOgoJYnl0ZSAweCAvLyAiIgoKKml0b2FfdGVybmFyeV9lbmQ6CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMTAKCSUKCWNhbGxzdWIgKmludFRvQXNjaWkKCWNvbmNhdAoJcmV0c3Vi", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "scratchVariables": { diff --git a/tests/contracts/artifacts/IfTest.approval.teal b/tests/contracts/artifacts/IfTest.approval.teal index 033e86434..6995135ad 100644 --- a/tests/contracts/artifacts/IfTest.approval.teal +++ b/tests/contracts/artifacts/IfTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/IfTest.arc32.json b/tests/contracts/artifacts/IfTest.arc32.json index 6cb465410..2a2044ffc 100644 --- a/tests/contracts/artifacts/IfTest.arc32.json +++ b/tests/contracts/artifacts/IfTest.arc32.json @@ -109,7 +109,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW5nbGVJZihib29sKXN0cmluZwoqYWJpX3JvdXRlX3NpbmdsZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMCkgZm9yIHNpbmdsZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIHNpbmdsZUlmKGJvb2wpc3RyaW5nCgljYWxsc3ViIHNpbmdsZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNpbmdsZUlmKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKc2luZ2xlSWY6Cglwcm90byAxIDEKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcwKSBmb3IgaWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE1CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmMV9lbHNlCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxNgoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmMV9lbmQKCippZjFfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZwoqYWJpX3JvdXRlX2lmRWxzZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMSkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmKGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWYoYXJnMDogYm9vbGVhbiwgYXJnMTogYm9vbGVhbik6IHN0cmluZwppZkVsc2VJZjoKCXByb3RvIDIgMQoKCS8vICppZjJfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoyMwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjJfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI0CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWYyX2VuZAoKKmlmMl9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI1CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCippZjJfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjkKCS8vIHJldHVybiAnZW5kJzsKCWJ5dGUgMHg2NTZlNjQgLy8gImVuZCIKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBpZkVsc2VJZkVsc2UoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2VJZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWZFbHNlKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlOgoJcHJvdG8gMiAxCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjMzCgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmM19lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzQKCS8vIHJldHVybiAnaWYnOwoJYnl0ZSAweDY5NjYgLy8gImlmIgoJcmV0c3ViCgliICppZjNfZW5kCgoqaWYzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzUKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWYzX2Vsc2UKCgkvLyAqaWYzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCWIgKmlmM19lbmQKCippZjNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjM4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYzX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzI6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcyKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIGlmRWxzZUlmRWxzZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlSWY6Cglwcm90byAzIDEKCgkvLyAqaWY0X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDMKCS8vIGFyZzAKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBib29sZWFuCglieiAqaWY0X2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmNF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNF9lbmQKCippZjRfZWxzZWlmMV9jb25kaXRpb246CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NQoJLy8gYXJnMQoJZnJhbWVfZGlnIC0yIC8vIGFyZzE6IGJvb2xlYW4KCWJ6ICppZjRfZWxzZWlmMl9jb25kaXRpb24KCgkvLyAqaWY0X2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDYKCS8vIHJldHVybiAnZWxzZSBpZiAxJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzEgLy8gImVsc2UgaWYgMSIKCXJldHN1YgoJYiAqaWY0X2VuZAoKKmlmNF9lbHNlaWYyX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjQ3CgkvLyBhcmcyCglmcmFtZV9kaWcgLTMgLy8gYXJnMjogYm9vbGVhbgoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDgKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoKKmlmNF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1MQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2VJZkVsc2VJZkVsc2UoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWZFbHNlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcyOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMikgZm9yIGlmRWxzZUlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGFyZzEpIGZvciBpZkVsc2VJZkVsc2VJZkVsc2UgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmRWxzZUlmRWxzZShib29sLGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWZFbHNlSWZFbHNlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmRWxzZShhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuLCBhcmcyOiBib29sZWFuKTogc3RyaW5nCmlmRWxzZUlmRWxzZUlmRWxzZToKCXByb3RvIDMgMQoKCS8vICppZjVfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1NQoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjVfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU2CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU3CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmNV9lbHNlaWYyX2NvbmRpdGlvbgoKCS8vICppZjVfZWxzZWlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1OAoJLy8gcmV0dXJuICdlbHNlIGlmIDEnOwoJYnl0ZSAweDY1NmM3MzY1MjA2OTY2MjAzMSAvLyAiZWxzZSBpZiAxIgoJcmV0c3ViCgliICppZjVfZW5kCgoqaWY1X2Vsc2VpZjJfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NTkKCS8vIGFyZzIKCWZyYW1lX2RpZyAtMyAvLyBhcmcyOiBib29sZWFuCglieiAqaWY1X2Vsc2UKCgkvLyAqaWY1X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjAKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjIKCS8vIHJldHVybiAnZWxzZSc7CglieXRlIDB4NjU2YzczNjUgLy8gImVsc2UiCglyZXRzdWIKCippZjVfZW5kOgoJcmV0c3ViCgovLyBuZXN0ZWRJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcwKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWYoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBuZXN0ZWRJZgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRJZihhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmOgoJcHJvdG8gMiAxCgoJLy8gKmlmNl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjY3CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmNl9lbHNlCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyAqaWY3X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjgKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWY3X2VuZAoKCS8vICppZjdfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjkKCS8vIHJldHVybiAnbmVzdGVkIGlmJzsKCWJ5dGUgMHg2ZTY1NzM3NDY1NjQyMDY5NjYgLy8gIm5lc3RlZCBpZiIKCXJldHN1YgoKKmlmN19lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3MQoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNl9lbmQKCippZjZfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjczCgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY2X2VuZDoKCXJldHN1YgoKLy8gYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9icmFja2V0bGVzc0lmRWxzZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzApIGZvciBicmFja2V0bGVzc0lmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBicmFja2V0bGVzc0lmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBicmFja2V0bGVzc0lmRWxzZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmFja2V0bGVzc0lmRWxzZShhcmcwOiBib29sZWFuKTogc3RyaW5nCmJyYWNrZXRsZXNzSWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmOF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc4CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmOF9lbHNlCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3OAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmOF9lbmQKCippZjhfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc5CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY4X2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CiphYmlfcm91dGVfbmVzdGVkVGVybmFyeToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzEpIGZvciBuZXN0ZWRUZXJuYXJ5IG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIG5lc3RlZFRlcm5hcnkgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CgljYWxsc3ViIG5lc3RlZFRlcm5hcnkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRUZXJuYXJ5KGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiB1aW50NjQKbmVzdGVkVGVybmFyeToKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjg0CgkvLyByZXR1cm4gYXJnMCA/IDEgOiBhcmcxID8gMiA6IDM7CglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKnRlcm5hcnkxX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglpbnQgMwoKKnRlcm5hcnkxX2VuZDoKCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIHN0cmluZ0lmKHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RyaW5nSWYoc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdJZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ0lmKGFyZzA6IHN0cmluZyk6IHVpbnQ2NApzdHJpbmdJZjoKCXByb3RvIDEgMQoKCS8vICppZjlfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4OAoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IHN0cmluZwoJYnl0ZSAweAoJYiE9CglieiAqaWY5X2VuZAoKCS8vICppZjlfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6ODkKCS8vIHJldHVybiAxOwoJaW50IDEKCXJldHN1YgoKKmlmOV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5MgoJLy8gcmV0dXJuIDI7CglpbnQgMgoJcmV0c3ViCgovLyBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdUZXJuYXJ5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKCWNhbGxzdWIgc3RyaW5nVGVybmFyeQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1Rlcm5hcnkoYXJnMDogc3RyaW5nKTogdWludDY0CnN0cmluZ1Rlcm5hcnk6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5NgoJLy8gcmV0dXJuIGFyZzAgPyAxIDogMjsKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBzdHJpbmcKCWJ5dGUgMHgKCWIhPQoJYnogKnRlcm5hcnkyX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTJfZW5kCgoqdGVybmFyeTJfZmFsc2U6CglpbnQgMgoKKnRlcm5hcnkyX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29uZGl0aW9uYWwodWludDE2KXZvaWQKKmFiaV9yb3V0ZV9zbWFsbFVpbnRDb25kaXRpb25hbDoKCS8vIGE6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBzbWFsbFVpbnRDb25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbmRpdGlvbmFsKHVpbnQxNil2b2lkCgljYWxsc3ViIHNtYWxsVWludENvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb25kaXRpb25hbChhOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbmRpdGlvbmFsOgoJcHJvdG8gMSAwCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDAKCS8vIGEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWJ5dGUgMHgKCWIhPQoJYnogKmlmMTBfZW5kCgoJLy8gKmlmMTBfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTAxCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEwX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZAoqYWJpX3JvdXRlX3NtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQxNgoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCh1aW50MTYsdWludDE2KXZvaWQKCWNhbGxzdWIgc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwoYTogdWludDE2LCBiOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCXByb3RvIDIgMAoKCS8vICppZjExX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTA2CgkvLyBhIDw9IGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MTYKCTw9CglieiAqaWYxMV9lbmQKCgkvLyAqaWYxMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDcKCS8vIGxvZygnZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWxvZwoKKmlmMTFfZW5kOgoJcmV0c3ViCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKHVpbnQyNTYsdWludDI1Nil2b2lkCiphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB2b2lkCnVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWw6Cglwcm90byAyIDAKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExMgoJLy8gYSA8PSBiCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWI8PQoJYnogKmlmMTJfZW5kCgoJLy8gKmlmMTJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTEzCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEyX2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWZJbkVsc2VJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBuZXN0ZWRJZkluRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIG5lc3RlZElmSW5FbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIG5lc3RlZElmSW5FbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkSWZJbkVsc2VJZihhOiBib29sZWFuLCBiOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmSW5FbHNlSWY6Cglwcm90byAyIDEKCgkvLyAqaWYxM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExOAoJLy8gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCWJ6ICppZjEzX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMTNfY29uc2VxdWVudAoJLy8gKmlmMTRfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMTkKCS8vIGIKCWZyYW1lX2RpZyAtMiAvLyBiOiBib29sZWFuCglieiAqaWYxNF9lbHNlCgoJLy8gKmlmMTRfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTIwCgkvLyByZXR1cm4gJ2EgYW5kIGInOwoJYnl0ZSAweDYxMjA2MTZlNjQyMDYyIC8vICJhIGFuZCBiIgoJcmV0c3ViCgliICppZjE0X2VuZAoKKmlmMTRfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyMgoJLy8gcmV0dXJuICdhJzsKCWJ5dGUgMHg2MSAvLyAiYSIKCXJldHN1YgoKKmlmMTRfZW5kOgoJYiAqaWYxM19lbmQKCippZjEzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI0CgkvLyBiCglmcmFtZV9kaWcgLTIgLy8gYjogYm9vbGVhbgoJYnogKmlmMTNfZWxzZQoKCS8vICppZjEzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI1CgkvLyByZXR1cm4gJ2InOwoJYnl0ZSAweDYyIC8vICJiIgoJcmV0c3ViCgliICppZjEzX2VuZAoKKmlmMTNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyNwoJLy8gcmV0dXJuICduZWl0aGVyJzsKCWJ5dGUgMHg2ZTY1Njk3NDY4NjU3MiAvLyAibmVpdGhlciIKCXJldHN1YgoKKmlmMTNfZW5kOgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2luZ2xlSWYoYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZShib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZUlmRWxzZUlmKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlSWZFbHNlKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAibmVzdGVkSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmciCgltZXRob2QgIm5lc3RlZFRlcm5hcnkoYm9vbCxib29sKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nSWYoc3RyaW5nKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nVGVybmFyeShzdHJpbmcpdWludDY0IgoJbWV0aG9kICJzbWFsbFVpbnRDb25kaXRpb25hbCh1aW50MTYpdm9pZCIKCW1ldGhvZCAic21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZCIKCW1ldGhvZCAidWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZCIKCW1ldGhvZCAibmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zaW5nbGVJZiAqYWJpX3JvdXRlX2lmRWxzZSAqYWJpX3JvdXRlX2lmRWxzZUlmICphYmlfcm91dGVfaWZFbHNlSWZFbHNlICphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWYgKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2VJZkVsc2UgKmFiaV9yb3V0ZV9uZXN0ZWRJZiAqYWJpX3JvdXRlX2JyYWNrZXRsZXNzSWZFbHNlICphYmlfcm91dGVfbmVzdGVkVGVybmFyeSAqYWJpX3JvdXRlX3N0cmluZ0lmICphYmlfcm91dGVfc3RyaW5nVGVybmFyeSAqYWJpX3JvdXRlX3NtYWxsVWludENvbmRpdGlvbmFsICphYmlfcm91dGVfc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsICphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCAqYWJpX3JvdXRlX25lc3RlZElmSW5FbHNlSWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW5nbGVJZihib29sKXN0cmluZwoqYWJpX3JvdXRlX3NpbmdsZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMCkgZm9yIHNpbmdsZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIHNpbmdsZUlmKGJvb2wpc3RyaW5nCgljYWxsc3ViIHNpbmdsZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNpbmdsZUlmKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKc2luZ2xlSWY6Cglwcm90byAxIDEKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcwKSBmb3IgaWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE1CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmMV9lbHNlCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxNgoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmMV9lbmQKCippZjFfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZwoqYWJpX3JvdXRlX2lmRWxzZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMSkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmKGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWYoYXJnMDogYm9vbGVhbiwgYXJnMTogYm9vbGVhbik6IHN0cmluZwppZkVsc2VJZjoKCXByb3RvIDIgMQoKCS8vICppZjJfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoyMwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjJfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI0CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWYyX2VuZAoKKmlmMl9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI1CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCippZjJfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjkKCS8vIHJldHVybiAnZW5kJzsKCWJ5dGUgMHg2NTZlNjQgLy8gImVuZCIKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBpZkVsc2VJZkVsc2UoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2VJZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWZFbHNlKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlOgoJcHJvdG8gMiAxCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjMzCgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmM19lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzQKCS8vIHJldHVybiAnaWYnOwoJYnl0ZSAweDY5NjYgLy8gImlmIgoJcmV0c3ViCgliICppZjNfZW5kCgoqaWYzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzUKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWYzX2Vsc2UKCgkvLyAqaWYzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCWIgKmlmM19lbmQKCippZjNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjM4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYzX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzI6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcyKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIGlmRWxzZUlmRWxzZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlSWY6Cglwcm90byAzIDEKCgkvLyAqaWY0X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDMKCS8vIGFyZzAKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBib29sZWFuCglieiAqaWY0X2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmNF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNF9lbmQKCippZjRfZWxzZWlmMV9jb25kaXRpb246CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NQoJLy8gYXJnMQoJZnJhbWVfZGlnIC0yIC8vIGFyZzE6IGJvb2xlYW4KCWJ6ICppZjRfZWxzZWlmMl9jb25kaXRpb24KCgkvLyAqaWY0X2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDYKCS8vIHJldHVybiAnZWxzZSBpZiAxJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzEgLy8gImVsc2UgaWYgMSIKCXJldHN1YgoJYiAqaWY0X2VuZAoKKmlmNF9lbHNlaWYyX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjQ3CgkvLyBhcmcyCglmcmFtZV9kaWcgLTMgLy8gYXJnMjogYm9vbGVhbgoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDgKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoKKmlmNF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1MQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2VJZkVsc2VJZkVsc2UoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWZFbHNlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcyOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMikgZm9yIGlmRWxzZUlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGFyZzEpIGZvciBpZkVsc2VJZkVsc2VJZkVsc2UgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmRWxzZUlmRWxzZShib29sLGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWZFbHNlSWZFbHNlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmRWxzZShhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuLCBhcmcyOiBib29sZWFuKTogc3RyaW5nCmlmRWxzZUlmRWxzZUlmRWxzZToKCXByb3RvIDMgMQoKCS8vICppZjVfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1NQoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjVfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU2CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU3CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmNV9lbHNlaWYyX2NvbmRpdGlvbgoKCS8vICppZjVfZWxzZWlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1OAoJLy8gcmV0dXJuICdlbHNlIGlmIDEnOwoJYnl0ZSAweDY1NmM3MzY1MjA2OTY2MjAzMSAvLyAiZWxzZSBpZiAxIgoJcmV0c3ViCgliICppZjVfZW5kCgoqaWY1X2Vsc2VpZjJfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NTkKCS8vIGFyZzIKCWZyYW1lX2RpZyAtMyAvLyBhcmcyOiBib29sZWFuCglieiAqaWY1X2Vsc2UKCgkvLyAqaWY1X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjAKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjIKCS8vIHJldHVybiAnZWxzZSc7CglieXRlIDB4NjU2YzczNjUgLy8gImVsc2UiCglyZXRzdWIKCippZjVfZW5kOgoJcmV0c3ViCgovLyBuZXN0ZWRJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcwKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWYoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBuZXN0ZWRJZgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRJZihhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmOgoJcHJvdG8gMiAxCgoJLy8gKmlmNl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjY3CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmNl9lbHNlCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyAqaWY3X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjgKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWY3X2VuZAoKCS8vICppZjdfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjkKCS8vIHJldHVybiAnbmVzdGVkIGlmJzsKCWJ5dGUgMHg2ZTY1NzM3NDY1NjQyMDY5NjYgLy8gIm5lc3RlZCBpZiIKCXJldHN1YgoKKmlmN19lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3MQoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNl9lbmQKCippZjZfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjczCgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY2X2VuZDoKCXJldHN1YgoKLy8gYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9icmFja2V0bGVzc0lmRWxzZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzApIGZvciBicmFja2V0bGVzc0lmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBicmFja2V0bGVzc0lmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBicmFja2V0bGVzc0lmRWxzZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmFja2V0bGVzc0lmRWxzZShhcmcwOiBib29sZWFuKTogc3RyaW5nCmJyYWNrZXRsZXNzSWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmOF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc4CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmOF9lbHNlCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3OAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmOF9lbmQKCippZjhfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc5CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY4X2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CiphYmlfcm91dGVfbmVzdGVkVGVybmFyeToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzEpIGZvciBuZXN0ZWRUZXJuYXJ5IG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIG5lc3RlZFRlcm5hcnkgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CgljYWxsc3ViIG5lc3RlZFRlcm5hcnkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRUZXJuYXJ5KGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiB1aW50NjQKbmVzdGVkVGVybmFyeToKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjg0CgkvLyByZXR1cm4gYXJnMCA/IDEgOiBhcmcxID8gMiA6IDM7CglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKnRlcm5hcnkxX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglpbnQgMwoKKnRlcm5hcnkxX2VuZDoKCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIHN0cmluZ0lmKHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RyaW5nSWYoc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdJZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ0lmKGFyZzA6IHN0cmluZyk6IHVpbnQ2NApzdHJpbmdJZjoKCXByb3RvIDEgMQoKCS8vICppZjlfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4OAoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IHN0cmluZwoJYnl0ZSAweAoJYiE9CglieiAqaWY5X2VuZAoKCS8vICppZjlfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6ODkKCS8vIHJldHVybiAxOwoJaW50IDEKCXJldHN1YgoKKmlmOV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5MgoJLy8gcmV0dXJuIDI7CglpbnQgMgoJcmV0c3ViCgovLyBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdUZXJuYXJ5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKCWNhbGxzdWIgc3RyaW5nVGVybmFyeQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1Rlcm5hcnkoYXJnMDogc3RyaW5nKTogdWludDY0CnN0cmluZ1Rlcm5hcnk6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5NgoJLy8gcmV0dXJuIGFyZzAgPyAxIDogMjsKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBzdHJpbmcKCWJ5dGUgMHgKCWIhPQoJYnogKnRlcm5hcnkyX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTJfZW5kCgoqdGVybmFyeTJfZmFsc2U6CglpbnQgMgoKKnRlcm5hcnkyX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29uZGl0aW9uYWwodWludDE2KXZvaWQKKmFiaV9yb3V0ZV9zbWFsbFVpbnRDb25kaXRpb25hbDoKCS8vIGE6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBzbWFsbFVpbnRDb25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbmRpdGlvbmFsKHVpbnQxNil2b2lkCgljYWxsc3ViIHNtYWxsVWludENvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb25kaXRpb25hbChhOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbmRpdGlvbmFsOgoJcHJvdG8gMSAwCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDAKCS8vIGEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWJ5dGUgMHgKCWIhPQoJYnogKmlmMTBfZW5kCgoJLy8gKmlmMTBfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTAxCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEwX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZAoqYWJpX3JvdXRlX3NtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQxNgoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCh1aW50MTYsdWludDE2KXZvaWQKCWNhbGxzdWIgc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwoYTogdWludDE2LCBiOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCXByb3RvIDIgMAoKCS8vICppZjExX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTA2CgkvLyBhIDw9IGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MTYKCTw9CglieiAqaWYxMV9lbmQKCgkvLyAqaWYxMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDcKCS8vIGxvZygnZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWxvZwoKKmlmMTFfZW5kOgoJcmV0c3ViCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKHVpbnQyNTYsdWludDI1Nil2b2lkCiphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB2b2lkCnVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWw6Cglwcm90byAyIDAKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExMgoJLy8gYSA8PSBiCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWI8PQoJYnogKmlmMTJfZW5kCgoJLy8gKmlmMTJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTEzCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEyX2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWZJbkVsc2VJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBuZXN0ZWRJZkluRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIG5lc3RlZElmSW5FbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIG5lc3RlZElmSW5FbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkSWZJbkVsc2VJZihhOiBib29sZWFuLCBiOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmSW5FbHNlSWY6Cglwcm90byAyIDEKCgkvLyAqaWYxM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExOAoJLy8gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCWJ6ICppZjEzX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMTNfY29uc2VxdWVudAoJLy8gKmlmMTRfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMTkKCS8vIGIKCWZyYW1lX2RpZyAtMiAvLyBiOiBib29sZWFuCglieiAqaWYxNF9lbHNlCgoJLy8gKmlmMTRfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTIwCgkvLyByZXR1cm4gJ2EgYW5kIGInOwoJYnl0ZSAweDYxMjA2MTZlNjQyMDYyIC8vICJhIGFuZCBiIgoJcmV0c3ViCgliICppZjE0X2VuZAoKKmlmMTRfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyMgoJLy8gcmV0dXJuICdhJzsKCWJ5dGUgMHg2MSAvLyAiYSIKCXJldHN1YgoKKmlmMTRfZW5kOgoJYiAqaWYxM19lbmQKCippZjEzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI0CgkvLyBiCglmcmFtZV9kaWcgLTIgLy8gYjogYm9vbGVhbgoJYnogKmlmMTNfZWxzZQoKCS8vICppZjEzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI1CgkvLyByZXR1cm4gJ2InOwoJYnl0ZSAweDYyIC8vICJiIgoJcmV0c3ViCgliICppZjEzX2VuZAoKKmlmMTNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyNwoJLy8gcmV0dXJuICduZWl0aGVyJzsKCWJ5dGUgMHg2ZTY1Njk3NDY4NjU3MiAvLyAibmVpdGhlciIKCXJldHN1YgoKKmlmMTNfZW5kOgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2luZ2xlSWYoYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZShib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZUlmRWxzZUlmKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlSWZFbHNlKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAibmVzdGVkSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmciCgltZXRob2QgIm5lc3RlZFRlcm5hcnkoYm9vbCxib29sKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nSWYoc3RyaW5nKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nVGVybmFyeShzdHJpbmcpdWludDY0IgoJbWV0aG9kICJzbWFsbFVpbnRDb25kaXRpb25hbCh1aW50MTYpdm9pZCIKCW1ldGhvZCAic21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZCIKCW1ldGhvZCAidWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZCIKCW1ldGhvZCAibmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zaW5nbGVJZiAqYWJpX3JvdXRlX2lmRWxzZSAqYWJpX3JvdXRlX2lmRWxzZUlmICphYmlfcm91dGVfaWZFbHNlSWZFbHNlICphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWYgKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2VJZkVsc2UgKmFiaV9yb3V0ZV9uZXN0ZWRJZiAqYWJpX3JvdXRlX2JyYWNrZXRsZXNzSWZFbHNlICphYmlfcm91dGVfbmVzdGVkVGVybmFyeSAqYWJpX3JvdXRlX3N0cmluZ0lmICphYmlfcm91dGVfc3RyaW5nVGVybmFyeSAqYWJpX3JvdXRlX3NtYWxsVWludENvbmRpdGlvbmFsICphYmlfcm91dGVfc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsICphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCAqYWJpX3JvdXRlX25lc3RlZElmSW5FbHNlSWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/IfTest.arc56_draft.json b/tests/contracts/artifacts/IfTest.arc56_draft.json index 399d4f23c..0547b5dbd 100644 --- a/tests/contracts/artifacts/IfTest.arc56_draft.json +++ b/tests/contracts/artifacts/IfTest.arc56_draft.json @@ -361,4253 +361,4256 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 5, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58 - ] - }, - { - "teal": 13, - "source": 5, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 14, - "source": 5, - "pc": [ - 61 - ] - }, - { - "teal": 15, - "source": 5, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 16, - "source": 5, - "pc": [ - 64 - ] - }, - { - "teal": 17, - "source": 5, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 18, - "source": 5, - "pc": [ - 67 - ] - }, - { - "teal": 19, - "source": 5, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 23, - "source": 5, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 94 - ] - }, - { - "teal": 28, - "source": 6, - "pc": [ - 95 - ] - }, - { - "teal": 31, - "source": 6, - "pc": [ - 96, - 97, - 98 - ] - }, - { - "teal": 32, - "source": 6, - "pc": [ - 99 - ] - }, - { - "teal": 33, - "source": 6, - "pc": [ - 100 - ] - }, - { - "teal": 34, - "source": 6, - "pc": [ - 101 - ] - }, - { - "teal": 35, - "source": 6, - "pc": [ - 102 - ] - }, - { - "teal": 38, - "source": 6, - "errorMessage": "argument 0 (arg0) for singleIf must be a bool", - "pc": [ - 103 - ] - }, - { - "teal": 39, - "source": 6, - "pc": [ - 104 - ] - }, - { - "teal": 40, - "source": 6, - "pc": [ - 105 - ] - }, - { - "teal": 43, - "source": 6, - "pc": [ - 106, - 107, - 108 - ] - }, - { - "teal": 44, - "source": 6, - "pc": [ - 109 - ] - }, - { - "teal": 45, - "source": 6, - "pc": [ - 110 - ] - }, - { - "teal": 46, - "source": 6, - "pc": [ - 111 - ] - }, - { - "teal": 47, - "source": 6, - "pc": [ - 112, - 113, - 114 - ] - }, - { - "teal": 48, - "source": 6, - "pc": [ - 115 - ] - }, - { - "teal": 49, - "source": 6, - "pc": [ - 116 - ] - }, - { - "teal": 50, - "source": 6, - "pc": [ - 117 - ] - }, - { - "teal": 51, - "source": 6, - "pc": [ - 118 - ] - }, - { - "teal": 52, - "source": 6, - "pc": [ - 119 - ] - }, - { - "teal": 53, - "source": 6, - "pc": [ - 120 - ] - }, - { - "teal": 57, - "source": 6, - "pc": [ - 121, - 122, - 123 - ] - }, - { - "teal": 62, - "source": 7, - "pc": [ - 124, - 125 - ] - }, - { - "teal": 63, - "source": 7, - "pc": [ - 126, - 127, - 128 - ] - }, - { - "teal": 68, - "source": 8, - "pc": [ - 129 - ] - }, - { - "teal": 69, - "source": 8, - "pc": [ - 130 - ] - }, - { - "teal": 74, - "source": 11, - "pc": [ - 131 - ] - }, - { - "teal": 75, - "source": 6, - "pc": [ - 132 - ] - }, - { - "teal": 80, - "source": 14, - "pc": [ - 133 - ] - }, - { - "teal": 83, - "source": 14, - "pc": [ - 134, - 135, - 136 - ] - }, - { - "teal": 84, - "source": 14, - "pc": [ - 137 - ] - }, - { - "teal": 85, - "source": 14, - "pc": [ - 138 - ] - }, - { - "teal": 86, - "source": 14, - "pc": [ - 139 - ] - }, - { - "teal": 87, - "source": 14, - "pc": [ - 140 - ] - }, - { - "teal": 90, - "source": 14, - "errorMessage": "argument 0 (arg0) for ifElse must be a bool", - "pc": [ - 141 - ] - }, - { - "teal": 91, - "source": 14, - "pc": [ - 142 - ] - }, - { - "teal": 92, - "source": 14, - "pc": [ - 143 - ] - }, - { - "teal": 95, - "source": 14, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 96, - "source": 14, - "pc": [ - 147 - ] - }, - { - "teal": 97, - "source": 14, - "pc": [ - 148 - ] - }, - { - "teal": 98, - "source": 14, - "pc": [ - 149 - ] - }, - { - "teal": 99, - "source": 14, - "pc": [ - 150, - 151, - 152 - ] - }, - { - "teal": 100, - "source": 14, - "pc": [ - 153 - ] - }, - { - "teal": 101, - "source": 14, - "pc": [ - 154 - ] - }, - { - "teal": 102, - "source": 14, - "pc": [ - 155 - ] - }, - { - "teal": 103, - "source": 14, - "pc": [ - 156 - ] - }, - { - "teal": 104, - "source": 14, - "pc": [ - 157 - ] - }, - { - "teal": 105, - "source": 14, - "pc": [ - 158 - ] - }, - { - "teal": 109, - "source": 14, - "pc": [ - 159, - 160, - 161 - ] - }, - { - "teal": 114, - "source": 15, - "pc": [ - 162, - 163 - ] - }, - { - "teal": 115, - "source": 15, - "pc": [ - 164, - 165, - 166 - ] - }, - { - "teal": 120, - "source": 16, - "pc": [ - 167 - ] - }, - { - "teal": 121, - "source": 16, - "pc": [ - 168 - ] - }, - { - "teal": 122, - "source": 15, - "pc": [ - 169, - 170, - 171 - ] - }, - { - "teal": 127, - "source": 18, - "pc": [ - 172 - ] - }, - { - "teal": 128, - "source": 18, - "pc": [ - 173 - ] - }, - { - "teal": 131, - "source": 14, - "pc": [ - 174 - ] - }, - { - "teal": 136, - "source": 22, - "pc": [ - 175 - ] - }, - { - "teal": 139, - "source": 22, - "pc": [ - 176, - 177, - 178 - ] - }, - { - "teal": 140, - "source": 22, - "pc": [ - 179 - ] - }, - { - "teal": 141, - "source": 22, - "pc": [ - 180 - ] - }, - { - "teal": 142, - "source": 22, - "pc": [ - 181 - ] - }, - { - "teal": 143, - "source": 22, - "pc": [ - 182 - ] - }, - { - "teal": 146, - "source": 22, - "errorMessage": "argument 0 (arg1) for ifElseIf must be a bool", - "pc": [ - 183 - ] - }, - { - "teal": 147, - "source": 22, - "pc": [ - 184 - ] - }, - { - "teal": 148, - "source": 22, - "pc": [ - 185 - ] - }, - { - "teal": 151, - "source": 22, - "pc": [ - 186, - 187, - 188 - ] - }, - { - "teal": 152, - "source": 22, - "pc": [ - 189 - ] - }, - { - "teal": 153, - "source": 22, - "pc": [ - 190 - ] - }, - { - "teal": 154, - "source": 22, - "pc": [ - 191 - ] - }, - { - "teal": 155, - "source": 22, - "pc": [ - 192 - ] - }, - { - "teal": 158, - "source": 22, - "errorMessage": "argument 1 (arg0) for ifElseIf must be a bool", - "pc": [ - 193 - ] - }, - { - "teal": 159, - "source": 22, - "pc": [ - 194 - ] - }, - { - "teal": 160, - "source": 22, - "pc": [ - 195 - ] - }, - { - "teal": 163, - "source": 22, - "pc": [ - 196, - 197, - 198 - ] - }, - { - "teal": 164, - "source": 22, - "pc": [ - 199 - ] - }, - { - "teal": 165, - "source": 22, - "pc": [ - 200 - ] - }, - { - "teal": 166, - "source": 22, - "pc": [ - 201 - ] - }, - { - "teal": 167, - "source": 22, - "pc": [ - 202, - 203, - 204 - ] - }, - { - "teal": 168, - "source": 22, - "pc": [ - 205 - ] - }, - { - "teal": 169, - "source": 22, - "pc": [ - 206 - ] - }, - { - "teal": 170, - "source": 22, - "pc": [ - 207 - ] - }, - { - "teal": 171, - "source": 22, - "pc": [ - 208 - ] - }, - { - "teal": 172, - "source": 22, - "pc": [ - 209 - ] - }, - { - "teal": 173, - "source": 22, - "pc": [ - 210 - ] - }, - { - "teal": 177, - "source": 22, - "pc": [ - 211, - 212, - 213 - ] - }, - { - "teal": 182, - "source": 23, - "pc": [ - 214, - 215 - ] - }, - { - "teal": 183, - "source": 23, - "pc": [ - 216, - 217, - 218 - ] - }, - { - "teal": 188, - "source": 24, - "pc": [ - 219 - ] - }, - { - "teal": 189, - "source": 24, - "pc": [ - 220 - ] - }, - { - "teal": 190, - "source": 23, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 195, - "source": 25, - "pc": [ - 224, - 225 - ] - }, - { - "teal": 196, - "source": 25, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 201, - "source": 26, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 202, - "source": 26, - "pc": [ - 231 - ] - }, - { - "teal": 207, - "source": 29, - "pc": [ - 232 - ] - }, - { - "teal": 208, - "source": 22, - "pc": [ - 233 - ] - }, - { - "teal": 213, - "source": 32, - "pc": [ - 234 - ] - }, - { - "teal": 216, - "source": 32, - "pc": [ - 235, - 236, - 237 - ] - }, - { - "teal": 217, - "source": 32, - "pc": [ - 238 - ] - }, - { - "teal": 218, - "source": 32, - "pc": [ - 239 - ] - }, - { - "teal": 219, - "source": 32, - "pc": [ - 240 - ] - }, - { - "teal": 220, - "source": 32, - "pc": [ - 241 - ] - }, - { - "teal": 223, - "source": 32, - "errorMessage": "argument 0 (arg1) for ifElseIfElse must be a bool", - "pc": [ - 242 - ] - }, - { - "teal": 224, - "source": 32, - "pc": [ - 243 - ] - }, - { - "teal": 225, - "source": 32, - "pc": [ - 244 - ] - }, - { - "teal": 228, - "source": 32, - "pc": [ - 245, - 246, - 247 - ] - }, - { - "teal": 229, - "source": 32, - "pc": [ - 248 - ] - }, - { - "teal": 230, - "source": 32, - "pc": [ - 249 - ] - }, - { - "teal": 231, - "source": 32, - "pc": [ - 250 - ] - }, - { - "teal": 232, - "source": 32, - "pc": [ - 251 - ] - }, - { - "teal": 235, - "source": 32, - "errorMessage": "argument 1 (arg0) for ifElseIfElse must be a bool", - "pc": [ - 252 - ] - }, - { - "teal": 236, - "source": 32, - "pc": [ - 253 - ] - }, - { - "teal": 237, - "source": 32, - "pc": [ - 254 - ] - }, - { - "teal": 240, - "source": 32, - "pc": [ - 255, - 256, - 257 - ] - }, - { - "teal": 241, - "source": 32, - "pc": [ - 258 - ] - }, - { - "teal": 242, - "source": 32, - "pc": [ - 259 - ] - }, - { - "teal": 243, - "source": 32, - "pc": [ - 260 - ] - }, - { - "teal": 244, - "source": 32, - "pc": [ - 261, - 262, - 263 - ] - }, - { - "teal": 245, - "source": 32, - "pc": [ - 264 - ] - }, - { - "teal": 246, - "source": 32, - "pc": [ - 265 - ] - }, - { - "teal": 247, - "source": 32, - "pc": [ - 266 - ] - }, - { - "teal": 248, - "source": 32, - "pc": [ - 267 - ] - }, - { - "teal": 249, - "source": 32, - "pc": [ - 268 - ] - }, - { - "teal": 250, - "source": 32, - "pc": [ - 269 - ] - }, - { - "teal": 254, - "source": 32, - "pc": [ - 270, - 271, - 272 - ] - }, - { - "teal": 259, - "source": 33, - "pc": [ - 273, - 274 - ] - }, - { - "teal": 260, - "source": 33, - "pc": [ - 275, - 276, - 277 - ] - }, - { - "teal": 265, - "source": 34, - "pc": [ - 278 - ] - }, - { - "teal": 266, - "source": 34, - "pc": [ - 279 - ] - }, - { - "teal": 267, - "source": 33, - "pc": [ - 280, - 281, - 282 - ] - }, - { - "teal": 272, - "source": 35, - "pc": [ - 283, - 284 - ] - }, - { - "teal": 273, - "source": 35, - "pc": [ - 285, - 286, - 287 - ] - }, - { - "teal": 278, - "source": 36, - "pc": [ - 288, - 289 - ] - }, - { - "teal": 279, - "source": 36, - "pc": [ - 290 - ] - }, - { - "teal": 280, - "source": 35, - "pc": [ - 291, - 292, - 293 - ] - }, - { - "teal": 285, - "source": 38, - "pc": [ - 294 - ] - }, - { - "teal": 286, - "source": 38, - "pc": [ - 295 - ] - }, - { - "teal": 289, - "source": 32, - "pc": [ - 296 - ] - }, - { - "teal": 294, - "source": 42, - "pc": [ - 297 - ] - }, - { - "teal": 297, - "source": 42, - "pc": [ - 298, - 299, - 300 - ] - }, - { - "teal": 298, - "source": 42, - "pc": [ - 301 - ] - }, - { - "teal": 299, - "source": 42, - "pc": [ - 302 - ] - }, - { - "teal": 300, - "source": 42, - "pc": [ - 303 - ] - }, - { - "teal": 301, - "source": 42, - "pc": [ - 304 - ] - }, - { - "teal": 304, - "source": 42, - "errorMessage": "argument 0 (arg2) for ifElseIfElseIf must be a bool", - "pc": [ - 305 - ] - }, - { - "teal": 305, - "source": 42, - "pc": [ - 306 - ] - }, - { - "teal": 306, - "source": 42, - "pc": [ - 307 - ] - }, - { - "teal": 309, - "source": 42, - "pc": [ - 308, - 309, - 310 - ] - }, - { - "teal": 310, - "source": 42, - "pc": [ - 311 - ] - }, - { - "teal": 311, - "source": 42, - "pc": [ - 312 - ] - }, - { - "teal": 312, - "source": 42, - "pc": [ - 313 - ] - }, - { - "teal": 313, - "source": 42, - "pc": [ - 314 - ] - }, - { - "teal": 316, - "source": 42, - "errorMessage": "argument 1 (arg1) for ifElseIfElseIf must be a bool", - "pc": [ - 315 - ] - }, - { - "teal": 317, - "source": 42, - "pc": [ - 316 - ] - }, - { - "teal": 318, - "source": 42, - "pc": [ - 317 - ] - }, - { - "teal": 321, - "source": 42, - "pc": [ - 318, - 319, - 320 - ] - }, - { - "teal": 322, - "source": 42, - "pc": [ - 321 - ] - }, - { - "teal": 323, - "source": 42, - "pc": [ - 322 - ] - }, - { - "teal": 324, - "source": 42, - "pc": [ - 323 - ] - }, - { - "teal": 325, - "source": 42, - "pc": [ - 324 - ] - }, - { - "teal": 328, - "source": 42, - "errorMessage": "argument 2 (arg0) for ifElseIfElseIf must be a bool", - "pc": [ - 325 - ] - }, - { - "teal": 329, - "source": 42, - "pc": [ - 326 - ] - }, - { - "teal": 330, - "source": 42, - "pc": [ - 327 - ] - }, - { - "teal": 333, - "source": 42, - "pc": [ - 328, - 329, - 330 - ] - }, - { - "teal": 334, - "source": 42, - "pc": [ - 331 - ] - }, - { - "teal": 335, - "source": 42, - "pc": [ - 332 - ] - }, - { - "teal": 336, - "source": 42, - "pc": [ - 333 - ] - }, - { - "teal": 337, - "source": 42, - "pc": [ - 334, - 335, - 336 - ] - }, - { - "teal": 338, - "source": 42, - "pc": [ - 337 - ] - }, - { - "teal": 339, - "source": 42, - "pc": [ - 338 - ] - }, - { - "teal": 340, - "source": 42, - "pc": [ - 339 - ] - }, - { - "teal": 341, - "source": 42, - "pc": [ - 340 - ] - }, - { - "teal": 342, - "source": 42, - "pc": [ - 341 - ] - }, - { - "teal": 343, - "source": 42, - "pc": [ - 342 - ] - }, - { - "teal": 347, - "source": 42, - "pc": [ - 343, - 344, - 345 - ] - }, - { - "teal": 352, - "source": 43, - "pc": [ - 346, - 347 - ] - }, - { - "teal": 353, - "source": 43, - "pc": [ - 348, - 349, - 350 - ] - }, - { - "teal": 358, - "source": 44, - "pc": [ - 351 - ] - }, - { - "teal": 359, - "source": 44, - "pc": [ - 352 - ] - }, - { - "teal": 360, - "source": 43, - "pc": [ - 353, - 354, - 355 - ] - }, - { - "teal": 365, - "source": 45, - "pc": [ - 356, - 357 - ] - }, - { - "teal": 366, - "source": 45, - "pc": [ - 358, - 359, - 360 - ] - }, - { - "teal": 371, - "source": 46, - "pc": [ - 361, - 362 - ] - }, - { - "teal": 372, - "source": 46, - "pc": [ - 363 - ] - }, - { - "teal": 373, - "source": 45, - "pc": [ - 364, - 365, - 366 - ] - }, - { - "teal": 378, - "source": 47, - "pc": [ - 367, - 368 - ] - }, - { - "teal": 379, - "source": 47, - "pc": [ - 369, - 370, - 371 - ] - }, - { - "teal": 384, - "source": 48, - "pc": [ - 372, - 373 - ] - }, - { - "teal": 385, - "source": 48, - "pc": [ - 374 - ] - }, - { - "teal": 390, - "source": 51, - "pc": [ - 375 - ] - }, - { - "teal": 391, - "source": 42, - "pc": [ - 376 - ] - }, - { - "teal": 396, - "source": 54, - "pc": [ - 377 - ] - }, - { - "teal": 399, - "source": 54, - "pc": [ - 378, - 379, - 380 - ] - }, - { - "teal": 400, - "source": 54, - "pc": [ - 381 - ] - }, - { - "teal": 401, - "source": 54, - "pc": [ - 382 - ] - }, - { - "teal": 402, - "source": 54, - "pc": [ - 383 - ] - }, - { - "teal": 403, - "source": 54, - "pc": [ - 384 - ] - }, - { - "teal": 406, - "source": 54, - "errorMessage": "argument 0 (arg2) for ifElseIfElseIfElse must be a bool", - "pc": [ - 385 - ] - }, - { - "teal": 407, - "source": 54, - "pc": [ - 386 - ] - }, - { - "teal": 408, - "source": 54, - "pc": [ - 387 - ] - }, - { - "teal": 411, - "source": 54, - "pc": [ - 388, - 389, - 390 - ] - }, - { - "teal": 412, - "source": 54, - "pc": [ - 391 - ] - }, - { - "teal": 413, - "source": 54, - "pc": [ - 392 - ] - }, - { - "teal": 414, - "source": 54, - "pc": [ - 393 - ] - }, - { - "teal": 415, - "source": 54, - "pc": [ - 394 - ] - }, - { - "teal": 418, - "source": 54, - "errorMessage": "argument 1 (arg1) for ifElseIfElseIfElse must be a bool", - "pc": [ - 395 - ] - }, - { - "teal": 419, - "source": 54, - "pc": [ - 396 - ] - }, - { - "teal": 420, - "source": 54, - "pc": [ - 397 - ] - }, - { - "teal": 423, - "source": 54, - "pc": [ - 398, - 399, - 400 - ] - }, - { - "teal": 424, - "source": 54, - "pc": [ - 401 - ] - }, - { - "teal": 425, - "source": 54, - "pc": [ - 402 - ] - }, - { - "teal": 426, - "source": 54, - "pc": [ - 403 - ] - }, - { - "teal": 427, - "source": 54, - "pc": [ - 404 - ] - }, - { - "teal": 430, - "source": 54, - "errorMessage": "argument 2 (arg0) for ifElseIfElseIfElse must be a bool", - "pc": [ - 405 - ] - }, - { - "teal": 431, - "source": 54, - "pc": [ - 406 - ] - }, - { - "teal": 432, - "source": 54, - "pc": [ - 407 - ] - }, - { - "teal": 435, - "source": 54, - "pc": [ - 408, - 409, - 410 - ] - }, - { - "teal": 436, - "source": 54, - "pc": [ - 411 - ] - }, - { - "teal": 437, - "source": 54, - "pc": [ - 412 - ] - }, - { - "teal": 438, - "source": 54, - "pc": [ - 413 - ] - }, - { - "teal": 439, - "source": 54, - "pc": [ - 414, - 415, - 416 - ] - }, - { - "teal": 440, - "source": 54, - "pc": [ - 417 - ] - }, - { - "teal": 441, - "source": 54, - "pc": [ - 418 - ] - }, - { - "teal": 442, - "source": 54, - "pc": [ - 419 - ] - }, - { - "teal": 443, - "source": 54, - "pc": [ - 420 - ] - }, - { - "teal": 444, - "source": 54, - "pc": [ - 421 - ] - }, - { - "teal": 445, - "source": 54, - "pc": [ - 422 - ] - }, - { - "teal": 449, - "source": 54, - "pc": [ - 423, - 424, - 425 - ] - }, - { - "teal": 454, - "source": 55, - "pc": [ - 426, - 427 - ] - }, - { - "teal": 455, - "source": 55, - "pc": [ - 428, - 429, - 430 - ] - }, - { - "teal": 460, - "source": 56, - "pc": [ - 431 - ] - }, - { - "teal": 461, - "source": 56, - "pc": [ - 432 - ] - }, - { - "teal": 462, - "source": 55, - "pc": [ - 433, - 434, - 435 - ] - }, - { - "teal": 467, - "source": 57, - "pc": [ - 436, - 437 - ] - }, - { - "teal": 468, - "source": 57, - "pc": [ - 438, - 439, - 440 - ] - }, - { - "teal": 473, - "source": 58, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 474, - "source": 58, - "pc": [ - 443 - ] - }, - { - "teal": 475, - "source": 57, - "pc": [ - 444, - 445, - 446 - ] - }, - { - "teal": 480, - "source": 59, - "pc": [ - 447, - 448 - ] - }, - { - "teal": 481, - "source": 59, - "pc": [ - 449, - 450, - 451 - ] - }, - { - "teal": 486, - "source": 60, - "pc": [ - 452, - 453 - ] - }, - { - "teal": 487, - "source": 60, - "pc": [ - 454 - ] - }, - { - "teal": 488, - "source": 59, - "pc": [ - 455, - 456, - 457 - ] - }, - { - "teal": 493, - "source": 62, - "pc": [ - 458 - ] - }, - { - "teal": 494, - "source": 62, - "pc": [ - 459 - ] - }, - { - "teal": 497, - "source": 54, - "pc": [ - 460 - ] - }, - { - "teal": 502, - "source": 66, - "pc": [ - 461 - ] - }, - { - "teal": 505, - "source": 66, - "pc": [ - 462, - 463, - 464 - ] - }, - { - "teal": 506, - "source": 66, - "pc": [ - 465 - ] - }, - { - "teal": 507, - "source": 66, - "pc": [ - 466 - ] - }, - { - "teal": 508, - "source": 66, - "pc": [ - 467 - ] - }, - { - "teal": 509, - "source": 66, - "pc": [ - 468 - ] - }, - { - "teal": 512, - "source": 66, - "errorMessage": "argument 0 (arg1) for nestedIf must be a bool", - "pc": [ - 469 - ] - }, - { - "teal": 513, - "source": 66, - "pc": [ - 470 - ] - }, - { - "teal": 514, - "source": 66, - "pc": [ - 471 - ] - }, - { - "teal": 517, - "source": 66, - "pc": [ - 472, - 473, - 474 - ] - }, - { - "teal": 518, - "source": 66, - "pc": [ - 475 - ] - }, - { - "teal": 519, - "source": 66, - "pc": [ - 476 - ] - }, - { - "teal": 520, - "source": 66, - "pc": [ - 477 - ] - }, - { - "teal": 521, - "source": 66, - "pc": [ - 478 - ] - }, - { - "teal": 524, - "source": 66, - "errorMessage": "argument 1 (arg0) for nestedIf must be a bool", - "pc": [ - 479 - ] - }, - { - "teal": 525, - "source": 66, - "pc": [ - 480 - ] - }, - { - "teal": 526, - "source": 66, - "pc": [ - 481 - ] - }, - { - "teal": 529, - "source": 66, - "pc": [ - 482, - 483, - 484 - ] - }, - { - "teal": 530, - "source": 66, - "pc": [ - 485 - ] - }, - { - "teal": 531, - "source": 66, - "pc": [ - 486 - ] - }, - { - "teal": 532, - "source": 66, - "pc": [ - 487 - ] - }, - { - "teal": 533, - "source": 66, - "pc": [ - 488, - 489, - 490 - ] - }, - { - "teal": 534, - "source": 66, - "pc": [ - 491 - ] - }, - { - "teal": 535, - "source": 66, - "pc": [ - 492 - ] - }, - { - "teal": 536, - "source": 66, - "pc": [ - 493 - ] - }, - { - "teal": 537, - "source": 66, - "pc": [ - 494 - ] - }, - { - "teal": 538, - "source": 66, - "pc": [ - 495 - ] - }, - { - "teal": 539, - "source": 66, - "pc": [ - 496 - ] - }, - { - "teal": 543, - "source": 66, - "pc": [ - 497, - 498, - 499 - ] - }, - { - "teal": 548, - "source": 67, - "pc": [ - 500, - 501 - ] - }, - { - "teal": 549, - "source": 67, - "pc": [ - 502, - 503, - 504 - ] - }, - { - "teal": 555, - "source": 68, - "pc": [ - 505, - 506 - ] - }, - { - "teal": 556, - "source": 68, - "pc": [ - 507, - 508, - 509 - ] - }, - { - "teal": 561, - "source": 69, - "pc": [ - 510, - 511, - 512, - 513, - 514, - 515, - 516, - 517, - 518, - 519, - 520 - ] - }, - { - "teal": 562, - "source": 69, - "pc": [ - 521 - ] - }, - { - "teal": 567, - "source": 71, - "pc": [ - 522 - ] - }, - { - "teal": 568, - "source": 71, - "pc": [ - 523 - ] - }, - { - "teal": 569, - "source": 67, - "pc": [ - 524, - 525, - 526 - ] - }, - { - "teal": 574, - "source": 73, - "pc": [ - 527 - ] - }, - { - "teal": 575, - "source": 73, - "pc": [ - 528 - ] - }, - { - "teal": 578, - "source": 66, - "pc": [ - 529 - ] - }, - { - "teal": 583, - "source": 77, - "pc": [ - 530 - ] - }, - { - "teal": 586, - "source": 77, - "pc": [ - 531, - 532, - 533 - ] - }, - { - "teal": 587, - "source": 77, - "pc": [ - 534 - ] - }, - { - "teal": 588, - "source": 77, - "pc": [ - 535 - ] - }, - { - "teal": 589, - "source": 77, - "pc": [ - 536 - ] - }, - { - "teal": 590, - "source": 77, - "pc": [ - 537 - ] - }, - { - "teal": 593, - "source": 77, - "errorMessage": "argument 0 (arg0) for bracketlessIfElse must be a bool", - "pc": [ - 538 - ] - }, - { - "teal": 594, - "source": 77, - "pc": [ - 539 - ] - }, - { - "teal": 595, - "source": 77, - "pc": [ - 540 - ] - }, - { - "teal": 598, - "source": 77, - "pc": [ - 541, - 542, - 543 - ] - }, - { - "teal": 599, - "source": 77, - "pc": [ - 544 - ] - }, - { - "teal": 600, - "source": 77, - "pc": [ - 545 - ] - }, - { - "teal": 601, - "source": 77, - "pc": [ - 546 - ] - }, - { - "teal": 602, - "source": 77, - "pc": [ - 547, - 548, - 549 - ] - }, - { - "teal": 603, - "source": 77, - "pc": [ - 550 - ] - }, - { - "teal": 604, - "source": 77, - "pc": [ - 551 - ] - }, - { - "teal": 605, - "source": 77, - "pc": [ - 552 - ] - }, - { - "teal": 606, - "source": 77, - "pc": [ - 553 - ] - }, - { - "teal": 607, - "source": 77, - "pc": [ - 554 - ] - }, - { - "teal": 608, - "source": 77, - "pc": [ - 555 - ] - }, - { - "teal": 612, - "source": 77, - "pc": [ - 556, - 557, - 558 - ] - }, - { - "teal": 617, - "source": 78, - "pc": [ - 559, - 560 - ] - }, - { - "teal": 618, - "source": 78, - "pc": [ - 561, - 562, - 563 - ] - }, - { - "teal": 623, - "source": 78, - "pc": [ - 564 - ] - }, - { - "teal": 624, - "source": 78, - "pc": [ - 565 - ] - }, - { - "teal": 625, - "source": 78, - "pc": [ - 566, - 567, - 568 - ] - }, - { - "teal": 630, - "source": 79, - "pc": [ - 569 - ] - }, - { - "teal": 631, - "source": 79, - "pc": [ - 570 - ] - }, - { - "teal": 634, - "source": 77, - "pc": [ - 571 - ] - }, - { - "teal": 639, - "source": 82, - "pc": [ - 572 - ] - }, - { - "teal": 642, - "source": 82, - "pc": [ - 573, - 574, - 575 - ] - }, - { - "teal": 643, - "source": 82, - "pc": [ - 576 - ] - }, - { - "teal": 644, - "source": 82, - "pc": [ - 577 - ] - }, - { - "teal": 645, - "source": 82, - "pc": [ - 578 - ] - }, - { - "teal": 646, - "source": 82, - "pc": [ - 579 - ] - }, - { - "teal": 649, - "source": 82, - "errorMessage": "argument 0 (arg1) for nestedTernary must be a bool", - "pc": [ - 580 - ] - }, - { - "teal": 650, - "source": 82, - "pc": [ - 581 - ] - }, - { - "teal": 651, - "source": 82, - "pc": [ - 582 - ] - }, - { - "teal": 654, - "source": 82, - "pc": [ - 583, - 584, - 585 - ] - }, - { - "teal": 655, - "source": 82, - "pc": [ - 586 - ] - }, - { - "teal": 656, - "source": 82, - "pc": [ - 587 - ] - }, - { - "teal": 657, - "source": 82, - "pc": [ - 588 - ] - }, - { - "teal": 658, - "source": 82, - "pc": [ - 589 - ] - }, - { - "teal": 661, - "source": 82, - "errorMessage": "argument 1 (arg0) for nestedTernary must be a bool", - "pc": [ - 590 - ] - }, - { - "teal": 662, - "source": 82, - "pc": [ - 591 - ] - }, - { - "teal": 663, - "source": 82, - "pc": [ - 592 - ] - }, - { - "teal": 666, - "source": 82, - "pc": [ - 593, - 594, - 595 - ] - }, - { - "teal": 667, - "source": 82, - "pc": [ - 596 - ] - }, - { - "teal": 668, - "source": 82, - "pc": [ - 597 - ] - }, - { - "teal": 669, - "source": 82, - "pc": [ - 598 - ] - }, - { - "teal": 670, - "source": 82, - "pc": [ - 599 - ] - }, - { - "teal": 671, - "source": 82, - "pc": [ - 600 - ] - }, - { - "teal": 675, - "source": 82, - "pc": [ - 601, - 602, - 603 - ] - }, - { - "teal": 679, - "source": 84, - "pc": [ - 604, - 605 - ] - }, - { - "teal": 680, - "source": 84, - "pc": [ - 606, - 607, - 608 - ] - }, - { - "teal": 681, - "source": 84, - "pc": [ - 609 - ] - }, - { - "teal": 682, - "source": 84, - "pc": [ - 610, - 611, - 612 - ] - }, - { - "teal": 685, - "source": 84, - "pc": [ - 613, - 614 - ] - }, - { - "teal": 686, - "source": 84, - "pc": [ - 615, - 616, - 617 - ] - }, - { - "teal": 687, - "source": 84, - "pc": [ - 618 - ] - }, - { - "teal": 688, - "source": 84, - "pc": [ - 619, - 620, - 621 - ] - }, - { - "teal": 691, - "source": 84, - "pc": [ - 622, - 623 - ] - }, - { - "teal": 696, - "source": 82, - "pc": [ - 624 - ] - }, - { - "teal": 701, - "source": 87, - "pc": [ - 625 - ] - }, - { - "teal": 704, - "source": 87, - "pc": [ - 626, - 627, - 628 - ] - }, - { - "teal": 705, - "source": 87, - "pc": [ - 629, - 630, - 631 - ] - }, - { - "teal": 708, - "source": 87, - "pc": [ - 632, - 633, - 634 - ] - }, - { - "teal": 709, - "source": 87, - "pc": [ - 635 - ] - }, - { - "teal": 710, - "source": 87, - "pc": [ - 636 - ] - }, - { - "teal": 711, - "source": 87, - "pc": [ - 637 - ] - }, - { - "teal": 712, - "source": 87, - "pc": [ - 638 - ] - }, - { - "teal": 713, - "source": 87, - "pc": [ - 639 - ] - }, - { - "teal": 717, - "source": 87, - "pc": [ - 640, - 641, - 642 - ] - }, - { - "teal": 722, - "source": 88, - "pc": [ - 643, - 644 - ] - }, - { - "teal": 723, - "source": 88, - "pc": [ - 645, - 646 - ] - }, - { - "teal": 724, - "source": 88, - "pc": [ - 647 - ] - }, - { - "teal": 725, - "source": 88, - "pc": [ - 648, - 649, - 650 - ] - }, - { - "teal": 730, - "source": 89, - "pc": [ - 651 - ] - }, - { - "teal": 731, - "source": 89, - "pc": [ - 652 - ] - }, - { - "teal": 736, - "source": 92, - "pc": [ - 653 - ] - }, - { - "teal": 737, - "source": 87, - "pc": [ - 654 - ] - }, - { - "teal": 742, - "source": 95, - "pc": [ - 655 - ] - }, - { - "teal": 745, - "source": 95, - "pc": [ - 656, - 657, - 658 - ] - }, - { - "teal": 746, - "source": 95, - "pc": [ - 659, - 660, - 661 - ] - }, - { - "teal": 749, - "source": 95, - "pc": [ - 662, - 663, - 664 - ] - }, - { - "teal": 750, - "source": 95, - "pc": [ - 665 - ] - }, - { - "teal": 751, - "source": 95, - "pc": [ - 666 - ] - }, - { - "teal": 752, - "source": 95, - "pc": [ - 667 - ] - }, - { - "teal": 753, - "source": 95, - "pc": [ - 668 - ] - }, - { - "teal": 754, - "source": 95, - "pc": [ - 669 - ] - }, - { - "teal": 758, - "source": 95, - "pc": [ - 670, - 671, - 672 - ] - }, - { - "teal": 762, - "source": 96, - "pc": [ - 673, - 674 - ] - }, - { - "teal": 763, - "source": 96, - "pc": [ - 675, - 676 - ] - }, - { - "teal": 764, - "source": 96, - "pc": [ - 677 - ] - }, - { - "teal": 765, - "source": 96, - "pc": [ - 678, - 679, - 680 - ] - }, - { - "teal": 766, - "source": 96, - "pc": [ - 681 - ] - }, - { - "teal": 767, - "source": 96, - "pc": [ - 682, - 683, - 684 - ] - }, - { - "teal": 770, - "source": 96, - "pc": [ - 685 - ] - }, - { - "teal": 773, - "source": 95, - "pc": [ - 686 - ] - }, - { - "teal": 778, - "source": 99, - "pc": [ - 687, - 688, - 689 - ] - }, - { - "teal": 779, - "source": 99, - "pc": [ - 690 - ] - }, - { - "teal": 780, - "source": 99, - "pc": [ - 691 - ] - }, - { - "teal": 781, - "source": 99, - "pc": [ - 692 - ] - }, - { - "teal": 782, - "source": 99, - "pc": [ - 693 - ] - }, - { - "teal": 785, - "source": 99, - "errorMessage": "argument 0 (a) for smallUintConditional must be a uint16", - "pc": [ - 694 - ] - }, - { - "teal": 786, - "source": 99, - "pc": [ - 695 - ] - }, - { - "teal": 789, - "source": 99, - "pc": [ - 696, - 697, - 698 - ] - }, - { - "teal": 790, - "source": 99, - "pc": [ - 699 - ] - }, - { - "teal": 791, - "source": 99, - "pc": [ - 700 - ] - }, - { - "teal": 795, - "source": 99, - "pc": [ - 701, - 702, - 703 - ] - }, - { - "teal": 800, - "source": 100, - "pc": [ - 704, - 705 - ] - }, - { - "teal": 801, - "source": 100, - "pc": [ - 706, - 707 - ] - }, - { - "teal": 802, - "source": 100, - "pc": [ - 708 - ] - }, - { - "teal": 803, - "source": 100, - "pc": [ - 709, - 710, - 711 - ] - }, - { - "teal": 808, - "source": 101, - "pc": [ - 712, - 713 - ] - }, - { - "teal": 809, - "source": 101, - "pc": [ - 714 - ] - }, - { - "teal": 812, - "source": 99, - "pc": [ - 715 - ] - }, - { - "teal": 817, - "source": 105, - "pc": [ - 716, - 717, - 718 - ] - }, - { - "teal": 818, - "source": 105, - "pc": [ - 719 - ] - }, - { - "teal": 819, - "source": 105, - "pc": [ - 720 - ] - }, - { - "teal": 820, - "source": 105, - "pc": [ - 721 - ] - }, - { - "teal": 821, - "source": 105, - "pc": [ - 722 - ] - }, - { - "teal": 824, - "source": 105, - "errorMessage": "argument 0 (b) for smallUintComparisonConditional must be a uint16", - "pc": [ - 723 - ] - }, - { - "teal": 825, - "source": 105, - "pc": [ - 724 - ] - }, - { - "teal": 828, - "source": 105, - "pc": [ - 725, - 726, - 727 - ] - }, - { - "teal": 829, - "source": 105, - "pc": [ - 728 - ] - }, - { - "teal": 830, - "source": 105, - "pc": [ - 729 - ] - }, - { - "teal": 831, - "source": 105, - "pc": [ - 730 - ] - }, - { - "teal": 832, - "source": 105, - "pc": [ - 731 - ] - }, - { - "teal": 835, - "source": 105, - "errorMessage": "argument 1 (a) for smallUintComparisonConditional must be a uint16", - "pc": [ - 732 - ] - }, - { - "teal": 836, - "source": 105, - "pc": [ - 733 - ] - }, - { - "teal": 839, - "source": 105, - "pc": [ - 734, - 735, - 736 - ] - }, - { - "teal": 840, - "source": 105, - "pc": [ - 737 - ] - }, - { - "teal": 841, - "source": 105, - "pc": [ - 738 - ] - }, - { - "teal": 845, - "source": 105, - "pc": [ - 739, - 740, - 741 - ] - }, - { - "teal": 850, - "source": 106, - "pc": [ - 742, - 743 - ] - }, - { - "teal": 851, - "source": 106, - "pc": [ - 744, - 745 - ] - }, - { - "teal": 852, - "source": 106, - "pc": [ - 746 - ] - }, - { - "teal": 853, - "source": 106, - "pc": [ - 747, - 748, - 749 - ] - }, - { - "teal": 858, - "source": 107, - "pc": [ - 750, - 751 - ] - }, - { - "teal": 859, - "source": 107, - "pc": [ - 752 - ] - }, - { - "teal": 862, - "source": 105, - "pc": [ - 753 - ] - }, - { - "teal": 867, - "source": 111, - "pc": [ - 754, - 755, - 756 - ] - }, - { - "teal": 868, - "source": 111, - "pc": [ - 757 - ] - }, - { - "teal": 869, - "source": 111, - "pc": [ - 758 - ] - }, - { - "teal": 870, - "source": 111, - "pc": [ - 759 - ] - }, - { - "teal": 871, - "source": 111, - "pc": [ - 760 - ] - }, - { - "teal": 874, - "source": 111, - "errorMessage": "argument 0 (b) for uint256ComparsionConditional must be a uint256", - "pc": [ - 761 - ] - }, - { - "teal": 877, - "source": 111, - "pc": [ - 762, - 763, - 764 - ] - }, - { - "teal": 878, - "source": 111, - "pc": [ - 765 - ] - }, - { - "teal": 879, - "source": 111, - "pc": [ - 766 - ] - }, - { - "teal": 880, - "source": 111, - "pc": [ - 767 - ] - }, - { - "teal": 881, - "source": 111, - "pc": [ - 768 - ] - }, - { - "teal": 884, - "source": 111, - "errorMessage": "argument 1 (a) for uint256ComparsionConditional must be a uint256", - "pc": [ - 769 - ] - }, - { - "teal": 887, - "source": 111, - "pc": [ - 770, - 771, - 772 - ] - }, - { - "teal": 888, - "source": 111, - "pc": [ - 773 - ] - }, - { - "teal": 889, - "source": 111, - "pc": [ - 774 - ] - }, - { - "teal": 893, - "source": 111, - "pc": [ - 775, - 776, - 777 - ] - }, - { - "teal": 898, - "source": 112, - "pc": [ - 778, - 779 - ] - }, - { - "teal": 899, - "source": 112, - "pc": [ - 780, - 781 - ] - }, - { - "teal": 900, - "source": 112, - "pc": [ - 782 - ] - }, - { - "teal": 901, - "source": 112, - "pc": [ - 783, - 784, - 785 - ] - }, - { - "teal": 906, - "source": 113, - "pc": [ - 786, - 787 - ] - }, - { - "teal": 907, - "source": 113, - "pc": [ - 788 - ] - }, - { - "teal": 910, - "source": 111, - "pc": [ - 789 - ] - }, - { - "teal": 915, - "source": 117, - "pc": [ - 790 - ] - }, - { - "teal": 918, - "source": 117, - "pc": [ - 791, - 792, - 793 - ] - }, - { - "teal": 919, - "source": 117, - "pc": [ - 794 - ] - }, - { - "teal": 920, - "source": 117, - "pc": [ - 795 - ] - }, - { - "teal": 921, - "source": 117, - "pc": [ - 796 - ] - }, - { - "teal": 922, - "source": 117, - "pc": [ - 797 - ] - }, - { - "teal": 925, - "source": 117, - "errorMessage": "argument 0 (b) for nestedIfInElseIf must be a bool", - "pc": [ - 798 - ] - }, - { - "teal": 926, - "source": 117, - "pc": [ - 799 - ] - }, - { - "teal": 927, - "source": 117, - "pc": [ - 800 - ] - }, - { - "teal": 930, - "source": 117, - "pc": [ - 801, - 802, - 803 - ] - }, - { - "teal": 931, - "source": 117, - "pc": [ - 804 - ] - }, - { - "teal": 932, - "source": 117, - "pc": [ - 805 - ] - }, - { - "teal": 933, - "source": 117, - "pc": [ - 806 - ] - }, - { - "teal": 934, - "source": 117, - "pc": [ - 807 - ] - }, - { - "teal": 937, - "source": 117, - "errorMessage": "argument 1 (a) for nestedIfInElseIf must be a bool", - "pc": [ - 808 - ] - }, - { - "teal": 938, - "source": 117, - "pc": [ - 809 - ] - }, - { - "teal": 939, - "source": 117, - "pc": [ - 810 - ] - }, - { - "teal": 942, - "source": 117, - "pc": [ - 811, - 812, - 813 - ] - }, - { - "teal": 943, - "source": 117, - "pc": [ - 814 - ] - }, - { - "teal": 944, - "source": 117, - "pc": [ - 815 - ] - }, - { - "teal": 945, - "source": 117, - "pc": [ - 816 - ] - }, - { - "teal": 946, - "source": 117, - "pc": [ - 817, - 818, - 819 - ] - }, - { - "teal": 947, - "source": 117, - "pc": [ - 820 - ] - }, - { - "teal": 948, - "source": 117, - "pc": [ - 821 - ] - }, - { - "teal": 949, - "source": 117, - "pc": [ - 822 - ] - }, - { - "teal": 950, - "source": 117, - "pc": [ - 823 - ] - }, - { - "teal": 951, - "source": 117, - "pc": [ - 824 - ] - }, - { - "teal": 952, - "source": 117, - "pc": [ - 825 - ] - }, - { - "teal": 956, - "source": 117, - "pc": [ - 826, - 827, - 828 - ] - }, - { - "teal": 961, - "source": 118, - "pc": [ - 829, - 830 - ] - }, - { - "teal": 962, - "source": 118, - "pc": [ - 831, - 832, - 833 - ] - }, - { - "teal": 968, - "source": 119, - "pc": [ - 834, - 835 - ] - }, - { - "teal": 969, - "source": 119, - "pc": [ - 836, - 837, - 838 - ] - }, - { - "teal": 974, - "source": 120, - "pc": [ - 839, - 840, - 841, - 842, - 843, - 844, - 845, - 846, - 847 - ] - }, - { - "teal": 975, - "source": 120, - "pc": [ - 848 - ] - }, - { - "teal": 976, - "source": 119, - "pc": [ - 849, - 850, - 851 - ] - }, - { - "teal": 981, - "source": 122, - "pc": [ - 852, - 853, - 854 - ] - }, - { - "teal": 982, - "source": 122, - "pc": [ - 855 - ] - }, - { - "teal": 985, - "source": 118, - "pc": [ - 856, - 857, - 858 - ] - }, - { - "teal": 990, - "source": 124, - "pc": [ - 859, - 860 - ] - }, - { - "teal": 991, - "source": 124, - "pc": [ - 861, - 862, - 863 - ] - }, - { - "teal": 996, - "source": 125, - "pc": [ - 864, - 865, - 866 - ] - }, - { - "teal": 997, - "source": 125, - "pc": [ - 867 - ] - }, - { - "teal": 998, - "source": 124, - "pc": [ - 868, - 869, - 870 - ] - }, - { - "teal": 1003, - "source": 127, - "pc": [ - 871, - 872, - 873, - 874, - 875, - 876, - 877, - 878, - 879 - ] - }, - { - "teal": 1004, - "source": 127, - "pc": [ - 880 - ] - }, - { - "teal": 1007, - "source": 117, - "pc": [ - 881 - ] - }, - { - "teal": 1010, - "source": 5, - "pc": [ - 882 - ] - }, - { - "teal": 1011, - "source": 5, - "pc": [ - 883 - ] - }, - { - "teal": 1014, - "source": 5, - "pc": [ - 884, - 885, - 886, - 887, - 888, - 889 - ] - }, - { - "teal": 1015, - "source": 5, - "pc": [ - 890, - 891, - 892 - ] - }, - { - "teal": 1016, - "source": 5, - "pc": [ - 893, - 894, - 895, - 896 - ] - }, - { - "teal": 1019, - "source": 5, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 897 - ] - }, - { - "teal": 1022, - "source": 5, - "pc": [ - 898, - 899, - 900, - 901, - 902, - 903 - ] - }, - { - "teal": 1023, - "source": 5, - "pc": [ - 904, - 905, - 906, - 907, - 908, - 909 - ] - }, - { - "teal": 1024, - "source": 5, - "pc": [ - 910, - 911, - 912, - 913, - 914, - 915 - ] - }, - { - "teal": 1025, - "source": 5, - "pc": [ - 916, - 917, - 918, - 919, - 920, - 921 - ] - }, - { - "teal": 1026, - "source": 5, - "pc": [ - 922, - 923, - 924, - 925, - 926, - 927 - ] - }, - { - "teal": 1027, - "source": 5, - "pc": [ - 928, - 929, - 930, - 931, - 932, - 933 - ] - }, - { - "teal": 1028, - "source": 5, - "pc": [ - 934, - 935, - 936, - 937, - 938, - 939 - ] - }, - { - "teal": 1029, - "source": 5, - "pc": [ - 940, - 941, - 942, - 943, - 944, - 945 - ] - }, - { - "teal": 1030, - "source": 5, - "pc": [ - 946, - 947, - 948, - 949, - 950, - 951 - ] - }, - { - "teal": 1031, - "source": 5, - "pc": [ - 952, - 953, - 954, - 955, - 956, - 957 - ] - }, - { - "teal": 1032, - "source": 5, - "pc": [ - 958, - 959, - 960, - 961, - 962, - 963 - ] - }, - { - "teal": 1033, - "source": 5, - "pc": [ - 964, - 965, - 966, - 967, - 968, - 969 - ] - }, - { - "teal": 1034, - "source": 5, - "pc": [ - 970, - 971, - 972, - 973, - 974, - 975 - ] - }, - { - "teal": 1035, - "source": 5, - "pc": [ - 976, - 977, - 978, - 979, - 980, - 981 - ] - }, - { - "teal": 1036, - "source": 5, - "pc": [ - 982, - 983, - 984, - 985, - 986, - 987 - ] - }, - { - "teal": 1037, - "source": 5, - "pc": [ - 988, - 989, - 990 - ] - }, - { - "teal": 1038, - "source": 5, - "pc": [ - 991, - 992, - 993, - 994, - 995, - 996, - 997, - 998, - 999, - 1000, - 1001, - 1002, - 1003, - 1004, - 1005, - 1006, - 1007, - 1008, - 1009, - 1010, - 1011, - 1012, - 1013, - 1014, - 1015, - 1016, - 1017, - 1018, - 1019, - 1020, - 1021, - 1022 - ] - }, - { - "teal": 1041, - "source": 5, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 1023 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 5, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + }, + { + "teal": 13, + "source": 5, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 14, + "source": 5, + "pc": [ + 61 + ] + }, + { + "teal": 15, + "source": 5, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 16, + "source": 5, + "pc": [ + 64 + ] + }, + { + "teal": 17, + "source": 5, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 18, + "source": 5, + "pc": [ + 67 + ] + }, + { + "teal": 19, + "source": 5, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 23, + "source": 5, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 94 + ] + }, + { + "teal": 28, + "source": 6, + "pc": [ + 95 + ] + }, + { + "teal": 31, + "source": 6, + "pc": [ + 96, + 97, + 98 + ] + }, + { + "teal": 32, + "source": 6, + "pc": [ + 99 + ] + }, + { + "teal": 33, + "source": 6, + "pc": [ + 100 + ] + }, + { + "teal": 34, + "source": 6, + "pc": [ + 101 + ] + }, + { + "teal": 35, + "source": 6, + "pc": [ + 102 + ] + }, + { + "teal": 38, + "source": 6, + "errorMessage": "argument 0 (arg0) for singleIf must be a bool", + "pc": [ + 103 + ] + }, + { + "teal": 39, + "source": 6, + "pc": [ + 104 + ] + }, + { + "teal": 40, + "source": 6, + "pc": [ + 105 + ] + }, + { + "teal": 43, + "source": 6, + "pc": [ + 106, + 107, + 108 + ] + }, + { + "teal": 44, + "source": 6, + "pc": [ + 109 + ] + }, + { + "teal": 45, + "source": 6, + "pc": [ + 110 + ] + }, + { + "teal": 46, + "source": 6, + "pc": [ + 111 + ] + }, + { + "teal": 47, + "source": 6, + "pc": [ + 112, + 113, + 114 + ] + }, + { + "teal": 48, + "source": 6, + "pc": [ + 115 + ] + }, + { + "teal": 49, + "source": 6, + "pc": [ + 116 + ] + }, + { + "teal": 50, + "source": 6, + "pc": [ + 117 + ] + }, + { + "teal": 51, + "source": 6, + "pc": [ + 118 + ] + }, + { + "teal": 52, + "source": 6, + "pc": [ + 119 + ] + }, + { + "teal": 53, + "source": 6, + "pc": [ + 120 + ] + }, + { + "teal": 57, + "source": 6, + "pc": [ + 121, + 122, + 123 + ] + }, + { + "teal": 62, + "source": 7, + "pc": [ + 124, + 125 + ] + }, + { + "teal": 63, + "source": 7, + "pc": [ + 126, + 127, + 128 + ] + }, + { + "teal": 68, + "source": 8, + "pc": [ + 129 + ] + }, + { + "teal": 69, + "source": 8, + "pc": [ + 130 + ] + }, + { + "teal": 74, + "source": 11, + "pc": [ + 131 + ] + }, + { + "teal": 75, + "source": 6, + "pc": [ + 132 + ] + }, + { + "teal": 80, + "source": 14, + "pc": [ + 133 + ] + }, + { + "teal": 83, + "source": 14, + "pc": [ + 134, + 135, + 136 + ] + }, + { + "teal": 84, + "source": 14, + "pc": [ + 137 + ] + }, + { + "teal": 85, + "source": 14, + "pc": [ + 138 + ] + }, + { + "teal": 86, + "source": 14, + "pc": [ + 139 + ] + }, + { + "teal": 87, + "source": 14, + "pc": [ + 140 + ] + }, + { + "teal": 90, + "source": 14, + "errorMessage": "argument 0 (arg0) for ifElse must be a bool", + "pc": [ + 141 + ] + }, + { + "teal": 91, + "source": 14, + "pc": [ + 142 + ] + }, + { + "teal": 92, + "source": 14, + "pc": [ + 143 + ] + }, + { + "teal": 95, + "source": 14, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 96, + "source": 14, + "pc": [ + 147 + ] + }, + { + "teal": 97, + "source": 14, + "pc": [ + 148 + ] + }, + { + "teal": 98, + "source": 14, + "pc": [ + 149 + ] + }, + { + "teal": 99, + "source": 14, + "pc": [ + 150, + 151, + 152 + ] + }, + { + "teal": 100, + "source": 14, + "pc": [ + 153 + ] + }, + { + "teal": 101, + "source": 14, + "pc": [ + 154 + ] + }, + { + "teal": 102, + "source": 14, + "pc": [ + 155 + ] + }, + { + "teal": 103, + "source": 14, + "pc": [ + 156 + ] + }, + { + "teal": 104, + "source": 14, + "pc": [ + 157 + ] + }, + { + "teal": 105, + "source": 14, + "pc": [ + 158 + ] + }, + { + "teal": 109, + "source": 14, + "pc": [ + 159, + 160, + 161 + ] + }, + { + "teal": 114, + "source": 15, + "pc": [ + 162, + 163 + ] + }, + { + "teal": 115, + "source": 15, + "pc": [ + 164, + 165, + 166 + ] + }, + { + "teal": 120, + "source": 16, + "pc": [ + 167 + ] + }, + { + "teal": 121, + "source": 16, + "pc": [ + 168 + ] + }, + { + "teal": 122, + "source": 15, + "pc": [ + 169, + 170, + 171 + ] + }, + { + "teal": 127, + "source": 18, + "pc": [ + 172 + ] + }, + { + "teal": 128, + "source": 18, + "pc": [ + 173 + ] + }, + { + "teal": 131, + "source": 14, + "pc": [ + 174 + ] + }, + { + "teal": 136, + "source": 22, + "pc": [ + 175 + ] + }, + { + "teal": 139, + "source": 22, + "pc": [ + 176, + 177, + 178 + ] + }, + { + "teal": 140, + "source": 22, + "pc": [ + 179 + ] + }, + { + "teal": 141, + "source": 22, + "pc": [ + 180 + ] + }, + { + "teal": 142, + "source": 22, + "pc": [ + 181 + ] + }, + { + "teal": 143, + "source": 22, + "pc": [ + 182 + ] + }, + { + "teal": 146, + "source": 22, + "errorMessage": "argument 0 (arg1) for ifElseIf must be a bool", + "pc": [ + 183 + ] + }, + { + "teal": 147, + "source": 22, + "pc": [ + 184 + ] + }, + { + "teal": 148, + "source": 22, + "pc": [ + 185 + ] + }, + { + "teal": 151, + "source": 22, + "pc": [ + 186, + 187, + 188 + ] + }, + { + "teal": 152, + "source": 22, + "pc": [ + 189 + ] + }, + { + "teal": 153, + "source": 22, + "pc": [ + 190 + ] + }, + { + "teal": 154, + "source": 22, + "pc": [ + 191 + ] + }, + { + "teal": 155, + "source": 22, + "pc": [ + 192 + ] + }, + { + "teal": 158, + "source": 22, + "errorMessage": "argument 1 (arg0) for ifElseIf must be a bool", + "pc": [ + 193 + ] + }, + { + "teal": 159, + "source": 22, + "pc": [ + 194 + ] + }, + { + "teal": 160, + "source": 22, + "pc": [ + 195 + ] + }, + { + "teal": 163, + "source": 22, + "pc": [ + 196, + 197, + 198 + ] + }, + { + "teal": 164, + "source": 22, + "pc": [ + 199 + ] + }, + { + "teal": 165, + "source": 22, + "pc": [ + 200 + ] + }, + { + "teal": 166, + "source": 22, + "pc": [ + 201 + ] + }, + { + "teal": 167, + "source": 22, + "pc": [ + 202, + 203, + 204 + ] + }, + { + "teal": 168, + "source": 22, + "pc": [ + 205 + ] + }, + { + "teal": 169, + "source": 22, + "pc": [ + 206 + ] + }, + { + "teal": 170, + "source": 22, + "pc": [ + 207 + ] + }, + { + "teal": 171, + "source": 22, + "pc": [ + 208 + ] + }, + { + "teal": 172, + "source": 22, + "pc": [ + 209 + ] + }, + { + "teal": 173, + "source": 22, + "pc": [ + 210 + ] + }, + { + "teal": 177, + "source": 22, + "pc": [ + 211, + 212, + 213 + ] + }, + { + "teal": 182, + "source": 23, + "pc": [ + 214, + 215 + ] + }, + { + "teal": 183, + "source": 23, + "pc": [ + 216, + 217, + 218 + ] + }, + { + "teal": 188, + "source": 24, + "pc": [ + 219 + ] + }, + { + "teal": 189, + "source": 24, + "pc": [ + 220 + ] + }, + { + "teal": 190, + "source": 23, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 195, + "source": 25, + "pc": [ + 224, + 225 + ] + }, + { + "teal": 196, + "source": 25, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 201, + "source": 26, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 202, + "source": 26, + "pc": [ + 231 + ] + }, + { + "teal": 207, + "source": 29, + "pc": [ + 232 + ] + }, + { + "teal": 208, + "source": 22, + "pc": [ + 233 + ] + }, + { + "teal": 213, + "source": 32, + "pc": [ + 234 + ] + }, + { + "teal": 216, + "source": 32, + "pc": [ + 235, + 236, + 237 + ] + }, + { + "teal": 217, + "source": 32, + "pc": [ + 238 + ] + }, + { + "teal": 218, + "source": 32, + "pc": [ + 239 + ] + }, + { + "teal": 219, + "source": 32, + "pc": [ + 240 + ] + }, + { + "teal": 220, + "source": 32, + "pc": [ + 241 + ] + }, + { + "teal": 223, + "source": 32, + "errorMessage": "argument 0 (arg1) for ifElseIfElse must be a bool", + "pc": [ + 242 + ] + }, + { + "teal": 224, + "source": 32, + "pc": [ + 243 + ] + }, + { + "teal": 225, + "source": 32, + "pc": [ + 244 + ] + }, + { + "teal": 228, + "source": 32, + "pc": [ + 245, + 246, + 247 + ] + }, + { + "teal": 229, + "source": 32, + "pc": [ + 248 + ] + }, + { + "teal": 230, + "source": 32, + "pc": [ + 249 + ] + }, + { + "teal": 231, + "source": 32, + "pc": [ + 250 + ] + }, + { + "teal": 232, + "source": 32, + "pc": [ + 251 + ] + }, + { + "teal": 235, + "source": 32, + "errorMessage": "argument 1 (arg0) for ifElseIfElse must be a bool", + "pc": [ + 252 + ] + }, + { + "teal": 236, + "source": 32, + "pc": [ + 253 + ] + }, + { + "teal": 237, + "source": 32, + "pc": [ + 254 + ] + }, + { + "teal": 240, + "source": 32, + "pc": [ + 255, + 256, + 257 + ] + }, + { + "teal": 241, + "source": 32, + "pc": [ + 258 + ] + }, + { + "teal": 242, + "source": 32, + "pc": [ + 259 + ] + }, + { + "teal": 243, + "source": 32, + "pc": [ + 260 + ] + }, + { + "teal": 244, + "source": 32, + "pc": [ + 261, + 262, + 263 + ] + }, + { + "teal": 245, + "source": 32, + "pc": [ + 264 + ] + }, + { + "teal": 246, + "source": 32, + "pc": [ + 265 + ] + }, + { + "teal": 247, + "source": 32, + "pc": [ + 266 + ] + }, + { + "teal": 248, + "source": 32, + "pc": [ + 267 + ] + }, + { + "teal": 249, + "source": 32, + "pc": [ + 268 + ] + }, + { + "teal": 250, + "source": 32, + "pc": [ + 269 + ] + }, + { + "teal": 254, + "source": 32, + "pc": [ + 270, + 271, + 272 + ] + }, + { + "teal": 259, + "source": 33, + "pc": [ + 273, + 274 + ] + }, + { + "teal": 260, + "source": 33, + "pc": [ + 275, + 276, + 277 + ] + }, + { + "teal": 265, + "source": 34, + "pc": [ + 278 + ] + }, + { + "teal": 266, + "source": 34, + "pc": [ + 279 + ] + }, + { + "teal": 267, + "source": 33, + "pc": [ + 280, + 281, + 282 + ] + }, + { + "teal": 272, + "source": 35, + "pc": [ + 283, + 284 + ] + }, + { + "teal": 273, + "source": 35, + "pc": [ + 285, + 286, + 287 + ] + }, + { + "teal": 278, + "source": 36, + "pc": [ + 288, + 289 + ] + }, + { + "teal": 279, + "source": 36, + "pc": [ + 290 + ] + }, + { + "teal": 280, + "source": 35, + "pc": [ + 291, + 292, + 293 + ] + }, + { + "teal": 285, + "source": 38, + "pc": [ + 294 + ] + }, + { + "teal": 286, + "source": 38, + "pc": [ + 295 + ] + }, + { + "teal": 289, + "source": 32, + "pc": [ + 296 + ] + }, + { + "teal": 294, + "source": 42, + "pc": [ + 297 + ] + }, + { + "teal": 297, + "source": 42, + "pc": [ + 298, + 299, + 300 + ] + }, + { + "teal": 298, + "source": 42, + "pc": [ + 301 + ] + }, + { + "teal": 299, + "source": 42, + "pc": [ + 302 + ] + }, + { + "teal": 300, + "source": 42, + "pc": [ + 303 + ] + }, + { + "teal": 301, + "source": 42, + "pc": [ + 304 + ] + }, + { + "teal": 304, + "source": 42, + "errorMessage": "argument 0 (arg2) for ifElseIfElseIf must be a bool", + "pc": [ + 305 + ] + }, + { + "teal": 305, + "source": 42, + "pc": [ + 306 + ] + }, + { + "teal": 306, + "source": 42, + "pc": [ + 307 + ] + }, + { + "teal": 309, + "source": 42, + "pc": [ + 308, + 309, + 310 + ] + }, + { + "teal": 310, + "source": 42, + "pc": [ + 311 + ] + }, + { + "teal": 311, + "source": 42, + "pc": [ + 312 + ] + }, + { + "teal": 312, + "source": 42, + "pc": [ + 313 + ] + }, + { + "teal": 313, + "source": 42, + "pc": [ + 314 + ] + }, + { + "teal": 316, + "source": 42, + "errorMessage": "argument 1 (arg1) for ifElseIfElseIf must be a bool", + "pc": [ + 315 + ] + }, + { + "teal": 317, + "source": 42, + "pc": [ + 316 + ] + }, + { + "teal": 318, + "source": 42, + "pc": [ + 317 + ] + }, + { + "teal": 321, + "source": 42, + "pc": [ + 318, + 319, + 320 + ] + }, + { + "teal": 322, + "source": 42, + "pc": [ + 321 + ] + }, + { + "teal": 323, + "source": 42, + "pc": [ + 322 + ] + }, + { + "teal": 324, + "source": 42, + "pc": [ + 323 + ] + }, + { + "teal": 325, + "source": 42, + "pc": [ + 324 + ] + }, + { + "teal": 328, + "source": 42, + "errorMessage": "argument 2 (arg0) for ifElseIfElseIf must be a bool", + "pc": [ + 325 + ] + }, + { + "teal": 329, + "source": 42, + "pc": [ + 326 + ] + }, + { + "teal": 330, + "source": 42, + "pc": [ + 327 + ] + }, + { + "teal": 333, + "source": 42, + "pc": [ + 328, + 329, + 330 + ] + }, + { + "teal": 334, + "source": 42, + "pc": [ + 331 + ] + }, + { + "teal": 335, + "source": 42, + "pc": [ + 332 + ] + }, + { + "teal": 336, + "source": 42, + "pc": [ + 333 + ] + }, + { + "teal": 337, + "source": 42, + "pc": [ + 334, + 335, + 336 + ] + }, + { + "teal": 338, + "source": 42, + "pc": [ + 337 + ] + }, + { + "teal": 339, + "source": 42, + "pc": [ + 338 + ] + }, + { + "teal": 340, + "source": 42, + "pc": [ + 339 + ] + }, + { + "teal": 341, + "source": 42, + "pc": [ + 340 + ] + }, + { + "teal": 342, + "source": 42, + "pc": [ + 341 + ] + }, + { + "teal": 343, + "source": 42, + "pc": [ + 342 + ] + }, + { + "teal": 347, + "source": 42, + "pc": [ + 343, + 344, + 345 + ] + }, + { + "teal": 352, + "source": 43, + "pc": [ + 346, + 347 + ] + }, + { + "teal": 353, + "source": 43, + "pc": [ + 348, + 349, + 350 + ] + }, + { + "teal": 358, + "source": 44, + "pc": [ + 351 + ] + }, + { + "teal": 359, + "source": 44, + "pc": [ + 352 + ] + }, + { + "teal": 360, + "source": 43, + "pc": [ + 353, + 354, + 355 + ] + }, + { + "teal": 365, + "source": 45, + "pc": [ + 356, + 357 + ] + }, + { + "teal": 366, + "source": 45, + "pc": [ + 358, + 359, + 360 + ] + }, + { + "teal": 371, + "source": 46, + "pc": [ + 361, + 362 + ] + }, + { + "teal": 372, + "source": 46, + "pc": [ + 363 + ] + }, + { + "teal": 373, + "source": 45, + "pc": [ + 364, + 365, + 366 + ] + }, + { + "teal": 378, + "source": 47, + "pc": [ + 367, + 368 + ] + }, + { + "teal": 379, + "source": 47, + "pc": [ + 369, + 370, + 371 + ] + }, + { + "teal": 384, + "source": 48, + "pc": [ + 372, + 373 + ] + }, + { + "teal": 385, + "source": 48, + "pc": [ + 374 + ] + }, + { + "teal": 390, + "source": 51, + "pc": [ + 375 + ] + }, + { + "teal": 391, + "source": 42, + "pc": [ + 376 + ] + }, + { + "teal": 396, + "source": 54, + "pc": [ + 377 + ] + }, + { + "teal": 399, + "source": 54, + "pc": [ + 378, + 379, + 380 + ] + }, + { + "teal": 400, + "source": 54, + "pc": [ + 381 + ] + }, + { + "teal": 401, + "source": 54, + "pc": [ + 382 + ] + }, + { + "teal": 402, + "source": 54, + "pc": [ + 383 + ] + }, + { + "teal": 403, + "source": 54, + "pc": [ + 384 + ] + }, + { + "teal": 406, + "source": 54, + "errorMessage": "argument 0 (arg2) for ifElseIfElseIfElse must be a bool", + "pc": [ + 385 + ] + }, + { + "teal": 407, + "source": 54, + "pc": [ + 386 + ] + }, + { + "teal": 408, + "source": 54, + "pc": [ + 387 + ] + }, + { + "teal": 411, + "source": 54, + "pc": [ + 388, + 389, + 390 + ] + }, + { + "teal": 412, + "source": 54, + "pc": [ + 391 + ] + }, + { + "teal": 413, + "source": 54, + "pc": [ + 392 + ] + }, + { + "teal": 414, + "source": 54, + "pc": [ + 393 + ] + }, + { + "teal": 415, + "source": 54, + "pc": [ + 394 + ] + }, + { + "teal": 418, + "source": 54, + "errorMessage": "argument 1 (arg1) for ifElseIfElseIfElse must be a bool", + "pc": [ + 395 + ] + }, + { + "teal": 419, + "source": 54, + "pc": [ + 396 + ] + }, + { + "teal": 420, + "source": 54, + "pc": [ + 397 + ] + }, + { + "teal": 423, + "source": 54, + "pc": [ + 398, + 399, + 400 + ] + }, + { + "teal": 424, + "source": 54, + "pc": [ + 401 + ] + }, + { + "teal": 425, + "source": 54, + "pc": [ + 402 + ] + }, + { + "teal": 426, + "source": 54, + "pc": [ + 403 + ] + }, + { + "teal": 427, + "source": 54, + "pc": [ + 404 + ] + }, + { + "teal": 430, + "source": 54, + "errorMessage": "argument 2 (arg0) for ifElseIfElseIfElse must be a bool", + "pc": [ + 405 + ] + }, + { + "teal": 431, + "source": 54, + "pc": [ + 406 + ] + }, + { + "teal": 432, + "source": 54, + "pc": [ + 407 + ] + }, + { + "teal": 435, + "source": 54, + "pc": [ + 408, + 409, + 410 + ] + }, + { + "teal": 436, + "source": 54, + "pc": [ + 411 + ] + }, + { + "teal": 437, + "source": 54, + "pc": [ + 412 + ] + }, + { + "teal": 438, + "source": 54, + "pc": [ + 413 + ] + }, + { + "teal": 439, + "source": 54, + "pc": [ + 414, + 415, + 416 + ] + }, + { + "teal": 440, + "source": 54, + "pc": [ + 417 + ] + }, + { + "teal": 441, + "source": 54, + "pc": [ + 418 + ] + }, + { + "teal": 442, + "source": 54, + "pc": [ + 419 + ] + }, + { + "teal": 443, + "source": 54, + "pc": [ + 420 + ] + }, + { + "teal": 444, + "source": 54, + "pc": [ + 421 + ] + }, + { + "teal": 445, + "source": 54, + "pc": [ + 422 + ] + }, + { + "teal": 449, + "source": 54, + "pc": [ + 423, + 424, + 425 + ] + }, + { + "teal": 454, + "source": 55, + "pc": [ + 426, + 427 + ] + }, + { + "teal": 455, + "source": 55, + "pc": [ + 428, + 429, + 430 + ] + }, + { + "teal": 460, + "source": 56, + "pc": [ + 431 + ] + }, + { + "teal": 461, + "source": 56, + "pc": [ + 432 + ] + }, + { + "teal": 462, + "source": 55, + "pc": [ + 433, + 434, + 435 + ] + }, + { + "teal": 467, + "source": 57, + "pc": [ + 436, + 437 + ] + }, + { + "teal": 468, + "source": 57, + "pc": [ + 438, + 439, + 440 + ] + }, + { + "teal": 473, + "source": 58, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 474, + "source": 58, + "pc": [ + 443 + ] + }, + { + "teal": 475, + "source": 57, + "pc": [ + 444, + 445, + 446 + ] + }, + { + "teal": 480, + "source": 59, + "pc": [ + 447, + 448 + ] + }, + { + "teal": 481, + "source": 59, + "pc": [ + 449, + 450, + 451 + ] + }, + { + "teal": 486, + "source": 60, + "pc": [ + 452, + 453 + ] + }, + { + "teal": 487, + "source": 60, + "pc": [ + 454 + ] + }, + { + "teal": 488, + "source": 59, + "pc": [ + 455, + 456, + 457 + ] + }, + { + "teal": 493, + "source": 62, + "pc": [ + 458 + ] + }, + { + "teal": 494, + "source": 62, + "pc": [ + 459 + ] + }, + { + "teal": 497, + "source": 54, + "pc": [ + 460 + ] + }, + { + "teal": 502, + "source": 66, + "pc": [ + 461 + ] + }, + { + "teal": 505, + "source": 66, + "pc": [ + 462, + 463, + 464 + ] + }, + { + "teal": 506, + "source": 66, + "pc": [ + 465 + ] + }, + { + "teal": 507, + "source": 66, + "pc": [ + 466 + ] + }, + { + "teal": 508, + "source": 66, + "pc": [ + 467 + ] + }, + { + "teal": 509, + "source": 66, + "pc": [ + 468 + ] + }, + { + "teal": 512, + "source": 66, + "errorMessage": "argument 0 (arg1) for nestedIf must be a bool", + "pc": [ + 469 + ] + }, + { + "teal": 513, + "source": 66, + "pc": [ + 470 + ] + }, + { + "teal": 514, + "source": 66, + "pc": [ + 471 + ] + }, + { + "teal": 517, + "source": 66, + "pc": [ + 472, + 473, + 474 + ] + }, + { + "teal": 518, + "source": 66, + "pc": [ + 475 + ] + }, + { + "teal": 519, + "source": 66, + "pc": [ + 476 + ] + }, + { + "teal": 520, + "source": 66, + "pc": [ + 477 + ] + }, + { + "teal": 521, + "source": 66, + "pc": [ + 478 + ] + }, + { + "teal": 524, + "source": 66, + "errorMessage": "argument 1 (arg0) for nestedIf must be a bool", + "pc": [ + 479 + ] + }, + { + "teal": 525, + "source": 66, + "pc": [ + 480 + ] + }, + { + "teal": 526, + "source": 66, + "pc": [ + 481 + ] + }, + { + "teal": 529, + "source": 66, + "pc": [ + 482, + 483, + 484 + ] + }, + { + "teal": 530, + "source": 66, + "pc": [ + 485 + ] + }, + { + "teal": 531, + "source": 66, + "pc": [ + 486 + ] + }, + { + "teal": 532, + "source": 66, + "pc": [ + 487 + ] + }, + { + "teal": 533, + "source": 66, + "pc": [ + 488, + 489, + 490 + ] + }, + { + "teal": 534, + "source": 66, + "pc": [ + 491 + ] + }, + { + "teal": 535, + "source": 66, + "pc": [ + 492 + ] + }, + { + "teal": 536, + "source": 66, + "pc": [ + 493 + ] + }, + { + "teal": 537, + "source": 66, + "pc": [ + 494 + ] + }, + { + "teal": 538, + "source": 66, + "pc": [ + 495 + ] + }, + { + "teal": 539, + "source": 66, + "pc": [ + 496 + ] + }, + { + "teal": 543, + "source": 66, + "pc": [ + 497, + 498, + 499 + ] + }, + { + "teal": 548, + "source": 67, + "pc": [ + 500, + 501 + ] + }, + { + "teal": 549, + "source": 67, + "pc": [ + 502, + 503, + 504 + ] + }, + { + "teal": 555, + "source": 68, + "pc": [ + 505, + 506 + ] + }, + { + "teal": 556, + "source": 68, + "pc": [ + 507, + 508, + 509 + ] + }, + { + "teal": 561, + "source": 69, + "pc": [ + 510, + 511, + 512, + 513, + 514, + 515, + 516, + 517, + 518, + 519, + 520 + ] + }, + { + "teal": 562, + "source": 69, + "pc": [ + 521 + ] + }, + { + "teal": 567, + "source": 71, + "pc": [ + 522 + ] + }, + { + "teal": 568, + "source": 71, + "pc": [ + 523 + ] + }, + { + "teal": 569, + "source": 67, + "pc": [ + 524, + 525, + 526 + ] + }, + { + "teal": 574, + "source": 73, + "pc": [ + 527 + ] + }, + { + "teal": 575, + "source": 73, + "pc": [ + 528 + ] + }, + { + "teal": 578, + "source": 66, + "pc": [ + 529 + ] + }, + { + "teal": 583, + "source": 77, + "pc": [ + 530 + ] + }, + { + "teal": 586, + "source": 77, + "pc": [ + 531, + 532, + 533 + ] + }, + { + "teal": 587, + "source": 77, + "pc": [ + 534 + ] + }, + { + "teal": 588, + "source": 77, + "pc": [ + 535 + ] + }, + { + "teal": 589, + "source": 77, + "pc": [ + 536 + ] + }, + { + "teal": 590, + "source": 77, + "pc": [ + 537 + ] + }, + { + "teal": 593, + "source": 77, + "errorMessage": "argument 0 (arg0) for bracketlessIfElse must be a bool", + "pc": [ + 538 + ] + }, + { + "teal": 594, + "source": 77, + "pc": [ + 539 + ] + }, + { + "teal": 595, + "source": 77, + "pc": [ + 540 + ] + }, + { + "teal": 598, + "source": 77, + "pc": [ + 541, + 542, + 543 + ] + }, + { + "teal": 599, + "source": 77, + "pc": [ + 544 + ] + }, + { + "teal": 600, + "source": 77, + "pc": [ + 545 + ] + }, + { + "teal": 601, + "source": 77, + "pc": [ + 546 + ] + }, + { + "teal": 602, + "source": 77, + "pc": [ + 547, + 548, + 549 + ] + }, + { + "teal": 603, + "source": 77, + "pc": [ + 550 + ] + }, + { + "teal": 604, + "source": 77, + "pc": [ + 551 + ] + }, + { + "teal": 605, + "source": 77, + "pc": [ + 552 + ] + }, + { + "teal": 606, + "source": 77, + "pc": [ + 553 + ] + }, + { + "teal": 607, + "source": 77, + "pc": [ + 554 + ] + }, + { + "teal": 608, + "source": 77, + "pc": [ + 555 + ] + }, + { + "teal": 612, + "source": 77, + "pc": [ + 556, + 557, + 558 + ] + }, + { + "teal": 617, + "source": 78, + "pc": [ + 559, + 560 + ] + }, + { + "teal": 618, + "source": 78, + "pc": [ + 561, + 562, + 563 + ] + }, + { + "teal": 623, + "source": 78, + "pc": [ + 564 + ] + }, + { + "teal": 624, + "source": 78, + "pc": [ + 565 + ] + }, + { + "teal": 625, + "source": 78, + "pc": [ + 566, + 567, + 568 + ] + }, + { + "teal": 630, + "source": 79, + "pc": [ + 569 + ] + }, + { + "teal": 631, + "source": 79, + "pc": [ + 570 + ] + }, + { + "teal": 634, + "source": 77, + "pc": [ + 571 + ] + }, + { + "teal": 639, + "source": 82, + "pc": [ + 572 + ] + }, + { + "teal": 642, + "source": 82, + "pc": [ + 573, + 574, + 575 + ] + }, + { + "teal": 643, + "source": 82, + "pc": [ + 576 + ] + }, + { + "teal": 644, + "source": 82, + "pc": [ + 577 + ] + }, + { + "teal": 645, + "source": 82, + "pc": [ + 578 + ] + }, + { + "teal": 646, + "source": 82, + "pc": [ + 579 + ] + }, + { + "teal": 649, + "source": 82, + "errorMessage": "argument 0 (arg1) for nestedTernary must be a bool", + "pc": [ + 580 + ] + }, + { + "teal": 650, + "source": 82, + "pc": [ + 581 + ] + }, + { + "teal": 651, + "source": 82, + "pc": [ + 582 + ] + }, + { + "teal": 654, + "source": 82, + "pc": [ + 583, + 584, + 585 + ] + }, + { + "teal": 655, + "source": 82, + "pc": [ + 586 + ] + }, + { + "teal": 656, + "source": 82, + "pc": [ + 587 + ] + }, + { + "teal": 657, + "source": 82, + "pc": [ + 588 + ] + }, + { + "teal": 658, + "source": 82, + "pc": [ + 589 + ] + }, + { + "teal": 661, + "source": 82, + "errorMessage": "argument 1 (arg0) for nestedTernary must be a bool", + "pc": [ + 590 + ] + }, + { + "teal": 662, + "source": 82, + "pc": [ + 591 + ] + }, + { + "teal": 663, + "source": 82, + "pc": [ + 592 + ] + }, + { + "teal": 666, + "source": 82, + "pc": [ + 593, + 594, + 595 + ] + }, + { + "teal": 667, + "source": 82, + "pc": [ + 596 + ] + }, + { + "teal": 668, + "source": 82, + "pc": [ + 597 + ] + }, + { + "teal": 669, + "source": 82, + "pc": [ + 598 + ] + }, + { + "teal": 670, + "source": 82, + "pc": [ + 599 + ] + }, + { + "teal": 671, + "source": 82, + "pc": [ + 600 + ] + }, + { + "teal": 675, + "source": 82, + "pc": [ + 601, + 602, + 603 + ] + }, + { + "teal": 679, + "source": 84, + "pc": [ + 604, + 605 + ] + }, + { + "teal": 680, + "source": 84, + "pc": [ + 606, + 607, + 608 + ] + }, + { + "teal": 681, + "source": 84, + "pc": [ + 609 + ] + }, + { + "teal": 682, + "source": 84, + "pc": [ + 610, + 611, + 612 + ] + }, + { + "teal": 685, + "source": 84, + "pc": [ + 613, + 614 + ] + }, + { + "teal": 686, + "source": 84, + "pc": [ + 615, + 616, + 617 + ] + }, + { + "teal": 687, + "source": 84, + "pc": [ + 618 + ] + }, + { + "teal": 688, + "source": 84, + "pc": [ + 619, + 620, + 621 + ] + }, + { + "teal": 691, + "source": 84, + "pc": [ + 622, + 623 + ] + }, + { + "teal": 696, + "source": 82, + "pc": [ + 624 + ] + }, + { + "teal": 701, + "source": 87, + "pc": [ + 625 + ] + }, + { + "teal": 704, + "source": 87, + "pc": [ + 626, + 627, + 628 + ] + }, + { + "teal": 705, + "source": 87, + "pc": [ + 629, + 630, + 631 + ] + }, + { + "teal": 708, + "source": 87, + "pc": [ + 632, + 633, + 634 + ] + }, + { + "teal": 709, + "source": 87, + "pc": [ + 635 + ] + }, + { + "teal": 710, + "source": 87, + "pc": [ + 636 + ] + }, + { + "teal": 711, + "source": 87, + "pc": [ + 637 + ] + }, + { + "teal": 712, + "source": 87, + "pc": [ + 638 + ] + }, + { + "teal": 713, + "source": 87, + "pc": [ + 639 + ] + }, + { + "teal": 717, + "source": 87, + "pc": [ + 640, + 641, + 642 + ] + }, + { + "teal": 722, + "source": 88, + "pc": [ + 643, + 644 + ] + }, + { + "teal": 723, + "source": 88, + "pc": [ + 645, + 646 + ] + }, + { + "teal": 724, + "source": 88, + "pc": [ + 647 + ] + }, + { + "teal": 725, + "source": 88, + "pc": [ + 648, + 649, + 650 + ] + }, + { + "teal": 730, + "source": 89, + "pc": [ + 651 + ] + }, + { + "teal": 731, + "source": 89, + "pc": [ + 652 + ] + }, + { + "teal": 736, + "source": 92, + "pc": [ + 653 + ] + }, + { + "teal": 737, + "source": 87, + "pc": [ + 654 + ] + }, + { + "teal": 742, + "source": 95, + "pc": [ + 655 + ] + }, + { + "teal": 745, + "source": 95, + "pc": [ + 656, + 657, + 658 + ] + }, + { + "teal": 746, + "source": 95, + "pc": [ + 659, + 660, + 661 + ] + }, + { + "teal": 749, + "source": 95, + "pc": [ + 662, + 663, + 664 + ] + }, + { + "teal": 750, + "source": 95, + "pc": [ + 665 + ] + }, + { + "teal": 751, + "source": 95, + "pc": [ + 666 + ] + }, + { + "teal": 752, + "source": 95, + "pc": [ + 667 + ] + }, + { + "teal": 753, + "source": 95, + "pc": [ + 668 + ] + }, + { + "teal": 754, + "source": 95, + "pc": [ + 669 + ] + }, + { + "teal": 758, + "source": 95, + "pc": [ + 670, + 671, + 672 + ] + }, + { + "teal": 762, + "source": 96, + "pc": [ + 673, + 674 + ] + }, + { + "teal": 763, + "source": 96, + "pc": [ + 675, + 676 + ] + }, + { + "teal": 764, + "source": 96, + "pc": [ + 677 + ] + }, + { + "teal": 765, + "source": 96, + "pc": [ + 678, + 679, + 680 + ] + }, + { + "teal": 766, + "source": 96, + "pc": [ + 681 + ] + }, + { + "teal": 767, + "source": 96, + "pc": [ + 682, + 683, + 684 + ] + }, + { + "teal": 770, + "source": 96, + "pc": [ + 685 + ] + }, + { + "teal": 773, + "source": 95, + "pc": [ + 686 + ] + }, + { + "teal": 778, + "source": 99, + "pc": [ + 687, + 688, + 689 + ] + }, + { + "teal": 779, + "source": 99, + "pc": [ + 690 + ] + }, + { + "teal": 780, + "source": 99, + "pc": [ + 691 + ] + }, + { + "teal": 781, + "source": 99, + "pc": [ + 692 + ] + }, + { + "teal": 782, + "source": 99, + "pc": [ + 693 + ] + }, + { + "teal": 785, + "source": 99, + "errorMessage": "argument 0 (a) for smallUintConditional must be a uint16", + "pc": [ + 694 + ] + }, + { + "teal": 786, + "source": 99, + "pc": [ + 695 + ] + }, + { + "teal": 789, + "source": 99, + "pc": [ + 696, + 697, + 698 + ] + }, + { + "teal": 790, + "source": 99, + "pc": [ + 699 + ] + }, + { + "teal": 791, + "source": 99, + "pc": [ + 700 + ] + }, + { + "teal": 795, + "source": 99, + "pc": [ + 701, + 702, + 703 + ] + }, + { + "teal": 800, + "source": 100, + "pc": [ + 704, + 705 + ] + }, + { + "teal": 801, + "source": 100, + "pc": [ + 706, + 707 + ] + }, + { + "teal": 802, + "source": 100, + "pc": [ + 708 + ] + }, + { + "teal": 803, + "source": 100, + "pc": [ + 709, + 710, + 711 + ] + }, + { + "teal": 808, + "source": 101, + "pc": [ + 712, + 713 + ] + }, + { + "teal": 809, + "source": 101, + "pc": [ + 714 + ] + }, + { + "teal": 812, + "source": 99, + "pc": [ + 715 + ] + }, + { + "teal": 817, + "source": 105, + "pc": [ + 716, + 717, + 718 + ] + }, + { + "teal": 818, + "source": 105, + "pc": [ + 719 + ] + }, + { + "teal": 819, + "source": 105, + "pc": [ + 720 + ] + }, + { + "teal": 820, + "source": 105, + "pc": [ + 721 + ] + }, + { + "teal": 821, + "source": 105, + "pc": [ + 722 + ] + }, + { + "teal": 824, + "source": 105, + "errorMessage": "argument 0 (b) for smallUintComparisonConditional must be a uint16", + "pc": [ + 723 + ] + }, + { + "teal": 825, + "source": 105, + "pc": [ + 724 + ] + }, + { + "teal": 828, + "source": 105, + "pc": [ + 725, + 726, + 727 + ] + }, + { + "teal": 829, + "source": 105, + "pc": [ + 728 + ] + }, + { + "teal": 830, + "source": 105, + "pc": [ + 729 + ] + }, + { + "teal": 831, + "source": 105, + "pc": [ + 730 + ] + }, + { + "teal": 832, + "source": 105, + "pc": [ + 731 + ] + }, + { + "teal": 835, + "source": 105, + "errorMessage": "argument 1 (a) for smallUintComparisonConditional must be a uint16", + "pc": [ + 732 + ] + }, + { + "teal": 836, + "source": 105, + "pc": [ + 733 + ] + }, + { + "teal": 839, + "source": 105, + "pc": [ + 734, + 735, + 736 + ] + }, + { + "teal": 840, + "source": 105, + "pc": [ + 737 + ] + }, + { + "teal": 841, + "source": 105, + "pc": [ + 738 + ] + }, + { + "teal": 845, + "source": 105, + "pc": [ + 739, + 740, + 741 + ] + }, + { + "teal": 850, + "source": 106, + "pc": [ + 742, + 743 + ] + }, + { + "teal": 851, + "source": 106, + "pc": [ + 744, + 745 + ] + }, + { + "teal": 852, + "source": 106, + "pc": [ + 746 + ] + }, + { + "teal": 853, + "source": 106, + "pc": [ + 747, + 748, + 749 + ] + }, + { + "teal": 858, + "source": 107, + "pc": [ + 750, + 751 + ] + }, + { + "teal": 859, + "source": 107, + "pc": [ + 752 + ] + }, + { + "teal": 862, + "source": 105, + "pc": [ + 753 + ] + }, + { + "teal": 867, + "source": 111, + "pc": [ + 754, + 755, + 756 + ] + }, + { + "teal": 868, + "source": 111, + "pc": [ + 757 + ] + }, + { + "teal": 869, + "source": 111, + "pc": [ + 758 + ] + }, + { + "teal": 870, + "source": 111, + "pc": [ + 759 + ] + }, + { + "teal": 871, + "source": 111, + "pc": [ + 760 + ] + }, + { + "teal": 874, + "source": 111, + "errorMessage": "argument 0 (b) for uint256ComparsionConditional must be a uint256", + "pc": [ + 761 + ] + }, + { + "teal": 877, + "source": 111, + "pc": [ + 762, + 763, + 764 + ] + }, + { + "teal": 878, + "source": 111, + "pc": [ + 765 + ] + }, + { + "teal": 879, + "source": 111, + "pc": [ + 766 + ] + }, + { + "teal": 880, + "source": 111, + "pc": [ + 767 + ] + }, + { + "teal": 881, + "source": 111, + "pc": [ + 768 + ] + }, + { + "teal": 884, + "source": 111, + "errorMessage": "argument 1 (a) for uint256ComparsionConditional must be a uint256", + "pc": [ + 769 + ] + }, + { + "teal": 887, + "source": 111, + "pc": [ + 770, + 771, + 772 + ] + }, + { + "teal": 888, + "source": 111, + "pc": [ + 773 + ] + }, + { + "teal": 889, + "source": 111, + "pc": [ + 774 + ] + }, + { + "teal": 893, + "source": 111, + "pc": [ + 775, + 776, + 777 + ] + }, + { + "teal": 898, + "source": 112, + "pc": [ + 778, + 779 + ] + }, + { + "teal": 899, + "source": 112, + "pc": [ + 780, + 781 + ] + }, + { + "teal": 900, + "source": 112, + "pc": [ + 782 + ] + }, + { + "teal": 901, + "source": 112, + "pc": [ + 783, + 784, + 785 + ] + }, + { + "teal": 906, + "source": 113, + "pc": [ + 786, + 787 + ] + }, + { + "teal": 907, + "source": 113, + "pc": [ + 788 + ] + }, + { + "teal": 910, + "source": 111, + "pc": [ + 789 + ] + }, + { + "teal": 915, + "source": 117, + "pc": [ + 790 + ] + }, + { + "teal": 918, + "source": 117, + "pc": [ + 791, + 792, + 793 + ] + }, + { + "teal": 919, + "source": 117, + "pc": [ + 794 + ] + }, + { + "teal": 920, + "source": 117, + "pc": [ + 795 + ] + }, + { + "teal": 921, + "source": 117, + "pc": [ + 796 + ] + }, + { + "teal": 922, + "source": 117, + "pc": [ + 797 + ] + }, + { + "teal": 925, + "source": 117, + "errorMessage": "argument 0 (b) for nestedIfInElseIf must be a bool", + "pc": [ + 798 + ] + }, + { + "teal": 926, + "source": 117, + "pc": [ + 799 + ] + }, + { + "teal": 927, + "source": 117, + "pc": [ + 800 + ] + }, + { + "teal": 930, + "source": 117, + "pc": [ + 801, + 802, + 803 + ] + }, + { + "teal": 931, + "source": 117, + "pc": [ + 804 + ] + }, + { + "teal": 932, + "source": 117, + "pc": [ + 805 + ] + }, + { + "teal": 933, + "source": 117, + "pc": [ + 806 + ] + }, + { + "teal": 934, + "source": 117, + "pc": [ + 807 + ] + }, + { + "teal": 937, + "source": 117, + "errorMessage": "argument 1 (a) for nestedIfInElseIf must be a bool", + "pc": [ + 808 + ] + }, + { + "teal": 938, + "source": 117, + "pc": [ + 809 + ] + }, + { + "teal": 939, + "source": 117, + "pc": [ + 810 + ] + }, + { + "teal": 942, + "source": 117, + "pc": [ + 811, + 812, + 813 + ] + }, + { + "teal": 943, + "source": 117, + "pc": [ + 814 + ] + }, + { + "teal": 944, + "source": 117, + "pc": [ + 815 + ] + }, + { + "teal": 945, + "source": 117, + "pc": [ + 816 + ] + }, + { + "teal": 946, + "source": 117, + "pc": [ + 817, + 818, + 819 + ] + }, + { + "teal": 947, + "source": 117, + "pc": [ + 820 + ] + }, + { + "teal": 948, + "source": 117, + "pc": [ + 821 + ] + }, + { + "teal": 949, + "source": 117, + "pc": [ + 822 + ] + }, + { + "teal": 950, + "source": 117, + "pc": [ + 823 + ] + }, + { + "teal": 951, + "source": 117, + "pc": [ + 824 + ] + }, + { + "teal": 952, + "source": 117, + "pc": [ + 825 + ] + }, + { + "teal": 956, + "source": 117, + "pc": [ + 826, + 827, + 828 + ] + }, + { + "teal": 961, + "source": 118, + "pc": [ + 829, + 830 + ] + }, + { + "teal": 962, + "source": 118, + "pc": [ + 831, + 832, + 833 + ] + }, + { + "teal": 968, + "source": 119, + "pc": [ + 834, + 835 + ] + }, + { + "teal": 969, + "source": 119, + "pc": [ + 836, + 837, + 838 + ] + }, + { + "teal": 974, + "source": 120, + "pc": [ + 839, + 840, + 841, + 842, + 843, + 844, + 845, + 846, + 847 + ] + }, + { + "teal": 975, + "source": 120, + "pc": [ + 848 + ] + }, + { + "teal": 976, + "source": 119, + "pc": [ + 849, + 850, + 851 + ] + }, + { + "teal": 981, + "source": 122, + "pc": [ + 852, + 853, + 854 + ] + }, + { + "teal": 982, + "source": 122, + "pc": [ + 855 + ] + }, + { + "teal": 985, + "source": 118, + "pc": [ + 856, + 857, + 858 + ] + }, + { + "teal": 990, + "source": 124, + "pc": [ + 859, + 860 + ] + }, + { + "teal": 991, + "source": 124, + "pc": [ + 861, + 862, + 863 + ] + }, + { + "teal": 996, + "source": 125, + "pc": [ + 864, + 865, + 866 + ] + }, + { + "teal": 997, + "source": 125, + "pc": [ + 867 + ] + }, + { + "teal": 998, + "source": 124, + "pc": [ + 868, + 869, + 870 + ] + }, + { + "teal": 1003, + "source": 127, + "pc": [ + 871, + 872, + 873, + 874, + 875, + 876, + 877, + 878, + 879 + ] + }, + { + "teal": 1004, + "source": 127, + "pc": [ + 880 + ] + }, + { + "teal": 1007, + "source": 117, + "pc": [ + 881 + ] + }, + { + "teal": 1010, + "source": 5, + "pc": [ + 882 + ] + }, + { + "teal": 1011, + "source": 5, + "pc": [ + 883 + ] + }, + { + "teal": 1014, + "source": 5, + "pc": [ + 884, + 885, + 886, + 887, + 888, + 889 + ] + }, + { + "teal": 1015, + "source": 5, + "pc": [ + 890, + 891, + 892 + ] + }, + { + "teal": 1016, + "source": 5, + "pc": [ + 893, + 894, + 895, + 896 + ] + }, + { + "teal": 1019, + "source": 5, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 897 + ] + }, + { + "teal": 1022, + "source": 5, + "pc": [ + 898, + 899, + 900, + 901, + 902, + 903 + ] + }, + { + "teal": 1023, + "source": 5, + "pc": [ + 904, + 905, + 906, + 907, + 908, + 909 + ] + }, + { + "teal": 1024, + "source": 5, + "pc": [ + 910, + 911, + 912, + 913, + 914, + 915 + ] + }, + { + "teal": 1025, + "source": 5, + "pc": [ + 916, + 917, + 918, + 919, + 920, + 921 + ] + }, + { + "teal": 1026, + "source": 5, + "pc": [ + 922, + 923, + 924, + 925, + 926, + 927 + ] + }, + { + "teal": 1027, + "source": 5, + "pc": [ + 928, + 929, + 930, + 931, + 932, + 933 + ] + }, + { + "teal": 1028, + "source": 5, + "pc": [ + 934, + 935, + 936, + 937, + 938, + 939 + ] + }, + { + "teal": 1029, + "source": 5, + "pc": [ + 940, + 941, + 942, + 943, + 944, + 945 + ] + }, + { + "teal": 1030, + "source": 5, + "pc": [ + 946, + 947, + 948, + 949, + 950, + 951 + ] + }, + { + "teal": 1031, + "source": 5, + "pc": [ + 952, + 953, + 954, + 955, + 956, + 957 + ] + }, + { + "teal": 1032, + "source": 5, + "pc": [ + 958, + 959, + 960, + 961, + 962, + 963 + ] + }, + { + "teal": 1033, + "source": 5, + "pc": [ + 964, + 965, + 966, + 967, + 968, + 969 + ] + }, + { + "teal": 1034, + "source": 5, + "pc": [ + 970, + 971, + 972, + 973, + 974, + 975 + ] + }, + { + "teal": 1035, + "source": 5, + "pc": [ + 976, + 977, + 978, + 979, + 980, + 981 + ] + }, + { + "teal": 1036, + "source": 5, + "pc": [ + 982, + 983, + 984, + 985, + 986, + 987 + ] + }, + { + "teal": 1037, + "source": 5, + "pc": [ + 988, + 989, + 990 + ] + }, + { + "teal": 1038, + "source": 5, + "pc": [ + 991, + 992, + 993, + 994, + 995, + 996, + 997, + 998, + 999, + 1000, + 1001, + 1002, + 1003, + 1004, + 1005, + 1006, + 1007, + 1008, + 1009, + 1010, + 1011, + 1012, + 1013, + 1014, + 1015, + 1016, + 1017, + 1018, + 1019, + 1020, + 1021, + 1022 + ] + }, + { + "teal": 1041, + "source": 5, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 1023 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW5nbGVJZihib29sKXN0cmluZwoqYWJpX3JvdXRlX3NpbmdsZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMCkgZm9yIHNpbmdsZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIHNpbmdsZUlmKGJvb2wpc3RyaW5nCgljYWxsc3ViIHNpbmdsZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNpbmdsZUlmKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKc2luZ2xlSWY6Cglwcm90byAxIDEKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcwKSBmb3IgaWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE1CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmMV9lbHNlCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxNgoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmMV9lbmQKCippZjFfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZwoqYWJpX3JvdXRlX2lmRWxzZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMSkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmKGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWYoYXJnMDogYm9vbGVhbiwgYXJnMTogYm9vbGVhbik6IHN0cmluZwppZkVsc2VJZjoKCXByb3RvIDIgMQoKCS8vICppZjJfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoyMwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjJfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI0CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWYyX2VuZAoKKmlmMl9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI1CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCippZjJfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjkKCS8vIHJldHVybiAnZW5kJzsKCWJ5dGUgMHg2NTZlNjQgLy8gImVuZCIKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBpZkVsc2VJZkVsc2UoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2VJZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWZFbHNlKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlOgoJcHJvdG8gMiAxCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjMzCgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmM19lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzQKCS8vIHJldHVybiAnaWYnOwoJYnl0ZSAweDY5NjYgLy8gImlmIgoJcmV0c3ViCgliICppZjNfZW5kCgoqaWYzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzUKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWYzX2Vsc2UKCgkvLyAqaWYzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCWIgKmlmM19lbmQKCippZjNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjM4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYzX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzI6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcyKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIGlmRWxzZUlmRWxzZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlSWY6Cglwcm90byAzIDEKCgkvLyAqaWY0X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDMKCS8vIGFyZzAKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBib29sZWFuCglieiAqaWY0X2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmNF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNF9lbmQKCippZjRfZWxzZWlmMV9jb25kaXRpb246CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NQoJLy8gYXJnMQoJZnJhbWVfZGlnIC0yIC8vIGFyZzE6IGJvb2xlYW4KCWJ6ICppZjRfZWxzZWlmMl9jb25kaXRpb24KCgkvLyAqaWY0X2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDYKCS8vIHJldHVybiAnZWxzZSBpZiAxJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzEgLy8gImVsc2UgaWYgMSIKCXJldHN1YgoJYiAqaWY0X2VuZAoKKmlmNF9lbHNlaWYyX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjQ3CgkvLyBhcmcyCglmcmFtZV9kaWcgLTMgLy8gYXJnMjogYm9vbGVhbgoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDgKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoKKmlmNF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1MQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2VJZkVsc2VJZkVsc2UoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWZFbHNlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcyOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMikgZm9yIGlmRWxzZUlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGFyZzEpIGZvciBpZkVsc2VJZkVsc2VJZkVsc2UgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmRWxzZUlmRWxzZShib29sLGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWZFbHNlSWZFbHNlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmRWxzZShhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuLCBhcmcyOiBib29sZWFuKTogc3RyaW5nCmlmRWxzZUlmRWxzZUlmRWxzZToKCXByb3RvIDMgMQoKCS8vICppZjVfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1NQoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjVfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU2CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU3CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmNV9lbHNlaWYyX2NvbmRpdGlvbgoKCS8vICppZjVfZWxzZWlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1OAoJLy8gcmV0dXJuICdlbHNlIGlmIDEnOwoJYnl0ZSAweDY1NmM3MzY1MjA2OTY2MjAzMSAvLyAiZWxzZSBpZiAxIgoJcmV0c3ViCgliICppZjVfZW5kCgoqaWY1X2Vsc2VpZjJfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NTkKCS8vIGFyZzIKCWZyYW1lX2RpZyAtMyAvLyBhcmcyOiBib29sZWFuCglieiAqaWY1X2Vsc2UKCgkvLyAqaWY1X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjAKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjIKCS8vIHJldHVybiAnZWxzZSc7CglieXRlIDB4NjU2YzczNjUgLy8gImVsc2UiCglyZXRzdWIKCippZjVfZW5kOgoJcmV0c3ViCgovLyBuZXN0ZWRJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcwKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWYoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBuZXN0ZWRJZgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRJZihhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmOgoJcHJvdG8gMiAxCgoJLy8gKmlmNl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjY3CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmNl9lbHNlCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyAqaWY3X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjgKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWY3X2VuZAoKCS8vICppZjdfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjkKCS8vIHJldHVybiAnbmVzdGVkIGlmJzsKCWJ5dGUgMHg2ZTY1NzM3NDY1NjQyMDY5NjYgLy8gIm5lc3RlZCBpZiIKCXJldHN1YgoKKmlmN19lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3MQoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNl9lbmQKCippZjZfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjczCgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY2X2VuZDoKCXJldHN1YgoKLy8gYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9icmFja2V0bGVzc0lmRWxzZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzApIGZvciBicmFja2V0bGVzc0lmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBicmFja2V0bGVzc0lmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBicmFja2V0bGVzc0lmRWxzZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmFja2V0bGVzc0lmRWxzZShhcmcwOiBib29sZWFuKTogc3RyaW5nCmJyYWNrZXRsZXNzSWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmOF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc4CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmOF9lbHNlCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3OAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmOF9lbmQKCippZjhfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc5CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY4X2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CiphYmlfcm91dGVfbmVzdGVkVGVybmFyeToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzEpIGZvciBuZXN0ZWRUZXJuYXJ5IG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIG5lc3RlZFRlcm5hcnkgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CgljYWxsc3ViIG5lc3RlZFRlcm5hcnkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRUZXJuYXJ5KGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiB1aW50NjQKbmVzdGVkVGVybmFyeToKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjg0CgkvLyByZXR1cm4gYXJnMCA/IDEgOiBhcmcxID8gMiA6IDM7CglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKnRlcm5hcnkxX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglpbnQgMwoKKnRlcm5hcnkxX2VuZDoKCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIHN0cmluZ0lmKHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RyaW5nSWYoc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdJZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ0lmKGFyZzA6IHN0cmluZyk6IHVpbnQ2NApzdHJpbmdJZjoKCXByb3RvIDEgMQoKCS8vICppZjlfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4OAoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IHN0cmluZwoJYnl0ZSAweAoJYiE9CglieiAqaWY5X2VuZAoKCS8vICppZjlfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6ODkKCS8vIHJldHVybiAxOwoJaW50IDEKCXJldHN1YgoKKmlmOV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5MgoJLy8gcmV0dXJuIDI7CglpbnQgMgoJcmV0c3ViCgovLyBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdUZXJuYXJ5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKCWNhbGxzdWIgc3RyaW5nVGVybmFyeQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1Rlcm5hcnkoYXJnMDogc3RyaW5nKTogdWludDY0CnN0cmluZ1Rlcm5hcnk6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5NgoJLy8gcmV0dXJuIGFyZzAgPyAxIDogMjsKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBzdHJpbmcKCWJ5dGUgMHgKCWIhPQoJYnogKnRlcm5hcnkyX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTJfZW5kCgoqdGVybmFyeTJfZmFsc2U6CglpbnQgMgoKKnRlcm5hcnkyX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29uZGl0aW9uYWwodWludDE2KXZvaWQKKmFiaV9yb3V0ZV9zbWFsbFVpbnRDb25kaXRpb25hbDoKCS8vIGE6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBzbWFsbFVpbnRDb25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbmRpdGlvbmFsKHVpbnQxNil2b2lkCgljYWxsc3ViIHNtYWxsVWludENvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb25kaXRpb25hbChhOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbmRpdGlvbmFsOgoJcHJvdG8gMSAwCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDAKCS8vIGEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWJ5dGUgMHgKCWIhPQoJYnogKmlmMTBfZW5kCgoJLy8gKmlmMTBfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTAxCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEwX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZAoqYWJpX3JvdXRlX3NtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQxNgoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCh1aW50MTYsdWludDE2KXZvaWQKCWNhbGxzdWIgc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwoYTogdWludDE2LCBiOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCXByb3RvIDIgMAoKCS8vICppZjExX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTA2CgkvLyBhIDw9IGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MTYKCTw9CglieiAqaWYxMV9lbmQKCgkvLyAqaWYxMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDcKCS8vIGxvZygnZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWxvZwoKKmlmMTFfZW5kOgoJcmV0c3ViCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKHVpbnQyNTYsdWludDI1Nil2b2lkCiphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB2b2lkCnVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWw6Cglwcm90byAyIDAKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExMgoJLy8gYSA8PSBiCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWI8PQoJYnogKmlmMTJfZW5kCgoJLy8gKmlmMTJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTEzCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEyX2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWZJbkVsc2VJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBuZXN0ZWRJZkluRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIG5lc3RlZElmSW5FbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIG5lc3RlZElmSW5FbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkSWZJbkVsc2VJZihhOiBib29sZWFuLCBiOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmSW5FbHNlSWY6Cglwcm90byAyIDEKCgkvLyAqaWYxM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExOAoJLy8gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCWJ6ICppZjEzX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMTNfY29uc2VxdWVudAoJLy8gKmlmMTRfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMTkKCS8vIGIKCWZyYW1lX2RpZyAtMiAvLyBiOiBib29sZWFuCglieiAqaWYxNF9lbHNlCgoJLy8gKmlmMTRfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTIwCgkvLyByZXR1cm4gJ2EgYW5kIGInOwoJYnl0ZSAweDYxMjA2MTZlNjQyMDYyIC8vICJhIGFuZCBiIgoJcmV0c3ViCgliICppZjE0X2VuZAoKKmlmMTRfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyMgoJLy8gcmV0dXJuICdhJzsKCWJ5dGUgMHg2MSAvLyAiYSIKCXJldHN1YgoKKmlmMTRfZW5kOgoJYiAqaWYxM19lbmQKCippZjEzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI0CgkvLyBiCglmcmFtZV9kaWcgLTIgLy8gYjogYm9vbGVhbgoJYnogKmlmMTNfZWxzZQoKCS8vICppZjEzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI1CgkvLyByZXR1cm4gJ2InOwoJYnl0ZSAweDYyIC8vICJiIgoJcmV0c3ViCgliICppZjEzX2VuZAoKKmlmMTNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyNwoJLy8gcmV0dXJuICduZWl0aGVyJzsKCWJ5dGUgMHg2ZTY1Njk3NDY4NjU3MiAvLyAibmVpdGhlciIKCXJldHN1YgoKKmlmMTNfZW5kOgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2luZ2xlSWYoYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZShib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZUlmRWxzZUlmKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlSWZFbHNlKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAibmVzdGVkSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmciCgltZXRob2QgIm5lc3RlZFRlcm5hcnkoYm9vbCxib29sKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nSWYoc3RyaW5nKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nVGVybmFyeShzdHJpbmcpdWludDY0IgoJbWV0aG9kICJzbWFsbFVpbnRDb25kaXRpb25hbCh1aW50MTYpdm9pZCIKCW1ldGhvZCAic21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZCIKCW1ldGhvZCAidWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZCIKCW1ldGhvZCAibmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zaW5nbGVJZiAqYWJpX3JvdXRlX2lmRWxzZSAqYWJpX3JvdXRlX2lmRWxzZUlmICphYmlfcm91dGVfaWZFbHNlSWZFbHNlICphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWYgKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2VJZkVsc2UgKmFiaV9yb3V0ZV9uZXN0ZWRJZiAqYWJpX3JvdXRlX2JyYWNrZXRsZXNzSWZFbHNlICphYmlfcm91dGVfbmVzdGVkVGVybmFyeSAqYWJpX3JvdXRlX3N0cmluZ0lmICphYmlfcm91dGVfc3RyaW5nVGVybmFyeSAqYWJpX3JvdXRlX3NtYWxsVWludENvbmRpdGlvbmFsICphYmlfcm91dGVfc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsICphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCAqYWJpX3JvdXRlX25lc3RlZElmSW5FbHNlSWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBzaW5nbGVJZihib29sKXN0cmluZwoqYWJpX3JvdXRlX3NpbmdsZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMCkgZm9yIHNpbmdsZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIHNpbmdsZUlmKGJvb2wpc3RyaW5nCgljYWxsc3ViIHNpbmdsZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHNpbmdsZUlmKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKc2luZ2xlSWY6Cglwcm90byAxIDEKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoKKmlmMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcwKSBmb3IgaWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlKGFyZzA6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmMV9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE1CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmMV9lbHNlCgoJLy8gKmlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxNgoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmMV9lbmQKCippZjFfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjE4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYxX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZwoqYWJpX3JvdXRlX2lmRWxzZUlmOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcxOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMSkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmKGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWYoYXJnMDogYm9vbGVhbiwgYXJnMTogYm9vbGVhbik6IHN0cmluZwppZkVsc2VJZjoKCXByb3RvIDIgMQoKCS8vICppZjJfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoyMwoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjJfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWYyX2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI0CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWYyX2VuZAoKKmlmMl9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjI1CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCippZjJfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MjkKCS8vIHJldHVybiAnZW5kJzsKCWJ5dGUgMHg2NTZlNjQgLy8gImVuZCIKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2U6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIGlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBpZkVsc2VJZkVsc2UoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBpZkVsc2VJZkVsc2UKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gaWZFbHNlSWZFbHNlKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlOgoJcHJvdG8gMiAxCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjMzCgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmM19lbHNlaWYxX2NvbmRpdGlvbgoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzQKCS8vIHJldHVybiAnaWYnOwoJYnl0ZSAweDY5NjYgLy8gImlmIgoJcmV0c3ViCgliICppZjNfZW5kCgoqaWYzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzUKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWYzX2Vsc2UKCgkvLyAqaWYzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MzYKCS8vIHJldHVybiAnZWxzZSBpZic7CglieXRlIDB4NjU2YzczNjUyMDY5NjYgLy8gImVsc2UgaWYiCglyZXRzdWIKCWIgKmlmM19lbmQKCippZjNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjM4CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWYzX2VuZDoKCXJldHN1YgoKLy8gaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzI6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcyKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcxKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgaWZFbHNlSWZFbHNlSWYoYm9vbCxib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIGlmRWxzZUlmRWxzZUlmCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmKGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4sIGFyZzI6IGJvb2xlYW4pOiBzdHJpbmcKaWZFbHNlSWZFbHNlSWY6Cglwcm90byAzIDEKCgkvLyAqaWY0X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDMKCS8vIGFyZzAKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBib29sZWFuCglieiAqaWY0X2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmNF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNF9lbmQKCippZjRfZWxzZWlmMV9jb25kaXRpb246CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo0NQoJLy8gYXJnMQoJZnJhbWVfZGlnIC0yIC8vIGFyZzE6IGJvb2xlYW4KCWJ6ICppZjRfZWxzZWlmMl9jb25kaXRpb24KCgkvLyAqaWY0X2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDYKCS8vIHJldHVybiAnZWxzZSBpZiAxJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzEgLy8gImVsc2UgaWYgMSIKCXJldHN1YgoJYiAqaWY0X2VuZAoKKmlmNF9lbHNlaWYyX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjQ3CgkvLyBhcmcyCglmcmFtZV9kaWcgLTMgLy8gYXJnMjogYm9vbGVhbgoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NDgKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoKKmlmNF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1MQoJLy8gcmV0dXJuICdlbmQnOwoJYnl0ZSAweDY1NmU2NCAvLyAiZW5kIgoJcmV0c3ViCgovLyBpZkVsc2VJZkVsc2VJZkVsc2UoYm9vbCxib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWZFbHNlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcyOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYXJnMikgZm9yIGlmRWxzZUlmRWxzZUlmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGFyZzEpIGZvciBpZkVsc2VJZkVsc2VJZkVsc2UgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAyIChhcmcwKSBmb3IgaWZFbHNlSWZFbHNlSWZFbHNlIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBleGVjdXRlIGlmRWxzZUlmRWxzZUlmRWxzZShib29sLGJvb2wsYm9vbClzdHJpbmcKCWNhbGxzdWIgaWZFbHNlSWZFbHNlSWZFbHNlCglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGlmRWxzZUlmRWxzZUlmRWxzZShhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuLCBhcmcyOiBib29sZWFuKTogc3RyaW5nCmlmRWxzZUlmRWxzZUlmRWxzZToKCXByb3RvIDMgMQoKCS8vICppZjVfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1NQoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IGJvb2xlYW4KCWJ6ICppZjVfZWxzZWlmMV9jb25kaXRpb24KCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU2CgkvLyByZXR1cm4gJ2lmJzsKCWJ5dGUgMHg2OTY2IC8vICJpZiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlaWYxX2NvbmRpdGlvbjoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjU3CgkvLyBhcmcxCglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKmlmNV9lbHNlaWYyX2NvbmRpdGlvbgoKCS8vICppZjVfZWxzZWlmMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo1OAoJLy8gcmV0dXJuICdlbHNlIGlmIDEnOwoJYnl0ZSAweDY1NmM3MzY1MjA2OTY2MjAzMSAvLyAiZWxzZSBpZiAxIgoJcmV0c3ViCgliICppZjVfZW5kCgoqaWY1X2Vsc2VpZjJfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NTkKCS8vIGFyZzIKCWZyYW1lX2RpZyAtMyAvLyBhcmcyOiBib29sZWFuCglieiAqaWY1X2Vsc2UKCgkvLyAqaWY1X2Vsc2VpZjJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjAKCS8vIHJldHVybiAnZWxzZSBpZiAyJzsKCWJ5dGUgMHg2NTZjNzM2NTIwNjk2NjIwMzIgLy8gImVsc2UgaWYgMiIKCXJldHN1YgoJYiAqaWY1X2VuZAoKKmlmNV9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjIKCS8vIHJldHVybiAnZWxzZSc7CglieXRlIDB4NjU2YzczNjUgLy8gImVsc2UiCglyZXRzdWIKCippZjVfZW5kOgoJcmV0c3ViCgovLyBuZXN0ZWRJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGFyZzE6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAwIChhcmcxKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGFyZzA6IGJvb2wKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhcmcwKSBmb3IgbmVzdGVkSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWYoYm9vbCxib29sKXN0cmluZwoJY2FsbHN1YiBuZXN0ZWRJZgoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRJZihhcmcwOiBib29sZWFuLCBhcmcxOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmOgoJcHJvdG8gMiAxCgoJLy8gKmlmNl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjY3CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmNl9lbHNlCgoJLy8gKmlmNl9jb25zZXF1ZW50CgkvLyAqaWY3X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjgKCS8vIGFyZzEKCWZyYW1lX2RpZyAtMiAvLyBhcmcxOiBib29sZWFuCglieiAqaWY3X2VuZAoKCS8vICppZjdfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6NjkKCS8vIHJldHVybiAnbmVzdGVkIGlmJzsKCWJ5dGUgMHg2ZTY1NzM3NDY1NjQyMDY5NjYgLy8gIm5lc3RlZCBpZiIKCXJldHN1YgoKKmlmN19lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3MQoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmNl9lbmQKCippZjZfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjczCgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY2X2VuZDoKCXJldHN1YgoKLy8gYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmcKKmFiaV9yb3V0ZV9icmFja2V0bGVzc0lmRWxzZToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzApIGZvciBicmFja2V0bGVzc0lmRWxzZSBtdXN0IGJlIGEgYm9vbAoJYXNzZXJ0CglpbnQgMAoJZ2V0Yml0CgoJLy8gZXhlY3V0ZSBicmFja2V0bGVzc0lmRWxzZShib29sKXN0cmluZwoJY2FsbHN1YiBicmFja2V0bGVzc0lmRWxzZQoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmFja2V0bGVzc0lmRWxzZShhcmcwOiBib29sZWFuKTogc3RyaW5nCmJyYWNrZXRsZXNzSWZFbHNlOgoJcHJvdG8gMSAxCgoJLy8gKmlmOF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc4CgkvLyBhcmcwCglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKmlmOF9lbHNlCgoJLy8gKmlmOF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo3OAoJLy8gcmV0dXJuICdpZic7CglieXRlIDB4Njk2NiAvLyAiaWYiCglyZXRzdWIKCWIgKmlmOF9lbmQKCippZjhfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjc5CgkvLyByZXR1cm4gJ2Vsc2UnOwoJYnl0ZSAweDY1NmM3MzY1IC8vICJlbHNlIgoJcmV0c3ViCgoqaWY4X2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CiphYmlfcm91dGVfbmVzdGVkVGVybmFyeToKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMTogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGFyZzEpIGZvciBuZXN0ZWRUZXJuYXJ5IG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhcmcwOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYXJnMCkgZm9yIG5lc3RlZFRlcm5hcnkgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkVGVybmFyeShib29sLGJvb2wpdWludDY0CgljYWxsc3ViIG5lc3RlZFRlcm5hcnkKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBuZXN0ZWRUZXJuYXJ5KGFyZzA6IGJvb2xlYW4sIGFyZzE6IGJvb2xlYW4pOiB1aW50NjQKbmVzdGVkVGVybmFyeToKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjg0CgkvLyByZXR1cm4gYXJnMCA/IDEgOiBhcmcxID8gMiA6IDM7CglmcmFtZV9kaWcgLTEgLy8gYXJnMDogYm9vbGVhbgoJYnogKnRlcm5hcnkwX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTBfZW5kCgoqdGVybmFyeTBfZmFsc2U6CglmcmFtZV9kaWcgLTIgLy8gYXJnMTogYm9vbGVhbgoJYnogKnRlcm5hcnkxX2ZhbHNlCglpbnQgMgoJYiAqdGVybmFyeTFfZW5kCgoqdGVybmFyeTFfZmFsc2U6CglpbnQgMwoKKnRlcm5hcnkxX2VuZDoKCip0ZXJuYXJ5MF9lbmQ6CglyZXRzdWIKCi8vIHN0cmluZ0lmKHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYXJnMDogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIGV4ZWN1dGUgc3RyaW5nSWYoc3RyaW5nKXVpbnQ2NAoJY2FsbHN1YiBzdHJpbmdJZgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ0lmKGFyZzA6IHN0cmluZyk6IHVpbnQ2NApzdHJpbmdJZjoKCXByb3RvIDEgMQoKCS8vICppZjlfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo4OAoJLy8gYXJnMAoJZnJhbWVfZGlnIC0xIC8vIGFyZzA6IHN0cmluZwoJYnl0ZSAweAoJYiE9CglieiAqaWY5X2VuZAoKCS8vICppZjlfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6ODkKCS8vIHJldHVybiAxOwoJaW50IDEKCXJldHN1YgoKKmlmOV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5MgoJLy8gcmV0dXJuIDI7CglpbnQgMgoJcmV0c3ViCgovLyBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKKmFiaV9yb3V0ZV9zdHJpbmdUZXJuYXJ5OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBhcmcwOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWV4dHJhY3QgMiAwCgoJLy8gZXhlY3V0ZSBzdHJpbmdUZXJuYXJ5KHN0cmluZyl1aW50NjQKCWNhbGxzdWIgc3RyaW5nVGVybmFyeQoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHN0cmluZ1Rlcm5hcnkoYXJnMDogc3RyaW5nKTogdWludDY0CnN0cmluZ1Rlcm5hcnk6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czo5NgoJLy8gcmV0dXJuIGFyZzAgPyAxIDogMjsKCWZyYW1lX2RpZyAtMSAvLyBhcmcwOiBzdHJpbmcKCWJ5dGUgMHgKCWIhPQoJYnogKnRlcm5hcnkyX2ZhbHNlCglpbnQgMQoJYiAqdGVybmFyeTJfZW5kCgoqdGVybmFyeTJfZmFsc2U6CglpbnQgMgoKKnRlcm5hcnkyX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29uZGl0aW9uYWwodWludDE2KXZvaWQKKmFiaV9yb3V0ZV9zbWFsbFVpbnRDb25kaXRpb25hbDoKCS8vIGE6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBzbWFsbFVpbnRDb25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbmRpdGlvbmFsKHVpbnQxNil2b2lkCgljYWxsc3ViIHNtYWxsVWludENvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb25kaXRpb25hbChhOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbmRpdGlvbmFsOgoJcHJvdG8gMSAwCgoJLy8gKmlmMTBfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDAKCS8vIGEKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWJ5dGUgMHgKCWIhPQoJYnogKmlmMTBfZW5kCgoJLy8gKmlmMTBfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTAxCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEwX2VuZDoKCXJldHN1YgoKLy8gc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZAoqYWJpX3JvdXRlX3NtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQxNgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQxNgoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDE2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCBtdXN0IGJlIGEgdWludDE2Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbCh1aW50MTYsdWludDE2KXZvaWQKCWNhbGxzdWIgc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyBzbWFsbFVpbnRDb21wYXJpc29uQ29uZGl0aW9uYWwoYTogdWludDE2LCBiOiB1aW50MTYpOiB2b2lkCnNtYWxsVWludENvbXBhcmlzb25Db25kaXRpb25hbDoKCXByb3RvIDIgMAoKCS8vICppZjExX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTA2CgkvLyBhIDw9IGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MTYKCTw9CglieiAqaWYxMV9lbmQKCgkvLyAqaWYxMV9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMDcKCS8vIGxvZygnZm9vJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWxvZwoKKmlmMTFfZW5kOgoJcmV0c3ViCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKHVpbnQyNTYsdWludDI1Nil2b2lkCiphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbDoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWwgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsCglpbnQgMQoJcmV0dXJuCgovLyB1aW50MjU2Q29tcGFyc2lvbkNvbmRpdGlvbmFsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB2b2lkCnVpbnQyNTZDb21wYXJzaW9uQ29uZGl0aW9uYWw6Cglwcm90byAyIDAKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExMgoJLy8gYSA8PSBiCglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWI8PQoJYnogKmlmMTJfZW5kCgoJLy8gKmlmMTJfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTEzCgkvLyBsb2coJ2ZvbycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglsb2cKCippZjEyX2VuZDoKCXJldHN1YgoKLy8gbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCiphYmlfcm91dGVfbmVzdGVkSWZJbkVsc2VJZjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBuZXN0ZWRJZkluRWxzZUlmIG11c3QgYmUgYSBib29sCglhc3NlcnQKCWludCAwCglnZXRiaXQKCgkvLyBhOiBib29sCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIG5lc3RlZElmSW5FbHNlSWYgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50IDAKCWdldGJpdAoKCS8vIGV4ZWN1dGUgbmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nCgljYWxsc3ViIG5lc3RlZElmSW5FbHNlSWYKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbmVzdGVkSWZJbkVsc2VJZihhOiBib29sZWFuLCBiOiBib29sZWFuKTogc3RyaW5nCm5lc3RlZElmSW5FbHNlSWY6Cglwcm90byAyIDEKCgkvLyAqaWYxM19jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjExOAoJLy8gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IGJvb2xlYW4KCWJ6ICppZjEzX2Vsc2VpZjFfY29uZGl0aW9uCgoJLy8gKmlmMTNfY29uc2VxdWVudAoJLy8gKmlmMTRfY29uZGl0aW9uCgkvLyB0ZXN0cy9jb250cmFjdHMvaWYuYWxnby50czoxMTkKCS8vIGIKCWZyYW1lX2RpZyAtMiAvLyBiOiBib29sZWFuCglieiAqaWYxNF9lbHNlCgoJLy8gKmlmMTRfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTIwCgkvLyByZXR1cm4gJ2EgYW5kIGInOwoJYnl0ZSAweDYxMjA2MTZlNjQyMDYyIC8vICJhIGFuZCBiIgoJcmV0c3ViCgliICppZjE0X2VuZAoKKmlmMTRfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyMgoJLy8gcmV0dXJuICdhJzsKCWJ5dGUgMHg2MSAvLyAiYSIKCXJldHN1YgoKKmlmMTRfZW5kOgoJYiAqaWYxM19lbmQKCippZjEzX2Vsc2VpZjFfY29uZGl0aW9uOgoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI0CgkvLyBiCglmcmFtZV9kaWcgLTIgLy8gYjogYm9vbGVhbgoJYnogKmlmMTNfZWxzZQoKCS8vICppZjEzX2Vsc2VpZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2lmLmFsZ28udHM6MTI1CgkvLyByZXR1cm4gJ2InOwoJYnl0ZSAweDYyIC8vICJiIgoJcmV0c3ViCgliICppZjEzX2VuZAoKKmlmMTNfZWxzZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9pZi5hbGdvLnRzOjEyNwoJLy8gcmV0dXJuICduZWl0aGVyJzsKCWJ5dGUgMHg2ZTY1Njk3NDY4NjU3MiAvLyAibmVpdGhlciIKCXJldHN1YgoKKmlmMTNfZW5kOgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAic2luZ2xlSWYoYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZShib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlKGJvb2wsYm9vbClzdHJpbmciCgltZXRob2QgImlmRWxzZUlmRWxzZUlmKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiaWZFbHNlSWZFbHNlSWZFbHNlKGJvb2wsYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAibmVzdGVkSWYoYm9vbCxib29sKXN0cmluZyIKCW1ldGhvZCAiYnJhY2tldGxlc3NJZkVsc2UoYm9vbClzdHJpbmciCgltZXRob2QgIm5lc3RlZFRlcm5hcnkoYm9vbCxib29sKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nSWYoc3RyaW5nKXVpbnQ2NCIKCW1ldGhvZCAic3RyaW5nVGVybmFyeShzdHJpbmcpdWludDY0IgoJbWV0aG9kICJzbWFsbFVpbnRDb25kaXRpb25hbCh1aW50MTYpdm9pZCIKCW1ldGhvZCAic21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsKHVpbnQxNix1aW50MTYpdm9pZCIKCW1ldGhvZCAidWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCh1aW50MjU2LHVpbnQyNTYpdm9pZCIKCW1ldGhvZCAibmVzdGVkSWZJbkVsc2VJZihib29sLGJvb2wpc3RyaW5nIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9zaW5nbGVJZiAqYWJpX3JvdXRlX2lmRWxzZSAqYWJpX3JvdXRlX2lmRWxzZUlmICphYmlfcm91dGVfaWZFbHNlSWZFbHNlICphYmlfcm91dGVfaWZFbHNlSWZFbHNlSWYgKmFiaV9yb3V0ZV9pZkVsc2VJZkVsc2VJZkVsc2UgKmFiaV9yb3V0ZV9uZXN0ZWRJZiAqYWJpX3JvdXRlX2JyYWNrZXRsZXNzSWZFbHNlICphYmlfcm91dGVfbmVzdGVkVGVybmFyeSAqYWJpX3JvdXRlX3N0cmluZ0lmICphYmlfcm91dGVfc3RyaW5nVGVybmFyeSAqYWJpX3JvdXRlX3NtYWxsVWludENvbmRpdGlvbmFsICphYmlfcm91dGVfc21hbGxVaW50Q29tcGFyaXNvbkNvbmRpdGlvbmFsICphYmlfcm91dGVfdWludDI1NkNvbXBhcnNpb25Db25kaXRpb25hbCAqYWJpX3JvdXRlX25lc3RlZElmSW5FbHNlSWYKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ItxnsTest.approval.teal b/tests/contracts/artifacts/ItxnsTest.approval.teal index bfb8245a5..5732681a8 100644 --- a/tests/contracts/artifacts/ItxnsTest.approval.teal +++ b/tests/contracts/artifacts/ItxnsTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ItxnsTest.arc32.json b/tests/contracts/artifacts/ItxnsTest.arc32.json index e5e7f5b8f..42964a36b 100644 --- a/tests/contracts/artifacts/ItxnsTest.arc32.json +++ b/tests/contracts/artifacts/ItxnsTest.arc32.json @@ -84,7 +84,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXltZW50KCl2b2lkCiphYmlfcm91dGVfcGF5bWVudDoKCS8vIGV4ZWN1dGUgcGF5bWVudCgpdm9pZAoJY2FsbHN1YiBwYXltZW50CglpbnQgMQoJcmV0dXJuCgovLyBwYXltZW50KCk6IHZvaWQKcGF5bWVudDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIGFtb3VudDogMTAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjbG9zZVJlbWFpbmRlclRvOiBnbG9iYWxzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcywKCS8vICAgICAgIG5vdGU6ICdIZWxsbyBXb3JsZCEnLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NwoJLy8gYW1vdW50OiAxMDAKCWludCAxMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OAoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OQoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMAoJLy8gc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMQoJLy8gcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIFJla2V5VG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMgoJLy8gbm90ZTogJ0hlbGxvIFdvcmxkIScKCWJ5dGUgMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEgLy8gIkhlbGxvIFdvcmxkISIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gYXNzZXRDcmVhdGlvbigpdWludDY0CiphYmlfcm91dGVfYXNzZXRDcmVhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhc3NldENyZWF0aW9uKCl1aW50NjQKCWNhbGxzdWIgYXNzZXRDcmVhdGlvbgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFzc2V0Q3JlYXRpb24oKTogQXNzZXRJRAphc3NldENyZWF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTcKCS8vIHJldHVybiBzZW5kQXNzZXRDcmVhdGlvbih7CgkvLyAgICAgICBjb25maWdBc3NldE5hbWU6ICduYW1lJywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICd1bml0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IDEsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldEZyZWV6ZTogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0Q2xhd2JhY2s6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldERlZmF1bHRGcm96ZW46IDAsCgkvLyAgICAgICBjb25maWdBc3NldFVSTDogJ3VybCcsCgkvLyAgICAgICBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJywKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTgKCS8vIGNvbmZpZ0Fzc2V0TmFtZTogJ25hbWUnCglieXRlIDB4NmU2MTZkNjUgLy8gIm5hbWUiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjE5CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiAndW5pdCcKCWJ5dGUgMHg3NTZlNjk3NCAvLyAidW5pdCIKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjIwCgkvLyBjb25maWdBc3NldFRvdGFsOiAxCglpbnQgMQoJaXR4bl9maWVsZCBDb25maWdBc3NldFRvdGFsCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjUKCS8vIGNvbmZpZ0Fzc2V0RGVmYXVsdEZyb3plbjogMAoJaW50IDAKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXREZWZhdWx0RnJvemVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNvbmZpZ0Fzc2V0VVJMOiAndXJsJwoJYnl0ZSAweDc1NzI2YyAvLyAidXJsIgoJaXR4bl9maWVsZCBDb25maWdBc3NldFVSTAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI3CgkvLyBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJwoJYnl0ZSAweDYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjEgLy8gImFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIgoJaXR4bl9maWVsZCBDb25maWdBc3NldE1ldGFkYXRhSGFzaAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gYXBwQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FwcENhbGw6CgkvLyBleGVjdXRlIGFwcENhbGwoKXZvaWQKCWNhbGxzdWIgYXBwQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXBwQ2FsbCgpOiB2b2lkCmFwcENhbGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYWNjb3VudHM6IFt0aGlzLmFwcC5hZGRyZXNzXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwLAoJLy8gICAgICAgYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdLAoJLy8gICAgICAgYXBwcm92YWxQcm9ncmFtOiAnYXBwcm92YWwnLAoJLy8gICAgICAgYXNzZXRzOiBbQXNzZXRJRC56ZXJvSW5kZXhdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06ICdjbGVhcicsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiAxLAoJLy8gICAgICAgbG9jYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IDEsCgkvLyAgICAgICBub3RlOiAnbm90ZScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFjY291bnRzOiBbdGhpcy5hcHAuYWRkcmVzc10KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFjY291bnRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzQKCS8vIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXQoJYnl0ZSAweDYxNzI2NzMxIC8vICJhcmcxIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHg2MTcyNjczMiAvLyAiYXJnMiIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzUKCS8vIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozNgoJLy8gYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjM3CgkvLyBhcHByb3ZhbFByb2dyYW06ICdhcHByb3ZhbCcKCWJ5dGUgMHg2MTcwNzA3MjZmNzY2MTZjIC8vICJhcHByb3ZhbCIKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzgKCS8vIGFzc2V0czogW0Fzc2V0SUQuemVyb0luZGV4XQoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzkKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiAnY2xlYXInCglieXRlIDB4NjM2YzY1NjE3MiAvLyAiY2xlYXIiCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogMQoJaW50IDEKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDEKCS8vIGdsb2JhbE51bVVpbnQ6IDEKCWludCAxCglpdHhuX2ZpZWxkIEdsb2JhbE51bVVpbnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo0MgoJLy8gbG9jYWxOdW1CeXRlU2xpY2U6IDEKCWludCAxCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDMKCS8vIGxvY2FsTnVtVWludDogMQoJaW50IDEKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDQKCS8vIG5vdGU6ICdub3RlJwoJYnl0ZSAweDZlNmY3NDY1IC8vICJub3RlIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldENvbmZpZygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0Q29uZmlnOgoJLy8gZXhlY3V0ZSBhc3NldENvbmZpZygpdm9pZAoJY2FsbHN1YiBhc3NldENvbmZpZwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRDb25maWcoKTogdm9pZAphc3NldENvbmZpZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBzZW5kQXNzZXRDb25maWcoewoJLy8gICAgICAgY29uZmlnQXNzZXQ6IEFzc2V0SUQuemVyb0luZGV4LAoJLy8gICAgICAgY29uZmlnQXNzZXRNYW5hZ2VyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRSZXNlcnZlOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRGcmVlemU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjUwCgkvLyBjb25maWdBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldEZyZWV6ZSgpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0RnJlZXplOgoJLy8gZXhlY3V0ZSBhc3NldEZyZWV6ZSgpdm9pZAoJY2FsbHN1YiBhc3NldEZyZWV6ZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcmVlemUoKTogdm9pZAphc3NldEZyZWV6ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU5CgkvLyBzZW5kQXNzZXRGcmVlemUoewoJLy8gICAgICAgZnJlZXplQXNzZXRGcm96ZW46IHRydWUsCgkvLyAgICAgICBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhZnJ6CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NjAKCS8vIGZyZWV6ZUFzc2V0RnJvemVuOiB0cnVlCglpbnQgMQoJaXR4bl9maWVsZCBGcmVlemVBc3NldEZyb3plbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYxCgkvLyBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0QWNjb3VudAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYyCgkvLyBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldFRyYW5zZmVyKCl2b2lkCiphYmlfcm91dGVfYXNzZXRUcmFuc2ZlcjoKCS8vIGV4ZWN1dGUgYXNzZXRUcmFuc2Zlcigpdm9pZAoJY2FsbHN1YiBhc3NldFRyYW5zZmVyCglpbnQgMQoJcmV0dXJuCgovLyBhc3NldFRyYW5zZmVyKCk6IHZvaWQKYXNzZXRUcmFuc2ZlcjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldEFtb3VudDogMSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY4CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo2OQoJLy8gYXNzZXRDbG9zZVRvOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldENsb3NlVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MAoJLy8gYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjcxCgkvLyBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MgoJLy8geGZlckFzc2V0OiBBc3NldElELnplcm9JbmRleAoJaW50IDAKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RDYWxsKCl1aW50NjQKKmFiaV9yb3V0ZV9tZXRob2RDYWxsOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1ldGhvZENhbGwoKXVpbnQ2NAoJY2FsbHN1YiBtZXRob2RDYWxsCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kQ2FsbCgpOiBBc3NldElECm1ldGhvZENhbGw6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3NwoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPFtBcHBJRCwgQXNzZXRJRF0sIEFzc2V0SUQ+KHsKCS8vICAgICAgIG5hbWU6ICdtZXRob2QnLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMuYXBwLCBBc3NldElELnplcm9JbmRleF0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJtZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjc5CgkvLyBtZXRob2RBcmdzOiBbdGhpcy5hcHAsIEFzc2V0SUQuemVyb0luZGV4XQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJcmV0c3ViCgovLyBvbmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoJY2FsbHN1YiBvbmxpbmVLZXlSZWdpc3RyYXRpb24KCWludCAxCglyZXR1cm4KCi8vIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9ubGluZUtleVJlZ2lzdHJhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg0CgkvLyBzZW5kT25saW5lS2V5UmVnaXN0cmF0aW9uKHsKCS8vICAgICAgIHNlbGVjdGlvblBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgdm90ZUZpcnN0OiAxLAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiAxLAoJLy8gICAgICAgdm90ZUxhc3Q6IDEsCgkvLyAgICAgICB2b3RlUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBrZXlyZWcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NQoJLy8gc2VsZWN0aW9uUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScKCWJ5dGUgMHg2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxIC8vICJhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSIKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NgoJLy8gc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFN0YXRlUHJvb2ZQSwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg3CgkvLyB2b3RlRmlyc3Q6IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVGaXJzdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg4CgkvLyB2b3RlS2V5RGlsdXRpb246IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVLZXlEaWx1dGlvbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg5CgkvLyB2b3RlTGFzdDogMQoJaW50IDEKCWl0eG5fZmllbGQgVm90ZUxhc3QKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5MAoJLy8gdm90ZVBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFZvdGVQSwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoqYWJpX3JvdXRlX29mZmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9mZmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKCWNhbGxzdWIgb2ZmbGluZUtleVJlZ2lzdHJhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9mZmxpbmVLZXlSZWdpc3RyYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5NQoJLy8gc2VuZE9mZmxpbmVLZXlSZWdpc3RyYXRpb24oe30pCglpdHhuX2JlZ2luCglpbnQga2V5cmVnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBpbm5lckdlbmVyaWMoKXZvaWQKKmFiaV9yb3V0ZV9pbm5lckdlbmVyaWM6CgkvLyBleGVjdXRlIGlubmVyR2VuZXJpYygpdm9pZAoJY2FsbHN1YiBpbm5lckdlbmVyaWMKCWludCAxCglyZXR1cm4KCi8vIGlubmVyR2VuZXJpYygpOiB2b2lkCmlubmVyR2VuZXJpYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjk5CgkvLyBzZW5kTWV0aG9kQ2FsbDxbSW5uZXJUeG48SW5uZXJBc3NldENyZWF0aW9uPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgY29uZmlnQXNzZXRUb3RhbDogMSB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFjZmcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IDEKCWludCAxCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZm9vKHR4bil2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIG1ldGhvZEFyZ3M6IFt7IGNvbmZpZ0Fzc2V0VG90YWw6IDEgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInBheW1lbnQoKXZvaWQiCgltZXRob2QgImFzc2V0Q3JlYXRpb24oKXVpbnQ2NCIKCW1ldGhvZCAiYXBwQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYXNzZXRDb25maWcoKXZvaWQiCgltZXRob2QgImFzc2V0RnJlZXplKCl2b2lkIgoJbWV0aG9kICJhc3NldFRyYW5zZmVyKCl2b2lkIgoJbWV0aG9kICJtZXRob2RDYWxsKCl1aW50NjQiCgltZXRob2QgIm9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAib2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAiaW5uZXJHZW5lcmljKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wYXltZW50ICphYmlfcm91dGVfYXNzZXRDcmVhdGlvbiAqYWJpX3JvdXRlX2FwcENhbGwgKmFiaV9yb3V0ZV9hc3NldENvbmZpZyAqYWJpX3JvdXRlX2Fzc2V0RnJlZXplICphYmlfcm91dGVfYXNzZXRUcmFuc2ZlciAqYWJpX3JvdXRlX21ldGhvZENhbGwgKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb24gKmFiaV9yb3V0ZV9vZmZsaW5lS2V5UmVnaXN0cmF0aW9uICphYmlfcm91dGVfaW5uZXJHZW5lcmljCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXltZW50KCl2b2lkCiphYmlfcm91dGVfcGF5bWVudDoKCS8vIGV4ZWN1dGUgcGF5bWVudCgpdm9pZAoJY2FsbHN1YiBwYXltZW50CglpbnQgMQoJcmV0dXJuCgovLyBwYXltZW50KCk6IHZvaWQKcGF5bWVudDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIGFtb3VudDogMTAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjbG9zZVJlbWFpbmRlclRvOiBnbG9iYWxzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcywKCS8vICAgICAgIG5vdGU6ICdIZWxsbyBXb3JsZCEnLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NwoJLy8gYW1vdW50OiAxMDAKCWludCAxMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OAoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OQoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMAoJLy8gc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMQoJLy8gcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIFJla2V5VG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMgoJLy8gbm90ZTogJ0hlbGxvIFdvcmxkIScKCWJ5dGUgMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEgLy8gIkhlbGxvIFdvcmxkISIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gYXNzZXRDcmVhdGlvbigpdWludDY0CiphYmlfcm91dGVfYXNzZXRDcmVhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhc3NldENyZWF0aW9uKCl1aW50NjQKCWNhbGxzdWIgYXNzZXRDcmVhdGlvbgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFzc2V0Q3JlYXRpb24oKTogQXNzZXRJRAphc3NldENyZWF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTcKCS8vIHJldHVybiBzZW5kQXNzZXRDcmVhdGlvbih7CgkvLyAgICAgICBjb25maWdBc3NldE5hbWU6ICduYW1lJywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICd1bml0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IDEsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldEZyZWV6ZTogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0Q2xhd2JhY2s6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldERlZmF1bHRGcm96ZW46IDAsCgkvLyAgICAgICBjb25maWdBc3NldFVSTDogJ3VybCcsCgkvLyAgICAgICBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJywKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTgKCS8vIGNvbmZpZ0Fzc2V0TmFtZTogJ25hbWUnCglieXRlIDB4NmU2MTZkNjUgLy8gIm5hbWUiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjE5CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiAndW5pdCcKCWJ5dGUgMHg3NTZlNjk3NCAvLyAidW5pdCIKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjIwCgkvLyBjb25maWdBc3NldFRvdGFsOiAxCglpbnQgMQoJaXR4bl9maWVsZCBDb25maWdBc3NldFRvdGFsCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjUKCS8vIGNvbmZpZ0Fzc2V0RGVmYXVsdEZyb3plbjogMAoJaW50IDAKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXREZWZhdWx0RnJvemVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNvbmZpZ0Fzc2V0VVJMOiAndXJsJwoJYnl0ZSAweDc1NzI2YyAvLyAidXJsIgoJaXR4bl9maWVsZCBDb25maWdBc3NldFVSTAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI3CgkvLyBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJwoJYnl0ZSAweDYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjEgLy8gImFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIgoJaXR4bl9maWVsZCBDb25maWdBc3NldE1ldGFkYXRhSGFzaAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gYXBwQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FwcENhbGw6CgkvLyBleGVjdXRlIGFwcENhbGwoKXZvaWQKCWNhbGxzdWIgYXBwQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXBwQ2FsbCgpOiB2b2lkCmFwcENhbGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYWNjb3VudHM6IFt0aGlzLmFwcC5hZGRyZXNzXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwLAoJLy8gICAgICAgYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdLAoJLy8gICAgICAgYXBwcm92YWxQcm9ncmFtOiAnYXBwcm92YWwnLAoJLy8gICAgICAgYXNzZXRzOiBbQXNzZXRJRC56ZXJvSW5kZXhdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06ICdjbGVhcicsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiAxLAoJLy8gICAgICAgbG9jYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IDEsCgkvLyAgICAgICBub3RlOiAnbm90ZScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFjY291bnRzOiBbdGhpcy5hcHAuYWRkcmVzc10KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFjY291bnRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzQKCS8vIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXQoJYnl0ZSAweDYxNzI2NzMxIC8vICJhcmcxIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHg2MTcyNjczMiAvLyAiYXJnMiIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzUKCS8vIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozNgoJLy8gYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjM3CgkvLyBhcHByb3ZhbFByb2dyYW06ICdhcHByb3ZhbCcKCWJ5dGUgMHg2MTcwNzA3MjZmNzY2MTZjIC8vICJhcHByb3ZhbCIKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzgKCS8vIGFzc2V0czogW0Fzc2V0SUQuemVyb0luZGV4XQoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzkKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiAnY2xlYXInCglieXRlIDB4NjM2YzY1NjE3MiAvLyAiY2xlYXIiCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogMQoJaW50IDEKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDEKCS8vIGdsb2JhbE51bVVpbnQ6IDEKCWludCAxCglpdHhuX2ZpZWxkIEdsb2JhbE51bVVpbnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo0MgoJLy8gbG9jYWxOdW1CeXRlU2xpY2U6IDEKCWludCAxCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDMKCS8vIGxvY2FsTnVtVWludDogMQoJaW50IDEKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDQKCS8vIG5vdGU6ICdub3RlJwoJYnl0ZSAweDZlNmY3NDY1IC8vICJub3RlIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldENvbmZpZygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0Q29uZmlnOgoJLy8gZXhlY3V0ZSBhc3NldENvbmZpZygpdm9pZAoJY2FsbHN1YiBhc3NldENvbmZpZwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRDb25maWcoKTogdm9pZAphc3NldENvbmZpZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBzZW5kQXNzZXRDb25maWcoewoJLy8gICAgICAgY29uZmlnQXNzZXQ6IEFzc2V0SUQuemVyb0luZGV4LAoJLy8gICAgICAgY29uZmlnQXNzZXRNYW5hZ2VyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRSZXNlcnZlOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRGcmVlemU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjUwCgkvLyBjb25maWdBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldEZyZWV6ZSgpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0RnJlZXplOgoJLy8gZXhlY3V0ZSBhc3NldEZyZWV6ZSgpdm9pZAoJY2FsbHN1YiBhc3NldEZyZWV6ZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcmVlemUoKTogdm9pZAphc3NldEZyZWV6ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU5CgkvLyBzZW5kQXNzZXRGcmVlemUoewoJLy8gICAgICAgZnJlZXplQXNzZXRGcm96ZW46IHRydWUsCgkvLyAgICAgICBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhZnJ6CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NjAKCS8vIGZyZWV6ZUFzc2V0RnJvemVuOiB0cnVlCglpbnQgMQoJaXR4bl9maWVsZCBGcmVlemVBc3NldEZyb3plbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYxCgkvLyBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0QWNjb3VudAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYyCgkvLyBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldFRyYW5zZmVyKCl2b2lkCiphYmlfcm91dGVfYXNzZXRUcmFuc2ZlcjoKCS8vIGV4ZWN1dGUgYXNzZXRUcmFuc2Zlcigpdm9pZAoJY2FsbHN1YiBhc3NldFRyYW5zZmVyCglpbnQgMQoJcmV0dXJuCgovLyBhc3NldFRyYW5zZmVyKCk6IHZvaWQKYXNzZXRUcmFuc2ZlcjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldEFtb3VudDogMSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY4CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo2OQoJLy8gYXNzZXRDbG9zZVRvOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldENsb3NlVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MAoJLy8gYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjcxCgkvLyBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MgoJLy8geGZlckFzc2V0OiBBc3NldElELnplcm9JbmRleAoJaW50IDAKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RDYWxsKCl1aW50NjQKKmFiaV9yb3V0ZV9tZXRob2RDYWxsOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1ldGhvZENhbGwoKXVpbnQ2NAoJY2FsbHN1YiBtZXRob2RDYWxsCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kQ2FsbCgpOiBBc3NldElECm1ldGhvZENhbGw6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3NwoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPFtBcHBJRCwgQXNzZXRJRF0sIEFzc2V0SUQ+KHsKCS8vICAgICAgIG5hbWU6ICdtZXRob2QnLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMuYXBwLCBBc3NldElELnplcm9JbmRleF0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJtZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjc5CgkvLyBtZXRob2RBcmdzOiBbdGhpcy5hcHAsIEFzc2V0SUQuemVyb0luZGV4XQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJcmV0c3ViCgovLyBvbmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoJY2FsbHN1YiBvbmxpbmVLZXlSZWdpc3RyYXRpb24KCWludCAxCglyZXR1cm4KCi8vIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9ubGluZUtleVJlZ2lzdHJhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg0CgkvLyBzZW5kT25saW5lS2V5UmVnaXN0cmF0aW9uKHsKCS8vICAgICAgIHNlbGVjdGlvblBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgdm90ZUZpcnN0OiAxLAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiAxLAoJLy8gICAgICAgdm90ZUxhc3Q6IDEsCgkvLyAgICAgICB2b3RlUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBrZXlyZWcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NQoJLy8gc2VsZWN0aW9uUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScKCWJ5dGUgMHg2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxIC8vICJhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSIKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NgoJLy8gc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFN0YXRlUHJvb2ZQSwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg3CgkvLyB2b3RlRmlyc3Q6IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVGaXJzdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg4CgkvLyB2b3RlS2V5RGlsdXRpb246IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVLZXlEaWx1dGlvbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg5CgkvLyB2b3RlTGFzdDogMQoJaW50IDEKCWl0eG5fZmllbGQgVm90ZUxhc3QKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5MAoJLy8gdm90ZVBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFZvdGVQSwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoqYWJpX3JvdXRlX29mZmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9mZmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKCWNhbGxzdWIgb2ZmbGluZUtleVJlZ2lzdHJhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9mZmxpbmVLZXlSZWdpc3RyYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5NQoJLy8gc2VuZE9mZmxpbmVLZXlSZWdpc3RyYXRpb24oe30pCglpdHhuX2JlZ2luCglpbnQga2V5cmVnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBpbm5lckdlbmVyaWMoKXZvaWQKKmFiaV9yb3V0ZV9pbm5lckdlbmVyaWM6CgkvLyBleGVjdXRlIGlubmVyR2VuZXJpYygpdm9pZAoJY2FsbHN1YiBpbm5lckdlbmVyaWMKCWludCAxCglyZXR1cm4KCi8vIGlubmVyR2VuZXJpYygpOiB2b2lkCmlubmVyR2VuZXJpYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjk5CgkvLyBzZW5kTWV0aG9kQ2FsbDxbSW5uZXJUeG48SW5uZXJBc3NldENyZWF0aW9uPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgY29uZmlnQXNzZXRUb3RhbDogMSB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFjZmcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IDEKCWludCAxCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZm9vKHR4bil2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIG1ldGhvZEFyZ3M6IFt7IGNvbmZpZ0Fzc2V0VG90YWw6IDEgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInBheW1lbnQoKXZvaWQiCgltZXRob2QgImFzc2V0Q3JlYXRpb24oKXVpbnQ2NCIKCW1ldGhvZCAiYXBwQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYXNzZXRDb25maWcoKXZvaWQiCgltZXRob2QgImFzc2V0RnJlZXplKCl2b2lkIgoJbWV0aG9kICJhc3NldFRyYW5zZmVyKCl2b2lkIgoJbWV0aG9kICJtZXRob2RDYWxsKCl1aW50NjQiCgltZXRob2QgIm9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAib2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAiaW5uZXJHZW5lcmljKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wYXltZW50ICphYmlfcm91dGVfYXNzZXRDcmVhdGlvbiAqYWJpX3JvdXRlX2FwcENhbGwgKmFiaV9yb3V0ZV9hc3NldENvbmZpZyAqYWJpX3JvdXRlX2Fzc2V0RnJlZXplICphYmlfcm91dGVfYXNzZXRUcmFuc2ZlciAqYWJpX3JvdXRlX21ldGhvZENhbGwgKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb24gKmFiaV9yb3V0ZV9vZmZsaW5lS2V5UmVnaXN0cmF0aW9uICphYmlfcm91dGVfaW5uZXJHZW5lcmljCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/ItxnsTest.arc56_draft.json b/tests/contracts/artifacts/ItxnsTest.arc56_draft.json index 7c08a8ddf..4d8143f41 100644 --- a/tests/contracts/artifacts/ItxnsTest.arc56_draft.json +++ b/tests/contracts/artifacts/ItxnsTest.arc56_draft.json @@ -177,2249 +177,2252 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 48, - 49 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 50 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 51 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 52 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 53, - 54 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 55 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 82 - ] - }, - { - "teal": 28, - "source": 5, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 29, - "source": 5, - "pc": [ - 86 - ] - }, - { - "teal": 30, - "source": 5, - "pc": [ - 87 - ] - }, - { - "teal": 34, - "source": 5, - "pc": [ - 88, - 89, - 90 - ] - }, - { - "teal": 45, - "source": 6, - "pc": [ - 91 - ] - }, - { - "teal": 46, - "source": 6, - "pc": [ - 92 - ] - }, - { - "teal": 47, - "source": 6, - "pc": [ - 93, - 94 - ] - }, - { - "teal": 51, - "source": 7, - "pc": [ - 95, - 96 - ] - }, - { - "teal": 52, - "source": 7, - "pc": [ - 97, - 98 - ] - }, - { - "teal": 56, - "source": 8, - "pc": [ - 99, - 100 - ] - }, - { - "teal": 57, - "source": 8, - "pc": [ - 101, - 102 - ] - }, - { - "teal": 61, - "source": 9, - "pc": [ - 103, - 104 - ] - }, - { - "teal": 62, - "source": 9, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 66, - "source": 10, - "pc": [ - 107, - 108 - ] - }, - { - "teal": 67, - "source": 10, - "pc": [ - 109, - 110 - ] - }, - { - "teal": 71, - "source": 11, - "pc": [ - 111, - 112 - ] - }, - { - "teal": 72, - "source": 11, - "pc": [ - 113, - 114 - ] - }, - { - "teal": 76, - "source": 12, - "pc": [ - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128 - ] - }, - { - "teal": 77, - "source": 12, - "pc": [ - 129, - 130 - ] - }, - { - "teal": 80, - "source": 6, - "pc": [ - 131 - ] - }, - { - "teal": 81, - "source": 6, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 84, - "source": 6, - "pc": [ - 134 - ] - }, - { - "teal": 85, - "source": 5, - "pc": [ - 135 - ] - }, - { - "teal": 90, - "source": 16, - "pc": [ - 136 - ] - }, - { - "teal": 93, - "source": 16, - "pc": [ - 137, - 138, - 139 - ] - }, - { - "teal": 94, - "source": 16, - "pc": [ - 140 - ] - }, - { - "teal": 95, - "source": 16, - "pc": [ - 141 - ] - }, - { - "teal": 96, - "source": 16, - "pc": [ - 142 - ] - }, - { - "teal": 97, - "source": 16, - "pc": [ - 143 - ] - }, - { - "teal": 98, - "source": 16, - "pc": [ - 144 - ] - }, - { - "teal": 102, - "source": 16, - "pc": [ - 145, - 146, - 147 - ] - }, - { - "teal": 117, - "source": 17, - "pc": [ - 148 - ] - }, - { - "teal": 118, - "source": 17, - "pc": [ - 149 - ] - }, - { - "teal": 119, - "source": 17, - "pc": [ - 150, - 151 - ] - }, - { - "teal": 123, - "source": 18, - "pc": [ - 152, - 153, - 154, - 155, - 156, - 157 - ] - }, - { - "teal": 124, - "source": 18, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 128, - "source": 19, - "pc": [ - 160, - 161, - 162, - 163, - 164, - 165 - ] - }, - { - "teal": 129, - "source": 19, - "pc": [ - 166, - 167 - ] - }, - { - "teal": 133, - "source": 20, - "pc": [ - 168 - ] - }, - { - "teal": 134, - "source": 20, - "pc": [ - 169, - 170 - ] - }, - { - "teal": 138, - "source": 21, - "pc": [ - 171, - 172 - ] - }, - { - "teal": 139, - "source": 21, - "pc": [ - 173, - 174 - ] - }, - { - "teal": 143, - "source": 22, - "pc": [ - 175, - 176 - ] - }, - { - "teal": 144, - "source": 22, - "pc": [ - 177, - 178 - ] - }, - { - "teal": 148, - "source": 23, - "pc": [ - 179, - 180 - ] - }, - { - "teal": 149, - "source": 23, - "pc": [ - 181, - 182 - ] - }, - { - "teal": 153, - "source": 24, - "pc": [ - 183, - 184 - ] - }, - { - "teal": 154, - "source": 24, - "pc": [ - 185, - 186 - ] - }, - { - "teal": 158, - "source": 25, - "pc": [ - 187 - ] - }, - { - "teal": 159, - "source": 25, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 163, - "source": 26, - "pc": [ - 190, - 191, - 192, - 193, - 194 - ] - }, - { - "teal": 164, - "source": 26, - "pc": [ - 195, - 196 - ] - }, - { - "teal": 168, - "source": 27, - "pc": [ - 197 - ] - }, - { - "teal": 169, - "source": 27, - "pc": [ - 198, - 199 - ] - }, - { - "teal": 172, - "source": 17, - "pc": [ - 200 - ] - }, - { - "teal": 173, - "source": 17, - "pc": [ - 201, - 202 - ] - }, - { - "teal": 176, - "source": 17, - "pc": [ - 203 - ] - }, - { - "teal": 177, - "source": 17, - "pc": [ - 204, - 205 - ] - }, - { - "teal": 178, - "source": 16, - "pc": [ - 206 - ] - }, - { - "teal": 183, - "source": 31, - "pc": [ - 207, - 208, - 209 - ] - }, - { - "teal": 184, - "source": 31, - "pc": [ - 210 - ] - }, - { - "teal": 185, - "source": 31, - "pc": [ - 211 - ] - }, - { - "teal": 189, - "source": 31, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 206, - "source": 32, - "pc": [ - 215 - ] - }, - { - "teal": 207, - "source": 32, - "pc": [ - 216 - ] - }, - { - "teal": 208, - "source": 32, - "pc": [ - 217, - 218 - ] - }, - { - "teal": 212, - "source": 33, - "pc": [ - 219, - 220 - ] - }, - { - "teal": 213, - "source": 33, - "pc": [ - 221, - 222 - ] - }, - { - "teal": 217, - "source": 34, - "pc": [ - 223, - 224, - 225, - 226, - 227, - 228 - ] - }, - { - "teal": 218, - "source": 34, - "pc": [ - 229, - 230 - ] - }, - { - "teal": 219, - "source": 34, - "pc": [ - 231, - 232, - 233, - 234, - 235, - 236 - ] - }, - { - "teal": 220, - "source": 34, - "pc": [ - 237, - 238 - ] - }, - { - "teal": 224, - "source": 35, - "pc": [ - 239, - 240, - 241 - ] - }, - { - "teal": 225, - "source": 35, - "pc": [ - 242, - 243 - ] - }, - { - "teal": 229, - "source": 36, - "pc": [ - 244, - 245, - 246 - ] - }, - { - "teal": 230, - "source": 36, - "pc": [ - 247, - 248 - ] - }, - { - "teal": 234, - "source": 37, - "pc": [ - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258 - ] - }, - { - "teal": 235, - "source": 37, - "pc": [ - 259, - 260 - ] - }, - { - "teal": 239, - "source": 38, - "pc": [ - 261 - ] - }, - { - "teal": 240, - "source": 38, - "pc": [ - 262, - 263 - ] - }, - { - "teal": 244, - "source": 39, - "pc": [ - 264, - 265, - 266, - 267, - 268, - 269, - 270 - ] - }, - { - "teal": 245, - "source": 39, - "pc": [ - 271, - 272 - ] - }, - { - "teal": 249, - "source": 40, - "pc": [ - 273 - ] - }, - { - "teal": 250, - "source": 40, - "pc": [ - 274, - 275 - ] - }, - { - "teal": 254, - "source": 41, - "pc": [ - 276 - ] - }, - { - "teal": 255, - "source": 41, - "pc": [ - 277, - 278 - ] - }, - { - "teal": 259, - "source": 42, - "pc": [ - 279 - ] - }, - { - "teal": 260, - "source": 42, - "pc": [ - 280, - 281 - ] - }, - { - "teal": 264, - "source": 43, - "pc": [ - 282 - ] - }, - { - "teal": 265, - "source": 43, - "pc": [ - 283, - 284 - ] - }, - { - "teal": 269, - "source": 44, - "pc": [ - 285, - 286, - 287, - 288, - 289, - 290 - ] - }, - { - "teal": 270, - "source": 44, - "pc": [ - 291, - 292 - ] - }, - { - "teal": 273, - "source": 32, - "pc": [ - 293 - ] - }, - { - "teal": 274, - "source": 32, - "pc": [ - 294, - 295 - ] - }, - { - "teal": 277, - "source": 32, - "pc": [ - 296 - ] - }, - { - "teal": 278, - "source": 31, - "pc": [ - 297 - ] - }, - { - "teal": 283, - "source": 48, - "pc": [ - 298, - 299, - 300 - ] - }, - { - "teal": 284, - "source": 48, - "pc": [ - 301 - ] - }, - { - "teal": 285, - "source": 48, - "pc": [ - 302 - ] - }, - { - "teal": 289, - "source": 48, - "pc": [ - 303, - 304, - 305 - ] - }, - { - "teal": 299, - "source": 49, - "pc": [ - 306 - ] - }, - { - "teal": 300, - "source": 49, - "pc": [ - 307 - ] - }, - { - "teal": 301, - "source": 49, - "pc": [ - 308, - 309 - ] - }, - { - "teal": 305, - "source": 50, - "pc": [ - 310 - ] - }, - { - "teal": 306, - "source": 50, - "pc": [ - 311, - 312 - ] - }, - { - "teal": 310, - "source": 51, - "pc": [ - 313, - 314 - ] - }, - { - "teal": 311, - "source": 51, - "pc": [ - 315, - 316 - ] - }, - { - "teal": 315, - "source": 52, - "pc": [ - 317, - 318 - ] - }, - { - "teal": 316, - "source": 52, - "pc": [ - 319, - 320 - ] - }, - { - "teal": 320, - "source": 53, - "pc": [ - 321, - 322 - ] - }, - { - "teal": 321, - "source": 53, - "pc": [ - 323, - 324 - ] - }, - { - "teal": 325, - "source": 54, - "pc": [ - 325, - 326 - ] - }, - { - "teal": 326, - "source": 54, - "pc": [ - 327, - 328 - ] - }, - { - "teal": 329, - "source": 49, - "pc": [ - 329 - ] - }, - { - "teal": 330, - "source": 49, - "pc": [ - 330, - 331 - ] - }, - { - "teal": 333, - "source": 49, - "pc": [ - 332 - ] - }, - { - "teal": 334, - "source": 48, - "pc": [ - 333 - ] - }, - { - "teal": 339, - "source": 58, - "pc": [ - 334, - 335, - 336 - ] - }, - { - "teal": 340, - "source": 58, - "pc": [ - 337 - ] - }, - { - "teal": 341, - "source": 58, - "pc": [ - 338 - ] - }, - { - "teal": 345, - "source": 58, - "pc": [ - 339, - 340, - 341 - ] - }, - { - "teal": 353, - "source": 59, - "pc": [ - 342 - ] - }, - { - "teal": 354, - "source": 59, - "pc": [ - 343, - 344 - ] - }, - { - "teal": 355, - "source": 59, - "pc": [ - 345, - 346 - ] - }, - { - "teal": 359, - "source": 60, - "pc": [ - 347 - ] - }, - { - "teal": 360, - "source": 60, - "pc": [ - 348, - 349 - ] - }, - { - "teal": 364, - "source": 61, - "pc": [ - 350, - 351 - ] - }, - { - "teal": 365, - "source": 61, - "pc": [ - 352, - 353 - ] - }, - { - "teal": 369, - "source": 62, - "pc": [ - 354 - ] - }, - { - "teal": 370, - "source": 62, - "pc": [ - 355, - 356 - ] - }, - { - "teal": 373, - "source": 59, - "pc": [ - 357 - ] - }, - { - "teal": 374, - "source": 59, - "pc": [ - 358, - 359 - ] - }, - { - "teal": 377, - "source": 59, - "pc": [ - 360 - ] - }, - { - "teal": 378, - "source": 58, - "pc": [ - 361 - ] - }, - { - "teal": 383, - "source": 66, - "pc": [ - 362, - 363, - 364 - ] - }, - { - "teal": 384, - "source": 66, - "pc": [ - 365 - ] - }, - { - "teal": 385, - "source": 66, - "pc": [ - 366 - ] - }, - { - "teal": 389, - "source": 66, - "pc": [ - 367, - 368, - 369 - ] - }, - { - "teal": 399, - "source": 67, - "pc": [ - 370 - ] - }, - { - "teal": 400, - "source": 67, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 401, - "source": 67, - "pc": [ - 373, - 374 - ] - }, - { - "teal": 405, - "source": 68, - "pc": [ - 375 - ] - }, - { - "teal": 406, - "source": 68, - "pc": [ - 376, - 377 - ] - }, - { - "teal": 410, - "source": 69, - "pc": [ - 378, - 379 - ] - }, - { - "teal": 411, - "source": 69, - "pc": [ - 380, - 381 - ] - }, - { - "teal": 415, - "source": 70, - "pc": [ - 382, - 383 - ] - }, - { - "teal": 416, - "source": 70, - "pc": [ - 384, - 385 - ] - }, - { - "teal": 420, - "source": 71, - "pc": [ - 386, - 387 - ] - }, - { - "teal": 421, - "source": 71, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 425, - "source": 72, - "pc": [ - 390 - ] - }, - { - "teal": 426, - "source": 72, - "pc": [ - 391, - 392 - ] - }, - { - "teal": 429, - "source": 67, - "pc": [ - 393 - ] - }, - { - "teal": 430, - "source": 67, - "pc": [ - 394, - 395 - ] - }, - { - "teal": 433, - "source": 67, - "pc": [ - 396 - ] - }, - { - "teal": 434, - "source": 66, - "pc": [ - 397 - ] - }, - { - "teal": 439, - "source": 76, - "pc": [ - 398 - ] - }, - { - "teal": 442, - "source": 76, - "pc": [ - 399, - 400, - 401 - ] - }, - { - "teal": 443, - "source": 76, - "pc": [ - 402 - ] - }, - { - "teal": 444, - "source": 76, - "pc": [ - 403 - ] - }, - { - "teal": 445, - "source": 76, - "pc": [ - 404 - ] - }, - { - "teal": 446, - "source": 76, - "pc": [ - 405 - ] - }, - { - "teal": 447, - "source": 76, - "pc": [ - 406 - ] - }, - { - "teal": 451, - "source": 76, - "pc": [ - 407, - 408, - 409 - ] - }, - { - "teal": 458, - "source": 77, - "pc": [ - 410 - ] - }, - { - "teal": 459, - "source": 77, - "pc": [ - 411 - ] - }, - { - "teal": 460, - "source": 77, - "pc": [ - 412, - 413 - ] - }, - { - "teal": 461, - "source": 78, - "pc": [ - 414, - 415, - 416, - 417, - 418, - 419 - ] - }, - { - "teal": 462, - "source": 78, - "pc": [ - 420, - 421 - ] - }, - { - "teal": 466, - "source": 79, - "pc": [ - 422, - 423, - 424 - ] - }, - { - "teal": 467, - "source": 79, - "pc": [ - 425 - ] - }, - { - "teal": 468, - "source": 79, - "pc": [ - 426, - 427 - ] - }, - { - "teal": 469, - "source": 79, - "pc": [ - 428, - 429, - 430, - 431, - 432, - 433, - 434, - 435, - 436, - 437 - ] - }, - { - "teal": 470, - "source": 79, - "pc": [ - 438, - 439 - ] - }, - { - "teal": 473, - "source": 77, - "pc": [ - 440 - ] - }, - { - "teal": 474, - "source": 77, - "pc": [ - 441, - 442 - ] - }, - { - "teal": 477, - "source": 77, - "pc": [ - 443 - ] - }, - { - "teal": 478, - "source": 77, - "pc": [ - 444, - 445 - ] - }, - { - "teal": 479, - "source": 77, - "pc": [ - 446 - ] - }, - { - "teal": 480, - "source": 77, - "pc": [ - 447 - ] - }, - { - "teal": 481, - "source": 77, - "pc": [ - 448, - 449 - ] - }, - { - "teal": 482, - "source": 77, - "pc": [ - 450, - 451, - 452 - ] - }, - { - "teal": 483, - "source": 77, - "pc": [ - 453 - ] - }, - { - "teal": 484, - "source": 76, - "pc": [ - 454 - ] - }, - { - "teal": 489, - "source": 83, - "pc": [ - 455, - 456, - 457 - ] - }, - { - "teal": 490, - "source": 83, - "pc": [ - 458 - ] - }, - { - "teal": 491, - "source": 83, - "pc": [ - 459 - ] - }, - { - "teal": 495, - "source": 83, - "pc": [ - 460, - 461, - 462 - ] - }, - { - "teal": 506, - "source": 84, - "pc": [ - 463 - ] - }, - { - "teal": 507, - "source": 84, - "pc": [ - 464, - 465 - ] - }, - { - "teal": 508, - "source": 84, - "pc": [ - 466, - 467 - ] - }, - { - "teal": 512, - "source": 85, - "pc": [ - 468 - ] - }, - { - "teal": 513, - "source": 85, - "pc": [ - 469, - 470 - ] - }, - { - "teal": 517, - "source": 86, - "pc": [ - 471 - ] - }, - { - "teal": 518, - "source": 86, - "pc": [ - 472, - 473 - ] - }, - { - "teal": 522, - "source": 87, - "pc": [ - 474 - ] - }, - { - "teal": 523, - "source": 87, - "pc": [ - 475, - 476 - ] - }, - { - "teal": 527, - "source": 88, - "pc": [ - 477 - ] - }, - { - "teal": 528, - "source": 88, - "pc": [ - 478, - 479 - ] - }, - { - "teal": 532, - "source": 89, - "pc": [ - 480 - ] - }, - { - "teal": 533, - "source": 89, - "pc": [ - 481, - 482 - ] - }, - { - "teal": 537, - "source": 90, - "pc": [ - 483 - ] - }, - { - "teal": 538, - "source": 90, - "pc": [ - 484, - 485 - ] - }, - { - "teal": 541, - "source": 84, - "pc": [ - 486 - ] - }, - { - "teal": 542, - "source": 84, - "pc": [ - 487, - 488 - ] - }, - { - "teal": 545, - "source": 84, - "pc": [ - 489 - ] - }, - { - "teal": 546, - "source": 83, - "pc": [ - 490 - ] - }, - { - "teal": 551, - "source": 94, - "pc": [ - 491, - 492, - 493 - ] - }, - { - "teal": 552, - "source": 94, - "pc": [ - 494 - ] - }, - { - "teal": 553, - "source": 94, - "pc": [ - 495 - ] - }, - { - "teal": 557, - "source": 94, - "pc": [ - 496, - 497, - 498 - ] - }, - { - "teal": 561, - "source": 95, - "pc": [ - 499 - ] - }, - { - "teal": 562, - "source": 95, - "pc": [ - 500, - 501 - ] - }, - { - "teal": 563, - "source": 95, - "pc": [ - 502, - 503 - ] - }, - { - "teal": 566, - "source": 95, - "pc": [ - 504 - ] - }, - { - "teal": 567, - "source": 95, - "pc": [ - 505, - 506 - ] - }, - { - "teal": 570, - "source": 95, - "pc": [ - 507 - ] - }, - { - "teal": 571, - "source": 94, - "pc": [ - 508 - ] - }, - { - "teal": 576, - "source": 98, - "pc": [ - 509, - 510, - 511 - ] - }, - { - "teal": 577, - "source": 98, - "pc": [ - 512 - ] - }, - { - "teal": 578, - "source": 98, - "pc": [ - 513 - ] - }, - { - "teal": 582, - "source": 98, - "pc": [ - 514, - 515, - 516 - ] - }, - { - "teal": 589, - "source": 101, - "pc": [ - 517 - ] - }, - { - "teal": 590, - "source": 101, - "pc": [ - 518 - ] - }, - { - "teal": 591, - "source": 101, - "pc": [ - 519, - 520 - ] - }, - { - "teal": 595, - "source": 101, - "pc": [ - 521 - ] - }, - { - "teal": 596, - "source": 101, - "pc": [ - 522, - 523 - ] - }, - { - "teal": 599, - "source": 101, - "pc": [ - 524 - ] - }, - { - "teal": 600, - "source": 101, - "pc": [ - 525, - 526 - ] - }, - { - "teal": 601, - "source": 99, - "pc": [ - 527 - ] - }, - { - "teal": 602, - "source": 99, - "pc": [ - 528 - ] - }, - { - "teal": 603, - "source": 99, - "pc": [ - 529, - 530 - ] - }, - { - "teal": 604, - "source": 100, - "pc": [ - 531, - 532, - 533, - 534, - 535, - 536 - ] - }, - { - "teal": 605, - "source": 100, - "pc": [ - 537, - 538 - ] - }, - { - "teal": 610, - "source": 99, - "pc": [ - 539 - ] - }, - { - "teal": 611, - "source": 99, - "pc": [ - 540, - 541 - ] - }, - { - "teal": 614, - "source": 99, - "pc": [ - 542 - ] - }, - { - "teal": 615, - "source": 98, - "pc": [ - 543 - ] - }, - { - "teal": 618, - "source": 4, - "pc": [ - 544 - ] - }, - { - "teal": 619, - "source": 4, - "pc": [ - 545 - ] - }, - { - "teal": 622, - "source": 4, - "pc": [ - 546, - 547, - 548, - 549, - 550, - 551 - ] - }, - { - "teal": 623, - "source": 4, - "pc": [ - 552, - 553, - 554 - ] - }, - { - "teal": 624, - "source": 4, - "pc": [ - 555, - 556, - 557, - 558 - ] - }, - { - "teal": 627, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 559 - ] - }, - { - "teal": 630, - "source": 4, - "pc": [ - 560, - 561, - 562, - 563, - 564, - 565 - ] - }, - { - "teal": 631, - "source": 4, - "pc": [ - 566, - 567, - 568, - 569, - 570, - 571 - ] - }, - { - "teal": 632, - "source": 4, - "pc": [ - 572, - 573, - 574, - 575, - 576, - 577 - ] - }, - { - "teal": 633, - "source": 4, - "pc": [ - 578, - 579, - 580, - 581, - 582, - 583 - ] - }, - { - "teal": 634, - "source": 4, - "pc": [ - 584, - 585, - 586, - 587, - 588, - 589 - ] - }, - { - "teal": 635, - "source": 4, - "pc": [ - 590, - 591, - 592, - 593, - 594, - 595 - ] - }, - { - "teal": 636, - "source": 4, - "pc": [ - 596, - 597, - 598, - 599, - 600, - 601 - ] - }, - { - "teal": 637, - "source": 4, - "pc": [ - 602, - 603, - 604, - 605, - 606, - 607 - ] - }, - { - "teal": 638, - "source": 4, - "pc": [ - 608, - 609, - 610, - 611, - 612, - 613 - ] - }, - { - "teal": 639, - "source": 4, - "pc": [ - 614, - 615, - 616, - 617, - 618, - 619 - ] - }, - { - "teal": 640, - "source": 4, - "pc": [ - 620, - 621, - 622 - ] - }, - { - "teal": 641, - "source": 4, - "pc": [ - 623, - 624, - 625, - 626, - 627, - 628, - 629, - 630, - 631, - 632, - 633, - 634, - 635, - 636, - 637, - 638, - 639, - 640, - 641, - 642, - 643, - 644 - ] - }, - { - "teal": 644, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 645 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 48, + 49 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 50 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 51 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 52 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 53, + 54 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 55 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 82 + ] + }, + { + "teal": 28, + "source": 5, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 29, + "source": 5, + "pc": [ + 86 + ] + }, + { + "teal": 30, + "source": 5, + "pc": [ + 87 + ] + }, + { + "teal": 34, + "source": 5, + "pc": [ + 88, + 89, + 90 + ] + }, + { + "teal": 45, + "source": 6, + "pc": [ + 91 + ] + }, + { + "teal": 46, + "source": 6, + "pc": [ + 92 + ] + }, + { + "teal": 47, + "source": 6, + "pc": [ + 93, + 94 + ] + }, + { + "teal": 51, + "source": 7, + "pc": [ + 95, + 96 + ] + }, + { + "teal": 52, + "source": 7, + "pc": [ + 97, + 98 + ] + }, + { + "teal": 56, + "source": 8, + "pc": [ + 99, + 100 + ] + }, + { + "teal": 57, + "source": 8, + "pc": [ + 101, + 102 + ] + }, + { + "teal": 61, + "source": 9, + "pc": [ + 103, + 104 + ] + }, + { + "teal": 62, + "source": 9, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 66, + "source": 10, + "pc": [ + 107, + 108 + ] + }, + { + "teal": 67, + "source": 10, + "pc": [ + 109, + 110 + ] + }, + { + "teal": 71, + "source": 11, + "pc": [ + 111, + 112 + ] + }, + { + "teal": 72, + "source": 11, + "pc": [ + 113, + 114 + ] + }, + { + "teal": 76, + "source": 12, + "pc": [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128 + ] + }, + { + "teal": 77, + "source": 12, + "pc": [ + 129, + 130 + ] + }, + { + "teal": 80, + "source": 6, + "pc": [ + 131 + ] + }, + { + "teal": 81, + "source": 6, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 84, + "source": 6, + "pc": [ + 134 + ] + }, + { + "teal": 85, + "source": 5, + "pc": [ + 135 + ] + }, + { + "teal": 90, + "source": 16, + "pc": [ + 136 + ] + }, + { + "teal": 93, + "source": 16, + "pc": [ + 137, + 138, + 139 + ] + }, + { + "teal": 94, + "source": 16, + "pc": [ + 140 + ] + }, + { + "teal": 95, + "source": 16, + "pc": [ + 141 + ] + }, + { + "teal": 96, + "source": 16, + "pc": [ + 142 + ] + }, + { + "teal": 97, + "source": 16, + "pc": [ + 143 + ] + }, + { + "teal": 98, + "source": 16, + "pc": [ + 144 + ] + }, + { + "teal": 102, + "source": 16, + "pc": [ + 145, + 146, + 147 + ] + }, + { + "teal": 117, + "source": 17, + "pc": [ + 148 + ] + }, + { + "teal": 118, + "source": 17, + "pc": [ + 149 + ] + }, + { + "teal": 119, + "source": 17, + "pc": [ + 150, + 151 + ] + }, + { + "teal": 123, + "source": 18, + "pc": [ + 152, + 153, + 154, + 155, + 156, + 157 + ] + }, + { + "teal": 124, + "source": 18, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 128, + "source": 19, + "pc": [ + 160, + 161, + 162, + 163, + 164, + 165 + ] + }, + { + "teal": 129, + "source": 19, + "pc": [ + 166, + 167 + ] + }, + { + "teal": 133, + "source": 20, + "pc": [ + 168 + ] + }, + { + "teal": 134, + "source": 20, + "pc": [ + 169, + 170 + ] + }, + { + "teal": 138, + "source": 21, + "pc": [ + 171, + 172 + ] + }, + { + "teal": 139, + "source": 21, + "pc": [ + 173, + 174 + ] + }, + { + "teal": 143, + "source": 22, + "pc": [ + 175, + 176 + ] + }, + { + "teal": 144, + "source": 22, + "pc": [ + 177, + 178 + ] + }, + { + "teal": 148, + "source": 23, + "pc": [ + 179, + 180 + ] + }, + { + "teal": 149, + "source": 23, + "pc": [ + 181, + 182 + ] + }, + { + "teal": 153, + "source": 24, + "pc": [ + 183, + 184 + ] + }, + { + "teal": 154, + "source": 24, + "pc": [ + 185, + 186 + ] + }, + { + "teal": 158, + "source": 25, + "pc": [ + 187 + ] + }, + { + "teal": 159, + "source": 25, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 163, + "source": 26, + "pc": [ + 190, + 191, + 192, + 193, + 194 + ] + }, + { + "teal": 164, + "source": 26, + "pc": [ + 195, + 196 + ] + }, + { + "teal": 168, + "source": 27, + "pc": [ + 197 + ] + }, + { + "teal": 169, + "source": 27, + "pc": [ + 198, + 199 + ] + }, + { + "teal": 172, + "source": 17, + "pc": [ + 200 + ] + }, + { + "teal": 173, + "source": 17, + "pc": [ + 201, + 202 + ] + }, + { + "teal": 176, + "source": 17, + "pc": [ + 203 + ] + }, + { + "teal": 177, + "source": 17, + "pc": [ + 204, + 205 + ] + }, + { + "teal": 178, + "source": 16, + "pc": [ + 206 + ] + }, + { + "teal": 183, + "source": 31, + "pc": [ + 207, + 208, + 209 + ] + }, + { + "teal": 184, + "source": 31, + "pc": [ + 210 + ] + }, + { + "teal": 185, + "source": 31, + "pc": [ + 211 + ] + }, + { + "teal": 189, + "source": 31, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 206, + "source": 32, + "pc": [ + 215 + ] + }, + { + "teal": 207, + "source": 32, + "pc": [ + 216 + ] + }, + { + "teal": 208, + "source": 32, + "pc": [ + 217, + 218 + ] + }, + { + "teal": 212, + "source": 33, + "pc": [ + 219, + 220 + ] + }, + { + "teal": 213, + "source": 33, + "pc": [ + 221, + 222 + ] + }, + { + "teal": 217, + "source": 34, + "pc": [ + 223, + 224, + 225, + 226, + 227, + 228 + ] + }, + { + "teal": 218, + "source": 34, + "pc": [ + 229, + 230 + ] + }, + { + "teal": 219, + "source": 34, + "pc": [ + 231, + 232, + 233, + 234, + 235, + 236 + ] + }, + { + "teal": 220, + "source": 34, + "pc": [ + 237, + 238 + ] + }, + { + "teal": 224, + "source": 35, + "pc": [ + 239, + 240, + 241 + ] + }, + { + "teal": 225, + "source": 35, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 229, + "source": 36, + "pc": [ + 244, + 245, + 246 + ] + }, + { + "teal": 230, + "source": 36, + "pc": [ + 247, + 248 + ] + }, + { + "teal": 234, + "source": 37, + "pc": [ + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258 + ] + }, + { + "teal": 235, + "source": 37, + "pc": [ + 259, + 260 + ] + }, + { + "teal": 239, + "source": 38, + "pc": [ + 261 + ] + }, + { + "teal": 240, + "source": 38, + "pc": [ + 262, + 263 + ] + }, + { + "teal": 244, + "source": 39, + "pc": [ + 264, + 265, + 266, + 267, + 268, + 269, + 270 + ] + }, + { + "teal": 245, + "source": 39, + "pc": [ + 271, + 272 + ] + }, + { + "teal": 249, + "source": 40, + "pc": [ + 273 + ] + }, + { + "teal": 250, + "source": 40, + "pc": [ + 274, + 275 + ] + }, + { + "teal": 254, + "source": 41, + "pc": [ + 276 + ] + }, + { + "teal": 255, + "source": 41, + "pc": [ + 277, + 278 + ] + }, + { + "teal": 259, + "source": 42, + "pc": [ + 279 + ] + }, + { + "teal": 260, + "source": 42, + "pc": [ + 280, + 281 + ] + }, + { + "teal": 264, + "source": 43, + "pc": [ + 282 + ] + }, + { + "teal": 265, + "source": 43, + "pc": [ + 283, + 284 + ] + }, + { + "teal": 269, + "source": 44, + "pc": [ + 285, + 286, + 287, + 288, + 289, + 290 + ] + }, + { + "teal": 270, + "source": 44, + "pc": [ + 291, + 292 + ] + }, + { + "teal": 273, + "source": 32, + "pc": [ + 293 + ] + }, + { + "teal": 274, + "source": 32, + "pc": [ + 294, + 295 + ] + }, + { + "teal": 277, + "source": 32, + "pc": [ + 296 + ] + }, + { + "teal": 278, + "source": 31, + "pc": [ + 297 + ] + }, + { + "teal": 283, + "source": 48, + "pc": [ + 298, + 299, + 300 + ] + }, + { + "teal": 284, + "source": 48, + "pc": [ + 301 + ] + }, + { + "teal": 285, + "source": 48, + "pc": [ + 302 + ] + }, + { + "teal": 289, + "source": 48, + "pc": [ + 303, + 304, + 305 + ] + }, + { + "teal": 299, + "source": 49, + "pc": [ + 306 + ] + }, + { + "teal": 300, + "source": 49, + "pc": [ + 307 + ] + }, + { + "teal": 301, + "source": 49, + "pc": [ + 308, + 309 + ] + }, + { + "teal": 305, + "source": 50, + "pc": [ + 310 + ] + }, + { + "teal": 306, + "source": 50, + "pc": [ + 311, + 312 + ] + }, + { + "teal": 310, + "source": 51, + "pc": [ + 313, + 314 + ] + }, + { + "teal": 311, + "source": 51, + "pc": [ + 315, + 316 + ] + }, + { + "teal": 315, + "source": 52, + "pc": [ + 317, + 318 + ] + }, + { + "teal": 316, + "source": 52, + "pc": [ + 319, + 320 + ] + }, + { + "teal": 320, + "source": 53, + "pc": [ + 321, + 322 + ] + }, + { + "teal": 321, + "source": 53, + "pc": [ + 323, + 324 + ] + }, + { + "teal": 325, + "source": 54, + "pc": [ + 325, + 326 + ] + }, + { + "teal": 326, + "source": 54, + "pc": [ + 327, + 328 + ] + }, + { + "teal": 329, + "source": 49, + "pc": [ + 329 + ] + }, + { + "teal": 330, + "source": 49, + "pc": [ + 330, + 331 + ] + }, + { + "teal": 333, + "source": 49, + "pc": [ + 332 + ] + }, + { + "teal": 334, + "source": 48, + "pc": [ + 333 + ] + }, + { + "teal": 339, + "source": 58, + "pc": [ + 334, + 335, + 336 + ] + }, + { + "teal": 340, + "source": 58, + "pc": [ + 337 + ] + }, + { + "teal": 341, + "source": 58, + "pc": [ + 338 + ] + }, + { + "teal": 345, + "source": 58, + "pc": [ + 339, + 340, + 341 + ] + }, + { + "teal": 353, + "source": 59, + "pc": [ + 342 + ] + }, + { + "teal": 354, + "source": 59, + "pc": [ + 343, + 344 + ] + }, + { + "teal": 355, + "source": 59, + "pc": [ + 345, + 346 + ] + }, + { + "teal": 359, + "source": 60, + "pc": [ + 347 + ] + }, + { + "teal": 360, + "source": 60, + "pc": [ + 348, + 349 + ] + }, + { + "teal": 364, + "source": 61, + "pc": [ + 350, + 351 + ] + }, + { + "teal": 365, + "source": 61, + "pc": [ + 352, + 353 + ] + }, + { + "teal": 369, + "source": 62, + "pc": [ + 354 + ] + }, + { + "teal": 370, + "source": 62, + "pc": [ + 355, + 356 + ] + }, + { + "teal": 373, + "source": 59, + "pc": [ + 357 + ] + }, + { + "teal": 374, + "source": 59, + "pc": [ + 358, + 359 + ] + }, + { + "teal": 377, + "source": 59, + "pc": [ + 360 + ] + }, + { + "teal": 378, + "source": 58, + "pc": [ + 361 + ] + }, + { + "teal": 383, + "source": 66, + "pc": [ + 362, + 363, + 364 + ] + }, + { + "teal": 384, + "source": 66, + "pc": [ + 365 + ] + }, + { + "teal": 385, + "source": 66, + "pc": [ + 366 + ] + }, + { + "teal": 389, + "source": 66, + "pc": [ + 367, + 368, + 369 + ] + }, + { + "teal": 399, + "source": 67, + "pc": [ + 370 + ] + }, + { + "teal": 400, + "source": 67, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 401, + "source": 67, + "pc": [ + 373, + 374 + ] + }, + { + "teal": 405, + "source": 68, + "pc": [ + 375 + ] + }, + { + "teal": 406, + "source": 68, + "pc": [ + 376, + 377 + ] + }, + { + "teal": 410, + "source": 69, + "pc": [ + 378, + 379 + ] + }, + { + "teal": 411, + "source": 69, + "pc": [ + 380, + 381 + ] + }, + { + "teal": 415, + "source": 70, + "pc": [ + 382, + 383 + ] + }, + { + "teal": 416, + "source": 70, + "pc": [ + 384, + 385 + ] + }, + { + "teal": 420, + "source": 71, + "pc": [ + 386, + 387 + ] + }, + { + "teal": 421, + "source": 71, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 425, + "source": 72, + "pc": [ + 390 + ] + }, + { + "teal": 426, + "source": 72, + "pc": [ + 391, + 392 + ] + }, + { + "teal": 429, + "source": 67, + "pc": [ + 393 + ] + }, + { + "teal": 430, + "source": 67, + "pc": [ + 394, + 395 + ] + }, + { + "teal": 433, + "source": 67, + "pc": [ + 396 + ] + }, + { + "teal": 434, + "source": 66, + "pc": [ + 397 + ] + }, + { + "teal": 439, + "source": 76, + "pc": [ + 398 + ] + }, + { + "teal": 442, + "source": 76, + "pc": [ + 399, + 400, + 401 + ] + }, + { + "teal": 443, + "source": 76, + "pc": [ + 402 + ] + }, + { + "teal": 444, + "source": 76, + "pc": [ + 403 + ] + }, + { + "teal": 445, + "source": 76, + "pc": [ + 404 + ] + }, + { + "teal": 446, + "source": 76, + "pc": [ + 405 + ] + }, + { + "teal": 447, + "source": 76, + "pc": [ + 406 + ] + }, + { + "teal": 451, + "source": 76, + "pc": [ + 407, + 408, + 409 + ] + }, + { + "teal": 458, + "source": 77, + "pc": [ + 410 + ] + }, + { + "teal": 459, + "source": 77, + "pc": [ + 411 + ] + }, + { + "teal": 460, + "source": 77, + "pc": [ + 412, + 413 + ] + }, + { + "teal": 461, + "source": 78, + "pc": [ + 414, + 415, + 416, + 417, + 418, + 419 + ] + }, + { + "teal": 462, + "source": 78, + "pc": [ + 420, + 421 + ] + }, + { + "teal": 466, + "source": 79, + "pc": [ + 422, + 423, + 424 + ] + }, + { + "teal": 467, + "source": 79, + "pc": [ + 425 + ] + }, + { + "teal": 468, + "source": 79, + "pc": [ + 426, + 427 + ] + }, + { + "teal": 469, + "source": 79, + "pc": [ + 428, + 429, + 430, + 431, + 432, + 433, + 434, + 435, + 436, + 437 + ] + }, + { + "teal": 470, + "source": 79, + "pc": [ + 438, + 439 + ] + }, + { + "teal": 473, + "source": 77, + "pc": [ + 440 + ] + }, + { + "teal": 474, + "source": 77, + "pc": [ + 441, + 442 + ] + }, + { + "teal": 477, + "source": 77, + "pc": [ + 443 + ] + }, + { + "teal": 478, + "source": 77, + "pc": [ + 444, + 445 + ] + }, + { + "teal": 479, + "source": 77, + "pc": [ + 446 + ] + }, + { + "teal": 480, + "source": 77, + "pc": [ + 447 + ] + }, + { + "teal": 481, + "source": 77, + "pc": [ + 448, + 449 + ] + }, + { + "teal": 482, + "source": 77, + "pc": [ + 450, + 451, + 452 + ] + }, + { + "teal": 483, + "source": 77, + "pc": [ + 453 + ] + }, + { + "teal": 484, + "source": 76, + "pc": [ + 454 + ] + }, + { + "teal": 489, + "source": 83, + "pc": [ + 455, + 456, + 457 + ] + }, + { + "teal": 490, + "source": 83, + "pc": [ + 458 + ] + }, + { + "teal": 491, + "source": 83, + "pc": [ + 459 + ] + }, + { + "teal": 495, + "source": 83, + "pc": [ + 460, + 461, + 462 + ] + }, + { + "teal": 506, + "source": 84, + "pc": [ + 463 + ] + }, + { + "teal": 507, + "source": 84, + "pc": [ + 464, + 465 + ] + }, + { + "teal": 508, + "source": 84, + "pc": [ + 466, + 467 + ] + }, + { + "teal": 512, + "source": 85, + "pc": [ + 468 + ] + }, + { + "teal": 513, + "source": 85, + "pc": [ + 469, + 470 + ] + }, + { + "teal": 517, + "source": 86, + "pc": [ + 471 + ] + }, + { + "teal": 518, + "source": 86, + "pc": [ + 472, + 473 + ] + }, + { + "teal": 522, + "source": 87, + "pc": [ + 474 + ] + }, + { + "teal": 523, + "source": 87, + "pc": [ + 475, + 476 + ] + }, + { + "teal": 527, + "source": 88, + "pc": [ + 477 + ] + }, + { + "teal": 528, + "source": 88, + "pc": [ + 478, + 479 + ] + }, + { + "teal": 532, + "source": 89, + "pc": [ + 480 + ] + }, + { + "teal": 533, + "source": 89, + "pc": [ + 481, + 482 + ] + }, + { + "teal": 537, + "source": 90, + "pc": [ + 483 + ] + }, + { + "teal": 538, + "source": 90, + "pc": [ + 484, + 485 + ] + }, + { + "teal": 541, + "source": 84, + "pc": [ + 486 + ] + }, + { + "teal": 542, + "source": 84, + "pc": [ + 487, + 488 + ] + }, + { + "teal": 545, + "source": 84, + "pc": [ + 489 + ] + }, + { + "teal": 546, + "source": 83, + "pc": [ + 490 + ] + }, + { + "teal": 551, + "source": 94, + "pc": [ + 491, + 492, + 493 + ] + }, + { + "teal": 552, + "source": 94, + "pc": [ + 494 + ] + }, + { + "teal": 553, + "source": 94, + "pc": [ + 495 + ] + }, + { + "teal": 557, + "source": 94, + "pc": [ + 496, + 497, + 498 + ] + }, + { + "teal": 561, + "source": 95, + "pc": [ + 499 + ] + }, + { + "teal": 562, + "source": 95, + "pc": [ + 500, + 501 + ] + }, + { + "teal": 563, + "source": 95, + "pc": [ + 502, + 503 + ] + }, + { + "teal": 566, + "source": 95, + "pc": [ + 504 + ] + }, + { + "teal": 567, + "source": 95, + "pc": [ + 505, + 506 + ] + }, + { + "teal": 570, + "source": 95, + "pc": [ + 507 + ] + }, + { + "teal": 571, + "source": 94, + "pc": [ + 508 + ] + }, + { + "teal": 576, + "source": 98, + "pc": [ + 509, + 510, + 511 + ] + }, + { + "teal": 577, + "source": 98, + "pc": [ + 512 + ] + }, + { + "teal": 578, + "source": 98, + "pc": [ + 513 + ] + }, + { + "teal": 582, + "source": 98, + "pc": [ + 514, + 515, + 516 + ] + }, + { + "teal": 589, + "source": 101, + "pc": [ + 517 + ] + }, + { + "teal": 590, + "source": 101, + "pc": [ + 518 + ] + }, + { + "teal": 591, + "source": 101, + "pc": [ + 519, + 520 + ] + }, + { + "teal": 595, + "source": 101, + "pc": [ + 521 + ] + }, + { + "teal": 596, + "source": 101, + "pc": [ + 522, + 523 + ] + }, + { + "teal": 599, + "source": 101, + "pc": [ + 524 + ] + }, + { + "teal": 600, + "source": 101, + "pc": [ + 525, + 526 + ] + }, + { + "teal": 601, + "source": 99, + "pc": [ + 527 + ] + }, + { + "teal": 602, + "source": 99, + "pc": [ + 528 + ] + }, + { + "teal": 603, + "source": 99, + "pc": [ + 529, + 530 + ] + }, + { + "teal": 604, + "source": 100, + "pc": [ + 531, + 532, + 533, + 534, + 535, + 536 + ] + }, + { + "teal": 605, + "source": 100, + "pc": [ + 537, + 538 + ] + }, + { + "teal": 610, + "source": 99, + "pc": [ + 539 + ] + }, + { + "teal": 611, + "source": 99, + "pc": [ + 540, + 541 + ] + }, + { + "teal": 614, + "source": 99, + "pc": [ + 542 + ] + }, + { + "teal": 615, + "source": 98, + "pc": [ + 543 + ] + }, + { + "teal": 618, + "source": 4, + "pc": [ + 544 + ] + }, + { + "teal": 619, + "source": 4, + "pc": [ + 545 + ] + }, + { + "teal": 622, + "source": 4, + "pc": [ + 546, + 547, + 548, + 549, + 550, + 551 + ] + }, + { + "teal": 623, + "source": 4, + "pc": [ + 552, + 553, + 554 + ] + }, + { + "teal": 624, + "source": 4, + "pc": [ + 555, + 556, + 557, + 558 + ] + }, + { + "teal": 627, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 559 + ] + }, + { + "teal": 630, + "source": 4, + "pc": [ + 560, + 561, + 562, + 563, + 564, + 565 + ] + }, + { + "teal": 631, + "source": 4, + "pc": [ + 566, + 567, + 568, + 569, + 570, + 571 + ] + }, + { + "teal": 632, + "source": 4, + "pc": [ + 572, + 573, + 574, + 575, + 576, + 577 + ] + }, + { + "teal": 633, + "source": 4, + "pc": [ + 578, + 579, + 580, + 581, + 582, + 583 + ] + }, + { + "teal": 634, + "source": 4, + "pc": [ + 584, + 585, + 586, + 587, + 588, + 589 + ] + }, + { + "teal": 635, + "source": 4, + "pc": [ + 590, + 591, + 592, + 593, + 594, + 595 + ] + }, + { + "teal": 636, + "source": 4, + "pc": [ + 596, + 597, + 598, + 599, + 600, + 601 + ] + }, + { + "teal": 637, + "source": 4, + "pc": [ + 602, + 603, + 604, + 605, + 606, + 607 + ] + }, + { + "teal": 638, + "source": 4, + "pc": [ + 608, + 609, + 610, + 611, + 612, + 613 + ] + }, + { + "teal": 639, + "source": 4, + "pc": [ + 614, + 615, + 616, + 617, + 618, + 619 + ] + }, + { + "teal": 640, + "source": 4, + "pc": [ + 620, + 621, + 622 + ] + }, + { + "teal": 641, + "source": 4, + "pc": [ + 623, + 624, + 625, + 626, + 627, + 628, + 629, + 630, + 631, + 632, + 633, + 634, + 635, + 636, + 637, + 638, + 639, + 640, + 641, + 642, + 643, + 644 + ] + }, + { + "teal": 644, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 645 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXltZW50KCl2b2lkCiphYmlfcm91dGVfcGF5bWVudDoKCS8vIGV4ZWN1dGUgcGF5bWVudCgpdm9pZAoJY2FsbHN1YiBwYXltZW50CglpbnQgMQoJcmV0dXJuCgovLyBwYXltZW50KCk6IHZvaWQKcGF5bWVudDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIGFtb3VudDogMTAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjbG9zZVJlbWFpbmRlclRvOiBnbG9iYWxzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcywKCS8vICAgICAgIG5vdGU6ICdIZWxsbyBXb3JsZCEnLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NwoJLy8gYW1vdW50OiAxMDAKCWludCAxMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OAoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OQoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMAoJLy8gc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMQoJLy8gcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIFJla2V5VG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMgoJLy8gbm90ZTogJ0hlbGxvIFdvcmxkIScKCWJ5dGUgMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEgLy8gIkhlbGxvIFdvcmxkISIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gYXNzZXRDcmVhdGlvbigpdWludDY0CiphYmlfcm91dGVfYXNzZXRDcmVhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhc3NldENyZWF0aW9uKCl1aW50NjQKCWNhbGxzdWIgYXNzZXRDcmVhdGlvbgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFzc2V0Q3JlYXRpb24oKTogQXNzZXRJRAphc3NldENyZWF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTcKCS8vIHJldHVybiBzZW5kQXNzZXRDcmVhdGlvbih7CgkvLyAgICAgICBjb25maWdBc3NldE5hbWU6ICduYW1lJywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICd1bml0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IDEsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldEZyZWV6ZTogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0Q2xhd2JhY2s6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldERlZmF1bHRGcm96ZW46IDAsCgkvLyAgICAgICBjb25maWdBc3NldFVSTDogJ3VybCcsCgkvLyAgICAgICBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJywKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTgKCS8vIGNvbmZpZ0Fzc2V0TmFtZTogJ25hbWUnCglieXRlIDB4NmU2MTZkNjUgLy8gIm5hbWUiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjE5CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiAndW5pdCcKCWJ5dGUgMHg3NTZlNjk3NCAvLyAidW5pdCIKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjIwCgkvLyBjb25maWdBc3NldFRvdGFsOiAxCglpbnQgMQoJaXR4bl9maWVsZCBDb25maWdBc3NldFRvdGFsCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjUKCS8vIGNvbmZpZ0Fzc2V0RGVmYXVsdEZyb3plbjogMAoJaW50IDAKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXREZWZhdWx0RnJvemVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNvbmZpZ0Fzc2V0VVJMOiAndXJsJwoJYnl0ZSAweDc1NzI2YyAvLyAidXJsIgoJaXR4bl9maWVsZCBDb25maWdBc3NldFVSTAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI3CgkvLyBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJwoJYnl0ZSAweDYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjEgLy8gImFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIgoJaXR4bl9maWVsZCBDb25maWdBc3NldE1ldGFkYXRhSGFzaAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gYXBwQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FwcENhbGw6CgkvLyBleGVjdXRlIGFwcENhbGwoKXZvaWQKCWNhbGxzdWIgYXBwQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXBwQ2FsbCgpOiB2b2lkCmFwcENhbGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYWNjb3VudHM6IFt0aGlzLmFwcC5hZGRyZXNzXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwLAoJLy8gICAgICAgYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdLAoJLy8gICAgICAgYXBwcm92YWxQcm9ncmFtOiAnYXBwcm92YWwnLAoJLy8gICAgICAgYXNzZXRzOiBbQXNzZXRJRC56ZXJvSW5kZXhdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06ICdjbGVhcicsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiAxLAoJLy8gICAgICAgbG9jYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IDEsCgkvLyAgICAgICBub3RlOiAnbm90ZScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFjY291bnRzOiBbdGhpcy5hcHAuYWRkcmVzc10KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFjY291bnRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzQKCS8vIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXQoJYnl0ZSAweDYxNzI2NzMxIC8vICJhcmcxIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHg2MTcyNjczMiAvLyAiYXJnMiIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzUKCS8vIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozNgoJLy8gYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjM3CgkvLyBhcHByb3ZhbFByb2dyYW06ICdhcHByb3ZhbCcKCWJ5dGUgMHg2MTcwNzA3MjZmNzY2MTZjIC8vICJhcHByb3ZhbCIKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzgKCS8vIGFzc2V0czogW0Fzc2V0SUQuemVyb0luZGV4XQoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzkKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiAnY2xlYXInCglieXRlIDB4NjM2YzY1NjE3MiAvLyAiY2xlYXIiCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogMQoJaW50IDEKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDEKCS8vIGdsb2JhbE51bVVpbnQ6IDEKCWludCAxCglpdHhuX2ZpZWxkIEdsb2JhbE51bVVpbnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo0MgoJLy8gbG9jYWxOdW1CeXRlU2xpY2U6IDEKCWludCAxCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDMKCS8vIGxvY2FsTnVtVWludDogMQoJaW50IDEKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDQKCS8vIG5vdGU6ICdub3RlJwoJYnl0ZSAweDZlNmY3NDY1IC8vICJub3RlIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldENvbmZpZygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0Q29uZmlnOgoJLy8gZXhlY3V0ZSBhc3NldENvbmZpZygpdm9pZAoJY2FsbHN1YiBhc3NldENvbmZpZwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRDb25maWcoKTogdm9pZAphc3NldENvbmZpZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBzZW5kQXNzZXRDb25maWcoewoJLy8gICAgICAgY29uZmlnQXNzZXQ6IEFzc2V0SUQuemVyb0luZGV4LAoJLy8gICAgICAgY29uZmlnQXNzZXRNYW5hZ2VyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRSZXNlcnZlOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRGcmVlemU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjUwCgkvLyBjb25maWdBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldEZyZWV6ZSgpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0RnJlZXplOgoJLy8gZXhlY3V0ZSBhc3NldEZyZWV6ZSgpdm9pZAoJY2FsbHN1YiBhc3NldEZyZWV6ZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcmVlemUoKTogdm9pZAphc3NldEZyZWV6ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU5CgkvLyBzZW5kQXNzZXRGcmVlemUoewoJLy8gICAgICAgZnJlZXplQXNzZXRGcm96ZW46IHRydWUsCgkvLyAgICAgICBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhZnJ6CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NjAKCS8vIGZyZWV6ZUFzc2V0RnJvemVuOiB0cnVlCglpbnQgMQoJaXR4bl9maWVsZCBGcmVlemVBc3NldEZyb3plbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYxCgkvLyBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0QWNjb3VudAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYyCgkvLyBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldFRyYW5zZmVyKCl2b2lkCiphYmlfcm91dGVfYXNzZXRUcmFuc2ZlcjoKCS8vIGV4ZWN1dGUgYXNzZXRUcmFuc2Zlcigpdm9pZAoJY2FsbHN1YiBhc3NldFRyYW5zZmVyCglpbnQgMQoJcmV0dXJuCgovLyBhc3NldFRyYW5zZmVyKCk6IHZvaWQKYXNzZXRUcmFuc2ZlcjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldEFtb3VudDogMSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY4CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo2OQoJLy8gYXNzZXRDbG9zZVRvOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldENsb3NlVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MAoJLy8gYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjcxCgkvLyBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MgoJLy8geGZlckFzc2V0OiBBc3NldElELnplcm9JbmRleAoJaW50IDAKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RDYWxsKCl1aW50NjQKKmFiaV9yb3V0ZV9tZXRob2RDYWxsOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1ldGhvZENhbGwoKXVpbnQ2NAoJY2FsbHN1YiBtZXRob2RDYWxsCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kQ2FsbCgpOiBBc3NldElECm1ldGhvZENhbGw6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3NwoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPFtBcHBJRCwgQXNzZXRJRF0sIEFzc2V0SUQ+KHsKCS8vICAgICAgIG5hbWU6ICdtZXRob2QnLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMuYXBwLCBBc3NldElELnplcm9JbmRleF0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJtZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjc5CgkvLyBtZXRob2RBcmdzOiBbdGhpcy5hcHAsIEFzc2V0SUQuemVyb0luZGV4XQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJcmV0c3ViCgovLyBvbmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoJY2FsbHN1YiBvbmxpbmVLZXlSZWdpc3RyYXRpb24KCWludCAxCglyZXR1cm4KCi8vIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9ubGluZUtleVJlZ2lzdHJhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg0CgkvLyBzZW5kT25saW5lS2V5UmVnaXN0cmF0aW9uKHsKCS8vICAgICAgIHNlbGVjdGlvblBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgdm90ZUZpcnN0OiAxLAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiAxLAoJLy8gICAgICAgdm90ZUxhc3Q6IDEsCgkvLyAgICAgICB2b3RlUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBrZXlyZWcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NQoJLy8gc2VsZWN0aW9uUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScKCWJ5dGUgMHg2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxIC8vICJhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSIKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NgoJLy8gc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFN0YXRlUHJvb2ZQSwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg3CgkvLyB2b3RlRmlyc3Q6IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVGaXJzdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg4CgkvLyB2b3RlS2V5RGlsdXRpb246IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVLZXlEaWx1dGlvbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg5CgkvLyB2b3RlTGFzdDogMQoJaW50IDEKCWl0eG5fZmllbGQgVm90ZUxhc3QKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5MAoJLy8gdm90ZVBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFZvdGVQSwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoqYWJpX3JvdXRlX29mZmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9mZmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKCWNhbGxzdWIgb2ZmbGluZUtleVJlZ2lzdHJhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9mZmxpbmVLZXlSZWdpc3RyYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5NQoJLy8gc2VuZE9mZmxpbmVLZXlSZWdpc3RyYXRpb24oe30pCglpdHhuX2JlZ2luCglpbnQga2V5cmVnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBpbm5lckdlbmVyaWMoKXZvaWQKKmFiaV9yb3V0ZV9pbm5lckdlbmVyaWM6CgkvLyBleGVjdXRlIGlubmVyR2VuZXJpYygpdm9pZAoJY2FsbHN1YiBpbm5lckdlbmVyaWMKCWludCAxCglyZXR1cm4KCi8vIGlubmVyR2VuZXJpYygpOiB2b2lkCmlubmVyR2VuZXJpYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjk5CgkvLyBzZW5kTWV0aG9kQ2FsbDxbSW5uZXJUeG48SW5uZXJBc3NldENyZWF0aW9uPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgY29uZmlnQXNzZXRUb3RhbDogMSB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFjZmcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IDEKCWludCAxCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZm9vKHR4bil2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIG1ldGhvZEFyZ3M6IFt7IGNvbmZpZ0Fzc2V0VG90YWw6IDEgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInBheW1lbnQoKXZvaWQiCgltZXRob2QgImFzc2V0Q3JlYXRpb24oKXVpbnQ2NCIKCW1ldGhvZCAiYXBwQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYXNzZXRDb25maWcoKXZvaWQiCgltZXRob2QgImFzc2V0RnJlZXplKCl2b2lkIgoJbWV0aG9kICJhc3NldFRyYW5zZmVyKCl2b2lkIgoJbWV0aG9kICJtZXRob2RDYWxsKCl1aW50NjQiCgltZXRob2QgIm9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAib2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAiaW5uZXJHZW5lcmljKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wYXltZW50ICphYmlfcm91dGVfYXNzZXRDcmVhdGlvbiAqYWJpX3JvdXRlX2FwcENhbGwgKmFiaV9yb3V0ZV9hc3NldENvbmZpZyAqYWJpX3JvdXRlX2Fzc2V0RnJlZXplICphYmlfcm91dGVfYXNzZXRUcmFuc2ZlciAqYWJpX3JvdXRlX21ldGhvZENhbGwgKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb24gKmFiaV9yb3V0ZV9vZmZsaW5lS2V5UmVnaXN0cmF0aW9uICphYmlfcm91dGVfaW5uZXJHZW5lcmljCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwYXltZW50KCl2b2lkCiphYmlfcm91dGVfcGF5bWVudDoKCS8vIGV4ZWN1dGUgcGF5bWVudCgpdm9pZAoJY2FsbHN1YiBwYXltZW50CglpbnQgMQoJcmV0dXJuCgovLyBwYXltZW50KCk6IHZvaWQKcGF5bWVudDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYKCS8vIHNlbmRQYXltZW50KHsKCS8vICAgICAgIGFtb3VudDogMTAwLAoJLy8gICAgICAgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjbG9zZVJlbWFpbmRlclRvOiBnbG9iYWxzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcywKCS8vICAgICAgIG5vdGU6ICdIZWxsbyBXb3JsZCEnLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgcGF5CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NwoJLy8gYW1vdW50OiAxMDAKCWludCAxMDAKCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OAoJLy8gcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6OQoJLy8gY2xvc2VSZW1haW5kZXJUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIENsb3NlUmVtYWluZGVyVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMAoJLy8gc2VuZGVyOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMQoJLy8gcmVrZXlUbzogZ2xvYmFscy56ZXJvQWRkcmVzcwoJZ2xvYmFsIFplcm9BZGRyZXNzCglpdHhuX2ZpZWxkIFJla2V5VG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMgoJLy8gbm90ZTogJ0hlbGxvIFdvcmxkIScKCWJ5dGUgMHg0ODY1NmM2YzZmMjA1NzZmNzI2YzY0MjEgLy8gIkhlbGxvIFdvcmxkISIKCWl0eG5fZmllbGQgTm90ZQoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gYXNzZXRDcmVhdGlvbigpdWludDY0CiphYmlfcm91dGVfYXNzZXRDcmVhdGlvbjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhc3NldENyZWF0aW9uKCl1aW50NjQKCWNhbGxzdWIgYXNzZXRDcmVhdGlvbgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFzc2V0Q3JlYXRpb24oKTogQXNzZXRJRAphc3NldENyZWF0aW9uOgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTcKCS8vIHJldHVybiBzZW5kQXNzZXRDcmVhdGlvbih7CgkvLyAgICAgICBjb25maWdBc3NldE5hbWU6ICduYW1lJywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VW5pdE5hbWU6ICd1bml0JywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0VG90YWw6IDEsCgkvLyAgICAgICBjb25maWdBc3NldE1hbmFnZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldFJlc2VydmU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldEZyZWV6ZTogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGNvbmZpZ0Fzc2V0Q2xhd2JhY2s6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldERlZmF1bHRGcm96ZW46IDAsCgkvLyAgICAgICBjb25maWdBc3NldFVSTDogJ3VybCcsCgkvLyAgICAgICBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJywKCS8vICAgICB9KTsKCWl0eG5fYmVnaW4KCWludCBhY2ZnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MTgKCS8vIGNvbmZpZ0Fzc2V0TmFtZTogJ25hbWUnCglieXRlIDB4NmU2MTZkNjUgLy8gIm5hbWUiCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjE5CgkvLyBjb25maWdBc3NldFVuaXROYW1lOiAndW5pdCcKCWJ5dGUgMHg3NTZlNjk3NCAvLyAidW5pdCIKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRVbml0TmFtZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjIwCgkvLyBjb25maWdBc3NldFRvdGFsOiAxCglpbnQgMQoJaXR4bl9maWVsZCBDb25maWdBc3NldFRvdGFsCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjUKCS8vIGNvbmZpZ0Fzc2V0RGVmYXVsdEZyb3plbjogMAoJaW50IDAKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXREZWZhdWx0RnJvemVuCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MjYKCS8vIGNvbmZpZ0Fzc2V0VVJMOiAndXJsJwoJYnl0ZSAweDc1NzI2YyAvLyAidXJsIgoJaXR4bl9maWVsZCBDb25maWdBc3NldFVSTAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjI3CgkvLyBjb25maWdBc3NldE1ldGFkYXRhSGFzaDogJ2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhJwoJYnl0ZSAweDYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjEgLy8gImFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIgoJaXR4bl9maWVsZCBDb25maWdBc3NldE1ldGFkYXRhSGFzaAoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gQ3JlYXRlZEFzc2V0SUQKCXJldHN1YgoKLy8gYXBwQ2FsbCgpdm9pZAoqYWJpX3JvdXRlX2FwcENhbGw6CgkvLyBleGVjdXRlIGFwcENhbGwoKXZvaWQKCWNhbGxzdWIgYXBwQ2FsbAoJaW50IDEKCXJldHVybgoKLy8gYXBwQ2FsbCgpOiB2b2lkCmFwcENhbGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozMgoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgYWNjb3VudHM6IFt0aGlzLmFwcC5hZGRyZXNzXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXSwKCS8vICAgICAgIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwLAoJLy8gICAgICAgYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdLAoJLy8gICAgICAgYXBwcm92YWxQcm9ncmFtOiAnYXBwcm92YWwnLAoJLy8gICAgICAgYXNzZXRzOiBbQXNzZXRJRC56ZXJvSW5kZXhdLAoJLy8gICAgICAgY2xlYXJTdGF0ZVByb2dyYW06ICdjbGVhcicsCgkvLyAgICAgICBnbG9iYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBnbG9iYWxOdW1VaW50OiAxLAoJLy8gICAgICAgbG9jYWxOdW1CeXRlU2xpY2U6IDEsCgkvLyAgICAgICBsb2NhbE51bVVpbnQ6IDEsCgkvLyAgICAgICBub3RlOiAnbm90ZScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzMKCS8vIGFjY291bnRzOiBbdGhpcy5hcHAuYWRkcmVzc10KCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEFjY291bnRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzQKCS8vIGFwcGxpY2F0aW9uQXJnczogWydhcmcxJywgJ2FyZzInXQoJYnl0ZSAweDYxNzI2NzMxIC8vICJhcmcxIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHg2MTcyNjczMiAvLyAiYXJnMiIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzUKCS8vIGFwcGxpY2F0aW9uSUQ6IHRoaXMuYXBwCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czozNgoJLy8gYXBwbGljYXRpb25zOiBbdGhpcy5hcHBdCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9ucwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjM3CgkvLyBhcHByb3ZhbFByb2dyYW06ICdhcHByb3ZhbCcKCWJ5dGUgMHg2MTcwNzA3MjZmNzY2MTZjIC8vICJhcHByb3ZhbCIKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzgKCS8vIGFzc2V0czogW0Fzc2V0SUQuemVyb0luZGV4XQoJaW50IDAKCWl0eG5fZmllbGQgQXNzZXRzCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6MzkKCS8vIGNsZWFyU3RhdGVQcm9ncmFtOiAnY2xlYXInCglieXRlIDB4NjM2YzY1NjE3MiAvLyAiY2xlYXIiCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDAKCS8vIGdsb2JhbE51bUJ5dGVTbGljZTogMQoJaW50IDEKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDEKCS8vIGdsb2JhbE51bVVpbnQ6IDEKCWludCAxCglpdHhuX2ZpZWxkIEdsb2JhbE51bVVpbnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo0MgoJLy8gbG9jYWxOdW1CeXRlU2xpY2U6IDEKCWludCAxCglpdHhuX2ZpZWxkIExvY2FsTnVtQnl0ZVNsaWNlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDMKCS8vIGxvY2FsTnVtVWludDogMQoJaW50IDEKCWl0eG5fZmllbGQgTG9jYWxOdW1VaW50CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NDQKCS8vIG5vdGU6ICdub3RlJwoJYnl0ZSAweDZlNmY3NDY1IC8vICJub3RlIgoJaXR4bl9maWVsZCBOb3RlCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldENvbmZpZygpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0Q29uZmlnOgoJLy8gZXhlY3V0ZSBhc3NldENvbmZpZygpdm9pZAoJY2FsbHN1YiBhc3NldENvbmZpZwoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRDb25maWcoKTogdm9pZAphc3NldENvbmZpZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjQ5CgkvLyBzZW5kQXNzZXRDb25maWcoewoJLy8gICAgICAgY29uZmlnQXNzZXQ6IEFzc2V0SUQuemVyb0luZGV4LAoJLy8gICAgICAgY29uZmlnQXNzZXRNYW5hZ2VyOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRSZXNlcnZlOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgICAgY29uZmlnQXNzZXRGcmVlemU6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzLAoJLy8gICAgIH0pCglpdHhuX2JlZ2luCglpbnQgYWNmZwoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjUwCgkvLyBjb25maWdBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0CgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTEKCS8vIGNvbmZpZ0Fzc2V0TWFuYWdlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRNYW5hZ2VyCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTIKCS8vIGNvbmZpZ0Fzc2V0UmVzZXJ2ZTogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQ29uZmlnQXNzZXRSZXNlcnZlCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NTMKCS8vIGNvbmZpZ0Fzc2V0RnJlZXplOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldEZyZWV6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU0CgkvLyBjb25maWdBc3NldENsYXdiYWNrOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBDb25maWdBc3NldENsYXdiYWNrCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldEZyZWV6ZSgpdm9pZAoqYWJpX3JvdXRlX2Fzc2V0RnJlZXplOgoJLy8gZXhlY3V0ZSBhc3NldEZyZWV6ZSgpdm9pZAoJY2FsbHN1YiBhc3NldEZyZWV6ZQoJaW50IDEKCXJldHVybgoKLy8gYXNzZXRGcmVlemUoKTogdm9pZAphc3NldEZyZWV6ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjU5CgkvLyBzZW5kQXNzZXRGcmVlemUoewoJLy8gICAgICAgZnJlZXplQXNzZXRGcm96ZW46IHRydWUsCgkvLyAgICAgICBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBhZnJ6CglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gdGVzdHMvY29udHJhY3RzL2l0eG5zLmFsZ28udHM6NjAKCS8vIGZyZWV6ZUFzc2V0RnJvemVuOiB0cnVlCglpbnQgMQoJaXR4bl9maWVsZCBGcmVlemVBc3NldEZyb3plbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYxCgkvLyBmcmVlemVBc3NldEFjY291bnQ6IHRoaXMuYXBwLmFkZHJlc3MKCWdsb2JhbCBDdXJyZW50QXBwbGljYXRpb25BZGRyZXNzCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0QWNjb3VudAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjYyCgkvLyBmcmVlemVBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgKCWludCAwCglpdHhuX2ZpZWxkIEZyZWV6ZUFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBhc3NldFRyYW5zZmVyKCl2b2lkCiphYmlfcm91dGVfYXNzZXRUcmFuc2ZlcjoKCS8vIGV4ZWN1dGUgYXNzZXRUcmFuc2Zlcigpdm9pZAoJY2FsbHN1YiBhc3NldFRyYW5zZmVyCglpbnQgMQoJcmV0dXJuCgovLyBhc3NldFRyYW5zZmVyKCk6IHZvaWQKYXNzZXRUcmFuc2ZlcjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY3CgkvLyBzZW5kQXNzZXRUcmFuc2Zlcih7CgkvLyAgICAgICBhc3NldEFtb3VudDogMSwKCS8vICAgICAgIGFzc2V0Q2xvc2VUbzogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIGFzc2V0UmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsCgkvLyAgICAgICBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgIHhmZXJBc3NldDogQXNzZXRJRC56ZXJvSW5kZXgsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBheGZlcgoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjY4CgkvLyBhc3NldEFtb3VudDogMQoJaW50IDEKCWl0eG5fZmllbGQgQXNzZXRBbW91bnQKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo2OQoJLy8gYXNzZXRDbG9zZVRvOiB0aGlzLmFwcC5hZGRyZXNzCglnbG9iYWwgQ3VycmVudEFwcGxpY2F0aW9uQWRkcmVzcwoJaXR4bl9maWVsZCBBc3NldENsb3NlVG8KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MAoJLy8gYXNzZXRSZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRSZWNlaXZlcgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjcxCgkvLyBhc3NldFNlbmRlcjogdGhpcy5hcHAuYWRkcmVzcwoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCWl0eG5fZmllbGQgQXNzZXRTZW5kZXIKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3MgoJLy8geGZlckFzc2V0OiBBc3NldElELnplcm9JbmRleAoJaW50IDAKCWl0eG5fZmllbGQgWGZlckFzc2V0CgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBtZXRob2RDYWxsKCl1aW50NjQKKmFiaV9yb3V0ZV9tZXRob2RDYWxsOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1ldGhvZENhbGwoKXVpbnQ2NAoJY2FsbHN1YiBtZXRob2RDYWxsCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbWV0aG9kQ2FsbCgpOiBBc3NldElECm1ldGhvZENhbGw6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo3NwoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPFtBcHBJRCwgQXNzZXRJRF0sIEFzc2V0SUQ+KHsKCS8vICAgICAgIG5hbWU6ICdtZXRob2QnLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3RoaXMuYXBwLCBBc3NldElELnplcm9JbmRleF0sCgkvLyAgICAgfSk7CglpdHhuX2JlZ2luCglpbnQgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJbWV0aG9kICJtZXRob2QodWludDY0LHVpbnQ2NCl1aW50NjQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjc5CgkvLyBtZXRob2RBcmdzOiBbdGhpcy5hcHAsIEFzc2V0SUQuemVyb0luZGV4XQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50IDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoJcmV0c3ViCgovLyBvbmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoJY2FsbHN1YiBvbmxpbmVLZXlSZWdpc3RyYXRpb24KCWludCAxCglyZXR1cm4KCi8vIG9ubGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9ubGluZUtleVJlZ2lzdHJhdGlvbjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg0CgkvLyBzZW5kT25saW5lS2V5UmVnaXN0cmF0aW9uKHsKCS8vICAgICAgIHNlbGVjdGlvblBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnLAoJLy8gICAgICAgdm90ZUZpcnN0OiAxLAoJLy8gICAgICAgdm90ZUtleURpbHV0aW9uOiAxLAoJLy8gICAgICAgdm90ZUxhc3Q6IDEsCgkvLyAgICAgICB2b3RlUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScsCgkvLyAgICAgfSkKCWl0eG5fYmVnaW4KCWludCBrZXlyZWcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NQoJLy8gc2VsZWN0aW9uUEs6ICdhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYScKCWJ5dGUgMHg2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxIC8vICJhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSIKCWl0eG5fZmllbGQgU2VsZWN0aW9uUEsKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo4NgoJLy8gc3RhdGVQcm9vZlBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFN0YXRlUHJvb2ZQSwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg3CgkvLyB2b3RlRmlyc3Q6IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVGaXJzdAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg4CgkvLyB2b3RlS2V5RGlsdXRpb246IDEKCWludCAxCglpdHhuX2ZpZWxkIFZvdGVLZXlEaWx1dGlvbgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjg5CgkvLyB2b3RlTGFzdDogMQoJaW50IDEKCWl0eG5fZmllbGQgVm90ZUxhc3QKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5MAoJLy8gdm90ZVBLOiAnYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEnCglieXRlIDB4NjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MTYxNjE2MSAvLyAiYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEiCglpdHhuX2ZpZWxkIFZvdGVQSwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZAoqYWJpX3JvdXRlX29mZmxpbmVLZXlSZWdpc3RyYXRpb246CgkvLyBleGVjdXRlIG9mZmxpbmVLZXlSZWdpc3RyYXRpb24oKXZvaWQKCWNhbGxzdWIgb2ZmbGluZUtleVJlZ2lzdHJhdGlvbgoJaW50IDEKCXJldHVybgoKLy8gb2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpOiB2b2lkCm9mZmxpbmVLZXlSZWdpc3RyYXRpb246Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czo5NQoJLy8gc2VuZE9mZmxpbmVLZXlSZWdpc3RyYXRpb24oe30pCglpdHhuX2JlZ2luCglpbnQga2V5cmVnCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50IDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJcmV0c3ViCgovLyBpbm5lckdlbmVyaWMoKXZvaWQKKmFiaV9yb3V0ZV9pbm5lckdlbmVyaWM6CgkvLyBleGVjdXRlIGlubmVyR2VuZXJpYygpdm9pZAoJY2FsbHN1YiBpbm5lckdlbmVyaWMKCWludCAxCglyZXR1cm4KCi8vIGlubmVyR2VuZXJpYygpOiB2b2lkCmlubmVyR2VuZXJpYzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pdHhucy5hbGdvLnRzOjk5CgkvLyBzZW5kTWV0aG9kQ2FsbDxbSW5uZXJUeG48SW5uZXJBc3NldENyZWF0aW9uPl0sIHZvaWQ+KHsKCS8vICAgICAgIG5hbWU6ICdmb28nLAoJLy8gICAgICAgbWV0aG9kQXJnczogW3sgY29uZmlnQXNzZXRUb3RhbDogMSB9XSwKCS8vICAgICB9KQoJaXR4bl9iZWdpbgoJaW50IGFjZmcKCWl0eG5fZmllbGQgVHlwZUVudW0KCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIGNvbmZpZ0Fzc2V0VG90YWw6IDEKCWludCAxCglpdHhuX2ZpZWxkIENvbmZpZ0Fzc2V0VG90YWwKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnQgMAoJaXR4bl9maWVsZCBGZWUKCWl0eG5fbmV4dAoJaW50IGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCW1ldGhvZCAiZm9vKHR4bil2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyB0ZXN0cy9jb250cmFjdHMvaXR4bnMuYWxnby50czoxMDEKCS8vIG1ldGhvZEFyZ3M6IFt7IGNvbmZpZ0Fzc2V0VG90YWw6IDEgfV0KCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludCAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInBheW1lbnQoKXZvaWQiCgltZXRob2QgImFzc2V0Q3JlYXRpb24oKXVpbnQ2NCIKCW1ldGhvZCAiYXBwQ2FsbCgpdm9pZCIKCW1ldGhvZCAiYXNzZXRDb25maWcoKXZvaWQiCgltZXRob2QgImFzc2V0RnJlZXplKCl2b2lkIgoJbWV0aG9kICJhc3NldFRyYW5zZmVyKCl2b2lkIgoJbWV0aG9kICJtZXRob2RDYWxsKCl1aW50NjQiCgltZXRob2QgIm9ubGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAib2ZmbGluZUtleVJlZ2lzdHJhdGlvbigpdm9pZCIKCW1ldGhvZCAiaW5uZXJHZW5lcmljKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wYXltZW50ICphYmlfcm91dGVfYXNzZXRDcmVhdGlvbiAqYWJpX3JvdXRlX2FwcENhbGwgKmFiaV9yb3V0ZV9hc3NldENvbmZpZyAqYWJpX3JvdXRlX2Fzc2V0RnJlZXplICphYmlfcm91dGVfYXNzZXRUcmFuc2ZlciAqYWJpX3JvdXRlX21ldGhvZENhbGwgKmFiaV9yb3V0ZV9vbmxpbmVLZXlSZWdpc3RyYXRpb24gKmFiaV9yb3V0ZV9vZmZsaW5lS2V5UmVnaXN0cmF0aW9uICphYmlfcm91dGVfaW5uZXJHZW5lcmljCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/LoopsTest.approval.teal b/tests/contracts/artifacts/LoopsTest.approval.teal index 664da93d7..37dfd6578 100644 --- a/tests/contracts/artifacts/LoopsTest.approval.teal +++ b/tests/contracts/artifacts/LoopsTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/LoopsTest.arc32.json b/tests/contracts/artifacts/LoopsTest.arc32.json index 8016727cf..218fdde12 100644 --- a/tests/contracts/artifacts/LoopsTest.arc32.json +++ b/tests/contracts/artifacts/LoopsTest.arc32.json @@ -79,7 +79,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB3aGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX3doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB3aGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiB3aGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB3aGlsZUxvb3AoKTogdWludDY0CndoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0Cgoqd2hpbGVfMDoKCip3aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OQoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYnogKndoaWxlXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMAoKKndoaWxlXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTMKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGZvckxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZm9yTG9vcCgpdWludDY0CgljYWxsc3ViIGZvckxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb3JMb29wKCk6IHVpbnQ2NApmb3JMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE3CgkvLyBpID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaiA9IDA7IGogPCAxMDsgaiA9IGogKyAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBqOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE5CgkvLyBqIDwgMTAKCWZyYW1lX2RpZyAxIC8vIGo6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MjAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTkKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyMwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGRvV2hpbGVMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9kb1doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGRvV2hpbGVMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZG9XaGlsZUxvb3AoKTogdWludDY0CmRvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyNwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMF9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czozMAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMDoKCipkb193aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzEKCS8vIGkgPCAxMAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMTAKCTwKCWJueiAqZG9fd2hpbGVfMF9zdGF0ZW1lbnQKCipkb193aGlsZV8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjMzCgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBicmVha1doaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfYnJlYWtXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBicmVha1doaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJyZWFrV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha1doaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzcKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzE6Cgoqd2hpbGVfMV9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjM5CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo0MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKndoaWxlXzFfZW5kCgoqaWYwX2VuZDoKCWIgKndoaWxlXzEKCip3aGlsZV8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQ0CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBjb250aW51ZVdoaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfY29udGludWVXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBjb250aW51ZVdoaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNvbnRpbnVlV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZVdoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NDgKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzI6Cgoqd2hpbGVfMl9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjUwCgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMl9lbmQKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTEKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYxX2VuZAoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTIKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMl9jb250aW51ZQoKKmlmMV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICp3aGlsZV8yCgoqd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1OAoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gYnJlYWtGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9icmVha0Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgYnJlYWtGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYnJlYWtGb3JMb29wKCk6IHVpbnQ2NApicmVha0Zvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY0CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjQKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY2CgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCWIgKmZvcl8xX2VuZAoKKmlmMl9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NAoJLy8gaiA9IGogKyAxCglmcmFtZV9kaWcgMSAvLyBqOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gajogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY5CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gY29udGludWVGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9jb250aW51ZUZvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgY29udGludWVGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY29udGludWVGb3JMb29wKCk6IHVpbnQ2NApjb250aW51ZUZvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzMKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjc1CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyAqaWYzX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzYKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzcKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzJfY29udGludWUKCippZjNfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6ODAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4MwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2JyZWFrRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGJyZWFrRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmVha0RvV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha0RvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMV9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjkxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCWIgKmRvX3doaWxlXzFfZW5kCgoqaWY0X2VuZDoKCipkb193aGlsZV8xOgoKKmRvX3doaWxlXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MgoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYm56ICpkb193aGlsZV8xX3N0YXRlbWVudAoKKmRvX3doaWxlXzFfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OTQKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGNvbnRpbnVlRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGNvbnRpbnVlRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb250aW51ZURvV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZURvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5OAoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMl9zdGF0ZW1lbnQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNV9lbmQKCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwMgoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpkb193aGlsZV8yX2NvbnRpbnVlCgoqaWY1X2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwNQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMjoKCipkb193aGlsZV8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTA2CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglibnogKmRvX3doaWxlXzJfc3RhdGVtZW50CgoqZG9fd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxMDgKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ3aGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiZm9yTG9vcCgpdWludDY0IgoJbWV0aG9kICJkb1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJjb250aW51ZVdoaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha0Zvckxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVGb3JMb29wKCl1aW50NjQiCgltZXRob2QgImJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVEb1doaWxlTG9vcCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV93aGlsZUxvb3AgKmFiaV9yb3V0ZV9mb3JMb29wICphYmlfcm91dGVfZG9XaGlsZUxvb3AgKmFiaV9yb3V0ZV9icmVha1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlV2hpbGVMb29wICphYmlfcm91dGVfYnJlYWtGb3JMb29wICphYmlfcm91dGVfY29udGludWVGb3JMb29wICphYmlfcm91dGVfYnJlYWtEb1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3AKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB3aGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX3doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB3aGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiB3aGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB3aGlsZUxvb3AoKTogdWludDY0CndoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0Cgoqd2hpbGVfMDoKCip3aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OQoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYnogKndoaWxlXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMAoKKndoaWxlXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTMKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGZvckxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZm9yTG9vcCgpdWludDY0CgljYWxsc3ViIGZvckxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb3JMb29wKCk6IHVpbnQ2NApmb3JMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE3CgkvLyBpID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaiA9IDA7IGogPCAxMDsgaiA9IGogKyAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBqOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE5CgkvLyBqIDwgMTAKCWZyYW1lX2RpZyAxIC8vIGo6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MjAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTkKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyMwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGRvV2hpbGVMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9kb1doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGRvV2hpbGVMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZG9XaGlsZUxvb3AoKTogdWludDY0CmRvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyNwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMF9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czozMAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMDoKCipkb193aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzEKCS8vIGkgPCAxMAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMTAKCTwKCWJueiAqZG9fd2hpbGVfMF9zdGF0ZW1lbnQKCipkb193aGlsZV8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjMzCgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBicmVha1doaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfYnJlYWtXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBicmVha1doaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJyZWFrV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha1doaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzcKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzE6Cgoqd2hpbGVfMV9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjM5CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo0MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKndoaWxlXzFfZW5kCgoqaWYwX2VuZDoKCWIgKndoaWxlXzEKCip3aGlsZV8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQ0CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBjb250aW51ZVdoaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfY29udGludWVXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBjb250aW51ZVdoaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNvbnRpbnVlV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZVdoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NDgKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzI6Cgoqd2hpbGVfMl9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjUwCgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMl9lbmQKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTEKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYxX2VuZAoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTIKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMl9jb250aW51ZQoKKmlmMV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICp3aGlsZV8yCgoqd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1OAoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gYnJlYWtGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9icmVha0Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgYnJlYWtGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYnJlYWtGb3JMb29wKCk6IHVpbnQ2NApicmVha0Zvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY0CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjQKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY2CgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCWIgKmZvcl8xX2VuZAoKKmlmMl9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NAoJLy8gaiA9IGogKyAxCglmcmFtZV9kaWcgMSAvLyBqOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gajogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY5CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gY29udGludWVGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9jb250aW51ZUZvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgY29udGludWVGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY29udGludWVGb3JMb29wKCk6IHVpbnQ2NApjb250aW51ZUZvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzMKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjc1CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyAqaWYzX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzYKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzcKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzJfY29udGludWUKCippZjNfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6ODAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4MwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2JyZWFrRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGJyZWFrRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmVha0RvV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha0RvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMV9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjkxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCWIgKmRvX3doaWxlXzFfZW5kCgoqaWY0X2VuZDoKCipkb193aGlsZV8xOgoKKmRvX3doaWxlXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MgoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYm56ICpkb193aGlsZV8xX3N0YXRlbWVudAoKKmRvX3doaWxlXzFfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OTQKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGNvbnRpbnVlRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGNvbnRpbnVlRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb250aW51ZURvV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZURvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5OAoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMl9zdGF0ZW1lbnQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNV9lbmQKCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwMgoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpkb193aGlsZV8yX2NvbnRpbnVlCgoqaWY1X2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwNQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMjoKCipkb193aGlsZV8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTA2CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglibnogKmRvX3doaWxlXzJfc3RhdGVtZW50CgoqZG9fd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxMDgKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ3aGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiZm9yTG9vcCgpdWludDY0IgoJbWV0aG9kICJkb1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJjb250aW51ZVdoaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha0Zvckxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVGb3JMb29wKCl1aW50NjQiCgltZXRob2QgImJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVEb1doaWxlTG9vcCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV93aGlsZUxvb3AgKmFiaV9yb3V0ZV9mb3JMb29wICphYmlfcm91dGVfZG9XaGlsZUxvb3AgKmFiaV9yb3V0ZV9icmVha1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlV2hpbGVMb29wICphYmlfcm91dGVfYnJlYWtGb3JMb29wICphYmlfcm91dGVfY29udGludWVGb3JMb29wICphYmlfcm91dGVfYnJlYWtEb1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3AKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/LoopsTest.arc56_draft.json b/tests/contracts/artifacts/LoopsTest.arc56_draft.json index 16d92697b..03f4cff38 100644 --- a/tests/contracts/artifacts/LoopsTest.arc56_draft.json +++ b/tests/contracts/artifacts/LoopsTest.arc56_draft.json @@ -164,2338 +164,2341 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 5, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ] - }, - { - "teal": 13, - "source": 5, - "pc": [ - 17, - 18 - ] - }, - { - "teal": 14, - "source": 5, - "pc": [ - 19 - ] - }, - { - "teal": 15, - "source": 5, - "pc": [ - 20, - 21 - ] - }, - { - "teal": 16, - "source": 5, - "pc": [ - 22 - ] - }, - { - "teal": 17, - "source": 5, - "pc": [ - 23, - 24 - ] - }, - { - "teal": 18, - "source": 5, - "pc": [ - 25 - ] - }, - { - "teal": 19, - "source": 5, - "pc": [ - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51 - ] - }, - { - "teal": 23, - "source": 5, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 52 - ] - }, - { - "teal": 28, - "source": 6, - "pc": [ - 53 - ] - }, - { - "teal": 31, - "source": 6, - "pc": [ - 54, - 55, - 56 - ] - }, - { - "teal": 32, - "source": 6, - "pc": [ - 57 - ] - }, - { - "teal": 33, - "source": 6, - "pc": [ - 58 - ] - }, - { - "teal": 34, - "source": 6, - "pc": [ - 59 - ] - }, - { - "teal": 35, - "source": 6, - "pc": [ - 60 - ] - }, - { - "teal": 36, - "source": 6, - "pc": [ - 61 - ] - }, - { - "teal": 40, - "source": 6, - "pc": [ - 62, - 63, - 64 - ] - }, - { - "teal": 43, - "source": 6, - "pc": [ - 65 - ] - }, - { - "teal": 47, - "source": 7, - "pc": [ - 66 - ] - }, - { - "teal": 48, - "source": 7, - "pc": [ - 67, - 68 - ] - }, - { - "teal": 55, - "source": 9, - "pc": [ - 69, - 70 - ] - }, - { - "teal": 56, - "source": 9, - "pc": [ - 71 - ] - }, - { - "teal": 57, - "source": 9, - "pc": [ - 72 - ] - }, - { - "teal": 58, - "source": 9, - "pc": [ - 73, - 74, - 75 - ] - }, - { - "teal": 62, - "source": 10, - "pc": [ - 76, - 77 - ] - }, - { - "teal": 63, - "source": 10, - "pc": [ - 78 - ] - }, - { - "teal": 64, - "source": 10, - "pc": [ - 79 - ] - }, - { - "teal": 65, - "source": 10, - "pc": [ - 80, - 81 - ] - }, - { - "teal": 66, - "source": 9, - "pc": [ - 82, - 83, - 84 - ] - }, - { - "teal": 71, - "source": 13, - "pc": [ - 85, - 86 - ] - }, - { - "teal": 74, - "source": 6, - "pc": [ - 87, - 88 - ] - }, - { - "teal": 75, - "source": 6, - "pc": [ - 89 - ] - }, - { - "teal": 80, - "source": 16, - "pc": [ - 90 - ] - }, - { - "teal": 83, - "source": 16, - "pc": [ - 91, - 92, - 93 - ] - }, - { - "teal": 84, - "source": 16, - "pc": [ - 94 - ] - }, - { - "teal": 85, - "source": 16, - "pc": [ - 95 - ] - }, - { - "teal": 86, - "source": 16, - "pc": [ - 96 - ] - }, - { - "teal": 87, - "source": 16, - "pc": [ - 97 - ] - }, - { - "teal": 88, - "source": 16, - "pc": [ - 98 - ] - }, - { - "teal": 92, - "source": 16, - "pc": [ - 99, - 100, - 101 - ] - }, - { - "teal": 95, - "source": 16, - "pc": [ - 102 - ] - }, - { - "teal": 96, - "source": 16, - "pc": [ - 103 - ] - }, - { - "teal": 100, - "source": 17, - "pc": [ - 104 - ] - }, - { - "teal": 101, - "source": 17, - "pc": [ - 105, - 106 - ] - }, - { - "teal": 105, - "source": 19, - "pc": [ - 107 - ] - }, - { - "teal": 106, - "source": 19, - "pc": [ - 108, - 109 - ] - }, - { - "teal": 111, - "source": 19, - "pc": [ - 110, - 111 - ] - }, - { - "teal": 112, - "source": 19, - "pc": [ - 112 - ] - }, - { - "teal": 113, - "source": 19, - "pc": [ - 113 - ] - }, - { - "teal": 114, - "source": 19, - "pc": [ - 114, - 115, - 116 - ] - }, - { - "teal": 118, - "source": 20, - "pc": [ - 117, - 118 - ] - }, - { - "teal": 119, - "source": 20, - "pc": [ - 119 - ] - }, - { - "teal": 120, - "source": 20, - "pc": [ - 120 - ] - }, - { - "teal": 121, - "source": 20, - "pc": [ - 121, - 122 - ] - }, - { - "teal": 126, - "source": 19, - "pc": [ - 123, - 124 - ] - }, - { - "teal": 127, - "source": 19, - "pc": [ - 125 - ] - }, - { - "teal": 128, - "source": 19, - "pc": [ - 126 - ] - }, - { - "teal": 129, - "source": 19, - "pc": [ - 127, - 128 - ] - }, - { - "teal": 130, - "source": 19, - "pc": [ - 129, - 130, - 131 - ] - }, - { - "teal": 135, - "source": 23, - "pc": [ - 132, - 133 - ] - }, - { - "teal": 138, - "source": 16, - "pc": [ - 134, - 135 - ] - }, - { - "teal": 141, - "source": 16, - "pc": [ - 136, - 137 - ] - }, - { - "teal": 142, - "source": 16, - "pc": [ - 138 - ] - }, - { - "teal": 147, - "source": 26, - "pc": [ - 139 - ] - }, - { - "teal": 150, - "source": 26, - "pc": [ - 140, - 141, - 142 - ] - }, - { - "teal": 151, - "source": 26, - "pc": [ - 143 - ] - }, - { - "teal": 152, - "source": 26, - "pc": [ - 144 - ] - }, - { - "teal": 153, - "source": 26, - "pc": [ - 145 - ] - }, - { - "teal": 154, - "source": 26, - "pc": [ - 146 - ] - }, - { - "teal": 155, - "source": 26, - "pc": [ - 147 - ] - }, - { - "teal": 159, - "source": 26, - "pc": [ - 148, - 149, - 150 - ] - }, - { - "teal": 162, - "source": 26, - "pc": [ - 151 - ] - }, - { - "teal": 166, - "source": 27, - "pc": [ - 152 - ] - }, - { - "teal": 167, - "source": 27, - "pc": [ - 153, - 154 - ] - }, - { - "teal": 172, - "source": 30, - "pc": [ - 155, - 156 - ] - }, - { - "teal": 173, - "source": 30, - "pc": [ - 157 - ] - }, - { - "teal": 174, - "source": 30, - "pc": [ - 158 - ] - }, - { - "teal": 175, - "source": 30, - "pc": [ - 159, - 160 - ] - }, - { - "teal": 182, - "source": 31, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 183, - "source": 31, - "pc": [ - 163 - ] - }, - { - "teal": 184, - "source": 31, - "pc": [ - 164 - ] - }, - { - "teal": 185, - "source": 29, - "pc": [ - 165, - 166, - 167 - ] - }, - { - "teal": 190, - "source": 33, - "pc": [ - 168, - 169 - ] - }, - { - "teal": 193, - "source": 26, - "pc": [ - 170, - 171 - ] - }, - { - "teal": 194, - "source": 26, - "pc": [ - 172 - ] - }, - { - "teal": 199, - "source": 36, - "pc": [ - 173 - ] - }, - { - "teal": 202, - "source": 36, - "pc": [ - 174, - 175, - 176 - ] - }, - { - "teal": 203, - "source": 36, - "pc": [ - 177 - ] - }, - { - "teal": 204, - "source": 36, - "pc": [ - 178 - ] - }, - { - "teal": 205, - "source": 36, - "pc": [ - 179 - ] - }, - { - "teal": 206, - "source": 36, - "pc": [ - 180 - ] - }, - { - "teal": 207, - "source": 36, - "pc": [ - 181 - ] - }, - { - "teal": 211, - "source": 36, - "pc": [ - 182, - 183, - 184 - ] - }, - { - "teal": 214, - "source": 36, - "pc": [ - 185 - ] - }, - { - "teal": 218, - "source": 37, - "pc": [ - 186 - ] - }, - { - "teal": 219, - "source": 37, - "pc": [ - 187, - 188 - ] - }, - { - "teal": 226, - "source": 39, - "pc": [ - 189, - 190 - ] - }, - { - "teal": 227, - "source": 39, - "pc": [ - 191 - ] - }, - { - "teal": 228, - "source": 39, - "pc": [ - 192 - ] - }, - { - "teal": 229, - "source": 39, - "pc": [ - 193, - 194, - 195 - ] - }, - { - "teal": 233, - "source": 40, - "pc": [ - 196, - 197 - ] - }, - { - "teal": 234, - "source": 40, - "pc": [ - 198 - ] - }, - { - "teal": 235, - "source": 40, - "pc": [ - 199 - ] - }, - { - "teal": 236, - "source": 40, - "pc": [ - 200, - 201 - ] - }, - { - "teal": 241, - "source": 41, - "pc": [ - 202, - 203 - ] - }, - { - "teal": 242, - "source": 41, - "pc": [ - 204 - ] - }, - { - "teal": 243, - "source": 41, - "pc": [ - 205 - ] - }, - { - "teal": 244, - "source": 41, - "pc": [ - 206, - 207, - 208 - ] - }, - { - "teal": 247, - "source": 41, - "pc": [ - 209, - 210, - 211 - ] - }, - { - "teal": 250, - "source": 39, - "pc": [ - 212, - 213, - 214 - ] - }, - { - "teal": 255, - "source": 44, - "pc": [ - 215, - 216 - ] - }, - { - "teal": 258, - "source": 36, - "pc": [ - 217, - 218 - ] - }, - { - "teal": 259, - "source": 36, - "pc": [ - 219 - ] - }, - { - "teal": 264, - "source": 47, - "pc": [ - 220 - ] - }, - { - "teal": 267, - "source": 47, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 268, - "source": 47, - "pc": [ - 224 - ] - }, - { - "teal": 269, - "source": 47, - "pc": [ - 225 - ] - }, - { - "teal": 270, - "source": 47, - "pc": [ - 226 - ] - }, - { - "teal": 271, - "source": 47, - "pc": [ - 227 - ] - }, - { - "teal": 272, - "source": 47, - "pc": [ - 228 - ] - }, - { - "teal": 276, - "source": 47, - "pc": [ - 229, - 230, - 231 - ] - }, - { - "teal": 279, - "source": 47, - "pc": [ - 232 - ] - }, - { - "teal": 283, - "source": 48, - "pc": [ - 233 - ] - }, - { - "teal": 284, - "source": 48, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 291, - "source": 50, - "pc": [ - 236, - 237 - ] - }, - { - "teal": 292, - "source": 50, - "pc": [ - 238 - ] - }, - { - "teal": 293, - "source": 50, - "pc": [ - 239 - ] - }, - { - "teal": 294, - "source": 50, - "pc": [ - 240, - 241, - 242 - ] - }, - { - "teal": 299, - "source": 51, - "pc": [ - 243, - 244 - ] - }, - { - "teal": 300, - "source": 51, - "pc": [ - 245 - ] - }, - { - "teal": 301, - "source": 51, - "pc": [ - 246 - ] - }, - { - "teal": 302, - "source": 51, - "pc": [ - 247, - 248, - 249 - ] - }, - { - "teal": 307, - "source": 52, - "pc": [ - 250, - 251 - ] - }, - { - "teal": 308, - "source": 52, - "pc": [ - 252, - 253 - ] - }, - { - "teal": 309, - "source": 53, - "pc": [ - 254, - 255, - 256 - ] - }, - { - "teal": 314, - "source": 55, - "pc": [ - 257, - 258 - ] - }, - { - "teal": 315, - "source": 55, - "pc": [ - 259 - ] - }, - { - "teal": 316, - "source": 55, - "pc": [ - 260 - ] - }, - { - "teal": 317, - "source": 55, - "pc": [ - 261, - 262 - ] - }, - { - "teal": 318, - "source": 50, - "pc": [ - 263, - 264, - 265 - ] - }, - { - "teal": 323, - "source": 58, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 326, - "source": 47, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 327, - "source": 47, - "pc": [ - 270 - ] - }, - { - "teal": 332, - "source": 61, - "pc": [ - 271 - ] - }, - { - "teal": 335, - "source": 61, - "pc": [ - 272, - 273, - 274 - ] - }, - { - "teal": 336, - "source": 61, - "pc": [ - 275 - ] - }, - { - "teal": 337, - "source": 61, - "pc": [ - 276 - ] - }, - { - "teal": 338, - "source": 61, - "pc": [ - 277 - ] - }, - { - "teal": 339, - "source": 61, - "pc": [ - 278 - ] - }, - { - "teal": 340, - "source": 61, - "pc": [ - 279 - ] - }, - { - "teal": 344, - "source": 61, - "pc": [ - 280, - 281, - 282 - ] - }, - { - "teal": 347, - "source": 61, - "pc": [ - 283 - ] - }, - { - "teal": 348, - "source": 61, - "pc": [ - 284 - ] - }, - { - "teal": 352, - "source": 62, - "pc": [ - 285 - ] - }, - { - "teal": 353, - "source": 62, - "pc": [ - 286, - 287 - ] - }, - { - "teal": 357, - "source": 64, - "pc": [ - 288 - ] - }, - { - "teal": 358, - "source": 64, - "pc": [ - 289, - 290 - ] - }, - { - "teal": 363, - "source": 64, - "pc": [ - 291, - 292 - ] - }, - { - "teal": 364, - "source": 64, - "pc": [ - 293 - ] - }, - { - "teal": 365, - "source": 64, - "pc": [ - 294 - ] - }, - { - "teal": 366, - "source": 64, - "pc": [ - 295, - 296, - 297 - ] - }, - { - "teal": 370, - "source": 65, - "pc": [ - 298, - 299 - ] - }, - { - "teal": 371, - "source": 65, - "pc": [ - 300 - ] - }, - { - "teal": 372, - "source": 65, - "pc": [ - 301 - ] - }, - { - "teal": 373, - "source": 65, - "pc": [ - 302, - 303 - ] - }, - { - "teal": 378, - "source": 66, - "pc": [ - 304, - 305 - ] - }, - { - "teal": 379, - "source": 66, - "pc": [ - 306 - ] - }, - { - "teal": 380, - "source": 66, - "pc": [ - 307 - ] - }, - { - "teal": 381, - "source": 66, - "pc": [ - 308, - 309, - 310 - ] - }, - { - "teal": 384, - "source": 66, - "pc": [ - 311, - 312, - 313 - ] - }, - { - "teal": 391, - "source": 64, - "pc": [ - 314, - 315 - ] - }, - { - "teal": 392, - "source": 64, - "pc": [ - 316 - ] - }, - { - "teal": 393, - "source": 64, - "pc": [ - 317 - ] - }, - { - "teal": 394, - "source": 64, - "pc": [ - 318, - 319 - ] - }, - { - "teal": 395, - "source": 64, - "pc": [ - 320, - 321, - 322 - ] - }, - { - "teal": 400, - "source": 69, - "pc": [ - 323, - 324 - ] - }, - { - "teal": 403, - "source": 61, - "pc": [ - 325, - 326 - ] - }, - { - "teal": 406, - "source": 61, - "pc": [ - 327, - 328 - ] - }, - { - "teal": 407, - "source": 61, - "pc": [ - 329 - ] - }, - { - "teal": 412, - "source": 72, - "pc": [ - 330 - ] - }, - { - "teal": 415, - "source": 72, - "pc": [ - 331, - 332, - 333 - ] - }, - { - "teal": 416, - "source": 72, - "pc": [ - 334 - ] - }, - { - "teal": 417, - "source": 72, - "pc": [ - 335 - ] - }, - { - "teal": 418, - "source": 72, - "pc": [ - 336 - ] - }, - { - "teal": 419, - "source": 72, - "pc": [ - 337 - ] - }, - { - "teal": 420, - "source": 72, - "pc": [ - 338 - ] - }, - { - "teal": 424, - "source": 72, - "pc": [ - 339, - 340, - 341 - ] - }, - { - "teal": 427, - "source": 72, - "pc": [ - 342 - ] - }, - { - "teal": 428, - "source": 72, - "pc": [ - 343 - ] - }, - { - "teal": 432, - "source": 73, - "pc": [ - 344 - ] - }, - { - "teal": 433, - "source": 73, - "pc": [ - 345, - 346 - ] - }, - { - "teal": 437, - "source": 75, - "pc": [ - 347 - ] - }, - { - "teal": 438, - "source": 75, - "pc": [ - 348, - 349 - ] - }, - { - "teal": 443, - "source": 75, - "pc": [ - 350, - 351 - ] - }, - { - "teal": 444, - "source": 75, - "pc": [ - 352 - ] - }, - { - "teal": 445, - "source": 75, - "pc": [ - 353 - ] - }, - { - "teal": 446, - "source": 75, - "pc": [ - 354, - 355, - 356 - ] - }, - { - "teal": 451, - "source": 76, - "pc": [ - 357, - 358 - ] - }, - { - "teal": 452, - "source": 76, - "pc": [ - 359 - ] - }, - { - "teal": 453, - "source": 76, - "pc": [ - 360 - ] - }, - { - "teal": 454, - "source": 76, - "pc": [ - 361, - 362, - 363 - ] - }, - { - "teal": 459, - "source": 77, - "pc": [ - 364, - 365 - ] - }, - { - "teal": 460, - "source": 77, - "pc": [ - 366, - 367 - ] - }, - { - "teal": 461, - "source": 78, - "pc": [ - 368, - 369, - 370 - ] - }, - { - "teal": 466, - "source": 80, - "pc": [ - 371, - 372 - ] - }, - { - "teal": 467, - "source": 80, - "pc": [ - 373 - ] - }, - { - "teal": 468, - "source": 80, - "pc": [ - 374 - ] - }, - { - "teal": 469, - "source": 80, - "pc": [ - 375, - 376 - ] - }, - { - "teal": 474, - "source": 75, - "pc": [ - 377, - 378 - ] - }, - { - "teal": 475, - "source": 75, - "pc": [ - 379 - ] - }, - { - "teal": 476, - "source": 75, - "pc": [ - 380 - ] - }, - { - "teal": 477, - "source": 75, - "pc": [ - 381, - 382 - ] - }, - { - "teal": 478, - "source": 75, - "pc": [ - 383, - 384, - 385 - ] - }, - { - "teal": 483, - "source": 83, - "pc": [ - 386, - 387 - ] - }, - { - "teal": 486, - "source": 72, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 489, - "source": 72, - "pc": [ - 390, - 391 - ] - }, - { - "teal": 490, - "source": 72, - "pc": [ - 392 - ] - }, - { - "teal": 495, - "source": 86, - "pc": [ - 393 - ] - }, - { - "teal": 498, - "source": 86, - "pc": [ - 394, - 395, - 396 - ] - }, - { - "teal": 499, - "source": 86, - "pc": [ - 397 - ] - }, - { - "teal": 500, - "source": 86, - "pc": [ - 398 - ] - }, - { - "teal": 501, - "source": 86, - "pc": [ - 399 - ] - }, - { - "teal": 502, - "source": 86, - "pc": [ - 400 - ] - }, - { - "teal": 503, - "source": 86, - "pc": [ - 401 - ] - }, - { - "teal": 507, - "source": 86, - "pc": [ - 402, - 403, - 404 - ] - }, - { - "teal": 510, - "source": 86, - "pc": [ - 405 - ] - }, - { - "teal": 514, - "source": 87, - "pc": [ - 406 - ] - }, - { - "teal": 515, - "source": 87, - "pc": [ - 407, - 408 - ] - }, - { - "teal": 520, - "source": 90, - "pc": [ - 409, - 410 - ] - }, - { - "teal": 521, - "source": 90, - "pc": [ - 411 - ] - }, - { - "teal": 522, - "source": 90, - "pc": [ - 412 - ] - }, - { - "teal": 523, - "source": 90, - "pc": [ - 413, - 414 - ] - }, - { - "teal": 528, - "source": 91, - "pc": [ - 415, - 416 - ] - }, - { - "teal": 529, - "source": 91, - "pc": [ - 417 - ] - }, - { - "teal": 530, - "source": 91, - "pc": [ - 418 - ] - }, - { - "teal": 531, - "source": 91, - "pc": [ - 419, - 420, - 421 - ] - }, - { - "teal": 534, - "source": 91, - "pc": [ - 422, - 423, - 424 - ] - }, - { - "teal": 543, - "source": 92, - "pc": [ - 425, - 426 - ] - }, - { - "teal": 544, - "source": 92, - "pc": [ - 427 - ] - }, - { - "teal": 545, - "source": 92, - "pc": [ - 428 - ] - }, - { - "teal": 546, - "source": 89, - "pc": [ - 429, - 430, - 431 - ] - }, - { - "teal": 551, - "source": 94, - "pc": [ - 432, - 433 - ] - }, - { - "teal": 554, - "source": 86, - "pc": [ - 434, - 435 - ] - }, - { - "teal": 555, - "source": 86, - "pc": [ - 436 - ] - }, - { - "teal": 560, - "source": 97, - "pc": [ - 437 - ] - }, - { - "teal": 563, - "source": 97, - "pc": [ - 438, - 439, - 440 - ] - }, - { - "teal": 564, - "source": 97, - "pc": [ - 441 - ] - }, - { - "teal": 565, - "source": 97, - "pc": [ - 442 - ] - }, - { - "teal": 566, - "source": 97, - "pc": [ - 443 - ] - }, - { - "teal": 567, - "source": 97, - "pc": [ - 444 - ] - }, - { - "teal": 568, - "source": 97, - "pc": [ - 445 - ] - }, - { - "teal": 572, - "source": 97, - "pc": [ - 446, - 447, - 448 - ] - }, - { - "teal": 575, - "source": 97, - "pc": [ - 449 - ] - }, - { - "teal": 579, - "source": 98, - "pc": [ - 450 - ] - }, - { - "teal": 580, - "source": 98, - "pc": [ - 451, - 452 - ] - }, - { - "teal": 586, - "source": 101, - "pc": [ - 453, - 454 - ] - }, - { - "teal": 587, - "source": 101, - "pc": [ - 455 - ] - }, - { - "teal": 588, - "source": 101, - "pc": [ - 456 - ] - }, - { - "teal": 589, - "source": 101, - "pc": [ - 457, - 458, - 459 - ] - }, - { - "teal": 594, - "source": 102, - "pc": [ - 460, - 461 - ] - }, - { - "teal": 595, - "source": 102, - "pc": [ - 462, - 463 - ] - }, - { - "teal": 596, - "source": 103, - "pc": [ - 464, - 465, - 466 - ] - }, - { - "teal": 601, - "source": 105, - "pc": [ - 467, - 468 - ] - }, - { - "teal": 602, - "source": 105, - "pc": [ - 469 - ] - }, - { - "teal": 603, - "source": 105, - "pc": [ - 470 - ] - }, - { - "teal": 604, - "source": 105, - "pc": [ - 471, - 472 - ] - }, - { - "teal": 611, - "source": 106, - "pc": [ - 473, - 474 - ] - }, - { - "teal": 612, - "source": 106, - "pc": [ - 475 - ] - }, - { - "teal": 613, - "source": 106, - "pc": [ - 476 - ] - }, - { - "teal": 614, - "source": 100, - "pc": [ - 477, - 478, - 479 - ] - }, - { - "teal": 619, - "source": 108, - "pc": [ - 480, - 481 - ] - }, - { - "teal": 622, - "source": 97, - "pc": [ - 482, - 483 - ] - }, - { - "teal": 623, - "source": 97, - "pc": [ - 484 - ] - }, - { - "teal": 626, - "source": 5, - "pc": [ - 485 - ] - }, - { - "teal": 627, - "source": 5, - "pc": [ - 486 - ] - }, - { - "teal": 630, - "source": 5, - "pc": [ - 487, - 488, - 489, - 490, - 491, - 492 - ] - }, - { - "teal": 631, - "source": 5, - "pc": [ - 493, - 494, - 495 - ] - }, - { - "teal": 632, - "source": 5, - "pc": [ - 496, - 497, - 498, - 499 - ] - }, - { - "teal": 635, - "source": 5, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 500 - ] - }, - { - "teal": 638, - "source": 5, - "pc": [ - 501, - 502, - 503, - 504, - 505, - 506 - ] - }, - { - "teal": 639, - "source": 5, - "pc": [ - 507, - 508, - 509, - 510, - 511, - 512 - ] - }, - { - "teal": 640, - "source": 5, - "pc": [ - 513, - 514, - 515, - 516, - 517, - 518 - ] - }, - { - "teal": 641, - "source": 5, - "pc": [ - 519, - 520, - 521, - 522, - 523, - 524 - ] - }, - { - "teal": 642, - "source": 5, - "pc": [ - 525, - 526, - 527, - 528, - 529, - 530 - ] - }, - { - "teal": 643, - "source": 5, - "pc": [ - 531, - 532, - 533, - 534, - 535, - 536 - ] - }, - { - "teal": 644, - "source": 5, - "pc": [ - 537, - 538, - 539, - 540, - 541, - 542 - ] - }, - { - "teal": 645, - "source": 5, - "pc": [ - 543, - 544, - 545, - 546, - 547, - 548 - ] - }, - { - "teal": 646, - "source": 5, - "pc": [ - 549, - 550, - 551, - 552, - 553, - 554 - ] - }, - { - "teal": 647, - "source": 5, - "pc": [ - 555, - 556, - 557 - ] - }, - { - "teal": 648, - "source": 5, - "pc": [ - 558, - 559, - 560, - 561, - 562, - 563, - 564, - 565, - 566, - 567, - 568, - 569, - 570, - 571, - 572, - 573, - 574, - 575, - 576, - 577 - ] - }, - { - "teal": 651, - "source": 5, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 578 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 5, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + }, + { + "teal": 13, + "source": 5, + "pc": [ + 17, + 18 + ] + }, + { + "teal": 14, + "source": 5, + "pc": [ + 19 + ] + }, + { + "teal": 15, + "source": 5, + "pc": [ + 20, + 21 + ] + }, + { + "teal": 16, + "source": 5, + "pc": [ + 22 + ] + }, + { + "teal": 17, + "source": 5, + "pc": [ + 23, + 24 + ] + }, + { + "teal": 18, + "source": 5, + "pc": [ + 25 + ] + }, + { + "teal": 19, + "source": 5, + "pc": [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + }, + { + "teal": 23, + "source": 5, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 52 + ] + }, + { + "teal": 28, + "source": 6, + "pc": [ + 53 + ] + }, + { + "teal": 31, + "source": 6, + "pc": [ + 54, + 55, + 56 + ] + }, + { + "teal": 32, + "source": 6, + "pc": [ + 57 + ] + }, + { + "teal": 33, + "source": 6, + "pc": [ + 58 + ] + }, + { + "teal": 34, + "source": 6, + "pc": [ + 59 + ] + }, + { + "teal": 35, + "source": 6, + "pc": [ + 60 + ] + }, + { + "teal": 36, + "source": 6, + "pc": [ + 61 + ] + }, + { + "teal": 40, + "source": 6, + "pc": [ + 62, + 63, + 64 + ] + }, + { + "teal": 43, + "source": 6, + "pc": [ + 65 + ] + }, + { + "teal": 47, + "source": 7, + "pc": [ + 66 + ] + }, + { + "teal": 48, + "source": 7, + "pc": [ + 67, + 68 + ] + }, + { + "teal": 55, + "source": 9, + "pc": [ + 69, + 70 + ] + }, + { + "teal": 56, + "source": 9, + "pc": [ + 71 + ] + }, + { + "teal": 57, + "source": 9, + "pc": [ + 72 + ] + }, + { + "teal": 58, + "source": 9, + "pc": [ + 73, + 74, + 75 + ] + }, + { + "teal": 62, + "source": 10, + "pc": [ + 76, + 77 + ] + }, + { + "teal": 63, + "source": 10, + "pc": [ + 78 + ] + }, + { + "teal": 64, + "source": 10, + "pc": [ + 79 + ] + }, + { + "teal": 65, + "source": 10, + "pc": [ + 80, + 81 + ] + }, + { + "teal": 66, + "source": 9, + "pc": [ + 82, + 83, + 84 + ] + }, + { + "teal": 71, + "source": 13, + "pc": [ + 85, + 86 + ] + }, + { + "teal": 74, + "source": 6, + "pc": [ + 87, + 88 + ] + }, + { + "teal": 75, + "source": 6, + "pc": [ + 89 + ] + }, + { + "teal": 80, + "source": 16, + "pc": [ + 90 + ] + }, + { + "teal": 83, + "source": 16, + "pc": [ + 91, + 92, + 93 + ] + }, + { + "teal": 84, + "source": 16, + "pc": [ + 94 + ] + }, + { + "teal": 85, + "source": 16, + "pc": [ + 95 + ] + }, + { + "teal": 86, + "source": 16, + "pc": [ + 96 + ] + }, + { + "teal": 87, + "source": 16, + "pc": [ + 97 + ] + }, + { + "teal": 88, + "source": 16, + "pc": [ + 98 + ] + }, + { + "teal": 92, + "source": 16, + "pc": [ + 99, + 100, + 101 + ] + }, + { + "teal": 95, + "source": 16, + "pc": [ + 102 + ] + }, + { + "teal": 96, + "source": 16, + "pc": [ + 103 + ] + }, + { + "teal": 100, + "source": 17, + "pc": [ + 104 + ] + }, + { + "teal": 101, + "source": 17, + "pc": [ + 105, + 106 + ] + }, + { + "teal": 105, + "source": 19, + "pc": [ + 107 + ] + }, + { + "teal": 106, + "source": 19, + "pc": [ + 108, + 109 + ] + }, + { + "teal": 111, + "source": 19, + "pc": [ + 110, + 111 + ] + }, + { + "teal": 112, + "source": 19, + "pc": [ + 112 + ] + }, + { + "teal": 113, + "source": 19, + "pc": [ + 113 + ] + }, + { + "teal": 114, + "source": 19, + "pc": [ + 114, + 115, + 116 + ] + }, + { + "teal": 118, + "source": 20, + "pc": [ + 117, + 118 + ] + }, + { + "teal": 119, + "source": 20, + "pc": [ + 119 + ] + }, + { + "teal": 120, + "source": 20, + "pc": [ + 120 + ] + }, + { + "teal": 121, + "source": 20, + "pc": [ + 121, + 122 + ] + }, + { + "teal": 126, + "source": 19, + "pc": [ + 123, + 124 + ] + }, + { + "teal": 127, + "source": 19, + "pc": [ + 125 + ] + }, + { + "teal": 128, + "source": 19, + "pc": [ + 126 + ] + }, + { + "teal": 129, + "source": 19, + "pc": [ + 127, + 128 + ] + }, + { + "teal": 130, + "source": 19, + "pc": [ + 129, + 130, + 131 + ] + }, + { + "teal": 135, + "source": 23, + "pc": [ + 132, + 133 + ] + }, + { + "teal": 138, + "source": 16, + "pc": [ + 134, + 135 + ] + }, + { + "teal": 141, + "source": 16, + "pc": [ + 136, + 137 + ] + }, + { + "teal": 142, + "source": 16, + "pc": [ + 138 + ] + }, + { + "teal": 147, + "source": 26, + "pc": [ + 139 + ] + }, + { + "teal": 150, + "source": 26, + "pc": [ + 140, + 141, + 142 + ] + }, + { + "teal": 151, + "source": 26, + "pc": [ + 143 + ] + }, + { + "teal": 152, + "source": 26, + "pc": [ + 144 + ] + }, + { + "teal": 153, + "source": 26, + "pc": [ + 145 + ] + }, + { + "teal": 154, + "source": 26, + "pc": [ + 146 + ] + }, + { + "teal": 155, + "source": 26, + "pc": [ + 147 + ] + }, + { + "teal": 159, + "source": 26, + "pc": [ + 148, + 149, + 150 + ] + }, + { + "teal": 162, + "source": 26, + "pc": [ + 151 + ] + }, + { + "teal": 166, + "source": 27, + "pc": [ + 152 + ] + }, + { + "teal": 167, + "source": 27, + "pc": [ + 153, + 154 + ] + }, + { + "teal": 172, + "source": 30, + "pc": [ + 155, + 156 + ] + }, + { + "teal": 173, + "source": 30, + "pc": [ + 157 + ] + }, + { + "teal": 174, + "source": 30, + "pc": [ + 158 + ] + }, + { + "teal": 175, + "source": 30, + "pc": [ + 159, + 160 + ] + }, + { + "teal": 182, + "source": 31, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 183, + "source": 31, + "pc": [ + 163 + ] + }, + { + "teal": 184, + "source": 31, + "pc": [ + 164 + ] + }, + { + "teal": 185, + "source": 29, + "pc": [ + 165, + 166, + 167 + ] + }, + { + "teal": 190, + "source": 33, + "pc": [ + 168, + 169 + ] + }, + { + "teal": 193, + "source": 26, + "pc": [ + 170, + 171 + ] + }, + { + "teal": 194, + "source": 26, + "pc": [ + 172 + ] + }, + { + "teal": 199, + "source": 36, + "pc": [ + 173 + ] + }, + { + "teal": 202, + "source": 36, + "pc": [ + 174, + 175, + 176 + ] + }, + { + "teal": 203, + "source": 36, + "pc": [ + 177 + ] + }, + { + "teal": 204, + "source": 36, + "pc": [ + 178 + ] + }, + { + "teal": 205, + "source": 36, + "pc": [ + 179 + ] + }, + { + "teal": 206, + "source": 36, + "pc": [ + 180 + ] + }, + { + "teal": 207, + "source": 36, + "pc": [ + 181 + ] + }, + { + "teal": 211, + "source": 36, + "pc": [ + 182, + 183, + 184 + ] + }, + { + "teal": 214, + "source": 36, + "pc": [ + 185 + ] + }, + { + "teal": 218, + "source": 37, + "pc": [ + 186 + ] + }, + { + "teal": 219, + "source": 37, + "pc": [ + 187, + 188 + ] + }, + { + "teal": 226, + "source": 39, + "pc": [ + 189, + 190 + ] + }, + { + "teal": 227, + "source": 39, + "pc": [ + 191 + ] + }, + { + "teal": 228, + "source": 39, + "pc": [ + 192 + ] + }, + { + "teal": 229, + "source": 39, + "pc": [ + 193, + 194, + 195 + ] + }, + { + "teal": 233, + "source": 40, + "pc": [ + 196, + 197 + ] + }, + { + "teal": 234, + "source": 40, + "pc": [ + 198 + ] + }, + { + "teal": 235, + "source": 40, + "pc": [ + 199 + ] + }, + { + "teal": 236, + "source": 40, + "pc": [ + 200, + 201 + ] + }, + { + "teal": 241, + "source": 41, + "pc": [ + 202, + 203 + ] + }, + { + "teal": 242, + "source": 41, + "pc": [ + 204 + ] + }, + { + "teal": 243, + "source": 41, + "pc": [ + 205 + ] + }, + { + "teal": 244, + "source": 41, + "pc": [ + 206, + 207, + 208 + ] + }, + { + "teal": 247, + "source": 41, + "pc": [ + 209, + 210, + 211 + ] + }, + { + "teal": 250, + "source": 39, + "pc": [ + 212, + 213, + 214 + ] + }, + { + "teal": 255, + "source": 44, + "pc": [ + 215, + 216 + ] + }, + { + "teal": 258, + "source": 36, + "pc": [ + 217, + 218 + ] + }, + { + "teal": 259, + "source": 36, + "pc": [ + 219 + ] + }, + { + "teal": 264, + "source": 47, + "pc": [ + 220 + ] + }, + { + "teal": 267, + "source": 47, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 268, + "source": 47, + "pc": [ + 224 + ] + }, + { + "teal": 269, + "source": 47, + "pc": [ + 225 + ] + }, + { + "teal": 270, + "source": 47, + "pc": [ + 226 + ] + }, + { + "teal": 271, + "source": 47, + "pc": [ + 227 + ] + }, + { + "teal": 272, + "source": 47, + "pc": [ + 228 + ] + }, + { + "teal": 276, + "source": 47, + "pc": [ + 229, + 230, + 231 + ] + }, + { + "teal": 279, + "source": 47, + "pc": [ + 232 + ] + }, + { + "teal": 283, + "source": 48, + "pc": [ + 233 + ] + }, + { + "teal": 284, + "source": 48, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 291, + "source": 50, + "pc": [ + 236, + 237 + ] + }, + { + "teal": 292, + "source": 50, + "pc": [ + 238 + ] + }, + { + "teal": 293, + "source": 50, + "pc": [ + 239 + ] + }, + { + "teal": 294, + "source": 50, + "pc": [ + 240, + 241, + 242 + ] + }, + { + "teal": 299, + "source": 51, + "pc": [ + 243, + 244 + ] + }, + { + "teal": 300, + "source": 51, + "pc": [ + 245 + ] + }, + { + "teal": 301, + "source": 51, + "pc": [ + 246 + ] + }, + { + "teal": 302, + "source": 51, + "pc": [ + 247, + 248, + 249 + ] + }, + { + "teal": 307, + "source": 52, + "pc": [ + 250, + 251 + ] + }, + { + "teal": 308, + "source": 52, + "pc": [ + 252, + 253 + ] + }, + { + "teal": 309, + "source": 53, + "pc": [ + 254, + 255, + 256 + ] + }, + { + "teal": 314, + "source": 55, + "pc": [ + 257, + 258 + ] + }, + { + "teal": 315, + "source": 55, + "pc": [ + 259 + ] + }, + { + "teal": 316, + "source": 55, + "pc": [ + 260 + ] + }, + { + "teal": 317, + "source": 55, + "pc": [ + 261, + 262 + ] + }, + { + "teal": 318, + "source": 50, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 323, + "source": 58, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 326, + "source": 47, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 327, + "source": 47, + "pc": [ + 270 + ] + }, + { + "teal": 332, + "source": 61, + "pc": [ + 271 + ] + }, + { + "teal": 335, + "source": 61, + "pc": [ + 272, + 273, + 274 + ] + }, + { + "teal": 336, + "source": 61, + "pc": [ + 275 + ] + }, + { + "teal": 337, + "source": 61, + "pc": [ + 276 + ] + }, + { + "teal": 338, + "source": 61, + "pc": [ + 277 + ] + }, + { + "teal": 339, + "source": 61, + "pc": [ + 278 + ] + }, + { + "teal": 340, + "source": 61, + "pc": [ + 279 + ] + }, + { + "teal": 344, + "source": 61, + "pc": [ + 280, + 281, + 282 + ] + }, + { + "teal": 347, + "source": 61, + "pc": [ + 283 + ] + }, + { + "teal": 348, + "source": 61, + "pc": [ + 284 + ] + }, + { + "teal": 352, + "source": 62, + "pc": [ + 285 + ] + }, + { + "teal": 353, + "source": 62, + "pc": [ + 286, + 287 + ] + }, + { + "teal": 357, + "source": 64, + "pc": [ + 288 + ] + }, + { + "teal": 358, + "source": 64, + "pc": [ + 289, + 290 + ] + }, + { + "teal": 363, + "source": 64, + "pc": [ + 291, + 292 + ] + }, + { + "teal": 364, + "source": 64, + "pc": [ + 293 + ] + }, + { + "teal": 365, + "source": 64, + "pc": [ + 294 + ] + }, + { + "teal": 366, + "source": 64, + "pc": [ + 295, + 296, + 297 + ] + }, + { + "teal": 370, + "source": 65, + "pc": [ + 298, + 299 + ] + }, + { + "teal": 371, + "source": 65, + "pc": [ + 300 + ] + }, + { + "teal": 372, + "source": 65, + "pc": [ + 301 + ] + }, + { + "teal": 373, + "source": 65, + "pc": [ + 302, + 303 + ] + }, + { + "teal": 378, + "source": 66, + "pc": [ + 304, + 305 + ] + }, + { + "teal": 379, + "source": 66, + "pc": [ + 306 + ] + }, + { + "teal": 380, + "source": 66, + "pc": [ + 307 + ] + }, + { + "teal": 381, + "source": 66, + "pc": [ + 308, + 309, + 310 + ] + }, + { + "teal": 384, + "source": 66, + "pc": [ + 311, + 312, + 313 + ] + }, + { + "teal": 391, + "source": 64, + "pc": [ + 314, + 315 + ] + }, + { + "teal": 392, + "source": 64, + "pc": [ + 316 + ] + }, + { + "teal": 393, + "source": 64, + "pc": [ + 317 + ] + }, + { + "teal": 394, + "source": 64, + "pc": [ + 318, + 319 + ] + }, + { + "teal": 395, + "source": 64, + "pc": [ + 320, + 321, + 322 + ] + }, + { + "teal": 400, + "source": 69, + "pc": [ + 323, + 324 + ] + }, + { + "teal": 403, + "source": 61, + "pc": [ + 325, + 326 + ] + }, + { + "teal": 406, + "source": 61, + "pc": [ + 327, + 328 + ] + }, + { + "teal": 407, + "source": 61, + "pc": [ + 329 + ] + }, + { + "teal": 412, + "source": 72, + "pc": [ + 330 + ] + }, + { + "teal": 415, + "source": 72, + "pc": [ + 331, + 332, + 333 + ] + }, + { + "teal": 416, + "source": 72, + "pc": [ + 334 + ] + }, + { + "teal": 417, + "source": 72, + "pc": [ + 335 + ] + }, + { + "teal": 418, + "source": 72, + "pc": [ + 336 + ] + }, + { + "teal": 419, + "source": 72, + "pc": [ + 337 + ] + }, + { + "teal": 420, + "source": 72, + "pc": [ + 338 + ] + }, + { + "teal": 424, + "source": 72, + "pc": [ + 339, + 340, + 341 + ] + }, + { + "teal": 427, + "source": 72, + "pc": [ + 342 + ] + }, + { + "teal": 428, + "source": 72, + "pc": [ + 343 + ] + }, + { + "teal": 432, + "source": 73, + "pc": [ + 344 + ] + }, + { + "teal": 433, + "source": 73, + "pc": [ + 345, + 346 + ] + }, + { + "teal": 437, + "source": 75, + "pc": [ + 347 + ] + }, + { + "teal": 438, + "source": 75, + "pc": [ + 348, + 349 + ] + }, + { + "teal": 443, + "source": 75, + "pc": [ + 350, + 351 + ] + }, + { + "teal": 444, + "source": 75, + "pc": [ + 352 + ] + }, + { + "teal": 445, + "source": 75, + "pc": [ + 353 + ] + }, + { + "teal": 446, + "source": 75, + "pc": [ + 354, + 355, + 356 + ] + }, + { + "teal": 451, + "source": 76, + "pc": [ + 357, + 358 + ] + }, + { + "teal": 452, + "source": 76, + "pc": [ + 359 + ] + }, + { + "teal": 453, + "source": 76, + "pc": [ + 360 + ] + }, + { + "teal": 454, + "source": 76, + "pc": [ + 361, + 362, + 363 + ] + }, + { + "teal": 459, + "source": 77, + "pc": [ + 364, + 365 + ] + }, + { + "teal": 460, + "source": 77, + "pc": [ + 366, + 367 + ] + }, + { + "teal": 461, + "source": 78, + "pc": [ + 368, + 369, + 370 + ] + }, + { + "teal": 466, + "source": 80, + "pc": [ + 371, + 372 + ] + }, + { + "teal": 467, + "source": 80, + "pc": [ + 373 + ] + }, + { + "teal": 468, + "source": 80, + "pc": [ + 374 + ] + }, + { + "teal": 469, + "source": 80, + "pc": [ + 375, + 376 + ] + }, + { + "teal": 474, + "source": 75, + "pc": [ + 377, + 378 + ] + }, + { + "teal": 475, + "source": 75, + "pc": [ + 379 + ] + }, + { + "teal": 476, + "source": 75, + "pc": [ + 380 + ] + }, + { + "teal": 477, + "source": 75, + "pc": [ + 381, + 382 + ] + }, + { + "teal": 478, + "source": 75, + "pc": [ + 383, + 384, + 385 + ] + }, + { + "teal": 483, + "source": 83, + "pc": [ + 386, + 387 + ] + }, + { + "teal": 486, + "source": 72, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 489, + "source": 72, + "pc": [ + 390, + 391 + ] + }, + { + "teal": 490, + "source": 72, + "pc": [ + 392 + ] + }, + { + "teal": 495, + "source": 86, + "pc": [ + 393 + ] + }, + { + "teal": 498, + "source": 86, + "pc": [ + 394, + 395, + 396 + ] + }, + { + "teal": 499, + "source": 86, + "pc": [ + 397 + ] + }, + { + "teal": 500, + "source": 86, + "pc": [ + 398 + ] + }, + { + "teal": 501, + "source": 86, + "pc": [ + 399 + ] + }, + { + "teal": 502, + "source": 86, + "pc": [ + 400 + ] + }, + { + "teal": 503, + "source": 86, + "pc": [ + 401 + ] + }, + { + "teal": 507, + "source": 86, + "pc": [ + 402, + 403, + 404 + ] + }, + { + "teal": 510, + "source": 86, + "pc": [ + 405 + ] + }, + { + "teal": 514, + "source": 87, + "pc": [ + 406 + ] + }, + { + "teal": 515, + "source": 87, + "pc": [ + 407, + 408 + ] + }, + { + "teal": 520, + "source": 90, + "pc": [ + 409, + 410 + ] + }, + { + "teal": 521, + "source": 90, + "pc": [ + 411 + ] + }, + { + "teal": 522, + "source": 90, + "pc": [ + 412 + ] + }, + { + "teal": 523, + "source": 90, + "pc": [ + 413, + 414 + ] + }, + { + "teal": 528, + "source": 91, + "pc": [ + 415, + 416 + ] + }, + { + "teal": 529, + "source": 91, + "pc": [ + 417 + ] + }, + { + "teal": 530, + "source": 91, + "pc": [ + 418 + ] + }, + { + "teal": 531, + "source": 91, + "pc": [ + 419, + 420, + 421 + ] + }, + { + "teal": 534, + "source": 91, + "pc": [ + 422, + 423, + 424 + ] + }, + { + "teal": 543, + "source": 92, + "pc": [ + 425, + 426 + ] + }, + { + "teal": 544, + "source": 92, + "pc": [ + 427 + ] + }, + { + "teal": 545, + "source": 92, + "pc": [ + 428 + ] + }, + { + "teal": 546, + "source": 89, + "pc": [ + 429, + 430, + 431 + ] + }, + { + "teal": 551, + "source": 94, + "pc": [ + 432, + 433 + ] + }, + { + "teal": 554, + "source": 86, + "pc": [ + 434, + 435 + ] + }, + { + "teal": 555, + "source": 86, + "pc": [ + 436 + ] + }, + { + "teal": 560, + "source": 97, + "pc": [ + 437 + ] + }, + { + "teal": 563, + "source": 97, + "pc": [ + 438, + 439, + 440 + ] + }, + { + "teal": 564, + "source": 97, + "pc": [ + 441 + ] + }, + { + "teal": 565, + "source": 97, + "pc": [ + 442 + ] + }, + { + "teal": 566, + "source": 97, + "pc": [ + 443 + ] + }, + { + "teal": 567, + "source": 97, + "pc": [ + 444 + ] + }, + { + "teal": 568, + "source": 97, + "pc": [ + 445 + ] + }, + { + "teal": 572, + "source": 97, + "pc": [ + 446, + 447, + 448 + ] + }, + { + "teal": 575, + "source": 97, + "pc": [ + 449 + ] + }, + { + "teal": 579, + "source": 98, + "pc": [ + 450 + ] + }, + { + "teal": 580, + "source": 98, + "pc": [ + 451, + 452 + ] + }, + { + "teal": 586, + "source": 101, + "pc": [ + 453, + 454 + ] + }, + { + "teal": 587, + "source": 101, + "pc": [ + 455 + ] + }, + { + "teal": 588, + "source": 101, + "pc": [ + 456 + ] + }, + { + "teal": 589, + "source": 101, + "pc": [ + 457, + 458, + 459 + ] + }, + { + "teal": 594, + "source": 102, + "pc": [ + 460, + 461 + ] + }, + { + "teal": 595, + "source": 102, + "pc": [ + 462, + 463 + ] + }, + { + "teal": 596, + "source": 103, + "pc": [ + 464, + 465, + 466 + ] + }, + { + "teal": 601, + "source": 105, + "pc": [ + 467, + 468 + ] + }, + { + "teal": 602, + "source": 105, + "pc": [ + 469 + ] + }, + { + "teal": 603, + "source": 105, + "pc": [ + 470 + ] + }, + { + "teal": 604, + "source": 105, + "pc": [ + 471, + 472 + ] + }, + { + "teal": 611, + "source": 106, + "pc": [ + 473, + 474 + ] + }, + { + "teal": 612, + "source": 106, + "pc": [ + 475 + ] + }, + { + "teal": 613, + "source": 106, + "pc": [ + 476 + ] + }, + { + "teal": 614, + "source": 100, + "pc": [ + 477, + 478, + 479 + ] + }, + { + "teal": 619, + "source": 108, + "pc": [ + 480, + 481 + ] + }, + { + "teal": 622, + "source": 97, + "pc": [ + 482, + 483 + ] + }, + { + "teal": 623, + "source": 97, + "pc": [ + 484 + ] + }, + { + "teal": 626, + "source": 5, + "pc": [ + 485 + ] + }, + { + "teal": 627, + "source": 5, + "pc": [ + 486 + ] + }, + { + "teal": 630, + "source": 5, + "pc": [ + 487, + 488, + 489, + 490, + 491, + 492 + ] + }, + { + "teal": 631, + "source": 5, + "pc": [ + 493, + 494, + 495 + ] + }, + { + "teal": 632, + "source": 5, + "pc": [ + 496, + 497, + 498, + 499 + ] + }, + { + "teal": 635, + "source": 5, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 500 + ] + }, + { + "teal": 638, + "source": 5, + "pc": [ + 501, + 502, + 503, + 504, + 505, + 506 + ] + }, + { + "teal": 639, + "source": 5, + "pc": [ + 507, + 508, + 509, + 510, + 511, + 512 + ] + }, + { + "teal": 640, + "source": 5, + "pc": [ + 513, + 514, + 515, + 516, + 517, + 518 + ] + }, + { + "teal": 641, + "source": 5, + "pc": [ + 519, + 520, + 521, + 522, + 523, + 524 + ] + }, + { + "teal": 642, + "source": 5, + "pc": [ + 525, + 526, + 527, + 528, + 529, + 530 + ] + }, + { + "teal": 643, + "source": 5, + "pc": [ + 531, + 532, + 533, + 534, + 535, + 536 + ] + }, + { + "teal": 644, + "source": 5, + "pc": [ + 537, + 538, + 539, + 540, + 541, + 542 + ] + }, + { + "teal": 645, + "source": 5, + "pc": [ + 543, + 544, + 545, + 546, + 547, + 548 + ] + }, + { + "teal": 646, + "source": 5, + "pc": [ + 549, + 550, + 551, + 552, + 553, + 554 + ] + }, + { + "teal": 647, + "source": 5, + "pc": [ + 555, + 556, + 557 + ] + }, + { + "teal": 648, + "source": 5, + "pc": [ + 558, + 559, + 560, + 561, + 562, + 563, + 564, + 565, + 566, + 567, + 568, + 569, + 570, + 571, + 572, + 573, + 574, + 575, + 576, + 577 + ] + }, + { + "teal": 651, + "source": 5, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 578 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB3aGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX3doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB3aGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiB3aGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB3aGlsZUxvb3AoKTogdWludDY0CndoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0Cgoqd2hpbGVfMDoKCip3aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OQoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYnogKndoaWxlXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMAoKKndoaWxlXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTMKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGZvckxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZm9yTG9vcCgpdWludDY0CgljYWxsc3ViIGZvckxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb3JMb29wKCk6IHVpbnQ2NApmb3JMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE3CgkvLyBpID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaiA9IDA7IGogPCAxMDsgaiA9IGogKyAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBqOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE5CgkvLyBqIDwgMTAKCWZyYW1lX2RpZyAxIC8vIGo6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MjAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTkKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyMwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGRvV2hpbGVMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9kb1doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGRvV2hpbGVMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZG9XaGlsZUxvb3AoKTogdWludDY0CmRvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyNwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMF9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czozMAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMDoKCipkb193aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzEKCS8vIGkgPCAxMAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMTAKCTwKCWJueiAqZG9fd2hpbGVfMF9zdGF0ZW1lbnQKCipkb193aGlsZV8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjMzCgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBicmVha1doaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfYnJlYWtXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBicmVha1doaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJyZWFrV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha1doaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzcKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzE6Cgoqd2hpbGVfMV9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjM5CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo0MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKndoaWxlXzFfZW5kCgoqaWYwX2VuZDoKCWIgKndoaWxlXzEKCip3aGlsZV8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQ0CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBjb250aW51ZVdoaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfY29udGludWVXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBjb250aW51ZVdoaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNvbnRpbnVlV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZVdoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NDgKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzI6Cgoqd2hpbGVfMl9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjUwCgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMl9lbmQKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTEKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYxX2VuZAoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTIKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMl9jb250aW51ZQoKKmlmMV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICp3aGlsZV8yCgoqd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1OAoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gYnJlYWtGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9icmVha0Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgYnJlYWtGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYnJlYWtGb3JMb29wKCk6IHVpbnQ2NApicmVha0Zvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY0CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjQKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY2CgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCWIgKmZvcl8xX2VuZAoKKmlmMl9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NAoJLy8gaiA9IGogKyAxCglmcmFtZV9kaWcgMSAvLyBqOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gajogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY5CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gY29udGludWVGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9jb250aW51ZUZvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgY29udGludWVGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY29udGludWVGb3JMb29wKCk6IHVpbnQ2NApjb250aW51ZUZvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzMKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjc1CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyAqaWYzX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzYKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzcKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzJfY29udGludWUKCippZjNfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6ODAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4MwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2JyZWFrRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGJyZWFrRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmVha0RvV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha0RvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMV9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjkxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCWIgKmRvX3doaWxlXzFfZW5kCgoqaWY0X2VuZDoKCipkb193aGlsZV8xOgoKKmRvX3doaWxlXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MgoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYm56ICpkb193aGlsZV8xX3N0YXRlbWVudAoKKmRvX3doaWxlXzFfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OTQKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGNvbnRpbnVlRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGNvbnRpbnVlRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb250aW51ZURvV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZURvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5OAoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMl9zdGF0ZW1lbnQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNV9lbmQKCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwMgoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpkb193aGlsZV8yX2NvbnRpbnVlCgoqaWY1X2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwNQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMjoKCipkb193aGlsZV8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTA2CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglibnogKmRvX3doaWxlXzJfc3RhdGVtZW50CgoqZG9fd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxMDgKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ3aGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiZm9yTG9vcCgpdWludDY0IgoJbWV0aG9kICJkb1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJjb250aW51ZVdoaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha0Zvckxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVGb3JMb29wKCl1aW50NjQiCgltZXRob2QgImJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVEb1doaWxlTG9vcCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV93aGlsZUxvb3AgKmFiaV9yb3V0ZV9mb3JMb29wICphYmlfcm91dGVfZG9XaGlsZUxvb3AgKmFiaV9yb3V0ZV9icmVha1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlV2hpbGVMb29wICphYmlfcm91dGVfYnJlYWtGb3JMb29wICphYmlfcm91dGVfY29udGludWVGb3JMb29wICphYmlfcm91dGVfYnJlYWtEb1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3AKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB3aGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX3doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSB3aGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiB3aGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB3aGlsZUxvb3AoKTogdWludDY0CndoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0Cgoqd2hpbGVfMDoKCip3aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OQoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYnogKndoaWxlXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMAoKKndoaWxlXzBfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTMKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGZvckxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZm9yTG9vcCgpdWludDY0CgljYWxsc3ViIGZvckxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb3JMb29wKCk6IHVpbnQ2NApmb3JMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE3CgkvLyBpID0gMAoJaW50IDAKCWZyYW1lX2J1cnkgMCAvLyBpOiB1aW50NjQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxOQoJLy8gZm9yIChsZXQgaiA9IDA7IGogPCAxMDsgaiA9IGogKyAxKQoJaW50IDAKCWZyYW1lX2J1cnkgMSAvLyBqOiB1aW50NjQKCipmb3JfMDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjE5CgkvLyBqIDwgMTAKCWZyYW1lX2RpZyAxIC8vIGo6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqZm9yXzBfZW5kCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MjAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTkKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyMwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGRvV2hpbGVMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9kb1doaWxlTG9vcDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBkb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGRvV2hpbGVMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZG9XaGlsZUxvb3AoKTogdWludDY0CmRvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoyNwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMF9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czozMAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMDoKCipkb193aGlsZV8wX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzEKCS8vIGkgPCAxMAoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMTAKCTwKCWJueiAqZG9fd2hpbGVfMF9zdGF0ZW1lbnQKCipkb193aGlsZV8wX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjMzCgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBicmVha1doaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfYnJlYWtXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBicmVha1doaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJyZWFrV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha1doaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MzcKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzE6Cgoqd2hpbGVfMV9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjM5CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo0MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMF9lbmQKCgkvLyAqaWYwX2NvbnNlcXVlbnQKCWIgKndoaWxlXzFfZW5kCgoqaWYwX2VuZDoKCWIgKndoaWxlXzEKCip3aGlsZV8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjQ0CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBjb250aW51ZVdoaWxlTG9vcCgpdWludDY0CiphYmlfcm91dGVfY29udGludWVXaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVXaGlsZUxvb3AoKXVpbnQ2NAoJY2FsbHN1YiBjb250aW51ZVdoaWxlTG9vcAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGNvbnRpbnVlV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZVdoaWxlTG9vcDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NDgKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKndoaWxlXzI6Cgoqd2hpbGVfMl9jb250aW51ZToKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjUwCgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglieiAqd2hpbGVfMl9lbmQKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTEKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYxX2VuZAoKCS8vICppZjFfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NTIKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqd2hpbGVfMl9jb250aW51ZQoKKmlmMV9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICp3aGlsZV8yCgoqd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo1OAoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gYnJlYWtGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9icmVha0Zvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgYnJlYWtGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYnJlYWtGb3JMb29wKCk6IHVpbnQ2NApicmVha0Zvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjIKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY0CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8xOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NjQKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMV9lbmQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmMl9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY2CgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmMl9lbmQKCgkvLyAqaWYyX2NvbnNlcXVlbnQKCWIgKmZvcl8xX2VuZAoKKmlmMl9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo2NAoJLy8gaiA9IGogKyAxCglmcmFtZV9kaWcgMSAvLyBqOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDEgLy8gajogdWludDY0CgliICpmb3JfMQoKKmZvcl8xX2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjY5CgkvLyByZXR1cm4gaTsKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gY29udGludWVGb3JMb29wKCl1aW50NjQKKmFiaV9yb3V0ZV9jb250aW51ZUZvckxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVGb3JMb29wKCl1aW50NjQKCWNhbGxzdWIgY29udGludWVGb3JMb29wCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gY29udGludWVGb3JMb29wKCk6IHVpbnQ2NApjb250aW51ZUZvckxvb3A6Cglwcm90byAwIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoJZHVwCgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzMKCS8vIGkgPSAwCglpbnQgMAoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjc1CgkvLyBmb3IgKGxldCBqID0gMDsgaiA8IDEwOyBqID0gaiArIDEpCglpbnQgMAoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoKKmZvcl8yOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPCAxMAoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMTAKCTwKCWJ6ICpmb3JfMl9lbmQKCgkvLyAqaWYzX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzYKCS8vIGkgPT09IDUKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDUKCT09CglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzcKCS8vIGkgPSAxMzM3CglpbnQgMTMzNwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzJfY29udGludWUKCippZjNfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6ODAKCS8vIGkgPSBpICsgMQoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAwIC8vIGk6IHVpbnQ2NAoKKmZvcl8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6NzUKCS8vIGogPSBqICsgMQoJZnJhbWVfZGlnIDEgLy8gajogdWludDY0CglpbnQgMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGo6IHVpbnQ2NAoJYiAqZm9yXzIKCipmb3JfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4MwoJLy8gcmV0dXJuIGk7CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2JyZWFrRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgYnJlYWtEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGJyZWFrRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBicmVha0RvV2hpbGVMb29wKCk6IHVpbnQ2NApicmVha0RvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo4NwoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMV9zdGF0ZW1lbnQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MAoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoJLy8gKmlmNF9jb25kaXRpb24KCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjkxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCWIgKmRvX3doaWxlXzFfZW5kCgoqaWY0X2VuZDoKCipkb193aGlsZV8xOgoKKmRvX3doaWxlXzFfY29udGludWU6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5MgoJLy8gaSA8IDEwCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxMAoJPAoJYm56ICpkb193aGlsZV8xX3N0YXRlbWVudAoKKmRvX3doaWxlXzFfZW5kOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6OTQKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGNvbnRpbnVlRG9XaGlsZUxvb3AoKXVpbnQ2NAoqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3A6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgY29udGludWVEb1doaWxlTG9vcCgpdWludDY0CgljYWxsc3ViIGNvbnRpbnVlRG9XaGlsZUxvb3AKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBjb250aW51ZURvV2hpbGVMb29wKCk6IHVpbnQ2NApjb250aW51ZURvV2hpbGVMb29wOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czo5OAoJLy8gaSA9IDAKCWludCAwCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMl9zdGF0ZW1lbnQ6CgkvLyAqaWY1X2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTAxCgkvLyBpID09PSA1CglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCA1Cgk9PQoJYnogKmlmNV9lbmQKCgkvLyAqaWY1X2NvbnNlcXVlbnQKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwMgoJLy8gaSA9IDEzMzcKCWludCAxMzM3CglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgliICpkb193aGlsZV8yX2NvbnRpbnVlCgoqaWY1X2VuZDoKCS8vIHRlc3RzL2NvbnRyYWN0cy9sb29wcy5hbGdvLnRzOjEwNQoJLy8gaSA9IGkgKyAxCglmcmFtZV9kaWcgMCAvLyBpOiB1aW50NjQKCWludCAxCgkrCglmcmFtZV9idXJ5IDAgLy8gaTogdWludDY0CgoqZG9fd2hpbGVfMjoKCipkb193aGlsZV8yX2NvbnRpbnVlOgoJLy8gdGVzdHMvY29udHJhY3RzL2xvb3BzLmFsZ28udHM6MTA2CgkvLyBpIDwgMTAKCWZyYW1lX2RpZyAwIC8vIGk6IHVpbnQ2NAoJaW50IDEwCgk8CglibnogKmRvX3doaWxlXzJfc3RhdGVtZW50CgoqZG9fd2hpbGVfMl9lbmQ6CgkvLyB0ZXN0cy9jb250cmFjdHMvbG9vcHMuYWxnby50czoxMDgKCS8vIHJldHVybiBpOwoJZnJhbWVfZGlnIDAgLy8gaTogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ3aGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiZm9yTG9vcCgpdWludDY0IgoJbWV0aG9kICJkb1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha1doaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJjb250aW51ZVdoaWxlTG9vcCgpdWludDY0IgoJbWV0aG9kICJicmVha0Zvckxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVGb3JMb29wKCl1aW50NjQiCgltZXRob2QgImJyZWFrRG9XaGlsZUxvb3AoKXVpbnQ2NCIKCW1ldGhvZCAiY29udGludWVEb1doaWxlTG9vcCgpdWludDY0IgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV93aGlsZUxvb3AgKmFiaV9yb3V0ZV9mb3JMb29wICphYmlfcm91dGVfZG9XaGlsZUxvb3AgKmFiaV9yb3V0ZV9icmVha1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlV2hpbGVMb29wICphYmlfcm91dGVfYnJlYWtGb3JMb29wICphYmlfcm91dGVfY29udGludWVGb3JMb29wICphYmlfcm91dGVfYnJlYWtEb1doaWxlTG9vcCAqYWJpX3JvdXRlX2NvbnRpbnVlRG9XaGlsZUxvb3AKCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY2FsbCBOb09wCgllcnI=", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/LsigWithArgs.lsig.teal b/tests/contracts/artifacts/LsigWithArgs.lsig.teal index e886d96c4..6ce4759fd 100644 --- a/tests/contracts/artifacts/LsigWithArgs.lsig.teal +++ b/tests/contracts/artifacts/LsigWithArgs.lsig.teal @@ -1,7 +1,7 @@ #pragma version 10 //#pragma mode logicsig -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // The address of this logic signature is W6DDEFBKZB2HZYJ6WYJ3S3RSK57IRNV4LACOOLBGVDEWJ524RQWF5EBMTU diff --git a/tests/contracts/artifacts/LsigWithPrivateMethod.lsig.teal b/tests/contracts/artifacts/LsigWithPrivateMethod.lsig.teal index cd0453037..1bd82dfd3 100644 --- a/tests/contracts/artifacts/LsigWithPrivateMethod.lsig.teal +++ b/tests/contracts/artifacts/LsigWithPrivateMethod.lsig.teal @@ -1,7 +1,7 @@ #pragma version 10 //#pragma mode logicsig -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // The address of this logic signature is 2G7X6ZCAOFJOVGTOAGVL2ZKKJSLUSV2XFG4SKH3JRUIZ7EY7JWY3T7EQGI diff --git a/tests/contracts/artifacts/MathTest.approval.teal b/tests/contracts/artifacts/MathTest.approval.teal index 4bb8725be..e3df959e6 100644 --- a/tests/contracts/artifacts/MathTest.approval.teal +++ b/tests/contracts/artifacts/MathTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/MathTest.arc32.json b/tests/contracts/artifacts/MathTest.arc32.json index 5be911b9c..cd4c25c4a 100644 --- a/tests/contracts/artifacts/MathTest.arc32.json +++ b/tests/contracts/artifacts/MathTest.arc32.json @@ -244,7 +244,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfdTY0cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NHBsdXMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1NjRwbHVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NHBsdXM6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjgKCS8vIHJldHVybiBhICsgYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCXJldHN1YgoKLy8gdTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRtaW51cyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiB1NjRtaW51cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG1pbnVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NG1pbnVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMgoJLy8gcmV0dXJuIGEgLSBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJLQoJcmV0c3ViCgovLyB1NjRtdWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtdWw6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0bXVsKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NG11bAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG11bChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAp1NjRtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjE2CgkvLyByZXR1cm4gYSAqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkqCglyZXRzdWIKCi8vIHU2NGRpdih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3U2NGRpdjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRkaXYodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgdTY0ZGl2CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTY0ZGl2KGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NGRpdjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAKCS8vIHJldHVybiBhIC8gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCS8KCXJldHN1YgoKLy8gdTI1NnBsdXModWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV91MjU2cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1NnBsdXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZwbHVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHUyNTZwbHVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZwbHVzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHUyNTZwbHVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyNAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIrCglyZXRzdWIKCi8vIHUyNTZtaW51cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm1pbnVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciB1MjU2bWludXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtaW51cwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdTI1Nm1pbnVzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1Nm1pbnVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtaW51czoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjgKCS8vIHJldHVybiA8dWludDI1Nj4oYSAtIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJcmV0c3ViCgovLyB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfdTI1Nm11bDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtdWwKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHUyNTZtdWwgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1MjU2bXVsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjMyCgkvLyByZXR1cm4gPHVpbnQyNTY+KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYioKCXJldHN1YgoKLy8gdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZkaXY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1MjU2ZGl2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2ZGl2IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1NmRpdihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1MjU2ZGl2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czozNgoJLy8gcmV0dXJuIDx1aW50MjU2PihhIC8gYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIvCglyZXRzdWIKCi8vIHU2NFJldHVybjI1Nih1aW50NjQsdWludDY0KXVpbnQyNTYKKmFiaV9yb3V0ZV91NjRSZXR1cm4yNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0UmV0dXJuMjU2KHVpbnQ2NCx1aW50NjQpdWludDI1NgoJY2FsbHN1YiB1NjRSZXR1cm4yNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHU2NFJldHVybjI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NFJldHVybjI1NihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQyNTYKdTY0UmV0dXJuMjU2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0MAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglpdG9iCglyZXRzdWIKCi8vIG1heFU2NCgpdWludDY0CiphYmlfcm91dGVfbWF4VTY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1heFU2NCgpdWludDY0CgljYWxsc3ViIG1heFU2NAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG1heFU2NCgpOiB1aW50NjQKbWF4VTY0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0NAoJLy8gcmV0dXJuIFVpbnQ8NjQ+KCcxODQ0Njc0NDA3MzcwOTU1MTYxNScpOwoJaW50IDE4NDQ2NzQ0MDczNzA5NTUxNjE1CglyZXRzdWIKCi8vIGV4cG9uZW50KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfZXhwb25lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgZXhwb25lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHBvbmVudChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHBvbmVudDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NDgKCS8vIHJldHVybiBhICoqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglleHAKCXJldHN1YgoKLy8gdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKKmFiaV9yb3V0ZV92YXJpYWJsZVR5cGVIaW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHkpIGZvciB2YXJpYWJsZVR5cGVIaW50IG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8geDogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdmFyaWFibGVUeXBlSGludCBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKCWNhbGxzdWIgdmFyaWFibGVUeXBlSGludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB2YXJpYWJsZVR5cGVIaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB2YXJpYWJsZVR5cGVIaW50KHg6IHVpbnQ8OD4sIHk6IHVpbnQ8OD4pOiB1aW50MTYKdmFyaWFibGVUeXBlSGludDoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1MgoJLy8geiA9IDx1aW50MTY+KHggKyB5KQoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50PDg+CgkrCglmcmFtZV9idXJ5IDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NTQKCS8vIHJldHVybiB6OwoJZnJhbWVfZGlnIDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyB1aW50OHBsdXModWludDgsdWludDgpdWludDgKKmFiaV9yb3V0ZV91aW50OHBsdXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdWludDhwbHVzKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4cGx1cwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIHVpbnQ4cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50OHBsdXMoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1OAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CgkrCglyZXRzdWIKCi8vIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CiphYmlfcm91dGVfdWludDhleHA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4ZXhwIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDhleHAgbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4ZXhwCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDgKCTw9CgoJLy8gdWludDhleHAgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludDhleHAoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhleHA6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjYyCgkvLyByZXR1cm4gYSAqKiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CglleHAKCXJldHN1YgoKLy8gcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3BsdXNFcXVhbHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcGx1c0VxdWFscyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwbHVzRXF1YWxzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjY2CgkvLyB4ID0gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NjgKCS8vIHggKz0gYgoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8geDogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3MAoJLy8gcmV0dXJuIHg7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGx1c0VxdWFsc0Zyb21HbG9iYWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9wbHVzRXF1YWxzRnJvbUdsb2JhbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzRnJvbUdsb2JhbAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNGcm9tR2xvYmFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnBsdXNFcXVhbHNGcm9tR2xvYmFsOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3NAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gYQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjc2CgkvLyB0aGlzLmdLZXkudmFsdWUgKz0gYgoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3OAoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGJveFRlc3QoKXVpbnQyNTYKKmFiaV9yb3V0ZV9ib3hUZXN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveFRlc3QoKXVpbnQyNTYKCWNhbGxzdWIgYm94VGVzdAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYm94VGVzdCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveFRlc3QoKTogdWludDI1Ngpib3hUZXN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo4NAoJLy8gdGhpcy5ib3hLZXkudmFsdWUgPSA8dWludDI1Nj4xCglieXRlIDB4NjI2Zjc4NGI2NTc5IC8vICJib3hLZXkiCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODUKCS8vIHRoaXMuYm94S2V5LnZhbHVlICs9IDEKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJYnl0ZSAweDYyNmY3ODRiNjU3OSAvLyAiYm94S2V5IgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdGhpcy5ib3hLZXkudmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODcKCS8vIHJldHVybiB0aGlzLmJveEtleS52YWx1ZTsKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCXJldHN1YgoKLy8gZm9vKHg6IHVpbnQyNTYpOiB1aW50MjU2CmZvbzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTEKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCXJldHN1YgoKLy8gdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1bnNhZmVNZXRob2RBcmdzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1bnNhZmVNZXRob2RBcmdzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW5zYWZlTWV0aG9kQXJncyhhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1bnNhZmVNZXRob2RBcmdzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjk1CgkvLyBjID0gYSArIGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYisKCWZyYW1lX2J1cnkgMCAvLyBjOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTcKCS8vIHJldHVybiB0aGlzLmZvbyhjKTsKCWZyYW1lX2RpZyAwIC8vIGM6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBjIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNhbGxzdWIgZm9vCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX3VpbnQyNTZDb21wYXJpc29uVHlwZToKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJpc29uVHlwZSBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDI1NkNvbXBhcmlzb25UeXBlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyaXNvblR5cGUKCWludCAxCglyZXR1cm4KCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZShhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdm9pZAp1aW50MjU2Q29tcGFyaXNvblR5cGU6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTAxCgkvLyBzZW5kZXJCYWxhbmNlQWZ0ZXIgPSBhIC0gYgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJZnJhbWVfYnVyeSAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDIKCS8vIHNlbmRlckJhbGFuY2VBZnRlciA+IDx1aW50MjU2PjAKCWZyYW1lX2RpZyAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliPgoJYnogKmlmMF9lbHNlCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEwMwoJLy8gbG9nKCdub25aZXJvJykKCWJ5dGUgMHg2ZTZmNmU1YTY1NzI2ZiAvLyAibm9uWmVybyIKCWxvZwoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDUKCS8vIGxvZygnemVybycpCglieXRlIDB4N2E2NTcyNmYgLy8gInplcm8iCglsb2cKCippZjBfZW5kOgoJcmV0c3ViCgovLyBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfc3F1YXJlUm9vdDI1NjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHNxdWFyZVJvb3QyNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHNxdWFyZVJvb3QyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290MjU2KGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnNxdWFyZVJvb3QyNTY6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExMAoJLy8gcmV0dXJuIHNxcnQoYSAqIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKgoJYnNxcnQKCXJldHN1YgoKLy8gc3F1YXJlUm9vdDY0KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfc3F1YXJlUm9vdDY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHNxdWFyZVJvb3Q2NCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBzcXVhcmVSb290NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290NjQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKc3F1YXJlUm9vdDY0OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMTQKCS8vIHJldHVybiBzcXJ0KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gYWRkcmVzc1RvQmlnSW50KGFkZHJlc3MpYm9vbAoqYWJpX3JvdXRlX2FkZHJlc3NUb0JpZ0ludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYWRkcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyKSBmb3IgYWRkcmVzc1RvQmlnSW50IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wKCWNhbGxzdWIgYWRkcmVzc1RvQmlnSW50CglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZHJlc3NUb0JpZ0ludChhZGRyOiBBZGRyZXNzKTogYm9vbGVhbgphZGRyZXNzVG9CaWdJbnQ6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExOAoJLy8gcmV0dXJuIGJ0b2JpZ2ludChhZGRyKSA+IGJ0b2JpZ2ludCh0aGlzLnR4bi5zZW5kZXIpOwoJZnJhbWVfZGlnIC0xIC8vIGFkZHI6IEFkZHJlc3MKCXR4biBTZW5kZXIKCWI+CglyZXRzdWIKCi8vIHU4VG91NjQoKXVpbnQ2NAoqYWJpX3JvdXRlX3U4VG91NjQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdThUb3U2NCgpdWludDY0CgljYWxsc3ViIHU4VG91NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1OFRvdTY0KCk6IHVpbnQ2NAp1OFRvdTY0OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEyMgoJLy8geDogdWludDggPSA3CglpbnQgNwoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjMKCS8vIHJldHVybiA8dWludDY0Png7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBwcml2YXRlRnVuY05hbWUoeDogdWludDgsIHk6IHVpbnQ2NCk6IHZvaWQKcHJpdmF0ZUZ1bmNOYW1lOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjcKCS8vIGFzc2VydCg8dWludDg+eSA+IHgpCglmcmFtZV9kaWcgLTIgLy8geTogdWludDY0CglmcmFtZV9kaWcgLTEgLy8geDogdWludDgKCT4KCWFzc2VydAoJcmV0c3ViCgovLyBmdW5jTmFtZSh1aW50MjU2KXZvaWQKKmFiaV9yb3V0ZV9mdW5jTmFtZToKCS8vIHg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeCkgZm9yIGZ1bmNOYW1lIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGZ1bmNOYW1lKHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBmdW5jTmFtZQoJaW50IDEKCXJldHVybgoKLy8gZnVuY05hbWUoeDogdWludDI1Nik6IHZvaWQKZnVuY05hbWU6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzMQoJLy8gdGhpcy5wcml2YXRlRnVuY05hbWUoPHVpbnQ4PngsIDEzMzcpCglpbnQgMTMzNwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyA8dWludDg+eCBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDMxIDEKCWJ0b2kKCWNhbGxzdWIgcHJpdmF0ZUZ1bmNOYW1lCglyZXRzdWIKCi8vIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaWdpbnRQbHVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYmlnaW50UGx1cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpZ2ludFBsdXMoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYmlnaW50UGx1czoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNQoJLy8geCA9IGl0b2IoYSkKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNgoJLy8geSA9IGl0b2IoYikKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNwoJLy8gcmV0dXJuIChidG9iaWdpbnQoeCkgKyBidG9iaWdpbnQoeSkpIGFzIHVpbnQ2NDsKCWZyYW1lX2RpZyAwIC8vIHg6IGJ5dGVbXQoJZnJhbWVfZGlnIDEgLy8geTogYnl0ZVtdCgliKwoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyAoYnRvYmlnaW50KHgpICsgYnRvYmlnaW50KHkpKSBhcyB1aW50NjQgb3ZlcmZsb3dlZCA2NCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJpdHdpc2VPcih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VPcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZU9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYml0d2lzZU9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmJpdHdpc2VPcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQxCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlQW5kOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZUFuZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZUFuZDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ1CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkmCglyZXRzdWIKCi8vIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlWG9yOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZVhvcgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZVhvcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ5CgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgleCglyZXRzdWIKCi8vIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9iaXR3aXNlT3JVMjU2OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKCWNhbGxzdWIgYml0d2lzZU9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU9yVTI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VPclUyNTYoYTogdWludDI1NiwgYjogdWludDI1Nik6IHVpbnQyNTYKYml0d2lzZU9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTUzCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJ8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZUFuZFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VBbmRVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlQW5kVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlQW5kVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlQW5kVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZUFuZFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlQW5kVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlQW5kVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTU3CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWImCglyZXRzdWIKCi8vIGJpdHdpc2VYb3JVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZVhvclUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VYb3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlWG9yVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlWG9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZVhvclUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlWG9yVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlWG9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTYxCgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJeCglyZXRzdWIKCi8vIGJpdHdpc2VOb3QodWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VOb3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYml0d2lzZU5vdCh1aW50NjQpdWludDY0CgljYWxsc3ViIGJpdHdpc2VOb3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90KGE6IHVpbnQ2NCk6IHVpbnQ2NApiaXR3aXNlTm90OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxNjUKCS8vIHJldHVybiB+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCX4KCXJldHN1YgoKLy8gYml0d2lzZU5vdFUyNTYodWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZU5vdFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJpdHdpc2VOb3RVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VOb3RVMjU2KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlTm90VTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU5vdFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90VTI1NihhOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlTm90VTI1NjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTY5CgkvLyByZXR1cm4gfmE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJYn4KCXJldHN1YgoKLy8gbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX211bHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBtdWx3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbXVsdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAptdWx3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTczCgkvLyBwID0gbXVsdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTc3CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2FkZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhZGR3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAphZGR3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTgxCgkvLyBwID0gYWRkdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJYWRkdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg1CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2V4cHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBleHB3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZXhwdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHB3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg5CgkvLyBwID0gZXhwdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZXhwdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTkzCgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdnc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZ3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2dyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZ3OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxOTcKCS8vIHJldHVybiBkaXZ3KDAsIGEsIGIpOwoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWRpdncKCXJldHN1YgoKLy8gZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdm1vZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZtb2R3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2bW9kdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZtb2R3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAxCgkvLyBwID0gZGl2bW9kdygwLCBhLCAwLCBiKQoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkaXZtb2R3CglmcmFtZV9idXJ5IDAgLy8gcCByZW1haW5kZXJMb3c6IHVpbnQ2NAoJZnJhbWVfYnVyeSAxIC8vIHAgcmVtYWluZGVySGlnaDogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gcCBxdW90aWVudExvdzogdWludDY0CglmcmFtZV9idXJ5IDMgLy8gcCBxdW90aWVudEhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA1CgkvLyByZXR1cm4gcDIucXVvdGllbnRMb3c7CglmcmFtZV9kaWcgMiAvLyBwIHF1b3RpZW50TG93OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCi8vIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CiphYmlfcm91dGVfdW5zYWZlVmFyaWFibGVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CgljYWxsc3ViIHVuc2FmZVZhcmlhYmxlcwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVuc2FmZVZhcmlhYmxlcygpOiB1aW50NjQKdW5zYWZlVmFyaWFibGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA5CgkvLyBBID0gPHVpbnQyNTY+MjUwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZWU2YjI4MAoJZnJhbWVfYnVyeSAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTAKCS8vIEIgPSA8dWludDI1Nj4xMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNlOAoJZnJhbWVfYnVyeSAxIC8vIEI6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIxMgoJLy8gQSA9IEEgLyBCCglmcmFtZV9kaWcgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzZTggLy8gQjogdWludDI1NgoJYi8KCWZyYW1lX2J1cnkgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjE0CgkvLyBjID0gQSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDY0Cgk8PQoKCS8vIEEgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCglmcmFtZV9idXJ5IDIgLy8gYzogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTYKCS8vIHJldHVybiBjOwoJZnJhbWVfZGlnIDIgLy8gYzogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBmb29iYXIodWludDEyOCl1aW50MTI4CiphYmlfcm91dGVfZm9vYmFyOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB4OiB1aW50MTI4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE2Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBmb29iYXIgbXVzdCBiZSBhIHVpbnQxMjgKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZm9vYmFyKHVpbnQxMjgpdWludDEyOAoJY2FsbHN1YiBmb29iYXIKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIGZvb2JhciByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb29iYXIoeDogdWludDEyOCk6IHVpbnQxMjgKZm9vYmFyOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIyMAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB4IC8gKDMwMDAwIGFzIHVpbnQxMjgpCglmcmFtZV9kaWcgLTEgLy8geDogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3NTMwCgliLwoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8geCAvICgzMDAwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMjIKCS8vIHJldHVybiBhdmdTdGFrZTsKCWZyYW1lX2RpZyAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnRGcm9tSGV4KCl1aW50MjU2CiphYmlfcm91dGVfdWludEZyb21IZXg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludEZyb21IZXgoKXVpbnQyNTYKCWNhbGxzdWIgdWludEZyb21IZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHVpbnRGcm9tSGV4IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludEZyb21IZXgoKTogdWludDI1Ngp1aW50RnJvbUhleDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjI2CgkvLyByZXR1cm4gVWludDwyNTY+KCcweEZGJyk7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBmZgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidTY0cGx1cyh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInU2NG11bCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0ZGl2KHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJ1MjU2cGx1cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2ZGl2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1NjRSZXR1cm4yNTYodWludDY0LHVpbnQ2NCl1aW50MjU2IgoJbWV0aG9kICJtYXhVNjQoKXVpbnQ2NCIKCW1ldGhvZCAiZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInZhcmlhYmxlVHlwZUhpbnQodWludDgsdWludDgpdWludDE2IgoJbWV0aG9kICJ1aW50OHBsdXModWludDgsdWludDgpdWludDgiCgltZXRob2QgInVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4IgoJbWV0aG9kICJwbHVzRXF1YWxzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiYm94VGVzdCgpdWludDI1NiIKCW1ldGhvZCAidW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidWludDI1NkNvbXBhcmlzb25UeXBlKHVpbnQyNTYsdWludDI1Nil2b2lkIgoJbWV0aG9kICJzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJzcXVhcmVSb290NjQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wiCgltZXRob2QgInU4VG91NjQoKXVpbnQ2NCIKCW1ldGhvZCAiZnVuY05hbWUodWludDI1Nil2b2lkIgoJbWV0aG9kICJiaWdpbnRQbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgImJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAiYml0d2lzZU5vdCh1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlTm90VTI1Nih1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgIm11bHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImV4cHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdncodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdm1vZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInVuc2FmZVZhcmlhYmxlcygpdWludDY0IgoJbWV0aG9kICJmb29iYXIodWludDEyOCl1aW50MTI4IgoJbWV0aG9kICJ1aW50RnJvbUhleCgpdWludDI1NiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdTY0cGx1cyAqYWJpX3JvdXRlX3U2NG1pbnVzICphYmlfcm91dGVfdTY0bXVsICphYmlfcm91dGVfdTY0ZGl2ICphYmlfcm91dGVfdTI1NnBsdXMgKmFiaV9yb3V0ZV91MjU2bWludXMgKmFiaV9yb3V0ZV91MjU2bXVsICphYmlfcm91dGVfdTI1NmRpdiAqYWJpX3JvdXRlX3U2NFJldHVybjI1NiAqYWJpX3JvdXRlX21heFU2NCAqYWJpX3JvdXRlX2V4cG9uZW50ICphYmlfcm91dGVfdmFyaWFibGVUeXBlSGludCAqYWJpX3JvdXRlX3VpbnQ4cGx1cyAqYWJpX3JvdXRlX3VpbnQ4ZXhwICphYmlfcm91dGVfcGx1c0VxdWFscyAqYWJpX3JvdXRlX3BsdXNFcXVhbHNGcm9tR2xvYmFsICphYmlfcm91dGVfYm94VGVzdCAqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3MgKmFiaV9yb3V0ZV91aW50MjU2Q29tcGFyaXNvblR5cGUgKmFiaV9yb3V0ZV9zcXVhcmVSb290MjU2ICphYmlfcm91dGVfc3F1YXJlUm9vdDY0ICphYmlfcm91dGVfYWRkcmVzc1RvQmlnSW50ICphYmlfcm91dGVfdThUb3U2NCAqYWJpX3JvdXRlX2Z1bmNOYW1lICphYmlfcm91dGVfYmlnaW50UGx1cyAqYWJpX3JvdXRlX2JpdHdpc2VPciAqYWJpX3JvdXRlX2JpdHdpc2VBbmQgKmFiaV9yb3V0ZV9iaXR3aXNlWG9yICphYmlfcm91dGVfYml0d2lzZU9yVTI1NiAqYWJpX3JvdXRlX2JpdHdpc2VBbmRVMjU2ICphYmlfcm91dGVfYml0d2lzZVhvclUyNTYgKmFiaV9yb3V0ZV9iaXR3aXNlTm90ICphYmlfcm91dGVfYml0d2lzZU5vdFUyNTYgKmFiaV9yb3V0ZV9tdWx3ICphYmlfcm91dGVfYWRkdyAqYWJpX3JvdXRlX2V4cHcgKmFiaV9yb3V0ZV9kaXZ3ICphYmlfcm91dGVfZGl2bW9kdyAqYWJpX3JvdXRlX3Vuc2FmZVZhcmlhYmxlcyAqYWJpX3JvdXRlX2Zvb2JhciAqYWJpX3JvdXRlX3VpbnRGcm9tSGV4CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfdTY0cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NHBsdXMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1NjRwbHVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NHBsdXM6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjgKCS8vIHJldHVybiBhICsgYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCXJldHN1YgoKLy8gdTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRtaW51cyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiB1NjRtaW51cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG1pbnVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NG1pbnVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMgoJLy8gcmV0dXJuIGEgLSBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJLQoJcmV0c3ViCgovLyB1NjRtdWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtdWw6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0bXVsKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NG11bAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG11bChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAp1NjRtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjE2CgkvLyByZXR1cm4gYSAqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkqCglyZXRzdWIKCi8vIHU2NGRpdih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3U2NGRpdjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRkaXYodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgdTY0ZGl2CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTY0ZGl2KGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NGRpdjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAKCS8vIHJldHVybiBhIC8gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCS8KCXJldHN1YgoKLy8gdTI1NnBsdXModWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV91MjU2cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1NnBsdXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZwbHVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHUyNTZwbHVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZwbHVzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHUyNTZwbHVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyNAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIrCglyZXRzdWIKCi8vIHUyNTZtaW51cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm1pbnVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciB1MjU2bWludXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtaW51cwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdTI1Nm1pbnVzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1Nm1pbnVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtaW51czoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjgKCS8vIHJldHVybiA8dWludDI1Nj4oYSAtIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJcmV0c3ViCgovLyB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfdTI1Nm11bDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtdWwKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHUyNTZtdWwgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1MjU2bXVsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjMyCgkvLyByZXR1cm4gPHVpbnQyNTY+KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYioKCXJldHN1YgoKLy8gdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZkaXY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1MjU2ZGl2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2ZGl2IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1NmRpdihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1MjU2ZGl2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czozNgoJLy8gcmV0dXJuIDx1aW50MjU2PihhIC8gYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIvCglyZXRzdWIKCi8vIHU2NFJldHVybjI1Nih1aW50NjQsdWludDY0KXVpbnQyNTYKKmFiaV9yb3V0ZV91NjRSZXR1cm4yNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0UmV0dXJuMjU2KHVpbnQ2NCx1aW50NjQpdWludDI1NgoJY2FsbHN1YiB1NjRSZXR1cm4yNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHU2NFJldHVybjI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NFJldHVybjI1NihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQyNTYKdTY0UmV0dXJuMjU2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0MAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglpdG9iCglyZXRzdWIKCi8vIG1heFU2NCgpdWludDY0CiphYmlfcm91dGVfbWF4VTY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1heFU2NCgpdWludDY0CgljYWxsc3ViIG1heFU2NAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG1heFU2NCgpOiB1aW50NjQKbWF4VTY0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0NAoJLy8gcmV0dXJuIFVpbnQ8NjQ+KCcxODQ0Njc0NDA3MzcwOTU1MTYxNScpOwoJaW50IDE4NDQ2NzQ0MDczNzA5NTUxNjE1CglyZXRzdWIKCi8vIGV4cG9uZW50KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfZXhwb25lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgZXhwb25lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHBvbmVudChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHBvbmVudDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NDgKCS8vIHJldHVybiBhICoqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglleHAKCXJldHN1YgoKLy8gdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKKmFiaV9yb3V0ZV92YXJpYWJsZVR5cGVIaW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHkpIGZvciB2YXJpYWJsZVR5cGVIaW50IG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8geDogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdmFyaWFibGVUeXBlSGludCBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKCWNhbGxzdWIgdmFyaWFibGVUeXBlSGludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB2YXJpYWJsZVR5cGVIaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB2YXJpYWJsZVR5cGVIaW50KHg6IHVpbnQ8OD4sIHk6IHVpbnQ8OD4pOiB1aW50MTYKdmFyaWFibGVUeXBlSGludDoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1MgoJLy8geiA9IDx1aW50MTY+KHggKyB5KQoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50PDg+CgkrCglmcmFtZV9idXJ5IDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NTQKCS8vIHJldHVybiB6OwoJZnJhbWVfZGlnIDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyB1aW50OHBsdXModWludDgsdWludDgpdWludDgKKmFiaV9yb3V0ZV91aW50OHBsdXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdWludDhwbHVzKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4cGx1cwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIHVpbnQ4cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50OHBsdXMoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1OAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CgkrCglyZXRzdWIKCi8vIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CiphYmlfcm91dGVfdWludDhleHA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4ZXhwIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDhleHAgbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4ZXhwCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDgKCTw9CgoJLy8gdWludDhleHAgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludDhleHAoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhleHA6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjYyCgkvLyByZXR1cm4gYSAqKiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CglleHAKCXJldHN1YgoKLy8gcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3BsdXNFcXVhbHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcGx1c0VxdWFscyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwbHVzRXF1YWxzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjY2CgkvLyB4ID0gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NjgKCS8vIHggKz0gYgoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8geDogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3MAoJLy8gcmV0dXJuIHg7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGx1c0VxdWFsc0Zyb21HbG9iYWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9wbHVzRXF1YWxzRnJvbUdsb2JhbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzRnJvbUdsb2JhbAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNGcm9tR2xvYmFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnBsdXNFcXVhbHNGcm9tR2xvYmFsOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3NAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gYQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjc2CgkvLyB0aGlzLmdLZXkudmFsdWUgKz0gYgoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3OAoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGJveFRlc3QoKXVpbnQyNTYKKmFiaV9yb3V0ZV9ib3hUZXN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveFRlc3QoKXVpbnQyNTYKCWNhbGxzdWIgYm94VGVzdAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYm94VGVzdCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveFRlc3QoKTogdWludDI1Ngpib3hUZXN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo4NAoJLy8gdGhpcy5ib3hLZXkudmFsdWUgPSA8dWludDI1Nj4xCglieXRlIDB4NjI2Zjc4NGI2NTc5IC8vICJib3hLZXkiCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODUKCS8vIHRoaXMuYm94S2V5LnZhbHVlICs9IDEKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJYnl0ZSAweDYyNmY3ODRiNjU3OSAvLyAiYm94S2V5IgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdGhpcy5ib3hLZXkudmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODcKCS8vIHJldHVybiB0aGlzLmJveEtleS52YWx1ZTsKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCXJldHN1YgoKLy8gZm9vKHg6IHVpbnQyNTYpOiB1aW50MjU2CmZvbzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTEKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCXJldHN1YgoKLy8gdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1bnNhZmVNZXRob2RBcmdzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1bnNhZmVNZXRob2RBcmdzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW5zYWZlTWV0aG9kQXJncyhhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1bnNhZmVNZXRob2RBcmdzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjk1CgkvLyBjID0gYSArIGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYisKCWZyYW1lX2J1cnkgMCAvLyBjOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTcKCS8vIHJldHVybiB0aGlzLmZvbyhjKTsKCWZyYW1lX2RpZyAwIC8vIGM6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBjIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNhbGxzdWIgZm9vCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX3VpbnQyNTZDb21wYXJpc29uVHlwZToKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJpc29uVHlwZSBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDI1NkNvbXBhcmlzb25UeXBlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyaXNvblR5cGUKCWludCAxCglyZXR1cm4KCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZShhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdm9pZAp1aW50MjU2Q29tcGFyaXNvblR5cGU6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTAxCgkvLyBzZW5kZXJCYWxhbmNlQWZ0ZXIgPSBhIC0gYgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJZnJhbWVfYnVyeSAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDIKCS8vIHNlbmRlckJhbGFuY2VBZnRlciA+IDx1aW50MjU2PjAKCWZyYW1lX2RpZyAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliPgoJYnogKmlmMF9lbHNlCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEwMwoJLy8gbG9nKCdub25aZXJvJykKCWJ5dGUgMHg2ZTZmNmU1YTY1NzI2ZiAvLyAibm9uWmVybyIKCWxvZwoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDUKCS8vIGxvZygnemVybycpCglieXRlIDB4N2E2NTcyNmYgLy8gInplcm8iCglsb2cKCippZjBfZW5kOgoJcmV0c3ViCgovLyBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfc3F1YXJlUm9vdDI1NjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHNxdWFyZVJvb3QyNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHNxdWFyZVJvb3QyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290MjU2KGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnNxdWFyZVJvb3QyNTY6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExMAoJLy8gcmV0dXJuIHNxcnQoYSAqIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKgoJYnNxcnQKCXJldHN1YgoKLy8gc3F1YXJlUm9vdDY0KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfc3F1YXJlUm9vdDY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHNxdWFyZVJvb3Q2NCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBzcXVhcmVSb290NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290NjQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKc3F1YXJlUm9vdDY0OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMTQKCS8vIHJldHVybiBzcXJ0KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gYWRkcmVzc1RvQmlnSW50KGFkZHJlc3MpYm9vbAoqYWJpX3JvdXRlX2FkZHJlc3NUb0JpZ0ludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYWRkcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyKSBmb3IgYWRkcmVzc1RvQmlnSW50IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wKCWNhbGxzdWIgYWRkcmVzc1RvQmlnSW50CglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZHJlc3NUb0JpZ0ludChhZGRyOiBBZGRyZXNzKTogYm9vbGVhbgphZGRyZXNzVG9CaWdJbnQ6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExOAoJLy8gcmV0dXJuIGJ0b2JpZ2ludChhZGRyKSA+IGJ0b2JpZ2ludCh0aGlzLnR4bi5zZW5kZXIpOwoJZnJhbWVfZGlnIC0xIC8vIGFkZHI6IEFkZHJlc3MKCXR4biBTZW5kZXIKCWI+CglyZXRzdWIKCi8vIHU4VG91NjQoKXVpbnQ2NAoqYWJpX3JvdXRlX3U4VG91NjQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdThUb3U2NCgpdWludDY0CgljYWxsc3ViIHU4VG91NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1OFRvdTY0KCk6IHVpbnQ2NAp1OFRvdTY0OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEyMgoJLy8geDogdWludDggPSA3CglpbnQgNwoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjMKCS8vIHJldHVybiA8dWludDY0Png7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBwcml2YXRlRnVuY05hbWUoeDogdWludDgsIHk6IHVpbnQ2NCk6IHZvaWQKcHJpdmF0ZUZ1bmNOYW1lOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjcKCS8vIGFzc2VydCg8dWludDg+eSA+IHgpCglmcmFtZV9kaWcgLTIgLy8geTogdWludDY0CglmcmFtZV9kaWcgLTEgLy8geDogdWludDgKCT4KCWFzc2VydAoJcmV0c3ViCgovLyBmdW5jTmFtZSh1aW50MjU2KXZvaWQKKmFiaV9yb3V0ZV9mdW5jTmFtZToKCS8vIHg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeCkgZm9yIGZ1bmNOYW1lIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGZ1bmNOYW1lKHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBmdW5jTmFtZQoJaW50IDEKCXJldHVybgoKLy8gZnVuY05hbWUoeDogdWludDI1Nik6IHZvaWQKZnVuY05hbWU6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzMQoJLy8gdGhpcy5wcml2YXRlRnVuY05hbWUoPHVpbnQ4PngsIDEzMzcpCglpbnQgMTMzNwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyA8dWludDg+eCBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDMxIDEKCWJ0b2kKCWNhbGxzdWIgcHJpdmF0ZUZ1bmNOYW1lCglyZXRzdWIKCi8vIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaWdpbnRQbHVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYmlnaW50UGx1cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpZ2ludFBsdXMoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYmlnaW50UGx1czoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNQoJLy8geCA9IGl0b2IoYSkKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNgoJLy8geSA9IGl0b2IoYikKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNwoJLy8gcmV0dXJuIChidG9iaWdpbnQoeCkgKyBidG9iaWdpbnQoeSkpIGFzIHVpbnQ2NDsKCWZyYW1lX2RpZyAwIC8vIHg6IGJ5dGVbXQoJZnJhbWVfZGlnIDEgLy8geTogYnl0ZVtdCgliKwoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyAoYnRvYmlnaW50KHgpICsgYnRvYmlnaW50KHkpKSBhcyB1aW50NjQgb3ZlcmZsb3dlZCA2NCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJpdHdpc2VPcih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VPcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZU9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYml0d2lzZU9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmJpdHdpc2VPcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQxCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlQW5kOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZUFuZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZUFuZDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ1CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkmCglyZXRzdWIKCi8vIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlWG9yOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZVhvcgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZVhvcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ5CgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgleCglyZXRzdWIKCi8vIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9iaXR3aXNlT3JVMjU2OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKCWNhbGxzdWIgYml0d2lzZU9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU9yVTI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VPclUyNTYoYTogdWludDI1NiwgYjogdWludDI1Nik6IHVpbnQyNTYKYml0d2lzZU9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTUzCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJ8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZUFuZFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VBbmRVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlQW5kVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlQW5kVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlQW5kVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZUFuZFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlQW5kVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlQW5kVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTU3CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWImCglyZXRzdWIKCi8vIGJpdHdpc2VYb3JVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZVhvclUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VYb3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlWG9yVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlWG9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZVhvclUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlWG9yVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlWG9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTYxCgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJeCglyZXRzdWIKCi8vIGJpdHdpc2VOb3QodWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VOb3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYml0d2lzZU5vdCh1aW50NjQpdWludDY0CgljYWxsc3ViIGJpdHdpc2VOb3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90KGE6IHVpbnQ2NCk6IHVpbnQ2NApiaXR3aXNlTm90OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxNjUKCS8vIHJldHVybiB+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCX4KCXJldHN1YgoKLy8gYml0d2lzZU5vdFUyNTYodWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZU5vdFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJpdHdpc2VOb3RVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VOb3RVMjU2KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlTm90VTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU5vdFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90VTI1NihhOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlTm90VTI1NjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTY5CgkvLyByZXR1cm4gfmE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJYn4KCXJldHN1YgoKLy8gbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX211bHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBtdWx3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbXVsdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAptdWx3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTczCgkvLyBwID0gbXVsdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTc3CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2FkZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhZGR3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAphZGR3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTgxCgkvLyBwID0gYWRkdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJYWRkdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg1CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2V4cHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBleHB3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZXhwdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHB3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg5CgkvLyBwID0gZXhwdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZXhwdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTkzCgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdnc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZ3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2dyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZ3OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxOTcKCS8vIHJldHVybiBkaXZ3KDAsIGEsIGIpOwoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWRpdncKCXJldHN1YgoKLy8gZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdm1vZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZtb2R3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2bW9kdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZtb2R3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAxCgkvLyBwID0gZGl2bW9kdygwLCBhLCAwLCBiKQoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkaXZtb2R3CglmcmFtZV9idXJ5IDAgLy8gcCByZW1haW5kZXJMb3c6IHVpbnQ2NAoJZnJhbWVfYnVyeSAxIC8vIHAgcmVtYWluZGVySGlnaDogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gcCBxdW90aWVudExvdzogdWludDY0CglmcmFtZV9idXJ5IDMgLy8gcCBxdW90aWVudEhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA1CgkvLyByZXR1cm4gcDIucXVvdGllbnRMb3c7CglmcmFtZV9kaWcgMiAvLyBwIHF1b3RpZW50TG93OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCi8vIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CiphYmlfcm91dGVfdW5zYWZlVmFyaWFibGVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CgljYWxsc3ViIHVuc2FmZVZhcmlhYmxlcwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVuc2FmZVZhcmlhYmxlcygpOiB1aW50NjQKdW5zYWZlVmFyaWFibGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA5CgkvLyBBID0gPHVpbnQyNTY+MjUwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZWU2YjI4MAoJZnJhbWVfYnVyeSAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTAKCS8vIEIgPSA8dWludDI1Nj4xMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNlOAoJZnJhbWVfYnVyeSAxIC8vIEI6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIxMgoJLy8gQSA9IEEgLyBCCglmcmFtZV9kaWcgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzZTggLy8gQjogdWludDI1NgoJYi8KCWZyYW1lX2J1cnkgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjE0CgkvLyBjID0gQSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDY0Cgk8PQoKCS8vIEEgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCglmcmFtZV9idXJ5IDIgLy8gYzogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTYKCS8vIHJldHVybiBjOwoJZnJhbWVfZGlnIDIgLy8gYzogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBmb29iYXIodWludDEyOCl1aW50MTI4CiphYmlfcm91dGVfZm9vYmFyOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB4OiB1aW50MTI4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE2Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBmb29iYXIgbXVzdCBiZSBhIHVpbnQxMjgKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZm9vYmFyKHVpbnQxMjgpdWludDEyOAoJY2FsbHN1YiBmb29iYXIKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIGZvb2JhciByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb29iYXIoeDogdWludDEyOCk6IHVpbnQxMjgKZm9vYmFyOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIyMAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB4IC8gKDMwMDAwIGFzIHVpbnQxMjgpCglmcmFtZV9kaWcgLTEgLy8geDogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3NTMwCgliLwoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8geCAvICgzMDAwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMjIKCS8vIHJldHVybiBhdmdTdGFrZTsKCWZyYW1lX2RpZyAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnRGcm9tSGV4KCl1aW50MjU2CiphYmlfcm91dGVfdWludEZyb21IZXg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludEZyb21IZXgoKXVpbnQyNTYKCWNhbGxzdWIgdWludEZyb21IZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHVpbnRGcm9tSGV4IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludEZyb21IZXgoKTogdWludDI1Ngp1aW50RnJvbUhleDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjI2CgkvLyByZXR1cm4gVWludDwyNTY+KCcweEZGJyk7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBmZgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidTY0cGx1cyh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInU2NG11bCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0ZGl2KHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJ1MjU2cGx1cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2ZGl2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1NjRSZXR1cm4yNTYodWludDY0LHVpbnQ2NCl1aW50MjU2IgoJbWV0aG9kICJtYXhVNjQoKXVpbnQ2NCIKCW1ldGhvZCAiZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInZhcmlhYmxlVHlwZUhpbnQodWludDgsdWludDgpdWludDE2IgoJbWV0aG9kICJ1aW50OHBsdXModWludDgsdWludDgpdWludDgiCgltZXRob2QgInVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4IgoJbWV0aG9kICJwbHVzRXF1YWxzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiYm94VGVzdCgpdWludDI1NiIKCW1ldGhvZCAidW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidWludDI1NkNvbXBhcmlzb25UeXBlKHVpbnQyNTYsdWludDI1Nil2b2lkIgoJbWV0aG9kICJzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJzcXVhcmVSb290NjQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wiCgltZXRob2QgInU4VG91NjQoKXVpbnQ2NCIKCW1ldGhvZCAiZnVuY05hbWUodWludDI1Nil2b2lkIgoJbWV0aG9kICJiaWdpbnRQbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgImJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAiYml0d2lzZU5vdCh1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlTm90VTI1Nih1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgIm11bHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImV4cHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdncodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdm1vZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInVuc2FmZVZhcmlhYmxlcygpdWludDY0IgoJbWV0aG9kICJmb29iYXIodWludDEyOCl1aW50MTI4IgoJbWV0aG9kICJ1aW50RnJvbUhleCgpdWludDI1NiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdTY0cGx1cyAqYWJpX3JvdXRlX3U2NG1pbnVzICphYmlfcm91dGVfdTY0bXVsICphYmlfcm91dGVfdTY0ZGl2ICphYmlfcm91dGVfdTI1NnBsdXMgKmFiaV9yb3V0ZV91MjU2bWludXMgKmFiaV9yb3V0ZV91MjU2bXVsICphYmlfcm91dGVfdTI1NmRpdiAqYWJpX3JvdXRlX3U2NFJldHVybjI1NiAqYWJpX3JvdXRlX21heFU2NCAqYWJpX3JvdXRlX2V4cG9uZW50ICphYmlfcm91dGVfdmFyaWFibGVUeXBlSGludCAqYWJpX3JvdXRlX3VpbnQ4cGx1cyAqYWJpX3JvdXRlX3VpbnQ4ZXhwICphYmlfcm91dGVfcGx1c0VxdWFscyAqYWJpX3JvdXRlX3BsdXNFcXVhbHNGcm9tR2xvYmFsICphYmlfcm91dGVfYm94VGVzdCAqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3MgKmFiaV9yb3V0ZV91aW50MjU2Q29tcGFyaXNvblR5cGUgKmFiaV9yb3V0ZV9zcXVhcmVSb290MjU2ICphYmlfcm91dGVfc3F1YXJlUm9vdDY0ICphYmlfcm91dGVfYWRkcmVzc1RvQmlnSW50ICphYmlfcm91dGVfdThUb3U2NCAqYWJpX3JvdXRlX2Z1bmNOYW1lICphYmlfcm91dGVfYmlnaW50UGx1cyAqYWJpX3JvdXRlX2JpdHdpc2VPciAqYWJpX3JvdXRlX2JpdHdpc2VBbmQgKmFiaV9yb3V0ZV9iaXR3aXNlWG9yICphYmlfcm91dGVfYml0d2lzZU9yVTI1NiAqYWJpX3JvdXRlX2JpdHdpc2VBbmRVMjU2ICphYmlfcm91dGVfYml0d2lzZVhvclUyNTYgKmFiaV9yb3V0ZV9iaXR3aXNlTm90ICphYmlfcm91dGVfYml0d2lzZU5vdFUyNTYgKmFiaV9yb3V0ZV9tdWx3ICphYmlfcm91dGVfYWRkdyAqYWJpX3JvdXRlX2V4cHcgKmFiaV9yb3V0ZV9kaXZ3ICphYmlfcm91dGVfZGl2bW9kdyAqYWJpX3JvdXRlX3Vuc2FmZVZhcmlhYmxlcyAqYWJpX3JvdXRlX2Zvb2JhciAqYWJpX3JvdXRlX3VpbnRGcm9tSGV4CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/MathTest.arc56_draft.json b/tests/contracts/artifacts/MathTest.arc56_draft.json index d4456ddb1..a58ae2b61 100644 --- a/tests/contracts/artifacts/MathTest.arc56_draft.json +++ b/tests/contracts/artifacts/MathTest.arc56_draft.json @@ -896,9555 +896,9558 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 158, - 159 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 160 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 161, - 162 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 163 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 164, - 165 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 166 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 193 - ] - }, - { - "teal": 28, - "source": 7, - "pc": [ - 194 - ] - }, - { - "teal": 31, - "source": 7, - "pc": [ - 195, - 196, - 197 - ] - }, - { - "teal": 32, - "source": 7, - "pc": [ - 198 - ] - }, - { - "teal": 35, - "source": 7, - "pc": [ - 199, - 200, - 201 - ] - }, - { - "teal": 36, - "source": 7, - "pc": [ - 202 - ] - }, - { - "teal": 39, - "source": 7, - "pc": [ - 203, - 204, - 205 - ] - }, - { - "teal": 40, - "source": 7, - "pc": [ - 206 - ] - }, - { - "teal": 41, - "source": 7, - "pc": [ - 207 - ] - }, - { - "teal": 42, - "source": 7, - "pc": [ - 208 - ] - }, - { - "teal": 43, - "source": 7, - "pc": [ - 209 - ] - }, - { - "teal": 44, - "source": 7, - "pc": [ - 210 - ] - }, - { - "teal": 48, - "source": 7, - "pc": [ - 211, - 212, - 213 - ] - }, - { - "teal": 52, - "source": 8, - "pc": [ - 214, - 215 - ] - }, - { - "teal": 53, - "source": 8, - "pc": [ - 216, - 217 - ] - }, - { - "teal": 54, - "source": 8, - "pc": [ - 218 - ] - }, - { - "teal": 55, - "source": 7, - "pc": [ - 219 - ] - }, - { - "teal": 60, - "source": 11, - "pc": [ - 220 - ] - }, - { - "teal": 63, - "source": 11, - "pc": [ - 221, - 222, - 223 - ] - }, - { - "teal": 64, - "source": 11, - "pc": [ - 224 - ] - }, - { - "teal": 67, - "source": 11, - "pc": [ - 225, - 226, - 227 - ] - }, - { - "teal": 68, - "source": 11, - "pc": [ - 228 - ] - }, - { - "teal": 71, - "source": 11, - "pc": [ - 229, - 230, - 231 - ] - }, - { - "teal": 72, - "source": 11, - "pc": [ - 232 - ] - }, - { - "teal": 73, - "source": 11, - "pc": [ - 233 - ] - }, - { - "teal": 74, - "source": 11, - "pc": [ - 234 - ] - }, - { - "teal": 75, - "source": 11, - "pc": [ - 235 - ] - }, - { - "teal": 76, - "source": 11, - "pc": [ - 236 - ] - }, - { - "teal": 80, - "source": 11, - "pc": [ - 237, - 238, - 239 - ] - }, - { - "teal": 84, - "source": 12, - "pc": [ - 240, - 241 - ] - }, - { - "teal": 85, - "source": 12, - "pc": [ - 242, - 243 - ] - }, - { - "teal": 86, - "source": 12, - "pc": [ - 244 - ] - }, - { - "teal": 87, - "source": 11, - "pc": [ - 245 - ] - }, - { - "teal": 92, - "source": 15, - "pc": [ - 246 - ] - }, - { - "teal": 95, - "source": 15, - "pc": [ - 247, - 248, - 249 - ] - }, - { - "teal": 96, - "source": 15, - "pc": [ - 250 - ] - }, - { - "teal": 99, - "source": 15, - "pc": [ - 251, - 252, - 253 - ] - }, - { - "teal": 100, - "source": 15, - "pc": [ - 254 - ] - }, - { - "teal": 103, - "source": 15, - "pc": [ - 255, - 256, - 257 - ] - }, - { - "teal": 104, - "source": 15, - "pc": [ - 258 - ] - }, - { - "teal": 105, - "source": 15, - "pc": [ - 259 - ] - }, - { - "teal": 106, - "source": 15, - "pc": [ - 260 - ] - }, - { - "teal": 107, - "source": 15, - "pc": [ - 261 - ] - }, - { - "teal": 108, - "source": 15, - "pc": [ - 262 - ] - }, - { - "teal": 112, - "source": 15, - "pc": [ - 263, - 264, - 265 - ] - }, - { - "teal": 116, - "source": 16, - "pc": [ - 266, - 267 - ] - }, - { - "teal": 117, - "source": 16, - "pc": [ - 268, - 269 - ] - }, - { - "teal": 118, - "source": 16, - "pc": [ - 270 - ] - }, - { - "teal": 119, - "source": 15, - "pc": [ - 271 - ] - }, - { - "teal": 124, - "source": 19, - "pc": [ - 272 - ] - }, - { - "teal": 127, - "source": 19, - "pc": [ - 273, - 274, - 275 - ] - }, - { - "teal": 128, - "source": 19, - "pc": [ - 276 - ] - }, - { - "teal": 131, - "source": 19, - "pc": [ - 277, - 278, - 279 - ] - }, - { - "teal": 132, - "source": 19, - "pc": [ - 280 - ] - }, - { - "teal": 135, - "source": 19, - "pc": [ - 281, - 282, - 283 - ] - }, - { - "teal": 136, - "source": 19, - "pc": [ - 284 - ] - }, - { - "teal": 137, - "source": 19, - "pc": [ - 285 - ] - }, - { - "teal": 138, - "source": 19, - "pc": [ - 286 - ] - }, - { - "teal": 139, - "source": 19, - "pc": [ - 287 - ] - }, - { - "teal": 140, - "source": 19, - "pc": [ - 288 - ] - }, - { - "teal": 144, - "source": 19, - "pc": [ - 289, - 290, - 291 - ] - }, - { - "teal": 148, - "source": 20, - "pc": [ - 292, - 293 - ] - }, - { - "teal": 149, - "source": 20, - "pc": [ - 294, - 295 - ] - }, - { - "teal": 150, - "source": 20, - "pc": [ - 296 - ] - }, - { - "teal": 151, - "source": 19, - "pc": [ - 297 - ] - }, - { - "teal": 156, - "source": 23, - "pc": [ - 298 - ] - }, - { - "teal": 159, - "source": 23, - "pc": [ - 299, - 300, - 301 - ] - }, - { - "teal": 160, - "source": 23, - "pc": [ - 302 - ] - }, - { - "teal": 161, - "source": 23, - "pc": [ - 303 - ] - }, - { - "teal": 162, - "source": 23, - "pc": [ - 304 - ] - }, - { - "teal": 163, - "source": 23, - "pc": [ - 305 - ] - }, - { - "teal": 166, - "source": 23, - "errorMessage": "argument 0 (b) for u256plus must be a uint256", - "pc": [ - 306 - ] - }, - { - "teal": 169, - "source": 23, - "pc": [ - 307, - 308, - 309 - ] - }, - { - "teal": 170, - "source": 23, - "pc": [ - 310 - ] - }, - { - "teal": 171, - "source": 23, - "pc": [ - 311 - ] - }, - { - "teal": 172, - "source": 23, - "pc": [ - 312 - ] - }, - { - "teal": 173, - "source": 23, - "pc": [ - 313 - ] - }, - { - "teal": 176, - "source": 23, - "errorMessage": "argument 1 (a) for u256plus must be a uint256", - "pc": [ - 314 - ] - }, - { - "teal": 179, - "source": 23, - "pc": [ - 315, - 316, - 317 - ] - }, - { - "teal": 180, - "source": 23, - "pc": [ - 318 - ] - }, - { - "teal": 181, - "source": 23, - "pc": [ - 319 - ] - }, - { - "teal": 182, - "source": 23, - "pc": [ - 320 - ] - }, - { - "teal": 183, - "source": 23, - "pc": [ - 321 - ] - }, - { - "teal": 186, - "source": 23, - "errorMessage": "u256plus return value overflowed 256 bits", - "pc": [ - 322 - ] - }, - { - "teal": 187, - "source": 23, - "pc": [ - 323 - ] - }, - { - "teal": 188, - "source": 23, - "pc": [ - 324 - ] - }, - { - "teal": 189, - "source": 23, - "pc": [ - 325 - ] - }, - { - "teal": 190, - "source": 23, - "pc": [ - 326 - ] - }, - { - "teal": 191, - "source": 23, - "pc": [ - 327 - ] - }, - { - "teal": 192, - "source": 23, - "pc": [ - 328 - ] - }, - { - "teal": 193, - "source": 23, - "pc": [ - 329 - ] - }, - { - "teal": 194, - "source": 23, - "pc": [ - 330 - ] - }, - { - "teal": 195, - "source": 23, - "pc": [ - 331 - ] - }, - { - "teal": 196, - "source": 23, - "pc": [ - 332 - ] - }, - { - "teal": 197, - "source": 23, - "pc": [ - 333 - ] - }, - { - "teal": 198, - "source": 23, - "pc": [ - 334 - ] - }, - { - "teal": 199, - "source": 23, - "pc": [ - 335 - ] - }, - { - "teal": 203, - "source": 23, - "pc": [ - 336, - 337, - 338 - ] - }, - { - "teal": 207, - "source": 24, - "pc": [ - 339, - 340 - ] - }, - { - "teal": 208, - "source": 24, - "pc": [ - 341, - 342 - ] - }, - { - "teal": 209, - "source": 24, - "pc": [ - 343 - ] - }, - { - "teal": 210, - "source": 23, - "pc": [ - 344 - ] - }, - { - "teal": 215, - "source": 27, - "pc": [ - 345 - ] - }, - { - "teal": 218, - "source": 27, - "pc": [ - 346, - 347, - 348 - ] - }, - { - "teal": 219, - "source": 27, - "pc": [ - 349 - ] - }, - { - "teal": 220, - "source": 27, - "pc": [ - 350 - ] - }, - { - "teal": 221, - "source": 27, - "pc": [ - 351 - ] - }, - { - "teal": 222, - "source": 27, - "pc": [ - 352 - ] - }, - { - "teal": 225, - "source": 27, - "errorMessage": "argument 0 (b) for u256minus must be a uint256", - "pc": [ - 353 - ] - }, - { - "teal": 228, - "source": 27, - "pc": [ - 354, - 355, - 356 - ] - }, - { - "teal": 229, - "source": 27, - "pc": [ - 357 - ] - }, - { - "teal": 230, - "source": 27, - "pc": [ - 358 - ] - }, - { - "teal": 231, - "source": 27, - "pc": [ - 359 - ] - }, - { - "teal": 232, - "source": 27, - "pc": [ - 360 - ] - }, - { - "teal": 235, - "source": 27, - "errorMessage": "argument 1 (a) for u256minus must be a uint256", - "pc": [ - 361 - ] - }, - { - "teal": 238, - "source": 27, - "pc": [ - 362, - 363, - 364 - ] - }, - { - "teal": 239, - "source": 27, - "pc": [ - 365 - ] - }, - { - "teal": 240, - "source": 27, - "pc": [ - 366 - ] - }, - { - "teal": 241, - "source": 27, - "pc": [ - 367 - ] - }, - { - "teal": 242, - "source": 27, - "pc": [ - 368 - ] - }, - { - "teal": 245, - "source": 27, - "errorMessage": "u256minus return value overflowed 256 bits", - "pc": [ - 369 - ] - }, - { - "teal": 246, - "source": 27, - "pc": [ - 370 - ] - }, - { - "teal": 247, - "source": 27, - "pc": [ - 371 - ] - }, - { - "teal": 248, - "source": 27, - "pc": [ - 372 - ] - }, - { - "teal": 249, - "source": 27, - "pc": [ - 373 - ] - }, - { - "teal": 250, - "source": 27, - "pc": [ - 374 - ] - }, - { - "teal": 251, - "source": 27, - "pc": [ - 375 - ] - }, - { - "teal": 252, - "source": 27, - "pc": [ - 376 - ] - }, - { - "teal": 253, - "source": 27, - "pc": [ - 377 - ] - }, - { - "teal": 254, - "source": 27, - "pc": [ - 378 - ] - }, - { - "teal": 255, - "source": 27, - "pc": [ - 379 - ] - }, - { - "teal": 256, - "source": 27, - "pc": [ - 380 - ] - }, - { - "teal": 257, - "source": 27, - "pc": [ - 381 - ] - }, - { - "teal": 258, - "source": 27, - "pc": [ - 382 - ] - }, - { - "teal": 262, - "source": 27, - "pc": [ - 383, - 384, - 385 - ] - }, - { - "teal": 266, - "source": 28, - "pc": [ - 386, - 387 - ] - }, - { - "teal": 267, - "source": 28, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 268, - "source": 28, - "pc": [ - 390 - ] - }, - { - "teal": 269, - "source": 27, - "pc": [ - 391 - ] - }, - { - "teal": 274, - "source": 31, - "pc": [ - 392 - ] - }, - { - "teal": 277, - "source": 31, - "pc": [ - 393, - 394, - 395 - ] - }, - { - "teal": 278, - "source": 31, - "pc": [ - 396 - ] - }, - { - "teal": 279, - "source": 31, - "pc": [ - 397 - ] - }, - { - "teal": 280, - "source": 31, - "pc": [ - 398 - ] - }, - { - "teal": 281, - "source": 31, - "pc": [ - 399 - ] - }, - { - "teal": 284, - "source": 31, - "errorMessage": "argument 0 (b) for u256mul must be a uint256", - "pc": [ - 400 - ] - }, - { - "teal": 287, - "source": 31, - "pc": [ - 401, - 402, - 403 - ] - }, - { - "teal": 288, - "source": 31, - "pc": [ - 404 - ] - }, - { - "teal": 289, - "source": 31, - "pc": [ - 405 - ] - }, - { - "teal": 290, - "source": 31, - "pc": [ - 406 - ] - }, - { - "teal": 291, - "source": 31, - "pc": [ - 407 - ] - }, - { - "teal": 294, - "source": 31, - "errorMessage": "argument 1 (a) for u256mul must be a uint256", - "pc": [ - 408 - ] - }, - { - "teal": 297, - "source": 31, - "pc": [ - 409, - 410, - 411 - ] - }, - { - "teal": 298, - "source": 31, - "pc": [ - 412 - ] - }, - { - "teal": 299, - "source": 31, - "pc": [ - 413 - ] - }, - { - "teal": 300, - "source": 31, - "pc": [ - 414 - ] - }, - { - "teal": 301, - "source": 31, - "pc": [ - 415 - ] - }, - { - "teal": 304, - "source": 31, - "errorMessage": "u256mul return value overflowed 256 bits", - "pc": [ - 416 - ] - }, - { - "teal": 305, - "source": 31, - "pc": [ - 417 - ] - }, - { - "teal": 306, - "source": 31, - "pc": [ - 418 - ] - }, - { - "teal": 307, - "source": 31, - "pc": [ - 419 - ] - }, - { - "teal": 308, - "source": 31, - "pc": [ - 420 - ] - }, - { - "teal": 309, - "source": 31, - "pc": [ - 421 - ] - }, - { - "teal": 310, - "source": 31, - "pc": [ - 422 - ] - }, - { - "teal": 311, - "source": 31, - "pc": [ - 423 - ] - }, - { - "teal": 312, - "source": 31, - "pc": [ - 424 - ] - }, - { - "teal": 313, - "source": 31, - "pc": [ - 425 - ] - }, - { - "teal": 314, - "source": 31, - "pc": [ - 426 - ] - }, - { - "teal": 315, - "source": 31, - "pc": [ - 427 - ] - }, - { - "teal": 316, - "source": 31, - "pc": [ - 428 - ] - }, - { - "teal": 317, - "source": 31, - "pc": [ - 429 - ] - }, - { - "teal": 321, - "source": 31, - "pc": [ - 430, - 431, - 432 - ] - }, - { - "teal": 325, - "source": 32, - "pc": [ - 433, - 434 - ] - }, - { - "teal": 326, - "source": 32, - "pc": [ - 435, - 436 - ] - }, - { - "teal": 327, - "source": 32, - "pc": [ - 437 - ] - }, - { - "teal": 328, - "source": 31, - "pc": [ - 438 - ] - }, - { - "teal": 333, - "source": 35, - "pc": [ - 439 - ] - }, - { - "teal": 336, - "source": 35, - "pc": [ - 440, - 441, - 442 - ] - }, - { - "teal": 337, - "source": 35, - "pc": [ - 443 - ] - }, - { - "teal": 338, - "source": 35, - "pc": [ - 444 - ] - }, - { - "teal": 339, - "source": 35, - "pc": [ - 445 - ] - }, - { - "teal": 340, - "source": 35, - "pc": [ - 446 - ] - }, - { - "teal": 343, - "source": 35, - "errorMessage": "argument 0 (b) for u256div must be a uint256", - "pc": [ - 447 - ] - }, - { - "teal": 346, - "source": 35, - "pc": [ - 448, - 449, - 450 - ] - }, - { - "teal": 347, - "source": 35, - "pc": [ - 451 - ] - }, - { - "teal": 348, - "source": 35, - "pc": [ - 452 - ] - }, - { - "teal": 349, - "source": 35, - "pc": [ - 453 - ] - }, - { - "teal": 350, - "source": 35, - "pc": [ - 454 - ] - }, - { - "teal": 353, - "source": 35, - "errorMessage": "argument 1 (a) for u256div must be a uint256", - "pc": [ - 455 - ] - }, - { - "teal": 356, - "source": 35, - "pc": [ - 456, - 457, - 458 - ] - }, - { - "teal": 357, - "source": 35, - "pc": [ - 459 - ] - }, - { - "teal": 358, - "source": 35, - "pc": [ - 460 - ] - }, - { - "teal": 359, - "source": 35, - "pc": [ - 461 - ] - }, - { - "teal": 360, - "source": 35, - "pc": [ - 462 - ] - }, - { - "teal": 363, - "source": 35, - "errorMessage": "u256div return value overflowed 256 bits", - "pc": [ - 463 - ] - }, - { - "teal": 364, - "source": 35, - "pc": [ - 464 - ] - }, - { - "teal": 365, - "source": 35, - "pc": [ - 465 - ] - }, - { - "teal": 366, - "source": 35, - "pc": [ - 466 - ] - }, - { - "teal": 367, - "source": 35, - "pc": [ - 467 - ] - }, - { - "teal": 368, - "source": 35, - "pc": [ - 468 - ] - }, - { - "teal": 369, - "source": 35, - "pc": [ - 469 - ] - }, - { - "teal": 370, - "source": 35, - "pc": [ - 470 - ] - }, - { - "teal": 371, - "source": 35, - "pc": [ - 471 - ] - }, - { - "teal": 372, - "source": 35, - "pc": [ - 472 - ] - }, - { - "teal": 373, - "source": 35, - "pc": [ - 473 - ] - }, - { - "teal": 374, - "source": 35, - "pc": [ - 474 - ] - }, - { - "teal": 375, - "source": 35, - "pc": [ - 475 - ] - }, - { - "teal": 376, - "source": 35, - "pc": [ - 476 - ] - }, - { - "teal": 380, - "source": 35, - "pc": [ - 477, - 478, - 479 - ] - }, - { - "teal": 384, - "source": 36, - "pc": [ - 480, - 481 - ] - }, - { - "teal": 385, - "source": 36, - "pc": [ - 482, - 483 - ] - }, - { - "teal": 386, - "source": 36, - "pc": [ - 484 - ] - }, - { - "teal": 387, - "source": 35, - "pc": [ - 485 - ] - }, - { - "teal": 392, - "source": 39, - "pc": [ - 486 - ] - }, - { - "teal": 395, - "source": 39, - "pc": [ - 487, - 488, - 489 - ] - }, - { - "teal": 396, - "source": 39, - "pc": [ - 490 - ] - }, - { - "teal": 399, - "source": 39, - "pc": [ - 491, - 492, - 493 - ] - }, - { - "teal": 400, - "source": 39, - "pc": [ - 494 - ] - }, - { - "teal": 403, - "source": 39, - "pc": [ - 495, - 496, - 497 - ] - }, - { - "teal": 404, - "source": 39, - "pc": [ - 498 - ] - }, - { - "teal": 405, - "source": 39, - "pc": [ - 499 - ] - }, - { - "teal": 406, - "source": 39, - "pc": [ - 500 - ] - }, - { - "teal": 407, - "source": 39, - "pc": [ - 501 - ] - }, - { - "teal": 410, - "source": 39, - "errorMessage": "u64Return256 return value overflowed 256 bits", - "pc": [ - 502 - ] - }, - { - "teal": 411, - "source": 39, - "pc": [ - 503 - ] - }, - { - "teal": 412, - "source": 39, - "pc": [ - 504 - ] - }, - { - "teal": 413, - "source": 39, - "pc": [ - 505 - ] - }, - { - "teal": 414, - "source": 39, - "pc": [ - 506 - ] - }, - { - "teal": 415, - "source": 39, - "pc": [ - 507 - ] - }, - { - "teal": 416, - "source": 39, - "pc": [ - 508 - ] - }, - { - "teal": 417, - "source": 39, - "pc": [ - 509 - ] - }, - { - "teal": 418, - "source": 39, - "pc": [ - 510 - ] - }, - { - "teal": 419, - "source": 39, - "pc": [ - 511 - ] - }, - { - "teal": 420, - "source": 39, - "pc": [ - 512 - ] - }, - { - "teal": 421, - "source": 39, - "pc": [ - 513 - ] - }, - { - "teal": 422, - "source": 39, - "pc": [ - 514 - ] - }, - { - "teal": 423, - "source": 39, - "pc": [ - 515 - ] - }, - { - "teal": 427, - "source": 39, - "pc": [ - 516, - 517, - 518 - ] - }, - { - "teal": 431, - "source": 40, - "pc": [ - 519, - 520 - ] - }, - { - "teal": 432, - "source": 40, - "pc": [ - 521, - 522 - ] - }, - { - "teal": 433, - "source": 40, - "pc": [ - 523 - ] - }, - { - "teal": 434, - "source": 40, - "pc": [ - 524 - ] - }, - { - "teal": 435, - "source": 39, - "pc": [ - 525 - ] - }, - { - "teal": 440, - "source": 43, - "pc": [ - 526 - ] - }, - { - "teal": 443, - "source": 43, - "pc": [ - 527, - 528, - 529 - ] - }, - { - "teal": 444, - "source": 43, - "pc": [ - 530 - ] - }, - { - "teal": 445, - "source": 43, - "pc": [ - 531 - ] - }, - { - "teal": 446, - "source": 43, - "pc": [ - 532 - ] - }, - { - "teal": 447, - "source": 43, - "pc": [ - 533 - ] - }, - { - "teal": 448, - "source": 43, - "pc": [ - 534 - ] - }, - { - "teal": 452, - "source": 43, - "pc": [ - 535, - 536, - 537 - ] - }, - { - "teal": 456, - "source": 44, - "pc": [ - 538, - 539, - 540, - 541, - 542, - 543, - 544, - 545, - 546, - 547, - 548 - ] - }, - { - "teal": 457, - "source": 43, - "pc": [ - 549 - ] - }, - { - "teal": 462, - "source": 47, - "pc": [ - 550 - ] - }, - { - "teal": 465, - "source": 47, - "pc": [ - 551, - 552, - 553 - ] - }, - { - "teal": 466, - "source": 47, - "pc": [ - 554 - ] - }, - { - "teal": 469, - "source": 47, - "pc": [ - 555, - 556, - 557 - ] - }, - { - "teal": 470, - "source": 47, - "pc": [ - 558 - ] - }, - { - "teal": 473, - "source": 47, - "pc": [ - 559, - 560, - 561 - ] - }, - { - "teal": 474, - "source": 47, - "pc": [ - 562 - ] - }, - { - "teal": 475, - "source": 47, - "pc": [ - 563 - ] - }, - { - "teal": 476, - "source": 47, - "pc": [ - 564 - ] - }, - { - "teal": 477, - "source": 47, - "pc": [ - 565 - ] - }, - { - "teal": 478, - "source": 47, - "pc": [ - 566 - ] - }, - { - "teal": 482, - "source": 47, - "pc": [ - 567, - 568, - 569 - ] - }, - { - "teal": 486, - "source": 48, - "pc": [ - 570, - 571 - ] - }, - { - "teal": 487, - "source": 48, - "pc": [ - 572, - 573 - ] - }, - { - "teal": 488, - "source": 48, - "pc": [ - 574 - ] - }, - { - "teal": 489, - "source": 47, - "pc": [ - 575 - ] - }, - { - "teal": 494, - "source": 51, - "pc": [ - 576 - ] - }, - { - "teal": 497, - "source": 51, - "pc": [ - 577, - 578, - 579 - ] - }, - { - "teal": 498, - "source": 51, - "pc": [ - 580 - ] - }, - { - "teal": 499, - "source": 51, - "pc": [ - 581 - ] - }, - { - "teal": 500, - "source": 51, - "pc": [ - 582 - ] - }, - { - "teal": 501, - "source": 51, - "pc": [ - 583 - ] - }, - { - "teal": 504, - "source": 51, - "errorMessage": "argument 0 (y) for variableTypeHint must be a uint8", - "pc": [ - 584 - ] - }, - { - "teal": 505, - "source": 51, - "pc": [ - 585 - ] - }, - { - "teal": 508, - "source": 51, - "pc": [ - 586, - 587, - 588 - ] - }, - { - "teal": 509, - "source": 51, - "pc": [ - 589 - ] - }, - { - "teal": 510, - "source": 51, - "pc": [ - 590 - ] - }, - { - "teal": 511, - "source": 51, - "pc": [ - 591 - ] - }, - { - "teal": 512, - "source": 51, - "pc": [ - 592 - ] - }, - { - "teal": 515, - "source": 51, - "errorMessage": "argument 1 (x) for variableTypeHint must be a uint8", - "pc": [ - 593 - ] - }, - { - "teal": 516, - "source": 51, - "pc": [ - 594 - ] - }, - { - "teal": 519, - "source": 51, - "pc": [ - 595, - 596, - 597 - ] - }, - { - "teal": 520, - "source": 51, - "pc": [ - 598 - ] - }, - { - "teal": 521, - "source": 51, - "pc": [ - 599 - ] - }, - { - "teal": 522, - "source": 51, - "pc": [ - 600 - ] - }, - { - "teal": 523, - "source": 51, - "pc": [ - 601, - 602 - ] - }, - { - "teal": 524, - "source": 51, - "pc": [ - 603 - ] - }, - { - "teal": 527, - "source": 51, - "errorMessage": "variableTypeHint return value overflowed 16 bits", - "pc": [ - 604 - ] - }, - { - "teal": 528, - "source": 51, - "pc": [ - 605, - 606, - 607 - ] - }, - { - "teal": 529, - "source": 51, - "pc": [ - 608 - ] - }, - { - "teal": 530, - "source": 51, - "pc": [ - 609 - ] - }, - { - "teal": 531, - "source": 51, - "pc": [ - 610 - ] - }, - { - "teal": 532, - "source": 51, - "pc": [ - 611 - ] - }, - { - "teal": 536, - "source": 51, - "pc": [ - 612, - 613, - 614 - ] - }, - { - "teal": 539, - "source": 51, - "pc": [ - 615 - ] - }, - { - "teal": 543, - "source": 52, - "pc": [ - 616, - 617 - ] - }, - { - "teal": 544, - "source": 52, - "pc": [ - 618, - 619 - ] - }, - { - "teal": 545, - "source": 52, - "pc": [ - 620 - ] - }, - { - "teal": 546, - "source": 52, - "pc": [ - 621, - 622 - ] - }, - { - "teal": 550, - "source": 54, - "pc": [ - 623, - 624 - ] - }, - { - "teal": 553, - "source": 51, - "pc": [ - 625, - 626 - ] - }, - { - "teal": 554, - "source": 51, - "pc": [ - 627 - ] - }, - { - "teal": 559, - "source": 57, - "pc": [ - 628 - ] - }, - { - "teal": 562, - "source": 57, - "pc": [ - 629, - 630, - 631 - ] - }, - { - "teal": 563, - "source": 57, - "pc": [ - 632 - ] - }, - { - "teal": 564, - "source": 57, - "pc": [ - 633 - ] - }, - { - "teal": 565, - "source": 57, - "pc": [ - 634 - ] - }, - { - "teal": 566, - "source": 57, - "pc": [ - 635 - ] - }, - { - "teal": 569, - "source": 57, - "errorMessage": "argument 0 (b) for uint8plus must be a uint8", - "pc": [ - 636 - ] - }, - { - "teal": 570, - "source": 57, - "pc": [ - 637 - ] - }, - { - "teal": 573, - "source": 57, - "pc": [ - 638, - 639, - 640 - ] - }, - { - "teal": 574, - "source": 57, - "pc": [ - 641 - ] - }, - { - "teal": 575, - "source": 57, - "pc": [ - 642 - ] - }, - { - "teal": 576, - "source": 57, - "pc": [ - 643 - ] - }, - { - "teal": 577, - "source": 57, - "pc": [ - 644 - ] - }, - { - "teal": 580, - "source": 57, - "errorMessage": "argument 1 (a) for uint8plus must be a uint8", - "pc": [ - 645 - ] - }, - { - "teal": 581, - "source": 57, - "pc": [ - 646 - ] - }, - { - "teal": 584, - "source": 57, - "pc": [ - 647, - 648, - 649 - ] - }, - { - "teal": 585, - "source": 57, - "pc": [ - 650 - ] - }, - { - "teal": 586, - "source": 57, - "pc": [ - 651 - ] - }, - { - "teal": 587, - "source": 57, - "pc": [ - 652 - ] - }, - { - "teal": 588, - "source": 57, - "pc": [ - 653 - ] - }, - { - "teal": 589, - "source": 57, - "pc": [ - 654 - ] - }, - { - "teal": 592, - "source": 57, - "errorMessage": "uint8plus return value overflowed 8 bits", - "pc": [ - 655 - ] - }, - { - "teal": 593, - "source": 57, - "pc": [ - 656, - 657, - 658 - ] - }, - { - "teal": 594, - "source": 57, - "pc": [ - 659 - ] - }, - { - "teal": 595, - "source": 57, - "pc": [ - 660 - ] - }, - { - "teal": 596, - "source": 57, - "pc": [ - 661 - ] - }, - { - "teal": 597, - "source": 57, - "pc": [ - 662 - ] - }, - { - "teal": 601, - "source": 57, - "pc": [ - 663, - 664, - 665 - ] - }, - { - "teal": 605, - "source": 58, - "pc": [ - 666, - 667 - ] - }, - { - "teal": 606, - "source": 58, - "pc": [ - 668, - 669 - ] - }, - { - "teal": 607, - "source": 58, - "pc": [ - 670 - ] - }, - { - "teal": 608, - "source": 57, - "pc": [ - 671 - ] - }, - { - "teal": 613, - "source": 61, - "pc": [ - 672 - ] - }, - { - "teal": 616, - "source": 61, - "pc": [ - 673, - 674, - 675 - ] - }, - { - "teal": 617, - "source": 61, - "pc": [ - 676 - ] - }, - { - "teal": 618, - "source": 61, - "pc": [ - 677 - ] - }, - { - "teal": 619, - "source": 61, - "pc": [ - 678 - ] - }, - { - "teal": 620, - "source": 61, - "pc": [ - 679 - ] - }, - { - "teal": 623, - "source": 61, - "errorMessage": "argument 0 (b) for uint8exp must be a uint8", - "pc": [ - 680 - ] - }, - { - "teal": 624, - "source": 61, - "pc": [ - 681 - ] - }, - { - "teal": 627, - "source": 61, - "pc": [ - 682, - 683, - 684 - ] - }, - { - "teal": 628, - "source": 61, - "pc": [ - 685 - ] - }, - { - "teal": 629, - "source": 61, - "pc": [ - 686 - ] - }, - { - "teal": 630, - "source": 61, - "pc": [ - 687 - ] - }, - { - "teal": 631, - "source": 61, - "pc": [ - 688 - ] - }, - { - "teal": 634, - "source": 61, - "errorMessage": "argument 1 (a) for uint8exp must be a uint8", - "pc": [ - 689 - ] - }, - { - "teal": 635, - "source": 61, - "pc": [ - 690 - ] - }, - { - "teal": 638, - "source": 61, - "pc": [ - 691, - 692, - 693 - ] - }, - { - "teal": 639, - "source": 61, - "pc": [ - 694 - ] - }, - { - "teal": 640, - "source": 61, - "pc": [ - 695 - ] - }, - { - "teal": 641, - "source": 61, - "pc": [ - 696 - ] - }, - { - "teal": 642, - "source": 61, - "pc": [ - 697 - ] - }, - { - "teal": 643, - "source": 61, - "pc": [ - 698 - ] - }, - { - "teal": 646, - "source": 61, - "errorMessage": "uint8exp return value overflowed 8 bits", - "pc": [ - 699 - ] - }, - { - "teal": 647, - "source": 61, - "pc": [ - 700, - 701, - 702 - ] - }, - { - "teal": 648, - "source": 61, - "pc": [ - 703 - ] - }, - { - "teal": 649, - "source": 61, - "pc": [ - 704 - ] - }, - { - "teal": 650, - "source": 61, - "pc": [ - 705 - ] - }, - { - "teal": 651, - "source": 61, - "pc": [ - 706 - ] - }, - { - "teal": 655, - "source": 61, - "pc": [ - 707, - 708, - 709 - ] - }, - { - "teal": 659, - "source": 62, - "pc": [ - 710, - 711 - ] - }, - { - "teal": 660, - "source": 62, - "pc": [ - 712, - 713 - ] - }, - { - "teal": 661, - "source": 62, - "pc": [ - 714 - ] - }, - { - "teal": 662, - "source": 61, - "pc": [ - 715 - ] - }, - { - "teal": 667, - "source": 65, - "pc": [ - 716 - ] - }, - { - "teal": 670, - "source": 65, - "pc": [ - 717, - 718, - 719 - ] - }, - { - "teal": 671, - "source": 65, - "pc": [ - 720 - ] - }, - { - "teal": 674, - "source": 65, - "pc": [ - 721, - 722, - 723 - ] - }, - { - "teal": 675, - "source": 65, - "pc": [ - 724 - ] - }, - { - "teal": 678, - "source": 65, - "pc": [ - 725, - 726, - 727 - ] - }, - { - "teal": 679, - "source": 65, - "pc": [ - 728 - ] - }, - { - "teal": 680, - "source": 65, - "pc": [ - 729 - ] - }, - { - "teal": 681, - "source": 65, - "pc": [ - 730 - ] - }, - { - "teal": 682, - "source": 65, - "pc": [ - 731 - ] - }, - { - "teal": 683, - "source": 65, - "pc": [ - 732 - ] - }, - { - "teal": 687, - "source": 65, - "pc": [ - 733, - 734, - 735 - ] - }, - { - "teal": 690, - "source": 65, - "pc": [ - 736 - ] - }, - { - "teal": 694, - "source": 66, - "pc": [ - 737, - 738 - ] - }, - { - "teal": 695, - "source": 66, - "pc": [ - 739, - 740 - ] - }, - { - "teal": 699, - "source": 68, - "pc": [ - 741, - 742 - ] - }, - { - "teal": 700, - "source": 68, - "pc": [ - 743, - 744 - ] - }, - { - "teal": 701, - "source": 68, - "pc": [ - 745 - ] - }, - { - "teal": 702, - "source": 68, - "pc": [ - 746, - 747 - ] - }, - { - "teal": 706, - "source": 70, - "pc": [ - 748, - 749 - ] - }, - { - "teal": 709, - "source": 65, - "pc": [ - 750, - 751 - ] - }, - { - "teal": 710, - "source": 65, - "pc": [ - 752 - ] - }, - { - "teal": 715, - "source": 73, - "pc": [ - 753 - ] - }, - { - "teal": 718, - "source": 73, - "pc": [ - 754, - 755, - 756 - ] - }, - { - "teal": 719, - "source": 73, - "pc": [ - 757 - ] - }, - { - "teal": 722, - "source": 73, - "pc": [ - 758, - 759, - 760 - ] - }, - { - "teal": 723, - "source": 73, - "pc": [ - 761 - ] - }, - { - "teal": 726, - "source": 73, - "pc": [ - 762, - 763, - 764 - ] - }, - { - "teal": 727, - "source": 73, - "pc": [ - 765 - ] - }, - { - "teal": 728, - "source": 73, - "pc": [ - 766 - ] - }, - { - "teal": 729, - "source": 73, - "pc": [ - 767 - ] - }, - { - "teal": 730, - "source": 73, - "pc": [ - 768 - ] - }, - { - "teal": 731, - "source": 73, - "pc": [ - 769 - ] - }, - { - "teal": 735, - "source": 73, - "pc": [ - 770, - 771, - 772 - ] - }, - { - "teal": 739, - "source": 74, - "pc": [ - 773 - ] - }, - { - "teal": 740, - "source": 74, - "pc": [ - 774, - 775 - ] - }, - { - "teal": 741, - "source": 74, - "pc": [ - 776 - ] - }, - { - "teal": 745, - "source": 76, - "pc": [ - 777 - ] - }, - { - "teal": 746, - "source": 76, - "pc": [ - 778 - ] - }, - { - "teal": 747, - "source": 76, - "pc": [ - 779, - 780 - ] - }, - { - "teal": 748, - "source": 76, - "pc": [ - 781 - ] - }, - { - "teal": 749, - "source": 76, - "pc": [ - 782 - ] - }, - { - "teal": 750, - "source": 76, - "pc": [ - 783 - ] - }, - { - "teal": 751, - "source": 76, - "pc": [ - 784 - ] - }, - { - "teal": 755, - "source": 78, - "pc": [ - 785 - ] - }, - { - "teal": 756, - "source": 78, - "pc": [ - 786 - ] - }, - { - "teal": 757, - "source": 73, - "pc": [ - 787 - ] - }, - { - "teal": 762, - "source": 83, - "pc": [ - 788 - ] - }, - { - "teal": 765, - "source": 83, - "pc": [ - 789, - 790, - 791 - ] - }, - { - "teal": 766, - "source": 83, - "pc": [ - 792 - ] - }, - { - "teal": 767, - "source": 83, - "pc": [ - 793 - ] - }, - { - "teal": 768, - "source": 83, - "pc": [ - 794 - ] - }, - { - "teal": 769, - "source": 83, - "pc": [ - 795 - ] - }, - { - "teal": 772, - "source": 83, - "errorMessage": "boxTest return value overflowed 256 bits", - "pc": [ - 796 - ] - }, - { - "teal": 773, - "source": 83, - "pc": [ - 797 - ] - }, - { - "teal": 774, - "source": 83, - "pc": [ - 798 - ] - }, - { - "teal": 775, - "source": 83, - "pc": [ - 799 - ] - }, - { - "teal": 776, - "source": 83, - "pc": [ - 800 - ] - }, - { - "teal": 777, - "source": 83, - "pc": [ - 801 - ] - }, - { - "teal": 778, - "source": 83, - "pc": [ - 802 - ] - }, - { - "teal": 779, - "source": 83, - "pc": [ - 803 - ] - }, - { - "teal": 780, - "source": 83, - "pc": [ - 804 - ] - }, - { - "teal": 781, - "source": 83, - "pc": [ - 805 - ] - }, - { - "teal": 782, - "source": 83, - "pc": [ - 806 - ] - }, - { - "teal": 783, - "source": 83, - "pc": [ - 807 - ] - }, - { - "teal": 784, - "source": 83, - "pc": [ - 808 - ] - }, - { - "teal": 785, - "source": 83, - "pc": [ - 809 - ] - }, - { - "teal": 789, - "source": 83, - "pc": [ - 810, - 811, - 812 - ] - }, - { - "teal": 793, - "source": 84, - "pc": [ - 813, - 814 - ] - }, - { - "teal": 794, - "source": 84, - "pc": [ - 815, - 816 - ] - }, - { - "teal": 795, - "source": 84, - "pc": [ - 817 - ] - }, - { - "teal": 799, - "source": 85, - "pc": [ - 818, - 819 - ] - }, - { - "teal": 800, - "source": 85, - "pc": [ - 820 - ] - }, - { - "teal": 803, - "source": 85, - "errorMessage": "box value does not exist: this.boxKey.value", - "pc": [ - 821 - ] - }, - { - "teal": 804, - "source": 85, - "pc": [ - 822, - 823 - ] - }, - { - "teal": 805, - "source": 85, - "pc": [ - 824 - ] - }, - { - "teal": 806, - "source": 85, - "pc": [ - 825, - 826 - ] - }, - { - "teal": 807, - "source": 85, - "pc": [ - 827 - ] - }, - { - "teal": 808, - "source": 85, - "pc": [ - 828 - ] - }, - { - "teal": 809, - "source": 85, - "pc": [ - 829 - ] - }, - { - "teal": 810, - "source": 85, - "pc": [ - 830 - ] - }, - { - "teal": 813, - "source": 85, - "errorMessage": "this.boxKey.value overflowed 256 bits", - "pc": [ - 831 - ] - }, - { - "teal": 814, - "source": 85, - "pc": [ - 832 - ] - }, - { - "teal": 815, - "source": 85, - "pc": [ - 833 - ] - }, - { - "teal": 816, - "source": 85, - "pc": [ - 834 - ] - }, - { - "teal": 817, - "source": 85, - "pc": [ - 835 - ] - }, - { - "teal": 818, - "source": 85, - "pc": [ - 836 - ] - }, - { - "teal": 819, - "source": 85, - "pc": [ - 837 - ] - }, - { - "teal": 820, - "source": 85, - "pc": [ - 838 - ] - }, - { - "teal": 821, - "source": 85, - "pc": [ - 839 - ] - }, - { - "teal": 822, - "source": 85, - "pc": [ - 840 - ] - }, - { - "teal": 823, - "source": 85, - "pc": [ - 841 - ] - }, - { - "teal": 824, - "source": 85, - "pc": [ - 842 - ] - }, - { - "teal": 828, - "source": 87, - "pc": [ - 843, - 844 - ] - }, - { - "teal": 829, - "source": 87, - "pc": [ - 845 - ] - }, - { - "teal": 832, - "source": 87, - "errorMessage": "box value does not exist: this.boxKey.value", - "pc": [ - 846 - ] - }, - { - "teal": 833, - "source": 83, - "pc": [ - 847 - ] - }, - { - "teal": 837, - "source": 90, - "pc": [ - 848, - 849, - 850 - ] - }, - { - "teal": 841, - "source": 91, - "pc": [ - 851, - 852 - ] - }, - { - "teal": 842, - "source": 90, - "pc": [ - 853 - ] - }, - { - "teal": 847, - "source": 94, - "pc": [ - 854 - ] - }, - { - "teal": 850, - "source": 94, - "pc": [ - 855, - 856, - 857 - ] - }, - { - "teal": 851, - "source": 94, - "pc": [ - 858 - ] - }, - { - "teal": 852, - "source": 94, - "pc": [ - 859 - ] - }, - { - "teal": 853, - "source": 94, - "pc": [ - 860 - ] - }, - { - "teal": 854, - "source": 94, - "pc": [ - 861 - ] - }, - { - "teal": 857, - "source": 94, - "errorMessage": "argument 0 (b) for unsafeMethodArgs must be a uint256", - "pc": [ - 862 - ] - }, - { - "teal": 860, - "source": 94, - "pc": [ - 863, - 864, - 865 - ] - }, - { - "teal": 861, - "source": 94, - "pc": [ - 866 - ] - }, - { - "teal": 862, - "source": 94, - "pc": [ - 867 - ] - }, - { - "teal": 863, - "source": 94, - "pc": [ - 868 - ] - }, - { - "teal": 864, - "source": 94, - "pc": [ - 869 - ] - }, - { - "teal": 867, - "source": 94, - "errorMessage": "argument 1 (a) for unsafeMethodArgs must be a uint256", - "pc": [ - 870 - ] - }, - { - "teal": 870, - "source": 94, - "pc": [ - 871, - 872, - 873 - ] - }, - { - "teal": 871, - "source": 94, - "pc": [ - 874 - ] - }, - { - "teal": 872, - "source": 94, - "pc": [ - 875 - ] - }, - { - "teal": 873, - "source": 94, - "pc": [ - 876 - ] - }, - { - "teal": 874, - "source": 94, - "pc": [ - 877 - ] - }, - { - "teal": 877, - "source": 94, - "errorMessage": "unsafeMethodArgs return value overflowed 256 bits", - "pc": [ - 878 - ] - }, - { - "teal": 878, - "source": 94, - "pc": [ - 879 - ] - }, - { - "teal": 879, - "source": 94, - "pc": [ - 880 - ] - }, - { - "teal": 880, - "source": 94, - "pc": [ - 881 - ] - }, - { - "teal": 881, - "source": 94, - "pc": [ - 882 - ] - }, - { - "teal": 882, - "source": 94, - "pc": [ - 883 - ] - }, - { - "teal": 883, - "source": 94, - "pc": [ - 884 - ] - }, - { - "teal": 884, - "source": 94, - "pc": [ - 885 - ] - }, - { - "teal": 885, - "source": 94, - "pc": [ - 886 - ] - }, - { - "teal": 886, - "source": 94, - "pc": [ - 887 - ] - }, - { - "teal": 887, - "source": 94, - "pc": [ - 888 - ] - }, - { - "teal": 888, - "source": 94, - "pc": [ - 889 - ] - }, - { - "teal": 889, - "source": 94, - "pc": [ - 890 - ] - }, - { - "teal": 890, - "source": 94, - "pc": [ - 891 - ] - }, - { - "teal": 894, - "source": 94, - "pc": [ - 892, - 893, - 894 - ] - }, - { - "teal": 897, - "source": 94, - "pc": [ - 895 - ] - }, - { - "teal": 901, - "source": 95, - "pc": [ - 896, - 897 - ] - }, - { - "teal": 902, - "source": 95, - "pc": [ - 898, - 899 - ] - }, - { - "teal": 903, - "source": 95, - "pc": [ - 900 - ] - }, - { - "teal": 904, - "source": 95, - "pc": [ - 901, - 902 - ] - }, - { - "teal": 908, - "source": 97, - "pc": [ - 903, - 904 - ] - }, - { - "teal": 909, - "source": 97, - "pc": [ - 905 - ] - }, - { - "teal": 910, - "source": 97, - "pc": [ - 906 - ] - }, - { - "teal": 911, - "source": 97, - "pc": [ - 907 - ] - }, - { - "teal": 912, - "source": 97, - "pc": [ - 908 - ] - }, - { - "teal": 915, - "source": 97, - "errorMessage": "c overflowed 256 bits", - "pc": [ - 909 - ] - }, - { - "teal": 916, - "source": 97, - "pc": [ - 910 - ] - }, - { - "teal": 917, - "source": 97, - "pc": [ - 911 - ] - }, - { - "teal": 918, - "source": 97, - "pc": [ - 912 - ] - }, - { - "teal": 919, - "source": 97, - "pc": [ - 913 - ] - }, - { - "teal": 920, - "source": 97, - "pc": [ - 914 - ] - }, - { - "teal": 921, - "source": 97, - "pc": [ - 915 - ] - }, - { - "teal": 922, - "source": 97, - "pc": [ - 916 - ] - }, - { - "teal": 923, - "source": 97, - "pc": [ - 917 - ] - }, - { - "teal": 924, - "source": 97, - "pc": [ - 918 - ] - }, - { - "teal": 925, - "source": 97, - "pc": [ - 919, - 920, - 921 - ] - }, - { - "teal": 928, - "source": 94, - "pc": [ - 922, - 923 - ] - }, - { - "teal": 929, - "source": 94, - "pc": [ - 924 - ] - }, - { - "teal": 934, - "source": 100, - "pc": [ - 925, - 926, - 927 - ] - }, - { - "teal": 935, - "source": 100, - "pc": [ - 928 - ] - }, - { - "teal": 936, - "source": 100, - "pc": [ - 929 - ] - }, - { - "teal": 937, - "source": 100, - "pc": [ - 930 - ] - }, - { - "teal": 938, - "source": 100, - "pc": [ - 931 - ] - }, - { - "teal": 941, - "source": 100, - "errorMessage": "argument 0 (b) for uint256ComparisonType must be a uint256", - "pc": [ - 932 - ] - }, - { - "teal": 944, - "source": 100, - "pc": [ - 933, - 934, - 935 - ] - }, - { - "teal": 945, - "source": 100, - "pc": [ - 936 - ] - }, - { - "teal": 946, - "source": 100, - "pc": [ - 937 - ] - }, - { - "teal": 947, - "source": 100, - "pc": [ - 938 - ] - }, - { - "teal": 948, - "source": 100, - "pc": [ - 939 - ] - }, - { - "teal": 951, - "source": 100, - "errorMessage": "argument 1 (a) for uint256ComparisonType must be a uint256", - "pc": [ - 940 - ] - }, - { - "teal": 954, - "source": 100, - "pc": [ - 941, - 942, - 943 - ] - }, - { - "teal": 955, - "source": 100, - "pc": [ - 944 - ] - }, - { - "teal": 956, - "source": 100, - "pc": [ - 945 - ] - }, - { - "teal": 960, - "source": 100, - "pc": [ - 946, - 947, - 948 - ] - }, - { - "teal": 963, - "source": 100, - "pc": [ - 949 - ] - }, - { - "teal": 967, - "source": 101, - "pc": [ - 950, - 951 - ] - }, - { - "teal": 968, - "source": 101, - "pc": [ - 952, - 953 - ] - }, - { - "teal": 969, - "source": 101, - "pc": [ - 954 - ] - }, - { - "teal": 970, - "source": 101, - "pc": [ - 955, - 956 - ] - }, - { - "teal": 975, - "source": 102, - "pc": [ - 957, - 958 - ] - }, - { - "teal": 976, - "source": 102, - "pc": [ - 959, - 960, - 961, - 962, - 963, - 964, - 965, - 966, - 967, - 968, - 969, - 970, - 971, - 972, - 973, - 974, - 975, - 976, - 977, - 978, - 979, - 980, - 981, - 982, - 983, - 984, - 985, - 986, - 987, - 988, - 989, - 990, - 991, - 992 - ] - }, - { - "teal": 977, - "source": 102, - "pc": [ - 993 - ] - }, - { - "teal": 978, - "source": 102, - "pc": [ - 994, - 995, - 996 - ] - }, - { - "teal": 983, - "source": 103, - "pc": [ - 997, - 998, - 999, - 1000, - 1001, - 1002, - 1003, - 1004, - 1005 - ] - }, - { - "teal": 984, - "source": 103, - "pc": [ - 1006 - ] - }, - { - "teal": 985, - "source": 102, - "pc": [ - 1007, - 1008, - 1009 - ] - }, - { - "teal": 990, - "source": 105, - "pc": [ - 1010, - 1011, - 1012, - 1013, - 1014, - 1015 - ] - }, - { - "teal": 991, - "source": 105, - "pc": [ - 1016 - ] - }, - { - "teal": 994, - "source": 100, - "pc": [ - 1017 - ] - }, - { - "teal": 999, - "source": 109, - "pc": [ - 1018 - ] - }, - { - "teal": 1002, - "source": 109, - "pc": [ - 1019, - 1020, - 1021 - ] - }, - { - "teal": 1003, - "source": 109, - "pc": [ - 1022 - ] - }, - { - "teal": 1004, - "source": 109, - "pc": [ - 1023 - ] - }, - { - "teal": 1005, - "source": 109, - "pc": [ - 1024 - ] - }, - { - "teal": 1006, - "source": 109, - "pc": [ - 1025 - ] - }, - { - "teal": 1009, - "source": 109, - "errorMessage": "argument 0 (b) for squareRoot256 must be a uint256", - "pc": [ - 1026 - ] - }, - { - "teal": 1012, - "source": 109, - "pc": [ - 1027, - 1028, - 1029 - ] - }, - { - "teal": 1013, - "source": 109, - "pc": [ - 1030 - ] - }, - { - "teal": 1014, - "source": 109, - "pc": [ - 1031 - ] - }, - { - "teal": 1015, - "source": 109, - "pc": [ - 1032 - ] - }, - { - "teal": 1016, - "source": 109, - "pc": [ - 1033 - ] - }, - { - "teal": 1019, - "source": 109, - "errorMessage": "argument 1 (a) for squareRoot256 must be a uint256", - "pc": [ - 1034 - ] - }, - { - "teal": 1022, - "source": 109, - "pc": [ - 1035, - 1036, - 1037 - ] - }, - { - "teal": 1023, - "source": 109, - "pc": [ - 1038 - ] - }, - { - "teal": 1024, - "source": 109, - "pc": [ - 1039 - ] - }, - { - "teal": 1025, - "source": 109, - "pc": [ - 1040 - ] - }, - { - "teal": 1026, - "source": 109, - "pc": [ - 1041 - ] - }, - { - "teal": 1029, - "source": 109, - "errorMessage": "squareRoot256 return value overflowed 256 bits", - "pc": [ - 1042 - ] - }, - { - "teal": 1030, - "source": 109, - "pc": [ - 1043 - ] - }, - { - "teal": 1031, - "source": 109, - "pc": [ - 1044 - ] - }, - { - "teal": 1032, - "source": 109, - "pc": [ - 1045 - ] - }, - { - "teal": 1033, - "source": 109, - "pc": [ - 1046 - ] - }, - { - "teal": 1034, - "source": 109, - "pc": [ - 1047 - ] - }, - { - "teal": 1035, - "source": 109, - "pc": [ - 1048 - ] - }, - { - "teal": 1036, - "source": 109, - "pc": [ - 1049 - ] - }, - { - "teal": 1037, - "source": 109, - "pc": [ - 1050 - ] - }, - { - "teal": 1038, - "source": 109, - "pc": [ - 1051 - ] - }, - { - "teal": 1039, - "source": 109, - "pc": [ - 1052 - ] - }, - { - "teal": 1040, - "source": 109, - "pc": [ - 1053 - ] - }, - { - "teal": 1041, - "source": 109, - "pc": [ - 1054 - ] - }, - { - "teal": 1042, - "source": 109, - "pc": [ - 1055 - ] - }, - { - "teal": 1046, - "source": 109, - "pc": [ - 1056, - 1057, - 1058 - ] - }, - { - "teal": 1050, - "source": 110, - "pc": [ - 1059, - 1060 - ] - }, - { - "teal": 1051, - "source": 110, - "pc": [ - 1061, - 1062 - ] - }, - { - "teal": 1052, - "source": 110, - "pc": [ - 1063 - ] - }, - { - "teal": 1053, - "source": 110, - "pc": [ - 1064 - ] - }, - { - "teal": 1054, - "source": 109, - "pc": [ - 1065 - ] - }, - { - "teal": 1059, - "source": 113, - "pc": [ - 1066 - ] - }, - { - "teal": 1062, - "source": 113, - "pc": [ - 1067, - 1068, - 1069 - ] - }, - { - "teal": 1063, - "source": 113, - "pc": [ - 1070 - ] - }, - { - "teal": 1066, - "source": 113, - "pc": [ - 1071, - 1072, - 1073 - ] - }, - { - "teal": 1067, - "source": 113, - "pc": [ - 1074 - ] - }, - { - "teal": 1070, - "source": 113, - "pc": [ - 1075, - 1076, - 1077 - ] - }, - { - "teal": 1071, - "source": 113, - "pc": [ - 1078 - ] - }, - { - "teal": 1072, - "source": 113, - "pc": [ - 1079 - ] - }, - { - "teal": 1073, - "source": 113, - "pc": [ - 1080 - ] - }, - { - "teal": 1074, - "source": 113, - "pc": [ - 1081 - ] - }, - { - "teal": 1075, - "source": 113, - "pc": [ - 1082 - ] - }, - { - "teal": 1079, - "source": 113, - "pc": [ - 1083, - 1084, - 1085 - ] - }, - { - "teal": 1083, - "source": 114, - "pc": [ - 1086, - 1087 - ] - }, - { - "teal": 1084, - "source": 114, - "pc": [ - 1088, - 1089 - ] - }, - { - "teal": 1085, - "source": 114, - "pc": [ - 1090 - ] - }, - { - "teal": 1086, - "source": 114, - "pc": [ - 1091 - ] - }, - { - "teal": 1087, - "source": 113, - "pc": [ - 1092 - ] - }, - { - "teal": 1092, - "source": 117, - "pc": [ - 1093 - ] - }, - { - "teal": 1095, - "source": 117, - "pc": [ - 1094, - 1095, - 1096 - ] - }, - { - "teal": 1096, - "source": 117, - "pc": [ - 1097 - ] - }, - { - "teal": 1097, - "source": 117, - "pc": [ - 1098 - ] - }, - { - "teal": 1098, - "source": 117, - "pc": [ - 1099 - ] - }, - { - "teal": 1099, - "source": 117, - "pc": [ - 1100 - ] - }, - { - "teal": 1102, - "source": 117, - "errorMessage": "argument 0 (addr) for addressToBigInt must be a address", - "pc": [ - 1101 - ] - }, - { - "teal": 1105, - "source": 117, - "pc": [ - 1102, - 1103, - 1104 - ] - }, - { - "teal": 1106, - "source": 117, - "pc": [ - 1105, - 1106, - 1107 - ] - }, - { - "teal": 1107, - "source": 117, - "pc": [ - 1108, - 1109 - ] - }, - { - "teal": 1108, - "source": 117, - "pc": [ - 1110, - 1111 - ] - }, - { - "teal": 1109, - "source": 117, - "pc": [ - 1112 - ] - }, - { - "teal": 1110, - "source": 117, - "pc": [ - 1113 - ] - }, - { - "teal": 1111, - "source": 117, - "pc": [ - 1114 - ] - }, - { - "teal": 1112, - "source": 117, - "pc": [ - 1115 - ] - }, - { - "teal": 1113, - "source": 117, - "pc": [ - 1116 - ] - }, - { - "teal": 1117, - "source": 117, - "pc": [ - 1117, - 1118, - 1119 - ] - }, - { - "teal": 1121, - "source": 118, - "pc": [ - 1120, - 1121 - ] - }, - { - "teal": 1122, - "source": 118, - "pc": [ - 1122, - 1123 - ] - }, - { - "teal": 1123, - "source": 118, - "pc": [ - 1124 - ] - }, - { - "teal": 1124, - "source": 117, - "pc": [ - 1125 - ] - }, - { - "teal": 1129, - "source": 121, - "pc": [ - 1126 - ] - }, - { - "teal": 1132, - "source": 121, - "pc": [ - 1127, - 1128, - 1129 - ] - }, - { - "teal": 1133, - "source": 121, - "pc": [ - 1130 - ] - }, - { - "teal": 1134, - "source": 121, - "pc": [ - 1131 - ] - }, - { - "teal": 1135, - "source": 121, - "pc": [ - 1132 - ] - }, - { - "teal": 1136, - "source": 121, - "pc": [ - 1133 - ] - }, - { - "teal": 1137, - "source": 121, - "pc": [ - 1134 - ] - }, - { - "teal": 1141, - "source": 121, - "pc": [ - 1135, - 1136, - 1137 - ] - }, - { - "teal": 1144, - "source": 121, - "pc": [ - 1138 - ] - }, - { - "teal": 1148, - "source": 122, - "pc": [ - 1139, - 1140 - ] - }, - { - "teal": 1149, - "source": 122, - "pc": [ - 1141, - 1142 - ] - }, - { - "teal": 1153, - "source": 123, - "pc": [ - 1143, - 1144 - ] - }, - { - "teal": 1156, - "source": 121, - "pc": [ - 1145, - 1146 - ] - }, - { - "teal": 1157, - "source": 121, - "pc": [ - 1147 - ] - }, - { - "teal": 1161, - "source": 126, - "pc": [ - 1148, - 1149, - 1150 - ] - }, - { - "teal": 1165, - "source": 127, - "pc": [ - 1151, - 1152 - ] - }, - { - "teal": 1166, - "source": 127, - "pc": [ - 1153, - 1154 - ] - }, - { - "teal": 1167, - "source": 127, - "pc": [ - 1155 - ] - }, - { - "teal": 1168, - "source": 127, - "pc": [ - 1156 - ] - }, - { - "teal": 1169, - "source": 126, - "pc": [ - 1157 - ] - }, - { - "teal": 1174, - "source": 130, - "pc": [ - 1158, - 1159, - 1160 - ] - }, - { - "teal": 1175, - "source": 130, - "pc": [ - 1161 - ] - }, - { - "teal": 1176, - "source": 130, - "pc": [ - 1162 - ] - }, - { - "teal": 1177, - "source": 130, - "pc": [ - 1163 - ] - }, - { - "teal": 1178, - "source": 130, - "pc": [ - 1164 - ] - }, - { - "teal": 1181, - "source": 130, - "errorMessage": "argument 0 (x) for funcName must be a uint256", - "pc": [ - 1165 - ] - }, - { - "teal": 1184, - "source": 130, - "pc": [ - 1166, - 1167, - 1168 - ] - }, - { - "teal": 1185, - "source": 130, - "pc": [ - 1169 - ] - }, - { - "teal": 1186, - "source": 130, - "pc": [ - 1170 - ] - }, - { - "teal": 1190, - "source": 130, - "pc": [ - 1171, - 1172, - 1173 - ] - }, - { - "teal": 1194, - "source": 131, - "pc": [ - 1174, - 1175, - 1176 - ] - }, - { - "teal": 1195, - "source": 131, - "pc": [ - 1177, - 1178 - ] - }, - { - "teal": 1196, - "source": 131, - "pc": [ - 1179 - ] - }, - { - "teal": 1197, - "source": 131, - "pc": [ - 1180 - ] - }, - { - "teal": 1198, - "source": 131, - "pc": [ - 1181 - ] - }, - { - "teal": 1199, - "source": 131, - "pc": [ - 1182 - ] - }, - { - "teal": 1202, - "source": 131, - "errorMessage": "x overflowed 8 bits", - "pc": [ - 1183 - ] - }, - { - "teal": 1203, - "source": 131, - "pc": [ - 1184, - 1185, - 1186 - ] - }, - { - "teal": 1204, - "source": 131, - "pc": [ - 1187 - ] - }, - { - "teal": 1205, - "source": 131, - "pc": [ - 1188, - 1189, - 1190 - ] - }, - { - "teal": 1206, - "source": 130, - "pc": [ - 1191 - ] - }, - { - "teal": 1211, - "source": 134, - "pc": [ - 1192 - ] - }, - { - "teal": 1214, - "source": 134, - "pc": [ - 1193, - 1194, - 1195 - ] - }, - { - "teal": 1215, - "source": 134, - "pc": [ - 1196 - ] - }, - { - "teal": 1218, - "source": 134, - "pc": [ - 1197, - 1198, - 1199 - ] - }, - { - "teal": 1219, - "source": 134, - "pc": [ - 1200 - ] - }, - { - "teal": 1222, - "source": 134, - "pc": [ - 1201, - 1202, - 1203 - ] - }, - { - "teal": 1223, - "source": 134, - "pc": [ - 1204 - ] - }, - { - "teal": 1224, - "source": 134, - "pc": [ - 1205 - ] - }, - { - "teal": 1225, - "source": 134, - "pc": [ - 1206 - ] - }, - { - "teal": 1226, - "source": 134, - "pc": [ - 1207 - ] - }, - { - "teal": 1227, - "source": 134, - "pc": [ - 1208 - ] - }, - { - "teal": 1231, - "source": 134, - "pc": [ - 1209, - 1210, - 1211 - ] - }, - { - "teal": 1234, - "source": 134, - "pc": [ - 1212 - ] - }, - { - "teal": 1235, - "source": 134, - "pc": [ - 1213 - ] - }, - { - "teal": 1239, - "source": 135, - "pc": [ - 1214, - 1215 - ] - }, - { - "teal": 1240, - "source": 135, - "pc": [ - 1216 - ] - }, - { - "teal": 1241, - "source": 135, - "pc": [ - 1217, - 1218 - ] - }, - { - "teal": 1245, - "source": 136, - "pc": [ - 1219, - 1220 - ] - }, - { - "teal": 1246, - "source": 136, - "pc": [ - 1221 - ] - }, - { - "teal": 1247, - "source": 136, - "pc": [ - 1222, - 1223 - ] - }, - { - "teal": 1251, - "source": 137, - "pc": [ - 1224, - 1225 - ] - }, - { - "teal": 1252, - "source": 137, - "pc": [ - 1226, - 1227 - ] - }, - { - "teal": 1253, - "source": 137, - "pc": [ - 1228 - ] - }, - { - "teal": 1254, - "source": 137, - "pc": [ - 1229 - ] - }, - { - "teal": 1255, - "source": 137, - "pc": [ - 1230 - ] - }, - { - "teal": 1256, - "source": 137, - "pc": [ - 1231, - 1232 - ] - }, - { - "teal": 1257, - "source": 137, - "pc": [ - 1233 - ] - }, - { - "teal": 1260, - "source": 137, - "errorMessage": "(btobigint(x) + btobigint(y)) as uint64 overflowed 64 bits", - "pc": [ - 1234 - ] - }, - { - "teal": 1261, - "source": 137, - "pc": [ - 1235, - 1236 - ] - }, - { - "teal": 1262, - "source": 137, - "pc": [ - 1237 - ] - }, - { - "teal": 1263, - "source": 137, - "pc": [ - 1238 - ] - }, - { - "teal": 1264, - "source": 137, - "pc": [ - 1239 - ] - }, - { - "teal": 1265, - "source": 137, - "pc": [ - 1240 - ] - }, - { - "teal": 1266, - "source": 137, - "pc": [ - 1241 - ] - }, - { - "teal": 1267, - "source": 137, - "pc": [ - 1242 - ] - }, - { - "teal": 1268, - "source": 137, - "pc": [ - 1243 - ] - }, - { - "teal": 1269, - "source": 137, - "pc": [ - 1244 - ] - }, - { - "teal": 1270, - "source": 137, - "pc": [ - 1245 - ] - }, - { - "teal": 1273, - "source": 134, - "pc": [ - 1246, - 1247 - ] - }, - { - "teal": 1276, - "source": 134, - "pc": [ - 1248, - 1249 - ] - }, - { - "teal": 1277, - "source": 134, - "pc": [ - 1250 - ] - }, - { - "teal": 1282, - "source": 140, - "pc": [ - 1251 - ] - }, - { - "teal": 1285, - "source": 140, - "pc": [ - 1252, - 1253, - 1254 - ] - }, - { - "teal": 1286, - "source": 140, - "pc": [ - 1255 - ] - }, - { - "teal": 1289, - "source": 140, - "pc": [ - 1256, - 1257, - 1258 - ] - }, - { - "teal": 1290, - "source": 140, - "pc": [ - 1259 - ] - }, - { - "teal": 1293, - "source": 140, - "pc": [ - 1260, - 1261, - 1262 - ] - }, - { - "teal": 1294, - "source": 140, - "pc": [ - 1263 - ] - }, - { - "teal": 1295, - "source": 140, - "pc": [ - 1264 - ] - }, - { - "teal": 1296, - "source": 140, - "pc": [ - 1265 - ] - }, - { - "teal": 1297, - "source": 140, - "pc": [ - 1266 - ] - }, - { - "teal": 1298, - "source": 140, - "pc": [ - 1267 - ] - }, - { - "teal": 1302, - "source": 140, - "pc": [ - 1268, - 1269, - 1270 - ] - }, - { - "teal": 1306, - "source": 141, - "pc": [ - 1271, - 1272 - ] - }, - { - "teal": 1307, - "source": 141, - "pc": [ - 1273, - 1274 - ] - }, - { - "teal": 1308, - "source": 141, - "pc": [ - 1275 - ] - }, - { - "teal": 1309, - "source": 140, - "pc": [ - 1276 - ] - }, - { - "teal": 1314, - "source": 144, - "pc": [ - 1277 - ] - }, - { - "teal": 1317, - "source": 144, - "pc": [ - 1278, - 1279, - 1280 - ] - }, - { - "teal": 1318, - "source": 144, - "pc": [ - 1281 - ] - }, - { - "teal": 1321, - "source": 144, - "pc": [ - 1282, - 1283, - 1284 - ] - }, - { - "teal": 1322, - "source": 144, - "pc": [ - 1285 - ] - }, - { - "teal": 1325, - "source": 144, - "pc": [ - 1286, - 1287, - 1288 - ] - }, - { - "teal": 1326, - "source": 144, - "pc": [ - 1289 - ] - }, - { - "teal": 1327, - "source": 144, - "pc": [ - 1290 - ] - }, - { - "teal": 1328, - "source": 144, - "pc": [ - 1291 - ] - }, - { - "teal": 1329, - "source": 144, - "pc": [ - 1292 - ] - }, - { - "teal": 1330, - "source": 144, - "pc": [ - 1293 - ] - }, - { - "teal": 1334, - "source": 144, - "pc": [ - 1294, - 1295, - 1296 - ] - }, - { - "teal": 1338, - "source": 145, - "pc": [ - 1297, - 1298 - ] - }, - { - "teal": 1339, - "source": 145, - "pc": [ - 1299, - 1300 - ] - }, - { - "teal": 1340, - "source": 145, - "pc": [ - 1301 - ] - }, - { - "teal": 1341, - "source": 144, - "pc": [ - 1302 - ] - }, - { - "teal": 1346, - "source": 148, - "pc": [ - 1303 - ] - }, - { - "teal": 1349, - "source": 148, - "pc": [ - 1304, - 1305, - 1306 - ] - }, - { - "teal": 1350, - "source": 148, - "pc": [ - 1307 - ] - }, - { - "teal": 1353, - "source": 148, - "pc": [ - 1308, - 1309, - 1310 - ] - }, - { - "teal": 1354, - "source": 148, - "pc": [ - 1311 - ] - }, - { - "teal": 1357, - "source": 148, - "pc": [ - 1312, - 1313, - 1314 - ] - }, - { - "teal": 1358, - "source": 148, - "pc": [ - 1315 - ] - }, - { - "teal": 1359, - "source": 148, - "pc": [ - 1316 - ] - }, - { - "teal": 1360, - "source": 148, - "pc": [ - 1317 - ] - }, - { - "teal": 1361, - "source": 148, - "pc": [ - 1318 - ] - }, - { - "teal": 1362, - "source": 148, - "pc": [ - 1319 - ] - }, - { - "teal": 1366, - "source": 148, - "pc": [ - 1320, - 1321, - 1322 - ] - }, - { - "teal": 1370, - "source": 149, - "pc": [ - 1323, - 1324 - ] - }, - { - "teal": 1371, - "source": 149, - "pc": [ - 1325, - 1326 - ] - }, - { - "teal": 1372, - "source": 149, - "pc": [ - 1327 - ] - }, - { - "teal": 1373, - "source": 148, - "pc": [ - 1328 - ] - }, - { - "teal": 1378, - "source": 152, - "pc": [ - 1329 - ] - }, - { - "teal": 1381, - "source": 152, - "pc": [ - 1330, - 1331, - 1332 - ] - }, - { - "teal": 1382, - "source": 152, - "pc": [ - 1333 - ] - }, - { - "teal": 1383, - "source": 152, - "pc": [ - 1334 - ] - }, - { - "teal": 1384, - "source": 152, - "pc": [ - 1335 - ] - }, - { - "teal": 1385, - "source": 152, - "pc": [ - 1336 - ] - }, - { - "teal": 1388, - "source": 152, - "errorMessage": "argument 0 (b) for bitwiseOrU256 must be a uint256", - "pc": [ - 1337 - ] - }, - { - "teal": 1391, - "source": 152, - "pc": [ - 1338, - 1339, - 1340 - ] - }, - { - "teal": 1392, - "source": 152, - "pc": [ - 1341 - ] - }, - { - "teal": 1393, - "source": 152, - "pc": [ - 1342 - ] - }, - { - "teal": 1394, - "source": 152, - "pc": [ - 1343 - ] - }, - { - "teal": 1395, - "source": 152, - "pc": [ - 1344 - ] - }, - { - "teal": 1398, - "source": 152, - "errorMessage": "argument 1 (a) for bitwiseOrU256 must be a uint256", - "pc": [ - 1345 - ] - }, - { - "teal": 1401, - "source": 152, - "pc": [ - 1346, - 1347, - 1348 - ] - }, - { - "teal": 1402, - "source": 152, - "pc": [ - 1349 - ] - }, - { - "teal": 1403, - "source": 152, - "pc": [ - 1350 - ] - }, - { - "teal": 1404, - "source": 152, - "pc": [ - 1351 - ] - }, - { - "teal": 1405, - "source": 152, - "pc": [ - 1352 - ] - }, - { - "teal": 1408, - "source": 152, - "errorMessage": "bitwiseOrU256 return value overflowed 256 bits", - "pc": [ - 1353 - ] - }, - { - "teal": 1409, - "source": 152, - "pc": [ - 1354 - ] - }, - { - "teal": 1410, - "source": 152, - "pc": [ - 1355 - ] - }, - { - "teal": 1411, - "source": 152, - "pc": [ - 1356 - ] - }, - { - "teal": 1412, - "source": 152, - "pc": [ - 1357 - ] - }, - { - "teal": 1413, - "source": 152, - "pc": [ - 1358 - ] - }, - { - "teal": 1414, - "source": 152, - "pc": [ - 1359 - ] - }, - { - "teal": 1415, - "source": 152, - "pc": [ - 1360 - ] - }, - { - "teal": 1416, - "source": 152, - "pc": [ - 1361 - ] - }, - { - "teal": 1417, - "source": 152, - "pc": [ - 1362 - ] - }, - { - "teal": 1418, - "source": 152, - "pc": [ - 1363 - ] - }, - { - "teal": 1419, - "source": 152, - "pc": [ - 1364 - ] - }, - { - "teal": 1420, - "source": 152, - "pc": [ - 1365 - ] - }, - { - "teal": 1421, - "source": 152, - "pc": [ - 1366 - ] - }, - { - "teal": 1425, - "source": 152, - "pc": [ - 1367, - 1368, - 1369 - ] - }, - { - "teal": 1429, - "source": 153, - "pc": [ - 1370, - 1371 - ] - }, - { - "teal": 1430, - "source": 153, - "pc": [ - 1372, - 1373 - ] - }, - { - "teal": 1431, - "source": 153, - "pc": [ - 1374 - ] - }, - { - "teal": 1432, - "source": 152, - "pc": [ - 1375 - ] - }, - { - "teal": 1437, - "source": 156, - "pc": [ - 1376 - ] - }, - { - "teal": 1440, - "source": 156, - "pc": [ - 1377, - 1378, - 1379 - ] - }, - { - "teal": 1441, - "source": 156, - "pc": [ - 1380 - ] - }, - { - "teal": 1442, - "source": 156, - "pc": [ - 1381 - ] - }, - { - "teal": 1443, - "source": 156, - "pc": [ - 1382 - ] - }, - { - "teal": 1444, - "source": 156, - "pc": [ - 1383 - ] - }, - { - "teal": 1447, - "source": 156, - "errorMessage": "argument 0 (b) for bitwiseAndU256 must be a uint256", - "pc": [ - 1384 - ] - }, - { - "teal": 1450, - "source": 156, - "pc": [ - 1385, - 1386, - 1387 - ] - }, - { - "teal": 1451, - "source": 156, - "pc": [ - 1388 - ] - }, - { - "teal": 1452, - "source": 156, - "pc": [ - 1389 - ] - }, - { - "teal": 1453, - "source": 156, - "pc": [ - 1390 - ] - }, - { - "teal": 1454, - "source": 156, - "pc": [ - 1391 - ] - }, - { - "teal": 1457, - "source": 156, - "errorMessage": "argument 1 (a) for bitwiseAndU256 must be a uint256", - "pc": [ - 1392 - ] - }, - { - "teal": 1460, - "source": 156, - "pc": [ - 1393, - 1394, - 1395 - ] - }, - { - "teal": 1461, - "source": 156, - "pc": [ - 1396 - ] - }, - { - "teal": 1462, - "source": 156, - "pc": [ - 1397 - ] - }, - { - "teal": 1463, - "source": 156, - "pc": [ - 1398 - ] - }, - { - "teal": 1464, - "source": 156, - "pc": [ - 1399 - ] - }, - { - "teal": 1467, - "source": 156, - "errorMessage": "bitwiseAndU256 return value overflowed 256 bits", - "pc": [ - 1400 - ] - }, - { - "teal": 1468, - "source": 156, - "pc": [ - 1401 - ] - }, - { - "teal": 1469, - "source": 156, - "pc": [ - 1402 - ] - }, - { - "teal": 1470, - "source": 156, - "pc": [ - 1403 - ] - }, - { - "teal": 1471, - "source": 156, - "pc": [ - 1404 - ] - }, - { - "teal": 1472, - "source": 156, - "pc": [ - 1405 - ] - }, - { - "teal": 1473, - "source": 156, - "pc": [ - 1406 - ] - }, - { - "teal": 1474, - "source": 156, - "pc": [ - 1407 - ] - }, - { - "teal": 1475, - "source": 156, - "pc": [ - 1408 - ] - }, - { - "teal": 1476, - "source": 156, - "pc": [ - 1409 - ] - }, - { - "teal": 1477, - "source": 156, - "pc": [ - 1410 - ] - }, - { - "teal": 1478, - "source": 156, - "pc": [ - 1411 - ] - }, - { - "teal": 1479, - "source": 156, - "pc": [ - 1412 - ] - }, - { - "teal": 1480, - "source": 156, - "pc": [ - 1413 - ] - }, - { - "teal": 1484, - "source": 156, - "pc": [ - 1414, - 1415, - 1416 - ] - }, - { - "teal": 1488, - "source": 157, - "pc": [ - 1417, - 1418 - ] - }, - { - "teal": 1489, - "source": 157, - "pc": [ - 1419, - 1420 - ] - }, - { - "teal": 1490, - "source": 157, - "pc": [ - 1421 - ] - }, - { - "teal": 1491, - "source": 156, - "pc": [ - 1422 - ] - }, - { - "teal": 1496, - "source": 160, - "pc": [ - 1423 - ] - }, - { - "teal": 1499, - "source": 160, - "pc": [ - 1424, - 1425, - 1426 - ] - }, - { - "teal": 1500, - "source": 160, - "pc": [ - 1427 - ] - }, - { - "teal": 1501, - "source": 160, - "pc": [ - 1428 - ] - }, - { - "teal": 1502, - "source": 160, - "pc": [ - 1429 - ] - }, - { - "teal": 1503, - "source": 160, - "pc": [ - 1430 - ] - }, - { - "teal": 1506, - "source": 160, - "errorMessage": "argument 0 (b) for bitwiseXorU256 must be a uint256", - "pc": [ - 1431 - ] - }, - { - "teal": 1509, - "source": 160, - "pc": [ - 1432, - 1433, - 1434 - ] - }, - { - "teal": 1510, - "source": 160, - "pc": [ - 1435 - ] - }, - { - "teal": 1511, - "source": 160, - "pc": [ - 1436 - ] - }, - { - "teal": 1512, - "source": 160, - "pc": [ - 1437 - ] - }, - { - "teal": 1513, - "source": 160, - "pc": [ - 1438 - ] - }, - { - "teal": 1516, - "source": 160, - "errorMessage": "argument 1 (a) for bitwiseXorU256 must be a uint256", - "pc": [ - 1439 - ] - }, - { - "teal": 1519, - "source": 160, - "pc": [ - 1440, - 1441, - 1442 - ] - }, - { - "teal": 1520, - "source": 160, - "pc": [ - 1443 - ] - }, - { - "teal": 1521, - "source": 160, - "pc": [ - 1444 - ] - }, - { - "teal": 1522, - "source": 160, - "pc": [ - 1445 - ] - }, - { - "teal": 1523, - "source": 160, - "pc": [ - 1446 - ] - }, - { - "teal": 1526, - "source": 160, - "errorMessage": "bitwiseXorU256 return value overflowed 256 bits", - "pc": [ - 1447 - ] - }, - { - "teal": 1527, - "source": 160, - "pc": [ - 1448 - ] - }, - { - "teal": 1528, - "source": 160, - "pc": [ - 1449 - ] - }, - { - "teal": 1529, - "source": 160, - "pc": [ - 1450 - ] - }, - { - "teal": 1530, - "source": 160, - "pc": [ - 1451 - ] - }, - { - "teal": 1531, - "source": 160, - "pc": [ - 1452 - ] - }, - { - "teal": 1532, - "source": 160, - "pc": [ - 1453 - ] - }, - { - "teal": 1533, - "source": 160, - "pc": [ - 1454 - ] - }, - { - "teal": 1534, - "source": 160, - "pc": [ - 1455 - ] - }, - { - "teal": 1535, - "source": 160, - "pc": [ - 1456 - ] - }, - { - "teal": 1536, - "source": 160, - "pc": [ - 1457 - ] - }, - { - "teal": 1537, - "source": 160, - "pc": [ - 1458 - ] - }, - { - "teal": 1538, - "source": 160, - "pc": [ - 1459 - ] - }, - { - "teal": 1539, - "source": 160, - "pc": [ - 1460 - ] - }, - { - "teal": 1543, - "source": 160, - "pc": [ - 1461, - 1462, - 1463 - ] - }, - { - "teal": 1547, - "source": 161, - "pc": [ - 1464, - 1465 - ] - }, - { - "teal": 1548, - "source": 161, - "pc": [ - 1466, - 1467 - ] - }, - { - "teal": 1549, - "source": 161, - "pc": [ - 1468 - ] - }, - { - "teal": 1550, - "source": 160, - "pc": [ - 1469 - ] - }, - { - "teal": 1555, - "source": 164, - "pc": [ - 1470 - ] - }, - { - "teal": 1558, - "source": 164, - "pc": [ - 1471, - 1472, - 1473 - ] - }, - { - "teal": 1559, - "source": 164, - "pc": [ - 1474 - ] - }, - { - "teal": 1562, - "source": 164, - "pc": [ - 1475, - 1476, - 1477 - ] - }, - { - "teal": 1563, - "source": 164, - "pc": [ - 1478 - ] - }, - { - "teal": 1564, - "source": 164, - "pc": [ - 1479 - ] - }, - { - "teal": 1565, - "source": 164, - "pc": [ - 1480 - ] - }, - { - "teal": 1566, - "source": 164, - "pc": [ - 1481 - ] - }, - { - "teal": 1567, - "source": 164, - "pc": [ - 1482 - ] - }, - { - "teal": 1571, - "source": 164, - "pc": [ - 1483, - 1484, - 1485 - ] - }, - { - "teal": 1575, - "source": 165, - "pc": [ - 1486, - 1487 - ] - }, - { - "teal": 1576, - "source": 165, - "pc": [ - 1488 - ] - }, - { - "teal": 1577, - "source": 164, - "pc": [ - 1489 - ] - }, - { - "teal": 1582, - "source": 168, - "pc": [ - 1490 - ] - }, - { - "teal": 1585, - "source": 168, - "pc": [ - 1491, - 1492, - 1493 - ] - }, - { - "teal": 1586, - "source": 168, - "pc": [ - 1494 - ] - }, - { - "teal": 1587, - "source": 168, - "pc": [ - 1495 - ] - }, - { - "teal": 1588, - "source": 168, - "pc": [ - 1496 - ] - }, - { - "teal": 1589, - "source": 168, - "pc": [ - 1497 - ] - }, - { - "teal": 1592, - "source": 168, - "errorMessage": "argument 0 (a) for bitwiseNotU256 must be a uint256", - "pc": [ - 1498 - ] - }, - { - "teal": 1595, - "source": 168, - "pc": [ - 1499, - 1500, - 1501 - ] - }, - { - "teal": 1596, - "source": 168, - "pc": [ - 1502 - ] - }, - { - "teal": 1597, - "source": 168, - "pc": [ - 1503 - ] - }, - { - "teal": 1598, - "source": 168, - "pc": [ - 1504 - ] - }, - { - "teal": 1599, - "source": 168, - "pc": [ - 1505 - ] - }, - { - "teal": 1602, - "source": 168, - "errorMessage": "bitwiseNotU256 return value overflowed 256 bits", - "pc": [ - 1506 - ] - }, - { - "teal": 1603, - "source": 168, - "pc": [ - 1507 - ] - }, - { - "teal": 1604, - "source": 168, - "pc": [ - 1508 - ] - }, - { - "teal": 1605, - "source": 168, - "pc": [ - 1509 - ] - }, - { - "teal": 1606, - "source": 168, - "pc": [ - 1510 - ] - }, - { - "teal": 1607, - "source": 168, - "pc": [ - 1511 - ] - }, - { - "teal": 1608, - "source": 168, - "pc": [ - 1512 - ] - }, - { - "teal": 1609, - "source": 168, - "pc": [ - 1513 - ] - }, - { - "teal": 1610, - "source": 168, - "pc": [ - 1514 - ] - }, - { - "teal": 1611, - "source": 168, - "pc": [ - 1515 - ] - }, - { - "teal": 1612, - "source": 168, - "pc": [ - 1516 - ] - }, - { - "teal": 1613, - "source": 168, - "pc": [ - 1517 - ] - }, - { - "teal": 1614, - "source": 168, - "pc": [ - 1518 - ] - }, - { - "teal": 1615, - "source": 168, - "pc": [ - 1519 - ] - }, - { - "teal": 1619, - "source": 168, - "pc": [ - 1520, - 1521, - 1522 - ] - }, - { - "teal": 1623, - "source": 169, - "pc": [ - 1523, - 1524 - ] - }, - { - "teal": 1624, - "source": 169, - "pc": [ - 1525 - ] - }, - { - "teal": 1625, - "source": 168, - "pc": [ - 1526 - ] - }, - { - "teal": 1630, - "source": 172, - "pc": [ - 1527 - ] - }, - { - "teal": 1633, - "source": 172, - "pc": [ - 1528, - 1529, - 1530 - ] - }, - { - "teal": 1634, - "source": 172, - "pc": [ - 1531 - ] - }, - { - "teal": 1637, - "source": 172, - "pc": [ - 1532, - 1533, - 1534 - ] - }, - { - "teal": 1638, - "source": 172, - "pc": [ - 1535 - ] - }, - { - "teal": 1641, - "source": 172, - "pc": [ - 1536, - 1537, - 1538 - ] - }, - { - "teal": 1642, - "source": 172, - "pc": [ - 1539 - ] - }, - { - "teal": 1643, - "source": 172, - "pc": [ - 1540 - ] - }, - { - "teal": 1644, - "source": 172, - "pc": [ - 1541 - ] - }, - { - "teal": 1645, - "source": 172, - "pc": [ - 1542 - ] - }, - { - "teal": 1646, - "source": 172, - "pc": [ - 1543 - ] - }, - { - "teal": 1650, - "source": 172, - "pc": [ - 1544, - 1545, - 1546 - ] - }, - { - "teal": 1653, - "source": 172, - "pc": [ - 1547 - ] - }, - { - "teal": 1654, - "source": 172, - "pc": [ - 1548 - ] - }, - { - "teal": 1658, - "source": 173, - "pc": [ - 1549, - 1550 - ] - }, - { - "teal": 1659, - "source": 173, - "pc": [ - 1551, - 1552 - ] - }, - { - "teal": 1660, - "source": 173, - "pc": [ - 1553 - ] - }, - { - "teal": 1661, - "source": 173, - "pc": [ - 1554, - 1555 - ] - }, - { - "teal": 1662, - "source": 173, - "pc": [ - 1556, - 1557 - ] - }, - { - "teal": 1666, - "source": 177, - "pc": [ - 1558, - 1559 - ] - }, - { - "teal": 1669, - "source": 172, - "pc": [ - 1560, - 1561 - ] - }, - { - "teal": 1672, - "source": 172, - "pc": [ - 1562, - 1563 - ] - }, - { - "teal": 1673, - "source": 172, - "pc": [ - 1564 - ] - }, - { - "teal": 1678, - "source": 180, - "pc": [ - 1565 - ] - }, - { - "teal": 1681, - "source": 180, - "pc": [ - 1566, - 1567, - 1568 - ] - }, - { - "teal": 1682, - "source": 180, - "pc": [ - 1569 - ] - }, - { - "teal": 1685, - "source": 180, - "pc": [ - 1570, - 1571, - 1572 - ] - }, - { - "teal": 1686, - "source": 180, - "pc": [ - 1573 - ] - }, - { - "teal": 1689, - "source": 180, - "pc": [ - 1574, - 1575, - 1576 - ] - }, - { - "teal": 1690, - "source": 180, - "pc": [ - 1577 - ] - }, - { - "teal": 1691, - "source": 180, - "pc": [ - 1578 - ] - }, - { - "teal": 1692, - "source": 180, - "pc": [ - 1579 - ] - }, - { - "teal": 1693, - "source": 180, - "pc": [ - 1580 - ] - }, - { - "teal": 1694, - "source": 180, - "pc": [ - 1581 - ] - }, - { - "teal": 1698, - "source": 180, - "pc": [ - 1582, - 1583, - 1584 - ] - }, - { - "teal": 1701, - "source": 180, - "pc": [ - 1585 - ] - }, - { - "teal": 1702, - "source": 180, - "pc": [ - 1586 - ] - }, - { - "teal": 1706, - "source": 181, - "pc": [ - 1587, - 1588 - ] - }, - { - "teal": 1707, - "source": 181, - "pc": [ - 1589, - 1590 - ] - }, - { - "teal": 1708, - "source": 181, - "pc": [ - 1591 - ] - }, - { - "teal": 1709, - "source": 181, - "pc": [ - 1592, - 1593 - ] - }, - { - "teal": 1710, - "source": 181, - "pc": [ - 1594, - 1595 - ] - }, - { - "teal": 1714, - "source": 185, - "pc": [ - 1596, - 1597 - ] - }, - { - "teal": 1717, - "source": 180, - "pc": [ - 1598, - 1599 - ] - }, - { - "teal": 1720, - "source": 180, - "pc": [ - 1600, - 1601 - ] - }, - { - "teal": 1721, - "source": 180, - "pc": [ - 1602 - ] - }, - { - "teal": 1726, - "source": 188, - "pc": [ - 1603 - ] - }, - { - "teal": 1729, - "source": 188, - "pc": [ - 1604, - 1605, - 1606 - ] - }, - { - "teal": 1730, - "source": 188, - "pc": [ - 1607 - ] - }, - { - "teal": 1733, - "source": 188, - "pc": [ - 1608, - 1609, - 1610 - ] - }, - { - "teal": 1734, - "source": 188, - "pc": [ - 1611 - ] - }, - { - "teal": 1737, - "source": 188, - "pc": [ - 1612, - 1613, - 1614 - ] - }, - { - "teal": 1738, - "source": 188, - "pc": [ - 1615 - ] - }, - { - "teal": 1739, - "source": 188, - "pc": [ - 1616 - ] - }, - { - "teal": 1740, - "source": 188, - "pc": [ - 1617 - ] - }, - { - "teal": 1741, - "source": 188, - "pc": [ - 1618 - ] - }, - { - "teal": 1742, - "source": 188, - "pc": [ - 1619 - ] - }, - { - "teal": 1746, - "source": 188, - "pc": [ - 1620, - 1621, - 1622 - ] - }, - { - "teal": 1749, - "source": 188, - "pc": [ - 1623 - ] - }, - { - "teal": 1750, - "source": 188, - "pc": [ - 1624 - ] - }, - { - "teal": 1754, - "source": 189, - "pc": [ - 1625, - 1626 - ] - }, - { - "teal": 1755, - "source": 189, - "pc": [ - 1627, - 1628 - ] - }, - { - "teal": 1756, - "source": 189, - "pc": [ - 1629 - ] - }, - { - "teal": 1757, - "source": 189, - "pc": [ - 1630, - 1631 - ] - }, - { - "teal": 1758, - "source": 189, - "pc": [ - 1632, - 1633 - ] - }, - { - "teal": 1762, - "source": 193, - "pc": [ - 1634, - 1635 - ] - }, - { - "teal": 1765, - "source": 188, - "pc": [ - 1636, - 1637 - ] - }, - { - "teal": 1768, - "source": 188, - "pc": [ - 1638, - 1639 - ] - }, - { - "teal": 1769, - "source": 188, - "pc": [ - 1640 - ] - }, - { - "teal": 1774, - "source": 196, - "pc": [ - 1641 - ] - }, - { - "teal": 1777, - "source": 196, - "pc": [ - 1642, - 1643, - 1644 - ] - }, - { - "teal": 1778, - "source": 196, - "pc": [ - 1645 - ] - }, - { - "teal": 1781, - "source": 196, - "pc": [ - 1646, - 1647, - 1648 - ] - }, - { - "teal": 1782, - "source": 196, - "pc": [ - 1649 - ] - }, - { - "teal": 1785, - "source": 196, - "pc": [ - 1650, - 1651, - 1652 - ] - }, - { - "teal": 1786, - "source": 196, - "pc": [ - 1653 - ] - }, - { - "teal": 1787, - "source": 196, - "pc": [ - 1654 - ] - }, - { - "teal": 1788, - "source": 196, - "pc": [ - 1655 - ] - }, - { - "teal": 1789, - "source": 196, - "pc": [ - 1656 - ] - }, - { - "teal": 1790, - "source": 196, - "pc": [ - 1657 - ] - }, - { - "teal": 1794, - "source": 196, - "pc": [ - 1658, - 1659, - 1660 - ] - }, - { - "teal": 1798, - "source": 197, - "pc": [ - 1661, - 1662 - ] - }, - { - "teal": 1799, - "source": 197, - "pc": [ - 1663, - 1664 - ] - }, - { - "teal": 1800, - "source": 197, - "pc": [ - 1665, - 1666 - ] - }, - { - "teal": 1801, - "source": 197, - "pc": [ - 1667 - ] - }, - { - "teal": 1802, - "source": 196, - "pc": [ - 1668 - ] - }, - { - "teal": 1807, - "source": 200, - "pc": [ - 1669 - ] - }, - { - "teal": 1810, - "source": 200, - "pc": [ - 1670, - 1671, - 1672 - ] - }, - { - "teal": 1811, - "source": 200, - "pc": [ - 1673 - ] - }, - { - "teal": 1814, - "source": 200, - "pc": [ - 1674, - 1675, - 1676 - ] - }, - { - "teal": 1815, - "source": 200, - "pc": [ - 1677 - ] - }, - { - "teal": 1818, - "source": 200, - "pc": [ - 1678, - 1679, - 1680 - ] - }, - { - "teal": 1819, - "source": 200, - "pc": [ - 1681 - ] - }, - { - "teal": 1820, - "source": 200, - "pc": [ - 1682 - ] - }, - { - "teal": 1821, - "source": 200, - "pc": [ - 1683 - ] - }, - { - "teal": 1822, - "source": 200, - "pc": [ - 1684 - ] - }, - { - "teal": 1823, - "source": 200, - "pc": [ - 1685 - ] - }, - { - "teal": 1827, - "source": 200, - "pc": [ - 1686, - 1687, - 1688 - ] - }, - { - "teal": 1830, - "source": 200, - "pc": [ - 1689 - ] - }, - { - "teal": 1831, - "source": 200, - "pc": [ - 1690, - 1691 - ] - }, - { - "teal": 1835, - "source": 201, - "pc": [ - 1692, - 1693 - ] - }, - { - "teal": 1836, - "source": 201, - "pc": [ - 1694, - 1695 - ] - }, - { - "teal": 1837, - "source": 201, - "pc": [ - 1696, - 1697 - ] - }, - { - "teal": 1838, - "source": 201, - "pc": [ - 1698, - 1699 - ] - }, - { - "teal": 1839, - "source": 201, - "pc": [ - 1700 - ] - }, - { - "teal": 1840, - "source": 201, - "pc": [ - 1701, - 1702 - ] - }, - { - "teal": 1841, - "source": 201, - "pc": [ - 1703, - 1704 - ] - }, - { - "teal": 1842, - "source": 201, - "pc": [ - 1705, - 1706 - ] - }, - { - "teal": 1843, - "source": 201, - "pc": [ - 1707, - 1708 - ] - }, - { - "teal": 1847, - "source": 205, - "pc": [ - 1709, - 1710 - ] - }, - { - "teal": 1850, - "source": 200, - "pc": [ - 1711, - 1712 - ] - }, - { - "teal": 1853, - "source": 200, - "pc": [ - 1713, - 1714 - ] - }, - { - "teal": 1854, - "source": 200, - "pc": [ - 1715 - ] - }, - { - "teal": 1859, - "source": 208, - "pc": [ - 1716 - ] - }, - { - "teal": 1862, - "source": 208, - "pc": [ - 1717, - 1718, - 1719 - ] - }, - { - "teal": 1863, - "source": 208, - "pc": [ - 1720 - ] - }, - { - "teal": 1864, - "source": 208, - "pc": [ - 1721 - ] - }, - { - "teal": 1865, - "source": 208, - "pc": [ - 1722 - ] - }, - { - "teal": 1866, - "source": 208, - "pc": [ - 1723 - ] - }, - { - "teal": 1867, - "source": 208, - "pc": [ - 1724 - ] - }, - { - "teal": 1871, - "source": 208, - "pc": [ - 1725, - 1726, - 1727 - ] - }, - { - "teal": 1874, - "source": 208, - "pc": [ - 1728 - ] - }, - { - "teal": 1875, - "source": 208, - "pc": [ - 1729, - 1730 - ] - }, - { - "teal": 1879, - "source": 209, - "pc": [ - 1731, - 1732, - 1733, - 1734, - 1735, - 1736, - 1737, - 1738, - 1739, - 1740, - 1741, - 1742, - 1743, - 1744, - 1745, - 1746, - 1747, - 1748, - 1749, - 1750, - 1751, - 1752, - 1753, - 1754, - 1755, - 1756, - 1757, - 1758, - 1759, - 1760, - 1761, - 1762, - 1763, - 1764 - ] - }, - { - "teal": 1880, - "source": 209, - "pc": [ - 1765, - 1766 - ] - }, - { - "teal": 1884, - "source": 210, - "pc": [ - 1767, - 1768 - ] - }, - { - "teal": 1885, - "source": 210, - "pc": [ - 1769, - 1770 - ] - }, - { - "teal": 1889, - "source": 212, - "pc": [ - 1771, - 1772 - ] - }, - { - "teal": 1890, - "source": 212, - "pc": [ - 1773, - 1774 - ] - }, - { - "teal": 1891, - "source": 212, - "pc": [ - 1775 - ] - }, - { - "teal": 1892, - "source": 212, - "pc": [ - 1776, - 1777 - ] - }, - { - "teal": 1896, - "source": 214, - "pc": [ - 1778, - 1779 - ] - }, - { - "teal": 1897, - "source": 214, - "pc": [ - 1780 - ] - }, - { - "teal": 1898, - "source": 214, - "pc": [ - 1781 - ] - }, - { - "teal": 1899, - "source": 214, - "pc": [ - 1782, - 1783 - ] - }, - { - "teal": 1900, - "source": 214, - "pc": [ - 1784 - ] - }, - { - "teal": 1903, - "source": 214, - "errorMessage": "A as uint64 overflowed 64 bits", - "pc": [ - 1785 - ] - }, - { - "teal": 1904, - "source": 214, - "pc": [ - 1786, - 1787 - ] - }, - { - "teal": 1905, - "source": 214, - "pc": [ - 1788 - ] - }, - { - "teal": 1906, - "source": 214, - "pc": [ - 1789 - ] - }, - { - "teal": 1907, - "source": 214, - "pc": [ - 1790 - ] - }, - { - "teal": 1908, - "source": 214, - "pc": [ - 1791 - ] - }, - { - "teal": 1909, - "source": 214, - "pc": [ - 1792 - ] - }, - { - "teal": 1910, - "source": 214, - "pc": [ - 1793 - ] - }, - { - "teal": 1911, - "source": 214, - "pc": [ - 1794 - ] - }, - { - "teal": 1912, - "source": 214, - "pc": [ - 1795 - ] - }, - { - "teal": 1913, - "source": 214, - "pc": [ - 1796 - ] - }, - { - "teal": 1914, - "source": 214, - "pc": [ - 1797, - 1798 - ] - }, - { - "teal": 1918, - "source": 216, - "pc": [ - 1799, - 1800 - ] - }, - { - "teal": 1921, - "source": 208, - "pc": [ - 1801, - 1802 - ] - }, - { - "teal": 1924, - "source": 208, - "pc": [ - 1803, - 1804 - ] - }, - { - "teal": 1925, - "source": 208, - "pc": [ - 1805 - ] - }, - { - "teal": 1930, - "source": 219, - "pc": [ - 1806 - ] - }, - { - "teal": 1933, - "source": 219, - "pc": [ - 1807, - 1808, - 1809 - ] - }, - { - "teal": 1934, - "source": 219, - "pc": [ - 1810 - ] - }, - { - "teal": 1935, - "source": 219, - "pc": [ - 1811 - ] - }, - { - "teal": 1936, - "source": 219, - "pc": [ - 1812, - 1813 - ] - }, - { - "teal": 1937, - "source": 219, - "pc": [ - 1814 - ] - }, - { - "teal": 1940, - "source": 219, - "errorMessage": "argument 0 (x) for foobar must be a uint128", - "pc": [ - 1815 - ] - }, - { - "teal": 1943, - "source": 219, - "pc": [ - 1816, - 1817, - 1818 - ] - }, - { - "teal": 1944, - "source": 219, - "pc": [ - 1819 - ] - }, - { - "teal": 1945, - "source": 219, - "pc": [ - 1820 - ] - }, - { - "teal": 1946, - "source": 219, - "pc": [ - 1821, - 1822 - ] - }, - { - "teal": 1947, - "source": 219, - "pc": [ - 1823 - ] - }, - { - "teal": 1950, - "source": 219, - "errorMessage": "foobar return value overflowed 128 bits", - "pc": [ - 1824 - ] - }, - { - "teal": 1951, - "source": 219, - "pc": [ - 1825, - 1826 - ] - }, - { - "teal": 1952, - "source": 219, - "pc": [ - 1827 - ] - }, - { - "teal": 1953, - "source": 219, - "pc": [ - 1828 - ] - }, - { - "teal": 1954, - "source": 219, - "pc": [ - 1829 - ] - }, - { - "teal": 1955, - "source": 219, - "pc": [ - 1830 - ] - }, - { - "teal": 1956, - "source": 219, - "pc": [ - 1831, - 1832 - ] - }, - { - "teal": 1957, - "source": 219, - "pc": [ - 1833 - ] - }, - { - "teal": 1958, - "source": 219, - "pc": [ - 1834 - ] - }, - { - "teal": 1959, - "source": 219, - "pc": [ - 1835 - ] - }, - { - "teal": 1960, - "source": 219, - "pc": [ - 1836 - ] - }, - { - "teal": 1961, - "source": 219, - "pc": [ - 1837 - ] - }, - { - "teal": 1962, - "source": 219, - "pc": [ - 1838 - ] - }, - { - "teal": 1963, - "source": 219, - "pc": [ - 1839 - ] - }, - { - "teal": 1967, - "source": 219, - "pc": [ - 1840, - 1841, - 1842 - ] - }, - { - "teal": 1970, - "source": 219, - "pc": [ - 1843 - ] - }, - { - "teal": 1974, - "source": 220, - "pc": [ - 1844, - 1845 - ] - }, - { - "teal": 1975, - "source": 220, - "pc": [ - 1846, - 1847, - 1848, - 1849, - 1850, - 1851, - 1852, - 1853, - 1854, - 1855, - 1856, - 1857, - 1858, - 1859, - 1860, - 1861, - 1862, - 1863 - ] - }, - { - "teal": 1976, - "source": 220, - "pc": [ - 1864 - ] - }, - { - "teal": 1977, - "source": 220, - "pc": [ - 1865 - ] - }, - { - "teal": 1978, - "source": 220, - "pc": [ - 1866 - ] - }, - { - "teal": 1979, - "source": 220, - "pc": [ - 1867, - 1868 - ] - }, - { - "teal": 1980, - "source": 220, - "pc": [ - 1869 - ] - }, - { - "teal": 1983, - "source": 220, - "errorMessage": "x / (30000 as uint128) overflowed 128 bits", - "pc": [ - 1870 - ] - }, - { - "teal": 1984, - "source": 220, - "pc": [ - 1871, - 1872 - ] - }, - { - "teal": 1985, - "source": 220, - "pc": [ - 1873 - ] - }, - { - "teal": 1986, - "source": 220, - "pc": [ - 1874 - ] - }, - { - "teal": 1987, - "source": 220, - "pc": [ - 1875 - ] - }, - { - "teal": 1988, - "source": 220, - "pc": [ - 1876 - ] - }, - { - "teal": 1989, - "source": 220, - "pc": [ - 1877, - 1878 - ] - }, - { - "teal": 1990, - "source": 220, - "pc": [ - 1879 - ] - }, - { - "teal": 1991, - "source": 220, - "pc": [ - 1880 - ] - }, - { - "teal": 1992, - "source": 220, - "pc": [ - 1881 - ] - }, - { - "teal": 1993, - "source": 220, - "pc": [ - 1882, - 1883 - ] - }, - { - "teal": 1997, - "source": 222, - "pc": [ - 1884, - 1885 - ] - }, - { - "teal": 2000, - "source": 219, - "pc": [ - 1886, - 1887 - ] - }, - { - "teal": 2001, - "source": 219, - "pc": [ - 1888 - ] - }, - { - "teal": 2006, - "source": 225, - "pc": [ - 1889 - ] - }, - { - "teal": 2009, - "source": 225, - "pc": [ - 1890, - 1891, - 1892 - ] - }, - { - "teal": 2010, - "source": 225, - "pc": [ - 1893 - ] - }, - { - "teal": 2011, - "source": 225, - "pc": [ - 1894 - ] - }, - { - "teal": 2012, - "source": 225, - "pc": [ - 1895 - ] - }, - { - "teal": 2013, - "source": 225, - "pc": [ - 1896 - ] - }, - { - "teal": 2016, - "source": 225, - "errorMessage": "uintFromHex return value overflowed 256 bits", - "pc": [ - 1897 - ] - }, - { - "teal": 2017, - "source": 225, - "pc": [ - 1898 - ] - }, - { - "teal": 2018, - "source": 225, - "pc": [ - 1899 - ] - }, - { - "teal": 2019, - "source": 225, - "pc": [ - 1900 - ] - }, - { - "teal": 2020, - "source": 225, - "pc": [ - 1901 - ] - }, - { - "teal": 2021, - "source": 225, - "pc": [ - 1902 - ] - }, - { - "teal": 2022, - "source": 225, - "pc": [ - 1903 - ] - }, - { - "teal": 2023, - "source": 225, - "pc": [ - 1904 - ] - }, - { - "teal": 2024, - "source": 225, - "pc": [ - 1905 - ] - }, - { - "teal": 2025, - "source": 225, - "pc": [ - 1906 - ] - }, - { - "teal": 2026, - "source": 225, - "pc": [ - 1907 - ] - }, - { - "teal": 2027, - "source": 225, - "pc": [ - 1908 - ] - }, - { - "teal": 2028, - "source": 225, - "pc": [ - 1909 - ] - }, - { - "teal": 2029, - "source": 225, - "pc": [ - 1910 - ] - }, - { - "teal": 2033, - "source": 225, - "pc": [ - 1911, - 1912, - 1913 - ] - }, - { - "teal": 2037, - "source": 226, - "pc": [ - 1914, - 1915, - 1916, - 1917, - 1918, - 1919, - 1920, - 1921, - 1922, - 1923, - 1924, - 1925, - 1926, - 1927, - 1928, - 1929, - 1930, - 1931, - 1932, - 1933, - 1934, - 1935, - 1936, - 1937, - 1938, - 1939, - 1940, - 1941, - 1942, - 1943, - 1944, - 1945, - 1946, - 1947 - ] - }, - { - "teal": 2038, - "source": 225, - "pc": [ - 1948 - ] - }, - { - "teal": 2041, - "source": 4, - "pc": [ - 1949 - ] - }, - { - "teal": 2042, - "source": 4, - "pc": [ - 1950 - ] - }, - { - "teal": 2045, - "source": 4, - "pc": [ - 1951, - 1952, - 1953, - 1954, - 1955, - 1956 - ] - }, - { - "teal": 2046, - "source": 4, - "pc": [ - 1957, - 1958, - 1959 - ] - }, - { - "teal": 2047, - "source": 4, - "pc": [ - 1960, - 1961, - 1962, - 1963 - ] - }, - { - "teal": 2050, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 1964 - ] - }, - { - "teal": 2053, - "source": 4, - "pc": [ - 1965, - 1966, - 1967, - 1968, - 1969, - 1970 - ] - }, - { - "teal": 2054, - "source": 4, - "pc": [ - 1971, - 1972, - 1973, - 1974, - 1975, - 1976 - ] - }, - { - "teal": 2055, - "source": 4, - "pc": [ - 1977, - 1978, - 1979, - 1980, - 1981, - 1982 - ] - }, - { - "teal": 2056, - "source": 4, - "pc": [ - 1983, - 1984, - 1985, - 1986, - 1987, - 1988 - ] - }, - { - "teal": 2057, - "source": 4, - "pc": [ - 1989, - 1990, - 1991, - 1992, - 1993, - 1994 - ] - }, - { - "teal": 2058, - "source": 4, - "pc": [ - 1995, - 1996, - 1997, - 1998, - 1999, - 2000 - ] - }, - { - "teal": 2059, - "source": 4, - "pc": [ - 2001, - 2002, - 2003, - 2004, - 2005, - 2006 - ] - }, - { - "teal": 2060, - "source": 4, - "pc": [ - 2007, - 2008, - 2009, - 2010, - 2011, - 2012 - ] - }, - { - "teal": 2061, - "source": 4, - "pc": [ - 2013, - 2014, - 2015, - 2016, - 2017, - 2018 - ] - }, - { - "teal": 2062, - "source": 4, - "pc": [ - 2019, - 2020, - 2021, - 2022, - 2023, - 2024 - ] - }, - { - "teal": 2063, - "source": 4, - "pc": [ - 2025, - 2026, - 2027, - 2028, - 2029, - 2030 - ] - }, - { - "teal": 2064, - "source": 4, - "pc": [ - 2031, - 2032, - 2033, - 2034, - 2035, - 2036 - ] - }, - { - "teal": 2065, - "source": 4, - "pc": [ - 2037, - 2038, - 2039, - 2040, - 2041, - 2042 - ] - }, - { - "teal": 2066, - "source": 4, - "pc": [ - 2043, - 2044, - 2045, - 2046, - 2047, - 2048 - ] - }, - { - "teal": 2067, - "source": 4, - "pc": [ - 2049, - 2050, - 2051, - 2052, - 2053, - 2054 - ] - }, - { - "teal": 2068, - "source": 4, - "pc": [ - 2055, - 2056, - 2057, - 2058, - 2059, - 2060 - ] - }, - { - "teal": 2069, - "source": 4, - "pc": [ - 2061, - 2062, - 2063, - 2064, - 2065, - 2066 - ] - }, - { - "teal": 2070, - "source": 4, - "pc": [ - 2067, - 2068, - 2069, - 2070, - 2071, - 2072 - ] - }, - { - "teal": 2071, - "source": 4, - "pc": [ - 2073, - 2074, - 2075, - 2076, - 2077, - 2078 - ] - }, - { - "teal": 2072, - "source": 4, - "pc": [ - 2079, - 2080, - 2081, - 2082, - 2083, - 2084 - ] - }, - { - "teal": 2073, - "source": 4, - "pc": [ - 2085, - 2086, - 2087, - 2088, - 2089, - 2090 - ] - }, - { - "teal": 2074, - "source": 4, - "pc": [ - 2091, - 2092, - 2093, - 2094, - 2095, - 2096 - ] - }, - { - "teal": 2075, - "source": 4, - "pc": [ - 2097, - 2098, - 2099, - 2100, - 2101, - 2102 - ] - }, - { - "teal": 2076, - "source": 4, - "pc": [ - 2103, - 2104, - 2105, - 2106, - 2107, - 2108 - ] - }, - { - "teal": 2077, - "source": 4, - "pc": [ - 2109, - 2110, - 2111, - 2112, - 2113, - 2114 - ] - }, - { - "teal": 2078, - "source": 4, - "pc": [ - 2115, - 2116, - 2117, - 2118, - 2119, - 2120 - ] - }, - { - "teal": 2079, - "source": 4, - "pc": [ - 2121, - 2122, - 2123, - 2124, - 2125, - 2126 - ] - }, - { - "teal": 2080, - "source": 4, - "pc": [ - 2127, - 2128, - 2129, - 2130, - 2131, - 2132 - ] - }, - { - "teal": 2081, - "source": 4, - "pc": [ - 2133, - 2134, - 2135, - 2136, - 2137, - 2138 - ] - }, - { - "teal": 2082, - "source": 4, - "pc": [ - 2139, - 2140, - 2141, - 2142, - 2143, - 2144 - ] - }, - { - "teal": 2083, - "source": 4, - "pc": [ - 2145, - 2146, - 2147, - 2148, - 2149, - 2150 - ] - }, - { - "teal": 2084, - "source": 4, - "pc": [ - 2151, - 2152, - 2153, - 2154, - 2155, - 2156 - ] - }, - { - "teal": 2085, - "source": 4, - "pc": [ - 2157, - 2158, - 2159, - 2160, - 2161, - 2162 - ] - }, - { - "teal": 2086, - "source": 4, - "pc": [ - 2163, - 2164, - 2165, - 2166, - 2167, - 2168 - ] - }, - { - "teal": 2087, - "source": 4, - "pc": [ - 2169, - 2170, - 2171, - 2172, - 2173, - 2174 - ] - }, - { - "teal": 2088, - "source": 4, - "pc": [ - 2175, - 2176, - 2177, - 2178, - 2179, - 2180 - ] - }, - { - "teal": 2089, - "source": 4, - "pc": [ - 2181, - 2182, - 2183, - 2184, - 2185, - 2186 - ] - }, - { - "teal": 2090, - "source": 4, - "pc": [ - 2187, - 2188, - 2189, - 2190, - 2191, - 2192 - ] - }, - { - "teal": 2091, - "source": 4, - "pc": [ - 2193, - 2194, - 2195, - 2196, - 2197, - 2198 - ] - }, - { - "teal": 2092, - "source": 4, - "pc": [ - 2199, - 2200, - 2201, - 2202, - 2203, - 2204 - ] - }, - { - "teal": 2093, - "source": 4, - "pc": [ - 2205, - 2206, - 2207, - 2208, - 2209, - 2210 - ] - }, - { - "teal": 2094, - "source": 4, - "pc": [ - 2211, - 2212, - 2213 - ] - }, - { - "teal": 2095, - "source": 4, - "pc": [ - 2214, - 2215, - 2216, - 2217, - 2218, - 2219, - 2220, - 2221, - 2222, - 2223, - 2224, - 2225, - 2226, - 2227, - 2228, - 2229, - 2230, - 2231, - 2232, - 2233, - 2234, - 2235, - 2236, - 2237, - 2238, - 2239, - 2240, - 2241, - 2242, - 2243, - 2244, - 2245, - 2246, - 2247, - 2248, - 2249, - 2250, - 2251, - 2252, - 2253, - 2254, - 2255, - 2256, - 2257, - 2258, - 2259, - 2260, - 2261, - 2262, - 2263, - 2264, - 2265, - 2266, - 2267, - 2268, - 2269, - 2270, - 2271, - 2272, - 2273, - 2274, - 2275, - 2276, - 2277, - 2278, - 2279, - 2280, - 2281, - 2282, - 2283, - 2284, - 2285, - 2286, - 2287, - 2288, - 2289, - 2290, - 2291, - 2292, - 2293, - 2294, - 2295, - 2296, - 2297 - ] - }, - { - "teal": 2098, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 2298 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 158, + 159 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 160 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 161, + 162 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 163 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 164, + 165 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 166 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 193 + ] + }, + { + "teal": 28, + "source": 7, + "pc": [ + 194 + ] + }, + { + "teal": 31, + "source": 7, + "pc": [ + 195, + 196, + 197 + ] + }, + { + "teal": 32, + "source": 7, + "pc": [ + 198 + ] + }, + { + "teal": 35, + "source": 7, + "pc": [ + 199, + 200, + 201 + ] + }, + { + "teal": 36, + "source": 7, + "pc": [ + 202 + ] + }, + { + "teal": 39, + "source": 7, + "pc": [ + 203, + 204, + 205 + ] + }, + { + "teal": 40, + "source": 7, + "pc": [ + 206 + ] + }, + { + "teal": 41, + "source": 7, + "pc": [ + 207 + ] + }, + { + "teal": 42, + "source": 7, + "pc": [ + 208 + ] + }, + { + "teal": 43, + "source": 7, + "pc": [ + 209 + ] + }, + { + "teal": 44, + "source": 7, + "pc": [ + 210 + ] + }, + { + "teal": 48, + "source": 7, + "pc": [ + 211, + 212, + 213 + ] + }, + { + "teal": 52, + "source": 8, + "pc": [ + 214, + 215 + ] + }, + { + "teal": 53, + "source": 8, + "pc": [ + 216, + 217 + ] + }, + { + "teal": 54, + "source": 8, + "pc": [ + 218 + ] + }, + { + "teal": 55, + "source": 7, + "pc": [ + 219 + ] + }, + { + "teal": 60, + "source": 11, + "pc": [ + 220 + ] + }, + { + "teal": 63, + "source": 11, + "pc": [ + 221, + 222, + 223 + ] + }, + { + "teal": 64, + "source": 11, + "pc": [ + 224 + ] + }, + { + "teal": 67, + "source": 11, + "pc": [ + 225, + 226, + 227 + ] + }, + { + "teal": 68, + "source": 11, + "pc": [ + 228 + ] + }, + { + "teal": 71, + "source": 11, + "pc": [ + 229, + 230, + 231 + ] + }, + { + "teal": 72, + "source": 11, + "pc": [ + 232 + ] + }, + { + "teal": 73, + "source": 11, + "pc": [ + 233 + ] + }, + { + "teal": 74, + "source": 11, + "pc": [ + 234 + ] + }, + { + "teal": 75, + "source": 11, + "pc": [ + 235 + ] + }, + { + "teal": 76, + "source": 11, + "pc": [ + 236 + ] + }, + { + "teal": 80, + "source": 11, + "pc": [ + 237, + 238, + 239 + ] + }, + { + "teal": 84, + "source": 12, + "pc": [ + 240, + 241 + ] + }, + { + "teal": 85, + "source": 12, + "pc": [ + 242, + 243 + ] + }, + { + "teal": 86, + "source": 12, + "pc": [ + 244 + ] + }, + { + "teal": 87, + "source": 11, + "pc": [ + 245 + ] + }, + { + "teal": 92, + "source": 15, + "pc": [ + 246 + ] + }, + { + "teal": 95, + "source": 15, + "pc": [ + 247, + 248, + 249 + ] + }, + { + "teal": 96, + "source": 15, + "pc": [ + 250 + ] + }, + { + "teal": 99, + "source": 15, + "pc": [ + 251, + 252, + 253 + ] + }, + { + "teal": 100, + "source": 15, + "pc": [ + 254 + ] + }, + { + "teal": 103, + "source": 15, + "pc": [ + 255, + 256, + 257 + ] + }, + { + "teal": 104, + "source": 15, + "pc": [ + 258 + ] + }, + { + "teal": 105, + "source": 15, + "pc": [ + 259 + ] + }, + { + "teal": 106, + "source": 15, + "pc": [ + 260 + ] + }, + { + "teal": 107, + "source": 15, + "pc": [ + 261 + ] + }, + { + "teal": 108, + "source": 15, + "pc": [ + 262 + ] + }, + { + "teal": 112, + "source": 15, + "pc": [ + 263, + 264, + 265 + ] + }, + { + "teal": 116, + "source": 16, + "pc": [ + 266, + 267 + ] + }, + { + "teal": 117, + "source": 16, + "pc": [ + 268, + 269 + ] + }, + { + "teal": 118, + "source": 16, + "pc": [ + 270 + ] + }, + { + "teal": 119, + "source": 15, + "pc": [ + 271 + ] + }, + { + "teal": 124, + "source": 19, + "pc": [ + 272 + ] + }, + { + "teal": 127, + "source": 19, + "pc": [ + 273, + 274, + 275 + ] + }, + { + "teal": 128, + "source": 19, + "pc": [ + 276 + ] + }, + { + "teal": 131, + "source": 19, + "pc": [ + 277, + 278, + 279 + ] + }, + { + "teal": 132, + "source": 19, + "pc": [ + 280 + ] + }, + { + "teal": 135, + "source": 19, + "pc": [ + 281, + 282, + 283 + ] + }, + { + "teal": 136, + "source": 19, + "pc": [ + 284 + ] + }, + { + "teal": 137, + "source": 19, + "pc": [ + 285 + ] + }, + { + "teal": 138, + "source": 19, + "pc": [ + 286 + ] + }, + { + "teal": 139, + "source": 19, + "pc": [ + 287 + ] + }, + { + "teal": 140, + "source": 19, + "pc": [ + 288 + ] + }, + { + "teal": 144, + "source": 19, + "pc": [ + 289, + 290, + 291 + ] + }, + { + "teal": 148, + "source": 20, + "pc": [ + 292, + 293 + ] + }, + { + "teal": 149, + "source": 20, + "pc": [ + 294, + 295 + ] + }, + { + "teal": 150, + "source": 20, + "pc": [ + 296 + ] + }, + { + "teal": 151, + "source": 19, + "pc": [ + 297 + ] + }, + { + "teal": 156, + "source": 23, + "pc": [ + 298 + ] + }, + { + "teal": 159, + "source": 23, + "pc": [ + 299, + 300, + 301 + ] + }, + { + "teal": 160, + "source": 23, + "pc": [ + 302 + ] + }, + { + "teal": 161, + "source": 23, + "pc": [ + 303 + ] + }, + { + "teal": 162, + "source": 23, + "pc": [ + 304 + ] + }, + { + "teal": 163, + "source": 23, + "pc": [ + 305 + ] + }, + { + "teal": 166, + "source": 23, + "errorMessage": "argument 0 (b) for u256plus must be a uint256", + "pc": [ + 306 + ] + }, + { + "teal": 169, + "source": 23, + "pc": [ + 307, + 308, + 309 + ] + }, + { + "teal": 170, + "source": 23, + "pc": [ + 310 + ] + }, + { + "teal": 171, + "source": 23, + "pc": [ + 311 + ] + }, + { + "teal": 172, + "source": 23, + "pc": [ + 312 + ] + }, + { + "teal": 173, + "source": 23, + "pc": [ + 313 + ] + }, + { + "teal": 176, + "source": 23, + "errorMessage": "argument 1 (a) for u256plus must be a uint256", + "pc": [ + 314 + ] + }, + { + "teal": 179, + "source": 23, + "pc": [ + 315, + 316, + 317 + ] + }, + { + "teal": 180, + "source": 23, + "pc": [ + 318 + ] + }, + { + "teal": 181, + "source": 23, + "pc": [ + 319 + ] + }, + { + "teal": 182, + "source": 23, + "pc": [ + 320 + ] + }, + { + "teal": 183, + "source": 23, + "pc": [ + 321 + ] + }, + { + "teal": 186, + "source": 23, + "errorMessage": "u256plus return value overflowed 256 bits", + "pc": [ + 322 + ] + }, + { + "teal": 187, + "source": 23, + "pc": [ + 323 + ] + }, + { + "teal": 188, + "source": 23, + "pc": [ + 324 + ] + }, + { + "teal": 189, + "source": 23, + "pc": [ + 325 + ] + }, + { + "teal": 190, + "source": 23, + "pc": [ + 326 + ] + }, + { + "teal": 191, + "source": 23, + "pc": [ + 327 + ] + }, + { + "teal": 192, + "source": 23, + "pc": [ + 328 + ] + }, + { + "teal": 193, + "source": 23, + "pc": [ + 329 + ] + }, + { + "teal": 194, + "source": 23, + "pc": [ + 330 + ] + }, + { + "teal": 195, + "source": 23, + "pc": [ + 331 + ] + }, + { + "teal": 196, + "source": 23, + "pc": [ + 332 + ] + }, + { + "teal": 197, + "source": 23, + "pc": [ + 333 + ] + }, + { + "teal": 198, + "source": 23, + "pc": [ + 334 + ] + }, + { + "teal": 199, + "source": 23, + "pc": [ + 335 + ] + }, + { + "teal": 203, + "source": 23, + "pc": [ + 336, + 337, + 338 + ] + }, + { + "teal": 207, + "source": 24, + "pc": [ + 339, + 340 + ] + }, + { + "teal": 208, + "source": 24, + "pc": [ + 341, + 342 + ] + }, + { + "teal": 209, + "source": 24, + "pc": [ + 343 + ] + }, + { + "teal": 210, + "source": 23, + "pc": [ + 344 + ] + }, + { + "teal": 215, + "source": 27, + "pc": [ + 345 + ] + }, + { + "teal": 218, + "source": 27, + "pc": [ + 346, + 347, + 348 + ] + }, + { + "teal": 219, + "source": 27, + "pc": [ + 349 + ] + }, + { + "teal": 220, + "source": 27, + "pc": [ + 350 + ] + }, + { + "teal": 221, + "source": 27, + "pc": [ + 351 + ] + }, + { + "teal": 222, + "source": 27, + "pc": [ + 352 + ] + }, + { + "teal": 225, + "source": 27, + "errorMessage": "argument 0 (b) for u256minus must be a uint256", + "pc": [ + 353 + ] + }, + { + "teal": 228, + "source": 27, + "pc": [ + 354, + 355, + 356 + ] + }, + { + "teal": 229, + "source": 27, + "pc": [ + 357 + ] + }, + { + "teal": 230, + "source": 27, + "pc": [ + 358 + ] + }, + { + "teal": 231, + "source": 27, + "pc": [ + 359 + ] + }, + { + "teal": 232, + "source": 27, + "pc": [ + 360 + ] + }, + { + "teal": 235, + "source": 27, + "errorMessage": "argument 1 (a) for u256minus must be a uint256", + "pc": [ + 361 + ] + }, + { + "teal": 238, + "source": 27, + "pc": [ + 362, + 363, + 364 + ] + }, + { + "teal": 239, + "source": 27, + "pc": [ + 365 + ] + }, + { + "teal": 240, + "source": 27, + "pc": [ + 366 + ] + }, + { + "teal": 241, + "source": 27, + "pc": [ + 367 + ] + }, + { + "teal": 242, + "source": 27, + "pc": [ + 368 + ] + }, + { + "teal": 245, + "source": 27, + "errorMessage": "u256minus return value overflowed 256 bits", + "pc": [ + 369 + ] + }, + { + "teal": 246, + "source": 27, + "pc": [ + 370 + ] + }, + { + "teal": 247, + "source": 27, + "pc": [ + 371 + ] + }, + { + "teal": 248, + "source": 27, + "pc": [ + 372 + ] + }, + { + "teal": 249, + "source": 27, + "pc": [ + 373 + ] + }, + { + "teal": 250, + "source": 27, + "pc": [ + 374 + ] + }, + { + "teal": 251, + "source": 27, + "pc": [ + 375 + ] + }, + { + "teal": 252, + "source": 27, + "pc": [ + 376 + ] + }, + { + "teal": 253, + "source": 27, + "pc": [ + 377 + ] + }, + { + "teal": 254, + "source": 27, + "pc": [ + 378 + ] + }, + { + "teal": 255, + "source": 27, + "pc": [ + 379 + ] + }, + { + "teal": 256, + "source": 27, + "pc": [ + 380 + ] + }, + { + "teal": 257, + "source": 27, + "pc": [ + 381 + ] + }, + { + "teal": 258, + "source": 27, + "pc": [ + 382 + ] + }, + { + "teal": 262, + "source": 27, + "pc": [ + 383, + 384, + 385 + ] + }, + { + "teal": 266, + "source": 28, + "pc": [ + 386, + 387 + ] + }, + { + "teal": 267, + "source": 28, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 268, + "source": 28, + "pc": [ + 390 + ] + }, + { + "teal": 269, + "source": 27, + "pc": [ + 391 + ] + }, + { + "teal": 274, + "source": 31, + "pc": [ + 392 + ] + }, + { + "teal": 277, + "source": 31, + "pc": [ + 393, + 394, + 395 + ] + }, + { + "teal": 278, + "source": 31, + "pc": [ + 396 + ] + }, + { + "teal": 279, + "source": 31, + "pc": [ + 397 + ] + }, + { + "teal": 280, + "source": 31, + "pc": [ + 398 + ] + }, + { + "teal": 281, + "source": 31, + "pc": [ + 399 + ] + }, + { + "teal": 284, + "source": 31, + "errorMessage": "argument 0 (b) for u256mul must be a uint256", + "pc": [ + 400 + ] + }, + { + "teal": 287, + "source": 31, + "pc": [ + 401, + 402, + 403 + ] + }, + { + "teal": 288, + "source": 31, + "pc": [ + 404 + ] + }, + { + "teal": 289, + "source": 31, + "pc": [ + 405 + ] + }, + { + "teal": 290, + "source": 31, + "pc": [ + 406 + ] + }, + { + "teal": 291, + "source": 31, + "pc": [ + 407 + ] + }, + { + "teal": 294, + "source": 31, + "errorMessage": "argument 1 (a) for u256mul must be a uint256", + "pc": [ + 408 + ] + }, + { + "teal": 297, + "source": 31, + "pc": [ + 409, + 410, + 411 + ] + }, + { + "teal": 298, + "source": 31, + "pc": [ + 412 + ] + }, + { + "teal": 299, + "source": 31, + "pc": [ + 413 + ] + }, + { + "teal": 300, + "source": 31, + "pc": [ + 414 + ] + }, + { + "teal": 301, + "source": 31, + "pc": [ + 415 + ] + }, + { + "teal": 304, + "source": 31, + "errorMessage": "u256mul return value overflowed 256 bits", + "pc": [ + 416 + ] + }, + { + "teal": 305, + "source": 31, + "pc": [ + 417 + ] + }, + { + "teal": 306, + "source": 31, + "pc": [ + 418 + ] + }, + { + "teal": 307, + "source": 31, + "pc": [ + 419 + ] + }, + { + "teal": 308, + "source": 31, + "pc": [ + 420 + ] + }, + { + "teal": 309, + "source": 31, + "pc": [ + 421 + ] + }, + { + "teal": 310, + "source": 31, + "pc": [ + 422 + ] + }, + { + "teal": 311, + "source": 31, + "pc": [ + 423 + ] + }, + { + "teal": 312, + "source": 31, + "pc": [ + 424 + ] + }, + { + "teal": 313, + "source": 31, + "pc": [ + 425 + ] + }, + { + "teal": 314, + "source": 31, + "pc": [ + 426 + ] + }, + { + "teal": 315, + "source": 31, + "pc": [ + 427 + ] + }, + { + "teal": 316, + "source": 31, + "pc": [ + 428 + ] + }, + { + "teal": 317, + "source": 31, + "pc": [ + 429 + ] + }, + { + "teal": 321, + "source": 31, + "pc": [ + 430, + 431, + 432 + ] + }, + { + "teal": 325, + "source": 32, + "pc": [ + 433, + 434 + ] + }, + { + "teal": 326, + "source": 32, + "pc": [ + 435, + 436 + ] + }, + { + "teal": 327, + "source": 32, + "pc": [ + 437 + ] + }, + { + "teal": 328, + "source": 31, + "pc": [ + 438 + ] + }, + { + "teal": 333, + "source": 35, + "pc": [ + 439 + ] + }, + { + "teal": 336, + "source": 35, + "pc": [ + 440, + 441, + 442 + ] + }, + { + "teal": 337, + "source": 35, + "pc": [ + 443 + ] + }, + { + "teal": 338, + "source": 35, + "pc": [ + 444 + ] + }, + { + "teal": 339, + "source": 35, + "pc": [ + 445 + ] + }, + { + "teal": 340, + "source": 35, + "pc": [ + 446 + ] + }, + { + "teal": 343, + "source": 35, + "errorMessage": "argument 0 (b) for u256div must be a uint256", + "pc": [ + 447 + ] + }, + { + "teal": 346, + "source": 35, + "pc": [ + 448, + 449, + 450 + ] + }, + { + "teal": 347, + "source": 35, + "pc": [ + 451 + ] + }, + { + "teal": 348, + "source": 35, + "pc": [ + 452 + ] + }, + { + "teal": 349, + "source": 35, + "pc": [ + 453 + ] + }, + { + "teal": 350, + "source": 35, + "pc": [ + 454 + ] + }, + { + "teal": 353, + "source": 35, + "errorMessage": "argument 1 (a) for u256div must be a uint256", + "pc": [ + 455 + ] + }, + { + "teal": 356, + "source": 35, + "pc": [ + 456, + 457, + 458 + ] + }, + { + "teal": 357, + "source": 35, + "pc": [ + 459 + ] + }, + { + "teal": 358, + "source": 35, + "pc": [ + 460 + ] + }, + { + "teal": 359, + "source": 35, + "pc": [ + 461 + ] + }, + { + "teal": 360, + "source": 35, + "pc": [ + 462 + ] + }, + { + "teal": 363, + "source": 35, + "errorMessage": "u256div return value overflowed 256 bits", + "pc": [ + 463 + ] + }, + { + "teal": 364, + "source": 35, + "pc": [ + 464 + ] + }, + { + "teal": 365, + "source": 35, + "pc": [ + 465 + ] + }, + { + "teal": 366, + "source": 35, + "pc": [ + 466 + ] + }, + { + "teal": 367, + "source": 35, + "pc": [ + 467 + ] + }, + { + "teal": 368, + "source": 35, + "pc": [ + 468 + ] + }, + { + "teal": 369, + "source": 35, + "pc": [ + 469 + ] + }, + { + "teal": 370, + "source": 35, + "pc": [ + 470 + ] + }, + { + "teal": 371, + "source": 35, + "pc": [ + 471 + ] + }, + { + "teal": 372, + "source": 35, + "pc": [ + 472 + ] + }, + { + "teal": 373, + "source": 35, + "pc": [ + 473 + ] + }, + { + "teal": 374, + "source": 35, + "pc": [ + 474 + ] + }, + { + "teal": 375, + "source": 35, + "pc": [ + 475 + ] + }, + { + "teal": 376, + "source": 35, + "pc": [ + 476 + ] + }, + { + "teal": 380, + "source": 35, + "pc": [ + 477, + 478, + 479 + ] + }, + { + "teal": 384, + "source": 36, + "pc": [ + 480, + 481 + ] + }, + { + "teal": 385, + "source": 36, + "pc": [ + 482, + 483 + ] + }, + { + "teal": 386, + "source": 36, + "pc": [ + 484 + ] + }, + { + "teal": 387, + "source": 35, + "pc": [ + 485 + ] + }, + { + "teal": 392, + "source": 39, + "pc": [ + 486 + ] + }, + { + "teal": 395, + "source": 39, + "pc": [ + 487, + 488, + 489 + ] + }, + { + "teal": 396, + "source": 39, + "pc": [ + 490 + ] + }, + { + "teal": 399, + "source": 39, + "pc": [ + 491, + 492, + 493 + ] + }, + { + "teal": 400, + "source": 39, + "pc": [ + 494 + ] + }, + { + "teal": 403, + "source": 39, + "pc": [ + 495, + 496, + 497 + ] + }, + { + "teal": 404, + "source": 39, + "pc": [ + 498 + ] + }, + { + "teal": 405, + "source": 39, + "pc": [ + 499 + ] + }, + { + "teal": 406, + "source": 39, + "pc": [ + 500 + ] + }, + { + "teal": 407, + "source": 39, + "pc": [ + 501 + ] + }, + { + "teal": 410, + "source": 39, + "errorMessage": "u64Return256 return value overflowed 256 bits", + "pc": [ + 502 + ] + }, + { + "teal": 411, + "source": 39, + "pc": [ + 503 + ] + }, + { + "teal": 412, + "source": 39, + "pc": [ + 504 + ] + }, + { + "teal": 413, + "source": 39, + "pc": [ + 505 + ] + }, + { + "teal": 414, + "source": 39, + "pc": [ + 506 + ] + }, + { + "teal": 415, + "source": 39, + "pc": [ + 507 + ] + }, + { + "teal": 416, + "source": 39, + "pc": [ + 508 + ] + }, + { + "teal": 417, + "source": 39, + "pc": [ + 509 + ] + }, + { + "teal": 418, + "source": 39, + "pc": [ + 510 + ] + }, + { + "teal": 419, + "source": 39, + "pc": [ + 511 + ] + }, + { + "teal": 420, + "source": 39, + "pc": [ + 512 + ] + }, + { + "teal": 421, + "source": 39, + "pc": [ + 513 + ] + }, + { + "teal": 422, + "source": 39, + "pc": [ + 514 + ] + }, + { + "teal": 423, + "source": 39, + "pc": [ + 515 + ] + }, + { + "teal": 427, + "source": 39, + "pc": [ + 516, + 517, + 518 + ] + }, + { + "teal": 431, + "source": 40, + "pc": [ + 519, + 520 + ] + }, + { + "teal": 432, + "source": 40, + "pc": [ + 521, + 522 + ] + }, + { + "teal": 433, + "source": 40, + "pc": [ + 523 + ] + }, + { + "teal": 434, + "source": 40, + "pc": [ + 524 + ] + }, + { + "teal": 435, + "source": 39, + "pc": [ + 525 + ] + }, + { + "teal": 440, + "source": 43, + "pc": [ + 526 + ] + }, + { + "teal": 443, + "source": 43, + "pc": [ + 527, + 528, + 529 + ] + }, + { + "teal": 444, + "source": 43, + "pc": [ + 530 + ] + }, + { + "teal": 445, + "source": 43, + "pc": [ + 531 + ] + }, + { + "teal": 446, + "source": 43, + "pc": [ + 532 + ] + }, + { + "teal": 447, + "source": 43, + "pc": [ + 533 + ] + }, + { + "teal": 448, + "source": 43, + "pc": [ + 534 + ] + }, + { + "teal": 452, + "source": 43, + "pc": [ + 535, + 536, + 537 + ] + }, + { + "teal": 456, + "source": 44, + "pc": [ + 538, + 539, + 540, + 541, + 542, + 543, + 544, + 545, + 546, + 547, + 548 + ] + }, + { + "teal": 457, + "source": 43, + "pc": [ + 549 + ] + }, + { + "teal": 462, + "source": 47, + "pc": [ + 550 + ] + }, + { + "teal": 465, + "source": 47, + "pc": [ + 551, + 552, + 553 + ] + }, + { + "teal": 466, + "source": 47, + "pc": [ + 554 + ] + }, + { + "teal": 469, + "source": 47, + "pc": [ + 555, + 556, + 557 + ] + }, + { + "teal": 470, + "source": 47, + "pc": [ + 558 + ] + }, + { + "teal": 473, + "source": 47, + "pc": [ + 559, + 560, + 561 + ] + }, + { + "teal": 474, + "source": 47, + "pc": [ + 562 + ] + }, + { + "teal": 475, + "source": 47, + "pc": [ + 563 + ] + }, + { + "teal": 476, + "source": 47, + "pc": [ + 564 + ] + }, + { + "teal": 477, + "source": 47, + "pc": [ + 565 + ] + }, + { + "teal": 478, + "source": 47, + "pc": [ + 566 + ] + }, + { + "teal": 482, + "source": 47, + "pc": [ + 567, + 568, + 569 + ] + }, + { + "teal": 486, + "source": 48, + "pc": [ + 570, + 571 + ] + }, + { + "teal": 487, + "source": 48, + "pc": [ + 572, + 573 + ] + }, + { + "teal": 488, + "source": 48, + "pc": [ + 574 + ] + }, + { + "teal": 489, + "source": 47, + "pc": [ + 575 + ] + }, + { + "teal": 494, + "source": 51, + "pc": [ + 576 + ] + }, + { + "teal": 497, + "source": 51, + "pc": [ + 577, + 578, + 579 + ] + }, + { + "teal": 498, + "source": 51, + "pc": [ + 580 + ] + }, + { + "teal": 499, + "source": 51, + "pc": [ + 581 + ] + }, + { + "teal": 500, + "source": 51, + "pc": [ + 582 + ] + }, + { + "teal": 501, + "source": 51, + "pc": [ + 583 + ] + }, + { + "teal": 504, + "source": 51, + "errorMessage": "argument 0 (y) for variableTypeHint must be a uint8", + "pc": [ + 584 + ] + }, + { + "teal": 505, + "source": 51, + "pc": [ + 585 + ] + }, + { + "teal": 508, + "source": 51, + "pc": [ + 586, + 587, + 588 + ] + }, + { + "teal": 509, + "source": 51, + "pc": [ + 589 + ] + }, + { + "teal": 510, + "source": 51, + "pc": [ + 590 + ] + }, + { + "teal": 511, + "source": 51, + "pc": [ + 591 + ] + }, + { + "teal": 512, + "source": 51, + "pc": [ + 592 + ] + }, + { + "teal": 515, + "source": 51, + "errorMessage": "argument 1 (x) for variableTypeHint must be a uint8", + "pc": [ + 593 + ] + }, + { + "teal": 516, + "source": 51, + "pc": [ + 594 + ] + }, + { + "teal": 519, + "source": 51, + "pc": [ + 595, + 596, + 597 + ] + }, + { + "teal": 520, + "source": 51, + "pc": [ + 598 + ] + }, + { + "teal": 521, + "source": 51, + "pc": [ + 599 + ] + }, + { + "teal": 522, + "source": 51, + "pc": [ + 600 + ] + }, + { + "teal": 523, + "source": 51, + "pc": [ + 601, + 602 + ] + }, + { + "teal": 524, + "source": 51, + "pc": [ + 603 + ] + }, + { + "teal": 527, + "source": 51, + "errorMessage": "variableTypeHint return value overflowed 16 bits", + "pc": [ + 604 + ] + }, + { + "teal": 528, + "source": 51, + "pc": [ + 605, + 606, + 607 + ] + }, + { + "teal": 529, + "source": 51, + "pc": [ + 608 + ] + }, + { + "teal": 530, + "source": 51, + "pc": [ + 609 + ] + }, + { + "teal": 531, + "source": 51, + "pc": [ + 610 + ] + }, + { + "teal": 532, + "source": 51, + "pc": [ + 611 + ] + }, + { + "teal": 536, + "source": 51, + "pc": [ + 612, + 613, + 614 + ] + }, + { + "teal": 539, + "source": 51, + "pc": [ + 615 + ] + }, + { + "teal": 543, + "source": 52, + "pc": [ + 616, + 617 + ] + }, + { + "teal": 544, + "source": 52, + "pc": [ + 618, + 619 + ] + }, + { + "teal": 545, + "source": 52, + "pc": [ + 620 + ] + }, + { + "teal": 546, + "source": 52, + "pc": [ + 621, + 622 + ] + }, + { + "teal": 550, + "source": 54, + "pc": [ + 623, + 624 + ] + }, + { + "teal": 553, + "source": 51, + "pc": [ + 625, + 626 + ] + }, + { + "teal": 554, + "source": 51, + "pc": [ + 627 + ] + }, + { + "teal": 559, + "source": 57, + "pc": [ + 628 + ] + }, + { + "teal": 562, + "source": 57, + "pc": [ + 629, + 630, + 631 + ] + }, + { + "teal": 563, + "source": 57, + "pc": [ + 632 + ] + }, + { + "teal": 564, + "source": 57, + "pc": [ + 633 + ] + }, + { + "teal": 565, + "source": 57, + "pc": [ + 634 + ] + }, + { + "teal": 566, + "source": 57, + "pc": [ + 635 + ] + }, + { + "teal": 569, + "source": 57, + "errorMessage": "argument 0 (b) for uint8plus must be a uint8", + "pc": [ + 636 + ] + }, + { + "teal": 570, + "source": 57, + "pc": [ + 637 + ] + }, + { + "teal": 573, + "source": 57, + "pc": [ + 638, + 639, + 640 + ] + }, + { + "teal": 574, + "source": 57, + "pc": [ + 641 + ] + }, + { + "teal": 575, + "source": 57, + "pc": [ + 642 + ] + }, + { + "teal": 576, + "source": 57, + "pc": [ + 643 + ] + }, + { + "teal": 577, + "source": 57, + "pc": [ + 644 + ] + }, + { + "teal": 580, + "source": 57, + "errorMessage": "argument 1 (a) for uint8plus must be a uint8", + "pc": [ + 645 + ] + }, + { + "teal": 581, + "source": 57, + "pc": [ + 646 + ] + }, + { + "teal": 584, + "source": 57, + "pc": [ + 647, + 648, + 649 + ] + }, + { + "teal": 585, + "source": 57, + "pc": [ + 650 + ] + }, + { + "teal": 586, + "source": 57, + "pc": [ + 651 + ] + }, + { + "teal": 587, + "source": 57, + "pc": [ + 652 + ] + }, + { + "teal": 588, + "source": 57, + "pc": [ + 653 + ] + }, + { + "teal": 589, + "source": 57, + "pc": [ + 654 + ] + }, + { + "teal": 592, + "source": 57, + "errorMessage": "uint8plus return value overflowed 8 bits", + "pc": [ + 655 + ] + }, + { + "teal": 593, + "source": 57, + "pc": [ + 656, + 657, + 658 + ] + }, + { + "teal": 594, + "source": 57, + "pc": [ + 659 + ] + }, + { + "teal": 595, + "source": 57, + "pc": [ + 660 + ] + }, + { + "teal": 596, + "source": 57, + "pc": [ + 661 + ] + }, + { + "teal": 597, + "source": 57, + "pc": [ + 662 + ] + }, + { + "teal": 601, + "source": 57, + "pc": [ + 663, + 664, + 665 + ] + }, + { + "teal": 605, + "source": 58, + "pc": [ + 666, + 667 + ] + }, + { + "teal": 606, + "source": 58, + "pc": [ + 668, + 669 + ] + }, + { + "teal": 607, + "source": 58, + "pc": [ + 670 + ] + }, + { + "teal": 608, + "source": 57, + "pc": [ + 671 + ] + }, + { + "teal": 613, + "source": 61, + "pc": [ + 672 + ] + }, + { + "teal": 616, + "source": 61, + "pc": [ + 673, + 674, + 675 + ] + }, + { + "teal": 617, + "source": 61, + "pc": [ + 676 + ] + }, + { + "teal": 618, + "source": 61, + "pc": [ + 677 + ] + }, + { + "teal": 619, + "source": 61, + "pc": [ + 678 + ] + }, + { + "teal": 620, + "source": 61, + "pc": [ + 679 + ] + }, + { + "teal": 623, + "source": 61, + "errorMessage": "argument 0 (b) for uint8exp must be a uint8", + "pc": [ + 680 + ] + }, + { + "teal": 624, + "source": 61, + "pc": [ + 681 + ] + }, + { + "teal": 627, + "source": 61, + "pc": [ + 682, + 683, + 684 + ] + }, + { + "teal": 628, + "source": 61, + "pc": [ + 685 + ] + }, + { + "teal": 629, + "source": 61, + "pc": [ + 686 + ] + }, + { + "teal": 630, + "source": 61, + "pc": [ + 687 + ] + }, + { + "teal": 631, + "source": 61, + "pc": [ + 688 + ] + }, + { + "teal": 634, + "source": 61, + "errorMessage": "argument 1 (a) for uint8exp must be a uint8", + "pc": [ + 689 + ] + }, + { + "teal": 635, + "source": 61, + "pc": [ + 690 + ] + }, + { + "teal": 638, + "source": 61, + "pc": [ + 691, + 692, + 693 + ] + }, + { + "teal": 639, + "source": 61, + "pc": [ + 694 + ] + }, + { + "teal": 640, + "source": 61, + "pc": [ + 695 + ] + }, + { + "teal": 641, + "source": 61, + "pc": [ + 696 + ] + }, + { + "teal": 642, + "source": 61, + "pc": [ + 697 + ] + }, + { + "teal": 643, + "source": 61, + "pc": [ + 698 + ] + }, + { + "teal": 646, + "source": 61, + "errorMessage": "uint8exp return value overflowed 8 bits", + "pc": [ + 699 + ] + }, + { + "teal": 647, + "source": 61, + "pc": [ + 700, + 701, + 702 + ] + }, + { + "teal": 648, + "source": 61, + "pc": [ + 703 + ] + }, + { + "teal": 649, + "source": 61, + "pc": [ + 704 + ] + }, + { + "teal": 650, + "source": 61, + "pc": [ + 705 + ] + }, + { + "teal": 651, + "source": 61, + "pc": [ + 706 + ] + }, + { + "teal": 655, + "source": 61, + "pc": [ + 707, + 708, + 709 + ] + }, + { + "teal": 659, + "source": 62, + "pc": [ + 710, + 711 + ] + }, + { + "teal": 660, + "source": 62, + "pc": [ + 712, + 713 + ] + }, + { + "teal": 661, + "source": 62, + "pc": [ + 714 + ] + }, + { + "teal": 662, + "source": 61, + "pc": [ + 715 + ] + }, + { + "teal": 667, + "source": 65, + "pc": [ + 716 + ] + }, + { + "teal": 670, + "source": 65, + "pc": [ + 717, + 718, + 719 + ] + }, + { + "teal": 671, + "source": 65, + "pc": [ + 720 + ] + }, + { + "teal": 674, + "source": 65, + "pc": [ + 721, + 722, + 723 + ] + }, + { + "teal": 675, + "source": 65, + "pc": [ + 724 + ] + }, + { + "teal": 678, + "source": 65, + "pc": [ + 725, + 726, + 727 + ] + }, + { + "teal": 679, + "source": 65, + "pc": [ + 728 + ] + }, + { + "teal": 680, + "source": 65, + "pc": [ + 729 + ] + }, + { + "teal": 681, + "source": 65, + "pc": [ + 730 + ] + }, + { + "teal": 682, + "source": 65, + "pc": [ + 731 + ] + }, + { + "teal": 683, + "source": 65, + "pc": [ + 732 + ] + }, + { + "teal": 687, + "source": 65, + "pc": [ + 733, + 734, + 735 + ] + }, + { + "teal": 690, + "source": 65, + "pc": [ + 736 + ] + }, + { + "teal": 694, + "source": 66, + "pc": [ + 737, + 738 + ] + }, + { + "teal": 695, + "source": 66, + "pc": [ + 739, + 740 + ] + }, + { + "teal": 699, + "source": 68, + "pc": [ + 741, + 742 + ] + }, + { + "teal": 700, + "source": 68, + "pc": [ + 743, + 744 + ] + }, + { + "teal": 701, + "source": 68, + "pc": [ + 745 + ] + }, + { + "teal": 702, + "source": 68, + "pc": [ + 746, + 747 + ] + }, + { + "teal": 706, + "source": 70, + "pc": [ + 748, + 749 + ] + }, + { + "teal": 709, + "source": 65, + "pc": [ + 750, + 751 + ] + }, + { + "teal": 710, + "source": 65, + "pc": [ + 752 + ] + }, + { + "teal": 715, + "source": 73, + "pc": [ + 753 + ] + }, + { + "teal": 718, + "source": 73, + "pc": [ + 754, + 755, + 756 + ] + }, + { + "teal": 719, + "source": 73, + "pc": [ + 757 + ] + }, + { + "teal": 722, + "source": 73, + "pc": [ + 758, + 759, + 760 + ] + }, + { + "teal": 723, + "source": 73, + "pc": [ + 761 + ] + }, + { + "teal": 726, + "source": 73, + "pc": [ + 762, + 763, + 764 + ] + }, + { + "teal": 727, + "source": 73, + "pc": [ + 765 + ] + }, + { + "teal": 728, + "source": 73, + "pc": [ + 766 + ] + }, + { + "teal": 729, + "source": 73, + "pc": [ + 767 + ] + }, + { + "teal": 730, + "source": 73, + "pc": [ + 768 + ] + }, + { + "teal": 731, + "source": 73, + "pc": [ + 769 + ] + }, + { + "teal": 735, + "source": 73, + "pc": [ + 770, + 771, + 772 + ] + }, + { + "teal": 739, + "source": 74, + "pc": [ + 773 + ] + }, + { + "teal": 740, + "source": 74, + "pc": [ + 774, + 775 + ] + }, + { + "teal": 741, + "source": 74, + "pc": [ + 776 + ] + }, + { + "teal": 745, + "source": 76, + "pc": [ + 777 + ] + }, + { + "teal": 746, + "source": 76, + "pc": [ + 778 + ] + }, + { + "teal": 747, + "source": 76, + "pc": [ + 779, + 780 + ] + }, + { + "teal": 748, + "source": 76, + "pc": [ + 781 + ] + }, + { + "teal": 749, + "source": 76, + "pc": [ + 782 + ] + }, + { + "teal": 750, + "source": 76, + "pc": [ + 783 + ] + }, + { + "teal": 751, + "source": 76, + "pc": [ + 784 + ] + }, + { + "teal": 755, + "source": 78, + "pc": [ + 785 + ] + }, + { + "teal": 756, + "source": 78, + "pc": [ + 786 + ] + }, + { + "teal": 757, + "source": 73, + "pc": [ + 787 + ] + }, + { + "teal": 762, + "source": 83, + "pc": [ + 788 + ] + }, + { + "teal": 765, + "source": 83, + "pc": [ + 789, + 790, + 791 + ] + }, + { + "teal": 766, + "source": 83, + "pc": [ + 792 + ] + }, + { + "teal": 767, + "source": 83, + "pc": [ + 793 + ] + }, + { + "teal": 768, + "source": 83, + "pc": [ + 794 + ] + }, + { + "teal": 769, + "source": 83, + "pc": [ + 795 + ] + }, + { + "teal": 772, + "source": 83, + "errorMessage": "boxTest return value overflowed 256 bits", + "pc": [ + 796 + ] + }, + { + "teal": 773, + "source": 83, + "pc": [ + 797 + ] + }, + { + "teal": 774, + "source": 83, + "pc": [ + 798 + ] + }, + { + "teal": 775, + "source": 83, + "pc": [ + 799 + ] + }, + { + "teal": 776, + "source": 83, + "pc": [ + 800 + ] + }, + { + "teal": 777, + "source": 83, + "pc": [ + 801 + ] + }, + { + "teal": 778, + "source": 83, + "pc": [ + 802 + ] + }, + { + "teal": 779, + "source": 83, + "pc": [ + 803 + ] + }, + { + "teal": 780, + "source": 83, + "pc": [ + 804 + ] + }, + { + "teal": 781, + "source": 83, + "pc": [ + 805 + ] + }, + { + "teal": 782, + "source": 83, + "pc": [ + 806 + ] + }, + { + "teal": 783, + "source": 83, + "pc": [ + 807 + ] + }, + { + "teal": 784, + "source": 83, + "pc": [ + 808 + ] + }, + { + "teal": 785, + "source": 83, + "pc": [ + 809 + ] + }, + { + "teal": 789, + "source": 83, + "pc": [ + 810, + 811, + 812 + ] + }, + { + "teal": 793, + "source": 84, + "pc": [ + 813, + 814 + ] + }, + { + "teal": 794, + "source": 84, + "pc": [ + 815, + 816 + ] + }, + { + "teal": 795, + "source": 84, + "pc": [ + 817 + ] + }, + { + "teal": 799, + "source": 85, + "pc": [ + 818, + 819 + ] + }, + { + "teal": 800, + "source": 85, + "pc": [ + 820 + ] + }, + { + "teal": 803, + "source": 85, + "errorMessage": "box value does not exist: this.boxKey.value", + "pc": [ + 821 + ] + }, + { + "teal": 804, + "source": 85, + "pc": [ + 822, + 823 + ] + }, + { + "teal": 805, + "source": 85, + "pc": [ + 824 + ] + }, + { + "teal": 806, + "source": 85, + "pc": [ + 825, + 826 + ] + }, + { + "teal": 807, + "source": 85, + "pc": [ + 827 + ] + }, + { + "teal": 808, + "source": 85, + "pc": [ + 828 + ] + }, + { + "teal": 809, + "source": 85, + "pc": [ + 829 + ] + }, + { + "teal": 810, + "source": 85, + "pc": [ + 830 + ] + }, + { + "teal": 813, + "source": 85, + "errorMessage": "this.boxKey.value overflowed 256 bits", + "pc": [ + 831 + ] + }, + { + "teal": 814, + "source": 85, + "pc": [ + 832 + ] + }, + { + "teal": 815, + "source": 85, + "pc": [ + 833 + ] + }, + { + "teal": 816, + "source": 85, + "pc": [ + 834 + ] + }, + { + "teal": 817, + "source": 85, + "pc": [ + 835 + ] + }, + { + "teal": 818, + "source": 85, + "pc": [ + 836 + ] + }, + { + "teal": 819, + "source": 85, + "pc": [ + 837 + ] + }, + { + "teal": 820, + "source": 85, + "pc": [ + 838 + ] + }, + { + "teal": 821, + "source": 85, + "pc": [ + 839 + ] + }, + { + "teal": 822, + "source": 85, + "pc": [ + 840 + ] + }, + { + "teal": 823, + "source": 85, + "pc": [ + 841 + ] + }, + { + "teal": 824, + "source": 85, + "pc": [ + 842 + ] + }, + { + "teal": 828, + "source": 87, + "pc": [ + 843, + 844 + ] + }, + { + "teal": 829, + "source": 87, + "pc": [ + 845 + ] + }, + { + "teal": 832, + "source": 87, + "errorMessage": "box value does not exist: this.boxKey.value", + "pc": [ + 846 + ] + }, + { + "teal": 833, + "source": 83, + "pc": [ + 847 + ] + }, + { + "teal": 837, + "source": 90, + "pc": [ + 848, + 849, + 850 + ] + }, + { + "teal": 841, + "source": 91, + "pc": [ + 851, + 852 + ] + }, + { + "teal": 842, + "source": 90, + "pc": [ + 853 + ] + }, + { + "teal": 847, + "source": 94, + "pc": [ + 854 + ] + }, + { + "teal": 850, + "source": 94, + "pc": [ + 855, + 856, + 857 + ] + }, + { + "teal": 851, + "source": 94, + "pc": [ + 858 + ] + }, + { + "teal": 852, + "source": 94, + "pc": [ + 859 + ] + }, + { + "teal": 853, + "source": 94, + "pc": [ + 860 + ] + }, + { + "teal": 854, + "source": 94, + "pc": [ + 861 + ] + }, + { + "teal": 857, + "source": 94, + "errorMessage": "argument 0 (b) for unsafeMethodArgs must be a uint256", + "pc": [ + 862 + ] + }, + { + "teal": 860, + "source": 94, + "pc": [ + 863, + 864, + 865 + ] + }, + { + "teal": 861, + "source": 94, + "pc": [ + 866 + ] + }, + { + "teal": 862, + "source": 94, + "pc": [ + 867 + ] + }, + { + "teal": 863, + "source": 94, + "pc": [ + 868 + ] + }, + { + "teal": 864, + "source": 94, + "pc": [ + 869 + ] + }, + { + "teal": 867, + "source": 94, + "errorMessage": "argument 1 (a) for unsafeMethodArgs must be a uint256", + "pc": [ + 870 + ] + }, + { + "teal": 870, + "source": 94, + "pc": [ + 871, + 872, + 873 + ] + }, + { + "teal": 871, + "source": 94, + "pc": [ + 874 + ] + }, + { + "teal": 872, + "source": 94, + "pc": [ + 875 + ] + }, + { + "teal": 873, + "source": 94, + "pc": [ + 876 + ] + }, + { + "teal": 874, + "source": 94, + "pc": [ + 877 + ] + }, + { + "teal": 877, + "source": 94, + "errorMessage": "unsafeMethodArgs return value overflowed 256 bits", + "pc": [ + 878 + ] + }, + { + "teal": 878, + "source": 94, + "pc": [ + 879 + ] + }, + { + "teal": 879, + "source": 94, + "pc": [ + 880 + ] + }, + { + "teal": 880, + "source": 94, + "pc": [ + 881 + ] + }, + { + "teal": 881, + "source": 94, + "pc": [ + 882 + ] + }, + { + "teal": 882, + "source": 94, + "pc": [ + 883 + ] + }, + { + "teal": 883, + "source": 94, + "pc": [ + 884 + ] + }, + { + "teal": 884, + "source": 94, + "pc": [ + 885 + ] + }, + { + "teal": 885, + "source": 94, + "pc": [ + 886 + ] + }, + { + "teal": 886, + "source": 94, + "pc": [ + 887 + ] + }, + { + "teal": 887, + "source": 94, + "pc": [ + 888 + ] + }, + { + "teal": 888, + "source": 94, + "pc": [ + 889 + ] + }, + { + "teal": 889, + "source": 94, + "pc": [ + 890 + ] + }, + { + "teal": 890, + "source": 94, + "pc": [ + 891 + ] + }, + { + "teal": 894, + "source": 94, + "pc": [ + 892, + 893, + 894 + ] + }, + { + "teal": 897, + "source": 94, + "pc": [ + 895 + ] + }, + { + "teal": 901, + "source": 95, + "pc": [ + 896, + 897 + ] + }, + { + "teal": 902, + "source": 95, + "pc": [ + 898, + 899 + ] + }, + { + "teal": 903, + "source": 95, + "pc": [ + 900 + ] + }, + { + "teal": 904, + "source": 95, + "pc": [ + 901, + 902 + ] + }, + { + "teal": 908, + "source": 97, + "pc": [ + 903, + 904 + ] + }, + { + "teal": 909, + "source": 97, + "pc": [ + 905 + ] + }, + { + "teal": 910, + "source": 97, + "pc": [ + 906 + ] + }, + { + "teal": 911, + "source": 97, + "pc": [ + 907 + ] + }, + { + "teal": 912, + "source": 97, + "pc": [ + 908 + ] + }, + { + "teal": 915, + "source": 97, + "errorMessage": "c overflowed 256 bits", + "pc": [ + 909 + ] + }, + { + "teal": 916, + "source": 97, + "pc": [ + 910 + ] + }, + { + "teal": 917, + "source": 97, + "pc": [ + 911 + ] + }, + { + "teal": 918, + "source": 97, + "pc": [ + 912 + ] + }, + { + "teal": 919, + "source": 97, + "pc": [ + 913 + ] + }, + { + "teal": 920, + "source": 97, + "pc": [ + 914 + ] + }, + { + "teal": 921, + "source": 97, + "pc": [ + 915 + ] + }, + { + "teal": 922, + "source": 97, + "pc": [ + 916 + ] + }, + { + "teal": 923, + "source": 97, + "pc": [ + 917 + ] + }, + { + "teal": 924, + "source": 97, + "pc": [ + 918 + ] + }, + { + "teal": 925, + "source": 97, + "pc": [ + 919, + 920, + 921 + ] + }, + { + "teal": 928, + "source": 94, + "pc": [ + 922, + 923 + ] + }, + { + "teal": 929, + "source": 94, + "pc": [ + 924 + ] + }, + { + "teal": 934, + "source": 100, + "pc": [ + 925, + 926, + 927 + ] + }, + { + "teal": 935, + "source": 100, + "pc": [ + 928 + ] + }, + { + "teal": 936, + "source": 100, + "pc": [ + 929 + ] + }, + { + "teal": 937, + "source": 100, + "pc": [ + 930 + ] + }, + { + "teal": 938, + "source": 100, + "pc": [ + 931 + ] + }, + { + "teal": 941, + "source": 100, + "errorMessage": "argument 0 (b) for uint256ComparisonType must be a uint256", + "pc": [ + 932 + ] + }, + { + "teal": 944, + "source": 100, + "pc": [ + 933, + 934, + 935 + ] + }, + { + "teal": 945, + "source": 100, + "pc": [ + 936 + ] + }, + { + "teal": 946, + "source": 100, + "pc": [ + 937 + ] + }, + { + "teal": 947, + "source": 100, + "pc": [ + 938 + ] + }, + { + "teal": 948, + "source": 100, + "pc": [ + 939 + ] + }, + { + "teal": 951, + "source": 100, + "errorMessage": "argument 1 (a) for uint256ComparisonType must be a uint256", + "pc": [ + 940 + ] + }, + { + "teal": 954, + "source": 100, + "pc": [ + 941, + 942, + 943 + ] + }, + { + "teal": 955, + "source": 100, + "pc": [ + 944 + ] + }, + { + "teal": 956, + "source": 100, + "pc": [ + 945 + ] + }, + { + "teal": 960, + "source": 100, + "pc": [ + 946, + 947, + 948 + ] + }, + { + "teal": 963, + "source": 100, + "pc": [ + 949 + ] + }, + { + "teal": 967, + "source": 101, + "pc": [ + 950, + 951 + ] + }, + { + "teal": 968, + "source": 101, + "pc": [ + 952, + 953 + ] + }, + { + "teal": 969, + "source": 101, + "pc": [ + 954 + ] + }, + { + "teal": 970, + "source": 101, + "pc": [ + 955, + 956 + ] + }, + { + "teal": 975, + "source": 102, + "pc": [ + 957, + 958 + ] + }, + { + "teal": 976, + "source": 102, + "pc": [ + 959, + 960, + 961, + 962, + 963, + 964, + 965, + 966, + 967, + 968, + 969, + 970, + 971, + 972, + 973, + 974, + 975, + 976, + 977, + 978, + 979, + 980, + 981, + 982, + 983, + 984, + 985, + 986, + 987, + 988, + 989, + 990, + 991, + 992 + ] + }, + { + "teal": 977, + "source": 102, + "pc": [ + 993 + ] + }, + { + "teal": 978, + "source": 102, + "pc": [ + 994, + 995, + 996 + ] + }, + { + "teal": 983, + "source": 103, + "pc": [ + 997, + 998, + 999, + 1000, + 1001, + 1002, + 1003, + 1004, + 1005 + ] + }, + { + "teal": 984, + "source": 103, + "pc": [ + 1006 + ] + }, + { + "teal": 985, + "source": 102, + "pc": [ + 1007, + 1008, + 1009 + ] + }, + { + "teal": 990, + "source": 105, + "pc": [ + 1010, + 1011, + 1012, + 1013, + 1014, + 1015 + ] + }, + { + "teal": 991, + "source": 105, + "pc": [ + 1016 + ] + }, + { + "teal": 994, + "source": 100, + "pc": [ + 1017 + ] + }, + { + "teal": 999, + "source": 109, + "pc": [ + 1018 + ] + }, + { + "teal": 1002, + "source": 109, + "pc": [ + 1019, + 1020, + 1021 + ] + }, + { + "teal": 1003, + "source": 109, + "pc": [ + 1022 + ] + }, + { + "teal": 1004, + "source": 109, + "pc": [ + 1023 + ] + }, + { + "teal": 1005, + "source": 109, + "pc": [ + 1024 + ] + }, + { + "teal": 1006, + "source": 109, + "pc": [ + 1025 + ] + }, + { + "teal": 1009, + "source": 109, + "errorMessage": "argument 0 (b) for squareRoot256 must be a uint256", + "pc": [ + 1026 + ] + }, + { + "teal": 1012, + "source": 109, + "pc": [ + 1027, + 1028, + 1029 + ] + }, + { + "teal": 1013, + "source": 109, + "pc": [ + 1030 + ] + }, + { + "teal": 1014, + "source": 109, + "pc": [ + 1031 + ] + }, + { + "teal": 1015, + "source": 109, + "pc": [ + 1032 + ] + }, + { + "teal": 1016, + "source": 109, + "pc": [ + 1033 + ] + }, + { + "teal": 1019, + "source": 109, + "errorMessage": "argument 1 (a) for squareRoot256 must be a uint256", + "pc": [ + 1034 + ] + }, + { + "teal": 1022, + "source": 109, + "pc": [ + 1035, + 1036, + 1037 + ] + }, + { + "teal": 1023, + "source": 109, + "pc": [ + 1038 + ] + }, + { + "teal": 1024, + "source": 109, + "pc": [ + 1039 + ] + }, + { + "teal": 1025, + "source": 109, + "pc": [ + 1040 + ] + }, + { + "teal": 1026, + "source": 109, + "pc": [ + 1041 + ] + }, + { + "teal": 1029, + "source": 109, + "errorMessage": "squareRoot256 return value overflowed 256 bits", + "pc": [ + 1042 + ] + }, + { + "teal": 1030, + "source": 109, + "pc": [ + 1043 + ] + }, + { + "teal": 1031, + "source": 109, + "pc": [ + 1044 + ] + }, + { + "teal": 1032, + "source": 109, + "pc": [ + 1045 + ] + }, + { + "teal": 1033, + "source": 109, + "pc": [ + 1046 + ] + }, + { + "teal": 1034, + "source": 109, + "pc": [ + 1047 + ] + }, + { + "teal": 1035, + "source": 109, + "pc": [ + 1048 + ] + }, + { + "teal": 1036, + "source": 109, + "pc": [ + 1049 + ] + }, + { + "teal": 1037, + "source": 109, + "pc": [ + 1050 + ] + }, + { + "teal": 1038, + "source": 109, + "pc": [ + 1051 + ] + }, + { + "teal": 1039, + "source": 109, + "pc": [ + 1052 + ] + }, + { + "teal": 1040, + "source": 109, + "pc": [ + 1053 + ] + }, + { + "teal": 1041, + "source": 109, + "pc": [ + 1054 + ] + }, + { + "teal": 1042, + "source": 109, + "pc": [ + 1055 + ] + }, + { + "teal": 1046, + "source": 109, + "pc": [ + 1056, + 1057, + 1058 + ] + }, + { + "teal": 1050, + "source": 110, + "pc": [ + 1059, + 1060 + ] + }, + { + "teal": 1051, + "source": 110, + "pc": [ + 1061, + 1062 + ] + }, + { + "teal": 1052, + "source": 110, + "pc": [ + 1063 + ] + }, + { + "teal": 1053, + "source": 110, + "pc": [ + 1064 + ] + }, + { + "teal": 1054, + "source": 109, + "pc": [ + 1065 + ] + }, + { + "teal": 1059, + "source": 113, + "pc": [ + 1066 + ] + }, + { + "teal": 1062, + "source": 113, + "pc": [ + 1067, + 1068, + 1069 + ] + }, + { + "teal": 1063, + "source": 113, + "pc": [ + 1070 + ] + }, + { + "teal": 1066, + "source": 113, + "pc": [ + 1071, + 1072, + 1073 + ] + }, + { + "teal": 1067, + "source": 113, + "pc": [ + 1074 + ] + }, + { + "teal": 1070, + "source": 113, + "pc": [ + 1075, + 1076, + 1077 + ] + }, + { + "teal": 1071, + "source": 113, + "pc": [ + 1078 + ] + }, + { + "teal": 1072, + "source": 113, + "pc": [ + 1079 + ] + }, + { + "teal": 1073, + "source": 113, + "pc": [ + 1080 + ] + }, + { + "teal": 1074, + "source": 113, + "pc": [ + 1081 + ] + }, + { + "teal": 1075, + "source": 113, + "pc": [ + 1082 + ] + }, + { + "teal": 1079, + "source": 113, + "pc": [ + 1083, + 1084, + 1085 + ] + }, + { + "teal": 1083, + "source": 114, + "pc": [ + 1086, + 1087 + ] + }, + { + "teal": 1084, + "source": 114, + "pc": [ + 1088, + 1089 + ] + }, + { + "teal": 1085, + "source": 114, + "pc": [ + 1090 + ] + }, + { + "teal": 1086, + "source": 114, + "pc": [ + 1091 + ] + }, + { + "teal": 1087, + "source": 113, + "pc": [ + 1092 + ] + }, + { + "teal": 1092, + "source": 117, + "pc": [ + 1093 + ] + }, + { + "teal": 1095, + "source": 117, + "pc": [ + 1094, + 1095, + 1096 + ] + }, + { + "teal": 1096, + "source": 117, + "pc": [ + 1097 + ] + }, + { + "teal": 1097, + "source": 117, + "pc": [ + 1098 + ] + }, + { + "teal": 1098, + "source": 117, + "pc": [ + 1099 + ] + }, + { + "teal": 1099, + "source": 117, + "pc": [ + 1100 + ] + }, + { + "teal": 1102, + "source": 117, + "errorMessage": "argument 0 (addr) for addressToBigInt must be a address", + "pc": [ + 1101 + ] + }, + { + "teal": 1105, + "source": 117, + "pc": [ + 1102, + 1103, + 1104 + ] + }, + { + "teal": 1106, + "source": 117, + "pc": [ + 1105, + 1106, + 1107 + ] + }, + { + "teal": 1107, + "source": 117, + "pc": [ + 1108, + 1109 + ] + }, + { + "teal": 1108, + "source": 117, + "pc": [ + 1110, + 1111 + ] + }, + { + "teal": 1109, + "source": 117, + "pc": [ + 1112 + ] + }, + { + "teal": 1110, + "source": 117, + "pc": [ + 1113 + ] + }, + { + "teal": 1111, + "source": 117, + "pc": [ + 1114 + ] + }, + { + "teal": 1112, + "source": 117, + "pc": [ + 1115 + ] + }, + { + "teal": 1113, + "source": 117, + "pc": [ + 1116 + ] + }, + { + "teal": 1117, + "source": 117, + "pc": [ + 1117, + 1118, + 1119 + ] + }, + { + "teal": 1121, + "source": 118, + "pc": [ + 1120, + 1121 + ] + }, + { + "teal": 1122, + "source": 118, + "pc": [ + 1122, + 1123 + ] + }, + { + "teal": 1123, + "source": 118, + "pc": [ + 1124 + ] + }, + { + "teal": 1124, + "source": 117, + "pc": [ + 1125 + ] + }, + { + "teal": 1129, + "source": 121, + "pc": [ + 1126 + ] + }, + { + "teal": 1132, + "source": 121, + "pc": [ + 1127, + 1128, + 1129 + ] + }, + { + "teal": 1133, + "source": 121, + "pc": [ + 1130 + ] + }, + { + "teal": 1134, + "source": 121, + "pc": [ + 1131 + ] + }, + { + "teal": 1135, + "source": 121, + "pc": [ + 1132 + ] + }, + { + "teal": 1136, + "source": 121, + "pc": [ + 1133 + ] + }, + { + "teal": 1137, + "source": 121, + "pc": [ + 1134 + ] + }, + { + "teal": 1141, + "source": 121, + "pc": [ + 1135, + 1136, + 1137 + ] + }, + { + "teal": 1144, + "source": 121, + "pc": [ + 1138 + ] + }, + { + "teal": 1148, + "source": 122, + "pc": [ + 1139, + 1140 + ] + }, + { + "teal": 1149, + "source": 122, + "pc": [ + 1141, + 1142 + ] + }, + { + "teal": 1153, + "source": 123, + "pc": [ + 1143, + 1144 + ] + }, + { + "teal": 1156, + "source": 121, + "pc": [ + 1145, + 1146 + ] + }, + { + "teal": 1157, + "source": 121, + "pc": [ + 1147 + ] + }, + { + "teal": 1161, + "source": 126, + "pc": [ + 1148, + 1149, + 1150 + ] + }, + { + "teal": 1165, + "source": 127, + "pc": [ + 1151, + 1152 + ] + }, + { + "teal": 1166, + "source": 127, + "pc": [ + 1153, + 1154 + ] + }, + { + "teal": 1167, + "source": 127, + "pc": [ + 1155 + ] + }, + { + "teal": 1168, + "source": 127, + "pc": [ + 1156 + ] + }, + { + "teal": 1169, + "source": 126, + "pc": [ + 1157 + ] + }, + { + "teal": 1174, + "source": 130, + "pc": [ + 1158, + 1159, + 1160 + ] + }, + { + "teal": 1175, + "source": 130, + "pc": [ + 1161 + ] + }, + { + "teal": 1176, + "source": 130, + "pc": [ + 1162 + ] + }, + { + "teal": 1177, + "source": 130, + "pc": [ + 1163 + ] + }, + { + "teal": 1178, + "source": 130, + "pc": [ + 1164 + ] + }, + { + "teal": 1181, + "source": 130, + "errorMessage": "argument 0 (x) for funcName must be a uint256", + "pc": [ + 1165 + ] + }, + { + "teal": 1184, + "source": 130, + "pc": [ + 1166, + 1167, + 1168 + ] + }, + { + "teal": 1185, + "source": 130, + "pc": [ + 1169 + ] + }, + { + "teal": 1186, + "source": 130, + "pc": [ + 1170 + ] + }, + { + "teal": 1190, + "source": 130, + "pc": [ + 1171, + 1172, + 1173 + ] + }, + { + "teal": 1194, + "source": 131, + "pc": [ + 1174, + 1175, + 1176 + ] + }, + { + "teal": 1195, + "source": 131, + "pc": [ + 1177, + 1178 + ] + }, + { + "teal": 1196, + "source": 131, + "pc": [ + 1179 + ] + }, + { + "teal": 1197, + "source": 131, + "pc": [ + 1180 + ] + }, + { + "teal": 1198, + "source": 131, + "pc": [ + 1181 + ] + }, + { + "teal": 1199, + "source": 131, + "pc": [ + 1182 + ] + }, + { + "teal": 1202, + "source": 131, + "errorMessage": "x overflowed 8 bits", + "pc": [ + 1183 + ] + }, + { + "teal": 1203, + "source": 131, + "pc": [ + 1184, + 1185, + 1186 + ] + }, + { + "teal": 1204, + "source": 131, + "pc": [ + 1187 + ] + }, + { + "teal": 1205, + "source": 131, + "pc": [ + 1188, + 1189, + 1190 + ] + }, + { + "teal": 1206, + "source": 130, + "pc": [ + 1191 + ] + }, + { + "teal": 1211, + "source": 134, + "pc": [ + 1192 + ] + }, + { + "teal": 1214, + "source": 134, + "pc": [ + 1193, + 1194, + 1195 + ] + }, + { + "teal": 1215, + "source": 134, + "pc": [ + 1196 + ] + }, + { + "teal": 1218, + "source": 134, + "pc": [ + 1197, + 1198, + 1199 + ] + }, + { + "teal": 1219, + "source": 134, + "pc": [ + 1200 + ] + }, + { + "teal": 1222, + "source": 134, + "pc": [ + 1201, + 1202, + 1203 + ] + }, + { + "teal": 1223, + "source": 134, + "pc": [ + 1204 + ] + }, + { + "teal": 1224, + "source": 134, + "pc": [ + 1205 + ] + }, + { + "teal": 1225, + "source": 134, + "pc": [ + 1206 + ] + }, + { + "teal": 1226, + "source": 134, + "pc": [ + 1207 + ] + }, + { + "teal": 1227, + "source": 134, + "pc": [ + 1208 + ] + }, + { + "teal": 1231, + "source": 134, + "pc": [ + 1209, + 1210, + 1211 + ] + }, + { + "teal": 1234, + "source": 134, + "pc": [ + 1212 + ] + }, + { + "teal": 1235, + "source": 134, + "pc": [ + 1213 + ] + }, + { + "teal": 1239, + "source": 135, + "pc": [ + 1214, + 1215 + ] + }, + { + "teal": 1240, + "source": 135, + "pc": [ + 1216 + ] + }, + { + "teal": 1241, + "source": 135, + "pc": [ + 1217, + 1218 + ] + }, + { + "teal": 1245, + "source": 136, + "pc": [ + 1219, + 1220 + ] + }, + { + "teal": 1246, + "source": 136, + "pc": [ + 1221 + ] + }, + { + "teal": 1247, + "source": 136, + "pc": [ + 1222, + 1223 + ] + }, + { + "teal": 1251, + "source": 137, + "pc": [ + 1224, + 1225 + ] + }, + { + "teal": 1252, + "source": 137, + "pc": [ + 1226, + 1227 + ] + }, + { + "teal": 1253, + "source": 137, + "pc": [ + 1228 + ] + }, + { + "teal": 1254, + "source": 137, + "pc": [ + 1229 + ] + }, + { + "teal": 1255, + "source": 137, + "pc": [ + 1230 + ] + }, + { + "teal": 1256, + "source": 137, + "pc": [ + 1231, + 1232 + ] + }, + { + "teal": 1257, + "source": 137, + "pc": [ + 1233 + ] + }, + { + "teal": 1260, + "source": 137, + "errorMessage": "(btobigint(x) + btobigint(y)) as uint64 overflowed 64 bits", + "pc": [ + 1234 + ] + }, + { + "teal": 1261, + "source": 137, + "pc": [ + 1235, + 1236 + ] + }, + { + "teal": 1262, + "source": 137, + "pc": [ + 1237 + ] + }, + { + "teal": 1263, + "source": 137, + "pc": [ + 1238 + ] + }, + { + "teal": 1264, + "source": 137, + "pc": [ + 1239 + ] + }, + { + "teal": 1265, + "source": 137, + "pc": [ + 1240 + ] + }, + { + "teal": 1266, + "source": 137, + "pc": [ + 1241 + ] + }, + { + "teal": 1267, + "source": 137, + "pc": [ + 1242 + ] + }, + { + "teal": 1268, + "source": 137, + "pc": [ + 1243 + ] + }, + { + "teal": 1269, + "source": 137, + "pc": [ + 1244 + ] + }, + { + "teal": 1270, + "source": 137, + "pc": [ + 1245 + ] + }, + { + "teal": 1273, + "source": 134, + "pc": [ + 1246, + 1247 + ] + }, + { + "teal": 1276, + "source": 134, + "pc": [ + 1248, + 1249 + ] + }, + { + "teal": 1277, + "source": 134, + "pc": [ + 1250 + ] + }, + { + "teal": 1282, + "source": 140, + "pc": [ + 1251 + ] + }, + { + "teal": 1285, + "source": 140, + "pc": [ + 1252, + 1253, + 1254 + ] + }, + { + "teal": 1286, + "source": 140, + "pc": [ + 1255 + ] + }, + { + "teal": 1289, + "source": 140, + "pc": [ + 1256, + 1257, + 1258 + ] + }, + { + "teal": 1290, + "source": 140, + "pc": [ + 1259 + ] + }, + { + "teal": 1293, + "source": 140, + "pc": [ + 1260, + 1261, + 1262 + ] + }, + { + "teal": 1294, + "source": 140, + "pc": [ + 1263 + ] + }, + { + "teal": 1295, + "source": 140, + "pc": [ + 1264 + ] + }, + { + "teal": 1296, + "source": 140, + "pc": [ + 1265 + ] + }, + { + "teal": 1297, + "source": 140, + "pc": [ + 1266 + ] + }, + { + "teal": 1298, + "source": 140, + "pc": [ + 1267 + ] + }, + { + "teal": 1302, + "source": 140, + "pc": [ + 1268, + 1269, + 1270 + ] + }, + { + "teal": 1306, + "source": 141, + "pc": [ + 1271, + 1272 + ] + }, + { + "teal": 1307, + "source": 141, + "pc": [ + 1273, + 1274 + ] + }, + { + "teal": 1308, + "source": 141, + "pc": [ + 1275 + ] + }, + { + "teal": 1309, + "source": 140, + "pc": [ + 1276 + ] + }, + { + "teal": 1314, + "source": 144, + "pc": [ + 1277 + ] + }, + { + "teal": 1317, + "source": 144, + "pc": [ + 1278, + 1279, + 1280 + ] + }, + { + "teal": 1318, + "source": 144, + "pc": [ + 1281 + ] + }, + { + "teal": 1321, + "source": 144, + "pc": [ + 1282, + 1283, + 1284 + ] + }, + { + "teal": 1322, + "source": 144, + "pc": [ + 1285 + ] + }, + { + "teal": 1325, + "source": 144, + "pc": [ + 1286, + 1287, + 1288 + ] + }, + { + "teal": 1326, + "source": 144, + "pc": [ + 1289 + ] + }, + { + "teal": 1327, + "source": 144, + "pc": [ + 1290 + ] + }, + { + "teal": 1328, + "source": 144, + "pc": [ + 1291 + ] + }, + { + "teal": 1329, + "source": 144, + "pc": [ + 1292 + ] + }, + { + "teal": 1330, + "source": 144, + "pc": [ + 1293 + ] + }, + { + "teal": 1334, + "source": 144, + "pc": [ + 1294, + 1295, + 1296 + ] + }, + { + "teal": 1338, + "source": 145, + "pc": [ + 1297, + 1298 + ] + }, + { + "teal": 1339, + "source": 145, + "pc": [ + 1299, + 1300 + ] + }, + { + "teal": 1340, + "source": 145, + "pc": [ + 1301 + ] + }, + { + "teal": 1341, + "source": 144, + "pc": [ + 1302 + ] + }, + { + "teal": 1346, + "source": 148, + "pc": [ + 1303 + ] + }, + { + "teal": 1349, + "source": 148, + "pc": [ + 1304, + 1305, + 1306 + ] + }, + { + "teal": 1350, + "source": 148, + "pc": [ + 1307 + ] + }, + { + "teal": 1353, + "source": 148, + "pc": [ + 1308, + 1309, + 1310 + ] + }, + { + "teal": 1354, + "source": 148, + "pc": [ + 1311 + ] + }, + { + "teal": 1357, + "source": 148, + "pc": [ + 1312, + 1313, + 1314 + ] + }, + { + "teal": 1358, + "source": 148, + "pc": [ + 1315 + ] + }, + { + "teal": 1359, + "source": 148, + "pc": [ + 1316 + ] + }, + { + "teal": 1360, + "source": 148, + "pc": [ + 1317 + ] + }, + { + "teal": 1361, + "source": 148, + "pc": [ + 1318 + ] + }, + { + "teal": 1362, + "source": 148, + "pc": [ + 1319 + ] + }, + { + "teal": 1366, + "source": 148, + "pc": [ + 1320, + 1321, + 1322 + ] + }, + { + "teal": 1370, + "source": 149, + "pc": [ + 1323, + 1324 + ] + }, + { + "teal": 1371, + "source": 149, + "pc": [ + 1325, + 1326 + ] + }, + { + "teal": 1372, + "source": 149, + "pc": [ + 1327 + ] + }, + { + "teal": 1373, + "source": 148, + "pc": [ + 1328 + ] + }, + { + "teal": 1378, + "source": 152, + "pc": [ + 1329 + ] + }, + { + "teal": 1381, + "source": 152, + "pc": [ + 1330, + 1331, + 1332 + ] + }, + { + "teal": 1382, + "source": 152, + "pc": [ + 1333 + ] + }, + { + "teal": 1383, + "source": 152, + "pc": [ + 1334 + ] + }, + { + "teal": 1384, + "source": 152, + "pc": [ + 1335 + ] + }, + { + "teal": 1385, + "source": 152, + "pc": [ + 1336 + ] + }, + { + "teal": 1388, + "source": 152, + "errorMessage": "argument 0 (b) for bitwiseOrU256 must be a uint256", + "pc": [ + 1337 + ] + }, + { + "teal": 1391, + "source": 152, + "pc": [ + 1338, + 1339, + 1340 + ] + }, + { + "teal": 1392, + "source": 152, + "pc": [ + 1341 + ] + }, + { + "teal": 1393, + "source": 152, + "pc": [ + 1342 + ] + }, + { + "teal": 1394, + "source": 152, + "pc": [ + 1343 + ] + }, + { + "teal": 1395, + "source": 152, + "pc": [ + 1344 + ] + }, + { + "teal": 1398, + "source": 152, + "errorMessage": "argument 1 (a) for bitwiseOrU256 must be a uint256", + "pc": [ + 1345 + ] + }, + { + "teal": 1401, + "source": 152, + "pc": [ + 1346, + 1347, + 1348 + ] + }, + { + "teal": 1402, + "source": 152, + "pc": [ + 1349 + ] + }, + { + "teal": 1403, + "source": 152, + "pc": [ + 1350 + ] + }, + { + "teal": 1404, + "source": 152, + "pc": [ + 1351 + ] + }, + { + "teal": 1405, + "source": 152, + "pc": [ + 1352 + ] + }, + { + "teal": 1408, + "source": 152, + "errorMessage": "bitwiseOrU256 return value overflowed 256 bits", + "pc": [ + 1353 + ] + }, + { + "teal": 1409, + "source": 152, + "pc": [ + 1354 + ] + }, + { + "teal": 1410, + "source": 152, + "pc": [ + 1355 + ] + }, + { + "teal": 1411, + "source": 152, + "pc": [ + 1356 + ] + }, + { + "teal": 1412, + "source": 152, + "pc": [ + 1357 + ] + }, + { + "teal": 1413, + "source": 152, + "pc": [ + 1358 + ] + }, + { + "teal": 1414, + "source": 152, + "pc": [ + 1359 + ] + }, + { + "teal": 1415, + "source": 152, + "pc": [ + 1360 + ] + }, + { + "teal": 1416, + "source": 152, + "pc": [ + 1361 + ] + }, + { + "teal": 1417, + "source": 152, + "pc": [ + 1362 + ] + }, + { + "teal": 1418, + "source": 152, + "pc": [ + 1363 + ] + }, + { + "teal": 1419, + "source": 152, + "pc": [ + 1364 + ] + }, + { + "teal": 1420, + "source": 152, + "pc": [ + 1365 + ] + }, + { + "teal": 1421, + "source": 152, + "pc": [ + 1366 + ] + }, + { + "teal": 1425, + "source": 152, + "pc": [ + 1367, + 1368, + 1369 + ] + }, + { + "teal": 1429, + "source": 153, + "pc": [ + 1370, + 1371 + ] + }, + { + "teal": 1430, + "source": 153, + "pc": [ + 1372, + 1373 + ] + }, + { + "teal": 1431, + "source": 153, + "pc": [ + 1374 + ] + }, + { + "teal": 1432, + "source": 152, + "pc": [ + 1375 + ] + }, + { + "teal": 1437, + "source": 156, + "pc": [ + 1376 + ] + }, + { + "teal": 1440, + "source": 156, + "pc": [ + 1377, + 1378, + 1379 + ] + }, + { + "teal": 1441, + "source": 156, + "pc": [ + 1380 + ] + }, + { + "teal": 1442, + "source": 156, + "pc": [ + 1381 + ] + }, + { + "teal": 1443, + "source": 156, + "pc": [ + 1382 + ] + }, + { + "teal": 1444, + "source": 156, + "pc": [ + 1383 + ] + }, + { + "teal": 1447, + "source": 156, + "errorMessage": "argument 0 (b) for bitwiseAndU256 must be a uint256", + "pc": [ + 1384 + ] + }, + { + "teal": 1450, + "source": 156, + "pc": [ + 1385, + 1386, + 1387 + ] + }, + { + "teal": 1451, + "source": 156, + "pc": [ + 1388 + ] + }, + { + "teal": 1452, + "source": 156, + "pc": [ + 1389 + ] + }, + { + "teal": 1453, + "source": 156, + "pc": [ + 1390 + ] + }, + { + "teal": 1454, + "source": 156, + "pc": [ + 1391 + ] + }, + { + "teal": 1457, + "source": 156, + "errorMessage": "argument 1 (a) for bitwiseAndU256 must be a uint256", + "pc": [ + 1392 + ] + }, + { + "teal": 1460, + "source": 156, + "pc": [ + 1393, + 1394, + 1395 + ] + }, + { + "teal": 1461, + "source": 156, + "pc": [ + 1396 + ] + }, + { + "teal": 1462, + "source": 156, + "pc": [ + 1397 + ] + }, + { + "teal": 1463, + "source": 156, + "pc": [ + 1398 + ] + }, + { + "teal": 1464, + "source": 156, + "pc": [ + 1399 + ] + }, + { + "teal": 1467, + "source": 156, + "errorMessage": "bitwiseAndU256 return value overflowed 256 bits", + "pc": [ + 1400 + ] + }, + { + "teal": 1468, + "source": 156, + "pc": [ + 1401 + ] + }, + { + "teal": 1469, + "source": 156, + "pc": [ + 1402 + ] + }, + { + "teal": 1470, + "source": 156, + "pc": [ + 1403 + ] + }, + { + "teal": 1471, + "source": 156, + "pc": [ + 1404 + ] + }, + { + "teal": 1472, + "source": 156, + "pc": [ + 1405 + ] + }, + { + "teal": 1473, + "source": 156, + "pc": [ + 1406 + ] + }, + { + "teal": 1474, + "source": 156, + "pc": [ + 1407 + ] + }, + { + "teal": 1475, + "source": 156, + "pc": [ + 1408 + ] + }, + { + "teal": 1476, + "source": 156, + "pc": [ + 1409 + ] + }, + { + "teal": 1477, + "source": 156, + "pc": [ + 1410 + ] + }, + { + "teal": 1478, + "source": 156, + "pc": [ + 1411 + ] + }, + { + "teal": 1479, + "source": 156, + "pc": [ + 1412 + ] + }, + { + "teal": 1480, + "source": 156, + "pc": [ + 1413 + ] + }, + { + "teal": 1484, + "source": 156, + "pc": [ + 1414, + 1415, + 1416 + ] + }, + { + "teal": 1488, + "source": 157, + "pc": [ + 1417, + 1418 + ] + }, + { + "teal": 1489, + "source": 157, + "pc": [ + 1419, + 1420 + ] + }, + { + "teal": 1490, + "source": 157, + "pc": [ + 1421 + ] + }, + { + "teal": 1491, + "source": 156, + "pc": [ + 1422 + ] + }, + { + "teal": 1496, + "source": 160, + "pc": [ + 1423 + ] + }, + { + "teal": 1499, + "source": 160, + "pc": [ + 1424, + 1425, + 1426 + ] + }, + { + "teal": 1500, + "source": 160, + "pc": [ + 1427 + ] + }, + { + "teal": 1501, + "source": 160, + "pc": [ + 1428 + ] + }, + { + "teal": 1502, + "source": 160, + "pc": [ + 1429 + ] + }, + { + "teal": 1503, + "source": 160, + "pc": [ + 1430 + ] + }, + { + "teal": 1506, + "source": 160, + "errorMessage": "argument 0 (b) for bitwiseXorU256 must be a uint256", + "pc": [ + 1431 + ] + }, + { + "teal": 1509, + "source": 160, + "pc": [ + 1432, + 1433, + 1434 + ] + }, + { + "teal": 1510, + "source": 160, + "pc": [ + 1435 + ] + }, + { + "teal": 1511, + "source": 160, + "pc": [ + 1436 + ] + }, + { + "teal": 1512, + "source": 160, + "pc": [ + 1437 + ] + }, + { + "teal": 1513, + "source": 160, + "pc": [ + 1438 + ] + }, + { + "teal": 1516, + "source": 160, + "errorMessage": "argument 1 (a) for bitwiseXorU256 must be a uint256", + "pc": [ + 1439 + ] + }, + { + "teal": 1519, + "source": 160, + "pc": [ + 1440, + 1441, + 1442 + ] + }, + { + "teal": 1520, + "source": 160, + "pc": [ + 1443 + ] + }, + { + "teal": 1521, + "source": 160, + "pc": [ + 1444 + ] + }, + { + "teal": 1522, + "source": 160, + "pc": [ + 1445 + ] + }, + { + "teal": 1523, + "source": 160, + "pc": [ + 1446 + ] + }, + { + "teal": 1526, + "source": 160, + "errorMessage": "bitwiseXorU256 return value overflowed 256 bits", + "pc": [ + 1447 + ] + }, + { + "teal": 1527, + "source": 160, + "pc": [ + 1448 + ] + }, + { + "teal": 1528, + "source": 160, + "pc": [ + 1449 + ] + }, + { + "teal": 1529, + "source": 160, + "pc": [ + 1450 + ] + }, + { + "teal": 1530, + "source": 160, + "pc": [ + 1451 + ] + }, + { + "teal": 1531, + "source": 160, + "pc": [ + 1452 + ] + }, + { + "teal": 1532, + "source": 160, + "pc": [ + 1453 + ] + }, + { + "teal": 1533, + "source": 160, + "pc": [ + 1454 + ] + }, + { + "teal": 1534, + "source": 160, + "pc": [ + 1455 + ] + }, + { + "teal": 1535, + "source": 160, + "pc": [ + 1456 + ] + }, + { + "teal": 1536, + "source": 160, + "pc": [ + 1457 + ] + }, + { + "teal": 1537, + "source": 160, + "pc": [ + 1458 + ] + }, + { + "teal": 1538, + "source": 160, + "pc": [ + 1459 + ] + }, + { + "teal": 1539, + "source": 160, + "pc": [ + 1460 + ] + }, + { + "teal": 1543, + "source": 160, + "pc": [ + 1461, + 1462, + 1463 + ] + }, + { + "teal": 1547, + "source": 161, + "pc": [ + 1464, + 1465 + ] + }, + { + "teal": 1548, + "source": 161, + "pc": [ + 1466, + 1467 + ] + }, + { + "teal": 1549, + "source": 161, + "pc": [ + 1468 + ] + }, + { + "teal": 1550, + "source": 160, + "pc": [ + 1469 + ] + }, + { + "teal": 1555, + "source": 164, + "pc": [ + 1470 + ] + }, + { + "teal": 1558, + "source": 164, + "pc": [ + 1471, + 1472, + 1473 + ] + }, + { + "teal": 1559, + "source": 164, + "pc": [ + 1474 + ] + }, + { + "teal": 1562, + "source": 164, + "pc": [ + 1475, + 1476, + 1477 + ] + }, + { + "teal": 1563, + "source": 164, + "pc": [ + 1478 + ] + }, + { + "teal": 1564, + "source": 164, + "pc": [ + 1479 + ] + }, + { + "teal": 1565, + "source": 164, + "pc": [ + 1480 + ] + }, + { + "teal": 1566, + "source": 164, + "pc": [ + 1481 + ] + }, + { + "teal": 1567, + "source": 164, + "pc": [ + 1482 + ] + }, + { + "teal": 1571, + "source": 164, + "pc": [ + 1483, + 1484, + 1485 + ] + }, + { + "teal": 1575, + "source": 165, + "pc": [ + 1486, + 1487 + ] + }, + { + "teal": 1576, + "source": 165, + "pc": [ + 1488 + ] + }, + { + "teal": 1577, + "source": 164, + "pc": [ + 1489 + ] + }, + { + "teal": 1582, + "source": 168, + "pc": [ + 1490 + ] + }, + { + "teal": 1585, + "source": 168, + "pc": [ + 1491, + 1492, + 1493 + ] + }, + { + "teal": 1586, + "source": 168, + "pc": [ + 1494 + ] + }, + { + "teal": 1587, + "source": 168, + "pc": [ + 1495 + ] + }, + { + "teal": 1588, + "source": 168, + "pc": [ + 1496 + ] + }, + { + "teal": 1589, + "source": 168, + "pc": [ + 1497 + ] + }, + { + "teal": 1592, + "source": 168, + "errorMessage": "argument 0 (a) for bitwiseNotU256 must be a uint256", + "pc": [ + 1498 + ] + }, + { + "teal": 1595, + "source": 168, + "pc": [ + 1499, + 1500, + 1501 + ] + }, + { + "teal": 1596, + "source": 168, + "pc": [ + 1502 + ] + }, + { + "teal": 1597, + "source": 168, + "pc": [ + 1503 + ] + }, + { + "teal": 1598, + "source": 168, + "pc": [ + 1504 + ] + }, + { + "teal": 1599, + "source": 168, + "pc": [ + 1505 + ] + }, + { + "teal": 1602, + "source": 168, + "errorMessage": "bitwiseNotU256 return value overflowed 256 bits", + "pc": [ + 1506 + ] + }, + { + "teal": 1603, + "source": 168, + "pc": [ + 1507 + ] + }, + { + "teal": 1604, + "source": 168, + "pc": [ + 1508 + ] + }, + { + "teal": 1605, + "source": 168, + "pc": [ + 1509 + ] + }, + { + "teal": 1606, + "source": 168, + "pc": [ + 1510 + ] + }, + { + "teal": 1607, + "source": 168, + "pc": [ + 1511 + ] + }, + { + "teal": 1608, + "source": 168, + "pc": [ + 1512 + ] + }, + { + "teal": 1609, + "source": 168, + "pc": [ + 1513 + ] + }, + { + "teal": 1610, + "source": 168, + "pc": [ + 1514 + ] + }, + { + "teal": 1611, + "source": 168, + "pc": [ + 1515 + ] + }, + { + "teal": 1612, + "source": 168, + "pc": [ + 1516 + ] + }, + { + "teal": 1613, + "source": 168, + "pc": [ + 1517 + ] + }, + { + "teal": 1614, + "source": 168, + "pc": [ + 1518 + ] + }, + { + "teal": 1615, + "source": 168, + "pc": [ + 1519 + ] + }, + { + "teal": 1619, + "source": 168, + "pc": [ + 1520, + 1521, + 1522 + ] + }, + { + "teal": 1623, + "source": 169, + "pc": [ + 1523, + 1524 + ] + }, + { + "teal": 1624, + "source": 169, + "pc": [ + 1525 + ] + }, + { + "teal": 1625, + "source": 168, + "pc": [ + 1526 + ] + }, + { + "teal": 1630, + "source": 172, + "pc": [ + 1527 + ] + }, + { + "teal": 1633, + "source": 172, + "pc": [ + 1528, + 1529, + 1530 + ] + }, + { + "teal": 1634, + "source": 172, + "pc": [ + 1531 + ] + }, + { + "teal": 1637, + "source": 172, + "pc": [ + 1532, + 1533, + 1534 + ] + }, + { + "teal": 1638, + "source": 172, + "pc": [ + 1535 + ] + }, + { + "teal": 1641, + "source": 172, + "pc": [ + 1536, + 1537, + 1538 + ] + }, + { + "teal": 1642, + "source": 172, + "pc": [ + 1539 + ] + }, + { + "teal": 1643, + "source": 172, + "pc": [ + 1540 + ] + }, + { + "teal": 1644, + "source": 172, + "pc": [ + 1541 + ] + }, + { + "teal": 1645, + "source": 172, + "pc": [ + 1542 + ] + }, + { + "teal": 1646, + "source": 172, + "pc": [ + 1543 + ] + }, + { + "teal": 1650, + "source": 172, + "pc": [ + 1544, + 1545, + 1546 + ] + }, + { + "teal": 1653, + "source": 172, + "pc": [ + 1547 + ] + }, + { + "teal": 1654, + "source": 172, + "pc": [ + 1548 + ] + }, + { + "teal": 1658, + "source": 173, + "pc": [ + 1549, + 1550 + ] + }, + { + "teal": 1659, + "source": 173, + "pc": [ + 1551, + 1552 + ] + }, + { + "teal": 1660, + "source": 173, + "pc": [ + 1553 + ] + }, + { + "teal": 1661, + "source": 173, + "pc": [ + 1554, + 1555 + ] + }, + { + "teal": 1662, + "source": 173, + "pc": [ + 1556, + 1557 + ] + }, + { + "teal": 1666, + "source": 177, + "pc": [ + 1558, + 1559 + ] + }, + { + "teal": 1669, + "source": 172, + "pc": [ + 1560, + 1561 + ] + }, + { + "teal": 1672, + "source": 172, + "pc": [ + 1562, + 1563 + ] + }, + { + "teal": 1673, + "source": 172, + "pc": [ + 1564 + ] + }, + { + "teal": 1678, + "source": 180, + "pc": [ + 1565 + ] + }, + { + "teal": 1681, + "source": 180, + "pc": [ + 1566, + 1567, + 1568 + ] + }, + { + "teal": 1682, + "source": 180, + "pc": [ + 1569 + ] + }, + { + "teal": 1685, + "source": 180, + "pc": [ + 1570, + 1571, + 1572 + ] + }, + { + "teal": 1686, + "source": 180, + "pc": [ + 1573 + ] + }, + { + "teal": 1689, + "source": 180, + "pc": [ + 1574, + 1575, + 1576 + ] + }, + { + "teal": 1690, + "source": 180, + "pc": [ + 1577 + ] + }, + { + "teal": 1691, + "source": 180, + "pc": [ + 1578 + ] + }, + { + "teal": 1692, + "source": 180, + "pc": [ + 1579 + ] + }, + { + "teal": 1693, + "source": 180, + "pc": [ + 1580 + ] + }, + { + "teal": 1694, + "source": 180, + "pc": [ + 1581 + ] + }, + { + "teal": 1698, + "source": 180, + "pc": [ + 1582, + 1583, + 1584 + ] + }, + { + "teal": 1701, + "source": 180, + "pc": [ + 1585 + ] + }, + { + "teal": 1702, + "source": 180, + "pc": [ + 1586 + ] + }, + { + "teal": 1706, + "source": 181, + "pc": [ + 1587, + 1588 + ] + }, + { + "teal": 1707, + "source": 181, + "pc": [ + 1589, + 1590 + ] + }, + { + "teal": 1708, + "source": 181, + "pc": [ + 1591 + ] + }, + { + "teal": 1709, + "source": 181, + "pc": [ + 1592, + 1593 + ] + }, + { + "teal": 1710, + "source": 181, + "pc": [ + 1594, + 1595 + ] + }, + { + "teal": 1714, + "source": 185, + "pc": [ + 1596, + 1597 + ] + }, + { + "teal": 1717, + "source": 180, + "pc": [ + 1598, + 1599 + ] + }, + { + "teal": 1720, + "source": 180, + "pc": [ + 1600, + 1601 + ] + }, + { + "teal": 1721, + "source": 180, + "pc": [ + 1602 + ] + }, + { + "teal": 1726, + "source": 188, + "pc": [ + 1603 + ] + }, + { + "teal": 1729, + "source": 188, + "pc": [ + 1604, + 1605, + 1606 + ] + }, + { + "teal": 1730, + "source": 188, + "pc": [ + 1607 + ] + }, + { + "teal": 1733, + "source": 188, + "pc": [ + 1608, + 1609, + 1610 + ] + }, + { + "teal": 1734, + "source": 188, + "pc": [ + 1611 + ] + }, + { + "teal": 1737, + "source": 188, + "pc": [ + 1612, + 1613, + 1614 + ] + }, + { + "teal": 1738, + "source": 188, + "pc": [ + 1615 + ] + }, + { + "teal": 1739, + "source": 188, + "pc": [ + 1616 + ] + }, + { + "teal": 1740, + "source": 188, + "pc": [ + 1617 + ] + }, + { + "teal": 1741, + "source": 188, + "pc": [ + 1618 + ] + }, + { + "teal": 1742, + "source": 188, + "pc": [ + 1619 + ] + }, + { + "teal": 1746, + "source": 188, + "pc": [ + 1620, + 1621, + 1622 + ] + }, + { + "teal": 1749, + "source": 188, + "pc": [ + 1623 + ] + }, + { + "teal": 1750, + "source": 188, + "pc": [ + 1624 + ] + }, + { + "teal": 1754, + "source": 189, + "pc": [ + 1625, + 1626 + ] + }, + { + "teal": 1755, + "source": 189, + "pc": [ + 1627, + 1628 + ] + }, + { + "teal": 1756, + "source": 189, + "pc": [ + 1629 + ] + }, + { + "teal": 1757, + "source": 189, + "pc": [ + 1630, + 1631 + ] + }, + { + "teal": 1758, + "source": 189, + "pc": [ + 1632, + 1633 + ] + }, + { + "teal": 1762, + "source": 193, + "pc": [ + 1634, + 1635 + ] + }, + { + "teal": 1765, + "source": 188, + "pc": [ + 1636, + 1637 + ] + }, + { + "teal": 1768, + "source": 188, + "pc": [ + 1638, + 1639 + ] + }, + { + "teal": 1769, + "source": 188, + "pc": [ + 1640 + ] + }, + { + "teal": 1774, + "source": 196, + "pc": [ + 1641 + ] + }, + { + "teal": 1777, + "source": 196, + "pc": [ + 1642, + 1643, + 1644 + ] + }, + { + "teal": 1778, + "source": 196, + "pc": [ + 1645 + ] + }, + { + "teal": 1781, + "source": 196, + "pc": [ + 1646, + 1647, + 1648 + ] + }, + { + "teal": 1782, + "source": 196, + "pc": [ + 1649 + ] + }, + { + "teal": 1785, + "source": 196, + "pc": [ + 1650, + 1651, + 1652 + ] + }, + { + "teal": 1786, + "source": 196, + "pc": [ + 1653 + ] + }, + { + "teal": 1787, + "source": 196, + "pc": [ + 1654 + ] + }, + { + "teal": 1788, + "source": 196, + "pc": [ + 1655 + ] + }, + { + "teal": 1789, + "source": 196, + "pc": [ + 1656 + ] + }, + { + "teal": 1790, + "source": 196, + "pc": [ + 1657 + ] + }, + { + "teal": 1794, + "source": 196, + "pc": [ + 1658, + 1659, + 1660 + ] + }, + { + "teal": 1798, + "source": 197, + "pc": [ + 1661, + 1662 + ] + }, + { + "teal": 1799, + "source": 197, + "pc": [ + 1663, + 1664 + ] + }, + { + "teal": 1800, + "source": 197, + "pc": [ + 1665, + 1666 + ] + }, + { + "teal": 1801, + "source": 197, + "pc": [ + 1667 + ] + }, + { + "teal": 1802, + "source": 196, + "pc": [ + 1668 + ] + }, + { + "teal": 1807, + "source": 200, + "pc": [ + 1669 + ] + }, + { + "teal": 1810, + "source": 200, + "pc": [ + 1670, + 1671, + 1672 + ] + }, + { + "teal": 1811, + "source": 200, + "pc": [ + 1673 + ] + }, + { + "teal": 1814, + "source": 200, + "pc": [ + 1674, + 1675, + 1676 + ] + }, + { + "teal": 1815, + "source": 200, + "pc": [ + 1677 + ] + }, + { + "teal": 1818, + "source": 200, + "pc": [ + 1678, + 1679, + 1680 + ] + }, + { + "teal": 1819, + "source": 200, + "pc": [ + 1681 + ] + }, + { + "teal": 1820, + "source": 200, + "pc": [ + 1682 + ] + }, + { + "teal": 1821, + "source": 200, + "pc": [ + 1683 + ] + }, + { + "teal": 1822, + "source": 200, + "pc": [ + 1684 + ] + }, + { + "teal": 1823, + "source": 200, + "pc": [ + 1685 + ] + }, + { + "teal": 1827, + "source": 200, + "pc": [ + 1686, + 1687, + 1688 + ] + }, + { + "teal": 1830, + "source": 200, + "pc": [ + 1689 + ] + }, + { + "teal": 1831, + "source": 200, + "pc": [ + 1690, + 1691 + ] + }, + { + "teal": 1835, + "source": 201, + "pc": [ + 1692, + 1693 + ] + }, + { + "teal": 1836, + "source": 201, + "pc": [ + 1694, + 1695 + ] + }, + { + "teal": 1837, + "source": 201, + "pc": [ + 1696, + 1697 + ] + }, + { + "teal": 1838, + "source": 201, + "pc": [ + 1698, + 1699 + ] + }, + { + "teal": 1839, + "source": 201, + "pc": [ + 1700 + ] + }, + { + "teal": 1840, + "source": 201, + "pc": [ + 1701, + 1702 + ] + }, + { + "teal": 1841, + "source": 201, + "pc": [ + 1703, + 1704 + ] + }, + { + "teal": 1842, + "source": 201, + "pc": [ + 1705, + 1706 + ] + }, + { + "teal": 1843, + "source": 201, + "pc": [ + 1707, + 1708 + ] + }, + { + "teal": 1847, + "source": 205, + "pc": [ + 1709, + 1710 + ] + }, + { + "teal": 1850, + "source": 200, + "pc": [ + 1711, + 1712 + ] + }, + { + "teal": 1853, + "source": 200, + "pc": [ + 1713, + 1714 + ] + }, + { + "teal": 1854, + "source": 200, + "pc": [ + 1715 + ] + }, + { + "teal": 1859, + "source": 208, + "pc": [ + 1716 + ] + }, + { + "teal": 1862, + "source": 208, + "pc": [ + 1717, + 1718, + 1719 + ] + }, + { + "teal": 1863, + "source": 208, + "pc": [ + 1720 + ] + }, + { + "teal": 1864, + "source": 208, + "pc": [ + 1721 + ] + }, + { + "teal": 1865, + "source": 208, + "pc": [ + 1722 + ] + }, + { + "teal": 1866, + "source": 208, + "pc": [ + 1723 + ] + }, + { + "teal": 1867, + "source": 208, + "pc": [ + 1724 + ] + }, + { + "teal": 1871, + "source": 208, + "pc": [ + 1725, + 1726, + 1727 + ] + }, + { + "teal": 1874, + "source": 208, + "pc": [ + 1728 + ] + }, + { + "teal": 1875, + "source": 208, + "pc": [ + 1729, + 1730 + ] + }, + { + "teal": 1879, + "source": 209, + "pc": [ + 1731, + 1732, + 1733, + 1734, + 1735, + 1736, + 1737, + 1738, + 1739, + 1740, + 1741, + 1742, + 1743, + 1744, + 1745, + 1746, + 1747, + 1748, + 1749, + 1750, + 1751, + 1752, + 1753, + 1754, + 1755, + 1756, + 1757, + 1758, + 1759, + 1760, + 1761, + 1762, + 1763, + 1764 + ] + }, + { + "teal": 1880, + "source": 209, + "pc": [ + 1765, + 1766 + ] + }, + { + "teal": 1884, + "source": 210, + "pc": [ + 1767, + 1768 + ] + }, + { + "teal": 1885, + "source": 210, + "pc": [ + 1769, + 1770 + ] + }, + { + "teal": 1889, + "source": 212, + "pc": [ + 1771, + 1772 + ] + }, + { + "teal": 1890, + "source": 212, + "pc": [ + 1773, + 1774 + ] + }, + { + "teal": 1891, + "source": 212, + "pc": [ + 1775 + ] + }, + { + "teal": 1892, + "source": 212, + "pc": [ + 1776, + 1777 + ] + }, + { + "teal": 1896, + "source": 214, + "pc": [ + 1778, + 1779 + ] + }, + { + "teal": 1897, + "source": 214, + "pc": [ + 1780 + ] + }, + { + "teal": 1898, + "source": 214, + "pc": [ + 1781 + ] + }, + { + "teal": 1899, + "source": 214, + "pc": [ + 1782, + 1783 + ] + }, + { + "teal": 1900, + "source": 214, + "pc": [ + 1784 + ] + }, + { + "teal": 1903, + "source": 214, + "errorMessage": "A as uint64 overflowed 64 bits", + "pc": [ + 1785 + ] + }, + { + "teal": 1904, + "source": 214, + "pc": [ + 1786, + 1787 + ] + }, + { + "teal": 1905, + "source": 214, + "pc": [ + 1788 + ] + }, + { + "teal": 1906, + "source": 214, + "pc": [ + 1789 + ] + }, + { + "teal": 1907, + "source": 214, + "pc": [ + 1790 + ] + }, + { + "teal": 1908, + "source": 214, + "pc": [ + 1791 + ] + }, + { + "teal": 1909, + "source": 214, + "pc": [ + 1792 + ] + }, + { + "teal": 1910, + "source": 214, + "pc": [ + 1793 + ] + }, + { + "teal": 1911, + "source": 214, + "pc": [ + 1794 + ] + }, + { + "teal": 1912, + "source": 214, + "pc": [ + 1795 + ] + }, + { + "teal": 1913, + "source": 214, + "pc": [ + 1796 + ] + }, + { + "teal": 1914, + "source": 214, + "pc": [ + 1797, + 1798 + ] + }, + { + "teal": 1918, + "source": 216, + "pc": [ + 1799, + 1800 + ] + }, + { + "teal": 1921, + "source": 208, + "pc": [ + 1801, + 1802 + ] + }, + { + "teal": 1924, + "source": 208, + "pc": [ + 1803, + 1804 + ] + }, + { + "teal": 1925, + "source": 208, + "pc": [ + 1805 + ] + }, + { + "teal": 1930, + "source": 219, + "pc": [ + 1806 + ] + }, + { + "teal": 1933, + "source": 219, + "pc": [ + 1807, + 1808, + 1809 + ] + }, + { + "teal": 1934, + "source": 219, + "pc": [ + 1810 + ] + }, + { + "teal": 1935, + "source": 219, + "pc": [ + 1811 + ] + }, + { + "teal": 1936, + "source": 219, + "pc": [ + 1812, + 1813 + ] + }, + { + "teal": 1937, + "source": 219, + "pc": [ + 1814 + ] + }, + { + "teal": 1940, + "source": 219, + "errorMessage": "argument 0 (x) for foobar must be a uint128", + "pc": [ + 1815 + ] + }, + { + "teal": 1943, + "source": 219, + "pc": [ + 1816, + 1817, + 1818 + ] + }, + { + "teal": 1944, + "source": 219, + "pc": [ + 1819 + ] + }, + { + "teal": 1945, + "source": 219, + "pc": [ + 1820 + ] + }, + { + "teal": 1946, + "source": 219, + "pc": [ + 1821, + 1822 + ] + }, + { + "teal": 1947, + "source": 219, + "pc": [ + 1823 + ] + }, + { + "teal": 1950, + "source": 219, + "errorMessage": "foobar return value overflowed 128 bits", + "pc": [ + 1824 + ] + }, + { + "teal": 1951, + "source": 219, + "pc": [ + 1825, + 1826 + ] + }, + { + "teal": 1952, + "source": 219, + "pc": [ + 1827 + ] + }, + { + "teal": 1953, + "source": 219, + "pc": [ + 1828 + ] + }, + { + "teal": 1954, + "source": 219, + "pc": [ + 1829 + ] + }, + { + "teal": 1955, + "source": 219, + "pc": [ + 1830 + ] + }, + { + "teal": 1956, + "source": 219, + "pc": [ + 1831, + 1832 + ] + }, + { + "teal": 1957, + "source": 219, + "pc": [ + 1833 + ] + }, + { + "teal": 1958, + "source": 219, + "pc": [ + 1834 + ] + }, + { + "teal": 1959, + "source": 219, + "pc": [ + 1835 + ] + }, + { + "teal": 1960, + "source": 219, + "pc": [ + 1836 + ] + }, + { + "teal": 1961, + "source": 219, + "pc": [ + 1837 + ] + }, + { + "teal": 1962, + "source": 219, + "pc": [ + 1838 + ] + }, + { + "teal": 1963, + "source": 219, + "pc": [ + 1839 + ] + }, + { + "teal": 1967, + "source": 219, + "pc": [ + 1840, + 1841, + 1842 + ] + }, + { + "teal": 1970, + "source": 219, + "pc": [ + 1843 + ] + }, + { + "teal": 1974, + "source": 220, + "pc": [ + 1844, + 1845 + ] + }, + { + "teal": 1975, + "source": 220, + "pc": [ + 1846, + 1847, + 1848, + 1849, + 1850, + 1851, + 1852, + 1853, + 1854, + 1855, + 1856, + 1857, + 1858, + 1859, + 1860, + 1861, + 1862, + 1863 + ] + }, + { + "teal": 1976, + "source": 220, + "pc": [ + 1864 + ] + }, + { + "teal": 1977, + "source": 220, + "pc": [ + 1865 + ] + }, + { + "teal": 1978, + "source": 220, + "pc": [ + 1866 + ] + }, + { + "teal": 1979, + "source": 220, + "pc": [ + 1867, + 1868 + ] + }, + { + "teal": 1980, + "source": 220, + "pc": [ + 1869 + ] + }, + { + "teal": 1983, + "source": 220, + "errorMessage": "x / (30000 as uint128) overflowed 128 bits", + "pc": [ + 1870 + ] + }, + { + "teal": 1984, + "source": 220, + "pc": [ + 1871, + 1872 + ] + }, + { + "teal": 1985, + "source": 220, + "pc": [ + 1873 + ] + }, + { + "teal": 1986, + "source": 220, + "pc": [ + 1874 + ] + }, + { + "teal": 1987, + "source": 220, + "pc": [ + 1875 + ] + }, + { + "teal": 1988, + "source": 220, + "pc": [ + 1876 + ] + }, + { + "teal": 1989, + "source": 220, + "pc": [ + 1877, + 1878 + ] + }, + { + "teal": 1990, + "source": 220, + "pc": [ + 1879 + ] + }, + { + "teal": 1991, + "source": 220, + "pc": [ + 1880 + ] + }, + { + "teal": 1992, + "source": 220, + "pc": [ + 1881 + ] + }, + { + "teal": 1993, + "source": 220, + "pc": [ + 1882, + 1883 + ] + }, + { + "teal": 1997, + "source": 222, + "pc": [ + 1884, + 1885 + ] + }, + { + "teal": 2000, + "source": 219, + "pc": [ + 1886, + 1887 + ] + }, + { + "teal": 2001, + "source": 219, + "pc": [ + 1888 + ] + }, + { + "teal": 2006, + "source": 225, + "pc": [ + 1889 + ] + }, + { + "teal": 2009, + "source": 225, + "pc": [ + 1890, + 1891, + 1892 + ] + }, + { + "teal": 2010, + "source": 225, + "pc": [ + 1893 + ] + }, + { + "teal": 2011, + "source": 225, + "pc": [ + 1894 + ] + }, + { + "teal": 2012, + "source": 225, + "pc": [ + 1895 + ] + }, + { + "teal": 2013, + "source": 225, + "pc": [ + 1896 + ] + }, + { + "teal": 2016, + "source": 225, + "errorMessage": "uintFromHex return value overflowed 256 bits", + "pc": [ + 1897 + ] + }, + { + "teal": 2017, + "source": 225, + "pc": [ + 1898 + ] + }, + { + "teal": 2018, + "source": 225, + "pc": [ + 1899 + ] + }, + { + "teal": 2019, + "source": 225, + "pc": [ + 1900 + ] + }, + { + "teal": 2020, + "source": 225, + "pc": [ + 1901 + ] + }, + { + "teal": 2021, + "source": 225, + "pc": [ + 1902 + ] + }, + { + "teal": 2022, + "source": 225, + "pc": [ + 1903 + ] + }, + { + "teal": 2023, + "source": 225, + "pc": [ + 1904 + ] + }, + { + "teal": 2024, + "source": 225, + "pc": [ + 1905 + ] + }, + { + "teal": 2025, + "source": 225, + "pc": [ + 1906 + ] + }, + { + "teal": 2026, + "source": 225, + "pc": [ + 1907 + ] + }, + { + "teal": 2027, + "source": 225, + "pc": [ + 1908 + ] + }, + { + "teal": 2028, + "source": 225, + "pc": [ + 1909 + ] + }, + { + "teal": 2029, + "source": 225, + "pc": [ + 1910 + ] + }, + { + "teal": 2033, + "source": 225, + "pc": [ + 1911, + 1912, + 1913 + ] + }, + { + "teal": 2037, + "source": 226, + "pc": [ + 1914, + 1915, + 1916, + 1917, + 1918, + 1919, + 1920, + 1921, + 1922, + 1923, + 1924, + 1925, + 1926, + 1927, + 1928, + 1929, + 1930, + 1931, + 1932, + 1933, + 1934, + 1935, + 1936, + 1937, + 1938, + 1939, + 1940, + 1941, + 1942, + 1943, + 1944, + 1945, + 1946, + 1947 + ] + }, + { + "teal": 2038, + "source": 225, + "pc": [ + 1948 + ] + }, + { + "teal": 2041, + "source": 4, + "pc": [ + 1949 + ] + }, + { + "teal": 2042, + "source": 4, + "pc": [ + 1950 + ] + }, + { + "teal": 2045, + "source": 4, + "pc": [ + 1951, + 1952, + 1953, + 1954, + 1955, + 1956 + ] + }, + { + "teal": 2046, + "source": 4, + "pc": [ + 1957, + 1958, + 1959 + ] + }, + { + "teal": 2047, + "source": 4, + "pc": [ + 1960, + 1961, + 1962, + 1963 + ] + }, + { + "teal": 2050, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 1964 + ] + }, + { + "teal": 2053, + "source": 4, + "pc": [ + 1965, + 1966, + 1967, + 1968, + 1969, + 1970 + ] + }, + { + "teal": 2054, + "source": 4, + "pc": [ + 1971, + 1972, + 1973, + 1974, + 1975, + 1976 + ] + }, + { + "teal": 2055, + "source": 4, + "pc": [ + 1977, + 1978, + 1979, + 1980, + 1981, + 1982 + ] + }, + { + "teal": 2056, + "source": 4, + "pc": [ + 1983, + 1984, + 1985, + 1986, + 1987, + 1988 + ] + }, + { + "teal": 2057, + "source": 4, + "pc": [ + 1989, + 1990, + 1991, + 1992, + 1993, + 1994 + ] + }, + { + "teal": 2058, + "source": 4, + "pc": [ + 1995, + 1996, + 1997, + 1998, + 1999, + 2000 + ] + }, + { + "teal": 2059, + "source": 4, + "pc": [ + 2001, + 2002, + 2003, + 2004, + 2005, + 2006 + ] + }, + { + "teal": 2060, + "source": 4, + "pc": [ + 2007, + 2008, + 2009, + 2010, + 2011, + 2012 + ] + }, + { + "teal": 2061, + "source": 4, + "pc": [ + 2013, + 2014, + 2015, + 2016, + 2017, + 2018 + ] + }, + { + "teal": 2062, + "source": 4, + "pc": [ + 2019, + 2020, + 2021, + 2022, + 2023, + 2024 + ] + }, + { + "teal": 2063, + "source": 4, + "pc": [ + 2025, + 2026, + 2027, + 2028, + 2029, + 2030 + ] + }, + { + "teal": 2064, + "source": 4, + "pc": [ + 2031, + 2032, + 2033, + 2034, + 2035, + 2036 + ] + }, + { + "teal": 2065, + "source": 4, + "pc": [ + 2037, + 2038, + 2039, + 2040, + 2041, + 2042 + ] + }, + { + "teal": 2066, + "source": 4, + "pc": [ + 2043, + 2044, + 2045, + 2046, + 2047, + 2048 + ] + }, + { + "teal": 2067, + "source": 4, + "pc": [ + 2049, + 2050, + 2051, + 2052, + 2053, + 2054 + ] + }, + { + "teal": 2068, + "source": 4, + "pc": [ + 2055, + 2056, + 2057, + 2058, + 2059, + 2060 + ] + }, + { + "teal": 2069, + "source": 4, + "pc": [ + 2061, + 2062, + 2063, + 2064, + 2065, + 2066 + ] + }, + { + "teal": 2070, + "source": 4, + "pc": [ + 2067, + 2068, + 2069, + 2070, + 2071, + 2072 + ] + }, + { + "teal": 2071, + "source": 4, + "pc": [ + 2073, + 2074, + 2075, + 2076, + 2077, + 2078 + ] + }, + { + "teal": 2072, + "source": 4, + "pc": [ + 2079, + 2080, + 2081, + 2082, + 2083, + 2084 + ] + }, + { + "teal": 2073, + "source": 4, + "pc": [ + 2085, + 2086, + 2087, + 2088, + 2089, + 2090 + ] + }, + { + "teal": 2074, + "source": 4, + "pc": [ + 2091, + 2092, + 2093, + 2094, + 2095, + 2096 + ] + }, + { + "teal": 2075, + "source": 4, + "pc": [ + 2097, + 2098, + 2099, + 2100, + 2101, + 2102 + ] + }, + { + "teal": 2076, + "source": 4, + "pc": [ + 2103, + 2104, + 2105, + 2106, + 2107, + 2108 + ] + }, + { + "teal": 2077, + "source": 4, + "pc": [ + 2109, + 2110, + 2111, + 2112, + 2113, + 2114 + ] + }, + { + "teal": 2078, + "source": 4, + "pc": [ + 2115, + 2116, + 2117, + 2118, + 2119, + 2120 + ] + }, + { + "teal": 2079, + "source": 4, + "pc": [ + 2121, + 2122, + 2123, + 2124, + 2125, + 2126 + ] + }, + { + "teal": 2080, + "source": 4, + "pc": [ + 2127, + 2128, + 2129, + 2130, + 2131, + 2132 + ] + }, + { + "teal": 2081, + "source": 4, + "pc": [ + 2133, + 2134, + 2135, + 2136, + 2137, + 2138 + ] + }, + { + "teal": 2082, + "source": 4, + "pc": [ + 2139, + 2140, + 2141, + 2142, + 2143, + 2144 + ] + }, + { + "teal": 2083, + "source": 4, + "pc": [ + 2145, + 2146, + 2147, + 2148, + 2149, + 2150 + ] + }, + { + "teal": 2084, + "source": 4, + "pc": [ + 2151, + 2152, + 2153, + 2154, + 2155, + 2156 + ] + }, + { + "teal": 2085, + "source": 4, + "pc": [ + 2157, + 2158, + 2159, + 2160, + 2161, + 2162 + ] + }, + { + "teal": 2086, + "source": 4, + "pc": [ + 2163, + 2164, + 2165, + 2166, + 2167, + 2168 + ] + }, + { + "teal": 2087, + "source": 4, + "pc": [ + 2169, + 2170, + 2171, + 2172, + 2173, + 2174 + ] + }, + { + "teal": 2088, + "source": 4, + "pc": [ + 2175, + 2176, + 2177, + 2178, + 2179, + 2180 + ] + }, + { + "teal": 2089, + "source": 4, + "pc": [ + 2181, + 2182, + 2183, + 2184, + 2185, + 2186 + ] + }, + { + "teal": 2090, + "source": 4, + "pc": [ + 2187, + 2188, + 2189, + 2190, + 2191, + 2192 + ] + }, + { + "teal": 2091, + "source": 4, + "pc": [ + 2193, + 2194, + 2195, + 2196, + 2197, + 2198 + ] + }, + { + "teal": 2092, + "source": 4, + "pc": [ + 2199, + 2200, + 2201, + 2202, + 2203, + 2204 + ] + }, + { + "teal": 2093, + "source": 4, + "pc": [ + 2205, + 2206, + 2207, + 2208, + 2209, + 2210 + ] + }, + { + "teal": 2094, + "source": 4, + "pc": [ + 2211, + 2212, + 2213 + ] + }, + { + "teal": 2095, + "source": 4, + "pc": [ + 2214, + 2215, + 2216, + 2217, + 2218, + 2219, + 2220, + 2221, + 2222, + 2223, + 2224, + 2225, + 2226, + 2227, + 2228, + 2229, + 2230, + 2231, + 2232, + 2233, + 2234, + 2235, + 2236, + 2237, + 2238, + 2239, + 2240, + 2241, + 2242, + 2243, + 2244, + 2245, + 2246, + 2247, + 2248, + 2249, + 2250, + 2251, + 2252, + 2253, + 2254, + 2255, + 2256, + 2257, + 2258, + 2259, + 2260, + 2261, + 2262, + 2263, + 2264, + 2265, + 2266, + 2267, + 2268, + 2269, + 2270, + 2271, + 2272, + 2273, + 2274, + 2275, + 2276, + 2277, + 2278, + 2279, + 2280, + 2281, + 2282, + 2283, + 2284, + 2285, + 2286, + 2287, + 2288, + 2289, + 2290, + 2291, + 2292, + 2293, + 2294, + 2295, + 2296, + 2297 + ] + }, + { + "teal": 2098, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 2298 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfdTY0cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NHBsdXMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1NjRwbHVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NHBsdXM6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjgKCS8vIHJldHVybiBhICsgYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCXJldHN1YgoKLy8gdTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRtaW51cyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiB1NjRtaW51cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG1pbnVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NG1pbnVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMgoJLy8gcmV0dXJuIGEgLSBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJLQoJcmV0c3ViCgovLyB1NjRtdWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtdWw6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0bXVsKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NG11bAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG11bChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAp1NjRtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjE2CgkvLyByZXR1cm4gYSAqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkqCglyZXRzdWIKCi8vIHU2NGRpdih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3U2NGRpdjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRkaXYodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgdTY0ZGl2CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTY0ZGl2KGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NGRpdjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAKCS8vIHJldHVybiBhIC8gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCS8KCXJldHN1YgoKLy8gdTI1NnBsdXModWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV91MjU2cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1NnBsdXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZwbHVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHUyNTZwbHVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZwbHVzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHUyNTZwbHVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyNAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIrCglyZXRzdWIKCi8vIHUyNTZtaW51cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm1pbnVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciB1MjU2bWludXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtaW51cwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdTI1Nm1pbnVzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1Nm1pbnVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtaW51czoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjgKCS8vIHJldHVybiA8dWludDI1Nj4oYSAtIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJcmV0c3ViCgovLyB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfdTI1Nm11bDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtdWwKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHUyNTZtdWwgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1MjU2bXVsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjMyCgkvLyByZXR1cm4gPHVpbnQyNTY+KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYioKCXJldHN1YgoKLy8gdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZkaXY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1MjU2ZGl2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2ZGl2IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1NmRpdihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1MjU2ZGl2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czozNgoJLy8gcmV0dXJuIDx1aW50MjU2PihhIC8gYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIvCglyZXRzdWIKCi8vIHU2NFJldHVybjI1Nih1aW50NjQsdWludDY0KXVpbnQyNTYKKmFiaV9yb3V0ZV91NjRSZXR1cm4yNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0UmV0dXJuMjU2KHVpbnQ2NCx1aW50NjQpdWludDI1NgoJY2FsbHN1YiB1NjRSZXR1cm4yNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHU2NFJldHVybjI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NFJldHVybjI1NihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQyNTYKdTY0UmV0dXJuMjU2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0MAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglpdG9iCglyZXRzdWIKCi8vIG1heFU2NCgpdWludDY0CiphYmlfcm91dGVfbWF4VTY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1heFU2NCgpdWludDY0CgljYWxsc3ViIG1heFU2NAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG1heFU2NCgpOiB1aW50NjQKbWF4VTY0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0NAoJLy8gcmV0dXJuIFVpbnQ8NjQ+KCcxODQ0Njc0NDA3MzcwOTU1MTYxNScpOwoJaW50IDE4NDQ2NzQ0MDczNzA5NTUxNjE1CglyZXRzdWIKCi8vIGV4cG9uZW50KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfZXhwb25lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgZXhwb25lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHBvbmVudChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHBvbmVudDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NDgKCS8vIHJldHVybiBhICoqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglleHAKCXJldHN1YgoKLy8gdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKKmFiaV9yb3V0ZV92YXJpYWJsZVR5cGVIaW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHkpIGZvciB2YXJpYWJsZVR5cGVIaW50IG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8geDogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdmFyaWFibGVUeXBlSGludCBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKCWNhbGxzdWIgdmFyaWFibGVUeXBlSGludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB2YXJpYWJsZVR5cGVIaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB2YXJpYWJsZVR5cGVIaW50KHg6IHVpbnQ8OD4sIHk6IHVpbnQ8OD4pOiB1aW50MTYKdmFyaWFibGVUeXBlSGludDoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1MgoJLy8geiA9IDx1aW50MTY+KHggKyB5KQoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50PDg+CgkrCglmcmFtZV9idXJ5IDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NTQKCS8vIHJldHVybiB6OwoJZnJhbWVfZGlnIDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyB1aW50OHBsdXModWludDgsdWludDgpdWludDgKKmFiaV9yb3V0ZV91aW50OHBsdXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdWludDhwbHVzKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4cGx1cwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIHVpbnQ4cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50OHBsdXMoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1OAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CgkrCglyZXRzdWIKCi8vIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CiphYmlfcm91dGVfdWludDhleHA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4ZXhwIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDhleHAgbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4ZXhwCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDgKCTw9CgoJLy8gdWludDhleHAgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludDhleHAoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhleHA6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjYyCgkvLyByZXR1cm4gYSAqKiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CglleHAKCXJldHN1YgoKLy8gcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3BsdXNFcXVhbHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcGx1c0VxdWFscyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwbHVzRXF1YWxzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjY2CgkvLyB4ID0gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NjgKCS8vIHggKz0gYgoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8geDogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3MAoJLy8gcmV0dXJuIHg7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGx1c0VxdWFsc0Zyb21HbG9iYWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9wbHVzRXF1YWxzRnJvbUdsb2JhbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzRnJvbUdsb2JhbAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNGcm9tR2xvYmFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnBsdXNFcXVhbHNGcm9tR2xvYmFsOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3NAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gYQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjc2CgkvLyB0aGlzLmdLZXkudmFsdWUgKz0gYgoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3OAoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGJveFRlc3QoKXVpbnQyNTYKKmFiaV9yb3V0ZV9ib3hUZXN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveFRlc3QoKXVpbnQyNTYKCWNhbGxzdWIgYm94VGVzdAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYm94VGVzdCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveFRlc3QoKTogdWludDI1Ngpib3hUZXN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo4NAoJLy8gdGhpcy5ib3hLZXkudmFsdWUgPSA8dWludDI1Nj4xCglieXRlIDB4NjI2Zjc4NGI2NTc5IC8vICJib3hLZXkiCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODUKCS8vIHRoaXMuYm94S2V5LnZhbHVlICs9IDEKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJYnl0ZSAweDYyNmY3ODRiNjU3OSAvLyAiYm94S2V5IgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdGhpcy5ib3hLZXkudmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODcKCS8vIHJldHVybiB0aGlzLmJveEtleS52YWx1ZTsKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCXJldHN1YgoKLy8gZm9vKHg6IHVpbnQyNTYpOiB1aW50MjU2CmZvbzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTEKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCXJldHN1YgoKLy8gdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1bnNhZmVNZXRob2RBcmdzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1bnNhZmVNZXRob2RBcmdzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW5zYWZlTWV0aG9kQXJncyhhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1bnNhZmVNZXRob2RBcmdzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjk1CgkvLyBjID0gYSArIGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYisKCWZyYW1lX2J1cnkgMCAvLyBjOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTcKCS8vIHJldHVybiB0aGlzLmZvbyhjKTsKCWZyYW1lX2RpZyAwIC8vIGM6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBjIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNhbGxzdWIgZm9vCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX3VpbnQyNTZDb21wYXJpc29uVHlwZToKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJpc29uVHlwZSBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDI1NkNvbXBhcmlzb25UeXBlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyaXNvblR5cGUKCWludCAxCglyZXR1cm4KCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZShhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdm9pZAp1aW50MjU2Q29tcGFyaXNvblR5cGU6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTAxCgkvLyBzZW5kZXJCYWxhbmNlQWZ0ZXIgPSBhIC0gYgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJZnJhbWVfYnVyeSAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDIKCS8vIHNlbmRlckJhbGFuY2VBZnRlciA+IDx1aW50MjU2PjAKCWZyYW1lX2RpZyAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliPgoJYnogKmlmMF9lbHNlCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEwMwoJLy8gbG9nKCdub25aZXJvJykKCWJ5dGUgMHg2ZTZmNmU1YTY1NzI2ZiAvLyAibm9uWmVybyIKCWxvZwoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDUKCS8vIGxvZygnemVybycpCglieXRlIDB4N2E2NTcyNmYgLy8gInplcm8iCglsb2cKCippZjBfZW5kOgoJcmV0c3ViCgovLyBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfc3F1YXJlUm9vdDI1NjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHNxdWFyZVJvb3QyNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHNxdWFyZVJvb3QyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290MjU2KGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnNxdWFyZVJvb3QyNTY6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExMAoJLy8gcmV0dXJuIHNxcnQoYSAqIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKgoJYnNxcnQKCXJldHN1YgoKLy8gc3F1YXJlUm9vdDY0KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfc3F1YXJlUm9vdDY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHNxdWFyZVJvb3Q2NCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBzcXVhcmVSb290NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290NjQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKc3F1YXJlUm9vdDY0OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMTQKCS8vIHJldHVybiBzcXJ0KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gYWRkcmVzc1RvQmlnSW50KGFkZHJlc3MpYm9vbAoqYWJpX3JvdXRlX2FkZHJlc3NUb0JpZ0ludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYWRkcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyKSBmb3IgYWRkcmVzc1RvQmlnSW50IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wKCWNhbGxzdWIgYWRkcmVzc1RvQmlnSW50CglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZHJlc3NUb0JpZ0ludChhZGRyOiBBZGRyZXNzKTogYm9vbGVhbgphZGRyZXNzVG9CaWdJbnQ6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExOAoJLy8gcmV0dXJuIGJ0b2JpZ2ludChhZGRyKSA+IGJ0b2JpZ2ludCh0aGlzLnR4bi5zZW5kZXIpOwoJZnJhbWVfZGlnIC0xIC8vIGFkZHI6IEFkZHJlc3MKCXR4biBTZW5kZXIKCWI+CglyZXRzdWIKCi8vIHU4VG91NjQoKXVpbnQ2NAoqYWJpX3JvdXRlX3U4VG91NjQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdThUb3U2NCgpdWludDY0CgljYWxsc3ViIHU4VG91NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1OFRvdTY0KCk6IHVpbnQ2NAp1OFRvdTY0OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEyMgoJLy8geDogdWludDggPSA3CglpbnQgNwoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjMKCS8vIHJldHVybiA8dWludDY0Png7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBwcml2YXRlRnVuY05hbWUoeDogdWludDgsIHk6IHVpbnQ2NCk6IHZvaWQKcHJpdmF0ZUZ1bmNOYW1lOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjcKCS8vIGFzc2VydCg8dWludDg+eSA+IHgpCglmcmFtZV9kaWcgLTIgLy8geTogdWludDY0CglmcmFtZV9kaWcgLTEgLy8geDogdWludDgKCT4KCWFzc2VydAoJcmV0c3ViCgovLyBmdW5jTmFtZSh1aW50MjU2KXZvaWQKKmFiaV9yb3V0ZV9mdW5jTmFtZToKCS8vIHg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeCkgZm9yIGZ1bmNOYW1lIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGZ1bmNOYW1lKHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBmdW5jTmFtZQoJaW50IDEKCXJldHVybgoKLy8gZnVuY05hbWUoeDogdWludDI1Nik6IHZvaWQKZnVuY05hbWU6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzMQoJLy8gdGhpcy5wcml2YXRlRnVuY05hbWUoPHVpbnQ4PngsIDEzMzcpCglpbnQgMTMzNwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyA8dWludDg+eCBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDMxIDEKCWJ0b2kKCWNhbGxzdWIgcHJpdmF0ZUZ1bmNOYW1lCglyZXRzdWIKCi8vIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaWdpbnRQbHVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYmlnaW50UGx1cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpZ2ludFBsdXMoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYmlnaW50UGx1czoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNQoJLy8geCA9IGl0b2IoYSkKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNgoJLy8geSA9IGl0b2IoYikKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNwoJLy8gcmV0dXJuIChidG9iaWdpbnQoeCkgKyBidG9iaWdpbnQoeSkpIGFzIHVpbnQ2NDsKCWZyYW1lX2RpZyAwIC8vIHg6IGJ5dGVbXQoJZnJhbWVfZGlnIDEgLy8geTogYnl0ZVtdCgliKwoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyAoYnRvYmlnaW50KHgpICsgYnRvYmlnaW50KHkpKSBhcyB1aW50NjQgb3ZlcmZsb3dlZCA2NCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJpdHdpc2VPcih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VPcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZU9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYml0d2lzZU9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmJpdHdpc2VPcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQxCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlQW5kOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZUFuZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZUFuZDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ1CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkmCglyZXRzdWIKCi8vIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlWG9yOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZVhvcgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZVhvcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ5CgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgleCglyZXRzdWIKCi8vIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9iaXR3aXNlT3JVMjU2OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKCWNhbGxzdWIgYml0d2lzZU9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU9yVTI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VPclUyNTYoYTogdWludDI1NiwgYjogdWludDI1Nik6IHVpbnQyNTYKYml0d2lzZU9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTUzCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJ8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZUFuZFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VBbmRVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlQW5kVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlQW5kVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlQW5kVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZUFuZFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlQW5kVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlQW5kVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTU3CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWImCglyZXRzdWIKCi8vIGJpdHdpc2VYb3JVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZVhvclUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VYb3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlWG9yVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlWG9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZVhvclUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlWG9yVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlWG9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTYxCgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJeCglyZXRzdWIKCi8vIGJpdHdpc2VOb3QodWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VOb3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYml0d2lzZU5vdCh1aW50NjQpdWludDY0CgljYWxsc3ViIGJpdHdpc2VOb3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90KGE6IHVpbnQ2NCk6IHVpbnQ2NApiaXR3aXNlTm90OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxNjUKCS8vIHJldHVybiB+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCX4KCXJldHN1YgoKLy8gYml0d2lzZU5vdFUyNTYodWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZU5vdFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJpdHdpc2VOb3RVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VOb3RVMjU2KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlTm90VTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU5vdFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90VTI1NihhOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlTm90VTI1NjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTY5CgkvLyByZXR1cm4gfmE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJYn4KCXJldHN1YgoKLy8gbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX211bHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBtdWx3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbXVsdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAptdWx3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTczCgkvLyBwID0gbXVsdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTc3CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2FkZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhZGR3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAphZGR3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTgxCgkvLyBwID0gYWRkdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJYWRkdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg1CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2V4cHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBleHB3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZXhwdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHB3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg5CgkvLyBwID0gZXhwdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZXhwdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTkzCgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdnc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZ3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2dyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZ3OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxOTcKCS8vIHJldHVybiBkaXZ3KDAsIGEsIGIpOwoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWRpdncKCXJldHN1YgoKLy8gZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdm1vZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZtb2R3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2bW9kdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZtb2R3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAxCgkvLyBwID0gZGl2bW9kdygwLCBhLCAwLCBiKQoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkaXZtb2R3CglmcmFtZV9idXJ5IDAgLy8gcCByZW1haW5kZXJMb3c6IHVpbnQ2NAoJZnJhbWVfYnVyeSAxIC8vIHAgcmVtYWluZGVySGlnaDogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gcCBxdW90aWVudExvdzogdWludDY0CglmcmFtZV9idXJ5IDMgLy8gcCBxdW90aWVudEhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA1CgkvLyByZXR1cm4gcDIucXVvdGllbnRMb3c7CglmcmFtZV9kaWcgMiAvLyBwIHF1b3RpZW50TG93OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCi8vIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CiphYmlfcm91dGVfdW5zYWZlVmFyaWFibGVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CgljYWxsc3ViIHVuc2FmZVZhcmlhYmxlcwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVuc2FmZVZhcmlhYmxlcygpOiB1aW50NjQKdW5zYWZlVmFyaWFibGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA5CgkvLyBBID0gPHVpbnQyNTY+MjUwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZWU2YjI4MAoJZnJhbWVfYnVyeSAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTAKCS8vIEIgPSA8dWludDI1Nj4xMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNlOAoJZnJhbWVfYnVyeSAxIC8vIEI6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIxMgoJLy8gQSA9IEEgLyBCCglmcmFtZV9kaWcgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzZTggLy8gQjogdWludDI1NgoJYi8KCWZyYW1lX2J1cnkgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjE0CgkvLyBjID0gQSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDY0Cgk8PQoKCS8vIEEgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCglmcmFtZV9idXJ5IDIgLy8gYzogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTYKCS8vIHJldHVybiBjOwoJZnJhbWVfZGlnIDIgLy8gYzogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBmb29iYXIodWludDEyOCl1aW50MTI4CiphYmlfcm91dGVfZm9vYmFyOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB4OiB1aW50MTI4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE2Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBmb29iYXIgbXVzdCBiZSBhIHVpbnQxMjgKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZm9vYmFyKHVpbnQxMjgpdWludDEyOAoJY2FsbHN1YiBmb29iYXIKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIGZvb2JhciByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb29iYXIoeDogdWludDEyOCk6IHVpbnQxMjgKZm9vYmFyOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIyMAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB4IC8gKDMwMDAwIGFzIHVpbnQxMjgpCglmcmFtZV9kaWcgLTEgLy8geDogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3NTMwCgliLwoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8geCAvICgzMDAwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMjIKCS8vIHJldHVybiBhdmdTdGFrZTsKCWZyYW1lX2RpZyAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnRGcm9tSGV4KCl1aW50MjU2CiphYmlfcm91dGVfdWludEZyb21IZXg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludEZyb21IZXgoKXVpbnQyNTYKCWNhbGxzdWIgdWludEZyb21IZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHVpbnRGcm9tSGV4IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludEZyb21IZXgoKTogdWludDI1Ngp1aW50RnJvbUhleDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjI2CgkvLyByZXR1cm4gVWludDwyNTY+KCcweEZGJyk7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBmZgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidTY0cGx1cyh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInU2NG11bCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0ZGl2KHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJ1MjU2cGx1cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2ZGl2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1NjRSZXR1cm4yNTYodWludDY0LHVpbnQ2NCl1aW50MjU2IgoJbWV0aG9kICJtYXhVNjQoKXVpbnQ2NCIKCW1ldGhvZCAiZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInZhcmlhYmxlVHlwZUhpbnQodWludDgsdWludDgpdWludDE2IgoJbWV0aG9kICJ1aW50OHBsdXModWludDgsdWludDgpdWludDgiCgltZXRob2QgInVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4IgoJbWV0aG9kICJwbHVzRXF1YWxzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiYm94VGVzdCgpdWludDI1NiIKCW1ldGhvZCAidW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidWludDI1NkNvbXBhcmlzb25UeXBlKHVpbnQyNTYsdWludDI1Nil2b2lkIgoJbWV0aG9kICJzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJzcXVhcmVSb290NjQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wiCgltZXRob2QgInU4VG91NjQoKXVpbnQ2NCIKCW1ldGhvZCAiZnVuY05hbWUodWludDI1Nil2b2lkIgoJbWV0aG9kICJiaWdpbnRQbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgImJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAiYml0d2lzZU5vdCh1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlTm90VTI1Nih1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgIm11bHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImV4cHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdncodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdm1vZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInVuc2FmZVZhcmlhYmxlcygpdWludDY0IgoJbWV0aG9kICJmb29iYXIodWludDEyOCl1aW50MTI4IgoJbWV0aG9kICJ1aW50RnJvbUhleCgpdWludDI1NiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdTY0cGx1cyAqYWJpX3JvdXRlX3U2NG1pbnVzICphYmlfcm91dGVfdTY0bXVsICphYmlfcm91dGVfdTY0ZGl2ICphYmlfcm91dGVfdTI1NnBsdXMgKmFiaV9yb3V0ZV91MjU2bWludXMgKmFiaV9yb3V0ZV91MjU2bXVsICphYmlfcm91dGVfdTI1NmRpdiAqYWJpX3JvdXRlX3U2NFJldHVybjI1NiAqYWJpX3JvdXRlX21heFU2NCAqYWJpX3JvdXRlX2V4cG9uZW50ICphYmlfcm91dGVfdmFyaWFibGVUeXBlSGludCAqYWJpX3JvdXRlX3VpbnQ4cGx1cyAqYWJpX3JvdXRlX3VpbnQ4ZXhwICphYmlfcm91dGVfcGx1c0VxdWFscyAqYWJpX3JvdXRlX3BsdXNFcXVhbHNGcm9tR2xvYmFsICphYmlfcm91dGVfYm94VGVzdCAqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3MgKmFiaV9yb3V0ZV91aW50MjU2Q29tcGFyaXNvblR5cGUgKmFiaV9yb3V0ZV9zcXVhcmVSb290MjU2ICphYmlfcm91dGVfc3F1YXJlUm9vdDY0ICphYmlfcm91dGVfYWRkcmVzc1RvQmlnSW50ICphYmlfcm91dGVfdThUb3U2NCAqYWJpX3JvdXRlX2Z1bmNOYW1lICphYmlfcm91dGVfYmlnaW50UGx1cyAqYWJpX3JvdXRlX2JpdHdpc2VPciAqYWJpX3JvdXRlX2JpdHdpc2VBbmQgKmFiaV9yb3V0ZV9iaXR3aXNlWG9yICphYmlfcm91dGVfYml0d2lzZU9yVTI1NiAqYWJpX3JvdXRlX2JpdHdpc2VBbmRVMjU2ICphYmlfcm91dGVfYml0d2lzZVhvclUyNTYgKmFiaV9yb3V0ZV9iaXR3aXNlTm90ICphYmlfcm91dGVfYml0d2lzZU5vdFUyNTYgKmFiaV9yb3V0ZV9tdWx3ICphYmlfcm91dGVfYWRkdyAqYWJpX3JvdXRlX2V4cHcgKmFiaV9yb3V0ZV9kaXZ3ICphYmlfcm91dGVfZGl2bW9kdyAqYWJpX3JvdXRlX3Vuc2FmZVZhcmlhYmxlcyAqYWJpX3JvdXRlX2Zvb2JhciAqYWJpX3JvdXRlX3VpbnRGcm9tSGV4CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfdTY0cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRwbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NHBsdXMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1NjRwbHVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NHBsdXM6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjgKCS8vIHJldHVybiBhICsgYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCXJldHN1YgoKLy8gdTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRtaW51cyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiB1NjRtaW51cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG1pbnVzKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NG1pbnVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMgoJLy8gcmV0dXJuIGEgLSBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJLQoJcmV0c3ViCgovLyB1NjRtdWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV91NjRtdWw6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0bXVsKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIHU2NG11bAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NG11bChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAp1NjRtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjE2CgkvLyByZXR1cm4gYSAqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkqCglyZXRzdWIKCi8vIHU2NGRpdih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3U2NGRpdjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSB1NjRkaXYodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgdTY0ZGl2CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTY0ZGl2KGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnU2NGRpdjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAKCS8vIHJldHVybiBhIC8gYjsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCS8KCXJldHN1YgoKLy8gdTI1NnBsdXModWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV91MjU2cGx1czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1NnBsdXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZwbHVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHUyNTZwbHVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZwbHVzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHUyNTZwbHVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyNAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIrCglyZXRzdWIKCi8vIHUyNTZtaW51cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZtaW51czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm1pbnVzIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciB1MjU2bWludXMgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtaW51cwoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdTI1Nm1pbnVzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1Nm1pbnVzKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtaW51czoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjgKCS8vIHJldHVybiA8dWludDI1Nj4oYSAtIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJcmV0c3ViCgovLyB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfdTI1Nm11bDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdTI1Nm11bCBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSB1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHUyNTZtdWwKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHUyNTZtdWwgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1MjU2bXVsKGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnUyNTZtdWw6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjMyCgkvLyByZXR1cm4gPHVpbnQyNTY+KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYioKCXJldHN1YgoKLy8gdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3UyNTZkaXY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHUyNTZkaXYgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdTI1NmRpdih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1MjU2ZGl2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1MjU2ZGl2IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdTI1NmRpdihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1MjU2ZGl2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czozNgoJLy8gcmV0dXJuIDx1aW50MjU2PihhIC8gYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWIvCglyZXRzdWIKCi8vIHU2NFJldHVybjI1Nih1aW50NjQsdWludDY0KXVpbnQyNTYKKmFiaV9yb3V0ZV91NjRSZXR1cm4yNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgdTY0UmV0dXJuMjU2KHVpbnQ2NCx1aW50NjQpdWludDI1NgoJY2FsbHN1YiB1NjRSZXR1cm4yNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHU2NFJldHVybjI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHU2NFJldHVybjI1NihhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQyNTYKdTY0UmV0dXJuMjU2OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0MAoJLy8gcmV0dXJuIDx1aW50MjU2PihhICsgYik7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglpdG9iCglyZXRzdWIKCi8vIG1heFU2NCgpdWludDY0CiphYmlfcm91dGVfbWF4VTY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIG1heFU2NCgpdWludDY0CgljYWxsc3ViIG1heFU2NAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIG1heFU2NCgpOiB1aW50NjQKbWF4VTY0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo0NAoJLy8gcmV0dXJuIFVpbnQ8NjQ+KCcxODQ0Njc0NDA3MzcwOTU1MTYxNScpOwoJaW50IDE4NDQ2NzQ0MDczNzA5NTUxNjE1CglyZXRzdWIKCi8vIGV4cG9uZW50KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfZXhwb25lbnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgZXhwb25lbnQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBleHBvbmVudChhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHBvbmVudDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NDgKCS8vIHJldHVybiBhICoqIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglleHAKCXJldHN1YgoKLy8gdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKKmFiaV9yb3V0ZV92YXJpYWJsZVR5cGVIaW50OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB5OiB1aW50OAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHkpIGZvciB2YXJpYWJsZVR5cGVIaW50IG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8geDogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxICh4KSBmb3IgdmFyaWFibGVUeXBlSGludCBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdmFyaWFibGVUeXBlSGludCh1aW50OCx1aW50OCl1aW50MTYKCWNhbGxzdWIgdmFyaWFibGVUeXBlSGludAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyB2YXJpYWJsZVR5cGVIaW50IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB2YXJpYWJsZVR5cGVIaW50KHg6IHVpbnQ8OD4sIHk6IHVpbnQ8OD4pOiB1aW50MTYKdmFyaWFibGVUeXBlSGludDoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1MgoJLy8geiA9IDx1aW50MTY+KHggKyB5KQoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyB5OiB1aW50PDg+CgkrCglmcmFtZV9idXJ5IDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NTQKCS8vIHJldHVybiB6OwoJZnJhbWVfZGlnIDAgLy8gejogdW5zYWZlIHVpbnQxNgoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyB1aW50OHBsdXModWludDgsdWludDgpdWludDgKKmFiaV9yb3V0ZV91aW50OHBsdXM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGE6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVpbnQ4cGx1cyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIGV4ZWN1dGUgdWludDhwbHVzKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4cGx1cwoJaXRvYgoJZHVwCgliaXRsZW4KCWludCA4Cgk8PQoKCS8vIHVpbnQ4cGx1cyByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCA4IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA3IDEKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1aW50OHBsdXMoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhwbHVzOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo1OAoJLy8gcmV0dXJuIGEgKyBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CgkrCglyZXRzdWIKCi8vIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CiphYmlfcm91dGVfdWludDhleHA6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDEKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQ4ZXhwIG11c3QgYmUgYSB1aW50OAoJYXNzZXJ0CglidG9pCgoJLy8gYTogdWludDgKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMQoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDhleHAgbXVzdCBiZSBhIHVpbnQ4Cglhc3NlcnQKCWJ0b2kKCgkvLyBleGVjdXRlIHVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4CgljYWxsc3ViIHVpbnQ4ZXhwCglpdG9iCglkdXAKCWJpdGxlbgoJaW50IDgKCTw9CgoJLy8gdWludDhleHAgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgOCBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNyAxCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludDhleHAoYTogdWludDw4PiwgYjogdWludDw4Pik6IHVpbnQ8OD4KdWludDhleHA6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjYyCgkvLyByZXR1cm4gYSAqKiBiOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ8OD4KCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50PDg+CglleHAKCXJldHN1YgoKLy8gcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX3BsdXNFcXVhbHM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgcGx1c0VxdWFscyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gcGx1c0VxdWFscyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApwbHVzRXF1YWxzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjY2CgkvLyB4ID0gYQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6NjgKCS8vIHggKz0gYgoJZnJhbWVfZGlnIDAgLy8geDogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkrCglmcmFtZV9idXJ5IDAgLy8geDogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3MAoJLy8gcmV0dXJuIHg7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gcGx1c0VxdWFsc0Zyb21HbG9iYWwodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9wbHVzRXF1YWxzRnJvbUdsb2JhbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBwbHVzRXF1YWxzRnJvbUdsb2JhbAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHBsdXNFcXVhbHNGcm9tR2xvYmFsKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CnBsdXNFcXVhbHNGcm9tR2xvYmFsOgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3NAoJLy8gdGhpcy5nS2V5LnZhbHVlID0gYQoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJYXBwX2dsb2JhbF9wdXQKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjc2CgkvLyB0aGlzLmdLZXkudmFsdWUgKz0gYgoJYnl0ZSAweDY3NGI2NTc5IC8vICJnS2V5IgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo3OAoJLy8gcmV0dXJuIHRoaXMuZ0tleS52YWx1ZTsKCWJ5dGUgMHg2NzRiNjU3OSAvLyAiZ0tleSIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGJveFRlc3QoKXVpbnQyNTYKKmFiaV9yb3V0ZV9ib3hUZXN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveFRlc3QoKXVpbnQyNTYKCWNhbGxzdWIgYm94VGVzdAoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYm94VGVzdCByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveFRlc3QoKTogdWludDI1Ngpib3hUZXN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czo4NAoJLy8gdGhpcy5ib3hLZXkudmFsdWUgPSA8dWludDI1Nj4xCglieXRlIDB4NjI2Zjc4NGI2NTc5IC8vICJib3hLZXkiCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMQoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODUKCS8vIHRoaXMuYm94S2V5LnZhbHVlICs9IDEKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxCgliKwoJYnl0ZSAweDYyNmY3ODRiNjU3OSAvLyAiYm94S2V5IgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gdGhpcy5ib3hLZXkudmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJc3dhcAoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6ODcKCS8vIHJldHVybiB0aGlzLmJveEtleS52YWx1ZTsKCWJ5dGUgMHg2MjZmNzg0YjY1NzkgLy8gImJveEtleSIKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnZhbHVlCglhc3NlcnQKCXJldHN1YgoKLy8gZm9vKHg6IHVpbnQyNTYpOiB1aW50MjU2CmZvbzoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTEKCS8vIHJldHVybiB4OwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCXJldHN1YgoKLy8gdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3M6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMSAoYSkgZm9yIHVuc2FmZU1ldGhvZEFyZ3MgbXVzdCBiZSBhIHVpbnQyNTYKCWFzc2VydAoKCS8vIGV4ZWN1dGUgdW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiB1bnNhZmVNZXRob2RBcmdzCglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyB1bnNhZmVNZXRob2RBcmdzIHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdW5zYWZlTWV0aG9kQXJncyhhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1Ngp1bnNhZmVNZXRob2RBcmdzOgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjk1CgkvLyBjID0gYSArIGIKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50MjU2CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDI1NgoJYisKCWZyYW1lX2J1cnkgMCAvLyBjOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6OTcKCS8vIHJldHVybiB0aGlzLmZvbyhjKTsKCWZyYW1lX2RpZyAwIC8vIGM6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDI1NgoJPD0KCgkvLyBjIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNhbGxzdWIgZm9vCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoqYWJpX3JvdXRlX3VpbnQyNTZDb21wYXJpc29uVHlwZToKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIHVpbnQyNTZDb21wYXJpc29uVHlwZSBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3IgdWludDI1NkNvbXBhcmlzb25UeXBlIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIHVpbnQyNTZDb21wYXJpc29uVHlwZSh1aW50MjU2LHVpbnQyNTYpdm9pZAoJY2FsbHN1YiB1aW50MjU2Q29tcGFyaXNvblR5cGUKCWludCAxCglyZXR1cm4KCi8vIHVpbnQyNTZDb21wYXJpc29uVHlwZShhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdm9pZAp1aW50MjU2Q29tcGFyaXNvblR5cGU6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZSAweAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTAxCgkvLyBzZW5kZXJCYWxhbmNlQWZ0ZXIgPSBhIC0gYgoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliLQoJZnJhbWVfYnVyeSAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCgkvLyAqaWYwX2NvbmRpdGlvbgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDIKCS8vIHNlbmRlckJhbGFuY2VBZnRlciA+IDx1aW50MjU2PjAKCWZyYW1lX2RpZyAwIC8vIHNlbmRlckJhbGFuY2VBZnRlcjogdW5zYWZlIHVpbnQyNTYKCWJ5dGUgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCgliPgoJYnogKmlmMF9lbHNlCgoJLy8gKmlmMF9jb25zZXF1ZW50CgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEwMwoJLy8gbG9nKCdub25aZXJvJykKCWJ5dGUgMHg2ZTZmNmU1YTY1NzI2ZiAvLyAibm9uWmVybyIKCWxvZwoJYiAqaWYwX2VuZAoKKmlmMF9lbHNlOgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMDUKCS8vIGxvZygnemVybycpCglieXRlIDB4N2E2NTcyNmYgLy8gInplcm8iCglsb2cKCippZjBfZW5kOgoJcmV0c3ViCgovLyBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfc3F1YXJlUm9vdDI1NjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChiKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gYTogdWludDI1NgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAxIChhKSBmb3Igc3F1YXJlUm9vdDI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CgljYWxsc3ViIHNxdWFyZVJvb3QyNTYKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHNxdWFyZVJvb3QyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290MjU2KGE6IHVpbnQyNTYsIGI6IHVpbnQyNTYpOiB1aW50MjU2CnNxdWFyZVJvb3QyNTY6Cglwcm90byAyIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExMAoJLy8gcmV0dXJuIHNxcnQoYSAqIGIpOwoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQyNTYKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50MjU2CgliKgoJYnNxcnQKCXJldHN1YgoKLy8gc3F1YXJlUm9vdDY0KHVpbnQ2NCx1aW50NjQpdWludDY0CiphYmlfcm91dGVfc3F1YXJlUm9vdDY0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIHNxdWFyZVJvb3Q2NCh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBzcXVhcmVSb290NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBzcXVhcmVSb290NjQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKc3F1YXJlUm9vdDY0OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMTQKCS8vIHJldHVybiBzcXJ0KGEgKiBiKTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCSoKCXNxcnQKCXJldHN1YgoKLy8gYWRkcmVzc1RvQmlnSW50KGFkZHJlc3MpYm9vbAoqYWJpX3JvdXRlX2FkZHJlc3NUb0JpZ0ludDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYWRkcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhZGRyKSBmb3IgYWRkcmVzc1RvQmlnSW50IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wKCWNhbGxzdWIgYWRkcmVzc1RvQmlnSW50CglieXRlIDB4MDAKCWludCAwCgl1bmNvdmVyIDIKCXNldGJpdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGFkZHJlc3NUb0JpZ0ludChhZGRyOiBBZGRyZXNzKTogYm9vbGVhbgphZGRyZXNzVG9CaWdJbnQ6Cglwcm90byAxIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjExOAoJLy8gcmV0dXJuIGJ0b2JpZ2ludChhZGRyKSA+IGJ0b2JpZ2ludCh0aGlzLnR4bi5zZW5kZXIpOwoJZnJhbWVfZGlnIC0xIC8vIGFkZHI6IEFkZHJlc3MKCXR4biBTZW5kZXIKCWI+CglyZXRzdWIKCi8vIHU4VG91NjQoKXVpbnQ2NAoqYWJpX3JvdXRlX3U4VG91NjQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdThUb3U2NCgpdWludDY0CgljYWxsc3ViIHU4VG91NjQKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyB1OFRvdTY0KCk6IHVpbnQ2NAp1OFRvdTY0OgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEyMgoJLy8geDogdWludDggPSA3CglpbnQgNwoJZnJhbWVfYnVyeSAwIC8vIHg6IHVpbnQ4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjMKCS8vIHJldHVybiA8dWludDY0Png7CglmcmFtZV9kaWcgMCAvLyB4OiB1aW50OAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoJcmV0c3ViCgovLyBwcml2YXRlRnVuY05hbWUoeDogdWludDgsIHk6IHVpbnQ2NCk6IHZvaWQKcHJpdmF0ZUZ1bmNOYW1lOgoJcHJvdG8gMiAwCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxMjcKCS8vIGFzc2VydCg8dWludDg+eSA+IHgpCglmcmFtZV9kaWcgLTIgLy8geTogdWludDY0CglmcmFtZV9kaWcgLTEgLy8geDogdWludDgKCT4KCWFzc2VydAoJcmV0c3ViCgovLyBmdW5jTmFtZSh1aW50MjU2KXZvaWQKKmFiaV9yb3V0ZV9mdW5jTmFtZToKCS8vIHg6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoeCkgZm9yIGZ1bmNOYW1lIG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGZ1bmNOYW1lKHVpbnQyNTYpdm9pZAoJY2FsbHN1YiBmdW5jTmFtZQoJaW50IDEKCXJldHVybgoKLy8gZnVuY05hbWUoeDogdWludDI1Nik6IHZvaWQKZnVuY05hbWU6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzMQoJLy8gdGhpcy5wcml2YXRlRnVuY05hbWUoPHVpbnQ4PngsIDEzMzcpCglpbnQgMTMzNwoJZnJhbWVfZGlnIC0xIC8vIHg6IHVpbnQyNTYKCWR1cAoJYml0bGVuCglpbnQgOAoJPD0KCgkvLyA8dWludDg+eCBvdmVyZmxvd2VkIDggYml0cwoJYXNzZXJ0CglleHRyYWN0IDMxIDEKCWJ0b2kKCWNhbGxzdWIgcHJpdmF0ZUZ1bmNOYW1lCglyZXRzdWIKCi8vIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaWdpbnRQbHVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpZ2ludFBsdXModWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYmlnaW50UGx1cwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpZ2ludFBsdXMoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYmlnaW50UGx1czoKCXByb3RvIDIgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlIDB4CglkdXAKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNQoJLy8geCA9IGl0b2IoYSkKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMCAvLyB4OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNgoJLy8geSA9IGl0b2IoYikKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWl0b2IKCWZyYW1lX2J1cnkgMSAvLyB5OiBieXRlW10KCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjEzNwoJLy8gcmV0dXJuIChidG9iaWdpbnQoeCkgKyBidG9iaWdpbnQoeSkpIGFzIHVpbnQ2NDsKCWZyYW1lX2RpZyAwIC8vIHg6IGJ5dGVbXQoJZnJhbWVfZGlnIDEgLy8geTogYnl0ZVtdCgliKwoJZHVwCgliaXRsZW4KCWludCA2NAoJPD0KCgkvLyAoYnRvYmlnaW50KHgpICsgYnRvYmlnaW50KHkpKSBhcyB1aW50NjQgb3ZlcmZsb3dlZCA2NCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDgKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWJ0b2kKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAxCglyZXRzdWIKCi8vIGJpdHdpc2VPcih1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VPcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gYjogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gYTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZU9yCglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYml0d2lzZU9yKGE6IHVpbnQ2NCwgYjogdWludDY0KTogdWludDY0CmJpdHdpc2VPcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQxCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0Cgl8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlQW5kOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZUFuZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VBbmQoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZUFuZDoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ1CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgkmCglyZXRzdWIKCi8vIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9iaXR3aXNlWG9yOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyBhOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgYml0d2lzZVhvcgoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VYb3IoYTogdWludDY0LCBiOiB1aW50NjQpOiB1aW50NjQKYml0d2lzZVhvcjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTQ5CgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CgleCglyZXRzdWIKCi8vIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKKmFiaV9yb3V0ZV9iaXR3aXNlT3JVMjU2OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBiOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGIpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlT3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYKCWNhbGxzdWIgYml0d2lzZU9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU9yVTI1NiByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAyNTYgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAzMgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJpdHdpc2VPclUyNTYoYTogdWludDI1NiwgYjogdWludDI1Nik6IHVpbnQyNTYKYml0d2lzZU9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTUzCgkvLyByZXR1cm4gYSB8IGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJ8CglyZXRzdWIKCi8vIGJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZUFuZFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VBbmRVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlQW5kVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlQW5kVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlQW5kVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZUFuZFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlQW5kVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlQW5kVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTU3CgkvLyByZXR1cm4gYSAmIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWImCglyZXRzdWIKCi8vIGJpdHdpc2VYb3JVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZVhvclUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYikgZm9yIGJpdHdpc2VYb3JVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBhOiB1aW50MjU2Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKGEpIGZvciBiaXR3aXNlWG9yVTI1NiBtdXN0IGJlIGEgdWludDI1NgoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlWG9yVTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZVhvclUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlWG9yVTI1NihhOiB1aW50MjU2LCBiOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlWG9yVTI1NjoKCXByb3RvIDIgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTYxCgkvLyByZXR1cm4gYSBeIGI7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQyNTYKCWJeCglyZXRzdWIKCi8vIGJpdHdpc2VOb3QodWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2JpdHdpc2VOb3Q6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYml0d2lzZU5vdCh1aW50NjQpdWludDY0CgljYWxsc3ViIGJpdHdpc2VOb3QKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90KGE6IHVpbnQ2NCk6IHVpbnQ2NApiaXR3aXNlTm90OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxNjUKCS8vIHJldHVybiB+YTsKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCX4KCXJldHN1YgoKLy8gYml0d2lzZU5vdFUyNTYodWludDI1Nil1aW50MjU2CiphYmlfcm91dGVfYml0d2lzZU5vdFUyNTY6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGE6IHVpbnQyNTYKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGJpdHdpc2VOb3RVMjU2IG11c3QgYmUgYSB1aW50MjU2Cglhc3NlcnQKCgkvLyBleGVjdXRlIGJpdHdpc2VOb3RVMjU2KHVpbnQyNTYpdWludDI1NgoJY2FsbHN1YiBiaXR3aXNlTm90VTI1NgoJZHVwCgliaXRsZW4KCWludCAyNTYKCTw9CgoJLy8gYml0d2lzZU5vdFUyNTYgcmV0dXJuIHZhbHVlIG92ZXJmbG93ZWQgMjU2IGJpdHMKCWFzc2VydAoJYnl0ZSAweEZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMzIKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBiaXR3aXNlTm90VTI1NihhOiB1aW50MjU2KTogdWludDI1NgpiaXR3aXNlTm90VTI1NjoKCXByb3RvIDEgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTY5CgkvLyByZXR1cm4gfmE7CglmcmFtZV9kaWcgLTEgLy8gYTogdWludDI1NgoJYn4KCXJldHN1YgoKLy8gbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX211bHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbXVsdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBtdWx3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gbXVsdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAptdWx3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTczCgkvLyBwID0gbXVsdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJbXVsdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTc3CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2FkZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgYWRkdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBhZGR3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gYWRkdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NAphZGR3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTgxCgkvLyBwID0gYWRkdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJYWRkdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg1CgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2V4cHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZXhwdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBleHB3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZXhwdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApleHB3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTg5CgkvLyBwID0gZXhwdyhhLCBiKQoJZnJhbWVfZGlnIC0xIC8vIGE6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGI6IHVpbnQ2NAoJZXhwdwoJZnJhbWVfYnVyeSAwIC8vIHAgbG93OiB1aW50NjQKCWZyYW1lX2J1cnkgMSAvLyBwIGhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MTkzCgkvLyByZXR1cm4gcDIubG93OwoJZnJhbWVfZGlnIDAgLy8gcCBsb3c6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdnc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2dyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZ3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2dyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZ3OgoJcHJvdG8gMiAxCgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoxOTcKCS8vIHJldHVybiBkaXZ3KDAsIGEsIGIpOwoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBiOiB1aW50NjQKCWRpdncKCXJldHN1YgoKLy8gZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2Rpdm1vZHc6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGI6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIGE6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZGl2bW9kdyh1aW50NjQsdWludDY0KXVpbnQ2NAoJY2FsbHN1YiBkaXZtb2R3CglpdG9iCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gZGl2bW9kdyhhOiB1aW50NjQsIGI6IHVpbnQ2NCk6IHVpbnQ2NApkaXZtb2R3OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMwoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjAxCgkvLyBwID0gZGl2bW9kdygwLCBhLCAwLCBiKQoJaW50IDAKCWZyYW1lX2RpZyAtMSAvLyBhOiB1aW50NjQKCWludCAwCglmcmFtZV9kaWcgLTIgLy8gYjogdWludDY0CglkaXZtb2R3CglmcmFtZV9idXJ5IDAgLy8gcCByZW1haW5kZXJMb3c6IHVpbnQ2NAoJZnJhbWVfYnVyeSAxIC8vIHAgcmVtYWluZGVySGlnaDogdWludDY0CglmcmFtZV9idXJ5IDIgLy8gcCBxdW90aWVudExvdzogdWludDY0CglmcmFtZV9idXJ5IDMgLy8gcCBxdW90aWVudEhpZ2g6IHVpbnQ2NAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA1CgkvLyByZXR1cm4gcDIucXVvdGllbnRMb3c7CglmcmFtZV9kaWcgMiAvLyBwIHF1b3RpZW50TG93OiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiAzCglyZXRzdWIKCi8vIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CiphYmlfcm91dGVfdW5zYWZlVmFyaWFibGVzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIHVuc2FmZVZhcmlhYmxlcygpdWludDY0CgljYWxsc3ViIHVuc2FmZVZhcmlhYmxlcwoJaXRvYgoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIHVuc2FmZVZhcmlhYmxlcygpOiB1aW50NjQKdW5zYWZlVmFyaWFibGVzOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCWR1cG4gMgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjA5CgkvLyBBID0gPHVpbnQyNTY+MjUwMDAwMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZWU2YjI4MAoJZnJhbWVfYnVyeSAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTAKCS8vIEIgPSA8dWludDI1Nj4xMDAwCglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNlOAoJZnJhbWVfYnVyeSAxIC8vIEI6IHVpbnQyNTYKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIxMgoJLy8gQSA9IEEgLyBCCglmcmFtZV9kaWcgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzZTggLy8gQjogdWludDI1NgoJYi8KCWZyYW1lX2J1cnkgMCAvLyBBOiB1bnNhZmUgdWludDI1NgoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjE0CgkvLyBjID0gQSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIEE6IHVuc2FmZSB1aW50MjU2CglkdXAKCWJpdGxlbgoJaW50IDY0Cgk8PQoKCS8vIEEgYXMgdWludDY0IG92ZXJmbG93ZWQgNjQgYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCA4CgktCglzd2FwCglzdWJzdHJpbmczCglidG9pCglmcmFtZV9idXJ5IDIgLy8gYzogdWludDY0CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMTYKCS8vIHJldHVybiBjOwoJZnJhbWVfZGlnIDIgLy8gYzogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBmb29iYXIodWludDEyOCl1aW50MTI4CiphYmlfcm91dGVfZm9vYmFyOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyB4OiB1aW50MTI4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDE2Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHgpIGZvciBmb29iYXIgbXVzdCBiZSBhIHVpbnQxMjgKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZm9vYmFyKHVpbnQxMjgpdWludDEyOAoJY2FsbHN1YiBmb29iYXIKCWR1cAoJYml0bGVuCglpbnQgMTI4Cgk8PQoKCS8vIGZvb2JhciByZXR1cm4gdmFsdWUgb3ZlcmZsb3dlZCAxMjggYml0cwoJYXNzZXJ0CglieXRlIDB4RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYKCWImCglkdXAKCWxlbgoJZHVwCglpbnQgMTYKCS0KCXN3YXAKCXN1YnN0cmluZzMKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBmb29iYXIoeDogdWludDEyOCk6IHVpbnQxMjgKZm9vYmFyOgoJcHJvdG8gMSAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGUgMHgKCgkvLyB0ZXN0cy9jb250cmFjdHMvbWF0aC5hbGdvLnRzOjIyMAoJLy8gYXZnU3Rha2U6IHVpbnQxMjggPSB4IC8gKDMwMDAwIGFzIHVpbnQxMjgpCglmcmFtZV9kaWcgLTEgLy8geDogdWludDEyOAoJYnl0ZSAweDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3NTMwCgliLwoJZHVwCgliaXRsZW4KCWludCAxMjgKCTw9CgoJLy8geCAvICgzMDAwMCBhcyB1aW50MTI4KSBvdmVyZmxvd2VkIDEyOCBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRgoJYiYKCWR1cAoJbGVuCglkdXAKCWludCAxNgoJLQoJc3dhcAoJc3Vic3RyaW5nMwoJZnJhbWVfYnVyeSAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gdGVzdHMvY29udHJhY3RzL21hdGguYWxnby50czoyMjIKCS8vIHJldHVybiBhdmdTdGFrZTsKCWZyYW1lX2RpZyAwIC8vIGF2Z1N0YWtlOiB1aW50MTI4CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIHVpbnRGcm9tSGV4KCl1aW50MjU2CiphYmlfcm91dGVfdWludEZyb21IZXg6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgdWludEZyb21IZXgoKXVpbnQyNTYKCWNhbGxzdWIgdWludEZyb21IZXgKCWR1cAoJYml0bGVuCglpbnQgMjU2Cgk8PQoKCS8vIHVpbnRGcm9tSGV4IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDI1NiBiaXRzCglhc3NlcnQKCWJ5dGUgMHhGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGCgliJgoJZHVwCglsZW4KCWR1cAoJaW50IDMyCgktCglzd2FwCglzdWJzdHJpbmczCgljb25jYXQKCWxvZwoJaW50IDEKCXJldHVybgoKLy8gdWludEZyb21IZXgoKTogdWludDI1Ngp1aW50RnJvbUhleDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9tYXRoLmFsZ28udHM6MjI2CgkvLyByZXR1cm4gVWludDwyNTY+KCcweEZGJyk7CglieXRlIDB4MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBmZgoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAidTY0cGx1cyh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0bWludXModWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInU2NG11bCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAidTY0ZGl2KHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJ1MjU2cGx1cyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidTI1Nm1pbnVzKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2bXVsKHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1MjU2ZGl2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJ1NjRSZXR1cm4yNTYodWludDY0LHVpbnQ2NCl1aW50MjU2IgoJbWV0aG9kICJtYXhVNjQoKXVpbnQ2NCIKCW1ldGhvZCAiZXhwb25lbnQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInZhcmlhYmxlVHlwZUhpbnQodWludDgsdWludDgpdWludDE2IgoJbWV0aG9kICJ1aW50OHBsdXModWludDgsdWludDgpdWludDgiCgltZXRob2QgInVpbnQ4ZXhwKHVpbnQ4LHVpbnQ4KXVpbnQ4IgoJbWV0aG9kICJwbHVzRXF1YWxzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJwbHVzRXF1YWxzRnJvbUdsb2JhbCh1aW50NjQsdWludDY0KXVpbnQ2NCIKCW1ldGhvZCAiYm94VGVzdCgpdWludDI1NiIKCW1ldGhvZCAidW5zYWZlTWV0aG9kQXJncyh1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAidWludDI1NkNvbXBhcmlzb25UeXBlKHVpbnQyNTYsdWludDI1Nil2b2lkIgoJbWV0aG9kICJzcXVhcmVSb290MjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJzcXVhcmVSb290NjQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHJlc3NUb0JpZ0ludChhZGRyZXNzKWJvb2wiCgltZXRob2QgInU4VG91NjQoKXVpbnQ2NCIKCW1ldGhvZCAiZnVuY05hbWUodWludDI1Nil2b2lkIgoJbWV0aG9kICJiaWdpbnRQbHVzKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlT3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VBbmQodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VYb3IodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImJpdHdpc2VPclUyNTYodWludDI1Nix1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgImJpdHdpc2VBbmRVMjU2KHVpbnQyNTYsdWludDI1Nil1aW50MjU2IgoJbWV0aG9kICJiaXR3aXNlWG9yVTI1Nih1aW50MjU2LHVpbnQyNTYpdWludDI1NiIKCW1ldGhvZCAiYml0d2lzZU5vdCh1aW50NjQpdWludDY0IgoJbWV0aG9kICJiaXR3aXNlTm90VTI1Nih1aW50MjU2KXVpbnQyNTYiCgltZXRob2QgIm11bHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImFkZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImV4cHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdncodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgImRpdm1vZHcodWludDY0LHVpbnQ2NCl1aW50NjQiCgltZXRob2QgInVuc2FmZVZhcmlhYmxlcygpdWludDY0IgoJbWV0aG9kICJmb29iYXIodWludDEyOCl1aW50MTI4IgoJbWV0aG9kICJ1aW50RnJvbUhleCgpdWludDI1NiIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfdTY0cGx1cyAqYWJpX3JvdXRlX3U2NG1pbnVzICphYmlfcm91dGVfdTY0bXVsICphYmlfcm91dGVfdTY0ZGl2ICphYmlfcm91dGVfdTI1NnBsdXMgKmFiaV9yb3V0ZV91MjU2bWludXMgKmFiaV9yb3V0ZV91MjU2bXVsICphYmlfcm91dGVfdTI1NmRpdiAqYWJpX3JvdXRlX3U2NFJldHVybjI1NiAqYWJpX3JvdXRlX21heFU2NCAqYWJpX3JvdXRlX2V4cG9uZW50ICphYmlfcm91dGVfdmFyaWFibGVUeXBlSGludCAqYWJpX3JvdXRlX3VpbnQ4cGx1cyAqYWJpX3JvdXRlX3VpbnQ4ZXhwICphYmlfcm91dGVfcGx1c0VxdWFscyAqYWJpX3JvdXRlX3BsdXNFcXVhbHNGcm9tR2xvYmFsICphYmlfcm91dGVfYm94VGVzdCAqYWJpX3JvdXRlX3Vuc2FmZU1ldGhvZEFyZ3MgKmFiaV9yb3V0ZV91aW50MjU2Q29tcGFyaXNvblR5cGUgKmFiaV9yb3V0ZV9zcXVhcmVSb290MjU2ICphYmlfcm91dGVfc3F1YXJlUm9vdDY0ICphYmlfcm91dGVfYWRkcmVzc1RvQmlnSW50ICphYmlfcm91dGVfdThUb3U2NCAqYWJpX3JvdXRlX2Z1bmNOYW1lICphYmlfcm91dGVfYmlnaW50UGx1cyAqYWJpX3JvdXRlX2JpdHdpc2VPciAqYWJpX3JvdXRlX2JpdHdpc2VBbmQgKmFiaV9yb3V0ZV9iaXR3aXNlWG9yICphYmlfcm91dGVfYml0d2lzZU9yVTI1NiAqYWJpX3JvdXRlX2JpdHdpc2VBbmRVMjU2ICphYmlfcm91dGVfYml0d2lzZVhvclUyNTYgKmFiaV9yb3V0ZV9iaXR3aXNlTm90ICphYmlfcm91dGVfYml0d2lzZU5vdFUyNTYgKmFiaV9yb3V0ZV9tdWx3ICphYmlfcm91dGVfYWRkdyAqYWJpX3JvdXRlX2V4cHcgKmFiaV9yb3V0ZV9kaXZ3ICphYmlfcm91dGVfZGl2bW9kdyAqYWJpX3JvdXRlX3Vuc2FmZVZhcmlhYmxlcyAqYWJpX3JvdXRlX2Zvb2JhciAqYWJpX3JvdXRlX3VpbnRGcm9tSGV4CgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/MultiInheritance.approval.teal b/tests/contracts/artifacts/MultiInheritance.approval.teal index 40eda95f8..d3d5c8a4a 100644 --- a/tests/contracts/artifacts/MultiInheritance.approval.teal +++ b/tests/contracts/artifacts/MultiInheritance.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/MultiInheritance.arc32.json b/tests/contracts/artifacts/MultiInheritance.arc32.json index 1cbab544f..944086273 100644 --- a/tests/contracts/artifacts/MultiInheritance.arc32.json +++ b/tests/contracts/artifacts/MultiInheritance.arc32.json @@ -63,7 +63,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBiMigpdm9pZAoqYWJpX3JvdXRlX2IyOgoJLy8gZXhlY3V0ZSBiMigpdm9pZAoJY2FsbHN1YiBiMgoJaW50IDEKCXJldHVybgoKLy8gYjIoKTogdm9pZApiMjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjg4CgkvLyBsb2coJ2IyJykKCWJ5dGUgMHg2MjMyIC8vICJiMiIKCWxvZwoJcmV0c3ViCgovLyBmb28oKXZvaWQKKmFiaV9yb3V0ZV9mb286CgkvLyBleGVjdXRlIGZvbygpdm9pZAoJY2FsbHN1YiBmb28KCWludCAxCglyZXR1cm4KCi8vIGZvbygpOiB2b2lkCmZvbzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjk0CgkvLyBsb2coQjIuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFCQVRFWUZJRUdDekVaQ0kwTUFDOEFBQUFBQUFBQUFBQUFBQ0VBQUFBQUFBQUFBQUFBQUlnQUFpSkRpZ0FBZ0FGaGdia0taNG1JQUFJaVE0b0FBSUFDWWpLd2lTSkRnQVM0UkhzMk5ob0FqZ0gvOFFDQUJCNTZyUnlBQkVRN014azJHZ0NPQXYrOS84MEEKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYjIoKXZvaWQiCgltZXRob2QgImZvbygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9iMiAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBiMigpdm9pZAoqYWJpX3JvdXRlX2IyOgoJLy8gZXhlY3V0ZSBiMigpdm9pZAoJY2FsbHN1YiBiMgoJaW50IDEKCXJldHVybgoKLy8gYjIoKTogdm9pZApiMjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjg4CgkvLyBsb2coJ2IyJykKCWJ5dGUgMHg2MjMyIC8vICJiMiIKCWxvZwoJcmV0c3ViCgovLyBmb28oKXZvaWQKKmFiaV9yb3V0ZV9mb286CgkvLyBleGVjdXRlIGZvbygpdm9pZAoJY2FsbHN1YiBmb28KCWludCAxCglyZXR1cm4KCi8vIGZvbygpOiB2b2lkCmZvbzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjk0CgkvLyBsb2coQjIuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFCQVRFWUZJRUdDekVaQ0kwTUFDOEFBQUFBQUFBQUFBQUFBQ0VBQUFBQUFBQUFBQUFBQUlnQUFpSkRpZ0FBZ0FGaGdia0taNG1JQUFJaVE0b0FBSUFDWWpLd2lTSkRnQVM0UkhzMk5ob0FqZ0gvOFFDQUJCNTZyUnlBQkVRN014azJHZ0NPQXYrOS84MEEKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYjIoKXZvaWQiCgltZXRob2QgImZvbygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9iMiAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/MultiInheritance.arc56_draft.json b/tests/contracts/artifacts/MultiInheritance.arc56_draft.json index 235c82adf..4ab161222 100644 --- a/tests/contracts/artifacts/MultiInheritance.arc56_draft.json +++ b/tests/contracts/artifacts/MultiInheritance.arc56_draft.json @@ -110,621 +110,624 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 92, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9 - ] - }, - { - "teal": 13, - "source": 92, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 14, - "source": 92, - "pc": [ - 12 - ] - }, - { - "teal": 15, - "source": 92, - "pc": [ - 13, - 14 - ] - }, - { - "teal": 16, - "source": 92, - "pc": [ - 15 - ] - }, - { - "teal": 17, - "source": 92, - "pc": [ - 16, - 17 - ] - }, - { - "teal": 18, - "source": 92, - "pc": [ - 18 - ] - }, - { - "teal": 19, - "source": 92, - "pc": [ - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44 - ] - }, - { - "teal": 23, - "source": 92, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 45 - ] - }, - { - "teal": 28, - "source": 15, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 29, - "source": 15, - "pc": [ - 49 - ] - }, - { - "teal": 30, - "source": 15, - "pc": [ - 50 - ] - }, - { - "teal": 34, - "source": 15, - "pc": [ - 51, - 52, - 53 - ] - }, - { - "teal": 38, - "source": 16, - "pc": [ - 54 - ] - }, - { - "teal": 39, - "source": 16, - "pc": [ - 55 - ] - }, - { - "teal": 40, - "source": 16, - "pc": [ - 56 - ] - }, - { - "teal": 41, - "source": 15, - "pc": [ - 57 - ] - }, - { - "teal": 46, - "source": 23, - "pc": [ - 58, - 59, - 60 - ] - }, - { - "teal": 47, - "source": 23, - "pc": [ - 61 - ] - }, - { - "teal": 48, - "source": 23, - "pc": [ - 62 - ] - }, - { - "teal": 52, - "source": 23, - "pc": [ - 63, - 64, - 65 - ] - }, - { - "teal": 56, - "source": 24, - "pc": [ - 66 - ] - }, - { - "teal": 57, - "source": 24, - "pc": [ - 67 - ] - }, - { - "teal": 58, - "source": 24, - "pc": [ - 68 - ] - }, - { - "teal": 59, - "source": 24, - "pc": [ - 69 - ] - }, - { - "teal": 60, - "source": 24, - "pc": [ - 70 - ] - }, - { - "teal": 64, - "source": 25, - "pc": [ - 71, - 72, - 73 - ] - }, - { - "teal": 65, - "source": 25, - "pc": [ - 74, - 75 - ] - }, - { - "teal": 66, - "source": 25, - "pc": [ - 76 - ] - }, - { - "teal": 67, - "source": 23, - "pc": [ - 77 - ] - }, - { - "teal": 72, - "source": 87, - "pc": [ - 78, - 79, - 80 - ] - }, - { - "teal": 73, - "source": 87, - "pc": [ - 81 - ] - }, - { - "teal": 74, - "source": 87, - "pc": [ - 82 - ] - }, - { - "teal": 78, - "source": 87, - "pc": [ - 83, - 84, - 85 - ] - }, - { - "teal": 82, - "source": 88, - "pc": [ - 86, - 87, - 88, - 89 - ] - }, - { - "teal": 83, - "source": 88, - "pc": [ - 90 - ] - }, - { - "teal": 84, - "source": 87, - "pc": [ - 91 - ] - }, - { - "teal": 89, - "source": 93, - "pc": [ - 92, - 93, - 94 - ] - }, - { - "teal": 90, - "source": 93, - "pc": [ - 95 - ] - }, - { - "teal": 91, - "source": 93, - "pc": [ - 96 - ] - }, - { - "teal": 95, - "source": 93, - "pc": [ - 97, - 98, - 99 - ] - }, - { - "teal": 99, - "source": 94, - "pc": [ - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192, - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209 - ] - }, - { - "teal": 100, - "source": 94, - "pc": [ - 210 - ] - }, - { - "teal": 101, - "source": 93, - "pc": [ - 211 - ] - }, - { - "teal": 104, - "source": 92, - "pc": [ - 212 - ] - }, - { - "teal": 105, - "source": 92, - "pc": [ - 213 - ] - }, - { - "teal": 108, - "source": 92, - "pc": [ - 214, - 215, - 216, - 217, - 218, - 219 - ] - }, - { - "teal": 109, - "source": 92, - "pc": [ - 220, - 221, - 222 - ] - }, - { - "teal": 110, - "source": 92, - "pc": [ - 223, - 224, - 225, - 226 - ] - }, - { - "teal": 113, - "source": 92, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 227 - ] - }, - { - "teal": 116, - "source": 92, - "pc": [ - 228, - 229, - 230, - 231, - 232, - 233 - ] - }, - { - "teal": 117, - "source": 92, - "pc": [ - 234, - 235, - 236, - 237, - 238, - 239 - ] - }, - { - "teal": 118, - "source": 92, - "pc": [ - 240, - 241, - 242, - 243, - 244, - 245 - ] - }, - { - "teal": 119, - "source": 92, - "pc": [ - 246, - 247, - 248, - 249, - 250, - 251 - ] - }, - { - "teal": 120, - "source": 92, - "pc": [ - 252, - 253, - 254 - ] - }, - { - "teal": 121, - "source": 92, - "pc": [ - 255, - 256, - 257, - 258, - 259, - 260, - 261, - 262, - 263, - 264 - ] - }, - { - "teal": 124, - "source": 92, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 265 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 92, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + }, + { + "teal": 13, + "source": 92, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 14, + "source": 92, + "pc": [ + 12 + ] + }, + { + "teal": 15, + "source": 92, + "pc": [ + 13, + 14 + ] + }, + { + "teal": 16, + "source": 92, + "pc": [ + 15 + ] + }, + { + "teal": 17, + "source": 92, + "pc": [ + 16, + 17 + ] + }, + { + "teal": 18, + "source": 92, + "pc": [ + 18 + ] + }, + { + "teal": 19, + "source": 92, + "pc": [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + }, + { + "teal": 23, + "source": 92, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 45 + ] + }, + { + "teal": 28, + "source": 15, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 29, + "source": 15, + "pc": [ + 49 + ] + }, + { + "teal": 30, + "source": 15, + "pc": [ + 50 + ] + }, + { + "teal": 34, + "source": 15, + "pc": [ + 51, + 52, + 53 + ] + }, + { + "teal": 38, + "source": 16, + "pc": [ + 54 + ] + }, + { + "teal": 39, + "source": 16, + "pc": [ + 55 + ] + }, + { + "teal": 40, + "source": 16, + "pc": [ + 56 + ] + }, + { + "teal": 41, + "source": 15, + "pc": [ + 57 + ] + }, + { + "teal": 46, + "source": 23, + "pc": [ + 58, + 59, + 60 + ] + }, + { + "teal": 47, + "source": 23, + "pc": [ + 61 + ] + }, + { + "teal": 48, + "source": 23, + "pc": [ + 62 + ] + }, + { + "teal": 52, + "source": 23, + "pc": [ + 63, + 64, + 65 + ] + }, + { + "teal": 56, + "source": 24, + "pc": [ + 66 + ] + }, + { + "teal": 57, + "source": 24, + "pc": [ + 67 + ] + }, + { + "teal": 58, + "source": 24, + "pc": [ + 68 + ] + }, + { + "teal": 59, + "source": 24, + "pc": [ + 69 + ] + }, + { + "teal": 60, + "source": 24, + "pc": [ + 70 + ] + }, + { + "teal": 64, + "source": 25, + "pc": [ + 71, + 72, + 73 + ] + }, + { + "teal": 65, + "source": 25, + "pc": [ + 74, + 75 + ] + }, + { + "teal": 66, + "source": 25, + "pc": [ + 76 + ] + }, + { + "teal": 67, + "source": 23, + "pc": [ + 77 + ] + }, + { + "teal": 72, + "source": 87, + "pc": [ + 78, + 79, + 80 + ] + }, + { + "teal": 73, + "source": 87, + "pc": [ + 81 + ] + }, + { + "teal": 74, + "source": 87, + "pc": [ + 82 + ] + }, + { + "teal": 78, + "source": 87, + "pc": [ + 83, + 84, + 85 + ] + }, + { + "teal": 82, + "source": 88, + "pc": [ + 86, + 87, + 88, + 89 + ] + }, + { + "teal": 83, + "source": 88, + "pc": [ + 90 + ] + }, + { + "teal": 84, + "source": 87, + "pc": [ + 91 + ] + }, + { + "teal": 89, + "source": 93, + "pc": [ + 92, + 93, + 94 + ] + }, + { + "teal": 90, + "source": 93, + "pc": [ + 95 + ] + }, + { + "teal": 91, + "source": 93, + "pc": [ + 96 + ] + }, + { + "teal": 95, + "source": 93, + "pc": [ + 97, + 98, + 99 + ] + }, + { + "teal": 99, + "source": 94, + "pc": [ + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + }, + { + "teal": 100, + "source": 94, + "pc": [ + 210 + ] + }, + { + "teal": 101, + "source": 93, + "pc": [ + 211 + ] + }, + { + "teal": 104, + "source": 92, + "pc": [ + 212 + ] + }, + { + "teal": 105, + "source": 92, + "pc": [ + 213 + ] + }, + { + "teal": 108, + "source": 92, + "pc": [ + 214, + 215, + 216, + 217, + 218, + 219 + ] + }, + { + "teal": 109, + "source": 92, + "pc": [ + 220, + 221, + 222 + ] + }, + { + "teal": 110, + "source": 92, + "pc": [ + 223, + 224, + 225, + 226 + ] + }, + { + "teal": 113, + "source": 92, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 227 + ] + }, + { + "teal": 116, + "source": 92, + "pc": [ + 228, + 229, + 230, + 231, + 232, + 233 + ] + }, + { + "teal": 117, + "source": 92, + "pc": [ + 234, + 235, + 236, + 237, + 238, + 239 + ] + }, + { + "teal": 118, + "source": 92, + "pc": [ + 240, + 241, + 242, + 243, + 244, + 245 + ] + }, + { + "teal": 119, + "source": 92, + "pc": [ + 246, + 247, + 248, + 249, + 250, + 251 + ] + }, + { + "teal": 120, + "source": 92, + "pc": [ + 252, + 253, + 254 + ] + }, + { + "teal": 121, + "source": 92, + "pc": [ + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264 + ] + }, + { + "teal": 124, + "source": 92, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 265 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBiMigpdm9pZAoqYWJpX3JvdXRlX2IyOgoJLy8gZXhlY3V0ZSBiMigpdm9pZAoJY2FsbHN1YiBiMgoJaW50IDEKCXJldHVybgoKLy8gYjIoKTogdm9pZApiMjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjg4CgkvLyBsb2coJ2IyJykKCWJ5dGUgMHg2MjMyIC8vICJiMiIKCWxvZwoJcmV0c3ViCgovLyBmb28oKXZvaWQKKmFiaV9yb3V0ZV9mb286CgkvLyBleGVjdXRlIGZvbygpdm9pZAoJY2FsbHN1YiBmb28KCWludCAxCglyZXR1cm4KCi8vIGZvbygpOiB2b2lkCmZvbzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjk0CgkvLyBsb2coQjIuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFCQVRFWUZJRUdDekVaQ0kwTUFDOEFBQUFBQUFBQUFBQUFBQ0VBQUFBQUFBQUFBQUFBQUlnQUFpSkRpZ0FBZ0FGaGdia0taNG1JQUFJaVE0b0FBSUFDWWpLd2lTSkRnQVM0UkhzMk5ob0FqZ0gvOFFDQUJCNTZyUnlBQkVRN014azJHZ0NPQXYrOS84MEEKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYjIoKXZvaWQiCgltZXRob2QgImZvbygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9iMiAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBhKCl2b2lkCiphYmlfcm91dGVfYToKCS8vIGV4ZWN1dGUgYSgpdm9pZAoJY2FsbHN1YiBhCglpbnQgMQoJcmV0dXJuCgovLyBhKCk6IHZvaWQKYToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjE2CgkvLyB0aGlzLmFLZXkudmFsdWUgPSAxMzM3CglieXRlIDB4NjEgLy8gImEiCglpbnQgMTMzNwoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gYigpdm9pZAoqYWJpX3JvdXRlX2I6CgkvLyBleGVjdXRlIGIoKXZvaWQKCWNhbGxzdWIgYgoJaW50IDEKCXJldHVybgoKLy8gYigpOiB2b2lkCmI6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvaW5oZXJpdGFuY2UuYWxnby50czoyNAoJLy8gYXNzZXJ0KHRoaXMuYUtleS52YWx1ZSA9PT0gMTMzNykKCWJ5dGUgMHg2MSAvLyAiYSIKCWFwcF9nbG9iYWxfZ2V0CglpbnQgMTMzNwoJPT0KCWFzc2VydAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjI1CgkvLyB0aGlzLmJLZXkudmFsdWUgPSA0MgoJYnl0ZSAweDYyIC8vICJiIgoJaW50IDQyCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyBiMigpdm9pZAoqYWJpX3JvdXRlX2IyOgoJLy8gZXhlY3V0ZSBiMigpdm9pZAoJY2FsbHN1YiBiMgoJaW50IDEKCXJldHVybgoKLy8gYjIoKTogdm9pZApiMjoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjg4CgkvLyBsb2coJ2IyJykKCWJ5dGUgMHg2MjMyIC8vICJiMiIKCWxvZwoJcmV0c3ViCgovLyBmb28oKXZvaWQKKmFiaV9yb3V0ZV9mb286CgkvLyBleGVjdXRlIGZvbygpdm9pZAoJY2FsbHN1YiBmb28KCWludCAxCglyZXR1cm4KCi8vIGZvbygpOiB2b2lkCmZvbzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjk0CgkvLyBsb2coQjIuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFCQVRFWUZJRUdDekVaQ0kwTUFDOEFBQUFBQUFBQUFBQUFBQ0VBQUFBQUFBQUFBQUFBQUlnQUFpSkRpZ0FBZ0FGaGdia0taNG1JQUFJaVE0b0FBSUFDWWpLd2lTSkRnQVM0UkhzMk5ob0FqZ0gvOFFDQUJCNTZyUnlBQkVRN014azJHZ0NPQXYrOS84MEEKCWxvZwoJcmV0c3ViCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycgoKKmNhbGxfTm9PcDoKCW1ldGhvZCAiYSgpdm9pZCIKCW1ldGhvZCAiYigpdm9pZCIKCW1ldGhvZCAiYjIoKXZvaWQiCgltZXRob2QgImZvbygpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfYSAqYWJpX3JvdXRlX2IgKmFiaV9yb3V0ZV9iMiAqYWJpX3JvdXRlX2ZvbwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/MultiInheritanceProgram.approval.teal b/tests/contracts/artifacts/MultiInheritanceProgram.approval.teal index ace1112a2..0d4aae467 100644 --- a/tests/contracts/artifacts/MultiInheritanceProgram.approval.teal +++ b/tests/contracts/artifacts/MultiInheritanceProgram.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/MultiInheritanceProgram.arc32.json b/tests/contracts/artifacts/MultiInheritanceProgram.arc32.json index aabb02226..596f257b4 100644 --- a/tests/contracts/artifacts/MultiInheritanceProgram.arc32.json +++ b/tests/contracts/artifacts/MultiInheritanceProgram.arc32.json @@ -39,7 +39,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcm9nKCl2b2lkCiphYmlfcm91dGVfcHJvZzoKCS8vIGV4ZWN1dGUgcHJvZygpdm9pZAoJY2FsbHN1YiBwcm9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm9nKCk6IHZvaWQKcHJvZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjEwMAoJLy8gbG9nKE11bHRpSW5oZXJpdGFuY2UuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFDQWJrS0pnRUJZVEVZRklFR0N6RVpDSTBNQUxjQUFBQUFBQUFBQUFBQUFLa0FBQUFBQUFBQUFBQUFBSWdBQWlKRGlnQUFLQ05uaVlnQUFpSkRpZ0FBS0dRakVrU0FBV0tCS21lSmlBQUNJa09LQUFDQUFtSXlzSW1JQUFJaVE0b0FBSUJzQ2lBQkFURVlGSUVHQ3pFWkNJME1BQzhBQUFBQUFBQUFBQUFBQUNFQUFBQUFBQUFBQUFBQUFJZ0FBaUpEaWdBQWdBRmhnYmtLWjRtSUFBSWlRNG9BQUlBQ1lqS3dpU0pEZ0FTNFJIczJOaG9BamdILzhRQ0FCQjU2clJ5QUJFUTdNeGsyR2dDT0F2KzkvODBBc0lraVE0QUV1RVI3TmpZYUFJNEIvL0VBZ0FRZWVxMGNnQVE2eVFzSWdBUkVPek1aZ0FTRVJuci9OaG9BamdUL0pmOHgvMFgvVXdBPQoJbG9nCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwcm9nKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcm9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcm9nKCl2b2lkCiphYmlfcm91dGVfcHJvZzoKCS8vIGV4ZWN1dGUgcHJvZygpdm9pZAoJY2FsbHN1YiBwcm9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm9nKCk6IHZvaWQKcHJvZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjEwMAoJLy8gbG9nKE11bHRpSW5oZXJpdGFuY2UuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFDQWJrS0pnRUJZVEVZRklFR0N6RVpDSTBNQUxjQUFBQUFBQUFBQUFBQUFLa0FBQUFBQUFBQUFBQUFBSWdBQWlKRGlnQUFLQ05uaVlnQUFpSkRpZ0FBS0dRakVrU0FBV0tCS21lSmlBQUNJa09LQUFDQUFtSXlzSW1JQUFJaVE0b0FBSUJzQ2lBQkFURVlGSUVHQ3pFWkNJME1BQzhBQUFBQUFBQUFBQUFBQUNFQUFBQUFBQUFBQUFBQUFJZ0FBaUpEaWdBQWdBRmhnYmtLWjRtSUFBSWlRNG9BQUlBQ1lqS3dpU0pEZ0FTNFJIczJOaG9BamdILzhRQ0FCQjU2clJ5QUJFUTdNeGsyR2dDT0F2KzkvODBBc0lraVE0QUV1RVI3TmpZYUFJNEIvL0VBZ0FRZWVxMGNnQVE2eVFzSWdBUkVPek1aZ0FTRVJuci9OaG9BamdUL0pmOHgvMFgvVXdBPQoJbG9nCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwcm9nKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcm9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/MultiInheritanceProgram.arc56_draft.json b/tests/contracts/artifacts/MultiInheritanceProgram.arc56_draft.json index 8027405b5..ac0f3279c 100644 --- a/tests/contracts/artifacts/MultiInheritanceProgram.arc56_draft.json +++ b/tests/contracts/artifacts/MultiInheritanceProgram.arc56_draft.json @@ -60,518 +60,521 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 98, - "pc": [ - 0, - 1, - 2, - 3 - ] - }, - { - "teal": 13, - "source": 98, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 14, - "source": 98, - "pc": [ - 6 - ] - }, - { - "teal": 15, - "source": 98, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 16, - "source": 98, - "pc": [ - 9 - ] - }, - { - "teal": 17, - "source": 98, - "pc": [ - 10, - 11 - ] - }, - { - "teal": 18, - "source": 98, - "pc": [ - 12 - ] - }, - { - "teal": 19, - "source": 98, - "pc": [ - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38 - ] - }, - { - "teal": 23, - "source": 98, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 39 - ] - }, - { - "teal": 28, - "source": 99, - "pc": [ - 40, - 41, - 42 - ] - }, - { - "teal": 29, - "source": 99, - "pc": [ - 43 - ] - }, - { - "teal": 30, - "source": 99, - "pc": [ - 44 - ] - }, - { - "teal": 34, - "source": 99, - "pc": [ - 45, - 46, - 47 - ] - }, - { - "teal": 38, - "source": 100, - "pc": [ - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58, - 59, - 60, - 61, - 62, - 63, - 64, - 65, - 66, - 67, - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93, - 94, - 95, - 96, - 97, - 98, - 99, - 100, - 101, - 102, - 103, - 104, - 105, - 106, - 107, - 108, - 109, - 110, - 111, - 112, - 113, - 114, - 115, - 116, - 117, - 118, - 119, - 120, - 121, - 122, - 123, - 124, - 125, - 126, - 127, - 128, - 129, - 130, - 131, - 132, - 133, - 134, - 135, - 136, - 137, - 138, - 139, - 140, - 141, - 142, - 143, - 144, - 145, - 146, - 147, - 148, - 149, - 150, - 151, - 152, - 153, - 154, - 155, - 156, - 157, - 158, - 159, - 160, - 161, - 162, - 163, - 164, - 165, - 166, - 167, - 168, - 169, - 170, - 171, - 172, - 173, - 174, - 175, - 176, - 177, - 178, - 179, - 180, - 181, - 182, - 183, - 184, - 185, - 186, - 187, - 188, - 189, - 190, - 191, - 192, - 193, - 194, - 195, - 196, - 197, - 198, - 199, - 200, - 201, - 202, - 203, - 204, - 205, - 206, - 207, - 208, - 209, - 210, - 211, - 212, - 213, - 214, - 215, - 216, - 217, - 218, - 219, - 220, - 221, - 222, - 223, - 224, - 225, - 226, - 227, - 228, - 229, - 230, - 231, - 232, - 233, - 234, - 235, - 236, - 237, - 238, - 239, - 240, - 241, - 242, - 243, - 244, - 245, - 246, - 247, - 248, - 249, - 250, - 251, - 252, - 253, - 254, - 255, - 256, - 257, - 258, - 259, - 260, - 261, - 262, - 263, - 264, - 265, - 266, - 267, - 268, - 269, - 270, - 271, - 272, - 273, - 274, - 275, - 276, - 277, - 278, - 279, - 280, - 281, - 282, - 283, - 284, - 285, - 286, - 287, - 288, - 289, - 290, - 291, - 292, - 293, - 294, - 295, - 296, - 297, - 298, - 299, - 300, - 301, - 302, - 303, - 304, - 305, - 306, - 307, - 308, - 309, - 310, - 311, - 312, - 313, - 314, - 315, - 316 - ] - }, - { - "teal": 39, - "source": 100, - "pc": [ - 317 - ] - }, - { - "teal": 40, - "source": 99, - "pc": [ - 318 - ] - }, - { - "teal": 43, - "source": 98, - "pc": [ - 319 - ] - }, - { - "teal": 44, - "source": 98, - "pc": [ - 320 - ] - }, - { - "teal": 47, - "source": 98, - "pc": [ - 321, - 322, - 323, - 324, - 325, - 326 - ] - }, - { - "teal": 48, - "source": 98, - "pc": [ - 327, - 328, - 329 - ] - }, - { - "teal": 49, - "source": 98, - "pc": [ - 330, - 331, - 332, - 333 - ] - }, - { - "teal": 52, - "source": 98, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 334 - ] - }, - { - "teal": 55, - "source": 98, - "pc": [ - 335, - 336, - 337, - 338, - 339, - 340 - ] - }, - { - "teal": 56, - "source": 98, - "pc": [ - 341, - 342, - 343 - ] - }, - { - "teal": 57, - "source": 98, - "pc": [ - 344, - 345, - 346, - 347 - ] - }, - { - "teal": 60, - "source": 98, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 348 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 98, + "pc": [ + 0, + 1, + 2, + 3 + ] + }, + { + "teal": 13, + "source": 98, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 14, + "source": 98, + "pc": [ + 6 + ] + }, + { + "teal": 15, + "source": 98, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 16, + "source": 98, + "pc": [ + 9 + ] + }, + { + "teal": 17, + "source": 98, + "pc": [ + 10, + 11 + ] + }, + { + "teal": 18, + "source": 98, + "pc": [ + 12 + ] + }, + { + "teal": 19, + "source": 98, + "pc": [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + }, + { + "teal": 23, + "source": 98, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 39 + ] + }, + { + "teal": 28, + "source": 99, + "pc": [ + 40, + 41, + 42 + ] + }, + { + "teal": 29, + "source": 99, + "pc": [ + 43 + ] + }, + { + "teal": 30, + "source": 99, + "pc": [ + 44 + ] + }, + { + "teal": 34, + "source": 99, + "pc": [ + 45, + 46, + 47 + ] + }, + { + "teal": 38, + "source": 100, + "pc": [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316 + ] + }, + { + "teal": 39, + "source": 100, + "pc": [ + 317 + ] + }, + { + "teal": 40, + "source": 99, + "pc": [ + 318 + ] + }, + { + "teal": 43, + "source": 98, + "pc": [ + 319 + ] + }, + { + "teal": 44, + "source": 98, + "pc": [ + 320 + ] + }, + { + "teal": 47, + "source": 98, + "pc": [ + 321, + 322, + 323, + 324, + 325, + 326 + ] + }, + { + "teal": 48, + "source": 98, + "pc": [ + 327, + 328, + 329 + ] + }, + { + "teal": 49, + "source": 98, + "pc": [ + 330, + 331, + 332, + 333 + ] + }, + { + "teal": 52, + "source": 98, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 334 + ] + }, + { + "teal": 55, + "source": 98, + "pc": [ + 335, + 336, + 337, + 338, + 339, + 340 + ] + }, + { + "teal": 56, + "source": 98, + "pc": [ + 341, + 342, + 343 + ] + }, + { + "teal": 57, + "source": 98, + "pc": [ + 344, + 345, + 346, + 347 + ] + }, + { + "teal": 60, + "source": 98, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 348 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcm9nKCl2b2lkCiphYmlfcm91dGVfcHJvZzoKCS8vIGV4ZWN1dGUgcHJvZygpdm9pZAoJY2FsbHN1YiBwcm9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm9nKCk6IHZvaWQKcHJvZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjEwMAoJLy8gbG9nKE11bHRpSW5oZXJpdGFuY2UuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFDQWJrS0pnRUJZVEVZRklFR0N6RVpDSTBNQUxjQUFBQUFBQUFBQUFBQUFLa0FBQUFBQUFBQUFBQUFBSWdBQWlKRGlnQUFLQ05uaVlnQUFpSkRpZ0FBS0dRakVrU0FBV0tCS21lSmlBQUNJa09LQUFDQUFtSXlzSW1JQUFJaVE0b0FBSUJzQ2lBQkFURVlGSUVHQ3pFWkNJME1BQzhBQUFBQUFBQUFBQUFBQUNFQUFBQUFBQUFBQUFBQUFJZ0FBaUpEaWdBQWdBRmhnYmtLWjRtSUFBSWlRNG9BQUlBQ1lqS3dpU0pEZ0FTNFJIczJOaG9BamdILzhRQ0FCQjU2clJ5QUJFUTdNeGsyR2dDT0F2KzkvODBBc0lraVE0QUV1RVI3TmpZYUFJNEIvL0VBZ0FRZWVxMGNnQVE2eVFzSWdBUkVPek1aZ0FTRVJuci9OaG9BamdUL0pmOHgvMFgvVXdBPQoJbG9nCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwcm9nKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcm9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcm9nKCl2b2lkCiphYmlfcm91dGVfcHJvZzoKCS8vIGV4ZWN1dGUgcHJvZygpdm9pZAoJY2FsbHN1YiBwcm9nCglpbnQgMQoJcmV0dXJuCgovLyBwcm9nKCk6IHZvaWQKcHJvZzoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9pbmhlcml0YW5jZS5hbGdvLnRzOjEwMAoJLy8gbG9nKE11bHRpSW5oZXJpdGFuY2UuYXBwcm92YWxQcm9ncmFtKCkpCglieXRlIGI2NCBDaUFDQWJrS0pnRUJZVEVZRklFR0N6RVpDSTBNQUxjQUFBQUFBQUFBQUFBQUFLa0FBQUFBQUFBQUFBQUFBSWdBQWlKRGlnQUFLQ05uaVlnQUFpSkRpZ0FBS0dRakVrU0FBV0tCS21lSmlBQUNJa09LQUFDQUFtSXlzSW1JQUFJaVE0b0FBSUJzQ2lBQkFURVlGSUVHQ3pFWkNJME1BQzhBQUFBQUFBQUFBQUFBQUNFQUFBQUFBQUFBQUFBQUFJZ0FBaUpEaWdBQWdBRmhnYmtLWjRtSUFBSWlRNG9BQUlBQ1lqS3dpU0pEZ0FTNFJIczJOaG9BamdILzhRQ0FCQjU2clJ5QUJFUTdNeGsyR2dDT0F2KzkvODBBc0lraVE0QUV1RVI3TmpZYUFJNEIvL0VBZ0FRZWVxMGNnQVE2eVFzSWdBUkVPek1aZ0FTRVJuci9OaG9BamdUL0pmOHgvMFgvVXdBPQoJbG9nCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJwcm9nKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcm9nCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/ProgramVersion.approval.teal b/tests/contracts/artifacts/ProgramVersion.approval.teal index f9ffe4986..dd9958825 100644 --- a/tests/contracts/artifacts/ProgramVersion.approval.teal +++ b/tests/contracts/artifacts/ProgramVersion.approval.teal @@ -1,6 +1,6 @@ #pragma version 8 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/ProgramVersion.arc32.json b/tests/contracts/artifacts/ProgramVersion.arc32.json index 837852796..350bacc11 100644 --- a/tests/contracts/artifacts/ProgramVersion.arc32.json +++ b/tests/contracts/artifacts/ProgramVersion.arc32.json @@ -34,7 +34,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDgKCi8vIFRoaXMgVEVBTCB3YXMgZ2VuZXJhdGVkIGJ5IFRFQUxTY3JpcHQgdjAuMTAyLjAKLy8gaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9URUFMU2NyaXB0CgovLyBUaGlzIGNvbnRyYWN0IGlzIGNvbXBsaWFudCB3aXRoIGFuZC9vciBpbXBsZW1lbnRzIHRoZSBmb2xsb3dpbmcgQVJDczogWyBBUkM0IF0KCi8vIFRoZSBmb2xsb3dpbmcgdGVuIGxpbmVzIG9mIFRFQUwgaGFuZGxlIGluaXRpYWwgcHJvZ3JhbSBmbG93Ci8vIFRoaXMgcGF0dGVybiBpcyB1c2VkIHRvIG1ha2UgaXQgZWFzeSBmb3IgYW55b25lIHRvIHBhcnNlIHRoZSBzdGFydCBvZiB0aGUgcHJvZ3JhbSBhbmQgZGV0ZXJtaW5lIGlmIGEgc3BlY2lmaWMgYWN0aW9uIGlzIGFsbG93ZWQKLy8gSGVyZSwgYWN0aW9uIHJlZmVycyB0byB0aGUgT25Db21wbGV0ZSBpbiBjb21iaW5hdGlvbiB3aXRoIHdoZXRoZXIgdGhlIGFwcCBpcyBiZWluZyBjcmVhdGVkIG9yIGNhbGxlZAovLyBFdmVyeSBwb3NzaWJsZSBhY3Rpb24gZm9yIHRoaXMgY29udHJhY3QgaXMgcmVwcmVzZW50ZWQgaW4gdGhlIHN3aXRjaCBzdGF0ZW1lbnQKLy8gSWYgdGhlIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGNvbnRyYWN0LCBpdHMgcmVzcGVjdGl2ZSBicmFuY2ggd2lsbCBiZSAiKk5PVF9JTVBMRU1FTlRFRCIgd2hpY2gganVzdCBjb250YWlucyAiZXJyIgp0eG4gQXBwbGljYXRpb25JRAohCmludCA2CioKdHhuIE9uQ29tcGxldGlvbgorCnN3aXRjaCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDgKCi8vIFRoaXMgVEVBTCB3YXMgZ2VuZXJhdGVkIGJ5IFRFQUxTY3JpcHQgdjAuMTAzLjAKLy8gaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9URUFMU2NyaXB0CgovLyBUaGlzIGNvbnRyYWN0IGlzIGNvbXBsaWFudCB3aXRoIGFuZC9vciBpbXBsZW1lbnRzIHRoZSBmb2xsb3dpbmcgQVJDczogWyBBUkM0IF0KCi8vIFRoZSBmb2xsb3dpbmcgdGVuIGxpbmVzIG9mIFRFQUwgaGFuZGxlIGluaXRpYWwgcHJvZ3JhbSBmbG93Ci8vIFRoaXMgcGF0dGVybiBpcyB1c2VkIHRvIG1ha2UgaXQgZWFzeSBmb3IgYW55b25lIHRvIHBhcnNlIHRoZSBzdGFydCBvZiB0aGUgcHJvZ3JhbSBhbmQgZGV0ZXJtaW5lIGlmIGEgc3BlY2lmaWMgYWN0aW9uIGlzIGFsbG93ZWQKLy8gSGVyZSwgYWN0aW9uIHJlZmVycyB0byB0aGUgT25Db21wbGV0ZSBpbiBjb21iaW5hdGlvbiB3aXRoIHdoZXRoZXIgdGhlIGFwcCBpcyBiZWluZyBjcmVhdGVkIG9yIGNhbGxlZAovLyBFdmVyeSBwb3NzaWJsZSBhY3Rpb24gZm9yIHRoaXMgY29udHJhY3QgaXMgcmVwcmVzZW50ZWQgaW4gdGhlIHN3aXRjaCBzdGF0ZW1lbnQKLy8gSWYgdGhlIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGNvbnRyYWN0LCBpdHMgcmVzcGVjdGl2ZSBicmFuY2ggd2lsbCBiZSAiKk5PVF9JTVBMRU1FTlRFRCIgd2hpY2gganVzdCBjb250YWlucyAiZXJyIgp0eG4gQXBwbGljYXRpb25JRAohCmludCA2CioKdHhuIE9uQ29tcGxldGlvbgorCnN3aXRjaCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDg=" }, "contract": { diff --git a/tests/contracts/artifacts/ProgramVersion.arc56_draft.json b/tests/contracts/artifacts/ProgramVersion.arc56_draft.json index b81d2781c..d38cb087b 100644 --- a/tests/contracts/artifacts/ProgramVersion.arc56_draft.json +++ b/tests/contracts/artifacts/ProgramVersion.arc56_draft.json @@ -47,156 +47,159 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 44, - "pc": [ - 0 - ] - }, - { - "teal": 13, - "source": 44, - "pc": [ - 1, - 2 - ] - }, - { - "teal": 14, - "source": 44, - "pc": [ - 3 - ] - }, - { - "teal": 15, - "source": 44, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 16, - "source": 44, - "pc": [ - 6 - ] - }, - { - "teal": 17, - "source": 44, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 18, - "source": 44, - "pc": [ - 9 - ] - }, - { - "teal": 19, - "source": 44, - "pc": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ] - }, - { - "teal": 23, - "source": 44, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 36 - ] - }, - { - "teal": 26, - "source": 44, - "pc": [ - 37, - 38 - ] - }, - { - "teal": 27, - "source": 44, - "pc": [ - 39 - ] - }, - { - "teal": 30, - "source": 44, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 44, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 44, - "pc": [ - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 44, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 53 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 44, + "pc": [ + 0 + ] + }, + { + "teal": 13, + "source": 44, + "pc": [ + 1, + 2 + ] + }, + { + "teal": 14, + "source": 44, + "pc": [ + 3 + ] + }, + { + "teal": 15, + "source": 44, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 16, + "source": 44, + "pc": [ + 6 + ] + }, + { + "teal": 17, + "source": 44, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 18, + "source": 44, + "pc": [ + 9 + ] + }, + { + "teal": 19, + "source": 44, + "pc": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "teal": 23, + "source": 44, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 36 + ] + }, + { + "teal": 26, + "source": 44, + "pc": [ + 37, + 38 + ] + }, + { + "teal": 27, + "source": 44, + "pc": [ + 39 + ] + }, + { + "teal": 30, + "source": 44, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 44, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 44, + "pc": [ + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 44, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 53 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDgKCi8vIFRoaXMgVEVBTCB3YXMgZ2VuZXJhdGVkIGJ5IFRFQUxTY3JpcHQgdjAuMTAyLjAKLy8gaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9URUFMU2NyaXB0CgovLyBUaGlzIGNvbnRyYWN0IGlzIGNvbXBsaWFudCB3aXRoIGFuZC9vciBpbXBsZW1lbnRzIHRoZSBmb2xsb3dpbmcgQVJDczogWyBBUkM0IF0KCi8vIFRoZSBmb2xsb3dpbmcgdGVuIGxpbmVzIG9mIFRFQUwgaGFuZGxlIGluaXRpYWwgcHJvZ3JhbSBmbG93Ci8vIFRoaXMgcGF0dGVybiBpcyB1c2VkIHRvIG1ha2UgaXQgZWFzeSBmb3IgYW55b25lIHRvIHBhcnNlIHRoZSBzdGFydCBvZiB0aGUgcHJvZ3JhbSBhbmQgZGV0ZXJtaW5lIGlmIGEgc3BlY2lmaWMgYWN0aW9uIGlzIGFsbG93ZWQKLy8gSGVyZSwgYWN0aW9uIHJlZmVycyB0byB0aGUgT25Db21wbGV0ZSBpbiBjb21iaW5hdGlvbiB3aXRoIHdoZXRoZXIgdGhlIGFwcCBpcyBiZWluZyBjcmVhdGVkIG9yIGNhbGxlZAovLyBFdmVyeSBwb3NzaWJsZSBhY3Rpb24gZm9yIHRoaXMgY29udHJhY3QgaXMgcmVwcmVzZW50ZWQgaW4gdGhlIHN3aXRjaCBzdGF0ZW1lbnQKLy8gSWYgdGhlIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGNvbnRyYWN0LCBpdHMgcmVzcGVjdGl2ZSBicmFuY2ggd2lsbCBiZSAiKk5PVF9JTVBMRU1FTlRFRCIgd2hpY2gganVzdCBjb250YWlucyAiZXJyIgp0eG4gQXBwbGljYXRpb25JRAohCmludCA2CioKdHhuIE9uQ29tcGxldGlvbgorCnN3aXRjaCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDgKCi8vIFRoaXMgVEVBTCB3YXMgZ2VuZXJhdGVkIGJ5IFRFQUxTY3JpcHQgdjAuMTAzLjAKLy8gaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9URUFMU2NyaXB0CgovLyBUaGlzIGNvbnRyYWN0IGlzIGNvbXBsaWFudCB3aXRoIGFuZC9vciBpbXBsZW1lbnRzIHRoZSBmb2xsb3dpbmcgQVJDczogWyBBUkM0IF0KCi8vIFRoZSBmb2xsb3dpbmcgdGVuIGxpbmVzIG9mIFRFQUwgaGFuZGxlIGluaXRpYWwgcHJvZ3JhbSBmbG93Ci8vIFRoaXMgcGF0dGVybiBpcyB1c2VkIHRvIG1ha2UgaXQgZWFzeSBmb3IgYW55b25lIHRvIHBhcnNlIHRoZSBzdGFydCBvZiB0aGUgcHJvZ3JhbSBhbmQgZGV0ZXJtaW5lIGlmIGEgc3BlY2lmaWMgYWN0aW9uIGlzIGFsbG93ZWQKLy8gSGVyZSwgYWN0aW9uIHJlZmVycyB0byB0aGUgT25Db21wbGV0ZSBpbiBjb21iaW5hdGlvbiB3aXRoIHdoZXRoZXIgdGhlIGFwcCBpcyBiZWluZyBjcmVhdGVkIG9yIGNhbGxlZAovLyBFdmVyeSBwb3NzaWJsZSBhY3Rpb24gZm9yIHRoaXMgY29udHJhY3QgaXMgcmVwcmVzZW50ZWQgaW4gdGhlIHN3aXRjaCBzdGF0ZW1lbnQKLy8gSWYgdGhlIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGNvbnRyYWN0LCBpdHMgcmVzcGVjdGl2ZSBicmFuY2ggd2lsbCBiZSAiKk5PVF9JTVBMRU1FTlRFRCIgd2hpY2gganVzdCBjb250YWlucyAiZXJyIgp0eG4gQXBwbGljYXRpb25JRAohCmludCA2CioKdHhuIE9uQ29tcGxldGlvbgorCnN3aXRjaCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDg=" }, "byteCode": { diff --git a/tests/contracts/artifacts/SchemaContract.approval.teal b/tests/contracts/artifacts/SchemaContract.approval.teal index 5ee5208dc..68cd51086 100644 --- a/tests/contracts/artifacts/SchemaContract.approval.teal +++ b/tests/contracts/artifacts/SchemaContract.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/SchemaContract.arc32.json b/tests/contracts/artifacts/SchemaContract.arc32.json index 02b74e22a..e01be1532 100644 --- a/tests/contracts/artifacts/SchemaContract.arc32.json +++ b/tests/contracts/artifacts/SchemaContract.arc32.json @@ -34,7 +34,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/SchemaContract.arc56_draft.json b/tests/contracts/artifacts/SchemaContract.arc56_draft.json index f0426b9e6..e52a27ddd 100644 --- a/tests/contracts/artifacts/SchemaContract.arc56_draft.json +++ b/tests/contracts/artifacts/SchemaContract.arc56_draft.json @@ -65,156 +65,159 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 13, - "pc": [ - 0 - ] - }, - { - "teal": 13, - "source": 13, - "pc": [ - 1, - 2 - ] - }, - { - "teal": 14, - "source": 13, - "pc": [ - 3 - ] - }, - { - "teal": 15, - "source": 13, - "pc": [ - 4, - 5 - ] - }, - { - "teal": 16, - "source": 13, - "pc": [ - 6 - ] - }, - { - "teal": 17, - "source": 13, - "pc": [ - 7, - 8 - ] - }, - { - "teal": 18, - "source": 13, - "pc": [ - 9 - ] - }, - { - "teal": 19, - "source": 13, - "pc": [ - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35 - ] - }, - { - "teal": 23, - "source": 13, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 36 - ] - }, - { - "teal": 26, - "source": 13, - "pc": [ - 37, - 38 - ] - }, - { - "teal": 27, - "source": 13, - "pc": [ - 39 - ] - }, - { - "teal": 30, - "source": 13, - "pc": [ - 40, - 41, - 42, - 43, - 44, - 45 - ] - }, - { - "teal": 31, - "source": 13, - "pc": [ - 46, - 47, - 48 - ] - }, - { - "teal": 32, - "source": 13, - "pc": [ - 49, - 50, - 51, - 52 - ] - }, - { - "teal": 35, - "source": 13, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 53 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 13, + "pc": [ + 0 + ] + }, + { + "teal": 13, + "source": 13, + "pc": [ + 1, + 2 + ] + }, + { + "teal": 14, + "source": 13, + "pc": [ + 3 + ] + }, + { + "teal": 15, + "source": 13, + "pc": [ + 4, + 5 + ] + }, + { + "teal": 16, + "source": 13, + "pc": [ + 6 + ] + }, + { + "teal": 17, + "source": 13, + "pc": [ + 7, + 8 + ] + }, + { + "teal": 18, + "source": 13, + "pc": [ + 9 + ] + }, + { + "teal": 19, + "source": 13, + "pc": [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + }, + { + "teal": 23, + "source": 13, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 36 + ] + }, + { + "teal": 26, + "source": 13, + "pc": [ + 37, + 38 + ] + }, + { + "teal": 27, + "source": 13, + "pc": [ + 39 + ] + }, + { + "teal": 30, + "source": 13, + "pc": [ + 40, + 41, + 42, + 43, + 44, + 45 + ] + }, + { + "teal": 31, + "source": 13, + "pc": [ + 46, + 47, + 48 + ] + }, + { + "teal": 32, + "source": 13, + "pc": [ + 49, + 50, + 51, + 52 + ] + }, + { + "teal": 35, + "source": 13, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 53 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgoqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uOgoJaW50IDEKCXJldHVybgoKKmNyZWF0ZV9Ob09wOgoJbWV0aG9kICJjcmVhdGVBcHBsaWNhdGlvbigpdm9pZCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb24KCgkvLyB0aGlzIGNvbnRyYWN0IGRvZXMgbm90IGltcGxlbWVudCB0aGUgZ2l2ZW4gQUJJIG1ldGhvZCBmb3IgY3JlYXRlIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/StorageTest.approval.teal b/tests/contracts/artifacts/StorageTest.approval.teal index 247f70cc2..3161e31ae 100644 --- a/tests/contracts/artifacts/StorageTest.approval.teal +++ b/tests/contracts/artifacts/StorageTest.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/StorageTest.arc32.json b/tests/contracts/artifacts/StorageTest.arc32.json index bab860fdb..85b94b47c 100644 --- a/tests/contracts/artifacts/StorageTest.arc32.json +++ b/tests/contracts/artifacts/StorageTest.arc32.json @@ -249,7 +249,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcmVmaXgoKXZvaWQKKmFiaV9yb3V0ZV9wcmVmaXg6CgkvLyBleGVjdXRlIHByZWZpeCgpdm9pZAoJY2FsbHN1YiBwcmVmaXgKCWludCAxCglyZXR1cm4KCi8vIHByZWZpeCgpOiB2b2lkCnByZWZpeDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjYKCS8vIHRoaXMuYm94TWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjcKCS8vIHRoaXMuZ2xvYmFsTWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjgKCS8vIHRoaXMubG9jYWxNYXBXaXRoUHJlZml4KHRoaXMudHhuLnNlbmRlciwgJ29vJykudmFsdWUgPSAnYmFyJwoJdHhuIFNlbmRlcgoJYnl0ZSAweDY2NmY2ZgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBnbG9iYWxLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQ6CgkvLyBleGVjdXRlIGdsb2JhbEtleVB1dCgpdm9pZAoJY2FsbHN1YiBnbG9iYWxLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbEtleVB1dCgpOiB2b2lkCmdsb2JhbEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MzIKCS8vIHRoaXMuZ2xvYmFsS2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbEtleUdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5R2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5R2V0KCk6IHZvaWQKZ2xvYmFsS2V5R2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czozNgoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LnZhbHVlID09PSAnYmFyJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbEtleURlbGV0ZSgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleURlbGV0ZToKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RGVsZXRlKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleURlbGV0ZQoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RGVsZXRlKCk6IHZvaWQKZ2xvYmFsS2V5RGVsZXRlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0MAoJLy8gdGhpcy5nbG9iYWxLZXkuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZGVsCglyZXRzdWIKCi8vIGdsb2JhbEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RXhpc3RzKCk6IHZvaWQKZ2xvYmFsS2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbEtleVB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsS2V5UHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsS2V5UHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbEtleVB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxLZXlQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxLZXlQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjQ4CgkvLyB0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID0gJ2JhcicKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5R2V0OgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlHZXQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlHZXQoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUdldChhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUdldDoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTIKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsS2V5RGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleURlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleURlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTYKCS8vIHRoaXMubG9jYWxLZXkoYSkuZGVsZXRlKCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZGVsCglyZXRzdWIKCi8vIGxvY2FsS2V5RXhpc3RzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RXhpc3RzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlFeGlzdHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlFeGlzdHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUV4aXN0cyhhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUV4aXN0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjAKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlQdXQ6CgkvLyBleGVjdXRlIGJveEtleVB1dCgpdm9pZAoJY2FsbHN1YiBib3hLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVB1dCgpOiB2b2lkCmJveEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjQKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94S2V5R2V0KCl2b2lkCiphYmlfcm91dGVfYm94S2V5R2V0OgoJLy8gZXhlY3V0ZSBib3hLZXlHZXQoKXZvaWQKCWNhbGxzdWIgYm94S2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlHZXQoKTogdm9pZApib3hLZXlHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjY4CgkvLyBhc3NlcnQodGhpcy5ib3hLZXkudmFsdWUgPT09ICdiYXInKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5ib3hLZXkudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlEZWxldGU6CgkvLyBleGVjdXRlIGJveEtleURlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleURlbGV0ZSgpOiB2b2lkCmJveEtleURlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NzIKCS8vIHRoaXMuYm94S2V5LmRlbGV0ZSgpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZGVsCglyZXRzdWIKCi8vIGJveEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2JveEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgYm94S2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGJveEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gYm94S2V5RXhpc3RzKCk6IHZvaWQKYm94S2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo3NgoJLy8gYXNzZXJ0KHRoaXMuYm94S2V5LmV4aXN0cykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbE1hcFB1dCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwUHV0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwUHV0KCk6IHZvaWQKZ2xvYmFsTWFwUHV0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4MAoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbE1hcEdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcEdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwR2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwR2V0KCk6IHZvaWQKZ2xvYmFsTWFwR2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsTWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBnbG9iYWxNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxNYXBEZWxldGU6CgkvLyBleGVjdXRlIGdsb2JhbE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBnbG9iYWxNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbE1hcERlbGV0ZSgpOiB2b2lkCmdsb2JhbE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6ODgKCS8vIHRoaXMuZ2xvYmFsTWFwKCdmb28nKS5kZWxldGUoKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9kZWwKCXJldHN1YgoKLy8gZ2xvYmFsTWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZ2xvYmFsTWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBnbG9iYWxNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgZ2xvYmFsTWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBnbG9iYWxNYXBFeGlzdHMoKTogdm9pZApnbG9iYWxNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjkyCgkvLyBhc3NlcnQodGhpcy5nbG9iYWxNYXAoJ2ZvbycpLmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcFB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwUHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwUHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjk2CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS52YWx1ZSA9ICdiYXInCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBsb2NhbE1hcEdldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcEdldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwR2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBHZXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBHZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KHRoaXMubG9jYWxNYXAoYSwgJ2ZvbycpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsTWFwRGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsTWFwRGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxNYXBEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsTWFwRGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbE1hcERlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbE1hcERlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTA0CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5kZWxldGUoKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9sb2NhbF9kZWwKCXJldHN1YgoKLy8gbG9jYWxNYXBFeGlzdHMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbG9jYWxNYXBFeGlzdHM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBsb2NhbE1hcEV4aXN0cyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbG9jYWxNYXBFeGlzdHMKCWludCAxCglyZXR1cm4KCi8vIGxvY2FsTWFwRXhpc3RzKGE6IEFkZHJlc3MpOiB2b2lkCmxvY2FsTWFwRXhpc3RzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxMDgKCS8vIGFzc2VydCh0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5leGlzdHMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYm94TWFwUHV0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwUHV0OgoJLy8gZXhlY3V0ZSBib3hNYXBQdXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwUHV0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBQdXQoKTogdm9pZApib3hNYXBQdXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExMgoJLy8gdGhpcy5ib3hNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94TWFwR2V0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwR2V0OgoJLy8gZXhlY3V0ZSBib3hNYXBHZXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwR2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBHZXQoKTogdm9pZApib3hNYXBHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExNgoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnZm9vJykudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hNYXBEZWxldGU6CgkvLyBleGVjdXRlIGJveE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcERlbGV0ZSgpOiB2b2lkCmJveE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTIwCgkvLyB0aGlzLmJveE1hcCgnZm9vJykuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9kZWwKCXJldHN1YgoKLy8gYm94TWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfYm94TWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBib3hNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgYm94TWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBFeGlzdHMoKTogdm9pZApib3hNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS5leGlzdHMpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfbGVuCglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlDcmVhdGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlDcmVhdGU6CgkvLyBleGVjdXRlIGJveEtleUNyZWF0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlDcmVhdGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleUNyZWF0ZSgpOiB2b2lkCmJveEtleUNyZWF0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTI4CgkvLyB0aGlzLmJveEtleS5jcmVhdGUoMTAyNCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWludCAxMDI0Cglib3hfY3JlYXRlCglwb3AKCXJldHN1YgoKLy8gYm94TWFwQ3JlYXRlKCl2b2lkCiphYmlfcm91dGVfYm94TWFwQ3JlYXRlOgoJLy8gZXhlY3V0ZSBib3hNYXBDcmVhdGUoKXZvaWQKCWNhbGxzdWIgYm94TWFwQ3JlYXRlCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBDcmVhdGUoKTogdm9pZApib3hNYXBDcmVhdGU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEzMgoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLmNyZWF0ZSgxMDI0KQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDEwMjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBib3hLZXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveEtleUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hLZXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlMZW5ndGgoKTogdWludDY0CmJveEtleUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTM2CgkvLyByZXR1cm4gdGhpcy5ib3hLZXkuc2l6ZTsKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnNpemUKCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveE1hcExlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hNYXBMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hNYXBMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBMZW5ndGgoKTogdWludDY0CmJveE1hcExlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTQwCgkvLyByZXR1cm4gdGhpcy5ib3hNYXAoJ2JhcicpLnNpemU7CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnYmFyJykuc2l6ZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJveEtleVJlcGxhY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlSZXBsYWNlOgoJLy8gZXhlY3V0ZSBib3hLZXlSZXBsYWNlKCl2b2lkCgljYWxsc3ViIGJveEtleVJlcGxhY2UKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVJlcGxhY2UoKTogdm9pZApib3hLZXlSZXBsYWNlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNDQKCS8vIHRoaXMuYm94S2V5LnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94TWFwUmVwbGFjZSgpdm9pZAoqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2U6CgkvLyBleGVjdXRlIGJveE1hcFJlcGxhY2UoKXZvaWQKCWNhbGxzdWIgYm94TWFwUmVwbGFjZQoJaW50IDEKCXJldHVybgoKLy8gYm94TWFwUmVwbGFjZSgpOiB2b2lkCmJveE1hcFJlcGxhY2U6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE0OAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94S2V5RXh0cmFjdCgpc3RyaW5nCiphYmlfcm91dGVfYm94S2V5RXh0cmFjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlFeHRyYWN0KClzdHJpbmcKCWNhbGxzdWIgYm94S2V5RXh0cmFjdAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlFeHRyYWN0KCk6IHN0cmluZwpib3hLZXlFeHRyYWN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNTIKCS8vIHJldHVybiB0aGlzLmJveEtleS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBib3hNYXBFeHRyYWN0KClzdHJpbmcKKmFiaV9yb3V0ZV9ib3hNYXBFeHRyYWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveE1hcEV4dHJhY3QoKXN0cmluZwoJY2FsbHN1YiBib3hNYXBFeHRyYWN0CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcEV4dHJhY3QoKTogc3RyaW5nCmJveE1hcEV4dHJhY3Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE1NgoJLy8gcmV0dXJuIHRoaXMuYm94TWFwKCdiYXInKS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBpc09wdGVkSW4oKWJvb2wKKmFiaV9yb3V0ZV9pc09wdGVkSW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgaXNPcHRlZEluKClib29sCgljYWxsc3ViIGlzT3B0ZWRJbgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpc09wdGVkSW4oKTogYm9vbGVhbgppc09wdGVkSW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2MAoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlci5pc09wdGVkSW5Ub0FwcCh0aGlzLmFwcCk7Cgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfb3B0ZWRfaW4KCXJldHN1YgoKLy8gZXhHbG9iYWwoKXZvaWQKKmFiaV9yb3V0ZV9leEdsb2JhbDoKCS8vIGV4ZWN1dGUgZXhHbG9iYWwoKXZvaWQKCWNhbGxzdWIgZXhHbG9iYWwKCWludCAxCglyZXR1cm4KCi8vIGV4R2xvYmFsKCk6IHZvaWQKZXhHbG9iYWw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2NAoJLy8gbG9nKHRoaXMuYXBwLmdsb2JhbFN0YXRlKCdmb28nKSBhcyBieXRlcykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5nbG9iYWxTdGF0ZSgnZm9vJykKCWFzc2VydAoJbG9nCglyZXRzdWIKCi8vIGV4TG9jYWwoKXZvaWQKKmFiaV9yb3V0ZV9leExvY2FsOgoJLy8gZXhlY3V0ZSBleExvY2FsKCl2b2lkCgljYWxsc3ViIGV4TG9jYWwKCWludCAxCglyZXR1cm4KCi8vIGV4TG9jYWwoKTogdm9pZApleExvY2FsOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNjgKCS8vIGxvZyh0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpIGFzIGJ5dGVzKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoKCS8vIGxvY2FsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpCglhc3NlcnQKCWxvZwoJcmV0c3ViCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3gKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gYWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKTogdWludDE2CmFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTcyCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC5jcmVhdGUoKQoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJaW50IDgwMDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTczCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC52YWx1ZVsxMjNdID0gNDU2CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglieXRlIDB4MDFjOAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE3NQoJLy8gcmV0dXJuIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlWzEyM107CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglpbnQgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCh1aW50NjQpdWludDE2CiphYmlfcm91dGVfZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYKCWNhbGxzdWIgZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KGk6IHVpbnQ2NCk6IHVpbnQxNgpkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNzkKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LmNyZWF0ZSgpCglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgODAwMAoJYm94X2NyZWF0ZQoJcG9wCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxODAKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlW2ldID0gNDU2CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDFjOAoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4NAoJLy8gcmV0dXJuIGFbaV07CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMgoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gYm94UmVzaXplKCl2b2lkCiphYmlfcm91dGVfYm94UmVzaXplOgoJLy8gZXhlY3V0ZSBib3hSZXNpemUoKXZvaWQKCWNhbGxzdWIgYm94UmVzaXplCglpbnQgMQoJcmV0dXJuCgovLyBib3hSZXNpemUoKTogdm9pZApib3hSZXNpemU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4OAoJLy8gdGhpcy5ib3hLZXkucmVzaXplKDEwMjQpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTg5CgkvLyB0aGlzLmJveE1hcCgnYmFyJykucmVzaXplKDEwMjQpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoJcmV0c3ViCgovLyBib3hTcGxpY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hTcGxpY2U6CgkvLyBleGVjdXRlIGJveFNwbGljZSgpdm9pZAoJY2FsbHN1YiBib3hTcGxpY2UKCWludCAxCglyZXR1cm4KCi8vIGJveFNwbGljZSgpOiB2b2lkCmJveFNwbGljZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTkzCgkvLyB0aGlzLmJveEtleS5zcGxpY2UoMCwgMSwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJaW50IDEKCWJ5dGUgMHg2MTYyNjMgLy8gImFiYyIKCWJveF9zcGxpY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnNwbGljZSgwLCAxLCAnYWJjJykKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWludCAwCglpbnQgMQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3NwbGljZQoJcmV0c3ViCgovLyBleFN0YXRlRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZXhTdGF0ZUV4aXN0czoKCS8vIGV4ZWN1dGUgZXhTdGF0ZUV4aXN0cygpdm9pZAoJY2FsbHN1YiBleFN0YXRlRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBleFN0YXRlRXhpc3RzKCk6IHZvaWQKZXhTdGF0ZUV4aXN0czoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTk4CgkvLyBhc3NlcnQodGhpcy5hcHAuZ2xvYmFsU3RhdGVFeGlzdHMoJ2ZvbycpKQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9nZXRfZXgKCXN3YXAKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxOTkKCS8vIGFzc2VydCh0aGlzLmFwcC5sb2NhbFN0YXRlRXhpc3RzKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInByZWZpeCgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5UHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxLZXlHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbEtleURlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5RXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbEtleUV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveEtleVB1dCgpdm9pZCIKCW1ldGhvZCAiYm94S2V5R2V0KCl2b2lkIgoJbWV0aG9kICJib3hLZXlEZWxldGUoKXZvaWQiCgltZXRob2QgImJveEtleUV4aXN0cygpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwUHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxNYXBHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbE1hcERlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwRXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveE1hcFB1dCgpdm9pZCIKCW1ldGhvZCAiYm94TWFwR2V0KCl2b2lkIgoJbWV0aG9kICJib3hNYXBEZWxldGUoKXZvaWQiCgltZXRob2QgImJveE1hcEV4aXN0cygpdm9pZCIKCW1ldGhvZCAiYm94S2V5Q3JlYXRlKCl2b2lkIgoJbWV0aG9kICJib3hNYXBDcmVhdGUoKXZvaWQiCgltZXRob2QgImJveEtleUxlbmd0aCgpdWludDY0IgoJbWV0aG9kICJib3hNYXBMZW5ndGgoKXVpbnQ2NCIKCW1ldGhvZCAiYm94S2V5UmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94TWFwUmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94S2V5RXh0cmFjdCgpc3RyaW5nIgoJbWV0aG9kICJib3hNYXBFeHRyYWN0KClzdHJpbmciCgltZXRob2QgImlzT3B0ZWRJbigpYm9vbCIKCW1ldGhvZCAiZXhHbG9iYWwoKXZvaWQiCgltZXRob2QgImV4TG9jYWwoKXZvaWQiCgltZXRob2QgImFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCgpdWludDE2IgoJbWV0aG9kICJkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYiCgltZXRob2QgImJveFJlc2l6ZSgpdm9pZCIKCW1ldGhvZCAiYm94U3BsaWNlKCl2b2lkIgoJbWV0aG9kICJleFN0YXRlRXhpc3RzKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcmVmaXggKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlHZXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9nbG9iYWxLZXlFeGlzdHMgKmFiaV9yb3V0ZV9sb2NhbEtleVB1dCAqYWJpX3JvdXRlX2xvY2FsS2V5R2V0ICphYmlfcm91dGVfbG9jYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9sb2NhbEtleUV4aXN0cyAqYWJpX3JvdXRlX2JveEtleVB1dCAqYWJpX3JvdXRlX2JveEtleUdldCAqYWJpX3JvdXRlX2JveEtleURlbGV0ZSAqYWJpX3JvdXRlX2JveEtleUV4aXN0cyAqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dCAqYWJpX3JvdXRlX2dsb2JhbE1hcEdldCAqYWJpX3JvdXRlX2dsb2JhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2dsb2JhbE1hcEV4aXN0cyAqYWJpX3JvdXRlX2xvY2FsTWFwUHV0ICphYmlfcm91dGVfbG9jYWxNYXBHZXQgKmFiaV9yb3V0ZV9sb2NhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2xvY2FsTWFwRXhpc3RzICphYmlfcm91dGVfYm94TWFwUHV0ICphYmlfcm91dGVfYm94TWFwR2V0ICphYmlfcm91dGVfYm94TWFwRGVsZXRlICphYmlfcm91dGVfYm94TWFwRXhpc3RzICphYmlfcm91dGVfYm94S2V5Q3JlYXRlICphYmlfcm91dGVfYm94TWFwQ3JlYXRlICphYmlfcm91dGVfYm94S2V5TGVuZ3RoICphYmlfcm91dGVfYm94TWFwTGVuZ3RoICphYmlfcm91dGVfYm94S2V5UmVwbGFjZSAqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2UgKmFiaV9yb3V0ZV9ib3hLZXlFeHRyYWN0ICphYmlfcm91dGVfYm94TWFwRXh0cmFjdCAqYWJpX3JvdXRlX2lzT3B0ZWRJbiAqYWJpX3JvdXRlX2V4R2xvYmFsICphYmlfcm91dGVfZXhMb2NhbCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCAqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3ggKmFiaV9yb3V0ZV9ib3hSZXNpemUgKmFiaV9yb3V0ZV9ib3hTcGxpY2UgKmFiaV9yb3V0ZV9leFN0YXRlRXhpc3RzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcmVmaXgoKXZvaWQKKmFiaV9yb3V0ZV9wcmVmaXg6CgkvLyBleGVjdXRlIHByZWZpeCgpdm9pZAoJY2FsbHN1YiBwcmVmaXgKCWludCAxCglyZXR1cm4KCi8vIHByZWZpeCgpOiB2b2lkCnByZWZpeDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjYKCS8vIHRoaXMuYm94TWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjcKCS8vIHRoaXMuZ2xvYmFsTWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjgKCS8vIHRoaXMubG9jYWxNYXBXaXRoUHJlZml4KHRoaXMudHhuLnNlbmRlciwgJ29vJykudmFsdWUgPSAnYmFyJwoJdHhuIFNlbmRlcgoJYnl0ZSAweDY2NmY2ZgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBnbG9iYWxLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQ6CgkvLyBleGVjdXRlIGdsb2JhbEtleVB1dCgpdm9pZAoJY2FsbHN1YiBnbG9iYWxLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbEtleVB1dCgpOiB2b2lkCmdsb2JhbEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MzIKCS8vIHRoaXMuZ2xvYmFsS2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbEtleUdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5R2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5R2V0KCk6IHZvaWQKZ2xvYmFsS2V5R2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czozNgoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LnZhbHVlID09PSAnYmFyJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbEtleURlbGV0ZSgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleURlbGV0ZToKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RGVsZXRlKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleURlbGV0ZQoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RGVsZXRlKCk6IHZvaWQKZ2xvYmFsS2V5RGVsZXRlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0MAoJLy8gdGhpcy5nbG9iYWxLZXkuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZGVsCglyZXRzdWIKCi8vIGdsb2JhbEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RXhpc3RzKCk6IHZvaWQKZ2xvYmFsS2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbEtleVB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsS2V5UHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsS2V5UHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbEtleVB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxLZXlQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxLZXlQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjQ4CgkvLyB0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID0gJ2JhcicKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5R2V0OgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlHZXQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlHZXQoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUdldChhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUdldDoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTIKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsS2V5RGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleURlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleURlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTYKCS8vIHRoaXMubG9jYWxLZXkoYSkuZGVsZXRlKCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZGVsCglyZXRzdWIKCi8vIGxvY2FsS2V5RXhpc3RzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RXhpc3RzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlFeGlzdHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlFeGlzdHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUV4aXN0cyhhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUV4aXN0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjAKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlQdXQ6CgkvLyBleGVjdXRlIGJveEtleVB1dCgpdm9pZAoJY2FsbHN1YiBib3hLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVB1dCgpOiB2b2lkCmJveEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjQKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94S2V5R2V0KCl2b2lkCiphYmlfcm91dGVfYm94S2V5R2V0OgoJLy8gZXhlY3V0ZSBib3hLZXlHZXQoKXZvaWQKCWNhbGxzdWIgYm94S2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlHZXQoKTogdm9pZApib3hLZXlHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjY4CgkvLyBhc3NlcnQodGhpcy5ib3hLZXkudmFsdWUgPT09ICdiYXInKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5ib3hLZXkudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlEZWxldGU6CgkvLyBleGVjdXRlIGJveEtleURlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleURlbGV0ZSgpOiB2b2lkCmJveEtleURlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NzIKCS8vIHRoaXMuYm94S2V5LmRlbGV0ZSgpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZGVsCglyZXRzdWIKCi8vIGJveEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2JveEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgYm94S2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGJveEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gYm94S2V5RXhpc3RzKCk6IHZvaWQKYm94S2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo3NgoJLy8gYXNzZXJ0KHRoaXMuYm94S2V5LmV4aXN0cykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbE1hcFB1dCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwUHV0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwUHV0KCk6IHZvaWQKZ2xvYmFsTWFwUHV0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4MAoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbE1hcEdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcEdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwR2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwR2V0KCk6IHZvaWQKZ2xvYmFsTWFwR2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsTWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBnbG9iYWxNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxNYXBEZWxldGU6CgkvLyBleGVjdXRlIGdsb2JhbE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBnbG9iYWxNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbE1hcERlbGV0ZSgpOiB2b2lkCmdsb2JhbE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6ODgKCS8vIHRoaXMuZ2xvYmFsTWFwKCdmb28nKS5kZWxldGUoKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9kZWwKCXJldHN1YgoKLy8gZ2xvYmFsTWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZ2xvYmFsTWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBnbG9iYWxNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgZ2xvYmFsTWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBnbG9iYWxNYXBFeGlzdHMoKTogdm9pZApnbG9iYWxNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjkyCgkvLyBhc3NlcnQodGhpcy5nbG9iYWxNYXAoJ2ZvbycpLmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcFB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwUHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwUHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjk2CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS52YWx1ZSA9ICdiYXInCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBsb2NhbE1hcEdldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcEdldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwR2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBHZXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBHZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KHRoaXMubG9jYWxNYXAoYSwgJ2ZvbycpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsTWFwRGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsTWFwRGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxNYXBEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsTWFwRGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbE1hcERlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbE1hcERlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTA0CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5kZWxldGUoKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9sb2NhbF9kZWwKCXJldHN1YgoKLy8gbG9jYWxNYXBFeGlzdHMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbG9jYWxNYXBFeGlzdHM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBsb2NhbE1hcEV4aXN0cyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbG9jYWxNYXBFeGlzdHMKCWludCAxCglyZXR1cm4KCi8vIGxvY2FsTWFwRXhpc3RzKGE6IEFkZHJlc3MpOiB2b2lkCmxvY2FsTWFwRXhpc3RzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxMDgKCS8vIGFzc2VydCh0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5leGlzdHMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYm94TWFwUHV0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwUHV0OgoJLy8gZXhlY3V0ZSBib3hNYXBQdXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwUHV0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBQdXQoKTogdm9pZApib3hNYXBQdXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExMgoJLy8gdGhpcy5ib3hNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94TWFwR2V0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwR2V0OgoJLy8gZXhlY3V0ZSBib3hNYXBHZXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwR2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBHZXQoKTogdm9pZApib3hNYXBHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExNgoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnZm9vJykudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hNYXBEZWxldGU6CgkvLyBleGVjdXRlIGJveE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcERlbGV0ZSgpOiB2b2lkCmJveE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTIwCgkvLyB0aGlzLmJveE1hcCgnZm9vJykuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9kZWwKCXJldHN1YgoKLy8gYm94TWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfYm94TWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBib3hNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgYm94TWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBFeGlzdHMoKTogdm9pZApib3hNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS5leGlzdHMpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfbGVuCglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlDcmVhdGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlDcmVhdGU6CgkvLyBleGVjdXRlIGJveEtleUNyZWF0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlDcmVhdGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleUNyZWF0ZSgpOiB2b2lkCmJveEtleUNyZWF0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTI4CgkvLyB0aGlzLmJveEtleS5jcmVhdGUoMTAyNCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWludCAxMDI0Cglib3hfY3JlYXRlCglwb3AKCXJldHN1YgoKLy8gYm94TWFwQ3JlYXRlKCl2b2lkCiphYmlfcm91dGVfYm94TWFwQ3JlYXRlOgoJLy8gZXhlY3V0ZSBib3hNYXBDcmVhdGUoKXZvaWQKCWNhbGxzdWIgYm94TWFwQ3JlYXRlCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBDcmVhdGUoKTogdm9pZApib3hNYXBDcmVhdGU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEzMgoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLmNyZWF0ZSgxMDI0KQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDEwMjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBib3hLZXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveEtleUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hLZXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlMZW5ndGgoKTogdWludDY0CmJveEtleUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTM2CgkvLyByZXR1cm4gdGhpcy5ib3hLZXkuc2l6ZTsKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnNpemUKCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveE1hcExlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hNYXBMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hNYXBMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBMZW5ndGgoKTogdWludDY0CmJveE1hcExlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTQwCgkvLyByZXR1cm4gdGhpcy5ib3hNYXAoJ2JhcicpLnNpemU7CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnYmFyJykuc2l6ZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJveEtleVJlcGxhY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlSZXBsYWNlOgoJLy8gZXhlY3V0ZSBib3hLZXlSZXBsYWNlKCl2b2lkCgljYWxsc3ViIGJveEtleVJlcGxhY2UKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVJlcGxhY2UoKTogdm9pZApib3hLZXlSZXBsYWNlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNDQKCS8vIHRoaXMuYm94S2V5LnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94TWFwUmVwbGFjZSgpdm9pZAoqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2U6CgkvLyBleGVjdXRlIGJveE1hcFJlcGxhY2UoKXZvaWQKCWNhbGxzdWIgYm94TWFwUmVwbGFjZQoJaW50IDEKCXJldHVybgoKLy8gYm94TWFwUmVwbGFjZSgpOiB2b2lkCmJveE1hcFJlcGxhY2U6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE0OAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94S2V5RXh0cmFjdCgpc3RyaW5nCiphYmlfcm91dGVfYm94S2V5RXh0cmFjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlFeHRyYWN0KClzdHJpbmcKCWNhbGxzdWIgYm94S2V5RXh0cmFjdAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlFeHRyYWN0KCk6IHN0cmluZwpib3hLZXlFeHRyYWN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNTIKCS8vIHJldHVybiB0aGlzLmJveEtleS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBib3hNYXBFeHRyYWN0KClzdHJpbmcKKmFiaV9yb3V0ZV9ib3hNYXBFeHRyYWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveE1hcEV4dHJhY3QoKXN0cmluZwoJY2FsbHN1YiBib3hNYXBFeHRyYWN0CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcEV4dHJhY3QoKTogc3RyaW5nCmJveE1hcEV4dHJhY3Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE1NgoJLy8gcmV0dXJuIHRoaXMuYm94TWFwKCdiYXInKS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBpc09wdGVkSW4oKWJvb2wKKmFiaV9yb3V0ZV9pc09wdGVkSW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgaXNPcHRlZEluKClib29sCgljYWxsc3ViIGlzT3B0ZWRJbgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpc09wdGVkSW4oKTogYm9vbGVhbgppc09wdGVkSW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2MAoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlci5pc09wdGVkSW5Ub0FwcCh0aGlzLmFwcCk7Cgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfb3B0ZWRfaW4KCXJldHN1YgoKLy8gZXhHbG9iYWwoKXZvaWQKKmFiaV9yb3V0ZV9leEdsb2JhbDoKCS8vIGV4ZWN1dGUgZXhHbG9iYWwoKXZvaWQKCWNhbGxzdWIgZXhHbG9iYWwKCWludCAxCglyZXR1cm4KCi8vIGV4R2xvYmFsKCk6IHZvaWQKZXhHbG9iYWw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2NAoJLy8gbG9nKHRoaXMuYXBwLmdsb2JhbFN0YXRlKCdmb28nKSBhcyBieXRlcykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5nbG9iYWxTdGF0ZSgnZm9vJykKCWFzc2VydAoJbG9nCglyZXRzdWIKCi8vIGV4TG9jYWwoKXZvaWQKKmFiaV9yb3V0ZV9leExvY2FsOgoJLy8gZXhlY3V0ZSBleExvY2FsKCl2b2lkCgljYWxsc3ViIGV4TG9jYWwKCWludCAxCglyZXR1cm4KCi8vIGV4TG9jYWwoKTogdm9pZApleExvY2FsOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNjgKCS8vIGxvZyh0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpIGFzIGJ5dGVzKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoKCS8vIGxvY2FsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpCglhc3NlcnQKCWxvZwoJcmV0c3ViCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3gKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gYWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKTogdWludDE2CmFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTcyCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC5jcmVhdGUoKQoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJaW50IDgwMDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTczCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC52YWx1ZVsxMjNdID0gNDU2CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglieXRlIDB4MDFjOAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE3NQoJLy8gcmV0dXJuIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlWzEyM107CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglpbnQgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCh1aW50NjQpdWludDE2CiphYmlfcm91dGVfZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYKCWNhbGxzdWIgZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KGk6IHVpbnQ2NCk6IHVpbnQxNgpkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNzkKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LmNyZWF0ZSgpCglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgODAwMAoJYm94X2NyZWF0ZQoJcG9wCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxODAKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlW2ldID0gNDU2CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDFjOAoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4NAoJLy8gcmV0dXJuIGFbaV07CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMgoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gYm94UmVzaXplKCl2b2lkCiphYmlfcm91dGVfYm94UmVzaXplOgoJLy8gZXhlY3V0ZSBib3hSZXNpemUoKXZvaWQKCWNhbGxzdWIgYm94UmVzaXplCglpbnQgMQoJcmV0dXJuCgovLyBib3hSZXNpemUoKTogdm9pZApib3hSZXNpemU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4OAoJLy8gdGhpcy5ib3hLZXkucmVzaXplKDEwMjQpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTg5CgkvLyB0aGlzLmJveE1hcCgnYmFyJykucmVzaXplKDEwMjQpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoJcmV0c3ViCgovLyBib3hTcGxpY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hTcGxpY2U6CgkvLyBleGVjdXRlIGJveFNwbGljZSgpdm9pZAoJY2FsbHN1YiBib3hTcGxpY2UKCWludCAxCglyZXR1cm4KCi8vIGJveFNwbGljZSgpOiB2b2lkCmJveFNwbGljZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTkzCgkvLyB0aGlzLmJveEtleS5zcGxpY2UoMCwgMSwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJaW50IDEKCWJ5dGUgMHg2MTYyNjMgLy8gImFiYyIKCWJveF9zcGxpY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnNwbGljZSgwLCAxLCAnYWJjJykKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWludCAwCglpbnQgMQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3NwbGljZQoJcmV0c3ViCgovLyBleFN0YXRlRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZXhTdGF0ZUV4aXN0czoKCS8vIGV4ZWN1dGUgZXhTdGF0ZUV4aXN0cygpdm9pZAoJY2FsbHN1YiBleFN0YXRlRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBleFN0YXRlRXhpc3RzKCk6IHZvaWQKZXhTdGF0ZUV4aXN0czoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTk4CgkvLyBhc3NlcnQodGhpcy5hcHAuZ2xvYmFsU3RhdGVFeGlzdHMoJ2ZvbycpKQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9nZXRfZXgKCXN3YXAKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxOTkKCS8vIGFzc2VydCh0aGlzLmFwcC5sb2NhbFN0YXRlRXhpc3RzKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInByZWZpeCgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5UHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxLZXlHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbEtleURlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5RXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbEtleUV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveEtleVB1dCgpdm9pZCIKCW1ldGhvZCAiYm94S2V5R2V0KCl2b2lkIgoJbWV0aG9kICJib3hLZXlEZWxldGUoKXZvaWQiCgltZXRob2QgImJveEtleUV4aXN0cygpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwUHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxNYXBHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbE1hcERlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwRXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveE1hcFB1dCgpdm9pZCIKCW1ldGhvZCAiYm94TWFwR2V0KCl2b2lkIgoJbWV0aG9kICJib3hNYXBEZWxldGUoKXZvaWQiCgltZXRob2QgImJveE1hcEV4aXN0cygpdm9pZCIKCW1ldGhvZCAiYm94S2V5Q3JlYXRlKCl2b2lkIgoJbWV0aG9kICJib3hNYXBDcmVhdGUoKXZvaWQiCgltZXRob2QgImJveEtleUxlbmd0aCgpdWludDY0IgoJbWV0aG9kICJib3hNYXBMZW5ndGgoKXVpbnQ2NCIKCW1ldGhvZCAiYm94S2V5UmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94TWFwUmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94S2V5RXh0cmFjdCgpc3RyaW5nIgoJbWV0aG9kICJib3hNYXBFeHRyYWN0KClzdHJpbmciCgltZXRob2QgImlzT3B0ZWRJbigpYm9vbCIKCW1ldGhvZCAiZXhHbG9iYWwoKXZvaWQiCgltZXRob2QgImV4TG9jYWwoKXZvaWQiCgltZXRob2QgImFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCgpdWludDE2IgoJbWV0aG9kICJkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYiCgltZXRob2QgImJveFJlc2l6ZSgpdm9pZCIKCW1ldGhvZCAiYm94U3BsaWNlKCl2b2lkIgoJbWV0aG9kICJleFN0YXRlRXhpc3RzKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcmVmaXggKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlHZXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9nbG9iYWxLZXlFeGlzdHMgKmFiaV9yb3V0ZV9sb2NhbEtleVB1dCAqYWJpX3JvdXRlX2xvY2FsS2V5R2V0ICphYmlfcm91dGVfbG9jYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9sb2NhbEtleUV4aXN0cyAqYWJpX3JvdXRlX2JveEtleVB1dCAqYWJpX3JvdXRlX2JveEtleUdldCAqYWJpX3JvdXRlX2JveEtleURlbGV0ZSAqYWJpX3JvdXRlX2JveEtleUV4aXN0cyAqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dCAqYWJpX3JvdXRlX2dsb2JhbE1hcEdldCAqYWJpX3JvdXRlX2dsb2JhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2dsb2JhbE1hcEV4aXN0cyAqYWJpX3JvdXRlX2xvY2FsTWFwUHV0ICphYmlfcm91dGVfbG9jYWxNYXBHZXQgKmFiaV9yb3V0ZV9sb2NhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2xvY2FsTWFwRXhpc3RzICphYmlfcm91dGVfYm94TWFwUHV0ICphYmlfcm91dGVfYm94TWFwR2V0ICphYmlfcm91dGVfYm94TWFwRGVsZXRlICphYmlfcm91dGVfYm94TWFwRXhpc3RzICphYmlfcm91dGVfYm94S2V5Q3JlYXRlICphYmlfcm91dGVfYm94TWFwQ3JlYXRlICphYmlfcm91dGVfYm94S2V5TGVuZ3RoICphYmlfcm91dGVfYm94TWFwTGVuZ3RoICphYmlfcm91dGVfYm94S2V5UmVwbGFjZSAqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2UgKmFiaV9yb3V0ZV9ib3hLZXlFeHRyYWN0ICphYmlfcm91dGVfYm94TWFwRXh0cmFjdCAqYWJpX3JvdXRlX2lzT3B0ZWRJbiAqYWJpX3JvdXRlX2V4R2xvYmFsICphYmlfcm91dGVfZXhMb2NhbCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCAqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3ggKmFiaV9yb3V0ZV9ib3hSZXNpemUgKmFiaV9yb3V0ZV9ib3hTcGxpY2UgKmFiaV9yb3V0ZV9leFN0YXRlRXhpc3RzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/StorageTest.arc56_draft.json b/tests/contracts/artifacts/StorageTest.arc56_draft.json index 2b858d35e..6b3fbf1b5 100644 --- a/tests/contracts/artifacts/StorageTest.arc56_draft.json +++ b/tests/contracts/artifacts/StorageTest.arc56_draft.json @@ -678,4783 +678,4786 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 4, - "pc": [ - 0, - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16, - 17, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, - 58 - ] - }, - { - "teal": 13, - "source": 4, - "pc": [ - 59, - 60 - ] - }, - { - "teal": 14, - "source": 4, - "pc": [ - 61 - ] - }, - { - "teal": 15, - "source": 4, - "pc": [ - 62, - 63 - ] - }, - { - "teal": 16, - "source": 4, - "pc": [ - 64 - ] - }, - { - "teal": 17, - "source": 4, - "pc": [ - 65, - 66 - ] - }, - { - "teal": 18, - "source": 4, - "pc": [ - 67 - ] - }, - { - "teal": 19, - "source": 4, - "pc": [ - 68, - 69, - 70, - 71, - 72, - 73, - 74, - 75, - 76, - 77, - 78, - 79, - 80, - 81, - 82, - 83, - 84, - 85, - 86, - 87, - 88, - 89, - 90, - 91, - 92, - 93 - ] - }, - { - "teal": 23, - "source": 4, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "pc": [ - 94 - ] - }, - { - "teal": 28, - "source": 25, - "pc": [ - 95, - 96, - 97 - ] - }, - { - "teal": 29, - "source": 25, - "pc": [ - 98 - ] - }, - { - "teal": 30, - "source": 25, - "pc": [ - 99 - ] - }, - { - "teal": 34, - "source": 25, - "pc": [ - 100, - 101, - 102 - ] - }, - { - "teal": 38, - "source": 26, - "pc": [ - 103 - ] - }, - { - "teal": 39, - "source": 26, - "pc": [ - 104 - ] - }, - { - "teal": 40, - "source": 26, - "pc": [ - 105 - ] - }, - { - "teal": 41, - "source": 26, - "pc": [ - 106 - ] - }, - { - "teal": 42, - "source": 26, - "pc": [ - 107 - ] - }, - { - "teal": 43, - "source": 26, - "pc": [ - 108 - ] - }, - { - "teal": 47, - "source": 27, - "pc": [ - 109 - ] - }, - { - "teal": 48, - "source": 27, - "pc": [ - 110 - ] - }, - { - "teal": 49, - "source": 27, - "pc": [ - 111 - ] - }, - { - "teal": 53, - "source": 28, - "pc": [ - 112, - 113 - ] - }, - { - "teal": 54, - "source": 28, - "pc": [ - 114 - ] - }, - { - "teal": 55, - "source": 28, - "pc": [ - 115 - ] - }, - { - "teal": 56, - "source": 28, - "pc": [ - 116 - ] - }, - { - "teal": 57, - "source": 25, - "pc": [ - 117 - ] - }, - { - "teal": 62, - "source": 31, - "pc": [ - 118, - 119, - 120 - ] - }, - { - "teal": 63, - "source": 31, - "pc": [ - 121 - ] - }, - { - "teal": 64, - "source": 31, - "pc": [ - 122 - ] - }, - { - "teal": 68, - "source": 31, - "pc": [ - 123, - 124, - 125 - ] - }, - { - "teal": 72, - "source": 32, - "pc": [ - 126 - ] - }, - { - "teal": 73, - "source": 32, - "pc": [ - 127 - ] - }, - { - "teal": 74, - "source": 32, - "pc": [ - 128 - ] - }, - { - "teal": 75, - "source": 31, - "pc": [ - 129 - ] - }, - { - "teal": 80, - "source": 35, - "pc": [ - 130, - 131, - 132 - ] - }, - { - "teal": 81, - "source": 35, - "pc": [ - 133 - ] - }, - { - "teal": 82, - "source": 35, - "pc": [ - 134 - ] - }, - { - "teal": 86, - "source": 35, - "pc": [ - 135, - 136, - 137 - ] - }, - { - "teal": 90, - "source": 36, - "pc": [ - 138 - ] - }, - { - "teal": 91, - "source": 36, - "pc": [ - 139 - ] - }, - { - "teal": 92, - "source": 36, - "pc": [ - 140 - ] - }, - { - "teal": 93, - "source": 36, - "pc": [ - 141 - ] - }, - { - "teal": 94, - "source": 36, - "pc": [ - 142 - ] - }, - { - "teal": 95, - "source": 35, - "pc": [ - 143 - ] - }, - { - "teal": 100, - "source": 39, - "pc": [ - 144, - 145, - 146 - ] - }, - { - "teal": 101, - "source": 39, - "pc": [ - 147 - ] - }, - { - "teal": 102, - "source": 39, - "pc": [ - 148 - ] - }, - { - "teal": 106, - "source": 39, - "pc": [ - 149, - 150, - 151 - ] - }, - { - "teal": 110, - "source": 40, - "pc": [ - 152 - ] - }, - { - "teal": 111, - "source": 40, - "pc": [ - 153 - ] - }, - { - "teal": 112, - "source": 39, - "pc": [ - 154 - ] - }, - { - "teal": 117, - "source": 43, - "pc": [ - 155, - 156, - 157 - ] - }, - { - "teal": 118, - "source": 43, - "pc": [ - 158 - ] - }, - { - "teal": 119, - "source": 43, - "pc": [ - 159 - ] - }, - { - "teal": 123, - "source": 43, - "pc": [ - 160, - 161, - 162 - ] - }, - { - "teal": 127, - "source": 44, - "pc": [ - 163, - 164, - 165 - ] - }, - { - "teal": 128, - "source": 44, - "pc": [ - 166 - ] - }, - { - "teal": 129, - "source": 44, - "pc": [ - 167 - ] - }, - { - "teal": 130, - "source": 44, - "pc": [ - 168 - ] - }, - { - "teal": 131, - "source": 44, - "pc": [ - 169 - ] - }, - { - "teal": 132, - "source": 44, - "pc": [ - 170 - ] - }, - { - "teal": 133, - "source": 43, - "pc": [ - 171 - ] - }, - { - "teal": 138, - "source": 47, - "pc": [ - 172, - 173, - 174 - ] - }, - { - "teal": 139, - "source": 47, - "pc": [ - 175 - ] - }, - { - "teal": 140, - "source": 47, - "pc": [ - 176 - ] - }, - { - "teal": 141, - "source": 47, - "pc": [ - 177 - ] - }, - { - "teal": 142, - "source": 47, - "pc": [ - 178 - ] - }, - { - "teal": 145, - "source": 47, - "errorMessage": "argument 0 (a) for localKeyPut must be a address", - "pc": [ - 179 - ] - }, - { - "teal": 148, - "source": 47, - "pc": [ - 180, - 181, - 182 - ] - }, - { - "teal": 149, - "source": 47, - "pc": [ - 183 - ] - }, - { - "teal": 150, - "source": 47, - "pc": [ - 184 - ] - }, - { - "teal": 154, - "source": 47, - "pc": [ - 185, - 186, - 187 - ] - }, - { - "teal": 158, - "source": 48, - "pc": [ - 188, - 189 - ] - }, - { - "teal": 159, - "source": 48, - "pc": [ - 190 - ] - }, - { - "teal": 160, - "source": 48, - "pc": [ - 191 - ] - }, - { - "teal": 161, - "source": 48, - "pc": [ - 192 - ] - }, - { - "teal": 162, - "source": 47, - "pc": [ - 193 - ] - }, - { - "teal": 167, - "source": 51, - "pc": [ - 194, - 195, - 196 - ] - }, - { - "teal": 168, - "source": 51, - "pc": [ - 197 - ] - }, - { - "teal": 169, - "source": 51, - "pc": [ - 198 - ] - }, - { - "teal": 170, - "source": 51, - "pc": [ - 199 - ] - }, - { - "teal": 171, - "source": 51, - "pc": [ - 200 - ] - }, - { - "teal": 174, - "source": 51, - "errorMessage": "argument 0 (a) for localKeyGet must be a address", - "pc": [ - 201 - ] - }, - { - "teal": 177, - "source": 51, - "pc": [ - 202, - 203, - 204 - ] - }, - { - "teal": 178, - "source": 51, - "pc": [ - 205 - ] - }, - { - "teal": 179, - "source": 51, - "pc": [ - 206 - ] - }, - { - "teal": 183, - "source": 51, - "pc": [ - 207, - 208, - 209 - ] - }, - { - "teal": 187, - "source": 52, - "pc": [ - 210, - 211 - ] - }, - { - "teal": 188, - "source": 52, - "pc": [ - 212 - ] - }, - { - "teal": 189, - "source": 52, - "pc": [ - 213 - ] - }, - { - "teal": 190, - "source": 52, - "pc": [ - 214 - ] - }, - { - "teal": 191, - "source": 52, - "pc": [ - 215 - ] - }, - { - "teal": 192, - "source": 52, - "pc": [ - 216 - ] - }, - { - "teal": 193, - "source": 51, - "pc": [ - 217 - ] - }, - { - "teal": 198, - "source": 55, - "pc": [ - 218, - 219, - 220 - ] - }, - { - "teal": 199, - "source": 55, - "pc": [ - 221 - ] - }, - { - "teal": 200, - "source": 55, - "pc": [ - 222 - ] - }, - { - "teal": 201, - "source": 55, - "pc": [ - 223 - ] - }, - { - "teal": 202, - "source": 55, - "pc": [ - 224 - ] - }, - { - "teal": 205, - "source": 55, - "errorMessage": "argument 0 (a) for localKeyDelete must be a address", - "pc": [ - 225 - ] - }, - { - "teal": 208, - "source": 55, - "pc": [ - 226, - 227, - 228 - ] - }, - { - "teal": 209, - "source": 55, - "pc": [ - 229 - ] - }, - { - "teal": 210, - "source": 55, - "pc": [ - 230 - ] - }, - { - "teal": 214, - "source": 55, - "pc": [ - 231, - 232, - 233 - ] - }, - { - "teal": 218, - "source": 56, - "pc": [ - 234, - 235 - ] - }, - { - "teal": 219, - "source": 56, - "pc": [ - 236 - ] - }, - { - "teal": 220, - "source": 56, - "pc": [ - 237 - ] - }, - { - "teal": 221, - "source": 55, - "pc": [ - 238 - ] - }, - { - "teal": 226, - "source": 59, - "pc": [ - 239, - 240, - 241 - ] - }, - { - "teal": 227, - "source": 59, - "pc": [ - 242 - ] - }, - { - "teal": 228, - "source": 59, - "pc": [ - 243 - ] - }, - { - "teal": 229, - "source": 59, - "pc": [ - 244 - ] - }, - { - "teal": 230, - "source": 59, - "pc": [ - 245 - ] - }, - { - "teal": 233, - "source": 59, - "errorMessage": "argument 0 (a) for localKeyExists must be a address", - "pc": [ - 246 - ] - }, - { - "teal": 236, - "source": 59, - "pc": [ - 247, - 248, - 249 - ] - }, - { - "teal": 237, - "source": 59, - "pc": [ - 250 - ] - }, - { - "teal": 238, - "source": 59, - "pc": [ - 251 - ] - }, - { - "teal": 242, - "source": 59, - "pc": [ - 252, - 253, - 254 - ] - }, - { - "teal": 246, - "source": 60, - "pc": [ - 255, - 256 - ] - }, - { - "teal": 247, - "source": 60, - "pc": [ - 257, - 258, - 259 - ] - }, - { - "teal": 248, - "source": 60, - "pc": [ - 260 - ] - }, - { - "teal": 249, - "source": 60, - "pc": [ - 261 - ] - }, - { - "teal": 250, - "source": 60, - "pc": [ - 262 - ] - }, - { - "teal": 251, - "source": 60, - "pc": [ - 263 - ] - }, - { - "teal": 252, - "source": 60, - "pc": [ - 264 - ] - }, - { - "teal": 253, - "source": 59, - "pc": [ - 265 - ] - }, - { - "teal": 258, - "source": 63, - "pc": [ - 266, - 267, - 268 - ] - }, - { - "teal": 259, - "source": 63, - "pc": [ - 269 - ] - }, - { - "teal": 260, - "source": 63, - "pc": [ - 270 - ] - }, - { - "teal": 264, - "source": 63, - "pc": [ - 271, - 272, - 273 - ] - }, - { - "teal": 268, - "source": 64, - "pc": [ - 274 - ] - }, - { - "teal": 269, - "source": 64, - "pc": [ - 275 - ] - }, - { - "teal": 270, - "source": 64, - "pc": [ - 276 - ] - }, - { - "teal": 271, - "source": 63, - "pc": [ - 277 - ] - }, - { - "teal": 276, - "source": 67, - "pc": [ - 278, - 279, - 280 - ] - }, - { - "teal": 277, - "source": 67, - "pc": [ - 281 - ] - }, - { - "teal": 278, - "source": 67, - "pc": [ - 282 - ] - }, - { - "teal": 282, - "source": 67, - "pc": [ - 283, - 284, - 285 - ] - }, - { - "teal": 286, - "source": 68, - "pc": [ - 286 - ] - }, - { - "teal": 287, - "source": 68, - "pc": [ - 287 - ] - }, - { - "teal": 290, - "source": 68, - "errorMessage": "box value does not exist: this.boxKey.value", - "pc": [ - 288 - ] - }, - { - "teal": 291, - "source": 68, - "pc": [ - 289 - ] - }, - { - "teal": 292, - "source": 68, - "pc": [ - 290 - ] - }, - { - "teal": 293, - "source": 68, - "pc": [ - 291 - ] - }, - { - "teal": 294, - "source": 67, - "pc": [ - 292 - ] - }, - { - "teal": 299, - "source": 71, - "pc": [ - 293, - 294, - 295 - ] - }, - { - "teal": 300, - "source": 71, - "pc": [ - 296 - ] - }, - { - "teal": 301, - "source": 71, - "pc": [ - 297 - ] - }, - { - "teal": 305, - "source": 71, - "pc": [ - 298, - 299, - 300 - ] - }, - { - "teal": 309, - "source": 72, - "pc": [ - 301 - ] - }, - { - "teal": 310, - "source": 72, - "pc": [ - 302 - ] - }, - { - "teal": 311, - "source": 71, - "pc": [ - 303 - ] - }, - { - "teal": 316, - "source": 75, - "pc": [ - 304, - 305, - 306 - ] - }, - { - "teal": 317, - "source": 75, - "pc": [ - 307 - ] - }, - { - "teal": 318, - "source": 75, - "pc": [ - 308 - ] - }, - { - "teal": 322, - "source": 75, - "pc": [ - 309, - 310, - 311 - ] - }, - { - "teal": 326, - "source": 76, - "pc": [ - 312 - ] - }, - { - "teal": 327, - "source": 76, - "pc": [ - 313 - ] - }, - { - "teal": 328, - "source": 76, - "pc": [ - 314 - ] - }, - { - "teal": 329, - "source": 76, - "pc": [ - 315 - ] - }, - { - "teal": 330, - "source": 76, - "pc": [ - 316 - ] - }, - { - "teal": 331, - "source": 75, - "pc": [ - 317 - ] - }, - { - "teal": 336, - "source": 79, - "pc": [ - 318, - 319, - 320 - ] - }, - { - "teal": 337, - "source": 79, - "pc": [ - 321 - ] - }, - { - "teal": 338, - "source": 79, - "pc": [ - 322 - ] - }, - { - "teal": 342, - "source": 79, - "pc": [ - 323, - 324, - 325 - ] - }, - { - "teal": 346, - "source": 80, - "pc": [ - 326 - ] - }, - { - "teal": 347, - "source": 80, - "pc": [ - 327 - ] - }, - { - "teal": 348, - "source": 80, - "pc": [ - 328 - ] - }, - { - "teal": 349, - "source": 79, - "pc": [ - 329 - ] - }, - { - "teal": 354, - "source": 83, - "pc": [ - 330, - 331, - 332 - ] - }, - { - "teal": 355, - "source": 83, - "pc": [ - 333 - ] - }, - { - "teal": 356, - "source": 83, - "pc": [ - 334 - ] - }, - { - "teal": 360, - "source": 83, - "pc": [ - 335, - 336, - 337 - ] - }, - { - "teal": 364, - "source": 84, - "pc": [ - 338 - ] - }, - { - "teal": 365, - "source": 84, - "pc": [ - 339 - ] - }, - { - "teal": 366, - "source": 84, - "pc": [ - 340 - ] - }, - { - "teal": 367, - "source": 84, - "pc": [ - 341 - ] - }, - { - "teal": 368, - "source": 84, - "pc": [ - 342 - ] - }, - { - "teal": 369, - "source": 83, - "pc": [ - 343 - ] - }, - { - "teal": 374, - "source": 87, - "pc": [ - 344, - 345, - 346 - ] - }, - { - "teal": 375, - "source": 87, - "pc": [ - 347 - ] - }, - { - "teal": 376, - "source": 87, - "pc": [ - 348 - ] - }, - { - "teal": 380, - "source": 87, - "pc": [ - 349, - 350, - 351 - ] - }, - { - "teal": 384, - "source": 88, - "pc": [ - 352 - ] - }, - { - "teal": 385, - "source": 88, - "pc": [ - 353 - ] - }, - { - "teal": 386, - "source": 87, - "pc": [ - 354 - ] - }, - { - "teal": 391, - "source": 91, - "pc": [ - 355, - 356, - 357 - ] - }, - { - "teal": 392, - "source": 91, - "pc": [ - 358 - ] - }, - { - "teal": 393, - "source": 91, - "pc": [ - 359 - ] - }, - { - "teal": 397, - "source": 91, - "pc": [ - 360, - 361, - 362 - ] - }, - { - "teal": 401, - "source": 92, - "pc": [ - 363, - 364, - 365 - ] - }, - { - "teal": 402, - "source": 92, - "pc": [ - 366 - ] - }, - { - "teal": 403, - "source": 92, - "pc": [ - 367 - ] - }, - { - "teal": 404, - "source": 92, - "pc": [ - 368 - ] - }, - { - "teal": 405, - "source": 92, - "pc": [ - 369 - ] - }, - { - "teal": 406, - "source": 92, - "pc": [ - 370 - ] - }, - { - "teal": 407, - "source": 91, - "pc": [ - 371 - ] - }, - { - "teal": 412, - "source": 95, - "pc": [ - 372, - 373, - 374 - ] - }, - { - "teal": 413, - "source": 95, - "pc": [ - 375 - ] - }, - { - "teal": 414, - "source": 95, - "pc": [ - 376 - ] - }, - { - "teal": 415, - "source": 95, - "pc": [ - 377 - ] - }, - { - "teal": 416, - "source": 95, - "pc": [ - 378 - ] - }, - { - "teal": 419, - "source": 95, - "errorMessage": "argument 0 (a) for localMapPut must be a address", - "pc": [ - 379 - ] - }, - { - "teal": 422, - "source": 95, - "pc": [ - 380, - 381, - 382 - ] - }, - { - "teal": 423, - "source": 95, - "pc": [ - 383 - ] - }, - { - "teal": 424, - "source": 95, - "pc": [ - 384 - ] - }, - { - "teal": 428, - "source": 95, - "pc": [ - 385, - 386, - 387 - ] - }, - { - "teal": 432, - "source": 96, - "pc": [ - 388, - 389 - ] - }, - { - "teal": 433, - "source": 96, - "pc": [ - 390 - ] - }, - { - "teal": 434, - "source": 96, - "pc": [ - 391 - ] - }, - { - "teal": 435, - "source": 96, - "pc": [ - 392 - ] - }, - { - "teal": 436, - "source": 95, - "pc": [ - 393 - ] - }, - { - "teal": 441, - "source": 99, - "pc": [ - 394, - 395, - 396 - ] - }, - { - "teal": 442, - "source": 99, - "pc": [ - 397 - ] - }, - { - "teal": 443, - "source": 99, - "pc": [ - 398 - ] - }, - { - "teal": 444, - "source": 99, - "pc": [ - 399 - ] - }, - { - "teal": 445, - "source": 99, - "pc": [ - 400 - ] - }, - { - "teal": 448, - "source": 99, - "errorMessage": "argument 0 (a) for localMapGet must be a address", - "pc": [ - 401 - ] - }, - { - "teal": 451, - "source": 99, - "pc": [ - 402, - 403, - 404 - ] - }, - { - "teal": 452, - "source": 99, - "pc": [ - 405 - ] - }, - { - "teal": 453, - "source": 99, - "pc": [ - 406 - ] - }, - { - "teal": 457, - "source": 99, - "pc": [ - 407, - 408, - 409 - ] - }, - { - "teal": 461, - "source": 100, - "pc": [ - 410, - 411 - ] - }, - { - "teal": 462, - "source": 100, - "pc": [ - 412 - ] - }, - { - "teal": 463, - "source": 100, - "pc": [ - 413 - ] - }, - { - "teal": 464, - "source": 100, - "pc": [ - 414 - ] - }, - { - "teal": 465, - "source": 100, - "pc": [ - 415 - ] - }, - { - "teal": 466, - "source": 100, - "pc": [ - 416 - ] - }, - { - "teal": 467, - "source": 99, - "pc": [ - 417 - ] - }, - { - "teal": 472, - "source": 103, - "pc": [ - 418, - 419, - 420 - ] - }, - { - "teal": 473, - "source": 103, - "pc": [ - 421 - ] - }, - { - "teal": 474, - "source": 103, - "pc": [ - 422 - ] - }, - { - "teal": 475, - "source": 103, - "pc": [ - 423 - ] - }, - { - "teal": 476, - "source": 103, - "pc": [ - 424 - ] - }, - { - "teal": 479, - "source": 103, - "errorMessage": "argument 0 (a) for localMapDelete must be a address", - "pc": [ - 425 - ] - }, - { - "teal": 482, - "source": 103, - "pc": [ - 426, - 427, - 428 - ] - }, - { - "teal": 483, - "source": 103, - "pc": [ - 429 - ] - }, - { - "teal": 484, - "source": 103, - "pc": [ - 430 - ] - }, - { - "teal": 488, - "source": 103, - "pc": [ - 431, - 432, - 433 - ] - }, - { - "teal": 492, - "source": 104, - "pc": [ - 434, - 435 - ] - }, - { - "teal": 493, - "source": 104, - "pc": [ - 436 - ] - }, - { - "teal": 494, - "source": 104, - "pc": [ - 437 - ] - }, - { - "teal": 495, - "source": 103, - "pc": [ - 438 - ] - }, - { - "teal": 500, - "source": 107, - "pc": [ - 439, - 440, - 441 - ] - }, - { - "teal": 501, - "source": 107, - "pc": [ - 442 - ] - }, - { - "teal": 502, - "source": 107, - "pc": [ - 443 - ] - }, - { - "teal": 503, - "source": 107, - "pc": [ - 444 - ] - }, - { - "teal": 504, - "source": 107, - "pc": [ - 445 - ] - }, - { - "teal": 507, - "source": 107, - "errorMessage": "argument 0 (a) for localMapExists must be a address", - "pc": [ - 446 - ] - }, - { - "teal": 510, - "source": 107, - "pc": [ - 447, - 448, - 449 - ] - }, - { - "teal": 511, - "source": 107, - "pc": [ - 450 - ] - }, - { - "teal": 512, - "source": 107, - "pc": [ - 451 - ] - }, - { - "teal": 516, - "source": 107, - "pc": [ - 452, - 453, - 454 - ] - }, - { - "teal": 520, - "source": 108, - "pc": [ - 455, - 456 - ] - }, - { - "teal": 521, - "source": 108, - "pc": [ - 457, - 458, - 459 - ] - }, - { - "teal": 522, - "source": 108, - "pc": [ - 460 - ] - }, - { - "teal": 523, - "source": 108, - "pc": [ - 461 - ] - }, - { - "teal": 524, - "source": 108, - "pc": [ - 462 - ] - }, - { - "teal": 525, - "source": 108, - "pc": [ - 463 - ] - }, - { - "teal": 526, - "source": 108, - "pc": [ - 464 - ] - }, - { - "teal": 527, - "source": 107, - "pc": [ - 465 - ] - }, - { - "teal": 532, - "source": 111, - "pc": [ - 466, - 467, - 468 - ] - }, - { - "teal": 533, - "source": 111, - "pc": [ - 469 - ] - }, - { - "teal": 534, - "source": 111, - "pc": [ - 470 - ] - }, - { - "teal": 538, - "source": 111, - "pc": [ - 471, - 472, - 473 - ] - }, - { - "teal": 542, - "source": 112, - "pc": [ - 474 - ] - }, - { - "teal": 543, - "source": 112, - "pc": [ - 475 - ] - }, - { - "teal": 544, - "source": 112, - "pc": [ - 476 - ] - }, - { - "teal": 545, - "source": 111, - "pc": [ - 477 - ] - }, - { - "teal": 550, - "source": 115, - "pc": [ - 478, - 479, - 480 - ] - }, - { - "teal": 551, - "source": 115, - "pc": [ - 481 - ] - }, - { - "teal": 552, - "source": 115, - "pc": [ - 482 - ] - }, - { - "teal": 556, - "source": 115, - "pc": [ - 483, - 484, - 485 - ] - }, - { - "teal": 560, - "source": 116, - "pc": [ - 486 - ] - }, - { - "teal": 561, - "source": 116, - "pc": [ - 487 - ] - }, - { - "teal": 564, - "source": 116, - "errorMessage": "box value does not exist: this.boxMap('foo').value", - "pc": [ - 488 - ] - }, - { - "teal": 565, - "source": 116, - "pc": [ - 489 - ] - }, - { - "teal": 566, - "source": 116, - "pc": [ - 490 - ] - }, - { - "teal": 567, - "source": 116, - "pc": [ - 491 - ] - }, - { - "teal": 568, - "source": 115, - "pc": [ - 492 - ] - }, - { - "teal": 573, - "source": 119, - "pc": [ - 493, - 494, - 495 - ] - }, - { - "teal": 574, - "source": 119, - "pc": [ - 496 - ] - }, - { - "teal": 575, - "source": 119, - "pc": [ - 497 - ] - }, - { - "teal": 579, - "source": 119, - "pc": [ - 498, - 499, - 500 - ] - }, - { - "teal": 583, - "source": 120, - "pc": [ - 501 - ] - }, - { - "teal": 584, - "source": 120, - "pc": [ - 502 - ] - }, - { - "teal": 585, - "source": 119, - "pc": [ - 503 - ] - }, - { - "teal": 590, - "source": 123, - "pc": [ - 504, - 505, - 506 - ] - }, - { - "teal": 591, - "source": 123, - "pc": [ - 507 - ] - }, - { - "teal": 592, - "source": 123, - "pc": [ - 508 - ] - }, - { - "teal": 596, - "source": 123, - "pc": [ - 509, - 510, - 511 - ] - }, - { - "teal": 600, - "source": 124, - "pc": [ - 512 - ] - }, - { - "teal": 601, - "source": 124, - "pc": [ - 513 - ] - }, - { - "teal": 602, - "source": 124, - "pc": [ - 514 - ] - }, - { - "teal": 603, - "source": 124, - "pc": [ - 515 - ] - }, - { - "teal": 604, - "source": 124, - "pc": [ - 516 - ] - }, - { - "teal": 605, - "source": 123, - "pc": [ - 517 - ] - }, - { - "teal": 610, - "source": 127, - "pc": [ - 518, - 519, - 520 - ] - }, - { - "teal": 611, - "source": 127, - "pc": [ - 521 - ] - }, - { - "teal": 612, - "source": 127, - "pc": [ - 522 - ] - }, - { - "teal": 616, - "source": 127, - "pc": [ - 523, - 524, - 525 - ] - }, - { - "teal": 620, - "source": 128, - "pc": [ - 526 - ] - }, - { - "teal": 621, - "source": 128, - "pc": [ - 527 - ] - }, - { - "teal": 622, - "source": 128, - "pc": [ - 528 - ] - }, - { - "teal": 623, - "source": 128, - "pc": [ - 529 - ] - }, - { - "teal": 624, - "source": 127, - "pc": [ - 530 - ] - }, - { - "teal": 629, - "source": 131, - "pc": [ - 531, - 532, - 533 - ] - }, - { - "teal": 630, - "source": 131, - "pc": [ - 534 - ] - }, - { - "teal": 631, - "source": 131, - "pc": [ - 535 - ] - }, - { - "teal": 635, - "source": 131, - "pc": [ - 536, - 537, - 538 - ] - }, - { - "teal": 639, - "source": 132, - "pc": [ - 539 - ] - }, - { - "teal": 640, - "source": 132, - "pc": [ - 540 - ] - }, - { - "teal": 641, - "source": 132, - "pc": [ - 541 - ] - }, - { - "teal": 642, - "source": 132, - "pc": [ - 542 - ] - }, - { - "teal": 643, - "source": 131, - "pc": [ - 543 - ] - }, - { - "teal": 648, - "source": 135, - "pc": [ - 544 - ] - }, - { - "teal": 651, - "source": 135, - "pc": [ - 545, - 546, - 547 - ] - }, - { - "teal": 652, - "source": 135, - "pc": [ - 548 - ] - }, - { - "teal": 653, - "source": 135, - "pc": [ - 549 - ] - }, - { - "teal": 654, - "source": 135, - "pc": [ - 550 - ] - }, - { - "teal": 655, - "source": 135, - "pc": [ - 551 - ] - }, - { - "teal": 656, - "source": 135, - "pc": [ - 552 - ] - }, - { - "teal": 660, - "source": 135, - "pc": [ - 553, - 554, - 555 - ] - }, - { - "teal": 664, - "source": 136, - "pc": [ - 556 - ] - }, - { - "teal": 665, - "source": 136, - "pc": [ - 557 - ] - }, - { - "teal": 668, - "source": 136, - "errorMessage": "box value does not exist: this.boxKey.size", - "pc": [ - 558 - ] - }, - { - "teal": 669, - "source": 135, - "pc": [ - 559 - ] - }, - { - "teal": 674, - "source": 139, - "pc": [ - 560 - ] - }, - { - "teal": 677, - "source": 139, - "pc": [ - 561, - 562, - 563 - ] - }, - { - "teal": 678, - "source": 139, - "pc": [ - 564 - ] - }, - { - "teal": 679, - "source": 139, - "pc": [ - 565 - ] - }, - { - "teal": 680, - "source": 139, - "pc": [ - 566 - ] - }, - { - "teal": 681, - "source": 139, - "pc": [ - 567 - ] - }, - { - "teal": 682, - "source": 139, - "pc": [ - 568 - ] - }, - { - "teal": 686, - "source": 139, - "pc": [ - 569, - 570, - 571 - ] - }, - { - "teal": 690, - "source": 140, - "pc": [ - 572 - ] - }, - { - "teal": 691, - "source": 140, - "pc": [ - 573 - ] - }, - { - "teal": 694, - "source": 140, - "errorMessage": "box value does not exist: this.boxMap('bar').size", - "pc": [ - 574 - ] - }, - { - "teal": 695, - "source": 139, - "pc": [ - 575 - ] - }, - { - "teal": 700, - "source": 143, - "pc": [ - 576, - 577, - 578 - ] - }, - { - "teal": 701, - "source": 143, - "pc": [ - 579 - ] - }, - { - "teal": 702, - "source": 143, - "pc": [ - 580 - ] - }, - { - "teal": 706, - "source": 143, - "pc": [ - 581, - 582, - 583 - ] - }, - { - "teal": 710, - "source": 144, - "pc": [ - 584 - ] - }, - { - "teal": 711, - "source": 144, - "pc": [ - 585 - ] - }, - { - "teal": 712, - "source": 144, - "pc": [ - 586, - 587 - ] - }, - { - "teal": 713, - "source": 144, - "pc": [ - 588 - ] - }, - { - "teal": 714, - "source": 143, - "pc": [ - 589 - ] - }, - { - "teal": 719, - "source": 147, - "pc": [ - 590, - 591, - 592 - ] - }, - { - "teal": 720, - "source": 147, - "pc": [ - 593 - ] - }, - { - "teal": 721, - "source": 147, - "pc": [ - 594 - ] - }, - { - "teal": 725, - "source": 147, - "pc": [ - 595, - 596, - 597 - ] - }, - { - "teal": 729, - "source": 148, - "pc": [ - 598 - ] - }, - { - "teal": 730, - "source": 148, - "pc": [ - 599 - ] - }, - { - "teal": 731, - "source": 148, - "pc": [ - 600, - 601 - ] - }, - { - "teal": 732, - "source": 148, - "pc": [ - 602 - ] - }, - { - "teal": 733, - "source": 147, - "pc": [ - 603 - ] - }, - { - "teal": 738, - "source": 151, - "pc": [ - 604 - ] - }, - { - "teal": 741, - "source": 151, - "pc": [ - 605, - 606, - 607 - ] - }, - { - "teal": 742, - "source": 151, - "pc": [ - 608 - ] - }, - { - "teal": 743, - "source": 151, - "pc": [ - 609 - ] - }, - { - "teal": 744, - "source": 151, - "pc": [ - 610 - ] - }, - { - "teal": 745, - "source": 151, - "pc": [ - 611, - 612, - 613 - ] - }, - { - "teal": 746, - "source": 151, - "pc": [ - 614 - ] - }, - { - "teal": 747, - "source": 151, - "pc": [ - 615 - ] - }, - { - "teal": 748, - "source": 151, - "pc": [ - 616 - ] - }, - { - "teal": 749, - "source": 151, - "pc": [ - 617 - ] - }, - { - "teal": 750, - "source": 151, - "pc": [ - 618 - ] - }, - { - "teal": 751, - "source": 151, - "pc": [ - 619 - ] - }, - { - "teal": 755, - "source": 151, - "pc": [ - 620, - 621, - 622 - ] - }, - { - "teal": 759, - "source": 152, - "pc": [ - 623 - ] - }, - { - "teal": 760, - "source": 152, - "pc": [ - 624 - ] - }, - { - "teal": 761, - "source": 152, - "pc": [ - 625, - 626 - ] - }, - { - "teal": 762, - "source": 152, - "pc": [ - 627 - ] - }, - { - "teal": 763, - "source": 151, - "pc": [ - 628 - ] - }, - { - "teal": 768, - "source": 155, - "pc": [ - 629 - ] - }, - { - "teal": 771, - "source": 155, - "pc": [ - 630, - 631, - 632 - ] - }, - { - "teal": 772, - "source": 155, - "pc": [ - 633 - ] - }, - { - "teal": 773, - "source": 155, - "pc": [ - 634 - ] - }, - { - "teal": 774, - "source": 155, - "pc": [ - 635 - ] - }, - { - "teal": 775, - "source": 155, - "pc": [ - 636, - 637, - 638 - ] - }, - { - "teal": 776, - "source": 155, - "pc": [ - 639 - ] - }, - { - "teal": 777, - "source": 155, - "pc": [ - 640 - ] - }, - { - "teal": 778, - "source": 155, - "pc": [ - 641 - ] - }, - { - "teal": 779, - "source": 155, - "pc": [ - 642 - ] - }, - { - "teal": 780, - "source": 155, - "pc": [ - 643 - ] - }, - { - "teal": 781, - "source": 155, - "pc": [ - 644 - ] - }, - { - "teal": 785, - "source": 155, - "pc": [ - 645, - 646, - 647 - ] - }, - { - "teal": 789, - "source": 156, - "pc": [ - 648 - ] - }, - { - "teal": 790, - "source": 156, - "pc": [ - 649 - ] - }, - { - "teal": 791, - "source": 156, - "pc": [ - 650, - 651 - ] - }, - { - "teal": 792, - "source": 156, - "pc": [ - 652 - ] - }, - { - "teal": 793, - "source": 155, - "pc": [ - 653 - ] - }, - { - "teal": 798, - "source": 159, - "pc": [ - 654 - ] - }, - { - "teal": 801, - "source": 159, - "pc": [ - 655, - 656, - 657 - ] - }, - { - "teal": 802, - "source": 159, - "pc": [ - 658, - 659, - 660 - ] - }, - { - "teal": 803, - "source": 159, - "pc": [ - 661 - ] - }, - { - "teal": 804, - "source": 159, - "pc": [ - 662, - 663 - ] - }, - { - "teal": 805, - "source": 159, - "pc": [ - 664 - ] - }, - { - "teal": 806, - "source": 159, - "pc": [ - 665 - ] - }, - { - "teal": 807, - "source": 159, - "pc": [ - 666 - ] - }, - { - "teal": 808, - "source": 159, - "pc": [ - 667 - ] - }, - { - "teal": 809, - "source": 159, - "pc": [ - 668 - ] - }, - { - "teal": 813, - "source": 159, - "pc": [ - 669, - 670, - 671 - ] - }, - { - "teal": 817, - "source": 160, - "pc": [ - 672, - 673 - ] - }, - { - "teal": 818, - "source": 160, - "pc": [ - 674, - 675, - 676 - ] - }, - { - "teal": 819, - "source": 160, - "pc": [ - 677 - ] - }, - { - "teal": 820, - "source": 159, - "pc": [ - 678 - ] - }, - { - "teal": 825, - "source": 163, - "pc": [ - 679, - 680, - 681 - ] - }, - { - "teal": 826, - "source": 163, - "pc": [ - 682 - ] - }, - { - "teal": 827, - "source": 163, - "pc": [ - 683 - ] - }, - { - "teal": 831, - "source": 163, - "pc": [ - 684, - 685, - 686 - ] - }, - { - "teal": 835, - "source": 164, - "pc": [ - 687, - 688, - 689 - ] - }, - { - "teal": 836, - "source": 164, - "pc": [ - 690 - ] - }, - { - "teal": 837, - "source": 164, - "pc": [ - 691 - ] - }, - { - "teal": 840, - "source": 164, - "errorMessage": "global state value does not exist: this.app.globalState('foo')", - "pc": [ - 692 - ] - }, - { - "teal": 841, - "source": 164, - "pc": [ - 693 - ] - }, - { - "teal": 842, - "source": 163, - "pc": [ - 694 - ] - }, - { - "teal": 847, - "source": 167, - "pc": [ - 695, - 696, - 697 - ] - }, - { - "teal": 848, - "source": 167, - "pc": [ - 698 - ] - }, - { - "teal": 849, - "source": 167, - "pc": [ - 699 - ] - }, - { - "teal": 853, - "source": 167, - "pc": [ - 700, - 701, - 702 - ] - }, - { - "teal": 857, - "source": 168, - "pc": [ - 703, - 704 - ] - }, - { - "teal": 858, - "source": 168, - "pc": [ - 705, - 706, - 707 - ] - }, - { - "teal": 859, - "source": 168, - "pc": [ - 708 - ] - }, - { - "teal": 860, - "source": 168, - "pc": [ - 709 - ] - }, - { - "teal": 863, - "source": 168, - "errorMessage": "local state value does not exist: this.app.localState(this.txn.sender, 'foo')", - "pc": [ - 710 - ] - }, - { - "teal": 864, - "source": 168, - "pc": [ - 711 - ] - }, - { - "teal": 865, - "source": 167, - "pc": [ - 712 - ] - }, - { - "teal": 870, - "source": 171, - "pc": [ - 713 - ] - }, - { - "teal": 873, - "source": 171, - "pc": [ - 714, - 715, - 716 - ] - }, - { - "teal": 874, - "source": 171, - "pc": [ - 717 - ] - }, - { - "teal": 875, - "source": 171, - "pc": [ - 718 - ] - }, - { - "teal": 876, - "source": 171, - "pc": [ - 719 - ] - }, - { - "teal": 877, - "source": 171, - "pc": [ - 720, - 721 - ] - }, - { - "teal": 878, - "source": 171, - "pc": [ - 722 - ] - }, - { - "teal": 881, - "source": 171, - "errorMessage": "accessStaticValueInLargeBox return value overflowed 16 bits", - "pc": [ - 723 - ] - }, - { - "teal": 882, - "source": 171, - "pc": [ - 724, - 725, - 726 - ] - }, - { - "teal": 883, - "source": 171, - "pc": [ - 727 - ] - }, - { - "teal": 884, - "source": 171, - "pc": [ - 728 - ] - }, - { - "teal": 885, - "source": 171, - "pc": [ - 729 - ] - }, - { - "teal": 886, - "source": 171, - "pc": [ - 730 - ] - }, - { - "teal": 890, - "source": 171, - "pc": [ - 731, - 732, - 733 - ] - }, - { - "teal": 894, - "source": 172, - "pc": [ - 734 - ] - }, - { - "teal": 895, - "source": 172, - "pc": [ - 735, - 736 - ] - }, - { - "teal": 896, - "source": 172, - "pc": [ - 737 - ] - }, - { - "teal": 897, - "source": 172, - "pc": [ - 738 - ] - }, - { - "teal": 901, - "source": 173, - "pc": [ - 739 - ] - }, - { - "teal": 902, - "source": 173, - "pc": [ - 740, - 741 - ] - }, - { - "teal": 903, - "source": 173, - "pc": [ - 742, - 743 - ] - }, - { - "teal": 904, - "source": 173, - "pc": [ - 744 - ] - }, - { - "teal": 908, - "source": 175, - "pc": [ - 745 - ] - }, - { - "teal": 909, - "source": 175, - "pc": [ - 746, - 747 - ] - }, - { - "teal": 910, - "source": 175, - "pc": [ - 748, - 749 - ] - }, - { - "teal": 911, - "source": 175, - "pc": [ - 750 - ] - }, - { - "teal": 912, - "source": 175, - "pc": [ - 751 - ] - }, - { - "teal": 913, - "source": 171, - "pc": [ - 752 - ] - }, - { - "teal": 918, - "source": 178, - "pc": [ - 753 - ] - }, - { - "teal": 921, - "source": 178, - "pc": [ - 754, - 755, - 756 - ] - }, - { - "teal": 922, - "source": 178, - "pc": [ - 757 - ] - }, - { - "teal": 925, - "source": 178, - "pc": [ - 758, - 759, - 760 - ] - }, - { - "teal": 926, - "source": 178, - "pc": [ - 761 - ] - }, - { - "teal": 927, - "source": 178, - "pc": [ - 762 - ] - }, - { - "teal": 928, - "source": 178, - "pc": [ - 763 - ] - }, - { - "teal": 929, - "source": 178, - "pc": [ - 764, - 765 - ] - }, - { - "teal": 930, - "source": 178, - "pc": [ - 766 - ] - }, - { - "teal": 933, - "source": 178, - "errorMessage": "dynamicAccessStaticValueInLargeBox return value overflowed 16 bits", - "pc": [ - 767 - ] - }, - { - "teal": 934, - "source": 178, - "pc": [ - 768, - 769, - 770 - ] - }, - { - "teal": 935, - "source": 178, - "pc": [ - 771 - ] - }, - { - "teal": 936, - "source": 178, - "pc": [ - 772 - ] - }, - { - "teal": 937, - "source": 178, - "pc": [ - 773 - ] - }, - { - "teal": 938, - "source": 178, - "pc": [ - 774 - ] - }, - { - "teal": 942, - "source": 178, - "pc": [ - 775, - 776, - 777 - ] - }, - { - "teal": 946, - "source": 179, - "pc": [ - 778 - ] - }, - { - "teal": 947, - "source": 179, - "pc": [ - 779, - 780 - ] - }, - { - "teal": 948, - "source": 179, - "pc": [ - 781 - ] - }, - { - "teal": 949, - "source": 179, - "pc": [ - 782 - ] - }, - { - "teal": 953, - "source": 180, - "pc": [ - 783, - 784 - ] - }, - { - "teal": 954, - "source": 180, - "pc": [ - 785, - 786 - ] - }, - { - "teal": 955, - "source": 180, - "pc": [ - 787 - ] - }, - { - "teal": 956, - "source": 180, - "pc": [ - 788, - 789 - ] - }, - { - "teal": 957, - "source": 180, - "pc": [ - 790 - ] - }, - { - "teal": 958, - "source": 180, - "pc": [ - 791, - 792 - ] - }, - { - "teal": 959, - "source": 180, - "pc": [ - 793 - ] - }, - { - "teal": 963, - "source": 184, - "pc": [ - 794, - 795 - ] - }, - { - "teal": 964, - "source": 184, - "pc": [ - 796, - 797 - ] - }, - { - "teal": 965, - "source": 184, - "pc": [ - 798 - ] - }, - { - "teal": 966, - "source": 184, - "pc": [ - 799, - 800 - ] - }, - { - "teal": 967, - "source": 182, - "pc": [ - 801 - ] - }, - { - "teal": 968, - "source": 182, - "pc": [ - 802, - 803 - ] - }, - { - "teal": 969, - "source": 182, - "pc": [ - 804 - ] - }, - { - "teal": 970, - "source": 184, - "pc": [ - 805 - ] - }, - { - "teal": 971, - "source": 178, - "pc": [ - 806 - ] - }, - { - "teal": 976, - "source": 187, - "pc": [ - 807, - 808, - 809 - ] - }, - { - "teal": 977, - "source": 187, - "pc": [ - 810 - ] - }, - { - "teal": 978, - "source": 187, - "pc": [ - 811 - ] - }, - { - "teal": 982, - "source": 187, - "pc": [ - 812, - 813, - 814 - ] - }, - { - "teal": 986, - "source": 188, - "pc": [ - 815 - ] - }, - { - "teal": 987, - "source": 188, - "pc": [ - 816 - ] - }, - { - "teal": 988, - "source": 188, - "pc": [ - 817 - ] - }, - { - "teal": 992, - "source": 189, - "pc": [ - 818 - ] - }, - { - "teal": 993, - "source": 189, - "pc": [ - 819 - ] - }, - { - "teal": 994, - "source": 189, - "pc": [ - 820 - ] - }, - { - "teal": 995, - "source": 187, - "pc": [ - 821 - ] - }, - { - "teal": 1000, - "source": 192, - "pc": [ - 822, - 823, - 824 - ] - }, - { - "teal": 1001, - "source": 192, - "pc": [ - 825 - ] - }, - { - "teal": 1002, - "source": 192, - "pc": [ - 826 - ] - }, - { - "teal": 1006, - "source": 192, - "pc": [ - 827, - 828, - 829 - ] - }, - { - "teal": 1010, - "source": 193, - "pc": [ - 830 - ] - }, - { - "teal": 1011, - "source": 193, - "pc": [ - 831 - ] - }, - { - "teal": 1012, - "source": 193, - "pc": [ - 832 - ] - }, - { - "teal": 1013, - "source": 193, - "pc": [ - 833, - 834 - ] - }, - { - "teal": 1014, - "source": 193, - "pc": [ - 835 - ] - }, - { - "teal": 1018, - "source": 194, - "pc": [ - 836 - ] - }, - { - "teal": 1019, - "source": 194, - "pc": [ - 837 - ] - }, - { - "teal": 1020, - "source": 194, - "pc": [ - 838 - ] - }, - { - "teal": 1021, - "source": 194, - "pc": [ - 839, - 840 - ] - }, - { - "teal": 1022, - "source": 194, - "pc": [ - 841 - ] - }, - { - "teal": 1023, - "source": 192, - "pc": [ - 842 - ] - }, - { - "teal": 1028, - "source": 197, - "pc": [ - 843, - 844, - 845 - ] - }, - { - "teal": 1029, - "source": 197, - "pc": [ - 846 - ] - }, - { - "teal": 1030, - "source": 197, - "pc": [ - 847 - ] - }, - { - "teal": 1034, - "source": 197, - "pc": [ - 848, - 849, - 850 - ] - }, - { - "teal": 1038, - "source": 198, - "pc": [ - 851, - 852, - 853 - ] - }, - { - "teal": 1039, - "source": 198, - "pc": [ - 854 - ] - }, - { - "teal": 1040, - "source": 198, - "pc": [ - 855 - ] - }, - { - "teal": 1041, - "source": 198, - "pc": [ - 856 - ] - }, - { - "teal": 1042, - "source": 198, - "pc": [ - 857 - ] - }, - { - "teal": 1043, - "source": 198, - "pc": [ - 858 - ] - }, - { - "teal": 1047, - "source": 199, - "pc": [ - 859, - 860 - ] - }, - { - "teal": 1048, - "source": 199, - "pc": [ - 861, - 862, - 863 - ] - }, - { - "teal": 1049, - "source": 199, - "pc": [ - 864 - ] - }, - { - "teal": 1050, - "source": 199, - "pc": [ - 865 - ] - }, - { - "teal": 1051, - "source": 199, - "pc": [ - 866 - ] - }, - { - "teal": 1052, - "source": 199, - "pc": [ - 867 - ] - }, - { - "teal": 1053, - "source": 199, - "pc": [ - 868 - ] - }, - { - "teal": 1054, - "source": 197, - "pc": [ - 869 - ] - }, - { - "teal": 1057, - "source": 4, - "pc": [ - 870 - ] - }, - { - "teal": 1058, - "source": 4, - "pc": [ - 871 - ] - }, - { - "teal": 1061, - "source": 4, - "pc": [ - 872, - 873, - 874, - 875, - 876, - 877 - ] - }, - { - "teal": 1062, - "source": 4, - "pc": [ - 878, - 879, - 880 - ] - }, - { - "teal": 1063, - "source": 4, - "pc": [ - 881, - 882, - 883, - 884 - ] - }, - { - "teal": 1066, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "pc": [ - 885 - ] - }, - { - "teal": 1069, - "source": 4, - "pc": [ - 886, - 887, - 888, - 889, - 890, - 891 - ] - }, - { - "teal": 1070, - "source": 4, - "pc": [ - 892, - 893, - 894, - 895, - 896, - 897 - ] - }, - { - "teal": 1071, - "source": 4, - "pc": [ - 898, - 899, - 900, - 901, - 902, - 903 - ] - }, - { - "teal": 1072, - "source": 4, - "pc": [ - 904, - 905, - 906, - 907, - 908, - 909 - ] - }, - { - "teal": 1073, - "source": 4, - "pc": [ - 910, - 911, - 912, - 913, - 914, - 915 - ] - }, - { - "teal": 1074, - "source": 4, - "pc": [ - 916, - 917, - 918, - 919, - 920, - 921 - ] - }, - { - "teal": 1075, - "source": 4, - "pc": [ - 922, - 923, - 924, - 925, - 926, - 927 - ] - }, - { - "teal": 1076, - "source": 4, - "pc": [ - 928, - 929, - 930, - 931, - 932, - 933 - ] - }, - { - "teal": 1077, - "source": 4, - "pc": [ - 934, - 935, - 936, - 937, - 938, - 939 - ] - }, - { - "teal": 1078, - "source": 4, - "pc": [ - 940, - 941, - 942, - 943, - 944, - 945 - ] - }, - { - "teal": 1079, - "source": 4, - "pc": [ - 946, - 947, - 948, - 949, - 950, - 951 - ] - }, - { - "teal": 1080, - "source": 4, - "pc": [ - 952, - 953, - 954, - 955, - 956, - 957 - ] - }, - { - "teal": 1081, - "source": 4, - "pc": [ - 958, - 959, - 960, - 961, - 962, - 963 - ] - }, - { - "teal": 1082, - "source": 4, - "pc": [ - 964, - 965, - 966, - 967, - 968, - 969 - ] - }, - { - "teal": 1083, - "source": 4, - "pc": [ - 970, - 971, - 972, - 973, - 974, - 975 - ] - }, - { - "teal": 1084, - "source": 4, - "pc": [ - 976, - 977, - 978, - 979, - 980, - 981 - ] - }, - { - "teal": 1085, - "source": 4, - "pc": [ - 982, - 983, - 984, - 985, - 986, - 987 - ] - }, - { - "teal": 1086, - "source": 4, - "pc": [ - 988, - 989, - 990, - 991, - 992, - 993 - ] - }, - { - "teal": 1087, - "source": 4, - "pc": [ - 994, - 995, - 996, - 997, - 998, - 999 - ] - }, - { - "teal": 1088, - "source": 4, - "pc": [ - 1000, - 1001, - 1002, - 1003, - 1004, - 1005 - ] - }, - { - "teal": 1089, - "source": 4, - "pc": [ - 1006, - 1007, - 1008, - 1009, - 1010, - 1011 - ] - }, - { - "teal": 1090, - "source": 4, - "pc": [ - 1012, - 1013, - 1014, - 1015, - 1016, - 1017 - ] - }, - { - "teal": 1091, - "source": 4, - "pc": [ - 1018, - 1019, - 1020, - 1021, - 1022, - 1023 - ] - }, - { - "teal": 1092, - "source": 4, - "pc": [ - 1024, - 1025, - 1026, - 1027, - 1028, - 1029 - ] - }, - { - "teal": 1093, - "source": 4, - "pc": [ - 1030, - 1031, - 1032, - 1033, - 1034, - 1035 - ] - }, - { - "teal": 1094, - "source": 4, - "pc": [ - 1036, - 1037, - 1038, - 1039, - 1040, - 1041 - ] - }, - { - "teal": 1095, - "source": 4, - "pc": [ - 1042, - 1043, - 1044, - 1045, - 1046, - 1047 - ] - }, - { - "teal": 1096, - "source": 4, - "pc": [ - 1048, - 1049, - 1050, - 1051, - 1052, - 1053 - ] - }, - { - "teal": 1097, - "source": 4, - "pc": [ - 1054, - 1055, - 1056, - 1057, - 1058, - 1059 - ] - }, - { - "teal": 1098, - "source": 4, - "pc": [ - 1060, - 1061, - 1062, - 1063, - 1064, - 1065 - ] - }, - { - "teal": 1099, - "source": 4, - "pc": [ - 1066, - 1067, - 1068, - 1069, - 1070, - 1071 - ] - }, - { - "teal": 1100, - "source": 4, - "pc": [ - 1072, - 1073, - 1074, - 1075, - 1076, - 1077 - ] - }, - { - "teal": 1101, - "source": 4, - "pc": [ - 1078, - 1079, - 1080, - 1081, - 1082, - 1083 - ] - }, - { - "teal": 1102, - "source": 4, - "pc": [ - 1084, - 1085, - 1086, - 1087, - 1088, - 1089 - ] - }, - { - "teal": 1103, - "source": 4, - "pc": [ - 1090, - 1091, - 1092, - 1093, - 1094, - 1095 - ] - }, - { - "teal": 1104, - "source": 4, - "pc": [ - 1096, - 1097, - 1098, - 1099, - 1100, - 1101 - ] - }, - { - "teal": 1105, - "source": 4, - "pc": [ - 1102, - 1103, - 1104, - 1105, - 1106, - 1107 - ] - }, - { - "teal": 1106, - "source": 4, - "pc": [ - 1108, - 1109, - 1110, - 1111, - 1112, - 1113 - ] - }, - { - "teal": 1107, - "source": 4, - "pc": [ - 1114, - 1115, - 1116, - 1117, - 1118, - 1119 - ] - }, - { - "teal": 1108, - "source": 4, - "pc": [ - 1120, - 1121, - 1122, - 1123, - 1124, - 1125 - ] - }, - { - "teal": 1109, - "source": 4, - "pc": [ - 1126, - 1127, - 1128, - 1129, - 1130, - 1131 - ] - }, - { - "teal": 1110, - "source": 4, - "pc": [ - 1132, - 1133, - 1134 - ] - }, - { - "teal": 1111, - "source": 4, - "pc": [ - 1135, - 1136, - 1137, - 1138, - 1139, - 1140, - 1141, - 1142, - 1143, - 1144, - 1145, - 1146, - 1147, - 1148, - 1149, - 1150, - 1151, - 1152, - 1153, - 1154, - 1155, - 1156, - 1157, - 1158, - 1159, - 1160, - 1161, - 1162, - 1163, - 1164, - 1165, - 1166, - 1167, - 1168, - 1169, - 1170, - 1171, - 1172, - 1173, - 1174, - 1175, - 1176, - 1177, - 1178, - 1179, - 1180, - 1181, - 1182, - 1183, - 1184, - 1185, - 1186, - 1187, - 1188, - 1189, - 1190, - 1191, - 1192, - 1193, - 1194, - 1195, - 1196, - 1197, - 1198, - 1199, - 1200, - 1201, - 1202, - 1203, - 1204, - 1205, - 1206, - 1207, - 1208, - 1209, - 1210, - 1211, - 1212, - 1213, - 1214, - 1215, - 1216, - 1217, - 1218 - ] - }, - { - "teal": 1114, - "source": 4, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "pc": [ - 1219 - ] - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 4, + "pc": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + }, + { + "teal": 13, + "source": 4, + "pc": [ + 59, + 60 + ] + }, + { + "teal": 14, + "source": 4, + "pc": [ + 61 + ] + }, + { + "teal": 15, + "source": 4, + "pc": [ + 62, + 63 + ] + }, + { + "teal": 16, + "source": 4, + "pc": [ + 64 + ] + }, + { + "teal": 17, + "source": 4, + "pc": [ + 65, + 66 + ] + }, + { + "teal": 18, + "source": 4, + "pc": [ + 67 + ] + }, + { + "teal": 19, + "source": 4, + "pc": [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + }, + { + "teal": 23, + "source": 4, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "pc": [ + 94 + ] + }, + { + "teal": 28, + "source": 25, + "pc": [ + 95, + 96, + 97 + ] + }, + { + "teal": 29, + "source": 25, + "pc": [ + 98 + ] + }, + { + "teal": 30, + "source": 25, + "pc": [ + 99 + ] + }, + { + "teal": 34, + "source": 25, + "pc": [ + 100, + 101, + 102 + ] + }, + { + "teal": 38, + "source": 26, + "pc": [ + 103 + ] + }, + { + "teal": 39, + "source": 26, + "pc": [ + 104 + ] + }, + { + "teal": 40, + "source": 26, + "pc": [ + 105 + ] + }, + { + "teal": 41, + "source": 26, + "pc": [ + 106 + ] + }, + { + "teal": 42, + "source": 26, + "pc": [ + 107 + ] + }, + { + "teal": 43, + "source": 26, + "pc": [ + 108 + ] + }, + { + "teal": 47, + "source": 27, + "pc": [ + 109 + ] + }, + { + "teal": 48, + "source": 27, + "pc": [ + 110 + ] + }, + { + "teal": 49, + "source": 27, + "pc": [ + 111 + ] + }, + { + "teal": 53, + "source": 28, + "pc": [ + 112, + 113 + ] + }, + { + "teal": 54, + "source": 28, + "pc": [ + 114 + ] + }, + { + "teal": 55, + "source": 28, + "pc": [ + 115 + ] + }, + { + "teal": 56, + "source": 28, + "pc": [ + 116 + ] + }, + { + "teal": 57, + "source": 25, + "pc": [ + 117 + ] + }, + { + "teal": 62, + "source": 31, + "pc": [ + 118, + 119, + 120 + ] + }, + { + "teal": 63, + "source": 31, + "pc": [ + 121 + ] + }, + { + "teal": 64, + "source": 31, + "pc": [ + 122 + ] + }, + { + "teal": 68, + "source": 31, + "pc": [ + 123, + 124, + 125 + ] + }, + { + "teal": 72, + "source": 32, + "pc": [ + 126 + ] + }, + { + "teal": 73, + "source": 32, + "pc": [ + 127 + ] + }, + { + "teal": 74, + "source": 32, + "pc": [ + 128 + ] + }, + { + "teal": 75, + "source": 31, + "pc": [ + 129 + ] + }, + { + "teal": 80, + "source": 35, + "pc": [ + 130, + 131, + 132 + ] + }, + { + "teal": 81, + "source": 35, + "pc": [ + 133 + ] + }, + { + "teal": 82, + "source": 35, + "pc": [ + 134 + ] + }, + { + "teal": 86, + "source": 35, + "pc": [ + 135, + 136, + 137 + ] + }, + { + "teal": 90, + "source": 36, + "pc": [ + 138 + ] + }, + { + "teal": 91, + "source": 36, + "pc": [ + 139 + ] + }, + { + "teal": 92, + "source": 36, + "pc": [ + 140 + ] + }, + { + "teal": 93, + "source": 36, + "pc": [ + 141 + ] + }, + { + "teal": 94, + "source": 36, + "pc": [ + 142 + ] + }, + { + "teal": 95, + "source": 35, + "pc": [ + 143 + ] + }, + { + "teal": 100, + "source": 39, + "pc": [ + 144, + 145, + 146 + ] + }, + { + "teal": 101, + "source": 39, + "pc": [ + 147 + ] + }, + { + "teal": 102, + "source": 39, + "pc": [ + 148 + ] + }, + { + "teal": 106, + "source": 39, + "pc": [ + 149, + 150, + 151 + ] + }, + { + "teal": 110, + "source": 40, + "pc": [ + 152 + ] + }, + { + "teal": 111, + "source": 40, + "pc": [ + 153 + ] + }, + { + "teal": 112, + "source": 39, + "pc": [ + 154 + ] + }, + { + "teal": 117, + "source": 43, + "pc": [ + 155, + 156, + 157 + ] + }, + { + "teal": 118, + "source": 43, + "pc": [ + 158 + ] + }, + { + "teal": 119, + "source": 43, + "pc": [ + 159 + ] + }, + { + "teal": 123, + "source": 43, + "pc": [ + 160, + 161, + 162 + ] + }, + { + "teal": 127, + "source": 44, + "pc": [ + 163, + 164, + 165 + ] + }, + { + "teal": 128, + "source": 44, + "pc": [ + 166 + ] + }, + { + "teal": 129, + "source": 44, + "pc": [ + 167 + ] + }, + { + "teal": 130, + "source": 44, + "pc": [ + 168 + ] + }, + { + "teal": 131, + "source": 44, + "pc": [ + 169 + ] + }, + { + "teal": 132, + "source": 44, + "pc": [ + 170 + ] + }, + { + "teal": 133, + "source": 43, + "pc": [ + 171 + ] + }, + { + "teal": 138, + "source": 47, + "pc": [ + 172, + 173, + 174 + ] + }, + { + "teal": 139, + "source": 47, + "pc": [ + 175 + ] + }, + { + "teal": 140, + "source": 47, + "pc": [ + 176 + ] + }, + { + "teal": 141, + "source": 47, + "pc": [ + 177 + ] + }, + { + "teal": 142, + "source": 47, + "pc": [ + 178 + ] + }, + { + "teal": 145, + "source": 47, + "errorMessage": "argument 0 (a) for localKeyPut must be a address", + "pc": [ + 179 + ] + }, + { + "teal": 148, + "source": 47, + "pc": [ + 180, + 181, + 182 + ] + }, + { + "teal": 149, + "source": 47, + "pc": [ + 183 + ] + }, + { + "teal": 150, + "source": 47, + "pc": [ + 184 + ] + }, + { + "teal": 154, + "source": 47, + "pc": [ + 185, + 186, + 187 + ] + }, + { + "teal": 158, + "source": 48, + "pc": [ + 188, + 189 + ] + }, + { + "teal": 159, + "source": 48, + "pc": [ + 190 + ] + }, + { + "teal": 160, + "source": 48, + "pc": [ + 191 + ] + }, + { + "teal": 161, + "source": 48, + "pc": [ + 192 + ] + }, + { + "teal": 162, + "source": 47, + "pc": [ + 193 + ] + }, + { + "teal": 167, + "source": 51, + "pc": [ + 194, + 195, + 196 + ] + }, + { + "teal": 168, + "source": 51, + "pc": [ + 197 + ] + }, + { + "teal": 169, + "source": 51, + "pc": [ + 198 + ] + }, + { + "teal": 170, + "source": 51, + "pc": [ + 199 + ] + }, + { + "teal": 171, + "source": 51, + "pc": [ + 200 + ] + }, + { + "teal": 174, + "source": 51, + "errorMessage": "argument 0 (a) for localKeyGet must be a address", + "pc": [ + 201 + ] + }, + { + "teal": 177, + "source": 51, + "pc": [ + 202, + 203, + 204 + ] + }, + { + "teal": 178, + "source": 51, + "pc": [ + 205 + ] + }, + { + "teal": 179, + "source": 51, + "pc": [ + 206 + ] + }, + { + "teal": 183, + "source": 51, + "pc": [ + 207, + 208, + 209 + ] + }, + { + "teal": 187, + "source": 52, + "pc": [ + 210, + 211 + ] + }, + { + "teal": 188, + "source": 52, + "pc": [ + 212 + ] + }, + { + "teal": 189, + "source": 52, + "pc": [ + 213 + ] + }, + { + "teal": 190, + "source": 52, + "pc": [ + 214 + ] + }, + { + "teal": 191, + "source": 52, + "pc": [ + 215 + ] + }, + { + "teal": 192, + "source": 52, + "pc": [ + 216 + ] + }, + { + "teal": 193, + "source": 51, + "pc": [ + 217 + ] + }, + { + "teal": 198, + "source": 55, + "pc": [ + 218, + 219, + 220 + ] + }, + { + "teal": 199, + "source": 55, + "pc": [ + 221 + ] + }, + { + "teal": 200, + "source": 55, + "pc": [ + 222 + ] + }, + { + "teal": 201, + "source": 55, + "pc": [ + 223 + ] + }, + { + "teal": 202, + "source": 55, + "pc": [ + 224 + ] + }, + { + "teal": 205, + "source": 55, + "errorMessage": "argument 0 (a) for localKeyDelete must be a address", + "pc": [ + 225 + ] + }, + { + "teal": 208, + "source": 55, + "pc": [ + 226, + 227, + 228 + ] + }, + { + "teal": 209, + "source": 55, + "pc": [ + 229 + ] + }, + { + "teal": 210, + "source": 55, + "pc": [ + 230 + ] + }, + { + "teal": 214, + "source": 55, + "pc": [ + 231, + 232, + 233 + ] + }, + { + "teal": 218, + "source": 56, + "pc": [ + 234, + 235 + ] + }, + { + "teal": 219, + "source": 56, + "pc": [ + 236 + ] + }, + { + "teal": 220, + "source": 56, + "pc": [ + 237 + ] + }, + { + "teal": 221, + "source": 55, + "pc": [ + 238 + ] + }, + { + "teal": 226, + "source": 59, + "pc": [ + 239, + 240, + 241 + ] + }, + { + "teal": 227, + "source": 59, + "pc": [ + 242 + ] + }, + { + "teal": 228, + "source": 59, + "pc": [ + 243 + ] + }, + { + "teal": 229, + "source": 59, + "pc": [ + 244 + ] + }, + { + "teal": 230, + "source": 59, + "pc": [ + 245 + ] + }, + { + "teal": 233, + "source": 59, + "errorMessage": "argument 0 (a) for localKeyExists must be a address", + "pc": [ + 246 + ] + }, + { + "teal": 236, + "source": 59, + "pc": [ + 247, + 248, + 249 + ] + }, + { + "teal": 237, + "source": 59, + "pc": [ + 250 + ] + }, + { + "teal": 238, + "source": 59, + "pc": [ + 251 + ] + }, + { + "teal": 242, + "source": 59, + "pc": [ + 252, + 253, + 254 + ] + }, + { + "teal": 246, + "source": 60, + "pc": [ + 255, + 256 + ] + }, + { + "teal": 247, + "source": 60, + "pc": [ + 257, + 258, + 259 + ] + }, + { + "teal": 248, + "source": 60, + "pc": [ + 260 + ] + }, + { + "teal": 249, + "source": 60, + "pc": [ + 261 + ] + }, + { + "teal": 250, + "source": 60, + "pc": [ + 262 + ] + }, + { + "teal": 251, + "source": 60, + "pc": [ + 263 + ] + }, + { + "teal": 252, + "source": 60, + "pc": [ + 264 + ] + }, + { + "teal": 253, + "source": 59, + "pc": [ + 265 + ] + }, + { + "teal": 258, + "source": 63, + "pc": [ + 266, + 267, + 268 + ] + }, + { + "teal": 259, + "source": 63, + "pc": [ + 269 + ] + }, + { + "teal": 260, + "source": 63, + "pc": [ + 270 + ] + }, + { + "teal": 264, + "source": 63, + "pc": [ + 271, + 272, + 273 + ] + }, + { + "teal": 268, + "source": 64, + "pc": [ + 274 + ] + }, + { + "teal": 269, + "source": 64, + "pc": [ + 275 + ] + }, + { + "teal": 270, + "source": 64, + "pc": [ + 276 + ] + }, + { + "teal": 271, + "source": 63, + "pc": [ + 277 + ] + }, + { + "teal": 276, + "source": 67, + "pc": [ + 278, + 279, + 280 + ] + }, + { + "teal": 277, + "source": 67, + "pc": [ + 281 + ] + }, + { + "teal": 278, + "source": 67, + "pc": [ + 282 + ] + }, + { + "teal": 282, + "source": 67, + "pc": [ + 283, + 284, + 285 + ] + }, + { + "teal": 286, + "source": 68, + "pc": [ + 286 + ] + }, + { + "teal": 287, + "source": 68, + "pc": [ + 287 + ] + }, + { + "teal": 290, + "source": 68, + "errorMessage": "box value does not exist: this.boxKey.value", + "pc": [ + 288 + ] + }, + { + "teal": 291, + "source": 68, + "pc": [ + 289 + ] + }, + { + "teal": 292, + "source": 68, + "pc": [ + 290 + ] + }, + { + "teal": 293, + "source": 68, + "pc": [ + 291 + ] + }, + { + "teal": 294, + "source": 67, + "pc": [ + 292 + ] + }, + { + "teal": 299, + "source": 71, + "pc": [ + 293, + 294, + 295 + ] + }, + { + "teal": 300, + "source": 71, + "pc": [ + 296 + ] + }, + { + "teal": 301, + "source": 71, + "pc": [ + 297 + ] + }, + { + "teal": 305, + "source": 71, + "pc": [ + 298, + 299, + 300 + ] + }, + { + "teal": 309, + "source": 72, + "pc": [ + 301 + ] + }, + { + "teal": 310, + "source": 72, + "pc": [ + 302 + ] + }, + { + "teal": 311, + "source": 71, + "pc": [ + 303 + ] + }, + { + "teal": 316, + "source": 75, + "pc": [ + 304, + 305, + 306 + ] + }, + { + "teal": 317, + "source": 75, + "pc": [ + 307 + ] + }, + { + "teal": 318, + "source": 75, + "pc": [ + 308 + ] + }, + { + "teal": 322, + "source": 75, + "pc": [ + 309, + 310, + 311 + ] + }, + { + "teal": 326, + "source": 76, + "pc": [ + 312 + ] + }, + { + "teal": 327, + "source": 76, + "pc": [ + 313 + ] + }, + { + "teal": 328, + "source": 76, + "pc": [ + 314 + ] + }, + { + "teal": 329, + "source": 76, + "pc": [ + 315 + ] + }, + { + "teal": 330, + "source": 76, + "pc": [ + 316 + ] + }, + { + "teal": 331, + "source": 75, + "pc": [ + 317 + ] + }, + { + "teal": 336, + "source": 79, + "pc": [ + 318, + 319, + 320 + ] + }, + { + "teal": 337, + "source": 79, + "pc": [ + 321 + ] + }, + { + "teal": 338, + "source": 79, + "pc": [ + 322 + ] + }, + { + "teal": 342, + "source": 79, + "pc": [ + 323, + 324, + 325 + ] + }, + { + "teal": 346, + "source": 80, + "pc": [ + 326 + ] + }, + { + "teal": 347, + "source": 80, + "pc": [ + 327 + ] + }, + { + "teal": 348, + "source": 80, + "pc": [ + 328 + ] + }, + { + "teal": 349, + "source": 79, + "pc": [ + 329 + ] + }, + { + "teal": 354, + "source": 83, + "pc": [ + 330, + 331, + 332 + ] + }, + { + "teal": 355, + "source": 83, + "pc": [ + 333 + ] + }, + { + "teal": 356, + "source": 83, + "pc": [ + 334 + ] + }, + { + "teal": 360, + "source": 83, + "pc": [ + 335, + 336, + 337 + ] + }, + { + "teal": 364, + "source": 84, + "pc": [ + 338 + ] + }, + { + "teal": 365, + "source": 84, + "pc": [ + 339 + ] + }, + { + "teal": 366, + "source": 84, + "pc": [ + 340 + ] + }, + { + "teal": 367, + "source": 84, + "pc": [ + 341 + ] + }, + { + "teal": 368, + "source": 84, + "pc": [ + 342 + ] + }, + { + "teal": 369, + "source": 83, + "pc": [ + 343 + ] + }, + { + "teal": 374, + "source": 87, + "pc": [ + 344, + 345, + 346 + ] + }, + { + "teal": 375, + "source": 87, + "pc": [ + 347 + ] + }, + { + "teal": 376, + "source": 87, + "pc": [ + 348 + ] + }, + { + "teal": 380, + "source": 87, + "pc": [ + 349, + 350, + 351 + ] + }, + { + "teal": 384, + "source": 88, + "pc": [ + 352 + ] + }, + { + "teal": 385, + "source": 88, + "pc": [ + 353 + ] + }, + { + "teal": 386, + "source": 87, + "pc": [ + 354 + ] + }, + { + "teal": 391, + "source": 91, + "pc": [ + 355, + 356, + 357 + ] + }, + { + "teal": 392, + "source": 91, + "pc": [ + 358 + ] + }, + { + "teal": 393, + "source": 91, + "pc": [ + 359 + ] + }, + { + "teal": 397, + "source": 91, + "pc": [ + 360, + 361, + 362 + ] + }, + { + "teal": 401, + "source": 92, + "pc": [ + 363, + 364, + 365 + ] + }, + { + "teal": 402, + "source": 92, + "pc": [ + 366 + ] + }, + { + "teal": 403, + "source": 92, + "pc": [ + 367 + ] + }, + { + "teal": 404, + "source": 92, + "pc": [ + 368 + ] + }, + { + "teal": 405, + "source": 92, + "pc": [ + 369 + ] + }, + { + "teal": 406, + "source": 92, + "pc": [ + 370 + ] + }, + { + "teal": 407, + "source": 91, + "pc": [ + 371 + ] + }, + { + "teal": 412, + "source": 95, + "pc": [ + 372, + 373, + 374 + ] + }, + { + "teal": 413, + "source": 95, + "pc": [ + 375 + ] + }, + { + "teal": 414, + "source": 95, + "pc": [ + 376 + ] + }, + { + "teal": 415, + "source": 95, + "pc": [ + 377 + ] + }, + { + "teal": 416, + "source": 95, + "pc": [ + 378 + ] + }, + { + "teal": 419, + "source": 95, + "errorMessage": "argument 0 (a) for localMapPut must be a address", + "pc": [ + 379 + ] + }, + { + "teal": 422, + "source": 95, + "pc": [ + 380, + 381, + 382 + ] + }, + { + "teal": 423, + "source": 95, + "pc": [ + 383 + ] + }, + { + "teal": 424, + "source": 95, + "pc": [ + 384 + ] + }, + { + "teal": 428, + "source": 95, + "pc": [ + 385, + 386, + 387 + ] + }, + { + "teal": 432, + "source": 96, + "pc": [ + 388, + 389 + ] + }, + { + "teal": 433, + "source": 96, + "pc": [ + 390 + ] + }, + { + "teal": 434, + "source": 96, + "pc": [ + 391 + ] + }, + { + "teal": 435, + "source": 96, + "pc": [ + 392 + ] + }, + { + "teal": 436, + "source": 95, + "pc": [ + 393 + ] + }, + { + "teal": 441, + "source": 99, + "pc": [ + 394, + 395, + 396 + ] + }, + { + "teal": 442, + "source": 99, + "pc": [ + 397 + ] + }, + { + "teal": 443, + "source": 99, + "pc": [ + 398 + ] + }, + { + "teal": 444, + "source": 99, + "pc": [ + 399 + ] + }, + { + "teal": 445, + "source": 99, + "pc": [ + 400 + ] + }, + { + "teal": 448, + "source": 99, + "errorMessage": "argument 0 (a) for localMapGet must be a address", + "pc": [ + 401 + ] + }, + { + "teal": 451, + "source": 99, + "pc": [ + 402, + 403, + 404 + ] + }, + { + "teal": 452, + "source": 99, + "pc": [ + 405 + ] + }, + { + "teal": 453, + "source": 99, + "pc": [ + 406 + ] + }, + { + "teal": 457, + "source": 99, + "pc": [ + 407, + 408, + 409 + ] + }, + { + "teal": 461, + "source": 100, + "pc": [ + 410, + 411 + ] + }, + { + "teal": 462, + "source": 100, + "pc": [ + 412 + ] + }, + { + "teal": 463, + "source": 100, + "pc": [ + 413 + ] + }, + { + "teal": 464, + "source": 100, + "pc": [ + 414 + ] + }, + { + "teal": 465, + "source": 100, + "pc": [ + 415 + ] + }, + { + "teal": 466, + "source": 100, + "pc": [ + 416 + ] + }, + { + "teal": 467, + "source": 99, + "pc": [ + 417 + ] + }, + { + "teal": 472, + "source": 103, + "pc": [ + 418, + 419, + 420 + ] + }, + { + "teal": 473, + "source": 103, + "pc": [ + 421 + ] + }, + { + "teal": 474, + "source": 103, + "pc": [ + 422 + ] + }, + { + "teal": 475, + "source": 103, + "pc": [ + 423 + ] + }, + { + "teal": 476, + "source": 103, + "pc": [ + 424 + ] + }, + { + "teal": 479, + "source": 103, + "errorMessage": "argument 0 (a) for localMapDelete must be a address", + "pc": [ + 425 + ] + }, + { + "teal": 482, + "source": 103, + "pc": [ + 426, + 427, + 428 + ] + }, + { + "teal": 483, + "source": 103, + "pc": [ + 429 + ] + }, + { + "teal": 484, + "source": 103, + "pc": [ + 430 + ] + }, + { + "teal": 488, + "source": 103, + "pc": [ + 431, + 432, + 433 + ] + }, + { + "teal": 492, + "source": 104, + "pc": [ + 434, + 435 + ] + }, + { + "teal": 493, + "source": 104, + "pc": [ + 436 + ] + }, + { + "teal": 494, + "source": 104, + "pc": [ + 437 + ] + }, + { + "teal": 495, + "source": 103, + "pc": [ + 438 + ] + }, + { + "teal": 500, + "source": 107, + "pc": [ + 439, + 440, + 441 + ] + }, + { + "teal": 501, + "source": 107, + "pc": [ + 442 + ] + }, + { + "teal": 502, + "source": 107, + "pc": [ + 443 + ] + }, + { + "teal": 503, + "source": 107, + "pc": [ + 444 + ] + }, + { + "teal": 504, + "source": 107, + "pc": [ + 445 + ] + }, + { + "teal": 507, + "source": 107, + "errorMessage": "argument 0 (a) for localMapExists must be a address", + "pc": [ + 446 + ] + }, + { + "teal": 510, + "source": 107, + "pc": [ + 447, + 448, + 449 + ] + }, + { + "teal": 511, + "source": 107, + "pc": [ + 450 + ] + }, + { + "teal": 512, + "source": 107, + "pc": [ + 451 + ] + }, + { + "teal": 516, + "source": 107, + "pc": [ + 452, + 453, + 454 + ] + }, + { + "teal": 520, + "source": 108, + "pc": [ + 455, + 456 + ] + }, + { + "teal": 521, + "source": 108, + "pc": [ + 457, + 458, + 459 + ] + }, + { + "teal": 522, + "source": 108, + "pc": [ + 460 + ] + }, + { + "teal": 523, + "source": 108, + "pc": [ + 461 + ] + }, + { + "teal": 524, + "source": 108, + "pc": [ + 462 + ] + }, + { + "teal": 525, + "source": 108, + "pc": [ + 463 + ] + }, + { + "teal": 526, + "source": 108, + "pc": [ + 464 + ] + }, + { + "teal": 527, + "source": 107, + "pc": [ + 465 + ] + }, + { + "teal": 532, + "source": 111, + "pc": [ + 466, + 467, + 468 + ] + }, + { + "teal": 533, + "source": 111, + "pc": [ + 469 + ] + }, + { + "teal": 534, + "source": 111, + "pc": [ + 470 + ] + }, + { + "teal": 538, + "source": 111, + "pc": [ + 471, + 472, + 473 + ] + }, + { + "teal": 542, + "source": 112, + "pc": [ + 474 + ] + }, + { + "teal": 543, + "source": 112, + "pc": [ + 475 + ] + }, + { + "teal": 544, + "source": 112, + "pc": [ + 476 + ] + }, + { + "teal": 545, + "source": 111, + "pc": [ + 477 + ] + }, + { + "teal": 550, + "source": 115, + "pc": [ + 478, + 479, + 480 + ] + }, + { + "teal": 551, + "source": 115, + "pc": [ + 481 + ] + }, + { + "teal": 552, + "source": 115, + "pc": [ + 482 + ] + }, + { + "teal": 556, + "source": 115, + "pc": [ + 483, + 484, + 485 + ] + }, + { + "teal": 560, + "source": 116, + "pc": [ + 486 + ] + }, + { + "teal": 561, + "source": 116, + "pc": [ + 487 + ] + }, + { + "teal": 564, + "source": 116, + "errorMessage": "box value does not exist: this.boxMap('foo').value", + "pc": [ + 488 + ] + }, + { + "teal": 565, + "source": 116, + "pc": [ + 489 + ] + }, + { + "teal": 566, + "source": 116, + "pc": [ + 490 + ] + }, + { + "teal": 567, + "source": 116, + "pc": [ + 491 + ] + }, + { + "teal": 568, + "source": 115, + "pc": [ + 492 + ] + }, + { + "teal": 573, + "source": 119, + "pc": [ + 493, + 494, + 495 + ] + }, + { + "teal": 574, + "source": 119, + "pc": [ + 496 + ] + }, + { + "teal": 575, + "source": 119, + "pc": [ + 497 + ] + }, + { + "teal": 579, + "source": 119, + "pc": [ + 498, + 499, + 500 + ] + }, + { + "teal": 583, + "source": 120, + "pc": [ + 501 + ] + }, + { + "teal": 584, + "source": 120, + "pc": [ + 502 + ] + }, + { + "teal": 585, + "source": 119, + "pc": [ + 503 + ] + }, + { + "teal": 590, + "source": 123, + "pc": [ + 504, + 505, + 506 + ] + }, + { + "teal": 591, + "source": 123, + "pc": [ + 507 + ] + }, + { + "teal": 592, + "source": 123, + "pc": [ + 508 + ] + }, + { + "teal": 596, + "source": 123, + "pc": [ + 509, + 510, + 511 + ] + }, + { + "teal": 600, + "source": 124, + "pc": [ + 512 + ] + }, + { + "teal": 601, + "source": 124, + "pc": [ + 513 + ] + }, + { + "teal": 602, + "source": 124, + "pc": [ + 514 + ] + }, + { + "teal": 603, + "source": 124, + "pc": [ + 515 + ] + }, + { + "teal": 604, + "source": 124, + "pc": [ + 516 + ] + }, + { + "teal": 605, + "source": 123, + "pc": [ + 517 + ] + }, + { + "teal": 610, + "source": 127, + "pc": [ + 518, + 519, + 520 + ] + }, + { + "teal": 611, + "source": 127, + "pc": [ + 521 + ] + }, + { + "teal": 612, + "source": 127, + "pc": [ + 522 + ] + }, + { + "teal": 616, + "source": 127, + "pc": [ + 523, + 524, + 525 + ] + }, + { + "teal": 620, + "source": 128, + "pc": [ + 526 + ] + }, + { + "teal": 621, + "source": 128, + "pc": [ + 527 + ] + }, + { + "teal": 622, + "source": 128, + "pc": [ + 528 + ] + }, + { + "teal": 623, + "source": 128, + "pc": [ + 529 + ] + }, + { + "teal": 624, + "source": 127, + "pc": [ + 530 + ] + }, + { + "teal": 629, + "source": 131, + "pc": [ + 531, + 532, + 533 + ] + }, + { + "teal": 630, + "source": 131, + "pc": [ + 534 + ] + }, + { + "teal": 631, + "source": 131, + "pc": [ + 535 + ] + }, + { + "teal": 635, + "source": 131, + "pc": [ + 536, + 537, + 538 + ] + }, + { + "teal": 639, + "source": 132, + "pc": [ + 539 + ] + }, + { + "teal": 640, + "source": 132, + "pc": [ + 540 + ] + }, + { + "teal": 641, + "source": 132, + "pc": [ + 541 + ] + }, + { + "teal": 642, + "source": 132, + "pc": [ + 542 + ] + }, + { + "teal": 643, + "source": 131, + "pc": [ + 543 + ] + }, + { + "teal": 648, + "source": 135, + "pc": [ + 544 + ] + }, + { + "teal": 651, + "source": 135, + "pc": [ + 545, + 546, + 547 + ] + }, + { + "teal": 652, + "source": 135, + "pc": [ + 548 + ] + }, + { + "teal": 653, + "source": 135, + "pc": [ + 549 + ] + }, + { + "teal": 654, + "source": 135, + "pc": [ + 550 + ] + }, + { + "teal": 655, + "source": 135, + "pc": [ + 551 + ] + }, + { + "teal": 656, + "source": 135, + "pc": [ + 552 + ] + }, + { + "teal": 660, + "source": 135, + "pc": [ + 553, + 554, + 555 + ] + }, + { + "teal": 664, + "source": 136, + "pc": [ + 556 + ] + }, + { + "teal": 665, + "source": 136, + "pc": [ + 557 + ] + }, + { + "teal": 668, + "source": 136, + "errorMessage": "box value does not exist: this.boxKey.size", + "pc": [ + 558 + ] + }, + { + "teal": 669, + "source": 135, + "pc": [ + 559 + ] + }, + { + "teal": 674, + "source": 139, + "pc": [ + 560 + ] + }, + { + "teal": 677, + "source": 139, + "pc": [ + 561, + 562, + 563 + ] + }, + { + "teal": 678, + "source": 139, + "pc": [ + 564 + ] + }, + { + "teal": 679, + "source": 139, + "pc": [ + 565 + ] + }, + { + "teal": 680, + "source": 139, + "pc": [ + 566 + ] + }, + { + "teal": 681, + "source": 139, + "pc": [ + 567 + ] + }, + { + "teal": 682, + "source": 139, + "pc": [ + 568 + ] + }, + { + "teal": 686, + "source": 139, + "pc": [ + 569, + 570, + 571 + ] + }, + { + "teal": 690, + "source": 140, + "pc": [ + 572 + ] + }, + { + "teal": 691, + "source": 140, + "pc": [ + 573 + ] + }, + { + "teal": 694, + "source": 140, + "errorMessage": "box value does not exist: this.boxMap('bar').size", + "pc": [ + 574 + ] + }, + { + "teal": 695, + "source": 139, + "pc": [ + 575 + ] + }, + { + "teal": 700, + "source": 143, + "pc": [ + 576, + 577, + 578 + ] + }, + { + "teal": 701, + "source": 143, + "pc": [ + 579 + ] + }, + { + "teal": 702, + "source": 143, + "pc": [ + 580 + ] + }, + { + "teal": 706, + "source": 143, + "pc": [ + 581, + 582, + 583 + ] + }, + { + "teal": 710, + "source": 144, + "pc": [ + 584 + ] + }, + { + "teal": 711, + "source": 144, + "pc": [ + 585 + ] + }, + { + "teal": 712, + "source": 144, + "pc": [ + 586, + 587 + ] + }, + { + "teal": 713, + "source": 144, + "pc": [ + 588 + ] + }, + { + "teal": 714, + "source": 143, + "pc": [ + 589 + ] + }, + { + "teal": 719, + "source": 147, + "pc": [ + 590, + 591, + 592 + ] + }, + { + "teal": 720, + "source": 147, + "pc": [ + 593 + ] + }, + { + "teal": 721, + "source": 147, + "pc": [ + 594 + ] + }, + { + "teal": 725, + "source": 147, + "pc": [ + 595, + 596, + 597 + ] + }, + { + "teal": 729, + "source": 148, + "pc": [ + 598 + ] + }, + { + "teal": 730, + "source": 148, + "pc": [ + 599 + ] + }, + { + "teal": 731, + "source": 148, + "pc": [ + 600, + 601 + ] + }, + { + "teal": 732, + "source": 148, + "pc": [ + 602 + ] + }, + { + "teal": 733, + "source": 147, + "pc": [ + 603 + ] + }, + { + "teal": 738, + "source": 151, + "pc": [ + 604 + ] + }, + { + "teal": 741, + "source": 151, + "pc": [ + 605, + 606, + 607 + ] + }, + { + "teal": 742, + "source": 151, + "pc": [ + 608 + ] + }, + { + "teal": 743, + "source": 151, + "pc": [ + 609 + ] + }, + { + "teal": 744, + "source": 151, + "pc": [ + 610 + ] + }, + { + "teal": 745, + "source": 151, + "pc": [ + 611, + 612, + 613 + ] + }, + { + "teal": 746, + "source": 151, + "pc": [ + 614 + ] + }, + { + "teal": 747, + "source": 151, + "pc": [ + 615 + ] + }, + { + "teal": 748, + "source": 151, + "pc": [ + 616 + ] + }, + { + "teal": 749, + "source": 151, + "pc": [ + 617 + ] + }, + { + "teal": 750, + "source": 151, + "pc": [ + 618 + ] + }, + { + "teal": 751, + "source": 151, + "pc": [ + 619 + ] + }, + { + "teal": 755, + "source": 151, + "pc": [ + 620, + 621, + 622 + ] + }, + { + "teal": 759, + "source": 152, + "pc": [ + 623 + ] + }, + { + "teal": 760, + "source": 152, + "pc": [ + 624 + ] + }, + { + "teal": 761, + "source": 152, + "pc": [ + 625, + 626 + ] + }, + { + "teal": 762, + "source": 152, + "pc": [ + 627 + ] + }, + { + "teal": 763, + "source": 151, + "pc": [ + 628 + ] + }, + { + "teal": 768, + "source": 155, + "pc": [ + 629 + ] + }, + { + "teal": 771, + "source": 155, + "pc": [ + 630, + 631, + 632 + ] + }, + { + "teal": 772, + "source": 155, + "pc": [ + 633 + ] + }, + { + "teal": 773, + "source": 155, + "pc": [ + 634 + ] + }, + { + "teal": 774, + "source": 155, + "pc": [ + 635 + ] + }, + { + "teal": 775, + "source": 155, + "pc": [ + 636, + 637, + 638 + ] + }, + { + "teal": 776, + "source": 155, + "pc": [ + 639 + ] + }, + { + "teal": 777, + "source": 155, + "pc": [ + 640 + ] + }, + { + "teal": 778, + "source": 155, + "pc": [ + 641 + ] + }, + { + "teal": 779, + "source": 155, + "pc": [ + 642 + ] + }, + { + "teal": 780, + "source": 155, + "pc": [ + 643 + ] + }, + { + "teal": 781, + "source": 155, + "pc": [ + 644 + ] + }, + { + "teal": 785, + "source": 155, + "pc": [ + 645, + 646, + 647 + ] + }, + { + "teal": 789, + "source": 156, + "pc": [ + 648 + ] + }, + { + "teal": 790, + "source": 156, + "pc": [ + 649 + ] + }, + { + "teal": 791, + "source": 156, + "pc": [ + 650, + 651 + ] + }, + { + "teal": 792, + "source": 156, + "pc": [ + 652 + ] + }, + { + "teal": 793, + "source": 155, + "pc": [ + 653 + ] + }, + { + "teal": 798, + "source": 159, + "pc": [ + 654 + ] + }, + { + "teal": 801, + "source": 159, + "pc": [ + 655, + 656, + 657 + ] + }, + { + "teal": 802, + "source": 159, + "pc": [ + 658, + 659, + 660 + ] + }, + { + "teal": 803, + "source": 159, + "pc": [ + 661 + ] + }, + { + "teal": 804, + "source": 159, + "pc": [ + 662, + 663 + ] + }, + { + "teal": 805, + "source": 159, + "pc": [ + 664 + ] + }, + { + "teal": 806, + "source": 159, + "pc": [ + 665 + ] + }, + { + "teal": 807, + "source": 159, + "pc": [ + 666 + ] + }, + { + "teal": 808, + "source": 159, + "pc": [ + 667 + ] + }, + { + "teal": 809, + "source": 159, + "pc": [ + 668 + ] + }, + { + "teal": 813, + "source": 159, + "pc": [ + 669, + 670, + 671 + ] + }, + { + "teal": 817, + "source": 160, + "pc": [ + 672, + 673 + ] + }, + { + "teal": 818, + "source": 160, + "pc": [ + 674, + 675, + 676 + ] + }, + { + "teal": 819, + "source": 160, + "pc": [ + 677 + ] + }, + { + "teal": 820, + "source": 159, + "pc": [ + 678 + ] + }, + { + "teal": 825, + "source": 163, + "pc": [ + 679, + 680, + 681 + ] + }, + { + "teal": 826, + "source": 163, + "pc": [ + 682 + ] + }, + { + "teal": 827, + "source": 163, + "pc": [ + 683 + ] + }, + { + "teal": 831, + "source": 163, + "pc": [ + 684, + 685, + 686 + ] + }, + { + "teal": 835, + "source": 164, + "pc": [ + 687, + 688, + 689 + ] + }, + { + "teal": 836, + "source": 164, + "pc": [ + 690 + ] + }, + { + "teal": 837, + "source": 164, + "pc": [ + 691 + ] + }, + { + "teal": 840, + "source": 164, + "errorMessage": "global state value does not exist: this.app.globalState('foo')", + "pc": [ + 692 + ] + }, + { + "teal": 841, + "source": 164, + "pc": [ + 693 + ] + }, + { + "teal": 842, + "source": 163, + "pc": [ + 694 + ] + }, + { + "teal": 847, + "source": 167, + "pc": [ + 695, + 696, + 697 + ] + }, + { + "teal": 848, + "source": 167, + "pc": [ + 698 + ] + }, + { + "teal": 849, + "source": 167, + "pc": [ + 699 + ] + }, + { + "teal": 853, + "source": 167, + "pc": [ + 700, + 701, + 702 + ] + }, + { + "teal": 857, + "source": 168, + "pc": [ + 703, + 704 + ] + }, + { + "teal": 858, + "source": 168, + "pc": [ + 705, + 706, + 707 + ] + }, + { + "teal": 859, + "source": 168, + "pc": [ + 708 + ] + }, + { + "teal": 860, + "source": 168, + "pc": [ + 709 + ] + }, + { + "teal": 863, + "source": 168, + "errorMessage": "local state value does not exist: this.app.localState(this.txn.sender, 'foo')", + "pc": [ + 710 + ] + }, + { + "teal": 864, + "source": 168, + "pc": [ + 711 + ] + }, + { + "teal": 865, + "source": 167, + "pc": [ + 712 + ] + }, + { + "teal": 870, + "source": 171, + "pc": [ + 713 + ] + }, + { + "teal": 873, + "source": 171, + "pc": [ + 714, + 715, + 716 + ] + }, + { + "teal": 874, + "source": 171, + "pc": [ + 717 + ] + }, + { + "teal": 875, + "source": 171, + "pc": [ + 718 + ] + }, + { + "teal": 876, + "source": 171, + "pc": [ + 719 + ] + }, + { + "teal": 877, + "source": 171, + "pc": [ + 720, + 721 + ] + }, + { + "teal": 878, + "source": 171, + "pc": [ + 722 + ] + }, + { + "teal": 881, + "source": 171, + "errorMessage": "accessStaticValueInLargeBox return value overflowed 16 bits", + "pc": [ + 723 + ] + }, + { + "teal": 882, + "source": 171, + "pc": [ + 724, + 725, + 726 + ] + }, + { + "teal": 883, + "source": 171, + "pc": [ + 727 + ] + }, + { + "teal": 884, + "source": 171, + "pc": [ + 728 + ] + }, + { + "teal": 885, + "source": 171, + "pc": [ + 729 + ] + }, + { + "teal": 886, + "source": 171, + "pc": [ + 730 + ] + }, + { + "teal": 890, + "source": 171, + "pc": [ + 731, + 732, + 733 + ] + }, + { + "teal": 894, + "source": 172, + "pc": [ + 734 + ] + }, + { + "teal": 895, + "source": 172, + "pc": [ + 735, + 736 + ] + }, + { + "teal": 896, + "source": 172, + "pc": [ + 737 + ] + }, + { + "teal": 897, + "source": 172, + "pc": [ + 738 + ] + }, + { + "teal": 901, + "source": 173, + "pc": [ + 739 + ] + }, + { + "teal": 902, + "source": 173, + "pc": [ + 740, + 741 + ] + }, + { + "teal": 903, + "source": 173, + "pc": [ + 742, + 743 + ] + }, + { + "teal": 904, + "source": 173, + "pc": [ + 744 + ] + }, + { + "teal": 908, + "source": 175, + "pc": [ + 745 + ] + }, + { + "teal": 909, + "source": 175, + "pc": [ + 746, + 747 + ] + }, + { + "teal": 910, + "source": 175, + "pc": [ + 748, + 749 + ] + }, + { + "teal": 911, + "source": 175, + "pc": [ + 750 + ] + }, + { + "teal": 912, + "source": 175, + "pc": [ + 751 + ] + }, + { + "teal": 913, + "source": 171, + "pc": [ + 752 + ] + }, + { + "teal": 918, + "source": 178, + "pc": [ + 753 + ] + }, + { + "teal": 921, + "source": 178, + "pc": [ + 754, + 755, + 756 + ] + }, + { + "teal": 922, + "source": 178, + "pc": [ + 757 + ] + }, + { + "teal": 925, + "source": 178, + "pc": [ + 758, + 759, + 760 + ] + }, + { + "teal": 926, + "source": 178, + "pc": [ + 761 + ] + }, + { + "teal": 927, + "source": 178, + "pc": [ + 762 + ] + }, + { + "teal": 928, + "source": 178, + "pc": [ + 763 + ] + }, + { + "teal": 929, + "source": 178, + "pc": [ + 764, + 765 + ] + }, + { + "teal": 930, + "source": 178, + "pc": [ + 766 + ] + }, + { + "teal": 933, + "source": 178, + "errorMessage": "dynamicAccessStaticValueInLargeBox return value overflowed 16 bits", + "pc": [ + 767 + ] + }, + { + "teal": 934, + "source": 178, + "pc": [ + 768, + 769, + 770 + ] + }, + { + "teal": 935, + "source": 178, + "pc": [ + 771 + ] + }, + { + "teal": 936, + "source": 178, + "pc": [ + 772 + ] + }, + { + "teal": 937, + "source": 178, + "pc": [ + 773 + ] + }, + { + "teal": 938, + "source": 178, + "pc": [ + 774 + ] + }, + { + "teal": 942, + "source": 178, + "pc": [ + 775, + 776, + 777 + ] + }, + { + "teal": 946, + "source": 179, + "pc": [ + 778 + ] + }, + { + "teal": 947, + "source": 179, + "pc": [ + 779, + 780 + ] + }, + { + "teal": 948, + "source": 179, + "pc": [ + 781 + ] + }, + { + "teal": 949, + "source": 179, + "pc": [ + 782 + ] + }, + { + "teal": 953, + "source": 180, + "pc": [ + 783, + 784 + ] + }, + { + "teal": 954, + "source": 180, + "pc": [ + 785, + 786 + ] + }, + { + "teal": 955, + "source": 180, + "pc": [ + 787 + ] + }, + { + "teal": 956, + "source": 180, + "pc": [ + 788, + 789 + ] + }, + { + "teal": 957, + "source": 180, + "pc": [ + 790 + ] + }, + { + "teal": 958, + "source": 180, + "pc": [ + 791, + 792 + ] + }, + { + "teal": 959, + "source": 180, + "pc": [ + 793 + ] + }, + { + "teal": 963, + "source": 184, + "pc": [ + 794, + 795 + ] + }, + { + "teal": 964, + "source": 184, + "pc": [ + 796, + 797 + ] + }, + { + "teal": 965, + "source": 184, + "pc": [ + 798 + ] + }, + { + "teal": 966, + "source": 184, + "pc": [ + 799, + 800 + ] + }, + { + "teal": 967, + "source": 182, + "pc": [ + 801 + ] + }, + { + "teal": 968, + "source": 182, + "pc": [ + 802, + 803 + ] + }, + { + "teal": 969, + "source": 182, + "pc": [ + 804 + ] + }, + { + "teal": 970, + "source": 184, + "pc": [ + 805 + ] + }, + { + "teal": 971, + "source": 178, + "pc": [ + 806 + ] + }, + { + "teal": 976, + "source": 187, + "pc": [ + 807, + 808, + 809 + ] + }, + { + "teal": 977, + "source": 187, + "pc": [ + 810 + ] + }, + { + "teal": 978, + "source": 187, + "pc": [ + 811 + ] + }, + { + "teal": 982, + "source": 187, + "pc": [ + 812, + 813, + 814 + ] + }, + { + "teal": 986, + "source": 188, + "pc": [ + 815 + ] + }, + { + "teal": 987, + "source": 188, + "pc": [ + 816 + ] + }, + { + "teal": 988, + "source": 188, + "pc": [ + 817 + ] + }, + { + "teal": 992, + "source": 189, + "pc": [ + 818 + ] + }, + { + "teal": 993, + "source": 189, + "pc": [ + 819 + ] + }, + { + "teal": 994, + "source": 189, + "pc": [ + 820 + ] + }, + { + "teal": 995, + "source": 187, + "pc": [ + 821 + ] + }, + { + "teal": 1000, + "source": 192, + "pc": [ + 822, + 823, + 824 + ] + }, + { + "teal": 1001, + "source": 192, + "pc": [ + 825 + ] + }, + { + "teal": 1002, + "source": 192, + "pc": [ + 826 + ] + }, + { + "teal": 1006, + "source": 192, + "pc": [ + 827, + 828, + 829 + ] + }, + { + "teal": 1010, + "source": 193, + "pc": [ + 830 + ] + }, + { + "teal": 1011, + "source": 193, + "pc": [ + 831 + ] + }, + { + "teal": 1012, + "source": 193, + "pc": [ + 832 + ] + }, + { + "teal": 1013, + "source": 193, + "pc": [ + 833, + 834 + ] + }, + { + "teal": 1014, + "source": 193, + "pc": [ + 835 + ] + }, + { + "teal": 1018, + "source": 194, + "pc": [ + 836 + ] + }, + { + "teal": 1019, + "source": 194, + "pc": [ + 837 + ] + }, + { + "teal": 1020, + "source": 194, + "pc": [ + 838 + ] + }, + { + "teal": 1021, + "source": 194, + "pc": [ + 839, + 840 + ] + }, + { + "teal": 1022, + "source": 194, + "pc": [ + 841 + ] + }, + { + "teal": 1023, + "source": 192, + "pc": [ + 842 + ] + }, + { + "teal": 1028, + "source": 197, + "pc": [ + 843, + 844, + 845 + ] + }, + { + "teal": 1029, + "source": 197, + "pc": [ + 846 + ] + }, + { + "teal": 1030, + "source": 197, + "pc": [ + 847 + ] + }, + { + "teal": 1034, + "source": 197, + "pc": [ + 848, + 849, + 850 + ] + }, + { + "teal": 1038, + "source": 198, + "pc": [ + 851, + 852, + 853 + ] + }, + { + "teal": 1039, + "source": 198, + "pc": [ + 854 + ] + }, + { + "teal": 1040, + "source": 198, + "pc": [ + 855 + ] + }, + { + "teal": 1041, + "source": 198, + "pc": [ + 856 + ] + }, + { + "teal": 1042, + "source": 198, + "pc": [ + 857 + ] + }, + { + "teal": 1043, + "source": 198, + "pc": [ + 858 + ] + }, + { + "teal": 1047, + "source": 199, + "pc": [ + 859, + 860 + ] + }, + { + "teal": 1048, + "source": 199, + "pc": [ + 861, + 862, + 863 + ] + }, + { + "teal": 1049, + "source": 199, + "pc": [ + 864 + ] + }, + { + "teal": 1050, + "source": 199, + "pc": [ + 865 + ] + }, + { + "teal": 1051, + "source": 199, + "pc": [ + 866 + ] + }, + { + "teal": 1052, + "source": 199, + "pc": [ + 867 + ] + }, + { + "teal": 1053, + "source": 199, + "pc": [ + 868 + ] + }, + { + "teal": 1054, + "source": 197, + "pc": [ + 869 + ] + }, + { + "teal": 1057, + "source": 4, + "pc": [ + 870 + ] + }, + { + "teal": 1058, + "source": 4, + "pc": [ + 871 + ] + }, + { + "teal": 1061, + "source": 4, + "pc": [ + 872, + 873, + 874, + 875, + 876, + 877 + ] + }, + { + "teal": 1062, + "source": 4, + "pc": [ + 878, + 879, + 880 + ] + }, + { + "teal": 1063, + "source": 4, + "pc": [ + 881, + 882, + 883, + 884 + ] + }, + { + "teal": 1066, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "pc": [ + 885 + ] + }, + { + "teal": 1069, + "source": 4, + "pc": [ + 886, + 887, + 888, + 889, + 890, + 891 + ] + }, + { + "teal": 1070, + "source": 4, + "pc": [ + 892, + 893, + 894, + 895, + 896, + 897 + ] + }, + { + "teal": 1071, + "source": 4, + "pc": [ + 898, + 899, + 900, + 901, + 902, + 903 + ] + }, + { + "teal": 1072, + "source": 4, + "pc": [ + 904, + 905, + 906, + 907, + 908, + 909 + ] + }, + { + "teal": 1073, + "source": 4, + "pc": [ + 910, + 911, + 912, + 913, + 914, + 915 + ] + }, + { + "teal": 1074, + "source": 4, + "pc": [ + 916, + 917, + 918, + 919, + 920, + 921 + ] + }, + { + "teal": 1075, + "source": 4, + "pc": [ + 922, + 923, + 924, + 925, + 926, + 927 + ] + }, + { + "teal": 1076, + "source": 4, + "pc": [ + 928, + 929, + 930, + 931, + 932, + 933 + ] + }, + { + "teal": 1077, + "source": 4, + "pc": [ + 934, + 935, + 936, + 937, + 938, + 939 + ] + }, + { + "teal": 1078, + "source": 4, + "pc": [ + 940, + 941, + 942, + 943, + 944, + 945 + ] + }, + { + "teal": 1079, + "source": 4, + "pc": [ + 946, + 947, + 948, + 949, + 950, + 951 + ] + }, + { + "teal": 1080, + "source": 4, + "pc": [ + 952, + 953, + 954, + 955, + 956, + 957 + ] + }, + { + "teal": 1081, + "source": 4, + "pc": [ + 958, + 959, + 960, + 961, + 962, + 963 + ] + }, + { + "teal": 1082, + "source": 4, + "pc": [ + 964, + 965, + 966, + 967, + 968, + 969 + ] + }, + { + "teal": 1083, + "source": 4, + "pc": [ + 970, + 971, + 972, + 973, + 974, + 975 + ] + }, + { + "teal": 1084, + "source": 4, + "pc": [ + 976, + 977, + 978, + 979, + 980, + 981 + ] + }, + { + "teal": 1085, + "source": 4, + "pc": [ + 982, + 983, + 984, + 985, + 986, + 987 + ] + }, + { + "teal": 1086, + "source": 4, + "pc": [ + 988, + 989, + 990, + 991, + 992, + 993 + ] + }, + { + "teal": 1087, + "source": 4, + "pc": [ + 994, + 995, + 996, + 997, + 998, + 999 + ] + }, + { + "teal": 1088, + "source": 4, + "pc": [ + 1000, + 1001, + 1002, + 1003, + 1004, + 1005 + ] + }, + { + "teal": 1089, + "source": 4, + "pc": [ + 1006, + 1007, + 1008, + 1009, + 1010, + 1011 + ] + }, + { + "teal": 1090, + "source": 4, + "pc": [ + 1012, + 1013, + 1014, + 1015, + 1016, + 1017 + ] + }, + { + "teal": 1091, + "source": 4, + "pc": [ + 1018, + 1019, + 1020, + 1021, + 1022, + 1023 + ] + }, + { + "teal": 1092, + "source": 4, + "pc": [ + 1024, + 1025, + 1026, + 1027, + 1028, + 1029 + ] + }, + { + "teal": 1093, + "source": 4, + "pc": [ + 1030, + 1031, + 1032, + 1033, + 1034, + 1035 + ] + }, + { + "teal": 1094, + "source": 4, + "pc": [ + 1036, + 1037, + 1038, + 1039, + 1040, + 1041 + ] + }, + { + "teal": 1095, + "source": 4, + "pc": [ + 1042, + 1043, + 1044, + 1045, + 1046, + 1047 + ] + }, + { + "teal": 1096, + "source": 4, + "pc": [ + 1048, + 1049, + 1050, + 1051, + 1052, + 1053 + ] + }, + { + "teal": 1097, + "source": 4, + "pc": [ + 1054, + 1055, + 1056, + 1057, + 1058, + 1059 + ] + }, + { + "teal": 1098, + "source": 4, + "pc": [ + 1060, + 1061, + 1062, + 1063, + 1064, + 1065 + ] + }, + { + "teal": 1099, + "source": 4, + "pc": [ + 1066, + 1067, + 1068, + 1069, + 1070, + 1071 + ] + }, + { + "teal": 1100, + "source": 4, + "pc": [ + 1072, + 1073, + 1074, + 1075, + 1076, + 1077 + ] + }, + { + "teal": 1101, + "source": 4, + "pc": [ + 1078, + 1079, + 1080, + 1081, + 1082, + 1083 + ] + }, + { + "teal": 1102, + "source": 4, + "pc": [ + 1084, + 1085, + 1086, + 1087, + 1088, + 1089 + ] + }, + { + "teal": 1103, + "source": 4, + "pc": [ + 1090, + 1091, + 1092, + 1093, + 1094, + 1095 + ] + }, + { + "teal": 1104, + "source": 4, + "pc": [ + 1096, + 1097, + 1098, + 1099, + 1100, + 1101 + ] + }, + { + "teal": 1105, + "source": 4, + "pc": [ + 1102, + 1103, + 1104, + 1105, + 1106, + 1107 + ] + }, + { + "teal": 1106, + "source": 4, + "pc": [ + 1108, + 1109, + 1110, + 1111, + 1112, + 1113 + ] + }, + { + "teal": 1107, + "source": 4, + "pc": [ + 1114, + 1115, + 1116, + 1117, + 1118, + 1119 + ] + }, + { + "teal": 1108, + "source": 4, + "pc": [ + 1120, + 1121, + 1122, + 1123, + 1124, + 1125 + ] + }, + { + "teal": 1109, + "source": 4, + "pc": [ + 1126, + 1127, + 1128, + 1129, + 1130, + 1131 + ] + }, + { + "teal": 1110, + "source": 4, + "pc": [ + 1132, + 1133, + 1134 + ] + }, + { + "teal": 1111, + "source": 4, + "pc": [ + 1135, + 1136, + 1137, + 1138, + 1139, + 1140, + 1141, + 1142, + 1143, + 1144, + 1145, + 1146, + 1147, + 1148, + 1149, + 1150, + 1151, + 1152, + 1153, + 1154, + 1155, + 1156, + 1157, + 1158, + 1159, + 1160, + 1161, + 1162, + 1163, + 1164, + 1165, + 1166, + 1167, + 1168, + 1169, + 1170, + 1171, + 1172, + 1173, + 1174, + 1175, + 1176, + 1177, + 1178, + 1179, + 1180, + 1181, + 1182, + 1183, + 1184, + 1185, + 1186, + 1187, + 1188, + 1189, + 1190, + 1191, + 1192, + 1193, + 1194, + 1195, + 1196, + 1197, + 1198, + 1199, + 1200, + 1201, + 1202, + 1203, + 1204, + 1205, + 1206, + 1207, + 1208, + 1209, + 1210, + 1211, + 1212, + 1213, + 1214, + 1215, + 1216, + 1217, + 1218 + ] + }, + { + "teal": 1114, + "source": 4, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "pc": [ + 1219 + ] + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcmVmaXgoKXZvaWQKKmFiaV9yb3V0ZV9wcmVmaXg6CgkvLyBleGVjdXRlIHByZWZpeCgpdm9pZAoJY2FsbHN1YiBwcmVmaXgKCWludCAxCglyZXR1cm4KCi8vIHByZWZpeCgpOiB2b2lkCnByZWZpeDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjYKCS8vIHRoaXMuYm94TWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjcKCS8vIHRoaXMuZ2xvYmFsTWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjgKCS8vIHRoaXMubG9jYWxNYXBXaXRoUHJlZml4KHRoaXMudHhuLnNlbmRlciwgJ29vJykudmFsdWUgPSAnYmFyJwoJdHhuIFNlbmRlcgoJYnl0ZSAweDY2NmY2ZgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBnbG9iYWxLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQ6CgkvLyBleGVjdXRlIGdsb2JhbEtleVB1dCgpdm9pZAoJY2FsbHN1YiBnbG9iYWxLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbEtleVB1dCgpOiB2b2lkCmdsb2JhbEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MzIKCS8vIHRoaXMuZ2xvYmFsS2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbEtleUdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5R2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5R2V0KCk6IHZvaWQKZ2xvYmFsS2V5R2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czozNgoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LnZhbHVlID09PSAnYmFyJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbEtleURlbGV0ZSgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleURlbGV0ZToKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RGVsZXRlKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleURlbGV0ZQoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RGVsZXRlKCk6IHZvaWQKZ2xvYmFsS2V5RGVsZXRlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0MAoJLy8gdGhpcy5nbG9iYWxLZXkuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZGVsCglyZXRzdWIKCi8vIGdsb2JhbEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RXhpc3RzKCk6IHZvaWQKZ2xvYmFsS2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbEtleVB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsS2V5UHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsS2V5UHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbEtleVB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxLZXlQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxLZXlQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjQ4CgkvLyB0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID0gJ2JhcicKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5R2V0OgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlHZXQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlHZXQoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUdldChhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUdldDoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTIKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsS2V5RGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleURlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleURlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTYKCS8vIHRoaXMubG9jYWxLZXkoYSkuZGVsZXRlKCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZGVsCglyZXRzdWIKCi8vIGxvY2FsS2V5RXhpc3RzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RXhpc3RzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlFeGlzdHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlFeGlzdHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUV4aXN0cyhhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUV4aXN0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjAKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlQdXQ6CgkvLyBleGVjdXRlIGJveEtleVB1dCgpdm9pZAoJY2FsbHN1YiBib3hLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVB1dCgpOiB2b2lkCmJveEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjQKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94S2V5R2V0KCl2b2lkCiphYmlfcm91dGVfYm94S2V5R2V0OgoJLy8gZXhlY3V0ZSBib3hLZXlHZXQoKXZvaWQKCWNhbGxzdWIgYm94S2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlHZXQoKTogdm9pZApib3hLZXlHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjY4CgkvLyBhc3NlcnQodGhpcy5ib3hLZXkudmFsdWUgPT09ICdiYXInKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5ib3hLZXkudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlEZWxldGU6CgkvLyBleGVjdXRlIGJveEtleURlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleURlbGV0ZSgpOiB2b2lkCmJveEtleURlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NzIKCS8vIHRoaXMuYm94S2V5LmRlbGV0ZSgpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZGVsCglyZXRzdWIKCi8vIGJveEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2JveEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgYm94S2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGJveEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gYm94S2V5RXhpc3RzKCk6IHZvaWQKYm94S2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo3NgoJLy8gYXNzZXJ0KHRoaXMuYm94S2V5LmV4aXN0cykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbE1hcFB1dCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwUHV0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwUHV0KCk6IHZvaWQKZ2xvYmFsTWFwUHV0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4MAoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbE1hcEdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcEdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwR2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwR2V0KCk6IHZvaWQKZ2xvYmFsTWFwR2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsTWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBnbG9iYWxNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxNYXBEZWxldGU6CgkvLyBleGVjdXRlIGdsb2JhbE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBnbG9iYWxNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbE1hcERlbGV0ZSgpOiB2b2lkCmdsb2JhbE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6ODgKCS8vIHRoaXMuZ2xvYmFsTWFwKCdmb28nKS5kZWxldGUoKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9kZWwKCXJldHN1YgoKLy8gZ2xvYmFsTWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZ2xvYmFsTWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBnbG9iYWxNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgZ2xvYmFsTWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBnbG9iYWxNYXBFeGlzdHMoKTogdm9pZApnbG9iYWxNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjkyCgkvLyBhc3NlcnQodGhpcy5nbG9iYWxNYXAoJ2ZvbycpLmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcFB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwUHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwUHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjk2CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS52YWx1ZSA9ICdiYXInCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBsb2NhbE1hcEdldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcEdldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwR2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBHZXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBHZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KHRoaXMubG9jYWxNYXAoYSwgJ2ZvbycpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsTWFwRGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsTWFwRGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxNYXBEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsTWFwRGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbE1hcERlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbE1hcERlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTA0CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5kZWxldGUoKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9sb2NhbF9kZWwKCXJldHN1YgoKLy8gbG9jYWxNYXBFeGlzdHMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbG9jYWxNYXBFeGlzdHM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBsb2NhbE1hcEV4aXN0cyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbG9jYWxNYXBFeGlzdHMKCWludCAxCglyZXR1cm4KCi8vIGxvY2FsTWFwRXhpc3RzKGE6IEFkZHJlc3MpOiB2b2lkCmxvY2FsTWFwRXhpc3RzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxMDgKCS8vIGFzc2VydCh0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5leGlzdHMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYm94TWFwUHV0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwUHV0OgoJLy8gZXhlY3V0ZSBib3hNYXBQdXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwUHV0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBQdXQoKTogdm9pZApib3hNYXBQdXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExMgoJLy8gdGhpcy5ib3hNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94TWFwR2V0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwR2V0OgoJLy8gZXhlY3V0ZSBib3hNYXBHZXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwR2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBHZXQoKTogdm9pZApib3hNYXBHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExNgoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnZm9vJykudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hNYXBEZWxldGU6CgkvLyBleGVjdXRlIGJveE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcERlbGV0ZSgpOiB2b2lkCmJveE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTIwCgkvLyB0aGlzLmJveE1hcCgnZm9vJykuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9kZWwKCXJldHN1YgoKLy8gYm94TWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfYm94TWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBib3hNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgYm94TWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBFeGlzdHMoKTogdm9pZApib3hNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS5leGlzdHMpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfbGVuCglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlDcmVhdGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlDcmVhdGU6CgkvLyBleGVjdXRlIGJveEtleUNyZWF0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlDcmVhdGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleUNyZWF0ZSgpOiB2b2lkCmJveEtleUNyZWF0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTI4CgkvLyB0aGlzLmJveEtleS5jcmVhdGUoMTAyNCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWludCAxMDI0Cglib3hfY3JlYXRlCglwb3AKCXJldHN1YgoKLy8gYm94TWFwQ3JlYXRlKCl2b2lkCiphYmlfcm91dGVfYm94TWFwQ3JlYXRlOgoJLy8gZXhlY3V0ZSBib3hNYXBDcmVhdGUoKXZvaWQKCWNhbGxzdWIgYm94TWFwQ3JlYXRlCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBDcmVhdGUoKTogdm9pZApib3hNYXBDcmVhdGU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEzMgoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLmNyZWF0ZSgxMDI0KQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDEwMjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBib3hLZXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveEtleUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hLZXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlMZW5ndGgoKTogdWludDY0CmJveEtleUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTM2CgkvLyByZXR1cm4gdGhpcy5ib3hLZXkuc2l6ZTsKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnNpemUKCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveE1hcExlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hNYXBMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hNYXBMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBMZW5ndGgoKTogdWludDY0CmJveE1hcExlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTQwCgkvLyByZXR1cm4gdGhpcy5ib3hNYXAoJ2JhcicpLnNpemU7CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnYmFyJykuc2l6ZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJveEtleVJlcGxhY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlSZXBsYWNlOgoJLy8gZXhlY3V0ZSBib3hLZXlSZXBsYWNlKCl2b2lkCgljYWxsc3ViIGJveEtleVJlcGxhY2UKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVJlcGxhY2UoKTogdm9pZApib3hLZXlSZXBsYWNlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNDQKCS8vIHRoaXMuYm94S2V5LnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94TWFwUmVwbGFjZSgpdm9pZAoqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2U6CgkvLyBleGVjdXRlIGJveE1hcFJlcGxhY2UoKXZvaWQKCWNhbGxzdWIgYm94TWFwUmVwbGFjZQoJaW50IDEKCXJldHVybgoKLy8gYm94TWFwUmVwbGFjZSgpOiB2b2lkCmJveE1hcFJlcGxhY2U6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE0OAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94S2V5RXh0cmFjdCgpc3RyaW5nCiphYmlfcm91dGVfYm94S2V5RXh0cmFjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlFeHRyYWN0KClzdHJpbmcKCWNhbGxzdWIgYm94S2V5RXh0cmFjdAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlFeHRyYWN0KCk6IHN0cmluZwpib3hLZXlFeHRyYWN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNTIKCS8vIHJldHVybiB0aGlzLmJveEtleS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBib3hNYXBFeHRyYWN0KClzdHJpbmcKKmFiaV9yb3V0ZV9ib3hNYXBFeHRyYWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveE1hcEV4dHJhY3QoKXN0cmluZwoJY2FsbHN1YiBib3hNYXBFeHRyYWN0CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcEV4dHJhY3QoKTogc3RyaW5nCmJveE1hcEV4dHJhY3Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE1NgoJLy8gcmV0dXJuIHRoaXMuYm94TWFwKCdiYXInKS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBpc09wdGVkSW4oKWJvb2wKKmFiaV9yb3V0ZV9pc09wdGVkSW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgaXNPcHRlZEluKClib29sCgljYWxsc3ViIGlzT3B0ZWRJbgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpc09wdGVkSW4oKTogYm9vbGVhbgppc09wdGVkSW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2MAoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlci5pc09wdGVkSW5Ub0FwcCh0aGlzLmFwcCk7Cgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfb3B0ZWRfaW4KCXJldHN1YgoKLy8gZXhHbG9iYWwoKXZvaWQKKmFiaV9yb3V0ZV9leEdsb2JhbDoKCS8vIGV4ZWN1dGUgZXhHbG9iYWwoKXZvaWQKCWNhbGxzdWIgZXhHbG9iYWwKCWludCAxCglyZXR1cm4KCi8vIGV4R2xvYmFsKCk6IHZvaWQKZXhHbG9iYWw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2NAoJLy8gbG9nKHRoaXMuYXBwLmdsb2JhbFN0YXRlKCdmb28nKSBhcyBieXRlcykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5nbG9iYWxTdGF0ZSgnZm9vJykKCWFzc2VydAoJbG9nCglyZXRzdWIKCi8vIGV4TG9jYWwoKXZvaWQKKmFiaV9yb3V0ZV9leExvY2FsOgoJLy8gZXhlY3V0ZSBleExvY2FsKCl2b2lkCgljYWxsc3ViIGV4TG9jYWwKCWludCAxCglyZXR1cm4KCi8vIGV4TG9jYWwoKTogdm9pZApleExvY2FsOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNjgKCS8vIGxvZyh0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpIGFzIGJ5dGVzKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoKCS8vIGxvY2FsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpCglhc3NlcnQKCWxvZwoJcmV0c3ViCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3gKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gYWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKTogdWludDE2CmFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTcyCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC5jcmVhdGUoKQoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJaW50IDgwMDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTczCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC52YWx1ZVsxMjNdID0gNDU2CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglieXRlIDB4MDFjOAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE3NQoJLy8gcmV0dXJuIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlWzEyM107CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglpbnQgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCh1aW50NjQpdWludDE2CiphYmlfcm91dGVfZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYKCWNhbGxzdWIgZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KGk6IHVpbnQ2NCk6IHVpbnQxNgpkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNzkKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LmNyZWF0ZSgpCglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgODAwMAoJYm94X2NyZWF0ZQoJcG9wCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxODAKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlW2ldID0gNDU2CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDFjOAoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4NAoJLy8gcmV0dXJuIGFbaV07CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMgoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gYm94UmVzaXplKCl2b2lkCiphYmlfcm91dGVfYm94UmVzaXplOgoJLy8gZXhlY3V0ZSBib3hSZXNpemUoKXZvaWQKCWNhbGxzdWIgYm94UmVzaXplCglpbnQgMQoJcmV0dXJuCgovLyBib3hSZXNpemUoKTogdm9pZApib3hSZXNpemU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4OAoJLy8gdGhpcy5ib3hLZXkucmVzaXplKDEwMjQpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTg5CgkvLyB0aGlzLmJveE1hcCgnYmFyJykucmVzaXplKDEwMjQpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoJcmV0c3ViCgovLyBib3hTcGxpY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hTcGxpY2U6CgkvLyBleGVjdXRlIGJveFNwbGljZSgpdm9pZAoJY2FsbHN1YiBib3hTcGxpY2UKCWludCAxCglyZXR1cm4KCi8vIGJveFNwbGljZSgpOiB2b2lkCmJveFNwbGljZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTkzCgkvLyB0aGlzLmJveEtleS5zcGxpY2UoMCwgMSwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJaW50IDEKCWJ5dGUgMHg2MTYyNjMgLy8gImFiYyIKCWJveF9zcGxpY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnNwbGljZSgwLCAxLCAnYWJjJykKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWludCAwCglpbnQgMQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3NwbGljZQoJcmV0c3ViCgovLyBleFN0YXRlRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZXhTdGF0ZUV4aXN0czoKCS8vIGV4ZWN1dGUgZXhTdGF0ZUV4aXN0cygpdm9pZAoJY2FsbHN1YiBleFN0YXRlRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBleFN0YXRlRXhpc3RzKCk6IHZvaWQKZXhTdGF0ZUV4aXN0czoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTk4CgkvLyBhc3NlcnQodGhpcy5hcHAuZ2xvYmFsU3RhdGVFeGlzdHMoJ2ZvbycpKQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9nZXRfZXgKCXN3YXAKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxOTkKCS8vIGFzc2VydCh0aGlzLmFwcC5sb2NhbFN0YXRlRXhpc3RzKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInByZWZpeCgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5UHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxLZXlHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbEtleURlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5RXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbEtleUV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveEtleVB1dCgpdm9pZCIKCW1ldGhvZCAiYm94S2V5R2V0KCl2b2lkIgoJbWV0aG9kICJib3hLZXlEZWxldGUoKXZvaWQiCgltZXRob2QgImJveEtleUV4aXN0cygpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwUHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxNYXBHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbE1hcERlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwRXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveE1hcFB1dCgpdm9pZCIKCW1ldGhvZCAiYm94TWFwR2V0KCl2b2lkIgoJbWV0aG9kICJib3hNYXBEZWxldGUoKXZvaWQiCgltZXRob2QgImJveE1hcEV4aXN0cygpdm9pZCIKCW1ldGhvZCAiYm94S2V5Q3JlYXRlKCl2b2lkIgoJbWV0aG9kICJib3hNYXBDcmVhdGUoKXZvaWQiCgltZXRob2QgImJveEtleUxlbmd0aCgpdWludDY0IgoJbWV0aG9kICJib3hNYXBMZW5ndGgoKXVpbnQ2NCIKCW1ldGhvZCAiYm94S2V5UmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94TWFwUmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94S2V5RXh0cmFjdCgpc3RyaW5nIgoJbWV0aG9kICJib3hNYXBFeHRyYWN0KClzdHJpbmciCgltZXRob2QgImlzT3B0ZWRJbigpYm9vbCIKCW1ldGhvZCAiZXhHbG9iYWwoKXZvaWQiCgltZXRob2QgImV4TG9jYWwoKXZvaWQiCgltZXRob2QgImFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCgpdWludDE2IgoJbWV0aG9kICJkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYiCgltZXRob2QgImJveFJlc2l6ZSgpdm9pZCIKCW1ldGhvZCAiYm94U3BsaWNlKCl2b2lkIgoJbWV0aG9kICJleFN0YXRlRXhpc3RzKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcmVmaXggKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlHZXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9nbG9iYWxLZXlFeGlzdHMgKmFiaV9yb3V0ZV9sb2NhbEtleVB1dCAqYWJpX3JvdXRlX2xvY2FsS2V5R2V0ICphYmlfcm91dGVfbG9jYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9sb2NhbEtleUV4aXN0cyAqYWJpX3JvdXRlX2JveEtleVB1dCAqYWJpX3JvdXRlX2JveEtleUdldCAqYWJpX3JvdXRlX2JveEtleURlbGV0ZSAqYWJpX3JvdXRlX2JveEtleUV4aXN0cyAqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dCAqYWJpX3JvdXRlX2dsb2JhbE1hcEdldCAqYWJpX3JvdXRlX2dsb2JhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2dsb2JhbE1hcEV4aXN0cyAqYWJpX3JvdXRlX2xvY2FsTWFwUHV0ICphYmlfcm91dGVfbG9jYWxNYXBHZXQgKmFiaV9yb3V0ZV9sb2NhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2xvY2FsTWFwRXhpc3RzICphYmlfcm91dGVfYm94TWFwUHV0ICphYmlfcm91dGVfYm94TWFwR2V0ICphYmlfcm91dGVfYm94TWFwRGVsZXRlICphYmlfcm91dGVfYm94TWFwRXhpc3RzICphYmlfcm91dGVfYm94S2V5Q3JlYXRlICphYmlfcm91dGVfYm94TWFwQ3JlYXRlICphYmlfcm91dGVfYm94S2V5TGVuZ3RoICphYmlfcm91dGVfYm94TWFwTGVuZ3RoICphYmlfcm91dGVfYm94S2V5UmVwbGFjZSAqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2UgKmFiaV9yb3V0ZV9ib3hLZXlFeHRyYWN0ICphYmlfcm91dGVfYm94TWFwRXh0cmFjdCAqYWJpX3JvdXRlX2lzT3B0ZWRJbiAqYWJpX3JvdXRlX2V4R2xvYmFsICphYmlfcm91dGVfZXhMb2NhbCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCAqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3ggKmFiaV9yb3V0ZV9ib3hSZXNpemUgKmFiaV9yb3V0ZV9ib3hTcGxpY2UgKmFiaV9yb3V0ZV9leFN0YXRlRXhpc3RzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIHRlbiBsaW5lcyBvZiBURUFMIGhhbmRsZSBpbml0aWFsIHByb2dyYW0gZmxvdwovLyBUaGlzIHBhdHRlcm4gaXMgdXNlZCB0byBtYWtlIGl0IGVhc3kgZm9yIGFueW9uZSB0byBwYXJzZSB0aGUgc3RhcnQgb2YgdGhlIHByb2dyYW0gYW5kIGRldGVybWluZSBpZiBhIHNwZWNpZmljIGFjdGlvbiBpcyBhbGxvd2VkCi8vIEhlcmUsIGFjdGlvbiByZWZlcnMgdG8gdGhlIE9uQ29tcGxldGUgaW4gY29tYmluYXRpb24gd2l0aCB3aGV0aGVyIHRoZSBhcHAgaXMgYmVpbmcgY3JlYXRlZCBvciBjYWxsZWQKLy8gRXZlcnkgcG9zc2libGUgYWN0aW9uIGZvciB0aGlzIGNvbnRyYWN0IGlzIHJlcHJlc2VudGVkIGluIHRoZSBzd2l0Y2ggc3RhdGVtZW50Ci8vIElmIHRoZSBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBjb250cmFjdCwgaXRzIHJlc3BlY3RpdmUgYnJhbmNoIHdpbGwgYmUgIipOT1RfSU1QTEVNRU5URUQiIHdoaWNoIGp1c3QgY29udGFpbnMgImVyciIKdHhuIEFwcGxpY2F0aW9uSUQKIQppbnQgNgoqCnR4biBPbkNvbXBsZXRpb24KKwpzd2l0Y2ggKmNhbGxfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKmNyZWF0ZV9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRAoKKk5PVF9JTVBMRU1FTlRFRDoKCS8vIFRoZSByZXF1ZXN0ZWQgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGlzIGNvbnRyYWN0LiBBcmUgeW91IHVzaW5nIHRoZSBjb3JyZWN0IE9uQ29tcGxldGU/IERpZCB5b3Ugc2V0IHlvdXIgYXBwIElEPwoJZXJyCgovLyBwcmVmaXgoKXZvaWQKKmFiaV9yb3V0ZV9wcmVmaXg6CgkvLyBleGVjdXRlIHByZWZpeCgpdm9pZAoJY2FsbHN1YiBwcmVmaXgKCWludCAxCglyZXR1cm4KCi8vIHByZWZpeCgpOiB2b2lkCnByZWZpeDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjYKCS8vIHRoaXMuYm94TWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglkdXAKCWJveF9kZWwKCXBvcAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYm94X3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjcKCS8vIHRoaXMuZ2xvYmFsTWFwV2l0aFByZWZpeCgnb28nKS52YWx1ZSA9ICdiYXInCglieXRlIDB4NjY2ZjZmCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfZ2xvYmFsX3B1dAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MjgKCS8vIHRoaXMubG9jYWxNYXBXaXRoUHJlZml4KHRoaXMudHhuLnNlbmRlciwgJ29vJykudmFsdWUgPSAnYmFyJwoJdHhuIFNlbmRlcgoJYnl0ZSAweDY2NmY2ZgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBnbG9iYWxLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQ6CgkvLyBleGVjdXRlIGdsb2JhbEtleVB1dCgpdm9pZAoJY2FsbHN1YiBnbG9iYWxLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbEtleVB1dCgpOiB2b2lkCmdsb2JhbEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MzIKCS8vIHRoaXMuZ2xvYmFsS2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbEtleUdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5R2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5R2V0KCk6IHZvaWQKZ2xvYmFsS2V5R2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czozNgoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LnZhbHVlID09PSAnYmFyJykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbEtleURlbGV0ZSgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleURlbGV0ZToKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RGVsZXRlKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleURlbGV0ZQoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RGVsZXRlKCk6IHZvaWQKZ2xvYmFsS2V5RGVsZXRlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0MAoJLy8gdGhpcy5nbG9iYWxLZXkuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZGVsCglyZXRzdWIKCi8vIGdsb2JhbEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgZ2xvYmFsS2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGdsb2JhbEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsS2V5RXhpc3RzKCk6IHZvaWQKZ2xvYmFsS2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo0NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsS2V5LmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbEtleVB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsS2V5UHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsS2V5UHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbEtleVB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxLZXlQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxLZXlQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjQ4CgkvLyB0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID0gJ2JhcicKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglhcHBfbG9jYWxfcHV0CglyZXRzdWIKCi8vIGxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5R2V0OgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlHZXQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlHZXQoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUdldChhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUdldDoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTIKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsS2V5RGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleURlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleURlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NTYKCS8vIHRoaXMubG9jYWxLZXkoYSkuZGVsZXRlKCkKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZGVsCglyZXRzdWIKCi8vIGxvY2FsS2V5RXhpc3RzKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsS2V5RXhpc3RzOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxLZXlFeGlzdHMgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxLZXlFeGlzdHMoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsS2V5RXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbEtleUV4aXN0cyhhOiBBZGRyZXNzKTogdm9pZApsb2NhbEtleUV4aXN0czoKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjAKCS8vIGFzc2VydCh0aGlzLmxvY2FsS2V5KGEpLmV4aXN0cykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlQdXQoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlQdXQ6CgkvLyBleGVjdXRlIGJveEtleVB1dCgpdm9pZAoJY2FsbHN1YiBib3hLZXlQdXQKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVB1dCgpOiB2b2lkCmJveEtleVB1dDoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NjQKCS8vIHRoaXMuYm94S2V5LnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94S2V5R2V0KCl2b2lkCiphYmlfcm91dGVfYm94S2V5R2V0OgoJLy8gZXhlY3V0ZSBib3hLZXlHZXQoKXZvaWQKCWNhbGxzdWIgYm94S2V5R2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlHZXQoKTogdm9pZApib3hLZXlHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjY4CgkvLyBhc3NlcnQodGhpcy5ib3hLZXkudmFsdWUgPT09ICdiYXInKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5ib3hLZXkudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlEZWxldGU6CgkvLyBleGVjdXRlIGJveEtleURlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleURlbGV0ZSgpOiB2b2lkCmJveEtleURlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6NzIKCS8vIHRoaXMuYm94S2V5LmRlbGV0ZSgpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZGVsCglyZXRzdWIKCi8vIGJveEtleUV4aXN0cygpdm9pZAoqYWJpX3JvdXRlX2JveEtleUV4aXN0czoKCS8vIGV4ZWN1dGUgYm94S2V5RXhpc3RzKCl2b2lkCgljYWxsc3ViIGJveEtleUV4aXN0cwoJaW50IDEKCXJldHVybgoKLy8gYm94S2V5RXhpc3RzKCk6IHZvaWQKYm94S2V5RXhpc3RzOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo3NgoJLy8gYXNzZXJ0KHRoaXMuYm94S2V5LmV4aXN0cykKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCXN3YXAKCXBvcAoJYXNzZXJ0CglyZXRzdWIKCi8vIGdsb2JhbE1hcFB1dCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwUHV0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwUHV0KCk6IHZvaWQKZ2xvYmFsTWFwUHV0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4MAoJLy8gdGhpcy5nbG9iYWxNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdsb2JhbE1hcEdldCgpdm9pZAoqYWJpX3JvdXRlX2dsb2JhbE1hcEdldDoKCS8vIGV4ZWN1dGUgZ2xvYmFsTWFwR2V0KCl2b2lkCgljYWxsc3ViIGdsb2JhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gZ2xvYmFsTWFwR2V0KCk6IHZvaWQKZ2xvYmFsTWFwR2V0OgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czo4NAoJLy8gYXNzZXJ0KHRoaXMuZ2xvYmFsTWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfZ2xvYmFsX2dldAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBnbG9iYWxNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9nbG9iYWxNYXBEZWxldGU6CgkvLyBleGVjdXRlIGdsb2JhbE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBnbG9iYWxNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGdsb2JhbE1hcERlbGV0ZSgpOiB2b2lkCmdsb2JhbE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6ODgKCS8vIHRoaXMuZ2xvYmFsTWFwKCdmb28nKS5kZWxldGUoKQoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9kZWwKCXJldHN1YgoKLy8gZ2xvYmFsTWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZ2xvYmFsTWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBnbG9iYWxNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgZ2xvYmFsTWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBnbG9iYWxNYXBFeGlzdHMoKTogdm9pZApnbG9iYWxNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjkyCgkvLyBhc3NlcnQodGhpcy5nbG9iYWxNYXAoJ2ZvbycpLmV4aXN0cykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4Cglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcFB1dDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwUHV0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwUHV0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcFB1dAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBQdXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBQdXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjk2CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS52YWx1ZSA9ICdiYXInCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJYXBwX2xvY2FsX3B1dAoJcmV0c3ViCgovLyBsb2NhbE1hcEdldChhZGRyZXNzKXZvaWQKKmFiaV9yb3V0ZV9sb2NhbE1hcEdldDoKCS8vIGE6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnQgMzIKCT09CgoJLy8gYXJndW1lbnQgMCAoYSkgZm9yIGxvY2FsTWFwR2V0IG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBsb2NhbE1hcEdldAoJaW50IDEKCXJldHVybgoKLy8gbG9jYWxNYXBHZXQoYTogQWRkcmVzcyk6IHZvaWQKbG9jYWxNYXBHZXQ6Cglwcm90byAxIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEwMAoJLy8gYXNzZXJ0KHRoaXMubG9jYWxNYXAoYSwgJ2ZvbycpLnZhbHVlID09PSAnYmFyJykKCWZyYW1lX2RpZyAtMSAvLyBhOiBBZGRyZXNzCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglhcHBfbG9jYWxfZ2V0CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCgk9PQoJYXNzZXJ0CglyZXRzdWIKCi8vIGxvY2FsTWFwRGVsZXRlKGFkZHJlc3Mpdm9pZAoqYWJpX3JvdXRlX2xvY2FsTWFwRGVsZXRlOgoJLy8gYTogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludCAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChhKSBmb3IgbG9jYWxNYXBEZWxldGUgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgbG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkCgljYWxsc3ViIGxvY2FsTWFwRGVsZXRlCglpbnQgMQoJcmV0dXJuCgovLyBsb2NhbE1hcERlbGV0ZShhOiBBZGRyZXNzKTogdm9pZApsb2NhbE1hcERlbGV0ZToKCXByb3RvIDEgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTA0CgkvLyB0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5kZWxldGUoKQoJZnJhbWVfZGlnIC0xIC8vIGE6IEFkZHJlc3MKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9sb2NhbF9kZWwKCXJldHN1YgoKLy8gbG9jYWxNYXBFeGlzdHMoYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfbG9jYWxNYXBFeGlzdHM6CgkvLyBhOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50IDMyCgk9PQoKCS8vIGFyZ3VtZW50IDAgKGEpIGZvciBsb2NhbE1hcEV4aXN0cyBtdXN0IGJlIGEgYWRkcmVzcwoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQKCWNhbGxzdWIgbG9jYWxNYXBFeGlzdHMKCWludCAxCglyZXR1cm4KCi8vIGxvY2FsTWFwRXhpc3RzKGE6IEFkZHJlc3MpOiB2b2lkCmxvY2FsTWFwRXhpc3RzOgoJcHJvdG8gMSAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxMDgKCS8vIGFzc2VydCh0aGlzLmxvY2FsTWFwKGEsICdmb28nKS5leGlzdHMpCglmcmFtZV9kaWcgLTEgLy8gYTogQWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKLy8gYm94TWFwUHV0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwUHV0OgoJLy8gZXhlY3V0ZSBib3hNYXBQdXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwUHV0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBQdXQoKTogdm9pZApib3hNYXBQdXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExMgoJLy8gdGhpcy5ib3hNYXAoJ2ZvbycpLnZhbHVlID0gJ2JhcicKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWJveF9wdXQKCXJldHN1YgoKLy8gYm94TWFwR2V0KCl2b2lkCiphYmlfcm91dGVfYm94TWFwR2V0OgoJLy8gZXhlY3V0ZSBib3hNYXBHZXQoKXZvaWQKCWNhbGxzdWIgYm94TWFwR2V0CglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBHZXQoKTogdm9pZApib3hNYXBHZXQ6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjExNgoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS52YWx1ZSA9PT0gJ2JhcicpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnZm9vJykudmFsdWUKCWFzc2VydAoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBEZWxldGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hNYXBEZWxldGU6CgkvLyBleGVjdXRlIGJveE1hcERlbGV0ZSgpdm9pZAoJY2FsbHN1YiBib3hNYXBEZWxldGUKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcERlbGV0ZSgpOiB2b2lkCmJveE1hcERlbGV0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTIwCgkvLyB0aGlzLmJveE1hcCgnZm9vJykuZGVsZXRlKCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9kZWwKCXJldHN1YgoKLy8gYm94TWFwRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfYm94TWFwRXhpc3RzOgoJLy8gZXhlY3V0ZSBib3hNYXBFeGlzdHMoKXZvaWQKCWNhbGxzdWIgYm94TWFwRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBFeGlzdHMoKTogdm9pZApib3hNYXBFeGlzdHM6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEyNAoJLy8gYXNzZXJ0KHRoaXMuYm94TWFwKCdmb28nKS5leGlzdHMpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglib3hfbGVuCglzd2FwCglwb3AKCWFzc2VydAoJcmV0c3ViCgovLyBib3hLZXlDcmVhdGUoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlDcmVhdGU6CgkvLyBleGVjdXRlIGJveEtleUNyZWF0ZSgpdm9pZAoJY2FsbHN1YiBib3hLZXlDcmVhdGUKCWludCAxCglyZXR1cm4KCi8vIGJveEtleUNyZWF0ZSgpOiB2b2lkCmJveEtleUNyZWF0ZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTI4CgkvLyB0aGlzLmJveEtleS5jcmVhdGUoMTAyNCkKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWludCAxMDI0Cglib3hfY3JlYXRlCglwb3AKCXJldHN1YgoKLy8gYm94TWFwQ3JlYXRlKCl2b2lkCiphYmlfcm91dGVfYm94TWFwQ3JlYXRlOgoJLy8gZXhlY3V0ZSBib3hNYXBDcmVhdGUoKXZvaWQKCWNhbGxzdWIgYm94TWFwQ3JlYXRlCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBDcmVhdGUoKTogdm9pZApib3hNYXBDcmVhdGU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjEzMgoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLmNyZWF0ZSgxMDI0KQoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDEwMjQKCWJveF9jcmVhdGUKCXBvcAoJcmV0c3ViCgovLyBib3hLZXlMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveEtleUxlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hLZXlMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlMZW5ndGgoKTogdWludDY0CmJveEtleUxlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTM2CgkvLyByZXR1cm4gdGhpcy5ib3hLZXkuc2l6ZTsKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWJveF9sZW4KCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuYm94S2V5LnNpemUKCWFzc2VydAoJcmV0c3ViCgovLyBib3hNYXBMZW5ndGgoKXVpbnQ2NAoqYWJpX3JvdXRlX2JveE1hcExlbmd0aDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hNYXBMZW5ndGgoKXVpbnQ2NAoJY2FsbHN1YiBib3hNYXBMZW5ndGgKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hNYXBMZW5ndGgoKTogdWludDY0CmJveE1hcExlbmd0aDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTQwCgkvLyByZXR1cm4gdGhpcy5ib3hNYXAoJ2JhcicpLnNpemU7CglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglib3hfbGVuCgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmJveE1hcCgnYmFyJykuc2l6ZQoJYXNzZXJ0CglyZXRzdWIKCi8vIGJveEtleVJlcGxhY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hLZXlSZXBsYWNlOgoJLy8gZXhlY3V0ZSBib3hLZXlSZXBsYWNlKCl2b2lkCgljYWxsc3ViIGJveEtleVJlcGxhY2UKCWludCAxCglyZXR1cm4KCi8vIGJveEtleVJlcGxhY2UoKTogdm9pZApib3hLZXlSZXBsYWNlOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNDQKCS8vIHRoaXMuYm94S2V5LnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94TWFwUmVwbGFjZSgpdm9pZAoqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2U6CgkvLyBleGVjdXRlIGJveE1hcFJlcGxhY2UoKXZvaWQKCWNhbGxzdWIgYm94TWFwUmVwbGFjZQoJaW50IDEKCXJldHVybgoKLy8gYm94TWFwUmVwbGFjZSgpOiB2b2lkCmJveE1hcFJlcGxhY2U6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE0OAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnJlcGxhY2UoMCwgJ2FiYycpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMAoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gYm94S2V5RXh0cmFjdCgpc3RyaW5nCiphYmlfcm91dGVfYm94S2V5RXh0cmFjdDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBib3hLZXlFeHRyYWN0KClzdHJpbmcKCWNhbGxzdWIgYm94S2V5RXh0cmFjdAoJZHVwCglsZW4KCWl0b2IKCWV4dHJhY3QgNiAyCglzd2FwCgljb25jYXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBib3hLZXlFeHRyYWN0KCk6IHN0cmluZwpib3hLZXlFeHRyYWN0OgoJcHJvdG8gMCAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNTIKCS8vIHJldHVybiB0aGlzLmJveEtleS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBib3hNYXBFeHRyYWN0KClzdHJpbmcKKmFiaV9yb3V0ZV9ib3hNYXBFeHRyYWN0OgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGJveE1hcEV4dHJhY3QoKXN0cmluZwoJY2FsbHN1YiBib3hNYXBFeHRyYWN0CglkdXAKCWxlbgoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludCAxCglyZXR1cm4KCi8vIGJveE1hcEV4dHJhY3QoKTogc3RyaW5nCmJveE1hcEV4dHJhY3Q6Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE1NgoJLy8gcmV0dXJuIHRoaXMuYm94TWFwKCdiYXInKS5leHRyYWN0KDAsIDMpOwoJYnl0ZSAweDYyNjE3MiAvLyAiYmFyIgoJaW50IDAKCWludCAzCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBpc09wdGVkSW4oKWJvb2wKKmFiaV9yb3V0ZV9pc09wdGVkSW46CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGUgMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgaXNPcHRlZEluKClib29sCgljYWxsc3ViIGlzT3B0ZWRJbgoJYnl0ZSAweDAwCglpbnQgMAoJdW5jb3ZlciAyCglzZXRiaXQKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBpc09wdGVkSW4oKTogYm9vbGVhbgppc09wdGVkSW46Cglwcm90byAwIDEKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2MAoJLy8gcmV0dXJuIHRoaXMudHhuLnNlbmRlci5pc09wdGVkSW5Ub0FwcCh0aGlzLmFwcCk7Cgl0eG4gU2VuZGVyCgl0eG5hIEFwcGxpY2F0aW9ucyAwCglhcHBfb3B0ZWRfaW4KCXJldHN1YgoKLy8gZXhHbG9iYWwoKXZvaWQKKmFiaV9yb3V0ZV9leEdsb2JhbDoKCS8vIGV4ZWN1dGUgZXhHbG9iYWwoKXZvaWQKCWNhbGxzdWIgZXhHbG9iYWwKCWludCAxCglyZXR1cm4KCi8vIGV4R2xvYmFsKCk6IHZvaWQKZXhHbG9iYWw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE2NAoJLy8gbG9nKHRoaXMuYXBwLmdsb2JhbFN0YXRlKCdmb28nKSBhcyBieXRlcykKCXR4bmEgQXBwbGljYXRpb25zIDAKCWJ5dGUgMHg2NjZmNmYgLy8gImZvbyIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5nbG9iYWxTdGF0ZSgnZm9vJykKCWFzc2VydAoJbG9nCglyZXRzdWIKCi8vIGV4TG9jYWwoKXZvaWQKKmFiaV9yb3V0ZV9leExvY2FsOgoJLy8gZXhlY3V0ZSBleExvY2FsKCl2b2lkCgljYWxsc3ViIGV4TG9jYWwKCWludCAxCglyZXR1cm4KCi8vIGV4TG9jYWwoKTogdm9pZApleExvY2FsOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNjgKCS8vIGxvZyh0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpIGFzIGJ5dGVzKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoKCS8vIGxvY2FsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLmFwcC5sb2NhbFN0YXRlKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpCglhc3NlcnQKCWxvZwoJcmV0c3ViCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKXVpbnQxNgoJY2FsbHN1YiBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3gKCWl0b2IKCWR1cAoJYml0bGVuCglpbnQgMTYKCTw9CgoJLy8gYWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBhY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3goKTogdWludDE2CmFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCXByb3RvIDAgMQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTcyCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC5jcmVhdGUoKQoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJaW50IDgwMDAKCWJveF9jcmVhdGUKCXBvcAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTczCgkvLyB0aGlzLmxhcmdlU3RhdGljQXJyYXlJbkJveC52YWx1ZVsxMjNdID0gNDU2CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglieXRlIDB4MDFjOAoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE3NQoJLy8gcmV0dXJuIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlWzEyM107CglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgMjQ2CglpbnQgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCh1aW50NjQpdWludDE2CiphYmlfcm91dGVfZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZSAweDE1MWY3Yzc1CgoJLy8gaTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYKCWNhbGxzdWIgZHluYW1pY0FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveAoJaXRvYgoJZHVwCgliaXRsZW4KCWludCAxNgoJPD0KCgkvLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94IHJldHVybiB2YWx1ZSBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJbG9nCglpbnQgMQoJcmV0dXJuCgovLyBkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KGk6IHVpbnQ2NCk6IHVpbnQxNgpkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94OgoJcHJvdG8gMSAxCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxNzkKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LmNyZWF0ZSgpCglieXRlIDB4NmM2MTcyNjc2NTUzNzQ2MTc0Njk2MzQxNzI3MjYxNzk0OTZlNDI2Zjc4IC8vICJsYXJnZVN0YXRpY0FycmF5SW5Cb3giCglpbnQgODAwMAoJYm94X2NyZWF0ZQoJcG9wCgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxODAKCS8vIHRoaXMubGFyZ2VTdGF0aWNBcnJheUluQm94LnZhbHVlW2ldID0gNDU2CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglieXRlIDB4MDFjOAoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4NAoJLy8gcmV0dXJuIGFbaV07CglmcmFtZV9kaWcgLTEgLy8gaTogdWludDY0CglpbnQgMgoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnQgMgoJYnl0ZSAweDZjNjE3MjY3NjU1Mzc0NjE3NDY5NjM0MTcyNzI2MTc5NDk2ZTQyNmY3OCAvLyAibGFyZ2VTdGF0aWNBcnJheUluQm94IgoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCXJldHN1YgoKLy8gYm94UmVzaXplKCl2b2lkCiphYmlfcm91dGVfYm94UmVzaXplOgoJLy8gZXhlY3V0ZSBib3hSZXNpemUoKXZvaWQKCWNhbGxzdWIgYm94UmVzaXplCglpbnQgMQoJcmV0dXJuCgovLyBib3hSZXNpemUoKTogdm9pZApib3hSZXNpemU6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE4OAoJLy8gdGhpcy5ib3hLZXkucmVzaXplKDEwMjQpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTg5CgkvLyB0aGlzLmJveE1hcCgnYmFyJykucmVzaXplKDEwMjQpCglieXRlIDB4NjI2MTcyIC8vICJiYXIiCglpbnQgMTAyNAoJYm94X3Jlc2l6ZQoJcmV0c3ViCgovLyBib3hTcGxpY2UoKXZvaWQKKmFiaV9yb3V0ZV9ib3hTcGxpY2U6CgkvLyBleGVjdXRlIGJveFNwbGljZSgpdm9pZAoJY2FsbHN1YiBib3hTcGxpY2UKCWludCAxCglyZXR1cm4KCi8vIGJveFNwbGljZSgpOiB2b2lkCmJveFNwbGljZToKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTkzCgkvLyB0aGlzLmJveEtleS5zcGxpY2UoMCwgMSwgJ2FiYycpCglieXRlIDB4NjY2ZjZmIC8vICJmb28iCglpbnQgMAoJaW50IDEKCWJ5dGUgMHg2MTYyNjMgLy8gImFiYyIKCWJveF9zcGxpY2UKCgkvLyB0ZXN0cy9jb250cmFjdHMvc3RvcmFnZS5hbGdvLnRzOjE5NAoJLy8gdGhpcy5ib3hNYXAoJ2JhcicpLnNwbGljZSgwLCAxLCAnYWJjJykKCWJ5dGUgMHg2MjYxNzIgLy8gImJhciIKCWludCAwCglpbnQgMQoJYnl0ZSAweDYxNjI2MyAvLyAiYWJjIgoJYm94X3NwbGljZQoJcmV0c3ViCgovLyBleFN0YXRlRXhpc3RzKCl2b2lkCiphYmlfcm91dGVfZXhTdGF0ZUV4aXN0czoKCS8vIGV4ZWN1dGUgZXhTdGF0ZUV4aXN0cygpdm9pZAoJY2FsbHN1YiBleFN0YXRlRXhpc3RzCglpbnQgMQoJcmV0dXJuCgovLyBleFN0YXRlRXhpc3RzKCk6IHZvaWQKZXhTdGF0ZUV4aXN0czoKCXByb3RvIDAgMAoKCS8vIHRlc3RzL2NvbnRyYWN0cy9zdG9yYWdlLmFsZ28udHM6MTk4CgkvLyBhc3NlcnQodGhpcy5hcHAuZ2xvYmFsU3RhdGVFeGlzdHMoJ2ZvbycpKQoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2dsb2JhbF9nZXRfZXgKCXN3YXAKCXBvcAoJYXNzZXJ0CgoJLy8gdGVzdHMvY29udHJhY3RzL3N0b3JhZ2UuYWxnby50czoxOTkKCS8vIGFzc2VydCh0aGlzLmFwcC5sb2NhbFN0YXRlRXhpc3RzKHRoaXMudHhuLnNlbmRlciwgJ2ZvbycpKQoJdHhuIFNlbmRlcgoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJYnl0ZSAweDY2NmY2ZiAvLyAiZm9vIgoJYXBwX2xvY2FsX2dldF9leAoJc3dhcAoJcG9wCglhc3NlcnQKCXJldHN1YgoKKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbjoKCWludCAxCglyZXR1cm4KCipjcmVhdGVfTm9PcDoKCW1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24oKXZvaWQiCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAwCgltYXRjaCAqYWJpX3JvdXRlX2NyZWF0ZUFwcGxpY2F0aW9uCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNyZWF0ZSBOb09wCgllcnIKCipjYWxsX05vT3A6CgltZXRob2QgInByZWZpeCgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5UHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxLZXlHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbEtleURlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsS2V5RXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbEtleVB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsS2V5R2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxLZXlEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbEtleUV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveEtleVB1dCgpdm9pZCIKCW1ldGhvZCAiYm94S2V5R2V0KCl2b2lkIgoJbWV0aG9kICJib3hLZXlEZWxldGUoKXZvaWQiCgltZXRob2QgImJveEtleUV4aXN0cygpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwUHV0KCl2b2lkIgoJbWV0aG9kICJnbG9iYWxNYXBHZXQoKXZvaWQiCgltZXRob2QgImdsb2JhbE1hcERlbGV0ZSgpdm9pZCIKCW1ldGhvZCAiZ2xvYmFsTWFwRXhpc3RzKCl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcFB1dChhZGRyZXNzKXZvaWQiCgltZXRob2QgImxvY2FsTWFwR2V0KGFkZHJlc3Mpdm9pZCIKCW1ldGhvZCAibG9jYWxNYXBEZWxldGUoYWRkcmVzcyl2b2lkIgoJbWV0aG9kICJsb2NhbE1hcEV4aXN0cyhhZGRyZXNzKXZvaWQiCgltZXRob2QgImJveE1hcFB1dCgpdm9pZCIKCW1ldGhvZCAiYm94TWFwR2V0KCl2b2lkIgoJbWV0aG9kICJib3hNYXBEZWxldGUoKXZvaWQiCgltZXRob2QgImJveE1hcEV4aXN0cygpdm9pZCIKCW1ldGhvZCAiYm94S2V5Q3JlYXRlKCl2b2lkIgoJbWV0aG9kICJib3hNYXBDcmVhdGUoKXZvaWQiCgltZXRob2QgImJveEtleUxlbmd0aCgpdWludDY0IgoJbWV0aG9kICJib3hNYXBMZW5ndGgoKXVpbnQ2NCIKCW1ldGhvZCAiYm94S2V5UmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94TWFwUmVwbGFjZSgpdm9pZCIKCW1ldGhvZCAiYm94S2V5RXh0cmFjdCgpc3RyaW5nIgoJbWV0aG9kICJib3hNYXBFeHRyYWN0KClzdHJpbmciCgltZXRob2QgImlzT3B0ZWRJbigpYm9vbCIKCW1ldGhvZCAiZXhHbG9iYWwoKXZvaWQiCgltZXRob2QgImV4TG9jYWwoKXZvaWQiCgltZXRob2QgImFjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCgpdWludDE2IgoJbWV0aG9kICJkeW5hbWljQWNjZXNzU3RhdGljVmFsdWVJbkxhcmdlQm94KHVpbnQ2NCl1aW50MTYiCgltZXRob2QgImJveFJlc2l6ZSgpdm9pZCIKCW1ldGhvZCAiYm94U3BsaWNlKCl2b2lkIgoJbWV0aG9kICJleFN0YXRlRXhpc3RzKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9wcmVmaXggKmFiaV9yb3V0ZV9nbG9iYWxLZXlQdXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlHZXQgKmFiaV9yb3V0ZV9nbG9iYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9nbG9iYWxLZXlFeGlzdHMgKmFiaV9yb3V0ZV9sb2NhbEtleVB1dCAqYWJpX3JvdXRlX2xvY2FsS2V5R2V0ICphYmlfcm91dGVfbG9jYWxLZXlEZWxldGUgKmFiaV9yb3V0ZV9sb2NhbEtleUV4aXN0cyAqYWJpX3JvdXRlX2JveEtleVB1dCAqYWJpX3JvdXRlX2JveEtleUdldCAqYWJpX3JvdXRlX2JveEtleURlbGV0ZSAqYWJpX3JvdXRlX2JveEtleUV4aXN0cyAqYWJpX3JvdXRlX2dsb2JhbE1hcFB1dCAqYWJpX3JvdXRlX2dsb2JhbE1hcEdldCAqYWJpX3JvdXRlX2dsb2JhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2dsb2JhbE1hcEV4aXN0cyAqYWJpX3JvdXRlX2xvY2FsTWFwUHV0ICphYmlfcm91dGVfbG9jYWxNYXBHZXQgKmFiaV9yb3V0ZV9sb2NhbE1hcERlbGV0ZSAqYWJpX3JvdXRlX2xvY2FsTWFwRXhpc3RzICphYmlfcm91dGVfYm94TWFwUHV0ICphYmlfcm91dGVfYm94TWFwR2V0ICphYmlfcm91dGVfYm94TWFwRGVsZXRlICphYmlfcm91dGVfYm94TWFwRXhpc3RzICphYmlfcm91dGVfYm94S2V5Q3JlYXRlICphYmlfcm91dGVfYm94TWFwQ3JlYXRlICphYmlfcm91dGVfYm94S2V5TGVuZ3RoICphYmlfcm91dGVfYm94TWFwTGVuZ3RoICphYmlfcm91dGVfYm94S2V5UmVwbGFjZSAqYWJpX3JvdXRlX2JveE1hcFJlcGxhY2UgKmFiaV9yb3V0ZV9ib3hLZXlFeHRyYWN0ICphYmlfcm91dGVfYm94TWFwRXh0cmFjdCAqYWJpX3JvdXRlX2lzT3B0ZWRJbiAqYWJpX3JvdXRlX2V4R2xvYmFsICphYmlfcm91dGVfZXhMb2NhbCAqYWJpX3JvdXRlX2FjY2Vzc1N0YXRpY1ZhbHVlSW5MYXJnZUJveCAqYWJpX3JvdXRlX2R5bmFtaWNBY2Nlc3NTdGF0aWNWYWx1ZUluTGFyZ2VCb3ggKmFiaV9yb3V0ZV9ib3hSZXNpemUgKmFiaV9yb3V0ZV9ib3hTcGxpY2UgKmFiaV9yb3V0ZV9leFN0YXRlRXhpc3RzCgoJLy8gdGhpcyBjb250cmFjdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGdpdmVuIEFCSSBtZXRob2QgZm9yIGNhbGwgTm9PcAoJZXJy", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "byteCode": { diff --git a/tests/contracts/artifacts/Templates.approval.teal b/tests/contracts/artifacts/Templates.approval.teal index 1fed78a5a..7e04e4bb9 100644 --- a/tests/contracts/artifacts/Templates.approval.teal +++ b/tests/contracts/artifacts/Templates.approval.teal @@ -1,6 +1,6 @@ #pragma version 10 -// This TEAL was generated by TEALScript v0.102.0 +// This TEAL was generated by TEALScript v0.103.0 // https://github.com/algorandfoundation/TEALScript // This contract is compliant with and/or implements the following ARCs: [ ARC4 ] diff --git a/tests/contracts/artifacts/Templates.arc32.json b/tests/contracts/artifacts/Templates.arc32.json index 3d5b630c6..d98adfe74 100644 --- a/tests/contracts/artifacts/Templates.arc32.json +++ b/tests/contracts/artifacts/Templates.arc32.json @@ -44,7 +44,7 @@ } }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9ieXRlczY0VG1wbFZhcgpzdG9yZSAyMDMKcHVzaGJ5dGVzIFRNUExfYnl0ZXMzMlRtcGxWYXIKc3RvcmUgMjAyCnB1c2hieXRlcyBUTVBMX3VpbnQ2NFRtcGxWYXIKYnRvaQpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfYnl0ZXNUbXBsVmFyCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdG1wbCgpdm9pZAoqYWJpX3JvdXRlX3RtcGw6CgkvLyBleGVjdXRlIHRtcGwoKXZvaWQKCWNhbGxzdWIgdG1wbAoJaW50IDEKCXJldHVybgoKLy8gdG1wbCgpOiB2b2lkCnRtcGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0CgkvLyBsb2codGhpcy5ieXRlc1RtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNQoJLy8gYXNzZXJ0KHRoaXMudWludDY0VG1wbFZhcikKCWxvYWQgMjAxIC8vIFRNUExfdWludDY0VG1wbFZhcgoJYXNzZXJ0CglyZXRzdWIKCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKXZvaWQKKmFiaV9yb3V0ZV9zcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJLy8gZXhlY3V0ZSBzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkCgljYWxsc3ViIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIKCWludCAxCglyZXR1cm4KCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKTogdm9pZApzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozOQoJLy8gZWQyNTUxOVZlcmlmeUJhcmUodGhpcy5ieXRlc1RtcGxWYXIsIHRoaXMuYnl0ZXM2NFRtcGxWYXIsIHRoaXMuYnl0ZXMzMlRtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9hZCAyMDMgLy8gVE1QTF9ieXRlczY0VG1wbFZhcgoJbG9hZCAyMDIgLy8gVE1QTF9ieXRlczMyVG1wbFZhcgoJZWQyNTUxOXZlcmlmeV9iYXJlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0bXBsKCl2b2lkIgoJbWV0aG9kICJzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90bXBsICphYmlfcm91dGVfc3BlY2lmaWNMZW5ndGhUZW1wbGF0ZVZhcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9ieXRlczY0VG1wbFZhcgpzdG9yZSAyMDMKcHVzaGJ5dGVzIFRNUExfYnl0ZXMzMlRtcGxWYXIKc3RvcmUgMjAyCnB1c2hieXRlcyBUTVBMX3VpbnQ2NFRtcGxWYXIKYnRvaQpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfYnl0ZXNUbXBsVmFyCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdG1wbCgpdm9pZAoqYWJpX3JvdXRlX3RtcGw6CgkvLyBleGVjdXRlIHRtcGwoKXZvaWQKCWNhbGxzdWIgdG1wbAoJaW50IDEKCXJldHVybgoKLy8gdG1wbCgpOiB2b2lkCnRtcGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0CgkvLyBsb2codGhpcy5ieXRlc1RtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNQoJLy8gYXNzZXJ0KHRoaXMudWludDY0VG1wbFZhcikKCWxvYWQgMjAxIC8vIFRNUExfdWludDY0VG1wbFZhcgoJYXNzZXJ0CglyZXRzdWIKCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKXZvaWQKKmFiaV9yb3V0ZV9zcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJLy8gZXhlY3V0ZSBzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkCgljYWxsc3ViIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIKCWludCAxCglyZXR1cm4KCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKTogdm9pZApzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozOQoJLy8gZWQyNTUxOVZlcmlmeUJhcmUodGhpcy5ieXRlc1RtcGxWYXIsIHRoaXMuYnl0ZXM2NFRtcGxWYXIsIHRoaXMuYnl0ZXMzMlRtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9hZCAyMDMgLy8gVE1QTF9ieXRlczY0VG1wbFZhcgoJbG9hZCAyMDIgLy8gVE1QTF9ieXRlczMyVG1wbFZhcgoJZWQyNTUxOXZlcmlmeV9iYXJlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0bXBsKCl2b2lkIgoJbWV0aG9kICJzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90bXBsICphYmlfcm91dGVfc3BlY2lmaWNMZW5ndGhUZW1wbGF0ZVZhcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "contract": { diff --git a/tests/contracts/artifacts/Templates.arc56_draft.json b/tests/contracts/artifacts/Templates.arc56_draft.json index 6c061cdb5..d70f368ed 100644 --- a/tests/contracts/artifacts/Templates.arc56_draft.json +++ b/tests/contracts/artifacts/Templates.arc56_draft.json @@ -73,248 +73,251 @@ "create": [], "call": [] }, - "sourceInfo": [ - { - "teal": 1, - "source": 24, - "disassembledTeal": 1 - }, - { - "teal": 9, - "source": 24, - "disassembledTeal": 2 - }, - { - "teal": 10, - "source": 24, - "disassembledTeal": 3 - }, - { - "teal": 11, - "source": 24, - "disassembledTeal": 4 - }, - { - "teal": 12, - "source": 24, - "disassembledTeal": 5 - }, - { - "teal": 13, - "source": 24, - "disassembledTeal": 6 - }, - { - "teal": 14, - "source": 24, - "disassembledTeal": 7 - }, - { - "teal": 15, - "source": 24, - "disassembledTeal": 8 - }, - { - "teal": 16, - "source": 24, - "disassembledTeal": 9 - }, - { - "teal": 17, - "source": 24, - "disassembledTeal": 10 - }, - { - "teal": 24, - "source": 24, - "disassembledTeal": 11 - }, - { - "teal": 25, - "source": 24, - "disassembledTeal": 12 - }, - { - "teal": 26, - "source": 24, - "disassembledTeal": 13 - }, - { - "teal": 27, - "source": 24, - "disassembledTeal": 14 - }, - { - "teal": 28, - "source": 24, - "disassembledTeal": 15 - }, - { - "teal": 29, - "source": 24, - "disassembledTeal": 16 - }, - { - "teal": 30, - "source": 24, - "disassembledTeal": 17 - }, - { - "teal": 34, - "source": 24, - "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", - "disassembledTeal": 19 - }, - { - "teal": 39, - "source": 33, - "disassembledTeal": 21 - }, - { - "teal": 40, - "source": 33, - "disassembledTeal": 22 - }, - { - "teal": 41, - "source": 33, - "disassembledTeal": 23 - }, - { - "teal": 45, - "source": 33, - "disassembledTeal": 25 - }, - { - "teal": 49, - "source": 34, - "disassembledTeal": 26 - }, - { - "teal": 50, - "source": 34, - "disassembledTeal": 27 - }, - { - "teal": 54, - "source": 35, - "disassembledTeal": 28 - }, - { - "teal": 55, - "source": 35, - "disassembledTeal": 29 - }, - { - "teal": 56, - "source": 33, - "disassembledTeal": 30 - }, - { - "teal": 61, - "source": 38, - "disassembledTeal": 32 - }, - { - "teal": 62, - "source": 38, - "disassembledTeal": 33 - }, - { - "teal": 63, - "source": 38, - "disassembledTeal": 34 - }, - { - "teal": 67, - "source": 38, - "disassembledTeal": 36 - }, - { - "teal": 71, - "source": 39, - "disassembledTeal": 37 - }, - { - "teal": 72, - "source": 39, - "disassembledTeal": 38 - }, - { - "teal": 73, - "source": 39, - "disassembledTeal": 39 - }, - { - "teal": 74, - "source": 39, - "disassembledTeal": 40 - }, - { - "teal": 75, - "source": 38, - "disassembledTeal": 41 - }, - { - "teal": 78, - "source": 24, - "disassembledTeal": 43 - }, - { - "teal": 79, - "source": 24, - "disassembledTeal": 44 - }, - { - "teal": 82, - "source": 24, - "disassembledTeal": 46 - }, - { - "teal": 83, - "source": 24, - "disassembledTeal": 47 - }, - { - "teal": 84, - "source": 24, - "disassembledTeal": 48 - }, - { - "teal": 87, - "source": 24, - "errorMessage": "this contract does not implement the given ABI method for create NoOp", - "disassembledTeal": 49 - }, - { - "teal": 90, - "source": 24, - "disassembledTeal": 51 - }, - { - "teal": 91, - "source": 24, - "disassembledTeal": 52 - }, - { - "teal": 92, - "source": 24, - "disassembledTeal": 53 - }, - { - "teal": 93, - "source": 24, - "disassembledTeal": 54 - }, - { - "teal": 96, - "source": 24, - "errorMessage": "this contract does not implement the given ABI method for call NoOp", - "disassembledTeal": 55 - } - ], + "sourceInfo": { + "approval": [ + { + "teal": 1, + "source": 24, + "disassembledTeal": 1 + }, + { + "teal": 9, + "source": 24, + "disassembledTeal": 2 + }, + { + "teal": 10, + "source": 24, + "disassembledTeal": 3 + }, + { + "teal": 11, + "source": 24, + "disassembledTeal": 4 + }, + { + "teal": 12, + "source": 24, + "disassembledTeal": 5 + }, + { + "teal": 13, + "source": 24, + "disassembledTeal": 6 + }, + { + "teal": 14, + "source": 24, + "disassembledTeal": 7 + }, + { + "teal": 15, + "source": 24, + "disassembledTeal": 8 + }, + { + "teal": 16, + "source": 24, + "disassembledTeal": 9 + }, + { + "teal": 17, + "source": 24, + "disassembledTeal": 10 + }, + { + "teal": 24, + "source": 24, + "disassembledTeal": 11 + }, + { + "teal": 25, + "source": 24, + "disassembledTeal": 12 + }, + { + "teal": 26, + "source": 24, + "disassembledTeal": 13 + }, + { + "teal": 27, + "source": 24, + "disassembledTeal": 14 + }, + { + "teal": 28, + "source": 24, + "disassembledTeal": 15 + }, + { + "teal": 29, + "source": 24, + "disassembledTeal": 16 + }, + { + "teal": 30, + "source": 24, + "disassembledTeal": 17 + }, + { + "teal": 34, + "source": 24, + "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", + "disassembledTeal": 19 + }, + { + "teal": 39, + "source": 33, + "disassembledTeal": 21 + }, + { + "teal": 40, + "source": 33, + "disassembledTeal": 22 + }, + { + "teal": 41, + "source": 33, + "disassembledTeal": 23 + }, + { + "teal": 45, + "source": 33, + "disassembledTeal": 25 + }, + { + "teal": 49, + "source": 34, + "disassembledTeal": 26 + }, + { + "teal": 50, + "source": 34, + "disassembledTeal": 27 + }, + { + "teal": 54, + "source": 35, + "disassembledTeal": 28 + }, + { + "teal": 55, + "source": 35, + "disassembledTeal": 29 + }, + { + "teal": 56, + "source": 33, + "disassembledTeal": 30 + }, + { + "teal": 61, + "source": 38, + "disassembledTeal": 32 + }, + { + "teal": 62, + "source": 38, + "disassembledTeal": 33 + }, + { + "teal": 63, + "source": 38, + "disassembledTeal": 34 + }, + { + "teal": 67, + "source": 38, + "disassembledTeal": 36 + }, + { + "teal": 71, + "source": 39, + "disassembledTeal": 37 + }, + { + "teal": 72, + "source": 39, + "disassembledTeal": 38 + }, + { + "teal": 73, + "source": 39, + "disassembledTeal": 39 + }, + { + "teal": 74, + "source": 39, + "disassembledTeal": 40 + }, + { + "teal": 75, + "source": 38, + "disassembledTeal": 41 + }, + { + "teal": 78, + "source": 24, + "disassembledTeal": 43 + }, + { + "teal": 79, + "source": 24, + "disassembledTeal": 44 + }, + { + "teal": 82, + "source": 24, + "disassembledTeal": 46 + }, + { + "teal": 83, + "source": 24, + "disassembledTeal": 47 + }, + { + "teal": 84, + "source": 24, + "disassembledTeal": 48 + }, + { + "teal": 87, + "source": 24, + "errorMessage": "this contract does not implement the given ABI method for create NoOp", + "disassembledTeal": 49 + }, + { + "teal": 90, + "source": 24, + "disassembledTeal": 51 + }, + { + "teal": 91, + "source": 24, + "disassembledTeal": 52 + }, + { + "teal": 92, + "source": 24, + "disassembledTeal": 53 + }, + { + "teal": 93, + "source": 24, + "disassembledTeal": 54 + }, + { + "teal": 96, + "source": 24, + "errorMessage": "this contract does not implement the given ABI method for call NoOp", + "disassembledTeal": 55 + } + ], + "clear": [] + }, "source": { - "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMi4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9ieXRlczY0VG1wbFZhcgpzdG9yZSAyMDMKcHVzaGJ5dGVzIFRNUExfYnl0ZXMzMlRtcGxWYXIKc3RvcmUgMjAyCnB1c2hieXRlcyBUTVBMX3VpbnQ2NFRtcGxWYXIKYnRvaQpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfYnl0ZXNUbXBsVmFyCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdG1wbCgpdm9pZAoqYWJpX3JvdXRlX3RtcGw6CgkvLyBleGVjdXRlIHRtcGwoKXZvaWQKCWNhbGxzdWIgdG1wbAoJaW50IDEKCXJldHVybgoKLy8gdG1wbCgpOiB2b2lkCnRtcGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0CgkvLyBsb2codGhpcy5ieXRlc1RtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNQoJLy8gYXNzZXJ0KHRoaXMudWludDY0VG1wbFZhcikKCWxvYWQgMjAxIC8vIFRNUExfdWludDY0VG1wbFZhcgoJYXNzZXJ0CglyZXRzdWIKCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKXZvaWQKKmFiaV9yb3V0ZV9zcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJLy8gZXhlY3V0ZSBzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkCgljYWxsc3ViIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIKCWludCAxCglyZXR1cm4KCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKTogdm9pZApzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozOQoJLy8gZWQyNTUxOVZlcmlmeUJhcmUodGhpcy5ieXRlc1RtcGxWYXIsIHRoaXMuYnl0ZXM2NFRtcGxWYXIsIHRoaXMuYnl0ZXMzMlRtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9hZCAyMDMgLy8gVE1QTF9ieXRlczY0VG1wbFZhcgoJbG9hZCAyMDIgLy8gVE1QTF9ieXRlczMyVG1wbFZhcgoJZWQyNTUxOXZlcmlmeV9iYXJlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0bXBsKCl2b2lkIgoJbWV0aG9kICJzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90bXBsICphYmlfcm91dGVfc3BlY2lmaWNMZW5ndGhUZW1wbGF0ZVZhcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", + "approval": "I3ByYWdtYSB2ZXJzaW9uIDEwCgovLyBUaGlzIFRFQUwgd2FzIGdlbmVyYXRlZCBieSBURUFMU2NyaXB0IHYwLjEwMy4wCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbGdvcmFuZGZvdW5kYXRpb24vVEVBTFNjcmlwdAoKLy8gVGhpcyBjb250cmFjdCBpcyBjb21wbGlhbnQgd2l0aCBhbmQvb3IgaW1wbGVtZW50cyB0aGUgZm9sbG93aW5nIEFSQ3M6IFsgQVJDNCBdCgovLyBUaGUgZm9sbG93aW5nIGxpbmVzIG9mIFRFQUwgYXJlIHVzZWQgdG8gaW5pdGlhbGl6ZSB0ZW1wbGF0ZSB2YXJpYWJsZXMgaW4gc2NyYXRjaCBzbG90cwpwdXNoYnl0ZXMgVE1QTF9ieXRlczY0VG1wbFZhcgpzdG9yZSAyMDMKcHVzaGJ5dGVzIFRNUExfYnl0ZXMzMlRtcGxWYXIKc3RvcmUgMjAyCnB1c2hieXRlcyBUTVBMX3VpbnQ2NFRtcGxWYXIKYnRvaQpzdG9yZSAyMDEKcHVzaGJ5dGVzIFRNUExfYnl0ZXNUbXBsVmFyCnN0b3JlIDIwMAoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIGFuZCBkZXRlcm1pbmUgaWYgYSBzcGVjaWZpYyBhY3Rpb24gaXMgYWxsb3dlZAovLyBIZXJlLCBhY3Rpb24gcmVmZXJzIHRvIHRoZSBPbkNvbXBsZXRlIGluIGNvbWJpbmF0aW9uIHdpdGggd2hldGhlciB0aGUgYXBwIGlzIGJlaW5nIGNyZWF0ZWQgb3IgY2FsbGVkCi8vIEV2ZXJ5IHBvc3NpYmxlIGFjdGlvbiBmb3IgdGhpcyBjb250cmFjdCBpcyByZXByZXNlbnRlZCBpbiB0aGUgc3dpdGNoIHN0YXRlbWVudAovLyBJZiB0aGUgYWN0aW9uIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgY29udHJhY3QsIGl0cyByZXNwZWN0aXZlIGJyYW5jaCB3aWxsIGJlICIqTk9UX0lNUExFTUVOVEVEIiB3aGljaCBqdXN0IGNvbnRhaW5zICJlcnIiCnR4biBBcHBsaWNhdGlvbklECiEKaW50IDYKKgp0eG4gT25Db21wbGV0aW9uCisKc3dpdGNoICpjYWxsX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpjcmVhdGVfTm9PcCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQKCipOT1RfSU1QTEVNRU5URUQ6CgkvLyBUaGUgcmVxdWVzdGVkIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhpcyBjb250cmFjdC4gQXJlIHlvdSB1c2luZyB0aGUgY29ycmVjdCBPbkNvbXBsZXRlPyBEaWQgeW91IHNldCB5b3VyIGFwcCBJRD8KCWVycgoKLy8gdG1wbCgpdm9pZAoqYWJpX3JvdXRlX3RtcGw6CgkvLyBleGVjdXRlIHRtcGwoKXZvaWQKCWNhbGxzdWIgdG1wbAoJaW50IDEKCXJldHVybgoKLy8gdG1wbCgpOiB2b2lkCnRtcGw6Cglwcm90byAwIDAKCgkvLyB0ZXN0cy9jb250cmFjdHMvZ2VuZXJhbC5hbGdvLnRzOjM0CgkvLyBsb2codGhpcy5ieXRlc1RtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9nCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozNQoJLy8gYXNzZXJ0KHRoaXMudWludDY0VG1wbFZhcikKCWxvYWQgMjAxIC8vIFRNUExfdWludDY0VG1wbFZhcgoJYXNzZXJ0CglyZXRzdWIKCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKXZvaWQKKmFiaV9yb3V0ZV9zcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJLy8gZXhlY3V0ZSBzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkCgljYWxsc3ViIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIKCWludCAxCglyZXR1cm4KCi8vIHNwZWNpZmljTGVuZ3RoVGVtcGxhdGVWYXIoKTogdm9pZApzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyOgoJcHJvdG8gMCAwCgoJLy8gdGVzdHMvY29udHJhY3RzL2dlbmVyYWwuYWxnby50czozOQoJLy8gZWQyNTUxOVZlcmlmeUJhcmUodGhpcy5ieXRlc1RtcGxWYXIsIHRoaXMuYnl0ZXM2NFRtcGxWYXIsIHRoaXMuYnl0ZXMzMlRtcGxWYXIpCglsb2FkIDIwMCAvLyBUTVBMX2J5dGVzVG1wbFZhcgoJbG9hZCAyMDMgLy8gVE1QTF9ieXRlczY0VG1wbFZhcgoJbG9hZCAyMDIgLy8gVE1QTF9ieXRlczMyVG1wbFZhcgoJZWQyNTUxOXZlcmlmeV9iYXJlCglyZXRzdWIKCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CglpbnQgMQoJcmV0dXJuCgoqY3JlYXRlX05vT3A6CgltZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJbWV0aG9kICJ0bXBsKCl2b2lkIgoJbWV0aG9kICJzcGVjaWZpY0xlbmd0aFRlbXBsYXRlVmFyKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV90bXBsICphYmlfcm91dGVfc3BlY2lmaWNMZW5ndGhUZW1wbGF0ZVZhcgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEw" }, "templateVariables": {